SDLC

 

Software Development Life Cycle (SDLC) 

There are six phases in software development life cycle

1.       Initial (or) Requirements phase

2.       Analysis phase

3.       Design phase

4.       Coding phase

5.       Testing phase

6.       Delivery and Maintenance phase

1. Initial (or) Requirement phase:
Tasks: Interacting with customer and gathering the requirements.
 
Roles: Business analyst –BA, Engagement manager - EM
 
Process:
  •  First of all business analyst will take an appointment from the customer, collect the template from the company and meet the customer on appointed date, gather the requirements with the support of that template and comes back to the company with the requirement document.
  •   The engagement manager go through the requirements, if he find any extra requirements then he will deal with excess cost of the project.
  •  If at all he finds any confused requirements, then he will ask the concern team to build a prototype, demonstrate that prototype to the customer, gather’s the clear requirements and finally hand over the required documents to the BA

 

Proof: The proof document of Initial phase is Requirement’s Document (RD). 
 
These documents are called different Names in different companies:
  • FRS: Functional Requirement Specifications
  • CRS: Customer (or)Client Requirement Specifications
  • URS: User Requirement Specifications
  • BRS: Business Requirement Specifications
  • BDD: Business Design Document
  • BD: Business Document
Some companies will maintain two documents. One is for overall business flow information and second is detailed functional information, but some companies will maintain both this information’s in a single document. 
 
Template: Template is pre-defined format, which is used for preparing a document very easily and perfectly.

Prototype: Prototype is a roughly and rapidly developed model which is used for demonstrating to the client in order to gather clear requirements and also to build the confidence of a customer.

Ex: Power Point slide show.

2. ANALYSIS PHASE: 
 

Tasks:

Ø  Feasibility study

Ø  Tentative planning

Ø  Technology selection and Environment confirmation

Ø  Requirement analysis

Roles: System Analyst SA, Project Manager PM, Technical Manager - TM

Process:

a.      Feasibility study:

It is detailed study conducted on the requirement documents, in order to confirm whether the given requirements are possible within the given budget, time and available resources or not.

b.   Tentative planning:

In this section resource planning and time planning will be temporarily done.

c.    Technology selection & Environment confirmation:

The list of all technologies required for accomplishing the project successfully will be analyzed, the environment suitable for that project will be selected and mentioned here in this section.

d.    Requirement analysis:

The list of all the requirements that are required by the company to accomplish this project successfully will be analyzed and listed out clearly in this section.

Note: Requirements may be Human Resources, Software’s, and Hardware’s.

Proof: The proof document of the Analysis phase is System Requirements Specifications (SRS).

 

3. DESIGN PHASE:

 

Tasks:

Ø  High level designing

Ø  Low level designing

Roles:

Ø  High level design is done by chief Architect(CA)

Ø  Low level design is done by Technical Lead(TL)

Process:

Ø  The chief architect will divide the whole project in to modules by drawing some diagrams using unified modeling language (UML).

Ø  The Team lead will divide the modules into sub modules by drawing some diagrams using the same UML.

Ø  In this phase they will also design GUI part of the application, as well as PSEUDO CODE also developed

Proof: The proof document of this phase is Technical Design Document (TDD).

LLD: Low Level Diagram

 Ex: DFD-Data Flow Diagram, E-R Diagram, Class Diagram, Object Diagram.

PSEUDO CODE: PSEUDO Code is a set of English instructions, which will make the developer’s more comfortable, while developing the actual source code.

 

4. CODING PHASE (WHITE BOX TESTING):
 

Tasks: Programming (or) Coding

Roles: Programmers (or) Developers

Process: The developers will develop the actual source code by following the coding standards and also with the support of Technical Design Document.


Example’s for Coding standards:

Ø  Proper Indentation (left margin)

Ø  Color codling’s

Ø  Proper Commenting

Proof: Proof document of the Coding phase is Source Code Document (SCD).

 

5. TESTING PHASE (BLACK BOX TESTING):

Tasks: Testing

Roles: Test Engineer’s.

Process:

Ø  The Testing department will receive the requirement document and the test engineers will start understanding the requirements.

Ø  While understanding the requirements, if they get any doubts they will list out all the doubts in Requirement clarification Note and sent it to the author of the requirement document and wait for the clarification.

Ø  Once the clarification is given and after understanding all the requirements clearly they will take the test case template and write the Test cases.

Ø  Once the first build is released they will execute the test cases.

Ø  If at all any defects are found they will list out all the defects in the defects profile and send it to the development department and will wait for the next build.

Ø  Once the next build is released they will re execute the required test cases.

Ø  If at all any more defects are found they will update the defect profile. Send it to development department and will wait for the next build.

Ø  This Process continuous till the product is defect free.

Proof: The proof of Testing phase is Quality product.

BUILD: A finally intigrated all modules set .EXE form is called Build.

TEST CASES: Implementing the creative Ideas of the Test Engineer on the application for testing, with the help of requirement document is known as TEST CASES.

 

6. DELIVERY AND MAINTENANCE PHASE:

Delivery:

Tasks: Hand over the Application to the client

Roles: Deployment engineers (or) Installation engineers.

Process: The Deployment engineers will go to the customers place, install the application in to the customers environment and handover the original software to the client.

Proof: The final official agreement made between the customer and company is proof document for Delivery.

Maintenance:

Once the application is delivered. The customer will start using it, while using if at all they face any problems then that particular problem will be created as tasks. Based on the tasks corresponding roles will be appointed. They will define the process and solves the problem .This process is known as Normal Maintenance. But some customers may request for continuous Maintenance, in that case a team of members will be continuously working in the client site in order to take care of their Software.

 

 

Mithun Kumar

I am Mithun Kumar, a freelance and working software professional. I have around 6 years of experience in software Quality Assurance in Manual and Automation with Various tools and Technology. I am always learning new technologies and find myself up to date with the latest software technologies.

Post a Comment

Thanks! for you valuable comment.

Previous Post Next Post