A software life cycle model (SLCM) graphically describes how development activities will be performed by depicting the "sequence" of the activities. - generic process framework showing that the overall process consists of major phases, which consist of activities that produce deliverables.
The waterfall model is a sequential (non-iterative) design process, used in software development processes, in which progress is seen as flowing steadily downwards (like a waterfall) through the phases of conception, initiation, analysis, design, construction, testing, production/implementation and maintenance.
Every project starts with the requirement phase, during which all the requirements are collected, documented, and discussed with all the stakeholder.
During this phase the team creates a detailed design for the complete system as well as for each of the individual components. This is done at a level that developers can directly translate into code in the next phase. - Result: - Use Cases - UML - Flowcharts - other design documents
Translation of design documentation into code: - component by component or object by object - integration is done at the end of the coding phase or at the beginning of the test phase
Risks can be reduced by introducing different milestones. - Milestones should ideally be followed by a set of tests to verify that the functionality works correctly.
The goalis to identify bugs in the software before it is released.
Based on this list of features and functions, an overall test plan needs to be developed for the overall project. It should should contain all the different test phases for the project.
The support phase starts as soon as the solution is handed over to the customers or made available as a purchasable product.
The Project Management Triangle is a nice representation of the three main constraints in which a project usually finds itself.
A change in one of the three constraints has a direct impact on the other two. - The challenge for the project manager is to manage these three constraints without impacting the quality of the deliverable.
This standard provides a process for creating a software life cycle process (SLCP). - It is primarily directed at the process architect for a given software project.
Steps for evaluation and selection an SLCM: 1. Identify all the SLCMs that are available to the development project. 2. Identify the attributes that apply to the desired end system and the development environment. 3. Identify any constraints that might be imposed on the selection. 4. Evaluate the various SLCMs based on past experience and organizational capabilities. 5. Select the SLCM that will best satisfy the project attributes and constraints.
Result: Established SLCP.