The program life cycle typically includes the following: requirements analysis, design, coding, testing, installation & maintenance. In between, there can be a requirement to provide Operations & support activities for the product.
Requirements Analysis. Program organizations provide solutions to customer requirements by developing appropriate program that best suits their specifications. Thus, the life of program starts with origin of requirements. often, these requirements are vague, emergent & always subject to alter.
Analysis is performed to - To conduct in depth analysis of the proposed project, To evaluate for technical feasibility, To discover how to partition the process, To identify which areas of the requirements need to be elaborated from the customer, To identify the impact of changes to the requirements, To identify which requirements should be apportioned to which components.
Design & Specifications. The outcome of requirements analysis is the requirements specification. Using this, the overall design for the intended program is developed.
Coding. The development method tends to run iteratively through these phases than linearly; several models (spiral, waterfall etc.) have been proposed to report this method.
Activities in this phase - Perform Architectural Design for the program, Design Database (If applicable), Design User Interfaces, Select or Create Algorithms (If Applicable), Perform Detailed Design.
Testing. The method of using the developed process with the intent to find errors. Defects/flaws/bugs found at this stage will be sent back to the developer for a fix & must be re-tested. This phase is iterative as long as the bugs are fixed to meet the requirements.
Activities in this phase - Generate Check Information, Generate Source, Generate Object Code, Generate Operating Documentation, Plan Integration, Perform Integration.
Installation. The so developed & tested program will finally need to be installed at the client place. Careful planning has to be done to keep away from problems to the user after installation is done.
Activities in this phase - Plan Verification & Validation, Execute Verification & validation Tasks, Collect & Analyze Metric Information, Plan Testing, Create Check Requirements, Execute Tests.
Operation & Support. Support activities are usually performed by the organization that developed the program. Both the parties usually select on these activities before the process is developed.
Activities in this phase - Plan Installation, Distribution of Program, Installation of Program, Accept Program in Operational Environment.
Maintenance. The method does not stop one time it is implemented & installed at user place; this phase undertakes development of new features, enhancements etc.
Activities in this phase - Operate the Process, Provide Technical Assistance & Consulting, Maintain Support Request Log.
Activities in this phase - Reapplying Program Life Cycle.