You are on page 1of 21

1

Name: Zeeshan Ali Jarral

SOFTWARE ENGINEERING-1
Roll No: FA20-BIT-081
Course Title: Software Engineering-1
Course Code: BIT-2402
Submitted To: Sir Ghias Hamid
Assignment No: 02
2
Software Development Model
Waterfall Model

SOFTWARE ENGINEERING-1
THE SOFTWARE DEVELOPMENT MODELS ARE THE VARIOUS
PROCESSES OR METHODOLOGIES THAT ARE BEING
SELECTED FOR THE DEVELOPMENT OF THE PROJECT
DEPENDING ON THE PROJECT’S AIMS AND GOALS. THERE
ARE MANY DEVELOPMENT LIFE CYCLE MODELS THAT HAVE
BEEN DEVELOPED IN ORDER TO ACHIEVE DIFFERENT
REQUIRED OBJECTIVES. THE MODELS SPECIFY THE VARIOUS
STAGES OF THE PROCESS AND THE ORDER IN WHICH THEY
ARE CARRIED OUT.
Phases of Waterfall Model 3

SOFTWARE ENGINEERING-1
Phases of Waterfall Model in Software Engineering are
 Requirements Gathering
 Analysis System
 Design
 Implementation
 Testing
 Deployment
 Maintenance
Advantages of waterfall model 4

SOFTWARE ENGINEERING-1
THIS MODEL IS SIMPLE AND EASY TO UNDERSTAND AND USE.
IT IS EASY TO MANAGE DUE TO THE RIGIDITY OF THE MODEL
– EACH PHASE HAS SPECIFIC DELIVERABLES AND A REVIEW
PROCESS .IN THIS MODEL PHASES ARE PROCESSED AND
COMPLETED ONE AT A TIME. PHASES DO NOT OVERLAP.
WATER FALL MODEL WORKS WELL FOR SMALLER PROJECTS
WHERE REQUIREMENTS ARE CLEARLY DEFINED AND VERY
WELL UNDERSTOOD.
Disadvantages of waterfall model 5

SOFTWARE ENGINEERING-1
ONCE AN APPLICATION IS IN THE TESTING STAGE, IT IS VERY
DIFFICULT TO GO BACK AND CHANGE SOMETHING THAT WAS
NOT WELL-THOUGHT OUT IN THE CONCEPT STAGE. NO
WORKING SOFTWARE IS PRODUCED UNTIL LATE DURING THE
LIFE CYCLE. HIGH AMOUNTS OF RISK AND UNCERTAINTY.
NOT A GOOD MODEL FOR COMPLEX AND OBJECT-ORIENTED
PROJECTS. POOR MODEL FOR LONG AND ONGOING PROJECTS.
NOT SUITABLE FOR THE PROJECTS WHERE REQUIREMENTS
ARE AT A MODERATE TO HIGH RISK OF CHANGING.
Waterfall Model Diagram 6

SOFTWARE ENGINEERING-1
7

Violation And Verification Model

SOFTWARE ENGINEERING-1
V-model means Violation and Verification model. Just like the waterfall model the
V-Shaped life cycle is a sequential path of execution of processes. Each phase
must be completed before the next phase begins. V-Model is one of the many
software development model.
8

Advantages of V-Model

SOFTWARE ENGINEERING-1
 Simple and easy to use.
 Testing activities like planning, test designing happens well before coding.
 This saves a lot of time.
 Avoids the downward flow of the defects.
 Works well for small projects where requirements are easily understood.
9

Disadvantages of V-Model

SOFTWARE ENGINEERING-1
 Very rigid and least flexible.
 Software is developed during the implementation phase, so no early prototypes
of the software are produced.
 If any changes happen in midway, then the test documents along with
requirement documents has to be updated.
10

Phases of V-Model

SOFTWARE ENGINEERING-1
 Verification Phases
 Business Requirement Analysis
 System Design
 Architectural Design
 Module Design
 Coding Phase
