Software Development Life Cycles
Analysis Stage: Stakeholders input product requirements
- Define problem & system requirements by:
- Analysing current problem-solving methods
- Considering data types & volume
Design Stage: New system aspects designed, including:
Inputs, Outputs, Security features, Hardware setup, User interface & Creation of a test plan
Development Stage:
- Use design to break project into modules
- Allocate modules to teams for programming
Testing Stage: Various types of testing conducted:
- Alpha testing: In-house, bug identification
- Beta testing: End-user feedback
- White box testing: All possible routes tested
- Black box testing: Input-output testing
Implementation Stage: Software installed after necessary testing
Evaluation Stage: Assess software effectiveness against defined requirements
- Consider criteria like robustness, reliability, portability, maintainability
Maintenance Stage: End-user feedback for errors/improvements
- Regular software updates for bug fixes, security, and improvements
Waterfall Lifecycle
Agile Methodologies
Extreme Programming
Spiral
Rapid Application Development (RAD)