Systems Development Chapter 8 Fundamentals of Information Systems, Second Edition 1 Top Uses for New Systems in Various Industries Fundamentals of Information Systems, Second Edition 2 Participants in System Development • Stakeholders: Those that benefit from the project • Users: Those that will interact with and use the system • Project Manager: Person responsible for coordinating all resources in the project – Human resources (who should participate in the project, what she should do, etc.) – Equipment (what is needed to carry out the project, servers, hubs, etc.) – Travel (does the project require traveling to other places, if so, when, or how often) Fundamentals of Information Systems, Second Edition 3 Participants in System Development • Systems Analyst: Analyzes and designs business systems – Sees the system as a whole – Design the whole system so that it fulfils the requirements – Detect potential problems early on • Programmer: Develop the system based on user requirements • Technical Specialists: Hardware engineers, DB engineers, etc. Fundamentals of Information Systems, Second Edition 4 Participants in Systems Development Fundamentals of Information Systems, Second Edition 5 Information Systems Planning • Decide on organizational goals • Discuss how these can be achieved with IS • Plan on IS development • Develop individual components Fundamentals of Information Systems, Second Edition 6 Systems Development Life Cycles and Approaches Fundamentals of Information Systems, Second Edition 7 The Traditional SDLC Fundamentals of Information Systems, Second Edition 8 The Traditional SDLC • Systems investigation – Identify problems and opportunities – Worth solving it; what are the benefits? • Systems analysis – What will it take to solve this problem? – Study existing systems – Generate list of requirements • Systems Design – What must be done to achieve the solution? – Generate technical design (either new system or an improved system) Fundamentals of Information Systems, Second Edition 9 The Traditional SDLC • Systems implementation – – – – Create individual components Combine them to have a working system Train users so that they can use the system easily Install the system • Systems maintenance and review – Make sure that the system operates as expected – Modify functionalities that are not working properly Fundamentals of Information Systems, Second Edition 10 Prototyping is an Iterative Approach to Systems Development Fundamentals of Information Systems, Second Edition 11 Rapid Application Development (RAD) • Employs tools, techniques, and methodologies designed to speed application development • Reduces paper-based documentation • Automatically generates program code • Extreme Programming (EP): Change code as you go along • Joint Application Development (JAD) – Used for data collection and requirements analysis. • JAD: Participants come together and discuss requirements, needs, etc. Fundamentals of Information Systems, Second Edition 12 Advantages and Disadvantages of RAD Fundamentals of Information Systems, Second Edition 13 Use of Project Management Tools • Aim: Plan, schedule, direct resources • Project schedule: – Details description of what will be done – What are smaller parts (activities)? – How long will each activity will take? • Project milestone – Critical date for the completion of a part of the project – Ex: First release • Project deadline – The date for the entire project to be ready – The date is based on client’s needs Fundamentals of Information Systems, Second Edition 14 Use of Project Management Tools • Critical path – All activities that will cause a delay if they are delayed – Such activities must be finished on time • Program Evaluation and Review Technique (PERT) – Three time estimates: Shortest possible, most likely, and the upper bound • Gantt chart: Graphical tool for planning and monitoring activities Fundamentals of Information Systems, Second Edition 15 Gantt Chart Fundamentals of Information Systems, Second Edition 16 Selected Project Management Software Fundamentals of Information Systems, Second Edition 17 Computer-Aided Software Engineering (CASE) Tools • Automate many of the tasks required in a systems development effort – Rigorous – Standard systems development process • Upper-CASE tools – Deal with early stages of development • Lower-CASE tools – Automatically generate structured program code • Integrated-CASE tools – Provide links between upper- and lower-CASE packages. Fundamentals of Information Systems, Second Edition 18 Object-Oriented Systems Development • Identify potential problems and opportunities within the organization that would be appropriate for the OO approach • Define the kind of system users require • Design the system • Program or modify modules • Evaluation by users • Periodic review and modification Fundamentals of Information Systems, Second Edition 19 Use Case Diagram for a Kayak Rental Application Fundamentals of Information Systems, Second Edition 20 Systems Development Maturity Based on the Capability Maturity Model (CMM) • Initial: No discipline; ad hoc • Repeatable: Track costs, schedules, functionality • Defined: Use documented and defined procedures • Managed: Use measures; monitor and improve system development • Optimized: Improve continuously Fundamentals of Information Systems, Second Edition 21 Systems Investigation Fundamentals of Information Systems, Second Edition 22 Systems Investigation • Attempts to answer the following questions: – What primary problems might a new or enhanced system solve? – What opportunities might a new or enhanced system provide? – What new hardware, software, databases, or procedures will improve an existing system? – What are the potential costs (variable and fixed)? – What are the associated risks? Fundamentals of Information Systems, Second Edition 23 Feasibility Analysis • T: Whether hardware, software, and other components can be developed to solve the problem • E: Are the predicted benefits more than the cost? • L: Do laws and regulations permit its usage? • O: Can it be put into action? • S: Can it be finished in a reasonable time? Fundamentals of Information Systems, Second Edition 24 Systems Investigation Report Fundamentals of Information Systems, Second Edition 25 Systems Analysis Fundamentals of Information Systems, Second Edition 26 Systems Analysis • Data Collection – Seeks additional information about the problems – Requires identification of internal and external sources • Data Analysis – Manipulates collected data so that it is usable for the development team – Uses data and activity modeling Fundamentals of Information Systems, Second Edition 27 Internal and External Sources of Data Fundamentals of Information Systems, Second Edition 28 The Steps in Data Collection Fundamentals of Information Systems, Second Edition 29 Modeling • Data Modeling – Mostly done by entity-relationship diagrams – Describes the objects and their relationships but not the activities • Activity Modeling – Done by data-flow diagrams (DFMs) – Models objects, activities – Describe how data flows between objects Fundamentals of Information Systems, Second Edition 30 Data and Activity Modeling Fundamentals of Information Systems, Second Edition 31 Requirements Analysis • Asking directly – To stakeholders, users, etc. their needs – Critically evaluate needs – Keep in mind that some needs are contradictory • Determining critical success factors (CSFs) – Managers and decision makers list critical factors only – Derive other requirements based on this • Developing the IS plan – Translate strategic and organizational goals into systems development Fundamentals of Information Systems, Second Edition 32 The Systems Analysis Report • The report should cover the following: – The strengths and weaknesses of the existing system from a stakeholder’s perspective – The user/stakeholder requirements for the new system (also called the functional requirements) – The organizational requirements for the new system – A description of what the new information system should do to solve the problem Fundamentals of Information Systems, Second Edition 33 Converting Organizational Goals into Systems Requirements Fundamentals of Information Systems, Second Edition 34 A Typical Table of Contents for a Report on an Existing System Fundamentals of Information Systems, Second Edition 35 Systems Design Fundamentals of Information Systems, Second Edition 36 Systems Design • Logical design – What will the system do to solve the problems identified earlier? – Plan the purpose of each system element – Ex: Output of the system, the needed inputs • Physical design – Refers to how the tasks are accomplished – How do the components work together – What does each component do? Fundamentals of Information Systems, Second Edition 37 Request for Proposal One of the most important documents generated during systems development. • Results in a formal bid that is used to determine who gets a contract for new or modified systems. • Specifies in detail required resources. Fundamentals of Information Systems, Second Edition 38 A Typical Table of Contents for a Request for Proposal Fundamentals of Information Systems, Second Edition 39 Advantages and Disadvantages of Acquisition Options Fundamentals of Information Systems, Second Edition 40 Freezing Design Specifications Fundamentals of Information Systems, Second Edition 41 A Typical Table of Contents for a Systems Design Report Fundamentals of Information Systems, Second Edition 42 Systems Implementation Fundamentals of Information Systems, Second Edition 43 Typical Steps in Systems Implementation Fundamentals of Information Systems, Second Edition 44 Typical Steps in Systems Implementation • Hardware: Buy new or used or refurbished • Software: – Make-or-buy decision – Reuse existing software • Users: Train them to use the software fast and with ease • Personnel: Similar but more technical training for the personnel • Site preparation: Find a place for the system, ensure environmental constraints Fundamentals of Information Systems, Second Edition 45 Typical Steps in Systems Implementation • Data preparation: Convert physical files into computer data • Installation: Physically place the system on the site and make it operational • Testing: Make sure the system operates as planned – – – – – Unit: Each component System: System as a whole Volume: Test the system with lots of data Integration: Test all related systems Acceptance: Test user cases Fundamentals of Information Systems, Second Edition 46 Types of Testing Fundamentals of Information Systems, Second Edition 47 Start-up Approaches Fundamentals of Information Systems, Second Edition 48 Systems Maintenance and Review Fundamentals of Information Systems, Second Edition 49 Systems Maintenance • Reasons for program maintenance include: – Changes in business processes – New requests from stakeholders, users, and managers – Bugs or errors in the program – Technical and hardware problems – Corporate mergers and acquisitions – Government regulations – Change in the operating system or hardware on which the application runs – Unexpected events, like the terrorist attacks of September Fundamentals of Information Systems, Second Edition 50 Examples of Review Types Fundamentals of Information Systems, Second Edition 51 Summary • Systems development team - consists of stakeholders, users, managers, systems development specialists, and various support personnel. • Five phases of the traditional SDLC - investigation, analysis, design, implementation, and maintenance and review. • Systems investigation - designed to assess the feasibility of implementing solutions for business problems. Fundamentals of Information Systems, Second Edition 52 Summary • Systems analysis - the examination of existing systems, which begins once approval for further study is received from management. • Systems design – purpose is to prepare the detailed design needs for a new system or make modifications to an existing one. • Systems implementation - to install a system and make everything, including users, ready for its operation. • Systems maintenance - involves checking, changing, and enhancing the system to make it more useful in obtaining user and organizational goals. Fundamentals of Information Systems, Second Edition 53 Principles and Learning Objectives • Effective systems development requires a team effort of stakeholders, users, managers, systems development specialists, and various support personnel, and it starts with careful planning. – Identify the key participants in the systems development process and discuss their roles. – Define the term information systems planning and list several reasons for initiating a systems project. Fundamentals of Information Systems, Second Edition 54 Principles and Learning Objectives • Systems development often uses different approaches and tools such as traditional development, prototyping, rapid application development, end-user development, computer-aided software engineering, and objectoriented development to select, implement, and monitor projects. – Discuss the key features, advantages, and disadvantages of the traditional, prototyping, rapid application development, and enduser systems development life cycles. – Discuss the use of computer-aided software engineering (CASE) tools and the object-oriented approach to systems development. Fundamentals of Information Systems, Second Edition 55 Principles and Learning Objectives • Systems development starts with investigation and analysis of existing systems. – State the purpose of systems investigation. – Discuss the importance of performance and cost objectives. – State the purpose of systems analysis and discuss some of the tools and techniques used in this phase of systems development. Fundamentals of Information Systems, Second Edition 56 Principles and Learning Objectives • Designing new systems or modifying existing ones should always be aimed at helping an organization achieve its goals. – State the purpose of systems design and discuss the differences between logical and physical systems design. – Outline key steps taken during the design phase. – Define the term RFP and discuss how this document is used to drive the acquisition of hardware and software. Fundamentals of Information Systems, Second Edition 57 Principles and Learning Objectives • The primary emphasis of systems implementation is to make sure that the right information is delivered to the right person in the right format at the right time. – State the purpose of systems implementation and discuss the various activities associated with this phase of systems development. Fundamentals of Information Systems, Second Edition 58 Principles and Learning Objectives • Maintenance and review add to the useful life of a system but can consume large amounts of resources, so they benefit from the same rigorous methods and project management techniques applied to systems development. – State the importance of systems and software maintenance and discuss the activities involved. – Describe the systems review process. Fundamentals of Information Systems, Second Edition 59