Slide 3.1 © The McGraw-Hill Companies, 2002 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach

Slides:



Advertisements
Similar presentations
Software Life Cycle and Models
Advertisements

Slide 3.1 © The McGraw-Hill Companies, 2002 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach
Software Life-Cycle Models
Software Development Life-Cycle Models
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.
SW LIFE -CYCLE MODELS.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 المحاضرة الثانية.
Software Project Management
Software Processes Modified by Randy K. Smith
Software Life-Cycle Models
Slide 2.1 Copyright © 2011 by The McGraw-Hill Companies, Inc. All rights reserved. Object-Oriented and Classical Software Engineering Eighth Edition, WCB/McGraw-Hill,
1 Chapter 3 Prescriptive Process Models Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman.
CHAPTER 1 SOFTWARE DEVELOPMENT. 2 Goals of software development Aspects of software quality Development life cycle models Basic concepts of algorithm.
Introduction to Software Engineering Lecture 3 André van der Hoek.
Slide 10.1 CHAPTER 10 REQUIREMENTS PHASE. Slide 10.2 Overview l Requirements elicitation l Requirements analysis l Rapid prototyping l Human factors l.
Introduction to Software Engineering Lecture 4 André van der Hoek.
Gu & Maher University of Sydney, October 2004 DECO2005 Monitoring Team Process.
Software Process and Problem Statements CSSE 371, Software Requirements and Specification Mark Ardis, Rose-Hulman Institute September 3, 2004.
Software Engineering 3156 Fall 2001 Section 1 17-Sep-01 Class #3: Life Cycles, XML, and Tools Phil Gross.
Extreme Programming Collaboration in Software Development Process.
Slide 10.1 © The McGraw-Hill Companies, 2002 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach.
Chapter 2A 1 Software Engineering CHAPTER 2 SOFTWARE LIFE CYCLE MODELS by Farhad Mavaddat CS430 Notes Modified from the notes of Jerry Breecher of Clark.
Incremental Model Requirements phase Verify Specification phase Verify
2. Software Life Cycle Models. Software Engineering Overview Software development in theory Iteration and incrementation Risks and other aspects of iteration.
Ch 2: Software Life-Cycle Models CSCI Ideal Software Development.
CST 316 Process. Junior Project Process Provide necessary points of communication for individual effort. Allow a controllable division of labor. Divide.
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.
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
CSE 308 Software Engineering Software Engineering Strategies.
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
Note Excerpts from Object-Oriented Software Engineering WCB/McGraw-Hill, 2008 Stephen R. Schach
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.
SOFTWARE LIFE-CYCLE MODELS
SOFTWARE LIFE-CYCLE MODELS CHAPTER 2
SOFTWARE LIFE-CYCLE MODELS
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
Slide 2.1 Copyright © 2008 by The McGraw-Hill Companies, Inc. All rights reserved. Object-Oriented Software Engineering WCB/McGraw-Hill, 2008 Stephen R.
It specifies the various phases/workflows of the software process, such as: the requirements, analysis (specification), design, implementation,
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
Slide 2.1 Copyright © 2008 by The McGraw-Hill Companies, Inc. All rights reserved. CHAPTER 2 SOFTWARE LIFE-CYCLE MODELS Derived from Dr. Stehpen R. Schach’s.
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.
Slide 2.1 © The McGraw-Hill Companies, 2007 Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach.
Object-Oriented and Classical Software Engineering Eighth Edition, WCB/McGraw-Hill Stephen R. Schach 1.
Systems Development Life Cycle
CS 4500: Software Development Software Process. Materials Sommmerville Chapters 1, 2 and 3 Software Cycle and Models:
Chapter 2- Software Development Process  Product Components  Software Project Staff  Software Development Lifecycle Models.
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
Unit 6 Application Design KLB Assignment.
Chapter 3 Prescriptive Process Models
Software Myths Software is easy to change
Software development life cycle models
Software Engineering Lecture 09 & 10.
Object-Oriented and Classical Software Engineering Eighth Edition, WCB/McGraw-Hill, 2011 Stephen R. Schach.
Software Engineering Lecture 18.
Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach
Software Engineering CHAPTER 2 SOFTWARE LIFE CYCLE MODELS
Extreme Programming.
Software Engineering Lecture 17.
Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach
PRESENTED BY P.SANDEEP MSc,MTech
Presentation transcript:

Slide 3.1 © The McGraw-Hill Companies, 2002 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach

Slide 3.2 © The McGraw-Hill Companies, 2002 CHAPTER 3 SOFTWARE LIFE-CYCLE MODELS

Slide 3.3 © The McGraw-Hill Companies, 2002 Overview l Build-and-fix model l Waterfall model l Rapid prototyping model l Incremental model l Extreme programming l Synchronize-and-stabilize model l Spiral model l Object-oriented life-cycle models l Comparison of life-cycle models

Slide 3.4 © The McGraw-Hill Companies, 2002 Software Life-Cycle Models l Life-cycle model (formerly, process model) l The steps through which the product progresses –Requirements phase –Specification phase –Design phase –Implementation phase –Integration phase –Maintenance phase –Retirement

