chapter 3 prescriptive process models - kaistswtv.kaist.ac.kr/courses/cs550-07/ch3.pdf ·...

15
CS550 Intro. to SE Spring 2007 1 Chapter 3 Chapter 3 Prescriptive Process Models Prescriptive Process Models Moonzoo Kim CS Division of EECS Dept. KAIST [email protected] http://pswlab.kaist.ac.kr/courses/cs550-07

Upload: others

Post on 04-Nov-2019

75 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Chapter 3 Prescriptive Process Models - KAISTswtv.kaist.ac.kr/courses/cs550-07/ch3.pdf · Prescriptive Models Prescriptive process models advocate an orderly approach to software

CS550 Intro. to SE Spring 2007 1

Chapter 3Chapter 3Prescriptive Process ModelsPrescriptive Process Models

Moonzoo KimCS Division of EECS Dept.

KAIST [email protected]

http://pswlab.kaist.ac.kr/courses/cs550-07

Page 2: Chapter 3 Prescriptive Process Models - KAISTswtv.kaist.ac.kr/courses/cs550-07/ch3.pdf · Prescriptive Models Prescriptive process models advocate an orderly approach to software

CS550 Intro. to SE Spring 2007 2

Comments on HW #1Comments on HW #1

Generally did good jobGenerally did good jobHWsHWs submitted earlier have better scoressubmitted earlier have better scores

Start your HW as early as possibleStart your HW as early as possible

Do not write in a colloquial style, but a literary styleDo not write in a colloquial style, but a literary styleBe careful to select proper words appropriate in technical conteBe careful to select proper words appropriate in technical contextxt

Spend time to find a right work by using thesaurusSpend time to find a right work by using thesaurus

If you have a score less than 8/10, try to improve your If you have a score less than 8/10, try to improve your writing skillwriting skill

Page 3: Chapter 3 Prescriptive Process Models - KAISTswtv.kaist.ac.kr/courses/cs550-07/ch3.pdf · Prescriptive Models Prescriptive process models advocate an orderly approach to software

CS550 Intro. to SE Spring 2007 3

Prescriptive ModelsPrescriptive Models

Prescriptive process models advocate an orderly approach to Prescriptive process models advocate an orderly approach to software engineeringsoftware engineering

That leads to a few questions That leads to a few questions ……If prescriptive process models strive for structure and order, If prescriptive process models strive for structure and order, are they are they inappropriate for a software world that thrives on change?inappropriate for a software world that thrives on change?Yet, if we reject traditional process models (and the order theyYet, if we reject traditional process models (and the order theyimply) and replace them with something less structured, imply) and replace them with something less structured, do we make do we make it impossible to achieve coordination and coherence in software it impossible to achieve coordination and coherence in software work?work?

Page 4: Chapter 3 Prescriptive Process Models - KAISTswtv.kaist.ac.kr/courses/cs550-07/ch3.pdf · Prescriptive Models Prescriptive process models advocate an orderly approach to software

CS550 Intro. to SE Spring 2007 4

The Waterfall ModelThe Waterfall Model

Communicat ion Planning

ModelingConst ruct ion

Deployment analysis design code

t est

project init iat ion requirement gat hering estimating

scheduling tracking

delivery support f eedback

Which problems does the waterfall model have?Which problems does the waterfall model have?……

Page 5: Chapter 3 Prescriptive Process Models - KAISTswtv.kaist.ac.kr/courses/cs550-07/ch3.pdf · Prescriptive Models Prescriptive process models advocate an orderly approach to software

CS550 Intro. to SE Spring 2007 5

The Incremental ModelThe Incremental Model

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 r u c t i o n

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

ana ly s is

des ign c ode

t es t

increment # 1

increment # 2

delivery of 1st increment

delivery of 2nd increment

delivery of nt h increment

increment # n

project calendar t ime

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

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

ana ly s is des ign c ode

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 r u c t i o n

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

analy s is des ign c ode

t es t

Can be implemented with fewer people

Can manage technical risks

Page 6: Chapter 3 Prescriptive Process Models - KAISTswtv.kaist.ac.kr/courses/cs550-07/ch3.pdf · Prescriptive Models Prescriptive process models advocate an orderly approach to software

