520 likes | 622 Views
Chapter 15 . SYSTEM DEVELOPMENT AND ACQUISITION. Learning Objectives. Understand the basic concepts of systems development Discuss the major steps in developing a decision support system (DSS) and management support system (MSS) application
E N D
Chapter 15 SYSTEM DEVELOPMENT AND ACQUISITION
Learning Objectives • Understand the basic concepts of systems development • Discuss the major steps in developing a decision support system (DSS) and management support system (MSS) application • Describe the major MSS applications and list their major functionalities • List the major MSS application development options, along with their benefits and limitations
Learning Objectives • Describe the four phases of the system development life cycle: planning, analysis, development, and implementation (PADI) • Understand prototyping and throwaway prototyping and why MSS are typically developed using these methods • Discuss various MSS application outsourcing options, including the use of an application service provider (ASP) and utility computing
Learning Objectives • Describe some major MSS software packages and MSS application suites • Describe various methods for connecting an MSS application to back-end systems and databases • Discuss the value and technical foundation of Web services in integrated applications • Understand the service-oriented architecture (SOA) and its relationship to MSS
Learning Objectives • Describe the criteria used in selecting an outsourcing vendor and package • Describe the factors that lead to MSS success or failure • Discuss the importance of project management and the skills a good project manager needs to have • Understand the learning process that occurs during MSS development
What Types of Support Systems Should You Build? • Introduction to MSS development • Types of Support Systems • Infrastructure • Data warehouses and business intelligence systems • Knowledge management systems • Enterprise information systems • Portals The gateways to Web sites; they can be public (like Yahoo!), or private (corporate portals)
What Types of Support Systems Should You Build? • Introduction to MSS development • Types of Support Systems • Specific applications • Tools and tool kits • Platforms
The Landscape and Framework of MSS Application Development • Step 1: Planning, identifying, and justifying MSS • Step 2: Creating an MSS architecture • MSS architecture A plan for organizing the underlying infrastructure and applications of the MSS project
The Landscape and Framework of MSS Application Development • Step 3: Selecting a development option • Build the system in house • Have a vendor build a custom-made system • Buy an existing application and install it, with or without modifications, by yourself or through a vendor • Lease standard software from an ASP, utility computing, or set up a software-as-a-service arrangement • Enter into a partnership or an alliance that will enable the company to use someone else's application • Use a combination of these approaches
The Landscape and Framework of MSS Application Development • Step 4: Installing, testing, connecting, and deploying MSS applications • Step 5: Operations, maintenance, and updating
The Landscape and Framework of MSS Application Development • Managing the development process • The development process can be fairly complex and must be managed properly • For medium to large applications, a project team is usually created to manage the process and the vendors • Project management software
Development Options for MSS Applications • In-house development: Insourcing • Development options for in-house development • Building from scratch • Building from components • Integrating applications
Development Options for MSS Applications • Methods used in in-house development • System development life cycle (SDLC) A systematic process for the effective construction of large information systems
Development Options for MSS Applications • Rapid application development (RAD) A development methodology that adjusts a system development life-cycle so that parts of the system can be developed quickly, thereby enabling users to obtain some functionality as soon as possible. It includes methods of phased development, prototyping, and throwaway prototyping
Development Options for MSS Applications • Prototyping In system development, a strategy in which a scaled-down system or portion of a system is constructed in a short time, tested, and improved in several iterations
Development Options for MSS Applications • Buying applications • Leasing applications • Lease from an outsourcer and then install it on the company’s premises • Lease from an ASP that hosts the application at its data center
Development Options for MSS Applications • Methods used in in-house development • Software-as-a-service (SaaS) Software that is rented instead of sold • Factors driving the switch to software-as-a-service: • Reducing the risks involved in acquiring new software • Influencing product and service quality via an ongoing relationship with vendors • Changing usage commitments as business circumstances change • Preparing financially justifiable business cases • More accurately predicting ongoing expenses
Development Options for MSS Applications • Outsourcing development options • Outsourcing • Application Service Providers (ASP) A software vendor that offers leased software applications to organizations • Utility (on-demand) computing Unlimited computing power and storage capacity that, like electricity, water, and telephone services, can be obtained on demand, used, and reallocated for any application, and billed on a pay-per-use basis
Multi-sourcing delivery & financing services Multi-sourcing delivery & financing services Customer access & management services Customer access & management services Figure 15.3Tools and Value-Added Services of Utility Computing Utility Computing Value Utility Computing Value Service-level-managementtools Resource-managementtools Virtualized infrastructures
Development Options for MSS Applications • Utility computing value proposition consists of three layers of tools and two types of value-added services • Tools • Policy-based service-level-management tools • Policy-based resource-management tools • Virtualization tools • Value-added services • Multisourcing delivery and framework services • Customer access and management services
Development Options for MSS Applications • A hybrid approach to MSS development • Hybrid models work best when the outsourced partner offers: • A high level of security • Fast time to market • Service-level agreements
Prototyping: A Practical MSS Development Methodology • Advantages of prototyping • Short development time • Short user reaction time (i.e., feedback from user) • Improved user understanding of the system, its information needs, and its capabilities • Low cost
Prototyping: A Practical MSS Development Methodology • Limitations of prototyping • Gains obtained from cautiously stepping through each of the system’s lifecycle stages might be lost including: • A thorough understanding of the information system’s benefits and costs • A detailed description of the business’s information needs • An easy-to-maintain information system design • A well-tested information system • Well-prepared users
Prototyping: A Practical MSS Development Methodology • The prototyping development process • Users and managers, as well as an executive sponsor, must be involved • The analysis, design, and prototype implementation phases are iteratively performed until a small prototype is sufficiently developed • The final implementation takes place • Simultaneously, further iterations occur as other subsystems or capabilities are added to the deployed system until a fairly stable, comprehensive system evolves
Prototyping: A Practical MSS Development Methodology • Collaboration in prototyping • The interaction of user, developer, and technology is extremely important in the prototyping process • Evaluation in prototyping • Iterative design A systematic process for system development that is used in MSS. To produce a first version of MSS, then revise it and produce the second design version, and so on is called an iterative design
Prototyping: A Practical MSS Development Methodology • Implementing prototyping • Target small, tactical applications that show quick results • Use software components • Make application deployment iterative and open to customization • Use commodity hardware • Use object technology, including tools such as Java • Break major projects into manageable, deliverable chunks • Use packaged applications whenever justifiable • Consider IT service providers as well as utility and grid computing • Use Web services, if possible
Prototyping: A Practical MSS Development Methodology • Successes factors in prototyping • Users and managers should be involved in every phase and iteration • Learning should be explicitly integrated into the design process • Prototyping should essentially bypass the formal information requirement definition in the SDLC • A key criterion associated with prototyping is the short interval between iterations • The initial prototype must be low cost
Prototyping: A Practical MSS Development Methodology • Prototyping failures • No prelaunch objectives or metrics • Too many major projects were conducted simultaneously • The CEO set budgets and deadlines before the project team was involved • The budget and deadlines were not realistic • There was no insider presence on the data warehouse project team • An overburdened project manager was involved • The availability of source data was unconfirmed at the outset • No user demand for sophisticated data analysis was considered • No routine meetings of executive sponsors and the project manager took place • Business managers were not initially involved
Prototyping: A Practical MSS Development Methodology • Lessons learned from prototyping failure: • Executive sponsorship and partnership of the IT staff and end users are the most critical success factors for developing a data warehouse • Unclear understanding of the business objectives and how they will be measured • An incremental pilot project should occur to determine whether it is possible to obtain the projected benefits • An organization should expect to make a major investment in ongoing management of the data warehouse • When all else fails, an organization should cut its losses and run
Flexibility Information requirements User friendliness Hardware and software resources Installation Maintenance services Vendor quality and track record Estimating costs Personnel Technological evolution Scalability Sizing Performance Reliability Security Criteria For Selecting an MSS Development Approach Selection criteria for buy or lease decision:
Third-party Providers of MSS Software Packages and Suites • Specialized and functional software packages • MSS suite An integrated collection of a large number of MSS tools that work together for applications development
Third-party Providers of MSS Software Packages and Suites • Representative MSS suites • MicroStrategy 8 • Hyperion System 9 BI+ • BusinessObjects XI • Microsoft BizTalk Server 2004 • Oracle’s MSS Products • IBM’s WebSphere Commerce Suite
Connecting to Databases and Other Enterprise Systems • Connecting to databases: Four tier architecture • Web browser • Web server • Application server • Database server
Connecting to Databases and Other Enterprise Systems • Integrating MSS applications and back-end systems • Many commercial MSS suites have built-in integration capabilities • If a company wants to build its own database interface: • Web scripting languages • Specialized application servers
Connecting to Databases and Other Enterprise Systems • Middleware Software that links application modules from different computer languages and platforms
The Rise of Web Services, XML, and Service-Oriented Architecture • The need for integration • Platform-specific objects • Dynamic environment • Security barriers • Address these problems with • Web Services An architecture enabling assembly of distributed application from software services and tying them together
User-Developed MSS • End-user computing Developing one’s own information system • User-developed MSS An MSS developed by one user or by a few users in one department including decision makers and professionals (knowledge workers, like financial or tax analysts and engineers) who build or use computers to solve problems or enhance their productivity
User-Developed MSS • User-Developed MSS: Advantages • Delivery time is short • The prerequisites of extensive and formal user requirements specifications are eliminated • Some MSS implementation problems are reduced • The cost is usually very low
User-Developed MSS • User-Developed MSS: Risks • User-developed MSS can be of poor quality. • Three categories of potential quality risks: • Substandard or inappropriate tools and facilities used in MSS development • Risks associated with the development process • Data management risks • Security risks • Lack of documentation and maintenance procedures
User-Developed MSS • Steps to get users involved in MSS development: • Get management buy-in • Understand the users’ business • Consider the users’ priorities • Assign good communicators • Talk with users all along the business process • Don’t meet at users' offices • Turn off mobile phones • Focus on users’ problems, not on technology • Listen well • Use prototypes
User-Developed MSS • Reducing the risks of end-user computing • Factors that contribute to spreadsheet errors include: • Developer inexperience • Poor design approaches • Application types • Problem complexity • Time pressure • Presence or absence of review procedures • Team-Developed MSS
MSS Vendor and Software Selection • MSS development tool selection • MSS tools Software elements (e.g., languages) that facilitate the development of a MSS or a MSS generator • Hardware selection • Software selection
MSS Vendor and Software Selection • Selecting vendors and MSS software packages • On time • On budget • Full functionality
MSS Vendor and Software Selection • Six steps in selecting a software vendor and a package: • Identify potential vendors. • Determine the evaluation criteria. • Evaluate vendors and packages. • Choose a vendor and package. • Negotiate a contract. • Establish a service-level agreement