520 likes | 976 Views
introduction to information systems: whiteley / palgrave chapter 19 – system development lifecycles. System. Development. Lifecycles. introduction to information systems: whiteley / palgrave chapter 19 – system development lifecycles. A system analysis and design methodology is:
E N D
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles System Development Lifecycles
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles A system analysis and design methodology is: a recommended collection of philosophies, phases, procedures, techniques, tools documentation, management and training for developers of an information system. (Maddison, 1983) The stages / phases are termed the lifecycle
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles This chapter covers the following topics: • Part 1: The Waterfall Lifecycle. • Part 2: SSADM Lifecycle. • Part 3: Iterative Lifecycles. • Part 4: DSDM Lifecycle. • Part 5: Comparative Methodologies This is too much for one lecture (arguably it is five lectures), please select your slides. Note, Part 4 includes additional material that is not included in the book (identified by the yellow heading box).
Feasibility Study System Analysis and Design Program and Unit Test System and Acceptance Test Operations introduction to information systems: whiteley / palgravechapter 19 – system development lifecyclespart 1 Waterfall Lifecycle
introduction to information systems: whiteley / palgravechapter 19 – system development lifecyclespart 1 Stage 1: Feasibility Study A short stage to answer three questions: • Technically feasibility – will it work? • Financially feasibility – can we afford it? • Ethical / Organisational feasibility – is it right? End products: • Feasibility Report • Authorisation for the Project to proceed (or to quit).
Requirements Analysis Logical Design Technical Design introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 1 Stage 2: System Analysis and Design The stage has three tasks: • Requirements Analysis. • Logical Design. • Technical Design.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 1 Stage 2: System Analysis and Design The first phase, requirements analysis, finds out what the users do and how it might be improved. The techniques used are: • Interviews • Observation • Questionnaires • Inspect Current System Leading to the requirements specification.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 1 Stage 2: System Analysis and Design The second phase is the logical system design: A theoretical system that: • Meets the business’s requirements. • Is independent of any specific IT. The idea is to devise the most appropriate business solution and then find the IT that fits it.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 1 Stage 2: System Analysis and Design The final phase is the physical / technical design: At this stage we determine: • What the system will look like. • The technology that is needed. • The way it will be used.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 1 Stage 2: System Analysis and Design The end products of the SA&D stage will be: • Diagrams of the processing and data requirements. • Specifications of the IT equipment to and technical procedures. • Details of the organisational structures and procedures. • Program / process specifications.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 1 Stage 3: Program and Unit Test This is the stage where the system is implemented on the IT equipment. This can be achieved by: • Programming. • An application generator or 4GL. • The adoption of a ready written package. As each program / module is written it needs to be thoroughly unit tested.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 1 Stage 4: System and Acceptance Test The whole system is subject to: • System test –by the project team. • Acceptance test – by the users
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 1 Stage 5: Operations The first event is going live. This may take place as: • A ‘big-bang’. • A phased introduction. Preparation for the system going live includes: • Installation of new IT equipment. • Training of maintenance and support staff • Training of user staff. • Loading of data onto the new system
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 1 Stage 5: Operations Once live the true operations stage includes: • Support – helping the users. • Maintenance – dealing with bugs. • Enhancement – amending the system. Over time, technology and the business will move on and eventually it is time to start afresh.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 1 The Waterfall Lifecycle Expects one activity to be signed off before the next activity starts. Allows for clear cut project management. Problems with a waterfall lifecycle are that: • It assumes that user requirements are fully captured. • It assumes that no requirements change. • It can be bureaucratic, long winded and expensive.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 2 Structured System Analysis and Design Method (SSADM) The leading structured method in the UK is SSADM: • SSADM was introduced in the 1980s by the government Central Computing and Telecommunications Agency (CCTA). • The current issue is version 4. The method is public source. • SSADM is a waterfall SA&D methodology covering the feasibility study and SA&D part of the lifecycle.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 2 SSADM Module 1 Feasibility Study: Stages Stage 0 Feasibility Module 2 Requirements Analysis: Stage 1 Investigate Current Environment Stage 2 Business System Options Module 3 Requirement Specification: Stage 3 Definition of Requirements Module 4 Logical System Specification Stage 4 Technical System Options Stage 5 Logical Design Module 5 Physical Design Stage 6 Physical Design
Stage 0 Feasibility Study Stage 1 Requirements Analysis Stage 2 Business System Options Stage 3 / 5 Logical Design Stage 4 Technical System Options Stage 6 Physical Design introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 2 SSADM Stages Three main stages Three linking / transition stages
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 2 SSADM: Stage 0: Feasibility (The first of the transition stages). A short sharp study to decide whether to proceed with the project.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 2 SSADM: Stage 1: Requirements Analysis Investigation of: • The current system • business and user requirements for the proposed system. End products include: • Data flow diagram (DFD) of the current system. • Logical data structure (LDS) of the current system. • Problem requirement list.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 2 SSADM: Stage 2: Business System Options (The second of the transition stages). The job of this stage is to: • Think of alternative business approaches. • Choose the optimum way forward. The main end product of the stage is: • Data flow diagram (DFD) for the proposed logical system.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 2 SSADM: Stage 3/5: Definition of Requirements/Logical Design The proposed logical system is specified in some detail. The documentation for the logical design includes: • Data flow diagram (DFD) of the proposed system. • Logical data structure (LDS) of the proposed system. • Relational data analysis (RDA). • Entity life histories (ELH).
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 2 SSADM: Stage 4: Technical System Options (Third and final transition stage). The task here is to choose the hardware, software and communication provision for the proposed system. Scheduled part way through the logical design so: • There will be sufficient information to make technical decisions. • Leave time for the IT to be ordered.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 2 SSADM: Stage 6: Physical Design The logical design is mapped onto the intended technical provision. End products for the physical design are: • Physical database design. • Physical process design.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 2 SSADM: Techniques The main techniques used in SSADM are: • The data flow diagram (DFD). • The logical data structure (LDS) / ER diagram. • Relational data analysis (RDA – also known as normalisation). • Entity life history (ELH), one diagram for each entity on the LDS. SSADM also includes: • Effect correspondence diagrams (ECD). • Process and dialogue design using Jackson structures.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 3 Iterative Lifecycles The main alternative to the waterfall lifecycle is an: • iterative or prototype lifecycle. With this approach: • The project team knock up a prototype of the system. • Discuss the prototype with the users. • Modify the prototype to incorporate the improvements. • Modify the prototype to add further functionality. And return to discuss the prototype with the users. Eventually the prototype becomes the agreed system
Feasibility Study Initial Prototype Enhance Prototype Test Prototype System Test Operations introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 3 Iterative Lifecycle
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 3 Iterative Lifecycle – Feasibility Study Firstly we need to assess whether the system is: • Technically feasible, • Financially justified, • Ethically acceptable. We also need to: • Work out what will be in the initial prototype, • Plan the iterations and the timescales.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 3 Iterative Lifecycle – Initial Prototype A prototype is a model or mock-up of the system. The first prototype will concentrates on: • Establishing user requirements for the main system functions. Prototypes need to be: • Put together quickly and changed quickly. The use of a fourth generation language / application generator can greatly assist in this process.
Enhance Prototype Test Prototype introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 3 Iterative Lifecycle – Test Prototype / Enhance Prototype The two main stages in the iterative lifecycle are:
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 3 Iterative Lifecycle – Test Prototype / Enhance Prototype The questions for the test prototype stage are: • Does the prototype do what the user requires? • Is the prototype function well designed? • What functions and functionality should be added? The enhance prototype stage is then used to: • Make any substantial changes. • Include additional functionality. The final iteration of the prototype loop produces a fully functional, documented and technically acceptable software system.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 3 Iterative Lifecycle – System Test The prototype needs a thorough test before it can be put live. Iterative Lifecycle – Operations This stage consists of: • Going live. • Maintenance and enhancement. And is essentially the same as for the waterfall lifecycle.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 3 Iterative Lifecycle Advantages of the iterative lifecycle include: • Ease of working out user requirements • Generally quicker than the waterfall lifecycle. • Changes are more readily incorporated • The user is involved throughout the process. Drawbacks of an iterative prototype approach include: • Project management is made more difficult. • The software is unlikely to be well designed. • No formal point where the system should be sized. • Not appropriate for large-scale monolithic systems.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 4 DSDM Dynamic System Development Methodology Developed by IT industry and IS user organisations. DSDM has become the de-facto UK RAD standard (RAD is Rapid Application Development) DSDM is ‘… not a method the accepted sense, but a framework of controls for RAD, supplemented by guidance on how to apply those controls.’. The lifecycle of the DSDM is: • More complex than the generalised evolutionary lifecycle. • Affectionately known as ‘three pizzas and a cheese cake’
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 4
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 4 DSDM three pizzas and a cheese cake
Feasibility Business Study Functional Model Iteration Implementation Design and Build Iteration introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 4 DSDM lifecycle
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 4 DSDM – Feasibility Study To check that the proposed system is: • Technically achievable, • Affordable, and • Acceptable. We must also check that RAD is appropriate: • The system is not be computationally complex, and • All stakeholders are committed to the RAD philosophy.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 4 DSDM – Business Study A short exercise to elucidate the business requirements and determine the technical constraints. The end products include: • Business area definitions. • System architecture definition. • Outline prototype plan.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 4 DSDM – Business Study Uses JAD (Joint Application and Development) workshops: ‘a series of facilitated workshops of knowledgeable staff who can pool their knowledge and gain consensus as to the priority of development’ and produces: • Business Area Definition (for each business area). • System Architecture Definition. • Outline Prototype Plan.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 4 DSDM – Functional Model Iteration The functional model iteration is used to: • Prototype the system. • Document the system. We start with the main functions and iterate to: • Correct our understanding of the requirement. • Add further functionality.
Agree Schedule Create functional prototype Identify functional prototype FUNCTIONAL MODEL ITERATION Review prototype introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 4 DSDM – Functional Model Iteration • Four steps: • Identify what is to be done; • Agree how it is to be done; • Do it; • Check the documentation and the prototype, and iterate.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 4 DSDM – Design and Build Iteration The design and build iteration is used to: • Complete the IT infrastructure. • Ensure adequate performance robustness. The stage is iterative.
Identify design prototype Agree Schedule Review design prototype DESIGN AND BUILD ITERATION Create design prototype introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 4 DSDM – Design and Build Iteration • Four steps: • Accept the code and documentation; • Determine what more needs to be done in further iterations; • Correct and update (add in non-functional requirements); • Check it out - is it done?; and iterate.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 4 DSDM – Implementation The system is made live. The stage may iterate to implement in a number of locations.
Implement Review Business Train users IMPLEMENTATION User approval and user guidelines introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 4 DSDM – Implementation • Four steps: • Accepting the system; • Train users; • Put the system live; • Review; and iterate – but only for multiple implementations • Exit to: • Business Study – additional business requirements. • Functional Model Iteration – sub-systems that were left out. • Design and Build Iteration – unresolved technical issues. • The Pub!
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 4 DSDM Principles In addition to the lifecycle, DSDM, for successful application, requires adherence to nine underlying principles: ‘The foundations of DSDM are contained in nine underlying principles. For DSDM to be successful, all nine of these principles must be applied in a project.’
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 4 DSDM Principles Principle 1: Active user involvement is imperative Principle 2: DSDM teams must be empowered to make decisions Principle 3: The focus is on frequent delivery of products Principle 4: Fitness for business purpose is the essential criteria for acceptance of deliverables Principle 5: Iterative and Incremental development is necessary to converge on an accurate business solution Principle 6: All changes during development are reversible Principle 7: Requirements are baselined at a high level Principle 8: Testing is integrated throughout the lifecycle Principle 9: A collaborative and cooperative approach between all stakeholders is essential
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 5 Classifying SA&D Methodologies • Hard systems: • Assume that there is a problem to solve • Take a scientific, reductionist approach. • Soft systems: • People centred – diverse views, needs and responsibilities. • Starts with the problem domain. • Does not assume the need for a specific system.
introduction to information systems: whiteley / palgravechapter 19 – system development lifecycles part 5 Classifying SA&D Methodologies Hard systems can be further classified as: • Structured • Object Oriented (OO-SA&D) • Rapid Application Development (RAD) And each of these approaches is associated with a set of techniques.