There are 6 Basic Phases of Software Development Life Cycle (SDLC):
1. Requirement Gathering and Analysis: Requirement gathering and analysis is the first stage of any SDLC model. This phase is basically the brainstorming phase and often consists of sub-stages like Feasibility Analysis to check how much of the idea can be put into action.
2. System Analysis: This is the second phase of SDLC where the entire system is defined in detail. In fact, it this stage wherein a detailed blueprint of various processes of the software is developed. If needed the system is divided into smaller parts to make it easier more manageable for the developers, designers, testers, project managers and other professionals who are going to work on the software in the latter stages.
3. System Design: In this phase, the physical system is designed with the help of the logical design prepared by system analysts. The analysts and designers work together and use certain tools and software to create the overall system design, including the probable output.
4. Coding: As the name implies, in this stage the software is coded with precision. A team of programmers are assigned by the company to work on the software. More often than not, the work is sub-divided under a sub-phase called Task Allocation, where each developer is assigned a part of the work depending on his or her skill set(s). This helps complete the coding efficiently.
5. Testing: When the software is ready, it is sent to the testing department where Quality Analysts test it thoroughly for different errors by forming various test cases. They either test the software manually or using automated testing tools and ensure that each and every component of the software works fine. Once the QA makes sure that the software is error-free, it goes to the next stage, which is Implementation.
6. Implementation: This is the final stage of software development life cycle. In this stage, if the software is run on various systems by users. If it runs smoothly on these systems without any flaw, then it is considered ready to be launched.