Thursday, January 15, 2009

IN General - SDLC (Software Development Life Cycle)

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 analist will take an appointment from the customer, collects the templates from the company meats 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 A\analysis.

Roles System Annalist (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

q First of all the Test Engineer will receive the requirement documents and review it for under studying the requirements.

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

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

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

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

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

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

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

q 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.

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

There are two sorts of testing.
1. Un conventional testing
2. Conventional testing
Un conventional 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.
------------------------------------------------------
Also by simple explain
------------------------------------------------------
There are six main stages of SDLC.

1. Requirement
In this phase a techno team takes a requirements form a customer by meeting, what they actually want or what they need in their product.

2. Analysis
In this requirements are converted into documents and covers all the customer requirements called FRS (functional requirement specifications), Finally it will
approved by head or any senior persons of the customer side, After approval the requirements are nail down and the developing process is start right from there.

3. Design
In this phase the design of the product is prepared i.e. all the requirements are converted into the architecture design.(SRS : Software requirement specification is
prepared) .

This phase includes
* LLD - Low Level Design Documentation:
This level deals with lower level modules. The flow of diagram handled here is data Flow Diagram. Developers handle this Level.

* HLD - High Level Design Documentation: This level deals with higher-level modules. The flow of diagram handled here is ER - Entity Relationship. Both

Developers and Testers handle this Level.

4. Coding
In this phase all the requirements of the customer are converted into the code form.

5. Testing
In this phase the software under development is tested for quality of the product, that the product we are builting is error free or a quality product.

This phase includes 2 types of Testing:
i. Static Testing: Testing each and every phase completely is called as Static testing. It is also called as Reviews.
ii. Dynamic Testing: Testing after the completion of the entire project.

6. Maintance:
In this phase the Maintance of the product is carried out .

No comments:

Post a Comment