SDLC: - Software
Development Life Cycle
It is a procedure to develop the
software.
It is a process of creating or
altering systems and the models and methodologies that people use to develop
these systems.
Any SDLC should result in a high
quality system that meets or exceeds customer expectations, reaches completion
within time and cost estimates, works effectively and efficiently and is
inexpensive to maintain and cost effective to enhance.
Different procedures / models are
available to develop a software namely,
1) Waterfall model
It is a traditional model
It
is a sequential design process, often used in SDLC, in which the progress is
seen as flowing steadily downwards (like a waterfall), through the different
phases as shown in the figure,
Requirements
Collection:-
- done by Business Analysts and
Product Analysts
- gathering requirements
- translates business language into
software language
For
ex, let us consider
the example of banking software.
Feasibility
Study:-
- done by software team consisting
of project managers, business analysts, architects, finance, HR, developers but
not testers
- Architect – is the person who
tells whether the product can be developed and if yes, then which technology is
best suited to develop it.
- Here we check for,
-
Technical feasibility
-
Financial feasibility
-
Resource feasibility
Design:-
There are 2 stages in design,
HLD
– High Level Design
LLD
– Low Level Design
HLD – gives the architecture of the
software product to be developed and is done by architects and senior
developers
LLD – done by senior developers. It
describes how each and every feature in the product should work and how every
component should work. Here, only the design will be there and not the code.
For
ex, let us consider
the example of building a house.
Coding
/ Programming:-
- Done by all developers – seniors,
juniors, freshers
- This is the process where we start
building the software and start writing the code for the product.
Testing:-
- done by test engineers
- It is the process of checking for
all defects and rectifying it.
Installation:-
- done by installation engineers
- to install the product at a
client’s place for using after the software has been developed and tested.
For
ex, consider the example
of software to be developed and installed at Reliance petrol bunk.
Maintenance:-
- Here as the customer uses the
product, he finds certain bugs and defects and sends the product back for error
correction and bug fixing.
- bug fixing takes place
-
Minor changes like adding, deleting or modifying any small feature in the
software product
100 % testing is not possible –
because, the way testers test the product is different from the way customers
use the product.
No comments:
Post a Comment