Modern Systems Analysis and Design Chapter 2 The Origins of Software
36 Slides537.50 KB
Modern Systems Analysis and Design Chapter 2 The Origins of Software
Learning Objectives Explain outsourcing. Describe six different sources of software. Discuss how to evaluate off-the-shelf software. Explain reuse and its role in software development. 2
Introduction There are various sources of software for organizations. There are criteria to evaluate software from different sources. 3
Systems Acquisition: Outsourcing Outsourcing: Turning over responsibility of some or all of an organization's information systems applications and operations to an outside firm 4
Systems Acquisition: Outsourcing (Cont.) Outsourcing Examples A company that runs payroll applications for clients A company that runs your applications at your site 5
Outsourcing (Cont.) Reasons to outsource Cost-effective Take advantage of economies of scale Free up internal resources Reduce time to market Increase process efficiencies System development is a non-core activity for the organization 6
Sources of Software Information technology services firm Packaged software producers Enterprise-wide solutions Application service providers (ASPs) Open source software In-house developers 7
Sources of Software (Cont.) FIGURE 2-1 Sources of Application Software 8
Information Technology (IT) Services Firms Help companies develop custom information systems for internal use. Develop, host, and run applications for customers. Provide other services. 9
Packaged Software Producers Serve many market segments. Provide software ranging from broadbased packages (i.e. general ledger) to niche packages (i.e. day care management). 10
Packaged Software Producers (Cont.) Software runs on all size computers, from microcomputers to large mainframes. Prepackaged software is off-the-shelf, turnkey software (i.e. not customizable). Off-the-shelf software at best meets 70 percent of organizations’ needs. 11
Packaged Software Producers (Cont.) 12
Enterprise Solutions Software Enterprise Resource Planning (ERP) systems integrate individual traditional business functions into modules enabling a single seamless transaction to cut across functional boundaries. SAP AG is the leading vendor of ERP systems. 13
Enterprise Solutions Software (Cont.) Figure 2-3 SAP’s Business ByDesign, a product designed for medium sized companies. (Source: www.sap.com/usa/solutions/Sme/Businessbydesign/Flash/bsm/A1S.html ) 14
Open Source Software Freely available including source code Developed by a community of interested people Performs the same functions as commercial software Examples: Linux, mySQL, Firefox 15
In-House Development If sufficient system development expertise with the chosen platform exists in-house, then some or all of the system can be developed by the organization’s own staff. Hybrid solutions involving some purchased and some in-house components are common. 16
Sources of Software Components 17
Selecting Off-the-Shelf Software Cost: comparing the cost of developing the same system in-house with the cost of purchasing or licensing the software package 18
Selecting Off-the-Shelf Software Functionality: the tasks that the software can perform and the mandatory, essential, and desired system features 19
Selecting Off-the-Shelf Software Vendor support: whether or how much support the vendor can provide and at what cost 20
Selecting Off-the-Shelf Software Viability of vendor: can the software adapt to changes in systems software and hardware 21
Selecting Off-the-Shelf Software Flexibility: how easy it is to customize the software Documentation: is the user’s manual and technical documentation understandable and up-to-date 22
Selecting Off-the-Shelf Software Response time: how long it takes the software package to respond to the user’s requests in an interactive session Ease of installation: a measure of the difficulty of loading the software and making it operational 23
Validating Purchased Software Information Use a variety of information sources: Collect information from vendor Software documentation Technical marketing literature 24
Request For Proposal (RFP) Request for proposal (RFP) is a document provided to vendors to ask them to propose hardware and system software that will meet the requirements of a new system. 25
Request For Proposal (RFP) (Cont.) Sometimes called a Request For Quote (RFQ) Use a variety of information sources Based on vendor bids, analyst selects best candidates. 26
Information Sources For RFP Vendor’s proposal Running software through a series of tests Feedback from other users of the vendor’s product Independent software testing services Articles in trade publications 27
Reuse The use of previously written software resources, especially objects and components, in new applications Commonly applied to two different development technologies: Object-oriented development Component-based development 28
Reuse (Cont.) Object-oriented development Object class encapsulates data and behavior of common organizational entities (e.g. employees) Component-based development Components can be as small as objects or as large as pieces of software that handle single business functions. 29
Reuse (Cont.) Object-oriented development reuse is the use of object classes in more than one application (e.g. Employee). 30
Reuse (Cont.) Component-based development reuse is the assembly of an application from many different components at many different levels of complexity and size (e.g. Currency conversion). 31
Costs and Benefits of Reuse FIGURE 2-5 Investments necessary to achieve reusable components (Source: Royce, 1998, used by permission.) 32
Approaches to Reuse Ad-hoc: individuals are free to find or develop reusable assets on their own. Facilitated: developers are encouraged to practice reuse. 33
Approaches to Reuse (Cont.) Managed: the development, sharing, and adoption of reusable assets is mandated. Designed: assets mandated for reuse as they are being designed for specific applications. 34
Approaches to Reuse (Cont.) 35
Summary In this chapter you learned how to: Explain outsourcing. Describe six different sources of software. Discuss how to evaluate off-the-shelf software. Explain reuse and its role in software development. 36