What is SDLC?

SDLC stands for software development life cycle.  It consists of different stages from planning to production. Business follows this cycle to develop their applications.

Previously, when I was working in banking industry, we used waterfall methodology to carry out the projects. If our customer added a new feature to the product, it would go through different stages as seen in the diagram.  

The stakeholders came together to define the scopes and requirements. For example, the customer requested to add the stock margin feature in the existing system.  Project managers or stakeholder would have a resource plan to estimate the budget as well as accessing the product risks. It needed approval from sponsors.

For large corporate companies, they would select user representatives  to define the user requirements. They then design the test scenarios, test cases, test suits, and conduct the user acceptance testing.

The IT manager would write the technical specifications based on the functional specifications and the developers would build the code etc. Test specialists would conduct internal testing to find out the bugs and developers then fix them in the testing environment. Different types of testing such as integration testing, regression testing, performance testing would be carried out.  I recalled when I was working as a QA specialist in a software company, we worked closely with developers as we would want the fixes to be solved within the same day.  The rapport was so strong and every team member was willing to stay behind to resolve all the bugs.  Tough but success with great job satisfaction.

Once all the testing were completed and the applications moved from testing to production environment. There are always so many challenges when the products are not well tested and I recalled so many production ad hoc fixes and you always need to find a proper way to explain to the customers. Therefore step 6 could be very challenging at the beginning if companies need to launch the products within a unreasonable time. 

Agile approach is more popular nowadays compare to waterfall methodology. It could improve the development timeline in a much shorter period.












Diagram  from https://www.intellectsoft.net/blog/essentials-software-development-life-cycle/

Comments