It has 6 phases:
1. Initial phase
2. Analysis phase
3. Design phase
4. Coding phase
5. Testing phase
6. Delivery and Maintenance
1. Initial phase:
Task: Interacting with the customer and gathering the requirements.
Roles: BA (Business Annalist)
EM (Engagement Manager)
Process:
Business Annalist
Gathering the requirements is the main task. First of all, the business analyst will take an appointment from the customer, collect 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
Engagement Manager
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.
Documents Prepared in this phase:
BRS - (Business Requirement Specification)
constitute a specification of simply what the business wants. This is usually expressed in terms of broad outcomes the business requires, rather than specific functions the system may perform. Specific design elements are usually outside the scope of this document, although design standards may be referenced.
FRS - (Functional Requirement Specification)
CRS - (Client/Customer Requirement Specification)
URS - (User Requirement Specification)
BDD - (Business Design Document)
2. Analysis phase:
Task: Feasibility study
Tentative planning
Technology selection
Requirement analysis
Roles: System Annalist (SA)
Project Manager (PM)
Team Manager (TM)
Process:
Feasibility study: It is detailed study of the requirements in order to check whether all the requirements are possible are not.
Tentative planning: The resource planning and time planning is temporary done in this section.
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.
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.
Document prepared in this phase:
SRS: (Software requirement specifications)
3. 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.
Documents prepared in this phase:
TDD: (Technical design document)
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.
4. 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…
Documents prepared in this phase:
SCD (Source Code Document)
5. Testing phase:
Task : Testing.
Roles: Test Engineer.
Process:
First of all the Test Engineer will receive the requirement documents and review it
for under studying the requirements.
If at all they get any doubts while understanding the requirements they will
prepare the Review Report (RR) with all the list of doubts.
Once the clarifications are given and after understanding the requirements clearly
they will take the test case template and write the test cases.
Once the build is released they will execute the test cases.
After executions if at all find any defects then they will list out them in a
defect profile document.
Then they will send defect profile to the developers and wait for the next build.
Once the next build is released they will once again execute the test cases
If they find any defects they will follow the above procedure again and
again till the product is defect free.
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.
6. Delivery and Maintenance:
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.