A software development life cycle model is a descriptive and diagrammatic representation of the software life cycle. A life cycle model maps the different activities performed on a software product from its inception to retirement. These activities are described in different phases. Thus there are seven phases in SDLC.
(i)Feasibility Study: The main aim of this phase is to determine the financial and technical feasibility of the development. this phase analyzed the following :(a) An abstract problem definition: An abstract problem definition is a rough description of the problem wich considers only the important requirements and ignores the rest. (b) Formulation of different solution strategies. (c) Analysis of alternative solution strategies to compare their benefits and shortcoming.
(ii)Requirement Analysis and specification: The aim of the requirements analysis and specification phases is to understand the exact requirements of customer and to document them properly. This phase consist of two distinct activities, namely requirement gathering and analysis and requirement specifications.
(iii)Design: The goal of design phase is to transform the requirements specified in the SRS document in to the structure that is suitable for implementation in some programming language. In technical terms, during the design phase the software architecture is derived from the SRS document.Two distinct design approaches are available: the traditional design approach and the object oriented design approach.
(iv)Coding: The purpose of the coding phase is to translate the software design into source code. The source code many be any known to the programming team. the coding phase implements a program module for each component of design.
(v)Testing: Once the coding has been completed. Testing phase takes responsibilities to find out the bugs during coding phase and so on. during coding phase, unit testing is performed over each module and after then integration testing and system testing takes place.
(vi)Installation: Whenever a software engineering is coded is tested OK, then it is being installed for the consumer use. it is sometimes referred to as delivery of software product.
(vii) Maintenance: Maintenance of a typical software products requires much more effort than the effort necessary to develop the productitself. Maintenance effort is much roughly in the 40:60 ratio. Maintenance involves performing any or more of the following three kinds of activities:
(a) Corrective maintenance (b) Perceptive maintenance (c) Adaptive maintenance.