UNIT-V - CS1021 - Software Project Management
UNIT-V - CS1021 - Software Project Management
CO CO M O ( C o n s t r u c t iv e C o s t M o d e l)
C O C O M O
1 COCOM O I
I , C O C O M O '8 1
I n t h i s s e c t io n t h e m o d e l o f C O C O M O I a l s o c a lle d C O C O M O '8 1 i s p r e s e n t e d . T h e u n d e r ly in g s o f t w a r e l i fe c y le i s a w a t e r f a l l l i fe c y c le . D e t a il e d i n f o r m a t i o n a b o u t t h e r a t in g s a s w e l l a s t h e c o s t d r i v e r s c a n b e fo u n d in [ B o e h m 8 1 ].
B oe h m
p r o p o s e d t h r e e l e v e ls o f t h e m o d e l: b a s ic , i n t e r m e d i a t e ,
d e t a i le d . T h e b a s i c C O C O M O '8 1 m o d e l i s a s i n g l e - v a l u e d , s t a t i c m o d e l t h a t c o m p u t e s s o f t w a r e d e v e lo p m e n t e ffo rt ( a n d c o s t ) a s a fu n c t ion o f p ro g ra m d e liv e re d s o u rc e i n s t r u c t io n s ( K D S I ) . T h e i n t e r m e d ia t e C O C O M O '8 1 m o d e l c o m p u t e s s o f t w a r e d e v e lo p m e n t e f f o r t a s a f u n c t io n o f p ro g ra m s iz e a n d a s e t o f fift e e n " c o s t d r iv e r s " t h a t in c lu d e s u b je c tiv e a s s e s s m e n ts o f p r o d u c t , h a rd w a re , p e r s o n n e l, a n d p r o je c t a t t r ib u t e s . Th e a d v a n c e d o r d e t a i l e d C O C O M O '8 1 m o d e l i n c o r p o r a t e s a l l c h a r a c t e r i s t i c s o f t h e s iz e e x p re s s e d in e s t im a t e d t h o u sa n d
in t e rm e d ia t e v e r s i o n w i t h a n a s s e s s m e n t o f t h e c o s t d r i v e r 's i m p a c t o n e a c h s t e p ( a n a l y s is , d e s i g n , e tc .) o f th e s o f t w a r e e n g in e e r in g p r o c e s s .
- m a n - m o n th / p e r s o n m o n th / s t a ff - m o n th is o n e m o n t h o f e ffo r t b y o n e
2 . e f f o r t a n d d e v e lo p m e n t t i m e ( T D E V ) : T D E V = 2 .5 * M M
T h e c o e f fic e n t s a , b a n d c d e p e n d o n t h e m o d e o f t h e d e v e lo p m e n t . T h e r e a r e t h r e e m o d e s o f d e v e lo p m e n t :
D e v e lo p m e n t M o d e S iz e I n n o v a t io n
P r o j e c t C h a r a c t e r is tic s D e a d li n e / c o n s t r a in t s D ev.
1 .1
B A S IC C O C O M O
B a s ic C O C O M O M M = a * K D SI
b
a 2 .4 3 .0 3 .6
b 1 .0 5 1 .1 2 1 .2 0
c 0 .3 8 0 .3 5 0 .3 2
O r g a n ic S e m i- d e ta c h e d
T D E V = 2 .5 * M M
E m bedded
O v e r v ie w 1 : C O C O M O I ; e q u a t io n s a n d p a r a m e t e r s o f t h e b a s ic C O C O M O I
S e m i n a r o n C o s t E s t im a t io n W S 0 2 / 0 3 C o c o m o II
C ocom o I an d
1 .2
IN T E R M E D IA T E C O C O M O
m o d e l. T h e p a r a m e t e r " b " r e m a in s t h e s a m e i n b o t h m o d e ls . I n t e r m e d ia t e C O C O M O a M M = a * K D SI
b
b 1 .0 5 1 .1 2 1 .2 0
c 0 .3 8 0 .3 5 0 .3 2
O r g a n ic S e m i- d e ta c h e d
3 .2 3 .0 2 .8
T D E V = 2 .5 * M M
E m bedded
O v e r v ie w 2 : C O C O M O I ; e q u a t io n s a n d p a r a m e t e r s o f t h e i n t e r m e d ia t e C O C O M O I
M a n M o n t h c o r r e c t io n i s n o w :
M M
K orr
= EAF * M M
n o m in a l
E q u a t io n 1 : i n t e r m e d i a t e C O C O M O ; m a n m o n t h c o r r e c tio n
N o t e : O n ly t h e I n t e r m e d ia t e f o r m h a s b e e n i m p le m e n t e d b y U S C i n a c a lib r a t e d s o f t w a r e t o o l.
1 .3
A D V A N C E D , D E T A IL E D C O C O M O
T h e A d v a n c e d C O C O M O m o d e l c o m p u te s e f f o rt a s
R PD
DD
CU T
IT
1 .8 0 1 . 3 5 0 .8 5 0 .8 5 1 .0 0 0 .7 5 0 . 9 0
1 .3 5
1 .5 0 1 .2 0
0 .8 5 1 .0 0 1 .0 0 0 .9 0
1 .0 0 0 .8 5
1 .4
AD A C O C O M O
D A
p r o g r a m m in g l a n g u a g e i s b e in g u s e d . T h e u s e
m ade
P r o c e s s M o d e l. A m o n g t h e
i s u s e d t o p r o d u c e c o m p i le r c h e c k e d p a c k a g e s p e c if ic a t i o n s b y t h e P r o d u c t D e s ig n
R e v ie w ( P D R ) S m a ll d e s ig n t e a m s a re u se d
1 .5
E XA M P LE
O F
IN T E R M E D IA T E M M = ( 1 .1 5 * 1 .0 6 * 1 .1 3 * 1 .1 7 ) * 3 .2 *
C O C O M O R e q u ir e d : a u t o m a t io n p ro je c t . P ro je c t = o r g a n ic ( a = 3 .2 , b = 1 .0 5 , d a ta b a s e s y s te m fo r an o ffic e
K o rr
3 .0 M M M M
1 .0 5
K o rr K o rr
= 1 . 6 1 * 3 . 2 * 3 .1 7 = 1 6 .3 3
c = 0 .3 8 ), 4 m o d u le s t o i m p le m e n t : d a ta e n try d a ta u p d a te q u e ry r e p o rt g e n e r a to r S y s te m S IZ E 0 .6 K D S I 0 .6 K D S I 0 .8 K D S I 1 .0 K D S I 3 .0 K D S I H ow
T D E V = 2 .5 * 1 6 .3 3 TD EV = 7 .2 3
0 .38
(> 7 m o nth s
to
c o m p le t e )
m any
p e o p le
s h o u ld
be
h ire d ? E ff o r t s a r e r a t e d a s fo ll o w s ( a ll o t h e r s n o m in a l, 1 .0 ): c o s t d r iv e r s c o m p le x it y s to ra ge e x p e r ie n c e p r o g c a p a b ilit ie s le v e l h ig h h ig h lo w lo w EA F 1 .1 5 1 .0 6 1 .1 3 1 .1 7 M M
K o rr
TD EV
te a m
m e m bers 1 6 .3 3 / 7 .2 3 = 2 .2 6 m e m b e rs ) (> 2 te am
1 .6
AD VANTAG ES
O F
h i s t o r ic a l d a t a w h ic h i s n o t a lw a y s a v a ila b le
C O C O M O
2 C O C O M O II
II,
C O C O M O
2 0 0 0
A t t h e b e g i n n i n g a n o v e r a ll c o n t e x t i s g i v e n w h e r e t h e n e e d o f t h e r e e n g in e e r in g o f C O C O M O I i s s tre s se d a s w e l l a s t h e f o c u s e d i s s u e s f o r t h e n e w C O C O M O v e r s io n a r e p r e s e n te d .
2 .1
R E E N G IN E E R I N G C O C O M O I N E E D S n e w s o ft w a re p r o c e s s e s n e w p h e n o m e n a : s iz e , r e u s e n e e d f o r d e c is io n m a k in g b a s e d o n i n c o m p le t e
i n f o r m a t io n
2 .2 Th e as: 1 .
F O C U S E D IS S U E S r e e n g in e e r in g p r o c e s s f o c u s s e d o n is s u e s s u c h
n o n - s e q u e n t ia l
and
r a p i d - d e v e lo p m e n t
proc ess
m o d e ls 2 . r e u s e - d r iv e n pa ck a ges 3 . r e e n g in e e r in g [ re u s e d , t ra n s l a te d co de a p p ro a c h e s in v o lv in g c o m m e r c i a l - o f f- t h e - s h e lf ( C O T S )
m i d d l e w a re 7. 8. s o f t w a r e p r o c e s s m a t u r it y e f fe c t s p r o c e s s - d r iv e n q u a lit y e s t im a t io n
2 .3 1.
C O C O M O 2. K e y th e s t ru c tu re o f C O C O M O I I t o t h e fu t u r e s o ft w a r e m a r k e t p la c e
s e c to rs 3. K e y t h e i n p u t s a n d o u t p u t s o f t h e C O C O M O I I s u b m o d e ls t o t h e l e v e l o f i n fo r m a t io n
a v a i la b le 4. E n a b le t h e C O C O M O II s u b m o d e ls t o b e t a i l o r e d t o a p r o j e c t 's p a r t i c u l a r p r o c e s s
2 .4
T H R E E P R IM A R Y P R E M I S E S P
A R TIC U LA R
RO C ES S
RIV ER S
c u rre n t
and
fu t u re
s o ft w a re
p ro je c t s
t a il o r
t h e ir
p ro c e s s e s
to
in c lu d e C O T S / r e u s a b le a n d oth e r s c h e d u le r e l i a b il it y
I N F O R M A TIO N
s o ft w a r e
a v a il a b i li t y ,
d e g re e
o f u n d e r s t a n d in g
a r c h it e c t u r e s
c o n s t r a in t s
as
s iz e
an d
r e q u i re d
: C o n s is t e n c y b e t w e e n g r a n u la r it y o f t h e s o ft w a r e m o d e l a n d t h e in fo r m a t i o n
2 .5
a v a ila b le R
AN G E ES TIM A TES
c o a r s e - g r a in e d
cost
d r iv e r
in f o r m a t io n
in
th e
e a r ly
p ro je c t
s ta g e s ,
and
i n c r e a s in g ly f i n e g r a in e d in f o r m a t io n t ie d to th e in la t e r st a ge s. d e g re e of N ot p o in t of e s tim a te s o f s o ftw a r e co st an d e ff o rt , bu t
ra th e r ra n g e e s t im a t e s in p u ts . d e fin it io n th e e s t im a t io n
D IF F E R E N C E S B E T W E E N C O C O M O I A N D
C O C O M O II
T h e m a jo r d iff e r e n c e s b e t w e e n C O C O M O I A N D C O C O M O I I a re : C O C O M O '8 1 r e q u ir e s s o ft w a r e s i z e i n K D S I a s a n i n p u t , b u t C O C O M O I I i s b a s e d o n K S L O C ( lo g i c a l c o d e ) . T h e m a jo r d i ff e r e n c e b e t w e e n D S I a n d S L O C i s t h a t a s i n g le S o u r c e L i n e o f C ode m ay be s e v e r a l p h y s ic a l l in e s . F o r e x a m p le , a n " i f - t h e n - e ls e " s t a t e m e n t w o u ld b e c o u n t e d a s o n e S LO C , but m i g h t b e c o u n te d a s s e v e ra l D S I. C O C O M O I I a d d r e s s e s t h e f o l lo w in g t h r e e p h a s e s o f t h e s p ir a l l i fe c y c l e : a p p lic a t io n s d e v e lo p m e n t, e a r l y d e s i g n a n d p o s t a r c h it e c tu r e C O C O M O '8 1 p r o v id e s p o i n t e s t im a t e s o f e f f o r t a n d s c h e d u le , b u t C O C O M O I I p r o v id e s l i k e l y ra n g es o f e s t im a t e s t h a t r e p r e s e n t o n e s t a n d a r d d e v ia t io n a r o u n d t h e m o s t l i k e ly e s t im a t e . T h e e s t im a t io n e q u a t io n e x p o n e n t i s d e t e r m in e d b y f i v e s c a le f a c t o r s ( in s t e a d o f th e th ree d e v e lo p m e n t m o d e s ) C h a n g e s i n c o s t d r iv e r s a r e : A d d e d c o s t d riv e rs ( 7 ): D O C U , R U S E , P V O L , P L E X , L T E X , P C O N , S IT E D e le te d c o s t d r iv e r s ( 5 ): V I R T , T U R N , V E X P , L E X P , M O D P A l t e r t h e r e t a i n e d r a t i n g s t o r e f le c t m o r e u p - d o - d a t e s o f t w a r e p r a c t ic e s 1 6 1 C O C O M O I I a d j u s t s f o r s o ft w a r e r e u s e a n d r e e n g in e e r in g w h e r e a u t o m a t e d t o o ls a r e D a t a p o in t s in C O C O M O I : 6 3 a n d C O C O M O I I :
u s e d fo r t r a n s la t io n o f e x is t in g s o ft w a r e , b u t C O C O M O '8 1 m a d e l i t t le a c c o m m o d a t io n f o r t h e s e fa c to r s C O C O M O I I a c c o u n t s f o r r e q u ir e m e n t s v o la t ilit y i n i t s
e s t im a t e s
o II
C O C O M O II M O D E L D E F IN IT IO N
C O C O M O I I p r o v id e s t h r e e s t a g e s e r ie s o f m o d e ls f o r e s t i m a t io n o f s o ft w a r e p r o je c ts :
PPLIC A TIO N
O M PO S ITIO N M O D EL
fo r e a r lie s t p h a s e s o r s p ir a l c y c le s [ p r o to ty p in g , a n d a n y o t h e r
p r o t o t y p in g o c c u r r in g l a t e r i n t h e l ife c y c le ]. E
A R LY
ES IG N
M O D EL
fo r n e x t p h a s e s o r s p ir a l c y c le s . I n v o lv e s e x p lo r a t io n o f a r c h it e c tu r a l
-A
R C H ITEC TU R E M O D EL
: o n c e t h e p r o j e c t i s r e a d y t o d e v e lo p a n d s u s t a i n a f i e ld e d s y s t e m i t
3 .6
N O M IN A L S C H E D U L E E S T IM A T IO N E Q U A T IO N S ( N S )
T h e E a r l y D e s ig n a n d P o s t - A r c h it e c t u r e m o d e l u s e t h e s a m e a p p r o a c h f o r p r o d u c t s i z in g ( i n c lu d in g re u s e) a n d f o r s c a l e f a c t o r s a s w e l l a s f o r e s t im a t i n g t h e a m o u n t o f e f f o r t ( P M t a k e t o d e v e lo p (TD EV
NS NS
) a n d c a le n d a r t i m e i t w il l
) a s o ft w a r e p r o je c t . T h e f o r m u la o f t h e n o m in a l - s c h e d u le ( N S ) i s
g iv e n h e re :
n
PM
N S
A x S iz e
x
i
EM
1 5
w h e re
2 .9 4
( fo r
C O C O M O
E q u a t io n m o n th
P e rs on
I I .2 0 0 0 )
w h ere
0 .0 1 x
j
SF
1
w h e re
0 .9 1
( fo r
C O C O M O
TD EV
N S
C x(P M
N S
I I .2 0 0 0 ) E q u a tio n
5
T im e
to
w h ere
0 .2 x 0 .0 1 x
j
SF
1
d e v e lo p
j
w h e r e F = D + 0 .2 x ( E - B )
and 0 .2 8
3 .6 7
an d
In p u ts: A =
E f f o r t c o e f fi c ie n t , E = s c a l e f a c t o r s ( 5 ) w h i c h a c c o u n t f o r r e l a t iv e e c o n o m ie s o r
E q u a t io n 4 : S iz in g e q u a t io n s
In p u ts : R E V L = s o u rc e c o d e in
R e q u ir e m e n ts E v o lu tio n a n d V o la t ilit y ( 3 .7 .3 p . 1 0 ) , N e w
K S LO C
n e w
t h o u s a n d s o f s o u r c e l i n e s o f c o d e , t h e r e s t o f E q u a t io n 4 w il l b e d i s c u s s e d i n s e c t io n 3 . 7 .1 A R e u s e M ode l p. 9 .
1 .0 t h e
e c o n o m ie s o f s c a l e , i f E = 1 . 0 i t i s i n b a l a n c e , i f E > 1 . 0 t h e p r o je c t e x h ib it s d i s e c o n o m ie s o f s c a le , d u e t o t w o m a i n f a c t o r s : g r o w t h o f i n t e r p e r s o n a l c o m m u n i c a t io n s o v e r h e a d a n d g r o w t h o f l a r g e s y s t e m in t e g ra t io n o v e rh e a d .
3 .7
C O D E C A T E G O R Y O R D IS A M B IG U A T IO N
F o r t h e d e t e r m in a t io n o f s i z e c o d e i s t h e b a s is . B u t c o d e c a n h a v e d i f fe r e n t s o u r c e s . T h e s e s o u r c e s a r e b r i e f ly d i s c u s s e d a n d s o m e g u id e lin e s f o r q u a n t if y in g s o ft w a r e a r e g i v e n T a b le 3 s u m m a r i z e s t h i s e x c u r s io n .
New code: C o m p o s it io n
n e w c o d e w r it t e n m a n u a lly ( w it h o u t a n y I C A S E ; f o r I C A S E s e e 6 .3 A p p l ic a t io n s
3 .7 .1 A R e u s e M o d e l A n a n a ly s is o f t h e N A S A S o ftw a re E n g in e e rin g L a b o ra t o ry o f re u s e c o s t s in d ic a t e s t h a t t h e
T h e f o l lo w in g e q u a t io n i s u s e d t o c o u n t t h e m o d u le i n t e r fa c e s N t o b e c h e c k e d i f a m o d u l e k i s m o d i f ie d o u t o f m 5 N = k x ( m - k) + k x ( ( k - 1 ) /2 ) s o f t w a r e m o d u le s . E q u a t io n
A s p r e v i o u s l y m e n t io n e d t h e C O C O M O I I t r e a t s s o f t w a r e r e u s e a s n o n l i n e a r . T h i s i n v o lv e s e s t i m a t in g t h e a m o u n t o f s o f t w a r e t o b e a d a p t e d a n d t h r e e d e g r e e - o f- m o d if ic a t io n f a c t o r s : p e r c e n t a g e - o f d e s i g n m o d i fie d ( D M ) , - o f c o d e m o d i fi e d ( C M ) , - o f i n t e g r a t io n e f f o r t r e q u ir e d f o r a d a p t e d s o f t w a r e ( I M ) . T h e d e t a i le d r a t in g s c a n b e fo u n d in [ B o e h m e t a l. 2 0 0 0 a ]. F u rth e r i n c re m e n ts a r e :
-
p e r c e n t a g e o f s o f t w a r e u n d e r s t a n d in g i n c r e m e n t ( S U ) , w h ic h c o n s is t s o f t h r e e s u b - fa c t o r s :
d e g r e e o f A s s e s s m e n t a n d A s s im ila t io n ( A A ) , w h ic h s t a t e s t h e a p p r o p r ia t io n t o t h e
a p p l i c a t io n a n d t h e i n t e g r a t io n ( d o c u m e n t a t io n , t e s t a n d e v a lu a t io n m o d u le s a v a ila b le ? ) i n t o t h e o v e r a ll p r o d u c t
-
d e g r e e o f p r o g r a m m e r s u n f a m il ia r it y ( U N F M ) , w h i c h i s 0 . 0 i f t h e p r o g r a m m e r w o r k s w it h
t h e s o ft w a re e v e ry d a y . T h e e q u a t io n ( E q u a t io n 4 ) c a n b e f o u n d i n s e c t io n 3 . 6 8 . N o t e : a t t h e w o r s t c a s e , i t c a n t a k e t w ic e th e e ffort to m o d ify a re u s e d m o d u le t h a n it t a k e s t o d e v e lo p it a s n e w ! T h e b e s t c a s e fo l lo w s a o n e fo r o n e c o r r e s p o n d e n c e b e t w e e n a d a p t in g a n e x i s t in g p r o d u c t a n d d e v e l o p in g i t f r o m s c r a tc h .
3 . 7 . 2 A u t o m a t ic a l ly t r a n s la t e d c o d e T h i s i s a n a d d i t io n a l r e f in e m e n t f o r t h e C O C O M O I I r e u s e m o d e l t o e s t im a t e t h e c o s t s o f s o ftw a re r e e n g i n e e r i n g a n d c o n v e r s i o n w h e r e a u t o m a t e d t o o l s a r e u s e d f o r s o f t w a r e r e s t r u c t u r in g . I t i s se e n as a s e p a r a t e a c t iv it y f r o m d e v e lo p m e n t .
P M A u t o = ( A d a p te d S L O C ( A T /1 0 0 ) ) / A T P R O D code
E q u a t io n 6 : a u t o m a t ic a lly t r a n s la t e d
PM =
Auto
E s t im a t e d e f fo r t o f t h e a u t o m a t e d t r a n s la t io n d e fa u lt p r o d u c t iv i t y v a lu e fo r a u to m a t e d tr a n s la tio n is 2400 s o u rc e s ta t e m e n t s pe r
A TPR O D =
p e r s o n m o n th . T h is v a lu e can v a ry w it h d i ffe re n t t e c h n o lo g ie s .
AT =
p e rc e n ta g e
of
th e
code
th a t
is
r e - e n g in e e r e d
by
a u t o m a t ic
t r a n s la t io n . I t
is
s t ro n g
in t h e
S ize =
( 1 + ( R E V L / 1 0 0 ) ) x S i ze
E q u a t io n v o l a t ilit y
r e q u ir e m e n t s
e v o lu t io n
and
CODE a u t o m a t ic a lly C A TE G O R Y a p p ro a c h b la c k box w h ite & m o d ific a t io n s e ffo rt S LO C or U F P e s t im a tio n v ia S L O C o r U F P p r o d u c t iv it y ra te Parameters a d ju s t m e n t s to Reuse (N S) not a n n o t a t io n yes r a r e ly 0% yes s e p a ra t e t r a n s la t io n s p e c ia l P o in t s applicable 0 % -1 0 0% not or UFP applicable A p p lic a t io n S LO C box b la c k - b o x s c ra tch h re u s e d a d a p te d t r a n s la t e d CO TS com p on en t new (IC A SE ) s c ra t c n ew
n ew
n o t e CM 0% DM
code
i n c lu d e d in n o m in a ls c h e d u le
y e s
no
n o s e p a ra te
n o s e p a ra te y e s
equ a t io n no (s ee 6 .3 A p p lic a t io n s y e s C om p o s it io n p
y e s
0%
. 1 6 )
0 % 0 % 1 0 0 % 0 %
0% 100% 0% , u su a lly IM bu t can AA SU U N FM v e r y s m a ll 0 % -8 % n ot a p p lic a b le be > 100% 0 % -8 % 0 % -50% 0 -1 a p p l ic a b le T a b le 3 :cod e t y p e s o r d i s a m b ig u a t io n a p p l ic a b le 0 % -8 % not 0 % -8 % not c ou ld be m o d e ra te & 0 % -1 0 0 % 0 % -1 0 0 % IM
T u e s d a y , D e c e m b e r 3 , 2 0 0 2 , N a n c y M e r lo - S c h e t t 2 0
1 0 of
S e m in a r 0 2 /03
on
C ost
E s t im a t io n
W S
C ocom o C o c o m o II
and
D E V E LO PM E N T
E FFO R T
E S T IM A T E S
4 .1 A
S IZ IN G
g o o d s i z e e s t i m a t e i s v e r y i m p o r t a n t f o r a g o o d m o d e l e s t i m a t e . H o w e v e r d e t e r m i n in g s i z e
c a n b e v e ry c h a lle n g in g b e c a u s e p r o je c t s a r e g e n e r a lly c o m p o s e d o f n e w , r e u s e d ( w ith o r w it h o u t m o d i f i c a t io n s ) a n d a u t o m a t ic a lly t r a n s la t e d c o d e . T h e b a s e l in e s iz e i n C O C O M O I I i s a c o u n t o f n e w l i n e s of code . S L O C is d e fin e d s u ch t h a t o n ly s o u rce lin e s t h a t a re D E L IV E R E D a s p a rt o f t h e p ro d u c t a re in c lu d e d - - t e s t d r i v e r s a n d o t h e r s u p p o r t s o f t w a r e ( - a s l o n g a s t h e y a r e n 't d o c u m e n t e d a s c a r e f u l l y a s s o u rc e c o d e - is e x c lu d e d ). O n e S L O C i s o n e l o g ic a l s o u r c e s t a t e m e n t o f c o d e ( e . g . d e c la r a t io n s a r e c o u n t e d , c o m m e n ts n o t) I n C O C O M O I I e ffo r t is e x p r e s s e d a s p e r s o n m o n t h s ( P M ). P e r s o n m o n th is t h e a m o u n t o f t im e o n e p e rs o n s p e n d s w o r k in g o n t h e s o f t w a r e d e v e lo p m e n t p r o j e c t f o r o n e m o n t h . C o d e s i z e i s e x p r e s s e d i n th o u sa n d s o f s o u r c e lin e s o f c o d e ( K S L O C ) . T h e g o a l is t o m e a s u r e t h e a m o u n t o f in t e lle c t u a l w o r k p u t in to p ro g ra m d e v e l o p m e n t . C o u n t in g s o u r c e l in e s o f C o d e ( S L O C ) t a k e s a c c o u n t o f n e w l i n e s o f c o d e ( r e u s e d code h a s to be a d j u s t e d ) . T h e r e a r e t w o p o s s ib i lit ie s : e i t h e r t o c o u n t t h e s o u r c e l i n e s o f c o d e ( w i t h t h e S o f t w a r e E n g i n e e r in g I n s t it u t e ( S E I I ) c h e c k lis t s o r t o o l s u p p o r t e d ( s e e 1 0 T o o ls p . 1 9 ) ) o r t o c o u n t t h e u n a d ju s t e d f u n c t io n p o in t s a n d to c o n v e rt th e m c o u n t in g t h e u n a d ju s t e d f u n c t io n p o i n t s ( U F P ) a s w e ll a s t h e r a t i o s f o r t h e c o n v e r s i o n c a n b e f o u n d i n [ B o e h m e t a l. 2 0 0 0 a ] a n d [ c o n v e r s io n t a b le s f o r S L O C / U F P ] . v ia " b a c k firin g " t a b le s t o s o u rc e lin e s o f c o d e . F o r fu rt h e r in fo rm a t io n o n
4 .2
TH E S C A LE F A C TO R S
T h e f i v e S c a le F a c t o r s a r e : 1 . P R E C P r e c e d e n te d n e s s ( h o w n o v e l t h e p r o je c t is fo r t h e o r g a n iz a tio n ) 2 . F L E X D e v e l o p m e n t F l e x ib i li t y 3 . R E S L A r c h i t e c t u r e / R i s k R e s o l u t io n 4 . TE A M Te am C o h e sion
5 . P M A T P r o c e s s M a t u r it y R ESL
S c a le ( W i) PR E C
F a c t o rs F LE X TE AM
PM AT a n n o t a t io n If a p ro d u c t is s i m il a r to s e v e ra l D e s c ri b e i n f lu e n c e s p ro je c t , th e n th e th a t M o de th e d id , o r i g in a l la r g e ly D e v e lo p m e n t in t r in s ic to a m u ch th e sam e
p re c e d en ted n ess
p ro ject a n d u n c o n t r o lla b le
C o m b in e s R is k E lim in a t io n A da). a c c o u n ts t u r b u le n c e a n d in
D e s ig n
T h o ro u g h n e s s
an d
I d e n t i fy c o n t r o lla b le s
m an a ge m en t
(tw o
s c a le
fa c t o rs
in
b y
w h ic h
p ro je c ts of s ca le
c an by
fo r
th e
s o u rc e s o f
of
p ro je c t
e n t ro p y
b e c au s e th e
s y n c h r o n iz in g s t a k e h o ld e r s . t im e fo r r a t in g : 1 . by
fo r r a t in g : p r o j e c t s t a r t . T w o w a y s th e re s u lt s o f an
C ocom o T a b l e 4 : s c a le f a c t o r s d e s c r ip t io n fo r C O C O M O II C o c o m o II
and
V e r y H ig h
E x t r a H ig h
la r g e ly fa m ilia r S c a le F a c t o r s f o r C O C O M O I I E a r ly D e s ig n a n d P o s t - A r c h it e c t u r e M o d e ls S c a le F a c t o r s ( W i) PR E C t h o r o u g h ly g e n e r a lly u n p re c e d e n te d fa m ilia r F LE X r ig o r o u s o c c a s io n a l r e la x a t io n som e r e la x a t io n c o n f o r m ity R ESL lit t le ( 2 0 % ) g e n e r a lly (7 5 % ) TE AM v e r y d iffic u lt i n t e r a c t io n s s o m e d i ff ic u lt i n t e r a c t io n s c o o p e r a t iv e i n t e r a c t io n s PM AT W e ig h t e d a v e ra g e of "Yes" a n s w e rs to C M M M a t u r it y b a s ic a lly c o o p e r a t iv e la r g e ly som e (40% ) o ft e n (6 0 % ) g e n e ra l u n p re c e d e n te d u n p re c e d e n t e d h i g h ly c o o p e r a tiv e la r g e ly s o m ew h at V e ry L o w Lo w N o m in a l H ig h som e g o a ls c o n f o r m ity m o s t ly (1 0 0 % )
t h r o u g h ly fa m ilia r g e n e ra l
(9 0 % )
fu ll
s e a m le s s
in t e r a c tio n s
Q u e s t io n n a ir e
T a b le
5:
S c a le
fa c t o rs
fo r
C O C O M O II
4 .3
C O S T D R IV E R S
C O C O M O I I h a s 7 t o 1 7 m u lt ip lic a t iv e f a c t o r s t h a t d e t e r m in e t h e e f fo r t r e q u ir e d t o c o m p le t e a s o f t w a r e p r o je c t . A l l c o s t d r i v e r s h a v e q u a lit a t iv e r a t in g l e v e ls ( 'e x t r a l o w ' t o 'e x t r a h i g h ') t h a t e x p r e s s t h e i m p a c t o f t h e d r iv e r a n d a c o r r e s p o n d i n g s e t o f e f f o r t m u lt ip l ie r . T h e n o m i n a l l e v e l a l w a y s h a s a n e f f o r t m u lt i p l ie r ( E M ) o f 1 . 0 0 , w h i c h d o e s n o t c h a n g e t h e e s t i m a t e d e f f o r t . S o a c o s t d r i v e r 's q u a li t a t iv e r a t in g i s t r a n s la t e d i n t o a q u a n t i t a t i v e o n e f o r u s e i n t h e m o d e l. T h e C O C O M O I I m o d e l c a n b e u s e d t o e s t im a t e e f fo r t a n d s c h e d u le f o r t h e w h o le p r o je c t o r f o r a p r o j e c t t h a t c o n s i s t s o f m u l t ip le m o d u le s . T h e s i z e a n d c o s t d r i v e r r a t i n g s c a n b e d iffe re n t fo r e a c h m o d u le , w i t h t h e e x c e p t io n o f t h e R e q u i r e d D e v e lo p m e n t S c h e d u le ( S C E D ) c o s t d r i v e r a n d t h e s c a l e f a c to rs . I n t h e E a r l y D e s ig n m o d e l a r e d u c e d s e t o f m u l t i p lic a t i v e c o s t d r i v e r s i s u s e d a s s h o w n i n T a b l e 6 . T h e e a rly c o s t d r i v e r s a r e o b t a in e d b y c o m b in in g t h e P o s t - A r c h it e c t u r e m o d e l c o s t d r i v e rs . F o r e x a m p l e , i f a p r o j e c t w i l l d e v e l o p s o f t w a r e t h a t c o n t r o l s a n a i r p l a n e 's f l i g h t , t h e R e q u i r e d S o ftw a re R e l ia b i lit y ( R E L Y ) c o s t d r i v e r w o u ld b e s e t t o 'v e r y h ig h '. T h a t r a t in g c o r r e s p o n d s t o a n e f f o r t m u l t ip li e r o f 1 . 2 6 , m e a n in g t h a t t h e p r o j e c t w ill r e q u ir e 2 6 % m o r e e f fo r t t h a n a t y p ic a l s o ft w a r e p r o je c t.
E a r l y D e s ig n c o s t d r iv e r s d r i v e rs
P o s t - A r c h ite c t u r e c o s t
( C o u n t e rp a rt c o m b in e d ) P ro d u c t c o m p le x it y R USE R e q u ir e d r e u s e P l a t f o r m d iffic u lt y PERS P e rs o n n e l PR E X c a p a b ilit y F C IL P e rs o n n e l SC E e x p e r ie n c e D F a c i li t i e s R e q u ir e d S c h e d u le D e v e lo p m e n t LTE X T O O L , S ITE SC ED AEXP, P E XP , PC O N AC AP, PC A P , PVO L P D IF R USE T IM E , STOR , r e lia b ilit y and R C PX R E LY, D O C U D ATA, CPLX,
T a b l e 6 : E ffo r t M u l t ip lie r s f o r t h e E a r ly D e s ig n a n d P o s t A r c h it e c t u r e
4 .4
C O M P A R I S O N O F T H E E A R L Y D E S IG N M O D E L A N D P O S T - A R C H IT E C T U R E
ro u g h e s t im a t e s an d d u ra ti o n a r c h it e c t u r e i s d e t e r m in e d .
s o f t w a re l i f e a r c h it e c t u r e h a s b e e n d e v e lo p e d , v a li d a t e d
d r i v e rs
set of 17 fo u r
m u l t i p li c a t i v e
c o s t d r iv e r s g r o u p e d in t o
c a t e g o r ie s P e rs o n n el fa c to rs , i n v o lv e s e x p lo r a t io n a l t e r n a t iv e s o ft w a re / s y s t e m an d c o n c e p ts o p e r a t io n of a r c h it e c t u r e of p a r a lle l t h e of th e
( P ro d u c t
f a c t o rs ,
P l a tf o rm
fa c t o r s ,
P ro je c t
fa c to rs ) .
Th e se
fo u r
c a t e g o r ie s a r e fo u r c a t e g o r ie s o f C O C O M O '8 1 . M a n y
s im ila r t o t h e
o r re m o v e d
m a in t e n a n c e
of
s o ftw a re p ro d u c t T a b l e 7 : c o m p a r is o n o f t h e E a r ly D e s ig n m o d e l a n d P o s t - A r c h it e c t u r e m ode l
m o d e l e x te n s io n s
E q u a t io n 8 : C O C O T S e ffo r t e s t im a t io n
C h a n g e m e tric s :
P ro c e s s a n d P ro je c t M e tric s
O v e r v ie w
S o f t w a r e p r o c e s s a n d p r o je c t m e t r ic s a r e q u a n t it a t iv e m e a s u r e s t h a t e n a b le s o f t w a r e e n g in e e r s t o g a in in s ig h t in t o t h e e f f ic i e n c y o f t h e s o f t w a r e p r o c e s s a n d t h e p r o je c t s c o n d u c t e d u s in g t h e p r o c e s s f r a m e w o r k . I n s o f t w a r e p r o je c t m a n a g e m e n t , w e a r e p r im a r ily c o n c e r n e d w it h p r o d u c t iv it y a n d q u a lit y m e t r ic s . T h e r e a r e f o u r r e a s o n s f o r m e a s u r in g s o f t w a r e p r o c e s s e s , p r o d u c t s , a n d r e s o u r c e s ( t o c h a r a c t e r iz e , t o e v a lu a t e , t o p r e d ic t , a n d t o im p r o v e ) .
P r o c e s s a n d P r o je c t M e t r ic s
M e t r ic s s h o u ld b e c o lle c t e d s o t h a t p r o c e s s a n d p r o d u c t in d ic a t o r s c a n b e a s c e r t a in e d P r o c e s s m e t r ic s u s e d t o p r o v id e in d ic t o r s t h a t le a d t o lo n g t e r m p r o c e s s im p r o v e m e n t P r o je c t m e t r ic s e n a b le p r o je c t m a n a g e r t o o o o o A s s e s s s t a t u s o f o n g o in g p r o je c t T r a c k p o t e n t ia l r is k s U n c o v e r p r o b le m a r e b e f o r e t h e y g o c r it ic a l
A d ju s t w o r k f lo w o r t a s k s
E v a lu a t e t h e p r o je c t t e a m s a b ilit y t o c o n t r o l q u a lit y o f s o f t w a r e w r o k p r o d u c t s
P r o c e s s M e t r ic s
P r iv a t e p r o c e s s m e t r ic s ( e . g . d e f e c t r a t e s b y in d iv id u a l o r m o d u le ) a r e o n ly k n o w n t o b y t h e in d iv id u a l o r t e a m c o n c e r n e d . P u b lic p r o c e s s m e t r ic s e n a b le o r g a n iz a t io n s t o m a k e s t r a t e g ic c h a n g e s t o im p r o v e t h e s o f t w a r e p r o c e s s . M e t r ic s s h o u ld n o t b e u s e d t o e v a lu a t e t h e p e r f o r m a n c e o f in d iv id u a ls . S t a t is t ic a l s o f t w a r e p r o c e s s im p r o v e m e n t h e lp s a n d o r g a n iz a t io n t o d is c o v e r w h e r e t h e y a r e s t r o n g a n d w h e r e a r e w e e k .
S t a t is t ic a l P r o c e s s C o n t r o l
1. 2. 3. 4. 5. 6.
P r o je c t M e t r ic s
S o ftw a re M e a s u re m e n t
S iz e - O r ie n t e d M e t r ic s
F u n c t io n - O r ie n t e d M e t r ic s
R e c o n c ilin g
L O C a n d F P M e t r ic s
O b je c t - O r ie n t e d M e t r ic s
N u m b e r o f s c e n a r io s c r ip t s ( N S S ) N u m b e r o f k e y c la s s e s ( N K C ) N u m b e r o f s u p p o r t c la s s e s ( e . g . U I c la s s e s , d a t a b a s e a c c e s s c la s s e s , c o m p u t a t io n s c la s s e s , e t c . ) A v e r a g e n u m b e r o f s u p p o r t c la s s e s p e r k e y c la s s N u m b e r o f s u b s y s te m s (N S U B )
U s e C a s e - O r ie n t e d M e t r ic s
D e s c r ib e ( in d ir e c t ly ) u s e r - v is ib le f u n c t io n s a n d f e a t u r e s in la n g u a g e in d e p e n d e n t m a n n e r N u m b e r o f u s e c a s e is d ir e c t ly p r o p o r t io n a l t o L O C s iz e o f a p p lic a t io n a n d n u m b e r o f t e s t c a s e s n e e d e d H o w e v e r u s e c a s e s d o n o t c o m e in s t a n d a r d s iz e s a n d u s e a s a n o r m a liz a t io n m e a s u r e is s u s p e c t U s e c a s e p o in t s h a v e b e e n s u g g e s t e d a s a m e c h a n is m f o r e s t im a t in g e f f o r t
W e b A p p P r o je c t M e t r ic s
N u m b e r o f s t a t ic W e b p a g e s ( N
sp
N u m b e r o f d y n a m ic W e b p a g e s ( N C u s t o m iz a t io n in d e x : C = N
sp
dp
)
sp
/ (N
dp
+ N
N u m b e r o f in t e r n a l p a g e lin k s N u m b e r o f p e r s is t e n t d a t a o b je c t s N u m b e r o f e x t e r n a l s y s t e m s in t e r f a c e d N u m b e r o f s t a t ic c o n t e n t o b je c t s N u m b e r o f d y n a m ic c o n t e n t o b je c t s N u m b e r o f e x e c u t a b le f u n c t io n s
S o f t w a r e Q u a lit y M e t r ic s
( p r o d u c t o p e r a t io n , p r o d u c t r e v is io n , p r o d u c t
u s a b ilit y ( e a s y t o le a r n , e a s y t o u s e , p r o d u c t iv it y in c r e a s e , u s e r a t t it u d e )
= n u m b e r o f e r r o r s f o u n d b e f o r e d e liv e r y o f w o r k p r o d u c t
= n u m b e r o f d e f e c t s f o u n d a f t e r w o r k p r o d u c t d e liv e r y
I n t e g r a t in g M e t r ic s w it h S o f t w a r e P r o c e s s
M a n y s o f t w a r e d e v e lo p e r s d o n o t c o lle c t m e a s u r e s .
A r g u m e n t s f o r S o f t w a r e M e t r ic s
B a s e lin e s
E s t a b lis h in g a m e t r ic s b a s e lin e c a n b e n e f it p o r t io n s o f t h e p r o c e s s , p r o je c t , a n d p r o d u c t le v e ls B a s e lin e d a t a m u s t o f t e n b e c o lle c t e d b y h is t o r ic a l in v e s t ig a t io n o f p a s t p r o je c t ( b e t t e r t o c o lle c t w h ile p r o je c t s a r e o n - g o in g ) T o b e e f f e c t iv e t h e b a s e lin e d a t a n e e d s t o h a v e t h e f o llo w in g a t t r ib u t e s : o o o o d a t a m u s t b e r e a s o n a b ly a c c u r a t e , n o t g u e s s t im a t e s d a t a s h o u ld b e c o lle c t e d f o r a s m a n y p r o je c t s a s p o s s ib le m e a s u r e s m u s t b e c o n s is t e n t a p p lic a t io n s s h o u ld b e s im ila r t o w o r k t h a t is t o b e e s t im a t e d
M e t r ic s f o r S m a ll O r g a n iz a t io n s
M o s t s o f t w a r e o r g a n iz a t io n s h a v e f e w e r t h a n 2 0 s o f t w a r e e n g in e e r s .
B e s t a d v ic e is t o c h o o s e s im p le m e t r ic s t h a t p r o v id e v a lu e t o t h e o r g a n iz a t io n a n d d o n t r e q u ir e a lo t o f e f f o r t t o c o lle c t . E v e n s m a ll g r o u p s c a n e x p e c t a s ig n if ic a n t r e t u r n o n t h e in v e s t m e n t r e q u ir e d t o c o lle c t m e t r ic s , if t h is a c t iv it y le a d s t o p r o c e s s im p r o v e m e n t .
E s t a b lis h in g a S o f t w a r e M e t r ic s P r o g r a m
1. 2. 3. 4. 5. 6. 7. 8. 9.
I d e n t if y b u s in e s s g o a l I d e n t if y w h a t y o u w a n t t o k n o w I d e n t if y s u b g o a ls I d e n t if y s u b g o a l e n t it ie s a n d a t t r ib u t e s F o r m a liz e m e a s u r e m e n t g o a ls I d e n t if y q u a n t if ia b le q u e s t io n s a n d in d ic a t o r s r e la t e d t o s u b g o a ls I d e n t if y d a t a e le m e n t s n e e d e d t o b e c o lle c t e d t o c o n s t r u c t t h e in d ic a t o r s D e f in e m e a s u r e s t o b e u s e d a n d c r e a t e o p e r a t io n a l d e f in it io n s f o r t h e m I d e n t if y a c t io n s n e e d e d t o im p le m e n t t h e m e a s u r e s
1 0 . P r e p a r e a p la n t o im p le m e n t t h e m e a s u r e s
C C P D S -R C a s e S tu d y a n d
S o f t w a r e P r o c e s s T a ilo r in g :
C a s e S tu d y : C C P D S -R P r o je c t O v e r v ie w
C h a r a c t e r is t ic D o m a in
C C P D S -R G r o u n d b a s e d C 3 d e v e lo p m e n t
S iz e /la n g u a g e
1 .1 5 M S L O C A d a
A v e ra g e n u m b e r o f 7 5 p e o p le S c h e d u le 7 5 m o n th s
V e r s io n 2 .3
C C P D S -R C a s e S tu d y O v e r v ie w
O r g a n iz a t io n S u b s y s t e m s /s c h e d u le s It e r a t io n p la n /c o n t e n t C o r e m e t r ic s
D e v e lo p m e n t p r o g r e s s (s iz e w ith r e s p e c t to tim e ) T e s t p r o g r e s s (e v a lu a tio n c r ite r ia w ith r e s p e c t to tim e ) S o ftw a r e a r c h ite c tu r e s ta b ility (n u m b e r s o f o b je c ts w ith r e s p e c t to tim e ) S u b s y s te m s ta b ility (S C O s w ith r e s p e c t to tim e )
M o d u la r ity (S L O C : s c r a p w ith r e s p e c t to tim e ) M o d u la r ity (S L O C % o f to ta l: s c r a p w ith r e s p e c t to tim e ) A d a p ta b ility (r e w o r k w ith r e s p e c t to tim e ) M a tu r ity (r e lia b ility w ith r e s p e c t to tim e ) S C O v o lu m e s (r a w d a ta b y C S C I) C o s t/e ffo r t p a r titio n s b y a c tiv ity C o n c lu s io n s
V e r s io n 2 .3
C C P D S -R O r g a n iz a tio n /R e s p o n s ib ilitie s
S o f t w a r e P r o je c t M a n a g e r 2 p e o p le
C h ie f E n g in e e r 3 p e o p le
A d m in 5 p e o p le
M a jo r m ile s t o n e s S p e c if ic a t io n s
W B S , c o n tra c t C o s t /s c h e d u le
S o f t w a r e E n g in e e r i n g 1 0 p e o p le
A p p lic a t io n s S o f t w a r e 1 0 - > 4 0 p e o p le
T e s t in g 5 - > 2 0 p e o p le
D e m o n s t r a t io n s M e t r ic s N A S C S C I P r o c e s s ( S D P /S S P M ) A r c h it e c t u r e
S S V C S C I A r c h it e c t u r e D C O C S C I C C O C S C I C M P C S C I TA S C S C I S t a n d a lo n e t e s t in g
C M , C C B , te s tb e d s
E n v ir o n m e n t/re s o u rc e s
F o r m a l t e s t in g S t r in g t e s t in g T o o ls /s c e n a r io s
V e r s io n 2 .3
C C P D S -R O v e r v ie w
C o m m o n S u b s y s te m
P D S S u b s y s te m
S T R A T C O M S u b s y s te m
P r o je c t
S iz e
S c h e d u le
Com m on m o n th s PDS m o n th s
60 32
552 STRATCO M m o n th s
KSLO C
36
__________ _ 75
T o ta l m o n th 1159 KSLO C s
7 5 p e o p le a v e ra g e
V e r s io n 2 .3
C o m m o n S u b s y s te m
B u ild C o n te n t
A rc h ite c tu re , te s t s c e n a rio s , m o d e ls
M i s s i o n a l g o r i t h m s , n o n - c r i t i c a l t h r e a d a p p l i c a ti o n s , d i s p l a y s
A s s o c ia te c o n tra c to r in te rfa c e
V e r s io n 2 .3
A d a P r o c e s s M o d e l fo r L a r g e -S y s te m R A D
V e r s io n 2 .3
C o m m o n S u b s y s te m M a c ro p ro c e s s
D e v e lo p m e n t L ife C y c le
In c e p tio n
E la b o r a tio n
A r c h ite c tu r e Ite r a tio n s
C o n s tr u c tio n
R e le a s e It e r a t io n s
SSR
IP D R
PD R
CDR
10
15
20
25
C o n tra c t a w a rd
A r c h i t e c t u r e b a s e li n e u n d e r c h a n g e c o n tro l
C o m p e ti tiv e
d e s ig n p h a s e :
A r c h ite c tu r a l p r o to ty p e s P la n n in g R e q u ir e m e n ts a n a ly s is
E a rly d e liv e ry o f "alpha" c a p a b ility to u s e r
V e r s io n 2 .3
10
C o m m o n S u b s y s te m M ic r o p r o c e s s e s
7 .9
K SLO C PD W CDW TO R TO R
P D W : P re lim in a ry D e s ig n W a lk th ro u g h C D W : C ritic a l D e s ig n W a lk th ro u g h T O R : T u rn o v e r R e v ie w
4 3 .5
A1
PD W CDW TO R TO R D e v e lo p m e n t T est
6 0 .3
A2
PD W CDW TO R TO R
T u r n o v e r fo r c o n fig u r a ti o n c o n tr o l
1 7 2 .1
A3
PD W CDW TO R TO R
6 2 .7
A4
PD W CDW TO R
6 .5
PD W
A5
CDW TO R
353
SSR IP D R PD R CDR
10
15
20
25
30
34
V e r s io n 2 .3
11
C o m m o n S u b s y s te m P ro g re s s
P la n
%
10 0 90
% of SLO C
A c tu a l
K S L O C u n d er b aselin e
80 70 60 75 50 40 30 20 10 25 50 100
10
15
20
25
30
35
10
15
20
25
30
35
C o n tra c t m o n th
IP D R PD R CDR
C o n tra c t m o n th
C D R p ro g re s s :
T r a d itio n a l A p p r o a c h C C P D S -R C o m p le te 94% 47% 12% 8 0 % o f o p e r a tio n a l s o ftw a r e d e m o n s tr a te d A p p ro a c h C o m p le te 10% N e g lig ib le 0% M o d e lin g
S o ftw a r e d e s ig n C o d e d e v e lo p m e n t B a s e lin e u n d e r c h a n g e c o n tr o l F o r m a l te s t P e r fo r m a n c e a s s e s s m e n t
V e r s io n 2 .3
12
C o m m o n S u b s y s te m A d a p ta b ilit y
A rc h ite c tu re firs t
In te g ra tio n d u rin g th e d e s ig n p h a s e D e m o n s t r a t i o n - b a s e d e v a l u a t io n
C o n f i g u r a t io n b a s e li n e c h a n g e m e t r i c s :
C hange 20
10
Im p le m e n t a t i o n C hanges
P r o je c t D e v e lo p m e n t S c h e d u le
15
20
25
30
35
40
V e r s io n 2 .3
13
S o m e G e n e r a l C o n c lu s io n s
C o m m o n s u b s y s te m
In t e r n a l r e u s e
s u b s id iz e d :
1
C o m m o n p r o c e s s /to o ls
N o r m a liz e d $ /S L O C
O v e r a ll s y s t e m s e n g in e e r in g C o s t /S L O C :
0 .5
C om m on PDS
T h is is th e r e a l in d ic a to r o f a m a tu r e ( le v e l 3 /le v e l 4 ) p r o c e s s .
P e r s o n n e l v o la t ility w a s lo w o n t h e c o m m o n s u b s y s te m .
It w a s m u c h h ig h e r o n th e P D S a n d S T R A T C O M s u b s y s te m s .
V e r s io n 2 .3
14
G e n e r a l C o n c lu s io n s (C o n tin u e d )
C C P D S -R a d h e re d to 2 1 6 7 A
P r o c e s s c o u ld h a v e b e e n m u c h m o r e e f f ic ie n t E a r ly ( in it ia lly u n p la n n e d ) d e liv e r y ( m o n t h 3 0 ) o f a u s e f u l in c r e m e n t
M o d e r a t e c o n t r a c t u a l r e q u ir e m e n ts v o la t ility
H e a v y n o n - E C P r e q u ir e m e n t s /d e s ig n v o la t ilit y O n ly 1 m a jo r E C P ( c o m p le t e o v e r h a u l o f t h e in p u t m e s s a g e s e t) C o n t r a c t o r /c u s t o m e r /u s e r r a p p o r t a v o id e d a n in e f f ic ie n t c o n tra c ts b u re a u c ra c y
P e r s o n n e l s k ill:
V e r s io n 2 .3
S t r o n g p r o je c t m a n a g e m e n t , p la n n in g , a n d a r c h it e c tu r e te a m s C o o p e r a t iv e c u s t o m e r /u s e r A v e r a g e a p p lic a t io n /t e s t t e a m
15
C C P D S -R S o ftw a r e T e c h n o lo g y T h r u s ts
C u rre n t T h ru s t
C C P D S -R A p p ro a c h
E S iz e
In t e g r a t e d t o o ls O p e n s y s te m s H a rd w a re p e rfo rm a n c e
D E C /R a tio n a l/c u s to m t o o ls
A u t o m a t io n
V A X /D E C d e p e n d e n t S e v e r a l V A X f a m ily u p g r a d e s C u s t o m - d e v e lo p e d c h a n g e m a n a g e m e n t s y s t e m , m e t r ic s t o o ls , c o d e a u d it o r s
R euse, C O TS
C o m m o n a r c h it e c t u r e p r im it iv e s , t o o ls , p r o c e s s e s a c r o s s a ll s u b s y s t e m s
O b je c t - o r ie n t e d H ig h e r le v e l la n g u a g e s C A S E t o o ls
M e s s a g e - b a s e d , o b je c t - o r ie n t e d a r c h it e c t u r e 100% A da C u s t o m a u t o m a t ic c o d e g e n e r a t o r s f o r a r c h it e c t u r e , m e s s a g e I/O , d is p la y f o r m a t s o u r c e c o d e g e n e r a t io n
D is t r ib u t e d m id d le w a r e
E a r ly in v e s t m e n t in N A S d e v e lo p m e n t f o r r e u s e a c r o s s m u lt ip le s u b s y s t e m s
It e r a t iv e d e v e lo p m e n t P r o c e s s m a t u r it y A r c h it e c t u r e - f ir s t A c q u is it i o n re fo rm m o d e ls
T r a in in g
M o s t ly O J T a n d in t e r n a l m e n t o r in g
V e r s io n 2 .3
16
C C P D S -R M B A S E M o d e ls
S u c c e s s M o d e ls
R e in te r p r e te d D O D -S T D -2 1 6 7 a ; u s e r s in v o lv e d A w a r d fe e flo w d o w n to p e r fo r m e r s
P r o d u c t M o d e ls D o m a in m o d e l a n d a r c h ite c tu r e M e s s a g e -p a s s in g m id d le w a r e (U N A S )
P r o c e s s M o d e ls A d a p r o c e s s m o d e l a n d to o ls e t In c r e m e n ta l b u ild s ; e a r ly d e liv e r y
V e r s io n 2 .3
17
A gend a
M o t iv a t io n
T h e s e a rc h fo r s o ftw a re b e s t p r a c t ic e s S o f tw a r e e c o n o m ic s
T e c h n o lo g y o v e r v ie w s I t e r a t iv e d e v e l o p m e n t A r c h it e c tu re s S E I C M M a n d IS O 9 0 0 0
T a ilo r in g t h e p r o c e s s
P re s e n t th e ra n g e o f
D if f e r e n t p r io r it ie s D if f e r e n t im p le m e n t a t io n s
E x p e r ie n c e a n d r e s u lt s G e n e r a l o b s e r v a tio n s C a s e S t u d ie s a n d r e a l - w o r l d m e t r ic s C o n c lu s io n s
V e r s io n 2 .3
18
C la s s if y in g S y s t e m s
A n a v e ra g e s o f t w a re p ro j e c t: 5 -1 0 p e o p le 1 0 - 1 5 m o n t h d u r a t io n 3 -5 e x te rn a l in te rfa c es S o m e u n k n o w n s , ris k s
H ig h e r T e c h n ic a l C o m p le x it y
- E m b e d d e d , r e a l- t im e , d is t r ib u t e d , f a u lt - t o le r a n t - C u s t o m , u n p r e c e d e n t e d , a r c h it e c t u r e r e e n g in e e r in g - H ig h p e r f o r m a n c e
D o D W e a p o n S y s te m
N a t io n a l A T C S y s t e m
(R o s e , S o D A )
H ig h e r
L a r g e - S c a le
M anagem ent C o m p le x it y
- L a rg e S c a le - C o n tra c tu a l
C o m p le x it y
- S m a ll S c a le - In fo rm a l - S in g le s ta k e h o ld e r - " P r o d u c ts "
D is t r ib u t e d O b je c t s S m a ll S c ie n t if ic S im u la t i o n
O r g a n iz a t io n a l/E n t it y S im u la t i o n
E n t e r p r is e IS IS A p p lic a t io n ( F a m ily o f IS D o D M IS S y s t e m
- M a n y s ta k e h o ld e rs
A p p lic a t io n s )
(O rd e r E n try )
- " P r o je c ts "
L o w e r T e c h n ic a l
- M o s t ly 4 G L , o r c o m p o n e n t - b a s e d
C o m p le x it y
- A p p lic a t io n r e e n g in e e r in g - In t e r a c t iv e p e r f o r m a n c e
V e r s io n 2 .3
19
P r o c e s s T a ilo r in g
H ig h e r T e c h n ic a l C o m p le x ity
M o r e e m p h a s is o n d o m a in e x p e r ie n c e L o n g e r in c e p t io n /e la b o r a t io n p h a s e M o r e it e r a t io n s , r is k m a n a g e m e n t L e s s p r e d ic t a b le c o s t s /s c h e d u le s
H ig h e r M anagem ent C o m p le x it y
V e r s io n 2 .3
M o r e e m p h a s is o n m a n a g e m e n t p e r s p e c t iv e M o r e p r o c e s s f o r m a lit y /c e r e m o n y M o r e e m p h a s is o n t e a m w o r k a n d w in /w in L o n g e r In c e p t io n /e l a b o r a t io n
L o w e r T e c h n ic a l C o m p le x ity
M o r e e m p h a s is o n e x is t in g a s s e t s /k n o w le d g e b a s e S h o r t e r in c e p t io n /e la b o r a t io n p h a s e F e w e r it e r a t io n s M o r e p r e d ic t a b le c o s t s /s c h e d u le s
20
U N IX v s . W in d o w s
H ig h e r T e c h n ic a l C o m p le x ity
D o D W e a p o n S y s te m
G e n e r a lly M ic r o s o f t
T e le c o m N a t io n a l A T C S y s t e m S w it c h
W in d o w s o r W in d o w s N T
E m bedded A u t o m o t iv e
C o m m e r c ia l C o m p ile r
S o ftw a re C a s e T o o l
(R o s e , S o D A )
H ig h e r M anagem ent
L a r g e - S c a le O r g a n iz a t io n a l/E n t it y S im u la t i o n
C o m p le x ity
G e n e r a lly U N IX a n d o t h e r
n o n - W in d o w s p la t f o r m s
L o w e r T e c h n ic a l C o m p le x ity
V e r s io n 2 .3
21
P r o d u c t s v s . P r o je c t s
E m p h a s is a n d f o c u s a r e d if f e r e n t .
P r o d u c t s : M a r k e t - c o n s t r a in e d , s m a ll t e a m s , d r iv e n b y t e c h n ic a l c h a lle n g e s
V a r y in g le v e ls a r e f r e e ly t r a d e d o f f w it h c o s t a n d t im e - t o - m a r k e t
P r o je c t s : C o n t r a c t c o n s t r a in e d , la r g e t e a m s , d r iv e n b y m a n a g e m e n t c h a lle n g e s
F ix e d le v e ls a r e r e q u ir e d a t f ix e d c o s t s a n d s c h e d u le s
T h e s a m e p r o c e s s t h e m e s a p p ly .
H o w e v e r , p r io r it ie s
a r e d if f e r e n t .
V e r s io n 2 .3
22
P ro d u c ts v s . P r o je c ts
T o p 1 0 d is c r im in a t i o n s o f s u c c e s s /f a ilu r e :
P ro d u c ts
P ro je c ts
1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
A r c h it e c t u r e t e a m
s k ill
1.
It e r a t iv e d e v e lo p m e n t A r c h it e c t u r e t e a m s k ill
O b je c t -o r ie n te d te c h n o lo g y 2 . P r o g r a m m in g t e a m s k ill 3. 4.
M a n a g e m e n t t e a m s k ill A c q u is it io n p r o c e s s /r a p p o r t
It e r a t iv e d e v e lo p m e n t C h a n g e m a n a g e m e n t r ig o r 5 . U s e r /c u s t o m e r f o c u s E n v ir o n m e n t in t e g r a t io n L a n g u a g e s /s t a n d a r d s M a n a g e m e n t t e a m s k ill M e g a p r o g r a m m in g
M e g a p r o g r a m m in g 6. 7. 8. 9. C h a n g e m a n a g e m e n t r ig o r E n v ir o n m e n t in t e g r a t io n L a n g u a g e s /s t a n d a r d s O b je c t - o r ie n t e d t e c h n o lo g y s k ill
10.
P r o g r a m m in g t e a m
V e r s io n 2 .3
23
P r o d u c t D is c r im in a to r s
A r c h ite c tu r e /p r o g r a m m in g te a m s k ills a r e p a r a m o u n t.
V e r s io n 2 .3
24
P r o je c t D is c r im in a t o r s
R & D (r e s o lv in g u n k n o w n s in r e q u ir e m e n ts , d e s ig n , a n d t e c h n o lo g y ) is s e p a r a te f r o m u s e f u l in c r e m e n t s ) . p r o d u c tio n (d e v e lo p m e n t o f
A r c h ite c tu r e te a m s k ill is v e r y im p o r ta n t.
M a n a g e m e n t s k ill is v e r y im p o r ta n t.
A p p lic a tio n s te a m
s k ill is le s s im p o r ta n t.
A g o o d a r c h ite c tu r e c a n b e im p le m e n te d b y a n a v e r a g e te a m .
V e r s io n 2 .3
25
B e s t P r a c t ic e s C r o s s R e fe re n c e
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 17. 19. 20. 26. M a k e Q u a l it y # 1 . H i g h - q u a li t y s o f t w a r e i s p o s s i b le . G iv e p ro d u c ts to c u s to m e rs e a rly . D e te rm in e th e p ro b le m b e fo re w ritin g th e re q u ire m e n ts . E v a l u a t e d e s i g n a l t e r n a t iv e s . U s e a n a p p ro p ria te p ro c e s s m o d e l. U s e d iffe re n t la n g u a g e s fo r d iffe re n t p h a s e s . M in im iz e in te lle c tu a l d is ta n c e . P u t t e c h n iq u e s b e f o r e t o o l s . G e t it rig h t b e fo re y o u m a k e it fa s te r. In s p e c t c o d e . G o o d m a n a g e m e n t is m o re im p o rta n t th a n g o o d te c h n o lo g y . P e o p le a re th e h e y to s u c c e s s . P la n to th ro w o n e a w a y . D e s ig n f o r c h a n g e . D e s ig n w ith o u t d o c u m e n ta tio n is n o t d e s ig n . D o n 't t e s t y o u r o w n s o f t w a r e .
V e r s io n 2 .3
26
O u r P r e f e r r e d W o r d in g
1 . D e f in e q u a lit y c o m m e n s u r a t e w it h y o u r o b je c t iv e s 2 . M a k e q u a lit y a s s u r a n c e a t e a m g o a l, n o t a s e p a r a t e d is c ip lin e 3 . G iv e p r o d u c t s t o c u s t o m e r s e a r ly . 4 . D e t e r m in e t h e p r o b le m b e f o r e w r it in g t h e r e q u ir e m e n t s . 5 . E v a lu a t e d e s ig n a lt e r n a t iv e s . 6 . T a ilo r t h e p r o c e s s t o t h e s c a le /d o m a in /c o m p le x it y o f t h e p r o je c t 7 . M in im iz e t h e n u m b e r o f lif e - c y c le r e p r e s e n t a t io n f o r m a t s . 8 . M in im iz e in t e lle c t u a l d is t a n c e ( u s e a n o b je c t o r ie n t e d m e t h o d ) . 9 . P u t t e c h n iq u e s b e f o r e t o o ls . 1 0 . G e t it w o r k in g b e f o r e y o u m a k e it f a s t e r . 1 1 . U s e in s p e c t io n s ju d ic io u s ly 1 2 . G o o d m a n a g e m e n t is m o r e im p o r t a n t t h a n g o o d t e c h n o lo g y 1 3 . P e o p le a r e t h e k e y t o s u c c e s s . 1 7 . E n c o u r a g e e x p e r im e n t a t io n a n d e x p o s u r e o f d e s ig n is s u e s . 1 9 . D e s ig n f o r c h a n g e . 2 0 . B u ild s e lf - d o c u m e n t in g p r o d u c t s r a t h e r t h a n s e lf - s e r v in g d o c u m e n t s . 2 6 . P la n a n d e x e c u t e a t e s t p r o g r a m f r o m d a y 1 .
V e r s io n 2 .3
27
R e c u r r in g T h e m e s o f S u c c e s s
n
C u s t o m e r - u s e r -c o n t r a c to r t e a m w o r k is e s s e n t ia l
R e la t io n s h ip s a r e n o n - a d v e r s a r ia l.
M a n a g e rs a r e p e r fo r m e rs .
T h e y a u t h o r t h e ir o w n p la n s .
R e q u ir e m e n t s / d e s ig n s a r e f lu id a n d t a n g ib le .
M a t u r it y e v o lv e s w h e r e d e s ig n s a r e " g u ilt y u n t il p r o v e n in n o c e n t . R e a l i s s u e s a r e s u r f a c e d a n d r e s o l v e d s y s t e m a t ic a l l y . C h a n g e m a n a g e m e n t o v e r r id e s c h a n g e a v o id a n c e .
" S o m e t h in g " is p e r f o r m in g .
L o w a t t r it io n o f g o o d p e o p le is a s ig n o f s u c c e s s .
V e r s io n 2 .3
28
R e c o m m e n d a tio n s to B u y e r s
n
T r y to a c q u ir e a g o o d p r o d u c t a n d h a v e y o u r c o n tr a c to r m a k e a g o o d p r o f it
In s t a ll a n o n - lin e a c q u is it i o n e n v ir o n m e n t :
D e m a n d d e liv e r y o f e x e c u t a b le e v o lv in g p r o d u c t v e r s io n s .
G e t u s e r s in v o lv e d e a r ly a n d c o n t in u o u s ly .
A d d v a lu e t h r o u g h y o u r o w n e n g in e e r in g s u p p o r t .
D o y o u r o w n m e t r ic s a n a ly s is . C o n s t r u c t s c e n a r io s .
S t r iv e f o r 8 0 % s o lu t io n e a r ly , t h e n e v o lv e t o w a r d 1 0 0 % .
V e r s io n 2 .3
29
R e c o m m e n d a tio n s to C o n tr a c to r s
n
It e r a t iv e d e v e lo p m e n t e x p o s e s im p o r t a n t t r e n d s e a r ly .
G o o d e a r ly p e r f o r m a n c e b r e e d s c o n t in u o u s
success.
P o o r e a r ly p e r f o r m a n c e is a lm o s t im p o s s ib le t o t u r n a r o u n d .
G e t t h e r ig h t m a n a g e m e n t t e a m . G e t t h e r ig h t a r c h it e c t u r e t e a m .
P r o v id e a d e q u a te c a p ita l e n v ir o n m e n ts .
It e r a t iv e d e v e lo p m e n t is m u c h m o r e ( c o m p u t e r ) r e s o u r c e in t e n s iv e O p p o r t u n it ie s f o r a u t o m a t io n m u s t b e e x p lo it e d .
E n a b le r o u n d - t r i p e n g in e e r i n g .
In t e g r a t e d e n v ir o n m e n t s a n d c o m p a t ib le t o o ls .
V e r s io n 2 .3
30
R a tio n a l P r o c e s s S u m m a r y
D e v e lo p m e n t L if e C y c le In c e p t io n E la b o r a tio n T r a n s it io n O b je c t iv e Id e n t if y Revenue o p p o r t u n it y R is k r e s o lu t io n D e v e lo p m e n t User s a t is f a c t io n C o n s tr u c tio n
P ro d u c t
B u s in e s s case
A r c h it e c t u r e and P r o d u c t io n p la n
U s e f u l in c r e m e n t s V e r s io n u p d a te s
C o s t e s t im a te
P r o t o t y p in g O b je c t p o in t s
E a r ly d e s ig n F u n c t io n p o in t s
R is k F o c u s
T e c h n ic a l a n d e c o n o m ic f e a s ib ilit y
S c h e d u le
C ost
D e p lo y m e n t p e r t u r b a tio n s
V e r s io n 2 .3
31
T h e Im p o r ta n c e o f A u to m a tio n
n
P r o c e s s m a tu r ity d e p e n d s o n c a p a b le e n v ir o n m e n ts .
A n a r c h it e c t u r e - f ir s t a n d d e m o n s t r a t io n - b a s e d p r o c e s s is e n a b le d b y o f f - t h e - s h e lf a r c h it e c t u r e c o m p o n e n t s a n d m id d le w a r e . It 's t h e b e s t w a y t o r e m a in h a r d w a r e /t o p o lo g y - in d e p e n d e n t .
V e r s io n 2 .3
32
M a k in g a P o s itiv e E c o n o m ic Im p a c t
C o s t = ( E n v i r o n m e n t ) * ( S i z e ) (P ro c e s s )
E n v ir o n m e n t s a r e t h e k e y t o r e d u c e d " c o e f f ic ie n t s ."
M o r e a u t o m a t io n a n d in t e g r a t io n C h a n g e m a n a g e m e n t a n d c h a n g e fr e e d o m
O b je c t s t e c h n o lo g y is t h e k e y t o r e d u c e " S iz e ."
R e u s e , o f f - t h e - s h e lf p r o d u c t s , a u t o m a t ic c o d e g e n e r a t io n L in e - o f - b u s i n e s s a r c h it e c t u r e s
It e r a t iv e d e v e lo p m e n t is t h e k e y t o r e d u c e d " e x p o n e n t s ."
A r c h it e c t u r e - d r iv e n , c o n t in u o u s in t e g r a t io n , t a n g ib le q u a lit y /p r o g r e s s
M a in t a in a b a la n c e o f e m p h a s is o n a ll 3 t h r u s t s .
V e r s io n 2 .3
33
S o ftw a r e M a n a g e m e n t B a la n c e is K e y
Too lit t le /f e w B u rn o u t a n d a t t r it io n Too m u c h /m a n y In e f f ic ie n c y a n d
P e o p le
b u re a u c ra c y
In a d e q u a t e v is io n
In e f f ic ie n c y
of
R e q u ir e m e n ts d e t a il
change
In a d e q u a t e ROI
In s titu t i o n a l iz a ti o n
In e f f ic ie n c y change
of
In a d e q u a t e q u a lit y
In e f f ic ie n c y
S c h e d u le /c o s t
o f re s o u rc e s
In a d e q u a t e le g a c y
D o c u m e n ta tio n
D ilu t e d p r o d u c t fo c u s
V e r s io n 2 .3
34
N e x t-G e n e r a tio n E n v ir o n m e n ts
R&D w ith a u to m a te d
C u s to m A d hoc N
t o o ls m e th o d s
O f f -t h e - s h e lf t o o ls D e f in e d m e t h o d s
a n d p ro c e s s e s
f f -t h e - s h e lf t o o ls
a n d p ro c e s s e s u m e r o u s la n g u a g e s
Few
la n g u a g e s
a n d f o r m a ts
a n d f o r m a ts
M a n u a l i n t e g r a t io n P r o g r a m m in g f o c u s
fo c u s
c o n s t r u c t io n
V e r s io n 2 .3
35