Software Development Life Cycle in Easy Words:

This is a very basic information that will help developers precisely for beginners to understand the software development process. There are thousands of books blogs available online offline to read and understand this process. I just thought to write it in simple and straight forward way to make it easy to understand.




Collecting Business Process requirements from stockholders and putting them in a document called Business Requirement Document (BRD). We will formulate the business requirements and map them to the available features of the platform on which you are going to develop. In this process we can list out these point as below,


 Functionality available out of the box or built-in:

These functionalities are readily available in platform which can be used to create functionality for the business requirement without any changes or customization.

Functionality need to be customized:

These functionalities are available in the platform but need to be changed or modified or customized according to our requirement.

Functionality need to be developed from scratch:

These are going to be new features and need to be developed from scratch.

Integration to third party or Legacy Systems:

These are dependent requirement. Either dependent on third party or dependent on different team. In this case required supporting development need to be done.

High Level Design Document:

It’s a diagram which depicts relation and interaction between different modules and systems. As the name suggests its at high level diagram showing complete system.

Low Level Design Document:

It’s a details diagram of all the modules, functionalities and systems. As the name suggest all the low-level details of the interactions are covered by this diagram.

Architecture Diagram:

It’s a complete diagram of the system which includes details of servers, database and any third parties involved.

Creating Test cases and Test Data:

In software development process testing is the crucial part. Testing efforts are more compared to development depending on how critical system it is. To verify the system functionalities, each functionality split into smaller scenarios. For each scenario tester creates a case which will be tested to see whether its meeting the expected requirement or not.
Sample data need to be setup to test the test cases for example to test a login functionality, Tester should have a Test account to login with username and password.

Release Notes:

Once the testing is passed the release team need to put down the release notes which basically contains functionalities, or the features developed by the development team in that release.

Following picture gives a better idea of the SDLC. Many iterations will go on to before development starts and in testing and bug fixing:


SDLC




Comments