What is SDLC ??

Samadhi Jayawardena
Dev Genius
Published in
3 min readJun 15, 2020

--

Photo by Marvin Meyer on Unsplash

SDLC is the acronym for Software Development Life Cycle. This is also known as the Software Development Process. Now you might wonder what is this Software Development Life Cycle. Simply we can say that the software development life cycle is a process or a methodology which is used to design, develop, and test high-quality software. This process aims to meet customer expectations within the allocated time and budget. The Software Development Life Cycle has several stages. Okay, guys, let’s dive into the SDLC stages one by one.

Screenshot by author

Stage 1: Requirement analysis

Requirement analysis is the most important and the first stage in the SDLC. Why I said that this is the most important stage is because if we do not identify the requirements of the customer correctly then the whole process is going to be a mess and in the end, the customer will be very disappointed. Trust me guys it is going to be a huge problem in the future if we don’t understand the requirements properly. In this stage, we collect information like who is going to use this system, what data should be included, what are the expectations of the customer, etc. After collecting all the information then the development team analyzes these requirements. Finally, a requirement specification document is created using the information gathered in this stage. If we do not recognize the requirements correctly it affects the whole process afterward.

Stage 2: Design

Designing is the second stage of SDLC. In this stage based on the requirement specification document, the design is prepared to meet the customer requirements. In this stage risks, technologies, project constraints, time budget are reviewed by discussing those things with the customer and then the designers design the best design. After all these things the design will be kept in a document called Design Specification Document.

Stage 3: Implementation

Implementation is the third stage in SDLC. This is the stage where developers start coding after analyzing the requirement specification document and design specification document. If those mentioned documents are very accurate and detailed properly then it makes the life of the developers much easier. In this phase programming languages like C, C++, Python, Java are being used by the developers. But the language will vary according to the software being developed.

You might feel quite tired. Hang on tight guys, just 4 more stages to go….

Stage 4: Testing

In this phase, the software is being tested before delivering it to the customer. The experienced testers test the software against the requirements. This phase aims to find whether there are defects, bugs (not that bug in your house..) and whether the system works according to the expectations. So if there are any defects reported those defects are being reported, tracked, fixed, and retested to make the product reach the quality standards.

Stage 5: Deployment

After testing the product to see whether all the requirements met and high-quality standards, then the product is delivered to the market or the customer.

Stage 6: Maintenance

Well, well, now we are at the last stage of the SDLC. After releasing the product if any error or issue encounters, then the development team is there to take care of those things and maintain the software.

Mmmm that was quite a lot of information right. But these things are really important when you are developing software. So I think now you have a bit of understanding about what is this software development life cycle, right?

There are different SDLC models also and those are referred to as Software Development Process Models. Some popular models in the industry are.

· Waterfall model

· Spiral model

· Agile model

I will not talk about these models in this article. But I will talk about each of these models in future articles. So stay tuned guys.

If you enjoyed this article, please share it with your friends. Thanks for Reading !

--

--