Content
- Overview
- Main Enemies to Software Success
- Software Process
- Software Development Process Models
- Waterfall
- Software Development Process Models
Overview
Software Engineering is the process of solving customers' problems by the systematic development and evolution of large, high-quality software systems within cost, time and other constraints and in the context of constant change.
Main Enemies to Software Success
- Complexity
- During development process e.g. collaboration, communication
- Software itself
- Change
- Initial development long, client's needs changed
- After delivery
Software Process
A set of activities and the way those activities are structured to develop a software product.
- Objective
- Transform user's needs into software system
- General activities
- Management activities
- Technical activities
Software Development Process Models
- What to do next?
- For how long?
- Result produced?
Waterfall
- Lead to badly structured system
- Workarounds for prematurely frozen designs
- Inflexible
- Large volume of documents
- Repeated steps
- Commitment too early
- Mistake late shown
- User's cannot see a working program until late
- Works when:
- Requirements well understood
- Requirements unlikely to change
- Risks are low