Systems Analysis and Design ith
Syst e m s An a lysis a n d Syst e m s An a lysis a n d
D e sign w it h UM L V e r sion D e sign w it h UM L V e r sion D e sign it h D e sign it h UM L UM L V e sion V e sion 2 .0 2 .0 Ch a pt e r 4 Pr oj e ct M a n a ge m e n t Ch a pt e r 4 Pr oj e ct M a n a ge m e n t Alan Dennis, Barbara Wixom , and David Alan Dennis Barbara Wixom and David Tegarden John Wiley & Sons, I nc. Copyright © 2005 John Wiley & Sons, I nc. J h Wil & S
All right s reserved. Reproduct ion or t ranslat ion of t his All right s reserved. Reproduct ion or t ranslat ion of t his
I p perm ission of t he copyright owner is unlawful. py g Unit ed St at es Copyright Act wit hout t he express writ t en
work beyond t hat perm it t ed in Sect ion 117 of t he 1976
t he Perm issions Depart m ent , John Wiley & Sons, I nc.
Request for furt her inform at ion should be addressed t o
use only and not for redist ribut ion or resale. The purchaser m ay m ake back up copies for his/ her own The purchaser m ay m ake back- up copies for his/ her ownprogram s or from t he use of t he inform at ion cont ained
om issions, or dam ages, caused by t he use of t hese om issions, or dam ages, caused by t he use of t hese The Publisher assum es no responsibilit y for errors, herein.Pr oj e ct M a n a ge m e n t Chapt er 4
Obj e ct ive s Obj t i
Become familiar with estimation. Become familiar with estimation ■ ■ Be able to create a project workplan.
■ Understand why project teams use Understand why project teams use
■ ■ timeboxing.
Become familiar with how to staff a project. p j ■
Understand how computer-aided software
■ engineering, improve the efficiency of a project.Understand how to reduce risk on a project.
■
K D fi it i Ke y D e fin it ion s
Proj ect m anagem ent Proj ect m anagem ent is t he process is t he process of planning and cont rolling t he
developm ent of a syst em w it hin a developm ent of a syst em w it hin a
specified t im efram e at a m inim um cost wit h t he right funct ionalit y. cost wit h t he right funct ionalit y A proj ect m anager has t he prim ary responsibilit y for m anaging t he ibilit f i t h hundreds of t asks and roles t hat need t o be carefully coordinat ed. d t b f ll di t d
Est im a t in g a Pr oj e ct Ba se d
on I n du st r y I n for m a t ionI d t I f t i
Industry Pla nning Ana lysis De sig n Im ple m e nta tio n Applic a tio ns Fo r We b 15% 20% 35% 30% Sta nda rd Sta nda rd Re q uire d Re q uire d Tim e in Pe rso n 4 4 5.33 5 33 9.33 9 33 8 8 Mo nths
F t i P i t Fu n ct ion Poin t s Est im a t e Syst e m Siz e Est im a t e Syst e m Siz e
A funct ion point is a m easure of program size t hat is based on t he syst em ’s num ber and com plexit y of t ’ b d l it f input s, out put s, queries, files, and program int erfaces
Est im a t e e ffor t r e qu ir e d Person Mont hs
Est im a t e t im e r e qu ir e d Mont hs t o com plet e
Tim e Est im a t ion Usin g a M or e Com ple x Appr oa ch M C l A h
Ge t t in g t h e Righ t N u m be r s for Est im a t ion
Prior proj ect s Prior proj ect s Past experience I ndust ry st andards
Det ailed analysis Det ailed analysis
Est im a t ion Tr a de offs Est im a t ion Tr a de - offs
Size Size Funct ion point s Lines of code Li f d
Effort Person- m ont hs People available p
Tim e Mont hs Mont hs
C l l t F t i P i t Ca lcu la t e Fu n ct ion Poin t s
List m aj or elem ent s of syst em List m aj or elem ent s of syst em Det erm ine t ot al num ber of each elem ent l t Specify com plexit y index of each com ponent ( low, m ed., high) g ) Tot al index m ult iplied by num ber of com ponent s ( TUFP) num ber of com ponent s ( TUFP)
Fu n ct ion Poin t Est im a t ion
- - - St St e p On e O Description Low Medium High Total Complexity C l i Outputs __x 4 __x 5 __x 7 ____
- - - St St e p Fou r F
I I nputs __x 3 3 __x 4 4 __x 6 6 ____ Q Queries i __x 3 Files __x 7 __x 10 __x 15 ____ 3 __x 4 4 __x 6 6 ____ I nterfaces Program P __x 5 5 __x 7 7 __x 10 10 ____ TOTAL UNADJUSTED FUNCTI ON POI NTS ____
TUPF Ex a m ple TUPF E l
Adj u st e d Pr oce ssin g Com ple x it y - - C l i St e p 2 S
2
Fu n ct ion Poin t s Est im a t ion
Adjusted Project Complexity = .065 + (0.01 * Project Complexity) 065 (0 01 * P j t C l it ) Total Adjusted Function Points j = Adjusted Project Complexity * TUFP
Fu n ct ion Poin t Est im a t ion Fu n ct ion Poin t Est im a t ion
Processing Com plexit y ( PC) : __7______ ( From St ep 2) Adj ust ed Processing Com plexit y ( PCA) Com plexit y ( PCA) = 0.65 + ( 0.001 __7_ ) 0.65 + ( 0.001 *
7 ) Tot al Adj ust ed Funct ion Point s: Funct ion Point s: _0.72 * _338_ = 243 0 72 * 338 243 ( TUFP - - From St ep 1)
Con ve r t in g Fu n ct ion Poin t s t o Lin e s of Code
C Language Language LOC/ Funct ion Code Point LOC/ Funct ion Code Point 130 C+ + JAVA COBOL 110 50 55 Pow erBuilder Visual Basic Visual Basic Turbo Pascal 30 30 15 50 ( e.g., Access, Excel) Packages HTML 10- 40 15 Source: Capers Jones, Soft ware Product ivit y Research
Fi l St Fin a l St e p
Mult iply funct ion point s Mult iply funct ion point s Approxim at e lines of code per f funct ion point in t he chosen t i i t i t h h language I f you chose C, t hen 243 funct ion Point s t im es 130 lines of code = 31,590 t ot al lines of code
Est im a t in g Effor t Est im a t in g Effor t
Funct ion of size and product ion Funct ion of size and product ion rat e COCOMO m odel COCOMO d l convert s a lines- of- code est im at e int o a person- m ont h est im at e i h i For m oderat e- size proj ect s
m ult iply t housands of lines of lt i l t h d f li f
code by 1.4 t o get t he num ber ofpeople t o assign t o t he proj ect people t o assign t o t he proj ect
COCOM O Est im a t ion Ca lcu la t ion C l l t i
1.4 thousands-of- * Effort = ( (in Person- lines-of-code f Months)
Example: E l If LOC = 2000 Then... f Effort = (1.4 * 2000) = 28 Person Months
Est im a t in g Sch e du le Tim e Est im a t in g Sch e du le Tim e
Rule of t hum b for est im at ion Rule of t hum b for est im at ion
Schedule Time (months) =
3 0 * p s n m nths 1/3 3.0 * person-months 1/3
St ffi At t ib t St a ffin g At t r ibu t e s
St affing levels w ill change over St affing levels w ill change over a proj ect ’s lifet im e Adding st aff m ay add m ore
overhead t han addit ional labor overhead t han addit ional labor
Using t eam s of 8- 10 report ingin a hierarchical st ruct ure can in a hierarchical st ruct ure can
reduce com plexit yI n cr e a sin g Com ple x it y w it h La r ge r Te a m s it h L T
CREATI N G TH E W ORK CREATI N G TH E W ORK PLAN
D l i W k Pl D e ve lopin g a W or k Pla n
I dent ify t asks in t he proj ect I dent ify t asks in t he proj ect Est im at e t ask lengt h Det erm ine t ask dependencies
Specify t o whom t ask will be Specify t o whom t ask will be
assigned List deliverablesA W or k pla n Ex a m ple A W k l E l
Work Plan I nform at ion Work Plan I nform at ion Exam ple Exam ple Com plet ion dat e Jan 19, 2001 St art dat e ` Jan 05, 2001 Nam e of t ask Nam e of t ask Perform econom ic feasibilit y Perform econom ic feasibilit y Com plet ion st at us Open Deliverable( s) Cost- benefit analysis Person assigned g Mary Sm it h, sponsor y , p Est im at ed t im e 16 hours Resources needed Spreadsheet Priorit y High Act ual t im e 14.5 hours
I de n t ifyin g Ta sk s I de n t ifyin g Ta sk s
Top- dow n approach Top- dow n approach I dent ify highest level t asks as phases in t he proj ect phases in t he proj ect Break t hem int o increasingly sm aller unit s sm aller unit s
Met hodology Using st andard list of t asks Sim ilar previous proj ect s
Top D ow n Ta sk I de n t ifica t ion I d t ifi t i
Phases with Phases high level steps
Wo rk Pla n De live ra b le s Estima te d Assig ne d ho urs To * * * *
W or k Br e a k dow n St r u ct u r e W k B k d S Specify high level t asks Specify high level t asks Break down each st ep int o sm aller t asks and num ber t hem in a hierarchical fashion in a hierarchical fashion WBS can be done in t wo ways
SDLC phase SDLC h Product
W BS P bl W BS Pr oble m s
They t end t o be specific t o t he They t end t o be specific t o t he design of t he inform at ion syst em being developed being developed
Too m any levels of det ail t oo early
on in t he SDLC for large proj ect s or on in t he SDLC for large proj ect s or t oo few for sm all proj ect s.Since t hey are proj ect specific, t hey Since t hey are proj ect specific, t hey are very difficult t o com pare across proj ect s.
E l t i W BS Evolu t ion a r y W BS
organize in a st andard m anner across all organize in a st andard m anner across all proj ect s creat e in an increm ent al and it erat ive m anner first evolut ionary WBS done w it h init ial aspect s of t he proj ect aspect s of t he proj ect Lat er on m ore det ails are added t o t he WBS.
Com parable t o earlier proj ect s based on p p j cost and schedule est im at ion
Pr oj e ct W or k Pla n P j t W k Pl
STAFFI N G TH E PROJECT
K D fi it i Ke y D e fin it ion s
The The st affing plan st affing plan describes t he kinds describes t he kinds of people working on t he proj ect The The proj ect chart er proj ect chart er describes t he describes t he proj ect ’s obj ect ives and rules A A funct ional lead funct ional lead m anages a group of m anages a group of analyst s A A t echnical lead t h i l l d oversees progress of f program m ers and t echnical st aff m em bers m em bers
M t i t i M ot iva t ion
Use m onet ary rew ards caut iously Use m onet ary rew ards caut iously Use int rinsic rewards Recognit ion Achievem ent The work it self Responsibilit y Advancem ent Chance t o learn new skills
Con flict Avoida n ce St t i St r a t e gie s
Clearly define roles and proj ect plans Clearly define roles and proj ect plans Hold individuals account able Proj ect chart er list ing norm s and Proj ect chart er list ing norm s and groundrules Develop schedule com m it m ent s ahead of Develop schedule com m it m ent s ahead of t im e Forecast ot her priorit ies and t heir Forecast ot her priorit ies and t heir possible im pact on t he proj ect
Possible Re por t in g St r u ct u r e P ibl R i S
CON TROLLI N G AN D D I RECTI N G TH E D I RECTI N G TH E PROJECT
Th e H u r r ica n e M ode l Th e H u r r ica n e M ode l
P j t St Time Project Stage Time
M a r gin s of Er r or in Cost a n d Tim e Est im a t e s Typ ic a l ma rg ins o f Erro r fo r Typ ic a l ma rg ins o f Erro r fo r
Pha se De live ra b le C o st (%) time (%)
We ll-d o ne Estima te s Pla nning Syste m Re q ue st 400 Pro je c t Pla n 100 25 60 Ana lysis Syste m Pro p o sa l De sig n D i S t Syste m Sp e c ific a tio n S ifi ti 25 25 50 10 10 15 So urc e : Bo e hm e t a l. (1995) ( )Ga n t t Ch a r t G t t Ch t
PERT Ch t PERT Ch a r t s
Proj ect Evaluat ion and Review Proj ect Evaluat ion and Review
Technique ( PERT) PERT uses t hree t im e st im at es:Opt im ist ic O Opt im ist ic, O Most likely, M P i i t i P Pessim ist ic, P
Tim e Est im at e = O + 4 * M + P
Pe r t Ch a r t P t Ch t
CASE Tools CASE Tools
Initiation Analysis Design Implementation Upper CASE Lower CASE Upper SE Lower SE I nt egrat ed CASE ( I - CASE) I nt egrat ed CASE ( I - CASE)
CASE Com pon e n t s CASE C t
Diagram s Diagram s Screen Screen Designs
CASE Reposit ory P Procedural d l
Met adat a M t d t Logic
St a n da r ds St a n da r ds
Exam ples Exam ples
Form al rules for nam ing files
Form s indicat ing goals reached Program m ing guidelines Program m ing guidelines Can you t hink of m ore exam ples?
D ocu m e n t a t ion D ocu m e n t a t ion
Proj ect binder Proj ect binder Table of cont ent s Cont inual updat ing
M i S M a n a gin g Scope
Scope creep a m aj or cause of Scope creep - - a m aj or cause of developm ent problem s JAD and prot ot yping Form al change approval g pp Charging for changes
Tim e box in g Tim e box in g
Fixed deadline Fixed deadline Make deadline possible Set by developm ent group Reduced funct ionalit y, if Reduced funct ionalit y if necessary Fewer “ finishing t ouches”
Tim e box in g St e ps Ti b i St 1. Set the date for system delivery
1 Set the date for system delivery
2. Prioritize the functionality that needs to be included in the system. y
3. Build the core of the system (the functionality ranked as most important).
4. Postpone functionality that cannot be provided
within the time frame.5 Deliver the system with core functionality
5. Deliver the system with core functionality.
6. Repeat steps 3 through 5, to add refinements and enhancements. and enhancements.
M a n a gin g Risk M a n a gin g Risk
Risk assessm ent Risk assessm ent Act ions t o reduce risk Revised assessm ent
Cl i M i t k Cla ssic M ist a k e s
Overly opt im ist ic schedule Overly opt im ist ic schedule Failing t o m onit or schedule Failing t o updat e schedule Adding people t o a lat e proj ect Adding people t o a lat e proj ect
S Su m m a r y
Proj ect m anagem ent is crit ical Proj ect m anagem ent is crit ical
t o successful developm ent of
new syst em s Proj ect m anagem ent involves Proj ect m anagem ent involves planning, cont rolling andreport ing on t im e, labor, and report ing on t im e labor and
cost s.E di t h D i Ex pa n din g t h e D om a in
For m ore det ail on proj ect For m ore det ail on proj ect m anagem ent , visit t he proj ect m anagem ent inst it ut e and it s d special int erest group on g inform at ion syst em s: www .pm i.org www pm i org www.pm i- issig.org