Software Development Life Cycle - Part II

Software Development Life Cycle - Part II

A Deep dive into the SDLC process

Table of contents

In the previous blog about SDLC, we understood the processes and DevOp's role in it. Here, let's have a deep dive into the processes.

The Definition.

  • It is a standard followed by every organization, maybe an MNC, startup, etc.

  • Process/Culture used by the software industry to Design, Develop, and test to Deliver a High-Quality Product.

The SDLC.

In SDLC, we have the following phases. To understand the following processes let's imagine a company, CodeX, which develops an E-commerce site.

  1. Planning - The planning phase is generally accompanied by the requirement phase, which is an essential stage.
  • For example, the CodeX team is trying to add a kids section, but customers don't want that, so feedback is not required. So you can suspend the idea at the primary stage itself.

  • Or the company wants to know the age range of kids 6-12, 12-14, etc this comes under the planning & requirement phase

  1. Defining - In the defining phase, the team will define the requirements, with the information acquired by the planning and requirement phase. They produce a Software Requirement Document based on customer research.

    • For example, X no of customers encourage age range of 6-12, etc,
  2. Designing - In the designing phase, the team will build

    • High-level Design: This ensures the sustainability or scalability of the website when required. for example, handling high-traffic visits to the website in the festive season.

    • Low-Level Design: The functions, modules, etc, are proposed and generally decided by the Senior Engineers.

In the following phases involvement of the DevOps engineer is more crucial

  1. Building - Here, the code is developed for the feature/app.

    • developers write the code with instructions specified in the requirement document.

    • after writing the code, the developer team will push it to a common location ( GitHub ), where PR members will review it.

  2. Testing - The app is tested here and promoted further for the production servers.

    • A team called the Quality Assurance Engineers team takes care of testing it.
  3. Promotion - The application is promoted to the production server.

    • In the testing phase, we deploy the app on a virtual server as pre-staging environment, etc.

    • production server is where customers will interact with the application.

DevOps Engineer fastens the process, ensuring all the phases are followed without any manual intervention and ensuring automation, improving efficiency.

All the processes in SDLC can be done in different ways.

  • for example, in Project Management, we use the Waterfall Model, the Agile Model.

Did you find this article valuable?

Support Sai Prajoth by becoming a sponsor. Any amount is appreciated!