SOFTWARE LIFE-CYCLE MODELS

Slides:



Advertisements
Similar presentations
Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 12, Software Life Cycle.
Advertisements

Computer Science Department
1 Requirements and the Software Lifecycle The traditional software process models Waterfall model Spiral model The iterative approach Chapter 3.
1 Software Processes A Software process is a set of activities and associated results which lead to the production of a software product. Activities Common.
Slide 3.1 © The McGraw-Hill Companies, 2002 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach
Ch2: Software Life Cycles Housekeeping  Feedback from Wednesday  Structured vs. Object Oriented Paradigm Structured: Data is an argument, functions separate,
CHAPTER 3 SOFTWARE LIFE-CYCLE MODELS.
SOFTWARE PROCESS MODELS. Software Process Models  Process model (Life-cycle model) -steps through which the product progresses Requirements phase Specification.
Software Processes Modified by Randy K. Smith
Software Life-Cycle Models
CS487 Software Engineering Omar Aldawud
1 Chapter 3 Prescriptive Process Models Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman.
CSE 470 : Software Engineering The Software Process.
CHAPTER 1 SOFTWARE DEVELOPMENT. 2 Goals of software development Aspects of software quality Development life cycle models Basic concepts of algorithm.
SEP1 - 1 Introduction to Software Engineering Processes SWENET SEP1 Module Developed with support from the National Science Foundation.
RUP/UP Software Development Method Hoang Huu Hanh, Hue University hanh-at-hueuni.edu.vn.
CS 5150 Software Engineering
Software Engineering. How many lines of code? Average CS1004 assignment: 200 lines Average CS4115 project: 5000 lines Corporate e-commerce project: 80,000.
1 SOFTWARE LIFE-CYCLES Beyond the Waterfall. 2 Requirements System Design Detailed Design Implementation Installation & Testing Maintenance The WATERFALL.
Software Engineering.
Slide 9.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Unit 201 Models of Software Development Life Cycle (SDLC) The objective of this section is to introduce you the idea of software process – a coherent set.
Incremental Model Requirements phase Verify Specification phase Verify
Software Life Cycle Model
Ch 2: Software Life-Cycle Models CSCI Ideal Software Development.
Lecture 2 Software Processes CSC301-Winter 2011 Hesam C. Esfahani
1 CSE 403 Software Lifecycle Models Reading: Rapid Development Ch. 7, 25 (further reading: Ch. 21, 35, 36, 20) These lecture slides are copyright (C) Marty.
What is the Spiral Development Model? Lifted From
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
OHT 7.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Chapter 7.1.
SDLC – A Brief Introduction
Capability Maturity Models Software Engineering Institute (supported by DoD) The problems of software development are mainly caused by poor process management.
Software Life-Cycle Models Somnuk Keretho, Assistant Professor Department of Computer Engineering Faculty of Engineering, Kasetsart University
Software Engineering Management Lecture 1 The Software Process.
CSE 308 Software Engineering Software Engineering Strategies.
Software Life Cycle Models. Waterfall Model  The Waterfall Model is the earliest method of structured system development.  The original waterfall model.
Prescriptive Process Models Jon Walker. Prescription? What does prescriptive mean?
1 Software Development Software Engineering is the study of the techniques and theory that support the development of high-quality software The focus is.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 1: Introduction to Systems Analysis and Design Alan.
Software Engineering process models
Software Engineering II Lecture 3 Fakhar Lodhi. Software Life-Cycle Steps Life-cycle model (formerly, process model) –Requirements phase –Specification.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 1: Introduction to Systems Analysis and Design Alan.
Slide 3.1 © The McGraw-Hill Companies, 2002 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach
Software Engineering At Glance. Why We Need Software Engineering? The aim of software engineering is to solve the software crisis Software is delivered.
Software Engineering Zhang Shuang
Sistemas de Información Agosto-Diciembre 2007 Sesión # 9.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Software Development Life Cycle (SDLC)
Systems Development Life Cycle
Review of Definitions Software life cycle: –Set of activities and their relationships to each other to support the development of a software system Software.
SOFTWARE DEVELOPMENT Presented By : Emporiumtech This presentation is brought you by
Slide 3.1 © The McGraw-Hill Companies, 2002 SOFTWARE LIFE-CYCLE MODELS.
Software Development - Methodologies
TK2023 Object-Oriented Software Engineering
Chapter 3 Prescriptive Process Models
SOFTWARE LIFE-CYCLES Beyond the Waterfall.
SNS College of Engineering Coimbatore
Software Myths Software is easy to change
V-Shaped SDLC Model Lecture-6.
Software development life cycle models
Models of Software Development Life Cycle (SDLC)
Life Cycle Models PPT By :Dr. R. Mall.
Software Engineering Lecture 09 & 10.
Software Engineering Lecture 18.
Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach
Incremental Waterfall
SOFTWARE LIFE-CYCLES Beyond the Waterfall.
Software Engineering Lecture 17.
Presentation transcript:

