Software
Development Life Cycle (SDLC):
For developing the Software project, Software Companies will follow the process. That process is also known as Software Development Life Cycle (SDLC). In this process we have 6 Basic phases. We have numerous types of SDLC models (Waterfall Model, Verification and Validation Model, Spiral Model, Agile Model etc.). Based on the Requirement we can choose which is suitable (In future we will discuss about these modules). 6 basic phases are
Following is
a Diagrammatic Representation of Different phases of Software Development Life
Cycle (SDLC).
For developing the Software project, Software Companies will follow the process. That process is also known as Software Development Life Cycle (SDLC). In this process we have 6 Basic phases. We have numerous types of SDLC models (Waterfall Model, Verification and Validation Model, Spiral Model, Agile Model etc.). Based on the Requirement we can choose which is suitable (In future we will discuss about these modules). 6 basic phases are
1.
Requirement Analysis
2.
Design
3.
Coding
4.
Testing
5.
Implementation
6.
Maintenance
Now we will
discuss each and every phase
1)
Requirement Analysis: In Requirement Analysis
phase
Business
Analysts will collect all the information form the client, based on that
information B A (Business Analysis) team will prepare BRS (Business Requirement
Specification) document.
After
getting BRS (Business Requirement Specification) document form B A (Business
Analysis) team Project Manager (PM) will analyse what are the possibilities to
develop the project and what is the estimation of the project (Man Power).
Which technology we have to use to develop the project, these things Project
Manager (PM) will analyse.
2)
Design : In Designing phase the designing the
design will be two levels
a)
High Level Design
b)
Low Level Design
a)
High Level Design: In High Level Design,
technical team will Design the entire Architecture of the Project. We having
different types of Architectures(I –tire,2-tier,3-tiere,n-tire)
I) 1- tier Architecture: In 1- tier Architecture 3 layers (Presentation
Layer (PL), Business Layer (BL), and Data Access Layer) will be in one machine.
In simple way it is the equivalent of running an application on a personal
computer.
II) 2- tier Architecture: In 2- tier Architecture 3 layers (Presentation
Layer (PL), Business Layer (BL), and Data Access Layer) will be in two machines.
In one machines Presentation Layer will be in one layer and in second layer
will be in your Business Layer (BL) and Data Access Layer)
III)
3- tier Architecture: In 3- tier Architecture 3 layers (Presentation Layer (PL),
Business Layer (BL), and Data Access Layer) will be in three different machines.
In simple way in every Way 3 layers will in three different machines.
IV)
n- tier Architecture: In n- tier Architecture 3 layers (Presentation Layer (PL),
Business Layer (BL), and Data Access Layer) will be in different machines. Nowadays
number of projects is developing in n-tier Architecture only. If we develop the project in n- tier
Architecture we have some advantage. Sometimes websites will be get more traffic
at that time presentation layer request to the another servers to get requested
data.
b)
Low Level Design: In Low Level Designing phase, Designing team
will design component level of the project. Designing team will design the
application which is seen by user.
3)
Coding: In Coding phase Development team will write
Code for that project.
4)
Testing: In testing phase once development
finished the build testing team will take that build to do Smoke Testing. Based
on the result testing will accept or reject the build. i.e. Means testing team will do very basic
testing.
For Example: Development team build login page,
then testing team will try to login with some basic credentials we (testing
team) are able to redirect the home page
then we will accept that build and dig for errors. If we are not able to redirect
to the home page we should reject that build.
Once Testing team will accept the
build, testing team will fallow one process to test the application. It is also known as Software Testing Life
Cycle (STLC).
In Software testing life testing we
having different phases like
a)
Test Planning
b)
Test Design
c)
Test Execution
d)
Result Analysis
e)
Defect Tracking
f)
Maintenance
a)
Test Planning: In this phase Test Lead (T L) will prepare master test
plan with some objectives. Like
I.
Test Strategies
II.
Scope
III.
Activities
IV.
Deliverables
V.
Depends
VI.
Risks
VII.
Exit and Entry
b) Test Case Design: In this phase testing team
will write the test cases based up on the Requirements. Some Organizations will write test cases in
QC, some Organizations will write test cases in Excel Sheet.
c) Test
Execution: In Test Execution phase testing team will execute the test cases
based up on the Requirement Documents.
d) Result
Analyses: In this phase after completion of test execution testing team will
analyse the result. If Expected Result and Actual Result both are same then we
can say test case is Pass. If Expected Result and Actual Result both are
different then we can say test case is Fail. Once the test case is fail then we
have to log a defect, then only development team will come to know having issue
in Application. For that some Organization’s using some tools (Bug zilla,
QC). Some Organization’s using Excel
Sheets.
e)
Defect Tracking: Once the defect is raised we
have to track that, and then only we will know it is in which status.
5)
Implementation: In implementation phase implement team will
install the application to the client specified location. And they will check
system requirements.
6)
Maintenance: In this phase sometimes client will get some
suggestions and complaints about the project. Based on the suggestions or
complaints may be client will ask to do changes. For that we need to do
changes.
There are many interesting information included and i can easily understand all given information.I post something on my blog to post something, or wait to post something worth saying.
ReplyDeleteDocument Management Software
Cloud Document Management System
Document Management System
Electronic Document Management Software
Great Article… I love to read your QA services articles because your writing style is too good, its is very helpful for all of us and I never get bored while reading your article because, they are becomes a more and more interesting from the starting lines until the end.
ReplyDeleteThanks for the intersting information about Software Testing Services. I can not wait to read far more from you. This is actually a tremendous site..
ReplyDeleteSoftware Testing Services USA