11

SOFTWARE ENGINEERING-1
V-Model Diagram
Incremental Model 12

SOFTWARE ENGINEERING-1
Incremental Model is a process of software development where requirements divided
into multiple standalone modules of the software development cycle. In this model,
each module goes through the requirements, design, implementation and testing
phases. Every subsequent release of the module adds function to the previous release.
The process continues until the complete system achieved.
13
Phases Of Incremental Model

SOFTWARE ENGINEERING-1
 In the first phase of the incremental model, the product analysis expertise
identifies the requirements. And the system functional requirements are
understood by the requirement analysis team. To develop the software under the
incremental model, this phase performs a crucial role.
 Design & Development: In this phase of the Incremental model of SDLC, the
design of the system functionality and the development method are finished with
success. When software develops new practicality, the incremental model uses
style and development phase.
 Testing: In the incremental model, the testing phase checks the performance of
each existing function as well as additional functionality. In the testing phase, the
various methods are used to test the behavior of each task.
14
Advantages Of Incremental Model

SOFTWARE ENGINEERING-1
 The incremental model is extra flexible and less costly to modify the scope
and the requirements.
 This model is very easy and simple to verify and debug throughout the small
iteration.
 Using this model, produces the working software earlier and rapidly
throughout the product life cycle.
 By using this model client is able to respond to every built.
15
Disadvantages Of Incremental Model

SOFTWARE ENGINEERING-1
 For incremental model, required good designing and well planning.
 The complete cost of this model is higher than waterfall model.
 Mostly this model is utilized when all the requirements are of whole product is
specific and understood.
 When any new technology is being utilized.
 When important requirements are determined.
Diagram Of Incremental Model 16

SOFTWARE ENGINEERING-1
17
Itrative Model

SOFTWARE ENGINEERING-1
The iterative process model is a software development life cycle
(SDLC) approach in which the initial development work is conducted
based on initial requirements that are clearly defined, and subsequent
features are added to this base software product through iterations until
the final system is completed. This SDLC approach does not aim to
create a comprehensive specification plan. Instead, the iterative
development model is a method for breaking down any major software
development project into smaller chunks. It is specifically designed to
start with the bare minimum requirements and only construct a portion
of the program iteratively.
Features OF Itrative Model 18

SOFTWARE ENGINEERING-1
 The functionality of the project increases Incrementally. It lets you
have a constant improvement in the quality of the project. With
continuous improvements, it helps you lower down the chances of
risk.
 You can experience good improvement in the accuracy of the
various estimates that could be part of the project. It is also known
as the cyclic model.
 After the initial phase, some phases occurs repeatedly and with the
completion of each phase there is the scope of some improvement.
 Lastly, it helps increasing enthusiasm, collaboration, and
effectiveness within the team.
Advantages OF Itrative Model 19

SOFTWARE ENGINEERING-1
 The key advantage is that this approach allows developers to break
down the task of developing a system into a series of smaller tasks.
 These can then be completed separately, evaluated, and
subsequently re-worked until the system performs adequately.
 Knowledge gained from developing and testing these small
sections can then be incorporated back into the development of
other parts of the project.
 Managing a project using this approach is easier too, since not
every consequence and permutation has to be considered at the
outset, before the project can get off the ground.
Disadvantages OF Itrative Model 20

SOFTWARE ENGINEERING-1
 Since the model is a cycle, the potential for iterative development to
spin out of control and exceed its budget is immense.
 The cost-benefit of solving new problems that arise must therefore
be closely-managed, and timescales and deliverables will still need
to be defined and monitored.
 Unlike the Waterfall model, where strict documentation of the
entire development process is a design requirement, many iterative
approaches favor lighter documentation. This can reduce project
overheads.
 However, there is a risk that under documentation could lead to
needless duplication of effort, and time wasted developing within a
task with a poorly-defined scope.
Diagram OF Itrative Model 21

SOFTWARE ENGINEERING-1

You might also like