ch7 software production process l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Ch7: Software Production Process PowerPoint Presentation
Download Presentation
Ch7: Software Production Process

Loading in 2 Seconds...

play fullscreen
1 / 25

Ch7: Software Production Process - PowerPoint PPT Presentation


  • 289 Views
  • Uploaded on

Ch7: Software Production Process Waterfall models Invented in the late 1950s for large air defense systems, popularized in the 1970s Main characteristics: Waterfall models (contd..) Feasibility study Requirements Design Coding and module testing Integration and system testing

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Ch7: Software Production Process' - Albert_Lan


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
waterfall models
Waterfall models
  • Invented in the late 1950s for large air defense systems, popularized in the 1970s
  • Main characteristics:
waterfall models contd
Waterfall models (contd..)

Feasibility study

Requirements

Design

Coding and module testing

Integration and system testing

Delivery, deployment, and

maintenance

waterfall models contd4
Waterfall models (contd..)
  • Organizations adopting waterfall models:
  • Example: Military Standard (MIL-STD-2167)
evaluation of the waterfall model
Evaluation of the waterfall model
  • Contributions to the understanding of software process:
  • Characteristics of a strict waterfall model:

.

evaluation of the waterfall model contd
Evaluation of the waterfall model (contd..)
  • Problems with the waterfall model:
evaluation of the waterfall model contd7
Evaluation of the waterfall model (contd..)
  • Characteristics of the waterfall model potentially lead to high maintenance costs:
  • In summary, software evolution is not anticipated or planned.
waterfall model with feedback
Waterfall model with feedback

Feasibility study

Requirements

Design

Coding and

module testing

Integration and

system testing

Delivery, deployment, and

maintenance

evolutionary models
Evolutionary models
  • Brooks advocates building a product twice:
  • Evolutionary or incremental approach:
  • Evolutionary model has several different versions
evolutionary models contd
Evolutionary models (contd..)
  • Evolutionary process model (Boehm):
  • Delivered increment:
  • Development strategy (Glib, 1988):
  • Must use waterfall process discipline.
evolutionary models contd11
Evolutionary models (contd..)
  • Incremental implementation model: Waterfall model used until the implementation phase.
evolutionary models contd12
Evolutionary models (contd..)
  • Incremental development and delivery model: Incremental approach expanded to all stages of life cycle.
    • Achieves finer granularity in the process.
    • Waterfall model is followed for different portions.
    • Increments developed after feedback received from the user.
    • Allows users to understand what they actually need leading to changes in requirements.
evolutionary models contd13
Evolutionary models (contd..)
  • Evolutionary prototype:
  • Evolutionary models and maintenance:
evaluation of evolutionary models
Evaluation of evolutionary models
  • Problems with evolutionary models:
  • Advantages to evolutionary models:
transformation model
Transformation model
  • Transformation model has roots in formal specifications.
  • Views software development as a sequence of steps that transform a specification into an implementation:
  • Transformation may be done manually or by a software engineer.
  • Still a theoretical reference model.
transformation model contd17
Transformation model (contd..)
  • Two main stages:
    • Requirements analysis:
    • Optimization:
  • Transformation controlled by software engineering
  • Before transformation, specifications are verified against user expectations.
  • Transformation model supported by software development environment. Tools for:
transformation model contd18
Transformation model (contd..)
  • Major advantage over waterfall model:
  • Problems:
  • Transformation model has been studied for small programs as a way of proving correctness.
spiral model
Spiral model
  • Purpose:
  • Metamodel:
  • Guiding principles:
  • Risk:
  • Risk management (Boehm):
spiral model contd
Spiral model (contd..)
  • Focuses on identifying and eliminating high-risk problems by careful process design.
  • Cyclic model with four stages:
  • Allows unstated requirements to become part of next specification cycle:
assessment of process models
Assessment of process models
  • Historical evolution:
  • Waterfall:
  • Evolutionary:
  • Transformation:
  • Spiral:
assessment of process models contd
Assessment of process models (contd..)
  • No detailed comparison of models.
  • Initial comparison of waterfall vs. evolutionary shows:
  • Flexibility needed to reduce risks
  • Waterfall may be useful as a reference structure for documentation
assessment of process models contd24
Assessment of process models (contd..)
  • In general, waterfall model is too rigid and should be replaced by a model that adopts some features of evolutionary approach.
  • Factors influencing evolution of software production process
software evolution legacy software
Software evolution: Legacy software
  • Existing software must evolve because requirements change
  • Re-engineering
  • Reverse engineering