130 likes | 146 Views
Explore the Waterfall Life-Cycle model, its phases from requirements to maintenance, and its role in software processes. Learn the interactions, challenges, and alternatives in software engineering. Dive into the ancestor of all models!
E N D
SOFTWARE LIFE-CYCLES The Waterfall Model ----- A Case Study
Software process / Life-Cycle? • A project is a set of activities, interactions and results ... • A “life-cycle” or a software process is the organizational framework for a project.
The Waterfall Life-Cycle • is the ancestor of all other models • still prevalent in practical application • exists in many variations • supported by a multitude of tools • no at all a perfect solution
Requirements The WATERFALL MODEL System Design Detailed Design Implementation Installation & Testing • set of activities: sequential phases
Requirements The WATERFALL MODEL System Design Detailed Design Implementation Installation & Testing • transformation of results includes verification
Requirements The WATERFALL MODEL System Design Detailed Design Implementation Installation & Testing • completeness • of activities: Maintenance
Requirements The WATERFALL LIFE-CYCLE: interactions System Design Detailed Design Implementation Installation & Testing Maintenance
Cost Ratio of Errors Requirements : Maintenance = 1 : 200
Activities during Phases • Requirements: establish your customer’s needs • System Design: develop the system’s structure • Detailed Design: develop module structures • Implementation: write source-code • Testing: check what you have developed • Installation: bring the system into production • Maintenance: correct, adapt, improve
Results of Phases • Requirements: software requirements specification • System Design: software design chart; interfaces • Detailed Design: module specifications • Implementation: programs, files, etc... • Testing: test suits and test results • Installation: run-time version of the system • Maintenance: new version or release of the system ==> Documents
Discussion Questions • What is Software Engineering? • Software Engineering vs. System engineering • What are the attributes of a good software? • What are the key challenges facing software engineering today?
Alternative Life-Cycles • Phases remain similar • Results remain similar • INTERACTION changes
End of Section 1a coming up: more about life-cycles ...