KEMBAR78
Software Engineering | PDF | Software Development Process | Software Engineering
0% found this document useful (0 votes)
13 views25 pages

Software Engineering

The document discusses various software engineering process models, including the Waterfall, Prototyping, Spiral, Incremental, and V models. It outlines the goals of software engineering, the phases involved in the software life cycle, and the advantages and disadvantages of each model. Additionally, it provides guidance on when to use specific models based on project requirements and characteristics.

Uploaded by

Ad Nan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views25 pages

Software Engineering

The document discusses various software engineering process models, including the Waterfall, Prototyping, Spiral, Incremental, and V models. It outlines the goals of software engineering, the phases involved in the software life cycle, and the advantages and disadvantages of each model. Additionally, it provides guidance on when to use specific models based on project requirements and characteristics.

Uploaded by

Ad Nan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 25

Software Engineering

Dr. Shafiqul Abidin


Associate Professor
Department of Computer Science
Aligarh Muslim University (AMU)
Aligarh

PPT are based on Software Engineering , by


K.K Aggarwal & Yogesh Singh
& 1
Software Engineering by Roger S Pressman
Software Process Models

Part -2
CABSM6001
Software Life Cycle Models /Soft ware
Process Models

The goal of Software Engineering is to provide


models and processes that lead to the production
of well-documented maintainable software in a
manner that is predictable. The period of time
that starts when a software product is conceived
and ends when the product is no longer available
for use. The software life cycle typically includes
a requirement phase, design phase,
implementation phase, test phase, installation and
check out phase, operation and maintenance
phase, and sometimes retirement phase”. 2
Software Process Models

2
Different Process Models

2
Waterfall Model/ Linear Sequential Model

2
Waterfall Model/ Liner Sequential Model

2
Waterfall Model/ Liner Sequential Model

2
Prototyping Model

2
Prototyping Model

➢ The prototype may be a usable program


but is not suitable as the final software
product.

➢ The code for the prototype is thrown


away. However experience gathered
helps in developing the actual system.

➢ The development of a prototype might


involve extra cost, but overall cost might
turnout to be lower than that of an
equivalent system developed using the 2
waterfall model.
Prototyping Model

2
Prototyping Model

2
The Spiral Model (Barry Boehm 1986)

2
The Spiral Model (Barry Boehm 1986)

2
The Spiral Model (Barry Boehm 1986)

2
A spiral model has 4 phases
described below:

• Planning phase
• Risk analysis phase
• Engineering phase
• Evaluation phase.
When to use Spiral Model?

• When project is large


• When releases are required to be frequent
• When creation of a prototype is applicable
• When risk and costs evaluation is important
• For medium to high-risk projects
• When requirements are unclear and complex
• When changes may require at any time
• When long term project commitment is not
feasible due to changes in economic priorities
Incremental Model
• Incremental Model is a process of software
development where requirements are broken down into
multiple standalone modules of software development cycle.
• Each iteration passes through the requirements, design,
coding and testing phases.
• Typical product takes from 5 to 25 builds (iterations).
Incremental Model (contd.)
Incremental Model (contd.)
• Waterfall and rapid prototyping models
• Deliver complete product at the end
• Incremental model
• Deliver portion of the product at each stage
• Advantages
• The software will be generated quickly during the software
life cycle
• It is flexible and less expensive to change requirements and
scope
• Throughout the development stages changes can be done
• This model is less costly compared to others
• A customer can respond to each building
• Errors are easy to be identified
Incremental Model (contd.)
• Disadvantages:
• It requires a good planning designing
• Problems might arise due to system architecture as not all
requirements collected up front for the entire software
lifecycle
• Each iteration phase is rigid and does not overlap each
other
• Correcting a problem in one unit requires correction in all
the units and consumes a lot of time
When to use Incremental
models?
• Requirements of the system are clearly understood
• When demand for an early release of a product arises
• When software engineering team are not very well skilled or
trained
• When high-risk features and goals are involved
• Such methodology is more in use for web application and
product based companies
V Model
V Model

The V-model represents a development process that may be


considered an extension of the waterfall model and is an
example of the more general V-model. Instead of moving
down in a linear way, the process steps are bent upwards after
the coding phase, to form the typical V shape. The V-Model
demonstrates the relationships between each phase of the
development life cycle and its associated phase of testing. The
horizontal and vertical axes represent time or project
completeness (left-to-right) and level of abstraction (coarsest-
grain abstraction uppermost), respectively.
Software Project Management -
W5HH of Project Management

You might also like