software engineering process models models for guiding the development of software

7
Software Engineering Process Models Models for Guiding the Development of Software

Upload: ambrose-freeman

Post on 17-Jan-2018

220 views

Category:

Documents


0 download

DESCRIPTION

Waterfall Model AKA: Linear Sequential or Classic Life-Cycle Uses: Clear requirements, traditionally applied in government, 6/e has much weaker endorsement than earlier Distinctives: Early model for SE Variation: V-Model to recognize testing Communication Planning Modeling Construct Deployment analysis design code test project initiation requirement anal. estimating scheduling tracking delivery support feedback

TRANSCRIPT

Page 1: Software Engineering Process Models Models for Guiding the Development of Software

Software Engineering Process Models

Models for Guiding the Development of Software

Page 2: Software Engineering Process Models Models for Guiding the Development of Software

The Software Process Framework

Process Framework: A structure applicable to all processes

Framework Activities Communication, Planning, Modeling, Construction,

and Deployment (see pg 31 7/e, 24 6/e for definitions) Umbrella Activities: Activities (tasks) which are

applicable (or span) the entire process Estimation, Scheduling, Tracking and Control, Risk

Management, Quality Assurance, and Configuration Management

Page 3: Software Engineering Process Models Models for Guiding the Development of Software

Waterfall Model

AKA: Linear Sequential or Classic Life-Cycle Uses: Clear requirements, traditionally applied in government, 6/e has

much weaker endorsement than earlier Distinctives: Early model for SE Variation: V-Model to recognize testing

Communication Planning

ModelingConstruct

Deployment analysis design code

test

project initiation requirement anal. estimating

scheduling tracking

delivery support feedback

Page 4: Software Engineering Process Models Models for Guiding the Development of Software

Incremental Model

A recommended model for CS4810/EGCP4810 Distinctives:

First increment core product Remaining increments add function

C o m m u n i c a t i o nP l a n n i n g

M o d e l i n g

C o n s t ru c t i o n

D e p l o y m e n t d e l i v e ry f e e d b a c k

analys is design code

t es t

increment # 1

increment # 2

delivery of 1st increment

delivery of 2nd increment

delivery of nth increment

increment # n

project calendar time

C o m m u n i c a t i o nP l a n n i n g

M o d e l i n gC o n s t r u c t i o n

De p l o y m e n t d e l i v e r y f e e d b a c k

analys is des ign code

t es t

C o m m u n i c a t i o nP l a n n i n g

M o d e l i n gC o n s t ru c t i o n

De p l o y m e n t d e l i v e r y f e e d b a c k

analys is des ign code

t est

Page 5: Software Engineering Process Models Models for Guiding the Development of Software

Spiral Model

Evolutionary Model Distinctives:

The “product” of each cycle more finely grained Adaptable to each life-cycle phase

communication

planning

modeling

constructiondeployment delivery feedback

start

analysis design

code test

estimation scheduling risk analysis

Page 6: Software Engineering Process Models Models for Guiding the Development of Software

Unified Process Model

A recommended model for CS4810/EGCP4810 Similar to the incremental model with OO emphasis (cycles are also “pipelined”) Provides structure and notation (UML) which assists in organization and

communication

software incrementRelease

Inception

Elaboration

construction

transition

production

Modeled w/ Use Cases and/or Usage Scenarios or Stories

Models system architecture and objects from user and developer perspectives

Page 7: Software Engineering Process Models Models for Guiding the Development of Software

Additional Points of Emphasis

Other Development Models Rapid Application Development (Incremental) Prototyping (Evolutionary)

Differing opinions on the purpose of the prototype (pgs 43-44 7/e, 52-53 6/e)

Most important products of the unified process: Project plan Initial use-case model Software architecture description Expanded project plan (milestones and work products) Design model Software increments Test plan results and user feedback