Software Waterfall Life Cycle Requirements Construction Design Testing Delivery and Installation...

7
Software Waterfall Life Cycle Requirements Construction Design Testing Delivery and Installation Operations and Maintenance Concept Exploration Prototype

Transcript of Software Waterfall Life Cycle Requirements Construction Design Testing Delivery and Installation...

Page 1: Software Waterfall Life Cycle Requirements Construction Design Testing Delivery and Installation Operations and Maintenance Concept Exploration Prototype.

Software Waterfall Life Cycle

Requirements

Construction

Design

Testing

Delivery and Installation

Operations and Maintenance

Concept Exploration

Prototype

Page 2: Software Waterfall Life Cycle Requirements Construction Design Testing Delivery and Installation Operations and Maintenance Concept Exploration Prototype.

Spiral Model

Page 3: Software Waterfall Life Cycle Requirements Construction Design Testing Delivery and Installation Operations and Maintenance Concept Exploration Prototype.

www.extremeprogramming.org

Page 4: Software Waterfall Life Cycle Requirements Construction Design Testing Delivery and Installation Operations and Maintenance Concept Exploration Prototype.

Software Construction

From SWEBOK 2004

Page 5: Software Waterfall Life Cycle Requirements Construction Design Testing Delivery and Installation Operations and Maintenance Concept Exploration Prototype.

Software Construction

• Goal is to– Minimize complexity

• Use standards• Abstraction, low coupling, high cohesion• Encapsulation, information hiding• Separation of interface from implementation

– Anticipate change• No literal values in code (control access to data)• Incremental development

– Facilitate testing• Code reviews, unit testing, automated testing

Page 6: Software Waterfall Life Cycle Requirements Construction Design Testing Delivery and Installation Operations and Maintenance Concept Exploration Prototype.

Code Completehttp://www.cc2e.com/

• Key Decisions– Choice of programming language– Programming conventions– Your location on the technology wave– Selection of major construction practices

• Version control tool and integration procedure• IDE and tool set• Pair programming versus individually• Test-driven development versus traditional• Unit testing tool• Formal reviews

Page 7: Software Waterfall Life Cycle Requirements Construction Design Testing Delivery and Installation Operations and Maintenance Concept Exploration Prototype.

Construction Measurement

• Measuring progress– Number of classes finished, LOC, test cases– Number of requirements implemented– Code metrics

• Complexity measures

– Code inspections– Errors detected and fixed