Transcript Slide 1
Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques INTRODUCTION Information systems are the support structure for meeting the company’s strategies and goals New systems are created because employees request it New systems are created to obtain a competitive advantage Billions of dollars spent yearly on acquisition, design, development, implementation, and maintenance of IT systems Companies depend on information more than ever THE SYSTEMS DEVELOPMENT LIFE CYCLE Systems development life cycle (SDLC) Defining System Success? On time On budget Meets requirements Terminology Deliverable Milestone SDLC Phases & Major Activities SDLC as a Waterfall Methodology Phase 1: Planning Planning phase - create a solid plan for developing your information system Three primary planning activities: 1. Define the system to be developed You can’t build every system, so you make choices based on your organization’s priorities, which may be expressed as critical success factors Critical success factor (CSF) - a factor simply critical to your organization’s success Phase 1: Planning 2. Set the project scope Project scope - clearly defines the highlevel system requirements Scope creep - occurs when the scope of the project increases Feature creep - occurs when developers add extra features that were not part of the initial requirements Project scope document Phase 1: Planning 3. Develop the project plan including tasks, resources, and timeframes Project plan Project manager Project milestones Other Activities? Phase 1: Planning Sample Project Plan Phase 2: Analysis Analysis phase - involves end users and IT specialists working together to gather, understand, and document the business requirements for the proposed system Phase 2: Analysis Two primary analysis activities: 1. Gather the business requirements Business requirements - the detailed set of Joint application development (JAD) - knowledge worker requests that the system must meet in order to be successful knowledge workers and IT specialists meet, sometimes for several days, to define or review the business requirements for the system Phase 2: Analysis 2. Prioritize the requirements Requirements definition document – prioritizes the business requirements and places them in a formal comprehensive document Users sign off on this document which clearly sets the scope for the project Other Activities? Phase 2: Analysis Take time during analysis to get the business requirements correct. If you find errors, fix them immediately. The cost to fix an error in the early stages of the SDLC is relatively small. In later stages, the cost is huge. Phase 3: Design Design phase - build a technical blueprint of how the proposed system will work Two primary design activities: Design the technical architecture 1. the hardware, software, and telecommunications equipment required to run the system Design system models 2. GUI screens that users will interface with, database designs (see XLM/C), report formats, software steps, etc Phase 3: Design Starting with design, you take on less of an active participation role and act more as a “quality control” function, ensuring that the IT people are designing a system to meet your needs Other Activities? Phase 4: Development Development phase - take all of your detailed design documents from the design phase and transform them into an actual system Two primary development activities: 1. 2. Build the technical architecture Build the database and programs Both of these activities are mostly performed by IT specialists Other Activities? Phase 5: Testing Testing phase - verifies that the system works and meets all of the business requirements defined in the analysis phase Two primary testing activities: 1. Write the test conditions Test conditions - the detailed steps the system must perform along with the expected results of each step Phase 5: Testing 2. Perform the testing of the system Unit testing – tests individual units of code System testing – verifies that the units of code function correctly when integrated Integration testing – verifies that separate systems work together User acceptance testing (UAT) – determines if the system satisfies the business requirements Other Activities? Phase 6: Implementation Implementation phase - distribute the system to all of the knowledge workers and they begin using the system to perform their everyday jobs Two primary implementation activities 1. Write detailed user documentation User documentation - highlights how to use the system Phase 6: Implementation 2. Provide training for the system users Online training - runs over the Internet or off a CD-ROM Workshop training - is held in a classroom environment and lead by an instructor Other Activities? Phase 6: Implementation Choose the right implementation method Parallel implementation Plunge implementation Pilot implementation Phased implementation Phase 7: Maintenance Maintenance phase - monitor and support the new system to ensure it continues to meet the business goals Two primary maintenance activities: 1. Build a help desk to support the system users Help desk - a group of people who responds to knowledge workers’ questions 2. Provide an environment to support system changes Other Activities? Sourcing the Project Three choices for building a system include: insourcing selfsourcing outsourcing SELFSOURCING Selfsourcing (also called knowledge worker development or end user development) The Selfsourcing Process The advantages of selfsourcing Improves requirements determination Increases knowledge worker participation and sense of ownership Increases speed of systems development The Selfsourcing Process Potential pitfalls and risks of selfsourcing Inadequate knowledge worker expertise leads to inadequately developed systems Lack of organizational focus creates “privatized” IT systems Insufficient analysis of design alternatives leads to subpar IT systems Lack of documentation and external support leads to short-lived systems OUTSOURCING Developing strategic partnerships Outsourcing Developing Strategic Partnerships IT outsourcing takes on 1 of 4 forms: 1. 2. 3. 4. Purchasing existing software Purchasing existing software and pay the publisher to make certain modifications Purchasing existing software and pay the publisher for the right to make modifications yourself Outsourcing the development of an entirely new and unique system for which no software exists Outsourcing Options There are three different forms of outsourcing: 1. Onshore outsourcing - the process of engaging another company within the same country for services 2. Nearshore outsourcing - contracting an outsourcing arrangement with a company in a nearby country 3. Offshore outsourcing - contracting with a company that is geographically far away The Advantages of Outsourcing Focus on unique core competencies Exploit the intellect of another organization Better predict future costs Acquire leading-edge technology Reduce costs Improve performance accountability The Disadvantages of Outsourcing Reduces technical know-how for future innovation Reduces degree of control Increases vulnerability of strategic information Increases dependency on other organizations PROTOTYPING Prototyping Prototype Proof-of-concept prototype Selling prototype The Advantages of Prototyping Encourages active knowledge worker participation Helps resolve discrepancies among knowledge workers Gives users a feel for the final system Helps determine technical feasibility Helps sell the idea of a proposed system The Disadvantages of Prototyping Leads people to believe the final system will follow shortly Gives no indication of performance under operational conditions Leads the project team to forgo proper testing and documentation