Software Development Life Cycle is a systematic approach to develop software. It creates a structure for the developer to design, create and deliver high-quality software according to the requirements of customer or end user. It also provides a methodology for improving the quality of the desired product. The purpose of SDLC process is to provide help in producing a product that is cost effective and of high quality.
Different Stages of Software Development Life Cycle
Stage 1: Planning of Project:
This includes making reasonable estimates of the cost and size of the software product as compared to the resources at hand.
Stage 2: Analysis & Requirement Gathering
This step includes collecting maximum information from the client about the desired product. All details and specifications of the product must be discussed with the customer. The development team analyses the requirements keeping in view the design and coding of the software. The requirements so gathered are then analyzed for their validity and possibility of incorporating them into the software system. The aim of requirement analysis is to capture the detail of each requirement so that everyone understands how each requirement is to be worked.
Stage 3: Design
In this phase, program developer analyses whether software can be prepared to fulfill all the requirements of the end user. Also, he checks that the project is financial, practically and technologically feasible for the customer. After that best design approach is selected for the product. The developer selects the programming language like Java, Oracle etc. which will be best suited for the software. It is also like the engineering representation of the product to be built.
Stage 4: Development or Implementation
It means translating the design into a computer-readable language. The development team does the actual coding based on designed software and writes unit tests for each component to test the new codes written by them. The developer may show the work done to the business analysts and the modification or enhancements may be required. This is the longest phase of SDLC.
Stage 5: Testing
This is the last phase of SDLC before the software is delivered to the customer. The job of the test team is to test the system against the requirements. The aim of the tester is to find out the gaps or defects within the system and also to verify that the software works as expected according to the requirements. It includes Unit testing, Integration testing, and System testing.
Stage 6: Deployment
Once the Product is tested and ready to deploy, it is released to consumers to use. The size of the project will determine the complexity of the deployment if required. The users can be trained on, or aided with the documentation on how to operate the software. A small round of testing is also performed on production to make sure of any environmental issues and any impact of the new release.
Stage 7: Maintenance
When the customers start using the developed system, the actual problems comes up and needs to be solved from time to time. This process where the care is taken for the developed product is known as Maintenance. The software is maintained timely by updating the code according to the changes taking place in user end environment or technology.