Chapter 10 Development and Acquisition Alternatives.
-
Upload
marcus-simmons -
Category
Documents
-
view
225 -
download
1
Transcript of Chapter 10 Development and Acquisition Alternatives.
![Page 1: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/1.jpg)
Chapter 10
Development and Acquisition Alternatives
![Page 2: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/2.jpg)
IntroductionE-business is changing the way business operates. Managers must have a firm understanding of e-business systems:– Development– Acquisition– Operation– Web hosting– ASPs
![Page 3: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/3.jpg)
Advances in Programming Tools and Techniques
Language Generations– 1st – Machine Code– 2nd – Assembly Language– 3rd – Standard Language Prototypes
• COBOL, BASIC, FORTRAN
– 4th – SQL, FOCUS, RPG• These languages increase programmer
productivity, not necessarily execution speed
![Page 4: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/4.jpg)
CASE Methodology
CASE stands for Computer-Aided Software Engineering– A set of tools and processes to support
requirement definition, application development, and application maintenance
• These tools assist in diagramming, modeling, code generation, test vector development, report generation, and screen layout
• Implemented through multiple workstations and LANs to tie a project’s developers, clients, and managers together
![Page 5: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/5.jpg)
CASE Tools
CASE tools are not only for new development– Used to enhance existing programs– Port programs from older languages to
newer ones– Used to profile program flow and
selectively optimize highly used sections
![Page 6: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/6.jpg)
CASE ToolsUpper CASE tools – used for early program life cycle development (front-end)
Lower CASE tools – support code generation and test vector construction (back-end)
I-CASE tools – integrated platforms for the entire life cycle
There are also tools for management that gather statistics, generate reports, and enhance team communications
![Page 7: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/7.jpg)
The Object Paradigm
Object-oriented programming approaches a problem from a more abstract perspective– Objects are modular segments of code
• Objects are grouped into classes• All objects inherit properties from the class
– Objects are the foundation of reusable code segments
• C++ and Java are object-oriented
![Page 8: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/8.jpg)
Java Programming
Object-oriented programming language– Platform independent (OS, hardware)– Secure by design– Reusable code– Rapid design and prototyping– Open specification– No run time royalties– Built expressly for Internet applications
![Page 9: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/9.jpg)
Linux
Open-source UNIX-like operating system– No licensing fees– No run time royalties– Built to be portable– Under development for 10 years, it is the
operating system running greater than 40% of the servers connected to the Internet
![Page 10: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/10.jpg)
HTML
HyperText Markup Language– A text based coding language for documents– Uses embedded characters in conjunction with the
browser to interpret and display the document• The same document will display differently in different
browsers
– Open standard and non-proprietary– Derived from an earlier language, SGML
![Page 11: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/11.jpg)
XML
Extensible Markup Language– Instead of a predefined set of markup tags,
XML enables users and groups to define custom tags. These tags allow
• more efficient searches• better portability between browsers• creation of richer content
– XML is more self-documenting and allows reusability of code
![Page 12: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/12.jpg)
Prototyping
Changing project specifications when design work has begun is the leading cause of cost and time overruns
Prototyping allows developers and users to more realistically model program functions and create tight design specifications
This is a rapid turn cycle requiring CASE-like tools and skilled manpower
![Page 13: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/13.jpg)
The Prototyping Process
![Page 14: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/14.jpg)
Other Development Methodologies
RAD – Rapid Application Development
JAD – Joint Application Development
Blends– Depending on the specific application, blends of
the life cycle approach and others discussed will yield a more optimal path
– Using what works is more important than purity of approach; a sign of good management is flexibility in problem solving
![Page 15: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/15.jpg)
Improving Programming Quality
NIST reported inadequate software testing costs developers $21.2 billion and users $38.3 billion annually– Rigorous testing could potentially save
$22.3 billion annually– All software bugs cost $293 billion annually
![Page 16: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/16.jpg)
The Programming Craft
Programming is an individual endeavor
A six sigma defect rate is 3 errors per million lines of code– Current measurements are in KLOCs (thousand
lines of code) and poor programmers create code with 100 defects per 1000 lines
Process, feedback, and change are all necessary to improve the quality of coding
![Page 17: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/17.jpg)
Process Improvements for Software
Humphrey Maturity Model– Initial Level (1) – little formalization exists– Repeatable Level (2) – statistical measures are used
to exert quality control– Defined Level (3) – establish quality and cost
parameters, use databases to track progress– Managed Level (4) – analyze and scrutinize
programming processes, and initiate changes– Optimized Level (5) – improve process measures
based on prior experience and optimize processes further
![Page 18: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/18.jpg)
Subcontract Development
Subcontracting enables a firm to trade money for skill– Allows firms to engage in larger development
projects without increasing permanent staffing– Can decrease project development time– Causes internal company knowledge to
disseminate outside the company
Requires very mature project management skills
![Page 19: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/19.jpg)
Purchased Applications
In the mid 1990s, the number of internally developed software applications began to decline– Availability of high-function, commercially
developed applications for PC use was an important factor
– Purchased applications are becoming more commonly used in mini-computer and centralized mainframe installations
– Firms would rather buy than develop
![Page 20: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/20.jpg)
Advantages of Purchased Applications
Purchased applications have several advantages:– Early availability– Well-known functions– Available documentation– Periodic updates– Availability of maintenance– Known cost– Education and training programs
![Page 21: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/21.jpg)
Disadvantages
Purchased applications have several disadvantages:– Functional deficiencies– Difficulty customizing to local environment,
leading to inefficiencies– Contain unnecessary features– After the sale support may be poor– Vendor may go out of business or stop
development of the product line
![Page 22: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/22.jpg)
Internet Systems and Technology
E-business is built upon open standards and technology– HTML, XML– Java, .NET– PHP, PERL, and Python– TCP/IP– E-mail, instant messaging– Secure services (cryptology)
![Page 23: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/23.jpg)
Web Hosting
Companies that establish and operate Web sites for others– Provide, maintain, and manage the hardware,
applications, security, and connectivity– Allow rapid entry onto the Web, without the need
to hire Web server personnel or purchase hardware
– Create an offsite presence for the firm that can be secure, redundant, and highly available
![Page 24: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/24.jpg)
Application Service Providers
Install, host, manage, and rent access to packaged application programsCustomers can use applications without investing in licenses, hardware, or operational resourcesASPs are rapidly growing– $3 billion in revenue in 2001 to $16 billion
in 2005
![Page 25: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/25.jpg)
Additional Alternatives
Alliances– Firms can look to share development costs
across competitive lines within the same industry
– Firms can develop partnerships with customers and suppliers in a B2B type of arrangement
![Page 26: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/26.jpg)
Managing the Alternatives
Prioritization processes often reveal that programming talent is the constrained resource and money is a lesser constraint
Managers must use a thorough methodology before selecting the optimum alternative
The result is a balanced approach to application prioritization and development or acquisition
![Page 27: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/27.jpg)
Identifying the Optimum Selection
1. Which applications can be processed at an ASP or outsourcer, saving people and computer resources?
2. Of the applications needing development or replacement, which can be purchased or leased to save programming resources or time?
3. Can the firm enter into agreements with others, through contracts or joint development, to optimize the firm’s resources?
![Page 28: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/28.jpg)
Identifying the Optimum Selection
4. Can new development tools and techniques improve development productivity?
5. What alternatives can increase the human resources available for application development?
![Page 29: Chapter 10 Development and Acquisition Alternatives.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649e025503460f94aec2e4/html5/thumbnails/29.jpg)
Summary
Application acquisition offers IT and user managers opportunities to optimize the firm’s resources– Response is rooted in a clear vision of the
application portfolio’s contribution to the firm’s success
– All opportunities present risk along with gain– Risks must be understood and mitigated– ASPs offer another possibility to managers beyond
build or buy