SOFTWARE LIFE-CYCLE MODELS CS 3320--Chapter 3 UHD-CS3320-C03

MODELS Build-And-Fix Model Waterfall Model Rapid Prototyping Model Incremental Model Spiral Model Object-Oriented Model UHD-CS3320-C03

UHD-CS3320-C03

BUILD-AND-FIX MODEL No Specifications No design Reworked many times Totally unsatisfactory Need life-cycle model “Game Plan” Phases Milestones UHD-CS3320-C03

WATERFALL MODEL First developed by Royce in early70’s Documentation Driven Verification/Test at each phase Feedback loops UHD-CS3320-C03

UHD-CS3320-C03

ANALYSIS OF THE WATERFALL MODEL Advantages Enforced discipline documentation-driven model testing by SQA Maintenance easier Disadvantages Requirements & Spec Analysis graphical aids are used UHD-CS3320-C03

RAPID PROTOTYPING MODEL Rapid Prototype used for requirements and specifications analysis. Rapid Prototype contains a subset of the functionality of the target product Structure of prototype not important, but speed of development process is--RAPID Prototype can be used in requirement phase of WF model UHD-CS3320-C03

UHD-CS3320-C03

RAPID PROTOTYPING MODEL cont. Advantages Helps get requirements right Good insight to estimate budget and time requirements Help in design phase ==> less feedback loops Disadvantages Prototype adds to the cost (overall it may reduce cost) Temptation to turn prototype into product UHD-CS3320-C03

RAPID PROTOTYPING MODEL cont. Key points Do not turn it into product Prototype may replace requirement phase but never the design phase Waterfall model-- try to get right the first time Rapid Prototype-- Allows better feedback from client at earliest stage of the process. UHD-CS3320-C03

INCREMENTAL MODEL The product is constructed step by step The product is divided into a series of incremental builds Each build consist of a set of module that provide a functionality Product provided to client build by build Each new build is integrated with previous builds and delivered to client Production may stop at end of any build UHD-CS3320-C03

UHD-CS3320-C03

ANALYSIS OF THE INCREMENTAL MODEL Waterfall: operational quality of complete product at end Incremental model: deliver operational quality of portion of product in “short” time Reduces the effect of introducing a new system on users: less traumatic Smaller capital outlay The process can be stopped at end of any build Need open architecture-- good for maintenance UHD-CS3320-C03

ANALYSIS OF THE INCREMENTAL MODEL Problems: If broken into too few builds then it degenerates into the build-and-fix model If broken into too many builds then integration of the builds can turn out to be too costly. Note: Requirements, Specs and Design are done for whole product. Only Implementation and Integration are incremental. A more risky version: incremental Specs and Design UHD-CS3320-C03

UHD-CS3320-C03

SYNCHRONIZE-AND-STABILIZE MODEL Microsoft’s life-cycle model Requirements analysis--interview potential customers Draw up specifications Divide project into 3 to 4 builds Each build carried out by small teams working in parallel At end of each day--Synchronize (integrate modules into build, test & debug) At end of each build-Stabilize (freeze build) UHD-CS3320-C03

SPIRAL MODEL Simplified form Waterfall model plus risk analysis Precede each phase by Alternatives Risk analysis: performance, budget, milestones Follow each phase by Evaluation Planning of next phase Prototypes may be used to analyze risks UHD-CS3320-C03

UHD-CS3320-C03

SPIRAL MODEL Refer to Figure radial dimension shows cumulative cost to date Angular dimension shows progress through the spiral Each cycle corresponds to a phase UHD-CS3320-C03

UHD-CS3320-C03

ANALYSIS OF SPIRAL MODEL Advantages: It is a risk-driven model Risk analysis highlights the need to stay within budget, on schedule and quality assurance. If risks can not be resolved, terminate project No distinction between development and maintenance. UHD-CS3320-C03

ANALYSIS OF SPIRAL MODEL Restrictions: Intended for internal (in-house) software Contract software: risk analysis can not be done at each phase. Applicable to only large-scale software cost of risk analysis UHD-CS3320-C03

OBJECT-ORIENTED MODELS Intended to overcome shortcomings of previous models Emphasis on incorporating iterations, refinement, and feedback overlap and parallelism between phases incremental development Danger Can degenerate into CABTAB (Code A Bit Test A Bit) UHD-CS3320-C03

UHD-CS3320-C03

CONCLUSION Different life-cycle models Build-and-Fix should be avoided WF: well known with strengths and weaknesses Rapid-Prototype: strengthens WF model Incremental model Synchronize-and-Stabilize: used with success by Microsoft Spiral: risk analysis driven Best suggestion: “Mix-and-match” life-cycle UHD-CS3320-C03