What is SDLC process?
Software Development Life cycle is the guideline defining task performed at the each stage of software development process.SDLC aims to develop a high quality application/system which will meet or exceeds the customer expectation.
SDLC is the process followed by development team throughout the stage. The SDLC consist of phases such as below:
· Requirement gathering
Requirement Gathering Phase
This process of generating a list of functional, system and technical requirement for an application from various stakeholders. Business analyst usually goes through this requirement elicitation process.
There are different methods to gather requirement, the few are listed below
· User observations
· User stories
· Prototyping/Mock ups
Once requirement are gathered then designing the solution is next phase
Design the Solution
In this phase, system and software design is prepared from the requirement specification. System design helps in hardware and system requirements. This also defines overall system architecture. In this stage, test strategy comes into the picture which defines what to test and how to test.
On receiving the system design specs, the work is break down into module/units. The coding is done during this phase. This is the longest phase of SDLC process.
Once coding is done, it is being tested against the specification raised during the requirement gathering phase. If any discrepancies were found during testing, then these will be raised as defects with development team. Once all major defects are fixed and risk of failure is minimal then system can deployed for production.
After successful testing the product deployed to the customer. As soon as the product is given to the customers they will first do the beta testing. If any changes are required or if any defects are found, and then they will report it to the engineering team. Once those changes are made or the defects are fixed then the final deployment will happen.
Once the system is in production, if some problem arises which need to be fixed time to time. This process where care is taken for developed system is called Maintenance.