1 / 20

CSC340: Tutorial 2 Software Lifecycles and Prototyping

CSC340: Tutorial 2 Software Lifecycles and Prototyping. TA: Y. An Date: 9:00-10:00am, Fri. Oct. 10, 2003 Location: BA1130. In This Tutorial:. General perspective Waterfall life cycle Waterfall life cycle with iteration Prototyping Incremental development: spiral model life cycle.

chalcomb
Download Presentation

CSC340: Tutorial 2 Software Lifecycles and Prototyping

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CSC340: Tutorial 2Software Lifecycles and Prototyping TA: Y. An Date: 9:00-10:00am, Fri. Oct. 10, 2003 Location: BA1130 CSC340

  2. In This Tutorial: • General perspective • Waterfall life cycle • Waterfall life cycle with iteration • Prototyping • Incremental development: spiral model life cycle CSC340

  3. A General Perspective Building computerized information Systems can be viewed as a form of problem Solving. CSC340

  4. The Waterfall Life Cycle Model CSC340

  5. The Waterfall Life Cycle with Iteration Iteration added to solve some of the problems CSC340

  6. Waterfall Life Cycle Deliverables • System Engineering: • High level architectural specification. • Requirements Analysis: • requirements specification, functional specification, acceptance test specification. • Design: • software architecture specification, system test specification, design specification, sub-system test specification, unit test specification. • Construction: • program code. • Testing: • unit test report, sub-system rest report, system test report, acceptance test report, completed system • Installation: • installed system. • Maintenance: • change requests, change request report. CSC340

  7. Strengths of TLC • Tasks in phases may be assigned to specialized teams • Project progress evaluated at the end of each phase • Manage projects with high levels of risks • Next: Prototyping CSC340

  8. Prototyping • Many approaches to systems development incorporate some iteration. • The waterfall model aims to deliver a final working system as the finished product. • Users find it difficult to imagine how their requirements will be translated into a working system – different impl. from same requirements. • Prototyping overcomes many of the potential misunderstandings and ambiguities. CSC340

  9. Prototyping (con’t) • A prototype is a system or a partially complete system that is built quickly to explore some aspect of the system requirements. • A prototype typically lack full functionality. • A prototype is developed using rapid development tools. CSC340

  10. Prototyping (con’t) • Various objectives: • To investigate user requirements. • Human-computer interaction. • Most suitable form of user interface. • To determine the suitability of a platform. • To determine the efficacy of a particular language, a DBMS, or a communication infrastructure. CSC340

  11. Main Stages CSC340

  12. Prototyping - advantages • It can help identify any misunderstandings between developers and client by early demonstration of system functionality. • It can help identify missed client requirements. • It can help identify difficulties in interface. • It can help test the feasibility and usefulness of the system, even though, it is incomplete. CSC340

  13. Prototyping—Problems • The client may perceive the prototype as part of the final system • The prototype may divert attention from functional to solely interface issues • Prototyping requires significant user involvement • Managing the prototyping life cycle requires careful decision making CSC340

  14. Incremental Development • Several suggestions on how to overcome the problems with the Traditional Life Cycle (TLC) model. • Incremental development suggestion: • Successful large systems start out as successful small systems that grow incrementally. • Each increment provides feedback to the development team and informs the development of subsequent increments. CSC340

  15. Spiral Life Cycle Model CSC340

  16. The Spiral Life Cycle Model CSC340

  17. Unified Software Development Process • Captures many elements of best practice • Main phases • Inception is concerned with determining the scope and purpose of the project • Elaboration focuses requirements capture and determining the structure of the system • Construction's main aim is to build the software system • Transition deals with product installation and rollout CSC340

  18. Project Phases Workflows Requirements Analysis Design Implementation Test Inception 1 2 3 Size of square relative to time spent on workflow Elaboration 4 5 Construction 6 7 8 Transition 9 10 Iterations within each phase CSC340

  19. User Involvement • Users can be involved in various ways • As part of the development team (DSDM) • Via a consultative approach • In fact gathering CSC340

  20. Computer Aided Software Engineering • CASE tools typically provide a range of features including • checks for syntactic correctness • repository support • checks for consistency and completeness • navigation to linked diagrams • layering • requirements tracing • report generation • system simulation • performance analysis • code generation CSC340

More Related