Tuesday, October 12, 2010

SDLC Concepts

SDLC (Software Development Life Cycle) :

It contains 6 phases.
* INITIAL PHASE / REQUIREMENT PHASE.
* ANALYSIS PHASE.
* DESIGN PHASE.
* CODING PHASE.
* TESTING PHASE.
* DELIVERY AND MAINTENANCE PHASE.

Initial Phase :
Task:
Interacting with the customer and gathering the requirements.
Roles:
BA (Business Annalist)
EM (Engagement Manager)
Process:
First of all the business analyst will take an appointment from the customer, collects the templates from the company meets the customer on the appointed date gathers the requirements with the support of the templates and comeback to the company with a requirements documents. Then the engagement manager will check for the extra requirements if at all he fined any extra requirements he is responsible for the excess cast of the project. The engagement manager is also responsible for prototype demonstration in case of confused requirements.

Template:
It is defined as a pre-defined format with pre-defined fields used for preparing a document perfectly.

Prototype:
It is a rough and rapidly developed model used for demonstrating to the client in order to gather clear requirements and to win the confidence of a customer.

Proof:
The proof of this phase is requirements document which is also called with the following name
FRS - (Functional Requirement Specification)
BRS - (Business Requirement Specification)
CRS - (Client/Customer Requirement Specification)
URS - (User Requirement Specification)
BDD - (Business Design Document)
BD - (Business Document)

Note: Some company’s may the over all information in one document called as ‘BRS’ and the detailed information in other document called ‘FRS’. But most of the company’s will maintain both of information in a single document.

Analysis Phase :
Task:
Feasibility study.
Tentative planning.
Technology selection.
Requirement Analysis.

Roles:
System Analyst (SA)
Project Manager (PM)
Team Manager (TM)
Process:
(I) Feasibility study It is detailed study of the requirements in order to check whether all the requirements are possible are not.
(II) Tentative planning the resource planning and time planning is temporary done in this section.
(III) Technology selection the lists of all the technologies that are to be used to accomplish the project successfully will be analyzed listed out hear in this section.
(IV) Requirement analysis
The list of all the requirements like human resources, hardware, software required to accomplish this project successfully will be clearly analyzed and listed out hear in this section.

Proof:
The proof of this phase is SRC (Software Requirement Specification).

Design phase :
Tasks:
HLD (High Level Designing)
LLD (Low Level Designing)

Roles:
HLD is done by the CA (Chief Architect).
LLD is done by the TL (Technical Lead).

Process :
The chief architect will divided the whole project into modules by drawing some diagrams and technical lead will divided each module into sub modules by drawing some diagrams using UML (Unified Modeling Language).
The technical lead will also prepare the PSEUDO Code.

Proof:
The proof of this phase is technical design document (TDD).

Pseudo Code:
It is a set of English instructions used for guiding the developer to develop the actual code easily.

Module:
Module is defined as a group of related functionalities to perform a major task.

Coding Phase :
Task:
Programming / Coding.
Roles:
Developers / Programmers.
Process:
Developers will develop the actual source code by using the PSUEDO Code and following the coding standards like proper indentation, color-coding, proper commenting and etc.

Proof :
The proof of this phase is SCD (Source Code Document).

Testing Phase :
Task:
Testing.
Roles:
Test Engineer.
Process:
1. First of all the Test Engineer will receive the requirement documents and review it for under studying the requirements.

2. If at all they get any doubts while understanding the requirements they will prepare the Review Report (RR) with all the list of doubts.

3. Once the clarifications are given and after understanding the requirements clearly they will take the test case template and write the test cases.

4. Once the build is released they will execute the test cases.

5. After executions if at all find any defects then they will list out them in a defect profile document.

6. Then they will send defect profile to the developers and wait for the next build.

7. Once the next build is released they will once again execute the test cases

8. If they find any defects they will follow the above procedure again and again till the product is defect free.

9. Once they feel product is defect free they will stop the process.

Proof:
The proof of this phase is Quality Product.
Test case:
Test case is an idea of a Test Engineer based on the requirement to test a particular feature.

Delivery and Maintenance phase :
Delivery:
Task:
Installing application in the client environment.
Roles:
Senior Test Engineers / Deployment Engineer.
Process:
The senior test engineers are deployment engineer will go to the client place and install the application into the client environment with the help of guidelines provided in the deployment document.

Maintenance:
After the delivery if at all any problem occur then that will become a task based on the problem the corresponding roll will be appointed. Based on the problem role will define the process and solve the problem.


Additional Info:
Where exactly testing comes in to picture?
Which many sort of testing are there?

There are two sorts of testing.
1. Unconventional testing
2. Conventional testing

Unconventional Testing:
It is a sort of testing in which quality assurance people will check each and every out come document right from the initial phase of the SDLC.

Conventional Testing:
It is a sort of testing in which the test engineer will test the application in the testing phase of SDLC.

No comments:

Post a Comment

 

©2010 Software Testing powered by Free Blogger Templates | Author : Anand Satish