What is Software Development Life Cycle ?
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 for the software. SDLC has goal to make high quality software which fulfill users requirement within cost estimates.
SDLC has some phases which has to be follow. Each phase produced deliverable and send to the next phase.
Software Development Life Cycle’s phases are
Requirement gathering and analysis
Planning
Design
Implementation or coding
Testing
Deployment
Maintenance
Requirement gathering and analysis In this phase companies BA (Business Analysts) will collect complete detailed requirement from 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.
Planning Test Planning is a Fundamental Test Process which defining the objective and goal of testing process. Using requirement specification, test plan make more detailed. It is continuous process and performed in all life cycles.
Design In 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 architecture of system. System architect create flow chart, UML diagram, ERD diagram, Use Case Modeling etc. The design phase deliver 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 divides into modules. This is the longer phase which took more time to complete as compare to others phases in software development life cycle.
Testing After developed the software, testing phase comes into the pictures, Tester which is performs the main role in testing phase. To test software they use Software requirement specification, they try to find out more defect which is possible within deadline. Tester performs unit testing, integration testing, system testing, acceptance testing in this phase to find out more defects.
Deployment After Developing and testing the software, deployment team deploy the software at client side. Deployment team have to set up all the environment & resources to work software at client side.
Maintenance 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 gives maintenance facilities for 1 year free after releasing the software.