Understanding the Software Development Life Cycle (SDLC)

Saransh GoyalSaransh Goyal
2 min read

Steps that it includes:

  1. Requirements Analysis

    What does the business, as a customer, want the software/application to look like and how should it work for the end users?

    How do they want the app to handle different business logics, how do they want the UI/UX, how do they want it to be accessed, and what is their budget for the product?

    All these are very important for the software development team to understand first.

    The requirements are collected using questionnaires, surveys, forms, interviews, and more. After that, the requirements are studied for feasibility.

  2. System Design

    This stage fills the gap between the requirements list and the actual implementation phase to make the software.

    In this stage, the requirements analysis is translated into the technical design at a higher level, such as which architecture to use, what algorithms to use, what subsystems to create, communication b/w the subsystems, the database structures, cost optimizations, designing the user interface components and more such steps.

  3. Implementation / Coding

    The main objective is to convert the system design into a code and working software.

    It involves integration with other services to make the application as expected.

    The code is tested for multiple test cases making sure of the performance.

  4. Testing Stage

    The software in this stage is subjected to multiple predesigned test cases to ensure performance.

    It involves testing the individual modules or subsystems, testing the interactions of different subsystems, testing the entire system as a whole, and final testing done by some end users and stakeholders to ensure the software works as expected.

  5. Deployment Stage

    The software that is ready and tested is now deployed on the server infrastructure to be served to the end users.

    This involves scheduling the deployment, preparing the production environment, doing the configurations, and a final check in the production environment to see the software functioning.

    Preparing the documentations related to the deployment and user manuals for the end users.

  6. Maintenance Stage

    The main objective of the Maintenance stage is to ensure that the software continues to function correctly, address any issues that arise, and evolve to meet changing user needs and environments.

    Continuously monitor and log the software to address reported issues. Version control is also a part of this stage, where the different versions of the software are maintained in a repository.

  7. Evaluation Stage

    In this stage, the complete development process is analyzed, checked for any possible improvements, feedback is provided to the earlier phases of the SDLC, and the process and improvements are documented.

These are the major stages of an SDLC in general.

0
Subscribe to my newsletter

Read articles from Saransh Goyal directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Saransh Goyal
Saransh Goyal