CS550 Intro. to SE Spring 2007 6

The RAD (Rapid Application Development) ModelThe RAD (Rapid Application Development) Model

Communicat ion

Planning

Mode lingbusiness modeling dat a modeling process modeling

Const ruct ioncomponent reuse aut omat ic code generat ion t est ing

De ployme nt

6 0 - 9 0 days

Team # 1

Mo d elingbusiness m odel ing dat a m odel ing process m odel ing

Co nst ruct io ncom ponent reuse aut om at ic code generat ion t est ing

M o d e lin gbusiness m odeling data m odeling process m odeling

Co n st ru ct io ncom ponent reuse autom at ic code generat ion test ing

Team # 2

Team # n

int egrat ion delivery feedback

Requires sufficient Requires sufficient human resourceshuman resourcesModularization is Modularization is prerequisiteprerequisiteGlobal tuning is not Global tuning is not possiblepossible

Page 7: Chapter 3 Prescriptive Process Models - KAISTswtv.kaist.ac.kr/courses/cs550-07/ch3.pdf · Prescriptive Models Prescriptive process models advocate an orderly approach to software

CS550 Intro. to SE Spring 2007 7

Evolutionary Models: PrototypingEvolutionary Models: Prototyping

Communicat ion

Qu ick p lan

Const ruct ion of prot ot ype

Mo d e lin g Qu ick d e sig n

De live ry & Fe e dback

Deployment

communication

Quickplan

ModelingQuick design

Constructionof prototype

Deploymentdelivery &feedback

Ex. Use-case design

Ideally, the prototype serves to identify SW requirements

Page 8: Chapter 3 Prescriptive Process Models - KAISTswtv.kaist.ac.kr/courses/cs550-07/ch3.pdf · Prescriptive Models Prescriptive process models advocate an orderly approach to software

CS550 Intro. to SE Spring 2007 8

Evolutionary Models: The SpiralEvolutionary Models: The Spiral

communication

planning

modeling

constructiondeployment delivery feedback

start

analysis design

code test

estimation scheduling risk analysis

Page 9: Chapter 3 Prescriptive Process Models - KAISTswtv.kaist.ac.kr/courses/cs550-07/ch3.pdf · Prescriptive Models Prescriptive process models advocate an orderly approach to software

CS550 Intro. to SE Spring 2007 9

Still Other Process ModelsStill Other Process ModelsComponent based developmentComponent based development——the process to apply the process to apply when reuse is a development objectivewhen reuse is a development objectiveFormal methodsFormal methods——emphasizes the mathematical emphasizes the mathematical specification of requirementsspecification of requirementsAOSDAOSD——provides a process and methodological provides a process and methodological approach for defining, specifying, designing, and approach for defining, specifying, designing, and constructing constructing aspectsaspectsUnified ProcessUnified Process——a a ““useuse--casecase driven, architecturedriven, architecture--centric, centric, iterative and incrementaliterative and incremental”” software process closely software process closely aligned with the Unified Modeling Language (UML)aligned with the Unified Modeling Language (UML)

Page 10: Chapter 3 Prescriptive Process Models - KAISTswtv.kaist.ac.kr/courses/cs550-07/ch3.pdf · Prescriptive Models Prescriptive process models advocate an orderly approach to software

CS550 Intro. to SE Spring 2007 10

inception

The Unified Process (UP)The Unified Process (UP)

soft ware increment

Release

Incept ion

Elaborat ion

const ruct ion

t ransit ion

product ion

inception

elaboration

Page 11: Chapter 3 Prescriptive Process Models - KAISTswtv.kaist.ac.kr/courses/cs550-07/ch3.pdf · Prescriptive Models Prescriptive process models advocate an orderly approach to software

CS550 Intro. to SE Spring 2007 11

UP Work ProductsUP Work ProductsIncept ion phase

Elaborat ion phase

Const ruct ion phase

Transit ion phase

Vision documentInit ial use-case modelInit ial project glossaryInit ial business caseInit ial risk assessment .Project plan,

phases and it erat ions.Business model,

if necessary .One or more prot ot ypesI nc e p t i on

Use-case modelSupplement ary requirement s

