Practical 1-2
Practical 1-2
Practical 1-2
PRACTICAL : 01
Objective : To study the Software Development Life Cycle (SLDC) and study of
different SLDC models.
Description :
Software Development Life Cycle (SDLC):
Software Development Life Cycle (SDLC) is a framework that defines the steps involved in
the development of software at each phase. It covers the detailed plan for building, deploying
and maintaining the software.
SDLC defines the complete cycle of development i.e. all the tasks involved in planning,
creating, testing, and deploying a Software Product.
SDLC is a process that defines the various stages involved in the development of software for
delivering a high-quality product. SDLC stages cover the complete life cycle of a software i.e.
from inception to retirement of the product.
Adhering to the SDLC process leads to the development of the software in a systematic and
disciplined manner.
Business analyst and Project Manager set up a meeting with the customer to gather all the
information like what the customer wants to build, who will be the end-user, what is the
purpose of the product. Before building a product a core understanding or knowledge of the
product is very important.
For Example, A customer wants to have an application which involves money transactions.
In this case, the requirement has to be clear like what kind of transactions will be done, how
it will be done, in which currency it will be done, etc.
Once the requirement gathering is done, an analysis is done to check the feasibility of the
development of a product. In case of any ambiguity, a call is set up for further discussion.
Once the requirement is clearly understood, the SRS (Software Requirement Specification)
document is created. This document should be thoroughly understood by the developers and
also should be reviewed by the customer for future reference.
2. Design :
In this phase the system and software design is prepared from the requirement specifications
which were studied in the first phase. System Design helps in specifying hardware and
system requirements and also helps in defining overall system architecture. The system
design specifications serve as input for the next phase of the model.
In this phase the testers comes up with the Test strategy, where they mention what to test,
how to test.
3. Implementation or Coding :
On receiving system design documents, the work is divided in modules/units and actual
coding is started. Since, in this phase the code is produced so it is the main focus for the
developer. This is the longest phase of the software development life cycle.
4. Testing :
Testing starts once the coding is complete and the modules are released for testing. In this
phase, the developed software is tested thoroughly and any defects found are assigned to
developers to get them fixed.
Retesting, regression testing is done until the point at which the software is as per the
customer’s expectation. Testers refer SRS document to make sure that the software is as per
the customer’s standard.
5. Deployment :
After successful testing the product is delivered / deployed to the customer for their use.
As soon as the product is given to the customers they will first do the beta testing. If any
changes are required or if any bugs are caught, then they will report it to the engineering
team. Once those changes are made or the bugs are fixed then the final deployment will
happen.
6. Maintenance :
Once when the customers starts using the developed system then the actual problems comes
up and needs to be solved from time to time. This process where the care is taken for the
developed product is known as maintenance.
• Waterfall Model
• V – Shaped Model
• Prototype Model
• Spiral Model
• Iterative Incremented Model
• Big Bang Model
• Agile Model
❖ Waterfall Model :
Waterfall model is the very first model that is used in SDLC. It is also known as the linear
sequential model.
In this model, the outcome of one phase is the input for the next phase. Development of the
next phase starts only when the previous phase is complete.
▪ First, Requirement gathering and analysis is done. Once the requirement is freeze then
only the System Design can start. Herein, the SRS document created is the output for
the Requirement phase and it acts as an input for the System Design.
▪ In System Design Software architecture and Design, documents which act as an input
for the next phase are created i.e. Implementation and coding.
▪ In the Implementation phase, coding is done and the software developed is the input for
the next phase i.e. testing.
▪ In the testing phase, the developed code is tested thoroughly to detect the defects in the
software. Defects are logged into the defect tracking tool and are retested once
fixed. Bug logging, Retest, Regression testing goes on until the time the software is in
go-live state.
▪ In the Deployment phase, the developed code is moved into production after the sign
off is given by the customer.
▪ Any issues in the production environment are resolved by the developers which come
under maintenance.
❖ Prototype Model :
The prototype model is a model in which the prototype is developed prior to the actual
software.
Prototype models have limited functional capabilities and inefficient performance when
compared to the actual software. Dummy functions are used to create prototypes. This is a
valuable mechanism for understanding the customers’ needs.
Software prototypes are built prior to the actual software to get valuable feedback from the
customer. Feedbacks are implemented and the prototype is again reviewed by the customer
for any change. This process goes on until the model is accepted by the customer.
Once the requirement gathering is done, the quick design is created and the prototype which
is presented to the customer for evaluation is built.
Customer feedback and the refined requirement is used to modify the prototype and is again
presented to the customer for evaluation. Once the customer approves the prototype,
It is used as a requirement for building the actual software. The actual software is build
using the Waterfall model approach.
❖ Spiral Model :
The Spiral Model includes iterative and prototype approach.
Spiral model phases are followed in the iterations. The loops in the model represent the
phase of the SDLC process i.e. the innermost loop is of requirement gathering & analysis
which follows the Planning, Risk analysis, development, and evaluation. Next loop is
Designing followed by Implementation & then testing.
(i) Planning :
The planning phase includes requirement gathering wherein all the required information
is gathered from the customer and is documented. Software requirement specification
document is created for the next phase.
For Example, the risk involved in accessing the data from a remote database can be that
the data access rate might be too slow. The risk can be resolved by building a prototype
of the data access subsystem.
(iii) Engineering :
Once the risk analysis is done, coding and testing are done.
(iv) Evaluation :
Customer evaluates the developed system and plans for the next iteration.
PRACTICAL : 02
Aim : Compare and Contrast all the process model in tabular view.
Objective : To study and compare all the SDLC process models in a tabular
format.
Description :