Slide 3.5 © The McGraw-Hill Companies, 2002 Build and Fix Model l Problems –No specifications –No design l Totally unsatisfactory l Need a life-cycle model –“Game plan” –Phases –Milestones

Slide 3.6 © The McGraw-Hill Companies, 2002 Waterfall Model l Characterized by –Feedback loops –Documentation-driven l Advantages –Documentation –Maintenance easier l Disadvantages –Specification document »Joe and Jane Johnson »Mark Marberry

Slide 3.7 © The McGraw-Hill Companies, 2002 Rapid Prototyping Model l Linear model l “Rapid”

Slide 3.8 © The McGraw-Hill Companies, 2002 Three Key Points l Do not turn the rapid prototype into the product l Rapid prototyping may replace the specification phase—never the design phase l Comparison: –Waterfall model—try to get it right the first time –Rapid prototyping—frequent change, then discard

Slide 3.9 © The McGraw-Hill Companies, 2002 Waterfall and Rapid Prototyping Models l Waterfall model –Many successes –Client’s needs l Rapid prototyping model –Not proved –Has its own problems l Solution –Rapid prototyping for the requirements phase –Waterfall model for the rest of the life cycle

Slide 3.10 © The McGraw-Hill Companies, 2002 Incremental Model l Divide project into builds

Slide 3.11 © The McGraw-Hill Companies, 2002 Incremental Model (contd) l Waterfall, rapid prototyping models –Operational quality complete product at end l Incremental model –Operational quality portion of product within weeks l Less traumatic l Smaller capital outlay, rapid return on investment l Need open architecture—maintenance implications l Variations used in object-oriented life cycle

Slide 3.12 © The McGraw-Hill Companies, 2002 Incremental Model (contd) l Problems –Build-and-fix danger –Contradiction in terms

Slide 3.13 © The McGraw-Hill Companies, 2002 Incremental Model (contd) l More risky version—pieces may not fit –CABTAB and its dangers

Slide 3.14 © The McGraw-Hill Companies, 2002 Extreme Programming l Somewhat controversial new approach l Stories (features client wants) l Estimate duration and cost of each story l Select stories for next build l Each build is divided into tasks l Test cases for a task are drawn up first l Pair programming l Continuous integration of tasks

Slide 3.15 © The McGraw-Hill Companies, 2002 Unusual Features of XP l Computers are put in the center of a large room lined with cubicles l A client representative is always present l Cannot work overtime for 2 successive weeks l No specialization l Refactoring

Slide 3.16 © The McGraw-Hill Companies, 2002 Evaluating XP l XP has had some successes l Good when requirements are vague or changing l Too soon to evaluate XP

Slide 3.17 © The McGraw-Hill Companies, 2002 Synchronize-and Stabilize Model l Microsoft’s life-cycle model l Requirements analysis—interview potential customers l Draw up specifications l Divide project into 3 or 4 builds l Each build is carried out by small teams working in parallel

Slide 3.18 © The McGraw-Hill Companies, 2002 Synchronize-and Stabilize Model (contd) l At the end of the day—synchronize (test and debug) l At the end of the build—stabilize (freeze build) l Components always work together –Get early insights into the operation of the product

Slide 3.19 © The McGraw-Hill Companies, 2002 Spiral Model l Simplified form –Waterfall model plus risk analysis preceding each phase

Slide 3.20 © The McGraw-Hill Companies, 2002 Simplified Spiral Model l View of spiral

Slide 3.21 © The McGraw-Hill Companies, 2002 A Key Point of the Spiral Model l If all risks cannot be resolved, the project is immediately terminated

Slide 3.22 © The McGraw-Hill Companies, 2002 Full Spiral Model l Precede each phase by –Alternatives –Risk analysis l Follow each phase by –Evaluation –Planning of next phase l Radial dimension: cumulative cost to date l Angular dimension: progress through the spiral

Slide 3.23 © The McGraw-Hill Companies, 2002 Full Spiral Model (contd)

Slide 3.24 © The McGraw-Hill Companies, 2002 Analysis of Spiral Model l Strengths –It is easy to judge how much to test –No distinction is made between development, maintenance l Weaknesses –For large-scale software only –For internal (in-house) software only

Slide 3.25 © The McGraw-Hill Companies, 2002 Object-Oriented Life-Cycle Models l Need for iteration within and between phases –Fountain model –Recursive/parallel life cycle –Round-trip gestalt –Unified software development process l All incorporate some form of –Iteration –Parallelism –Incremental development l Danger –CABTAB

Slide 3.26 © The McGraw-Hill Companies, 2002 Fountain Model l Overlap (parallelism) l Arrows (iteration) l Smaller maintenance circle

Slide 3.27 © The McGraw-Hill Companies, 2002 Conclusions l Different life-cycle models –Each with its own strengths –Each with its own weaknesses l Criteria for deciding on a model include: –The organization –Its management –Skills of the employees –The nature of the product l Best suggestion –“Mix-and-match” life-cycle model