Sei sulla pagina 1di 15

Software Process Models

MS 204/ ES 205
Software Engineering

MS - Med Soft (Sem II)


MS – Emb.Systems (Sem II)
Process Models

• Waterfall / Classical/ Linear Sequential Model


• Prototyping
• RAD Model
• Phased Developments (Increments & Iterative)
• Spiral

10/22/08 Software Process Models 2


Waterfall Model
Validation:
Analysi Focus on building right product
s
Design Verification:
Focus on quality of implementation
Coding

Testing

Installatio
n
Operation
and
Maintenance
10/22/08 Software Process Models 3
Waterfall Model

Advantages:
• Simple to understand & implement
• Document is ready
• Testing & Verification at each stage

Disadvantages:
• Requirements freezing is difficult
• Document driven
• Large Projects (dev. time is long): Obsolete h/w

10/22/08 Software Process Models 4


Prototyping

• Used when general


Listen to Build/ objectives for software is
customer Release known
prototype
Customer • Detailed I/P, Processing, O/P
Test drives
the are not known
prototype

10/22/08 Software Process Models 5


Prototyping

Advantages:
• More fine-grained requirements can be retrieved
from customer
• Improves understanding of the customer

Disadvantages:
• Rework out of control
• Cost at later stage is high
• Proto. Environment may remain same

10/22/08 Software Process Models 6


Rapid Application Model (RAD)

Business
Modeling

Data
Modeling
Process
Modeling
App
Generation

Test &
Turnover
10/22/08 Software Process Models 7
Rapid Application Model (RAD)
Advantages:

• Uses reusable components

• Short period for development

Disadvantages:

• Not good for Tech. Risky Systems

• Not all the projects are appropriate for RAD

10/22/08 Software Process Models 8


Evolutionary Process Models

Phased Development Model

Spiral Model

10/22/08 Software Process Models 9


Phased Development

• To reduce cycle time


• Deliver in pieces
• Operational System – In use : Release n
• Development System – Under dev. : Release (n + 1)

• Approaches :
• Incremental approach
• Iterative approach

10/22/08 Software Process Models 10


Incremental Approach

• The system is partitioned into subsystems by


functionality

• The releases are defined by beginning with


one small functional subsystem & then adding
functionality with each new release

Increment 1 Increment 2 Increment 3

10/22/08 Software Process Models 11


Iterative Approach

• Delivers the full systems at the very beginning


& then changes (enhancements to) the
functionality of each subsystem with each new
release.

Iteration 1 Iteration 2 Iteration 3

10/22/08 Software Process Models 12


Phased Development :An Example

Text Processing Package (e.g. MS Word)


Incremental Iterative

R1 Creating Text Provide min. but all functions


(Write text & save it ) (No. of Fonts /Colors: 10)
R2 Organising Text Improve the functionalities of all
( Cut & Paste ) (No. of Fonts /Colors: 256)

R3 Formatting text Enrich the functionalities still more


(Changing Font Style, Size) (Choosing custom color)
R4 Objects Enrich still further
(Including Images, Charts) (Create own font, effect & style)
10/22/08 Software Process Models 13
Adv & Disadvantages
• Adv
– Markets can be created for never-been-
offered functionalities
– Training can begin at early release
– Frequent releases help developers (fix bugs,
globally & quickly)
• Disadvantages
– Too much releases & patches would confuse
customers
– Tend to postpone the “buy” decisions

10/22/08 Software Process Models 14


References:

• Book: Chapter 2, Software Engineering – Theory &


Practice, Shari Lawrence Pfleeger

• Book: Chapter 2, Software Engineering – A


Practitioner’s Approach,
Roger Pressman

10/22/08 Software Process Models 15

Potrebbero piacerti anche