including non-funct ionalAnalysis modelSoft ware archit ect ure

Descript ion.Execut able archit ect ural

prot ot ype.Preliminary design modelRev ised risk listProject plan including

it erat ion planadapt ed workf lowsmilest onest echnical work product s

Preliminary user manual

Design modelSoft ware component sInt egrat ed soft ware

incrementTest plan and procedureTest casesSupport document at ion

user manualsinst allat ion manualsdescript ion of current

increment

Delivered soft ware incrementBet a t est report sGeneral user feedback

Page 12: Chapter 3 Prescriptive Process Models - KAISTswtv.kaist.ac.kr/courses/cs550-07/ch3.pdf · Prescriptive Models Prescriptive process models advocate an orderly approach to software

CS550 Intro. to SE Spring 2007 12

Quick Overview of SafeHome

The SafeHome company has developed an innovative HW box that implements wireless Internet (802.11) connectivity in a very small form factor (the size of a matchbook). The idea is to use this technology to develop and market a comprehensive home automation product line.

This would provide security functions, control over telephone answering machines, lights, heating, air conditioning, and home entertainment devices.

The first generation of the system will only focus on home security since that is a market the public readily understands.

Page 13: Chapter 3 Prescriptive Process Models - KAISTswtv.kaist.ac.kr/courses/cs550-07/ch3.pdf · Prescriptive Models Prescriptive process models advocate an orderly approach to software

CS550 Intro. to SE Spring 2007 13

Page 14: Chapter 3 Prescriptive Process Models - KAISTswtv.kaist.ac.kr/courses/cs550-07/ch3.pdf · Prescriptive Models Prescriptive process models advocate an orderly approach to software

CS550 Intro. to SE Spring 2007 14

Page 15: Chapter 3 Prescriptive Process Models - KAISTswtv.kaist.ac.kr/courses/cs550-07/ch3.pdf · Prescriptive Models Prescriptive process models advocate an orderly approach to software

CS550 Intro. to SE Spring 2007 15

SafeHomeSafeHome: Selecting a Process Model, Part 2: Selecting a Process Model, Part 2The players: The players:

LeeLee Warren: engineering managerWarren: engineering managerDougDoug Miller: SE managerMiller: SE managerEdEd and and VinodVinod: members of the SE : members of the SE teamteam

The conversation: (The conversation: (DougDoug describes describes evolutionary process options)evolutionary process options)EdEd: Now I see something I like. An : Now I see something I like. An incremental approach makes sense incremental approach makes sense and I really like the flow of that spiral and I really like the flow of that spiral model thing. Thatmodel thing. That’’s keeping it real.s keeping it real.VinodVinod: I agree. We deliver an : I agree. We deliver an increment, learn from customer increment, learn from customer feedback, feedback, replanreplan, and then deliver , and then deliver another increment. It also fits into the another increment. It also fits into the nature of the product. We can have nature of the product. We can have something on the market fast and then something on the market fast and then add functionality with each version, add functionality with each version, erer, , increment. increment.

Lee:Lee: Wait a minute, did you say that Wait a minute, did you say that we regenerate the plan with each tour we regenerate the plan with each tour around the spiral, Doug? Thataround the spiral, Doug? That’’s not so s not so great, we need one plan, one schedule, great, we need one plan, one schedule, and weand we’’ve got to stick to it.ve got to stick to it.Doug:Doug: ThatThat’’s old school thinking, Lee. s old school thinking, Lee. Like Ed said, weLike Ed said, we’’ve got to keep it real. ve got to keep it real. I submit that itI submit that it’’s better to tweak the s better to tweak the plan as we learn more and as changes plan as we learn more and as changes are requested. Itare requested. It’’s way more realistic. s way more realistic. WhatWhat’’s the point of a plan if it doesns the point of a plan if it doesn’’t t reflect reality?reflect reality?LeeLee (frowning): I suppose so, but (frowning): I suppose so, but senior managementsenior management’’s not going to like s not going to like thisthis…… they want a fixed plan.they want a fixed plan.DougDoug (smiling): Then, you (smiling): Then, you ‘‘llll have to have to reeducate them, buddyreeducate them, buddy