Professional Documents
Culture Documents
LAB -2
Date: 02/09/2022
Name: - AKANSHA CHAUHAN
Enrollment no: - A20405220187
Section: - A Semester: - 5th
Batch: A2
Fig.1.SDLC
Phase -1: - Requirement collection or Planning Phase
The prime focus of this phase is to gather the essential requirements from the customer. This information
gets collected by the business analyst from their target customer(s) and plans the BRS (Business
requirement Specification) for the development of the product.
i) Waterfall model
The waterfall model is a linear process model that divides development processes into
successive project phases. The waterfall Model illustrates the software development process in
a linear sequential flow. This means that any phase in the development process begins only if
the previous phase is complete. In this waterfall model, the phases do not overlap.
Waterfall approach was first SDLC Model to be used widely in Software Engineering to ensure
success of the project. In "The Waterfall" approach, the whole process of software development
is divided into separate phases. In this Waterfall model, typically, the outcome of one phase
acts as the input for the next phase sequentially
Fig. 2: Waterfall Model
System Design − The requirement specifications from first phase are studied in
this phase and the system design is prepared. This system design helps in
specifying hardware and system requirements and helps in defining the overall
system architecture.
Implementation − With inputs from the system design, the system is first
developed in small programs called units, which are integrated in the next phase.
Each unit is developed and tested for its functionality, which is referred to as Unit
Testing.
Evolutionary model is also referred to as the successive versions model and sometimes as
the incremental model. In Evolutionary model, the software requirement is first broken down
into several modules (or functionality) that can be incrementally constructed and delivered.
In the evolutionary model, all work divided into smaller chunks. These chunks present to the
customer one by one. The confidence of the customer increased. This model also allows for
changing requirements as well as all development done into different pieces and maintains all the
work as a chunk.
The Prototyping Model is one of the most popularly used Software Development Life Cycle
Models (SDLC models). This model is used when the customers do not know the exact project
requirements beforehand. In this model, a prototype of the end product is first developed, tested
and refined as per customer feedback repeatedly till a final acceptable prototype is achieved
which forms the basis for developing the final product. The prototype model requires that before
carrying out the development of actual software, a working prototype of the system should be
built.
Phases of Prototype Model –
1. Requirements-gathering-and-analysis:
A requirement analysis is the first step in developing a prototyping model. During this
phase, the system’s desires are precisely defined. During the method, system users are
interviewed to determine what they expect from the system.
2. Quick design:
The second phase could consist of a preliminary design or a quick design. During this
stage, the system’s basic design is formed. However, it is not a complete design. It
provides the user with a quick overview of the system. The rapid design aids in the
development of the prototype.
3. Build-Prototype:
During this stage, an actual prototype is intended to support the knowledge gained from
quick design. It is a small low-level working model of the desired system.
4. Initial-user-evaluation:
The proposed system is presented to the client for preliminary testing at this stage. It is
beneficial to investigate the performance model’s strengths and weaknesses. Customer
feedback and suggestions are gathered and forwarded to the developer.
5. Refining-prototype:
If the user is dissatisfied with the current model, you may want to improve the type that
responds to user feedback and suggestions. When the user is satisfied with the upgraded
model, a final system based on the approved final type is created.
6. Implement-Product-and-Maintain:
The final system was fully tested and distributed to production after it was developed to
support the original version. To reduce downtime and prevent major failures, the
programmer is run on a regular basis.
Prototype model should be used when the desired system needs to have a lot of
interaction with the end users.
Typically, online systems, web interfaces have a very high amount of interaction with
end users, are best suited for Prototype model. It might take a while for a system to be
built that allows ease of use and needs minimal training for the end user.
Prototyping ensures that the end users constantly work with the system and provide
feedback which is incorporated in the prototype to result in a useable system. They are
excellent for designing good human computer interface systems.
V Model
The V-model is a type of SDLC model where process executes in a sequential manner in V-
shape. It is also known as Verification and Validation model. The V-Model is an extension of the
waterfall model and is based on the association of a testing phase for each corresponding
development stage. This means that for every single phase in the development cycle, there is a
directly associated testing phase. This is a highly disciplined model, and the next phase starts
only after completion of the previous phase.
Fig 5: V Model
Phases Of V Model
1. Business Requirement Analysis: This is the first phase in the development cycle where
the product requirements are understood from the customer’s perspective. This phase
involves detailed communication with the customer to understand his expectations and
exact requirement.
2. System Design: The system design will have the understanding and detailing the
complete hardware and communication setup for the product under development.
3. Architectural Design: Architectural specifications are understood and designed in this
phase. Usually more than one technical approach is proposed and based on the
technical and financial feasibility the final decision is taken. The system design is broken
down further into modules taking up different functionality. This is also referred to as
High Level Design (HLD).
4. Module Design: In this phase, the detailed internal design for all the system modules is
specified, referred to as Low Level Design (LLD). It is important that the design is
compatible with the other modules in the system architecture and the other external
systems. The unit tests are an essential part of any development process and helps
eliminate the maximum faults and errors at a very early stage. These unit tests can be
designed at this stage based on the internal module designs.
5. Coding Phase: The actual coding of the system modules designed in the design phase is
taken up in the Coding phase. The best suitable programming language is decided based
on the system and architectural requirements.
6. Unit Testing: Unit tests designed in the module design phase are executed on the code
during this validation phase. Unit testing is the testing at code level and helps eliminate
bugs at an early stage, though all defects cannot be uncovered by unit testing.
8. System Testing: System testing is directly associated with the system design phase.
System tests check the entire system functionality and the communication of the system
under development with external systems. Most of the software and hardware
compatibility issues can be uncovered during this system test execution.
The following pointers are some of the most suitable scenarios to use the V-Model application.
Requirements are well defined, clearly documented and fixed.
Product definition is stable.
Technology is not dynamic and is well understood by the project team.
There are no ambiguous or undefined requirements.
The project is short.
.