What is Software Development Life Cycle (SDLC)
SDLC stands for Software Development Life Cycle also known as Application Development Life Cycle. This terms mostly used in Software Engineering. Using this life cycle process can make planning, designing, coding, testing & maintains the software. SDLC has a goal to make high-quality software which fulfills users requirement within cost estimates.
SDLC has some phases which have to follow. Each phase produced deliverable and send to the next phase.
Software Development Life Cycle’s phases are :
- Requirement gathering and analysis
- Implementation or coding
Requirement gathering and analysis
In this phase companies, BA (Business Analysts) will collect complete detailed requirement from the client. BA creates (BRS) Business requirement specification. Using BRS, Project Manager, Business Analysts, Stockholders and senior members create SRS (Software Requirement Specification). This Requirement Documents used to create Test Plan.
Test Planning is a Fundamental Test Process which defining the objective and goal of the testing process. Using requirement specification, test plan makes more detailed. It is a continuous process and performed in all life cycles.
In the design phase, using SRS (Software Requirement Specification) creates software’s architecture to develop error free software. System design help to specifying hardware and software requirement to improve the architecture of the system. System architect creates flow chart, UML diagram, ERD diagram, Use Case Modeling etc. The design phase delivers design documents to the next phase which is Implementation or coding phase.
Implementation or Coding
This is the main phase where actually software builds, using Design documents developers develop the software. The work is divided into modules. This is the longest phase which took more time to complete as compared to others phases in software development life cycle.
After developing the software, testing phase comes into the pictures, Tester which performs the main role in the testing phase. To test software they use Software requirement specification, they try to find out more defect which is possible within the deadline. Tester performs unit testing, integration testing, system testing, acceptance testing in this phase to find out more defects.
After Developing and testing the software, deployment team deploys the software at the client side. Deployment team has to set up all the environment & resources to work software at the client side.
This is the process which done after releasing the software. If any problem occurred in the software, so maintains team will resolve the problems regarding the software. Mostly the software companies give maintenance facilities for 1 year free after releasing the software.