0% found this document useful (0 votes)
35 views23 pages

A Generic Process Model: Session - 3

The document describes several prescriptive process models for software development: 1. The waterfall model is a linear and sequential model that is best for well-defined projects with low risk. However, it does not support iteration well. 2. The incremental process model delivers software in increments, with each release providing more functionality. It allows development when full staffing is unavailable. 3. Evolutionary models like prototyping and the spiral model are iterative. Prototyping helps understand requirements, while the spiral model systematically assesses risks at each phase. 4. The concurrent model defines states that activities move through, allowing for iterative and concurrent elements from different models. It provides an accurate project status picture.

Uploaded by

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

A Generic Process Model: Session - 3

The document describes several prescriptive process models for software development: 1. The waterfall model is a linear and sequential model that is best for well-defined projects with low risk. However, it does not support iteration well. 2. The incremental process model delivers software in increments, with each release providing more functionality. It allows development when full staffing is unavailable. 3. Evolutionary models like prototyping and the spiral model are iterative. Prototyping helps understand requirements, while the spiral model systematically assesses risks at each phase. 4. The concurrent model defines states that activities move through, allowing for iterative and concurrent elements from different models. It provides an accurate project status picture.

Uploaded by

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

Session -3

A Generic Process
Model
A Generic Process Model
Software process
Process framework
Umbrella activities

framework activity #1 framework activity #2


SE action #1.1 SE action #2.1
task  work tasks
 work tasks
work products
sets  QA points
task  work products
 milestones
sets  QA points
milestones

SE action #1.2 SE action #2.2


work tasks  work tasks
 task work products
task  work products
sets  QA points
sets  QA points  milestones
milestones

2
Process Flow: How the framework activities, actions,
tasks occur within each framework activity

3
Prescriptive Process
models
Prescriptive Process models

• Waterfall Model.
• Incremental Process Model.
• Evolutionary Process Model.
• Concurrent model

5
Prescriptive Process models
Waterfall Model
• Oldest software lifecycle model & best understood by
upper management

• Used when requirements are well understood and risk


is low

• Work flow is in a linear fashion (i.e., sequential)

• Used often with well-defined adaptations or


enhancements to current software
6
Communication
Project initiation Planning
Requirement gathering Estimating
Scheduling Modeling
Tracking Analysis Construction
Design Code Deployment
Test Delivery
Support
Feedback
Waterfall Model
Problems
• Real projects rarely follow sequential flow.
• Difficult for customers to state all requirements
explicitly and up front
• Requires customer patience because a working
version of the program doesn't occur until the final
phase
• Doesn't support iteration, so changes can cause
confusion and Leads to “blocking states”.
Useful
• Where requirements are fixed and is to proceed to
completion in a linear manner.
8
Prescriptive Process models
Incremental Process Model
• Combines elements of linear and parallel process
flows.
• It delivers a series of releases, called increments that
provide progressively more functionality for the
customer as each is delivered
• The first increment is often a core product.
• The plan addresses the modification of the core
product to better meet the needs of the customer and
the delivery of additional feature and functionality.
• It focuses on the delivery of an operational product
with each increment.
9
Incremental Process Model
• It is useful when staffing is unavailable for a complete
implementation.
• Increments can be planned to manage technical risks.

Communication
Software functionality and features

Planning
Modeling (analysis, design)
Construction (code, test)
Deployment ( delivery, feedback)

Delivery of nth Increment

Delivery of 2nd Increment

Delivery of 1st Increment


10
Project calendar Time
Evolutionary Process Model
• Software, like Complex systems evolve over a period of
time
-Business and product requirements often change as development proceeds.
- tight market deadlines make completion of a comprehensive software
product impossible, but a limited version must be introduced to meet
competitive or business pressure
- a set of core product or system requirements is well understood, but the
details of product or system extensions have yet to be defined.
• Evolutionary models are iterative.
• Evolutionary Process Model produce an increasingly
more complete version of the software with each
iteration.
• Specification, development and validation are
interleaved. 11
Prescriptive Process models

Evolutionary Process Model


• Prototyping
• Spiral Model

12
Evolutionary Process Model
1. Prototyping
• It assists you and stakeholders to better understand what is to
built when requirements are fuzzy.
• Prototyping paradigm
-begins with communication.
- planned quickly and modelling occurs
- quick design focuses on a representation of those aspects of the
software that will be visible to end users.
• It serves as a mechanism for identifying software
requirements.

13
Prototyping Model(Diagram)

Quick
Planning

Communication
Start

Modeling
Quick
Deployment,
Design
Delivery,
and
Feedback

Construction
Of Prototype
14
Prototyping Model
Problems
• Overall software quality or long-term maintainability is
not considered.
• As a Software Engineer make implementation
compromises in order to get a prototype working
quickly.
Useful
• The customer get feel for the actual system and
developers get to build something immediately
• Key here is all the stakeholders should agree that the
prototype is built to serve as a mechanism for defining
requirements.
End of Session 15– 4
Evolutionary Process Model
2. Spiral development
• Originally proposed by Barry Boehm.
• It couples the iterative nature of prototyping with the
controlled and systematic aspects of water fall model.
• Process is represented as a spiral rather than as a
sequence of activities with backtracking.
• Each loop in the spiral represents a phase in the
process.
• No fixed phases such as specification or design - loops
in the spiral are chosen depending on what is required.
• Risks are explicitly assessed and resolved throughout
the process.
16
Spiral model
• It is a realistic approach to the development of large-
scale systems and software.
• The software evolves as the process progresses, the
developer and customer better understand and react
at each evolutionary level.
• It uses prototyping as a risk reduction mechanism.
• It demands considerable risk assessment expertise
and realise on this expertise for success.

17
Spiral Model (Diagram)
Planning

Communication

Start Modeling

Start

Deployment Construction

18
Evolutionary development
• Problems
• Do not establish the max. speed of the evolution.
• Systems are often poorly structured;
• Special skills (e.g. in languages for rapid prototyping) may be
required.
• Project management and estimation technique do not fit
completely.

• Applicability
• For small or medium-size interactive systems;
• For parts of large systems (e.g. the user interface);
• For short-lifetime systems.

19
Concurrent Model
• The concurrent development model sometimes called
Concurrent Engineering.
• It allows team to represent iterative and concurrent elements of
any of the process models.
• All software engineering activities exist concurrently but
reside in different states.
• Concurrent modeling defines a series of events that will trigger
transitions from state to state for each of the activities.
• Concurrent modeling is applicable to all types of software
development and provide an accurate picture of the current
state of a project.

20
One element of the concurrent process model

Inactive State of a s/w


Modeling Activity eng. activity

Under
Development

Awaiting Under
Changes Review

Under
Baselined
Revision

Done
End of Session - 3
Additional topics for Self learning:
V - Model

Requirements Acceptance
Modeling Testing

Architectural System Testing


Design
Integration
Component Testing
Design

Code Unit Testing


Generation The V-model provides a way of
visualizing how verification and
validation actions are applied to
earlier engineering work.
Questions:
1. What Classic life cycle model.
2. Disadvantages of Incremental Process Model.
3. Main drawback of Prototyping Model.
4. Speciality in Spiral Model.
5. Need of Process models in Software development.
6. Advantages of Spiral model.
7. Disadvantages of Spiral model.
8. Advantages of Evolutionary model.
9. Disadvantages of Evolutionary model.
10. Specialty of Concurrent model.
11. Difference between Waterfall model and Spiral model.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy