Professional Documents
Culture Documents
C o n v e n tio n a l S o ftw a re M a n a g e m e n t
1 . T h e b e s t t h in g a b o u t s o f t w a r e is it s f le x ib ilit y : - I t c a n b e p r o g r a m m e d t o d o a lm o s t a n y t h in g . 2 . T h e w o r s t t h in g a b o u t s o f t w a r e is it s f le x ib ilit y :
- T h e a lm o s t a n y th in g c h a r a c te r is tic h a s m a d e it d iffic u lt to p la n , m o n ito r , a n d c o n tr o l s o ftw a r e
d e v e lo p m e n t . 3 . I n t h e m id - 1 9 9 0 s , t h r e e im p o r t a n t a n a ly s e s w e r e p e r f o r m e d o n t h e s o f t w a r e e n g in e e r in g in d u s t r y .
A ll th re e a n a ly s e s g iv e n th e s a m e g e n e ra l c o n c lu s io n : -
W A TE R FA LL
M O D E L
1. 2.
I t is t h e b a s e lin e p r o c e s s f o r m o s t c o n v e n t io n a l s o f t w a r e p r o je c t s h a v e u s e d . W e c a n e x a m in e t h is m o d e l in t w o w a y s : i. I N T H E O R Y ii. I N P R A C T I C E
IN T H E O R Y :-
In
1 9 7 0 , W in s t o n
R oyce
p re s e n te d
p a p e r c a lle d
M a n a g in g
th e
D e v e lo p m e n t o f L a r g e
S c a le S o f t w a r e S y s t e m s a t I E E E W E S C O N . W h e r e h e m a d e t h r e e p r im a r y p o in t s : 1 . T h e r e a r e t w o e s s e n t ia l s t e p s c o m m o n t o t h e d e v e lo p m e n t o f c o m p u t e r p r o g r a m s : - a n a ly s is - c o d in g
- S y s te m
T h e s e s te p s a d d itio n to th e a n a ly s is a n d c o d in g s te p s
- B y t h is t e c h n iq u e , t h e p r o g r a m t im in g , a n d d a t a f lu c t u a t io n s .
d e s ig n e r g iv e s u r e t y t h a t t h e s o f t w a r e w ill n o t f a il b e c a u s e o f s t o r a g e ,
- B e g in t h e d e s ig n p r o c e s s w it h p r o g r a m - W r it e a n o v e r v ie w
d e s ig n e r , n o t t h e a n a ly s t o r p r o g r a m m e r s .
d o c u m e n t t h a t is u n d e r s t a n d a b le , in f o r m a t iv e , a n d c u r r e n t s o t h a t e v e r y w o r k e r o n
t h e p r o je c t c a n g a in a n e le m e n t a l u n d e r s t a n d in g o f t h e s y s t e m .
b ) M a in ta in c u rre n t a n d c o m p le te d o c u m e n ta tio n (D o c u m e n t th e d e s ig n ): - I t is n e c e s s a r y t o p r o v id e a lo t o f d o c u m e n t a t io n o n m o s t s o f t w a r e p r o g r a m s .
- D ue
to
t h is ,
h e lp s
to
s u p p o rt
la t e r
m o d if ic a t io n s
by
s e p a ra te
te s t
te a m ,
s e p a ra te
c u s t o m e r f o r o p e r a t io n a l d e p lo y m e n t is a c t u a lly t h e
c o s t a n d s c h e d u le . - I n o r d e r t o c a r r y o u t p r o p e r t e s t in g t h e f o llo w in g t h in g s t o b e d o n e : i) E m p lo y a t e a m
ii)
o f t e s t s p e c ia lis t s w h o w e r e n o t r e s p o n s ib le f o r t h e o r ig in a l d e s ig n .
E m p lo y v is u a l in s p e c tio n s to s p o t th e o b v io u s e r r o r s lik e d r o p p e d m in u s s ig n s , m is s in g fa c to r s o f
t w o , ju m p s t o w r o n g a d d r e s s e s . iii) T e s t e v e r y lo g ic p h a s e .
ii) C r it ic a l s o f t w a r e r e v ie w d u r in g p r o g r a m iii)
F in a l s o f t w a r e a c c e p t a n c e r e v ie w f o llo w in g t e s t in g .
IN P R A C T IC E :-
- W h a te v e r th e
a d v ic e s t h a t a r e
g iv e n
b y th e
s o ftw a re
d e v e lo p e r s a n d
th e
t h e o r y b e h in d
t h e w a t e r f a ll
m o d e l, s o m e s o f t w a r e p r o je c t s s t ill p r a c t ic e t h e c o n v e n t io n a l s o f t w a r e m a n a g e m e n t a p p r o a c h . P r o je c t s in t e n d e d f o r t r o u b le f r e q u e n t ly e x h ib it t h e f o llo w in g s y m p t o m s : i) P r o t r a c t e d ( d e la y e d ) in t e g r a t io n - I n t h e c o n v e n t io n a l m o d e l, t h e e n t ir e s y s t e m w a s d e s ig n e d o n p a p e r , t h e n im p le m e n t e d s y s te m t e s t in g t o
iii) R e q u ire m e n ts -D riv e n F u n c tio n a l D e c o m p o s itio n - T r a d it io n a lly , t h e s o f t w a r e d e v e lo p m e n t p r o c e s s h a s b e e n r e q u ir e m e n t - d r iv e n : A n a t t e m p t is m a d e t o p r o v id e a p r e c is e r e q u ir e m e n t s d e f in it io n a n d t h e n t o im p le m e n t e x a c t ly t h o s e r e q u ir e m e n t s . - T h is a p p r o a c h d e p e n d s o n s p e c if y in g r e q u ir e m e n t s c o m p le t e ly a n d c le a r ly b e f o r e o t h e r d e v e lo p m e n t a c t iv it ie s b e g in . - I t f r a n k ly t r e a t s a ll r e q u ir e m e n t s a s e q u a lly im p o r t a n t . - S p e c if ic a t io n o f r e q u ir e m e n t s is a d if f ic u lt a n d im p o r t a n t p a r t o f t h e s o f t w a r e d e v e lo p m e n t p ro c e s s . iv ) A d v e rs a ria l S ta k e h o ld e r R e la tio n s h ip s T h e f o llo w in g s e q u e n c e o f e v e n t s w a s t y p ic a l f o r m o s t c o n t r a c t u a l s o f t w a r e e f f o r t s : - The c o n tra c to r p re p a re d a d r a f t c o n t a c t - d e liv e r a b le d o c u m e n t th a t c a p tu re d an in t e r m e d ia t e a r t if a c t
a n d d e liv e r e d it t o t h e c u s t o m e r f o r a p p r o v a l. - T h e c u s t o m e r w a s e x p e c t e d t o p r o v id e c o m m e n t s ( w it h in 1 5 t o 3 0 d a y s ) - T h e c o n t r a c to r in t e g r a t e d t h e s e c o m m e n ts a n d s u b m it te d a f in a l v e r s io n f o r a p p r o v a l ( w it h i n 1 5 t o 3 0 d a y s )
P r o je c t S t a k e h o ld e r s :
v ) F o c u s o n D o c u m e n ts a n d R e v ie w
M e e tin g s
in v o lv e d in t h e ir p r e p a r a t io n a n d c o n d u c t .
C O N V E N T IO N A L S O F T W A R E M A N A G E M E N T P E R F O R M A N C E
B a r r y B o e h m s T o p 1 0 I n d u s t r ia l S o f t w a r e M e t r ic s :
1)
F in d in g a n d f ix in g a s o f t w a r e p r o b le m f ix in g t h e p r o b le m
a f t e r d e liv e r y c o s t s 1 0 0 t im e s m o r e t h a n f in d in g a n d
in e a r ly d e s i g n p h a s e s . o f n o m in a l ( s m a ll) , b u t n o m o r e .
2)
Y o u c a n c o m p r e s s s o f t w a r e d e v e lo p m e n t s c h e d u le s 2 5 %
3)
F o r e v e r y $ 1 y o u s p e n d o n d e v e lo p m e n t , y o u w ill s p e n d $ 2 o n m a in t e n a n c e .
4)
S o ftw a re
d e v e lo p m e n t
and
m a in t e n a n c e
c o s ts
a re
p r im a r ily
f u n c t io n
of
th e
num ber
of
s o u r c e lin e s o f c o d e . 5) V a r ia t io n s a m o n g p e o p le a c c o u n t f o r t h e b ig g e s t d if f e r e n c e in s o f t w a r e p r o d u c t iv it y .
6)
T h e o v e r a ll r a t io o f s o f t w a r e t o h a r d w a r e c o s ts is s t ill g r o w in g . I n 1 9 5 5 it
w a s 1 5 : 8 5 ; in 1 9 8 5 , 8 5 : 1 5 .
7 ) O n ly a b o u t 1 5 %
o f s o f t w a r e d e v e lo p m e n t e f f o r t is d e v o t e d t o p r o g r a m m in g .
8)
S o f t w a r e s y s t e m s a n d p r o d u c t s t y p ic a lly c o s t 3 t im e s a s m u c h p e r S L O C a s in d iv id u a l s o f t w a r e p ro g ra m s . S o ftw a re -s y s te m p r o d u c t s c o s t 9 t im e s a s m u c h .
9)
W a lk t h r o u g h s c a t c h 6 0 %
o f th e e rro rs .
10) 80%
o f t h e c o n t r ib u t io n c o m e s f r o m
20%
o f t h e c o n t r ib u t o r s .
- 80%
o f t h e e n g in e e r in g is c o n s u m e d b y 2 0 %
o f t h e r e q u ir e m e n t s .
- 80%
o f t h e s o f t w a r e c o s t is c o n s u m e d b y 2 0 %
o f th e c o m p o n e n ts .
- 80%
o f th e e rro rs a re c a u s e d b y 2 0 %
o f th e c o m p o n e n ts .
- 80%
o f t h e s o f t w a r e s c r a p a n d r e w o r k is c a u s e d b y 2 0 %
o f th e e rro rs .
- 80%
o f th e re s o u rc e s a re c o n s u m e d b y 2 0 %
o f th e c o m p o n e n ts .
- 80%
o f t h e e n g in e e r in g is a c c o m p lis h e d b y 2 0 %
o f t h e t o o ls .
- 80%
o f t h e p r o g r e s s is m a d e b y 2 0 %
o f t h e p e o p le .
E v o lu tio n o f S o ftw a re E c o n o m ic s
E c o n o m ic s m e a n s S y s t e m o f in t e r r e la t io n s h ip o f m o n e y , in d u s t r y a n d e m p lo y m e n t .
S O FTW A R
E C O N O M IC S :-
f u n c t io n .
T h e r e la t io n s h ip a m o n g t h e s e p a r a m e t e r s a n d e s t im a t e d c o s t c a n b e c a lc u la t e d b y u s in g ,
P ro c e s s
E f f o r t = ( P e r s o n n e l) ( E n v ir o n m e n t ) ( Q u a lit y ) ( S iz e
- O n e im p o r ta n t a s p e c t o f s o f tw a r e e c o n o m ic s is t h a t t h e r e la t io n s h ip b e tw e e n e f f o r t a n d s iz e e x h ib it s a d is e c o n o m y o f s c a le a n d is t h e r e s u lt o f t h e p r o c e s s e x p o n e n t b e in g g r e a te r t h a n 1 . 0 .
- C o n v e r s e to m o s t m a n u fa c tu r in g p r o c e s s e s , th e m o r e s o ftw a r e y o u b u ild , th e m o r e e x p e n s iv e it is
p e r u n it it e m .
- T h e r e a r e th r e e g e n e r a tio n s o f b a s ic te c h n o lo g y a d v a n c e m e n t in to o ls , c o m p o n e n ts , a n d p r o c e s s e s
a r e a v a ila b le .
1 ) C o n v e n t i o n a l : 1 9 6 0 a n d 1 9 7 0 , C r a f t s m a n s h ip . O r g a n iz a t io n s u s e d c u s t o m t o o ls , c u s t o m p r o c e s s e s , a n d v ir t u a lly a ll c u s t o m c o m p o n e n t s b u ilt in p r im it iv e la n g u a g e s . P r o je c t p e r f o r m a n c e w a s h ig h ly p r e d ic t a b le .
N e t w o r k in g a n d G U I .
3 ) M o d e r n p r a c t i c e s : 2 0 0 0 a n d la t e r , s o f t w a r e p r o d u c t io n .
- 70%
c o m p o n e n t-b a s e d ,
- 30%
c u s to m
C o n v e n tio n a l
T ra n s itio n
Modern Practices
- 1960s 1970s
- 1980s 1990s
- 2000 and on
- W a t e r f a ll m o d e l
- P r o c e s s im p r o v e m e n t
- I t e r a t iv e d e v e lo p m e n t
- F u n c t io n a l d e s ig n
- E n c a p s u la t io n - b a s e d
- C o m p o n e n t-b a s e d
E n v i r o n m
e n t s / t o o l s :
C u s to m
S i z e :
100%
c u s to m
30% component-based
70% component-based
70%
c u s to m
30%
c u s to m
P r o c e s s :
A d hoc
R e p e a t a b le
M a n a g e d /m e a s u re d
T y p i c a l
p r o j e c t
P e r f o r m
a n c e :
A lw a y s :
I n f r e q u e n t ly :
U s u a lly :
O ver budget
O n budget
O n budget
Over schedule
On schedule
O n s c h e d u le
W h a t D o e s R e tu rn O n In v e s tm e n t - R O I M e a n ?
A performance measure used to evaluate the efficiency of an investment or efficiency of a number of different investments. To calculate divided by the cost of the
to compare the
T h e r e t u r n o n in v e s t m e n t f o r m u la :
Return on investment is a very popular metric because of its versatility and is, if an investment does not have a positive ROI, or if there t h e in v e s t m e n t s h o u ld b e n o t b e u n d e r t a k e n P ro je c t S iz e s :
s im p lic it y . T h a t
S iz e a s t e a m
s t r e n g t h c o u ld b e :
T r iv ia l ( M in o r ) S iz e : 1 p e r s o n S m a ll S iz e : 5 p e o p le M o d e r a t e S iz e : 2 5 p e o p le L a r g e S iz e : 1 2 5 p e o p le H u g e S iz e : 6 2 5 p e o p le m o re th e s iz e , th e g re a te r a re th e c o s ts of m anagem ent o v e rh e a d , c o m m u n ic a t io n ,
The
s y n c h r o n iz a t io n s a m o n g v a r io u s p r o je c t s o r m o d u le s , e t c . R e d u c e S o ftw a re S iz e :
T h e le s s s o f t w a r e w e w r it e , t h e b e t te r it is f o r p r o je c t m a n a g e m e n t a n d f o r p r o d u c t q u a lit y - T h e c o s t o f s o f t w a r e is n o t ju s t in t h e c o s t o f c o d in g a lo n e ; it is a ls o in A n a ly s is o f r e q u ir e m e n t s D e s ig n R e v ie w o f r e q u ir e m e n t s , d e s ig n a n d c o d e T e s t P la n n in g a n d p r e p a r a t io n T e s t in g B u g f ix R e g r e s s io n t e s t in g C o d in g t a k e s a r o u n d 1 5 % o f d e v e lo p m e n t c o s t
C le a r ly , if w e r e d u c e 1 5 h r s o f c o d in g , w e c a n d ir e c t ly r e d u c e 1 0 0 h r s o f d e v e lo p m e n t e f f o r t , a n d a ls o r e d u c e t h e p r o je c t t e a m s iz e a p p r o p r ia t e ly !
S iz e r e d u c t io n is d e f in e d in t e r m s o f h u m a n - g e n e r a t e d s o u r c e c o d e . M o s t o f t e n , t h is m ig h t s t ill m e a n t h a t t h e c o m p u t e r - g e n e r a t e d e x e c u t a b le c o d e is a t le a s t t h e s a m e o r e v e n m o r e
- S o f t w a r e S iz e c o u ld b e r e d u c e d b y S o ftw a re R e -u s e U s e o f C O T S ( C o m m e r c ia l O f f - T h e S h e lf S o f t w a r e )
P r o g r a m m in g L a n g u a g e s
P R A G M A T IC
S O F T W A R E E S T IM A T IO N :
- If th e re
is n o
p r o p e r w e ll - d o c u m e n t e d c a s e s t u d ie s t h e n it is d if f ic u lt t o e s t im a t e t h e in s o f t w a r e c o s t e s t im a t io n .
c o s t o f t h e s o f t w a r e . I t is o n e o f t h e c r it ic a l p r o b le m - B u t t h e c o s t m o d e l v e n d o r s c la im it e r a t iv e d e v e lo p m e n t p r o je c t s .
t h a t t h e ir t o o ls a r e w e ll s u it a b le f o r e s t im a t in g
- I n o r d e r t o e s t im a t e t h e c o s t o f a p r o je c t t h e f o llo w in g t h r e e t o p ic s s h o u ld b e c o n s id e r e d ,
1 ) W h ic h c o s t e s t im a t io n m o d e l t o u s e .
2 ) W h e t h e r t o m e a s u r e s o f t w a r e s iz e in S L O C o r f u n c t io n p o in t .
3 ) W h a t c o n s t it u t e s a g o o d e s t im a t e .
- T h e r e a r e a lo t o f s o f t w a r e c o s t e s t im a t io n m o d e ls a r e a v a ila b le s u c h a s ,
C O C O M O , C H E C K P O I N T , E S T I M A C S , K n o w le d g e P la n , P r ic e - S , P ro Q M S , S E E R , S L IM , S O F T C O S T , a n d S P Q R /2 0 .
- O f w h ic h C O C O M O is o n e o f t h e m o s t o p e n a n d w e ll - d o c u m e n t e d c o s t e s t im a t io n m o d e ls
- T h e s o f t w a r e s iz e c a n b e m e a s u r e d b y u s in g
1) S LO C
2 ) F u n c tio n p o in ts
m e a s u r e m e n t s a r e n o t e a s ily d e r iv e d d ir e c t ly f r o m
- T h e m o s t r e a l- w o r ld u s e o f c o s t m o d e ls is b o t t o m - u p r a t h e r t h a n t o p - d o w n .
- The
s o ftw a re
p r o je c t m a n a g e r d e f in e s
th e
ta rg e t c o s t o f th e
s o ftw a re , th e n
m a n ip u la t e s
th e
p a r a m e t e r s a n d s iz in g u n t il t h e t a r g e t c o s t c a n b e ju s t if ie d .
I m p r o v in g S o f t w a r e E c o n o m ic s
3. It is n o t th a t m u c h easy to im p r o v e th e s o ftw a r e e c o n o m ic s b u t a ls o d iffic u lt to
e x a m p le ,
to o ls
r e d u c tio n
im p r o v e m e n ts ,
s iz e - r e d u c tio n d r iv e to o l
a p p ro a c h e s r e q u ir e m e n ts .
6.
le a d
p ro c e s s
changes,
and
p ro c e s s
im p r o v e m e n ts
G U I te c h n o lo g y is a g o o d e x a m p le o f to o ls e n a b lin g a n e w
a n d d iffe re n t p ro c e s s . G U I
b u i l d e r t o o l s p e r m i t t e d e n g i n e e r in g t e a m s t o c o n s t r u c t a n e x e c u t a b le u s e r i n t e r f a c e f a s t e r a n d l e s s c o s t.
7.
T w o d e c a d e s a g o , te a m s d e v e lo p in g a u s e r in te r fa c e w o u ld s p e n d e x te n s iv e tim e fa c to r s , s c r e e n la y o u t, a n d s c re e n d y n a m ic s . A ll th is w o u ld done on p a p e r.
a n a ly z in g
W h e r e a s b y u s in g G U I, th e p a p e r d e s c r ip tio n s a r e n o t n e c e s s a r y .
8. A lo n g w ith th e s e fiv e b a s ic p a ra m e te rs a c ro s s th e a n o th e r b o a rd im p o rta n t is th e fa c to r th a t h a s in flu e n c e d in
s o ftw a re
te c h n o lo g y
im p ro v e m e n ts
e v e r -in c re a s in g
advances
h a rd w a re
p e r fo r m a n c e .
R E D U C IN G S O F T W A R E P R O D U C T S IZ E : - B y c h o o s in g th e ty p e o f th e la n g u a g e
- E x te r n a l o u tp u ts - In te r n a l lo g ic a l d a ta g r o u p s
- E x te r n a l d a ta In te r fa c e s
- E x te r n a l in q u ir ie s
O B J E C T O R IE N T E D M E T H O D S A N D V IS U A L M O D E L IN G : - T h e r e h a s b e e n a w id e s p r e a d m o v e m e n ts in th e 1 9 9 0 s to w a r d O b je c tO r ie n te d te c h n o lo g y .
B o o c h d e s c r ib e d t h e f o llo w in g
t h r e e r e a s o n s f o r t h e s u c c e s s o f t h e p r o je c t s
v o c a b u la r y b e tw e e n th e e n d u s e r o f a s y s te m s h a r e d u n d e r s ta n d in g o f th e p r o b le m
b e in g s o lv e d .
H e a ls o s u g g e s t e d f iv e c h a r a c t e r is t ic s o f a s u c c e s s f u l O O - P r o je c t , 1) A c r u e l fo c u s on th e d e v e lo p m e n t o f a s y s te m th a t p r o v id e s a w e ll
fe a tu r e s a n d tr a n s itio n in g to n e w te c h n o lo g ie s .
- T h e y h a v e a s u f f i c i e n tl y b r o a d c u s t o m e r b a s e t o b e p r o f i t a b l e .
C O M M E R C IA L C O M P O N E N T S
IM P R O V IN G
S O FTW A R E P R O C E S S E S :
a r tifa c t o f a s o ftw a r e p r o c e s s . T h e fo c u s o f th e m ic r o p r o c e s s is o n a c h ie v in g a n in te r m e d ia te p r o d u c t b a s e lin e w ith s u ffic ie n t fu n c tio n a lity a s e c o n o m ic a lly a n d r a p id ly a s p r a c tic a l. The o b je c tiv e of p ro c e s s im p r o v e m e n t is to m a x im iz e th e a llo c a tio n of
im p a c t o f o v e r h e a d a c tiv itie s
o n r e s o u r c e s s u c h a s p e r s o n n e l, c o m p u te r s , a n d s c h e d u le .
IM P R O V IN G
TE A M
E F F E C T IV E N E S S :
- B a la n c e
and
c o v e ra g e
a re
tw o
of
th e
m ost
im p o r ta n t
fe a tu r e s
of
e x c e lle n t te a m s . W h e n e v e r a te a m - It is th e r e s p o n s ib ility o f th e
is in o u t o f b a la n c e th e n it is v u ln e r a b le . p r o je c t m a n a g e r to k e e p tr a c k o f h is te a m s . S in c e
th e p e o p le a v a ila b le .
The
p r in c ip le
of
c a re e r
p r o g r e s s io n :
A n
o r g a n iz a tio n
does
b e s t in
th e
lo n g r u n b y h e lp in g its p e o p le to s e lf - a c tu a liz e .
4 ) T h e p r in c ip le
o f te a m
b a la n c e : S e le c t p e o p le w h o w ill c o m p le m e n t a n d
s y n c h r o n iz e w ith o n e a n o th e r .
5 ) T h e p r in c ip le o f p h a s e -o u t: K e e p in g a m is fit o n th e te a m d o e s n t b e n e fit a n y o n e .
In g e n e r a l, s t a f f in g is a c h ie v e d b y t h e s e c o m m o n m e t h o d s :
If p e o p le a r e n o t a v a ila b le , r e c r u it tr a in e d p e o p le
If y o u a r e n o t a b le to r e c r u it s k ille d p e o p le , r e c r u it a n d tr a in p e o p le S t a f f in g o f k e y p e r s o n n e l is v e r y im p o r t a n t :
- P r o je c t M a n a g e r - S o ftw a r e A r c h ite c t
Im p o r t a n t P r o je c t M a n a g e r S k ills :
H ir in g
s k ills . F e w
d e c is io n s
a re
as
im p o r ta n t a s
h ir in g
d e c is io n s . P la c in g
th e
r ig h t p e r s o n in th e r ig h t jo b s e e m s o b v io u s b u t is s u r p r is in g ly h a r d to a c h ie v e .
C u s t o m e r - in t e r f a c e
s k ill.
A v o id in g
a d v e r s a r ia l
r e la tio n s h ip s
am ong
s ta k e -
h o ld e r s is a p r e r e q u is ite fo r s u c c e s s .
D e c is io n -m a k in g s k ill. T h e jillio n b o o k s w ritte n a b o u t m a n a g e m e n t h a v e fa ile d to p ro v id e a c le a r d e fin itio n o f th is a ttrib u te . W e a ll k n o w a g o o d le a d e r w h e n w e ru n in to o n e , a n d d e c is io n -m a k in g s k ill s e e m s o b v io u s d e s p ite its in ta n g ib le d e fin itio n .
T e a m -b u ild in g
d ire c tio n .
S e l l i n g s k i l l . S u c c e s s f u l p r o j e c t m a n a g e r s m u s t s e l l a l l s t a k e h o ld e r s ( i n c l u d i n g t h e m s e l v e s ) o n d e c i s i o n s a n d p r i o r i t i e s , s e l l c a n d id a t e s o n j o b p o s i t i o n s , s e l l c h a n g e s t o t h e s t a t u s q u o i n t h e f a c e o f r e s i s t a n c e , a n d s e l l a c h i e v e m e n t s a g a i n s t o b j e c ti v e s . I n p r a c t i c e , s e l l in g r e q u i r e s c o n t in u o u s n e g o t i a t i o n , c o m p r o m i s e , a n d e m p a t h y .
in c lu d e s k ills in b o th , th e p r o b le m d o m a in a n d th e s o lu tio n d o m a in
R o le M o d e l: m u s t b e a ro le m o d e l fo r th e s o ftw a re e n g in e e rs th e y w o u ld e m u la te a ll g o o d (a n d a ls o a ll b a d !) th in g s th a t th e a rc h ite c t d o e s
IM P R O V IN G
A U T O M A T IO N
TH R O U G H S O FTW A R E
E N V IR O N M E N T S
U s e r in te r fa c e s p r o v id e e n g in e e r in g a r tifa c ts . R o u n d - t r ip
c r u c ia l a u to m a tio n s u p p o r t fo r e v o lv in g th e s o ftw a r e
e n g in e e r in g : is a
te r m
used
to
d e s c r ib e
th e k e y c a p a b ility
R e v e rs e a b s tr a c t
a r tifa c t.
c r e a tin g
d e s ig n m o d e l fr o m A C H IE V IN G
a s o u rc e c o d e .
R E Q U IR E D Q U A L IT Y :
F o c u s in g
th r o u g h o u t
th e
life
c y c le
on
b a la n c e
b e tw e e n
an
a r c h ite c tu r e
fr o m
h ig h - le v e l
in to
b id d a b le p r o d u c t P r o v id in g in te g r a te d life - c y c le e n v ir o n m e n ts th a t s u p p o r t e a r ly and
E a r ly
and
c o n tin u o u s
c lo s e
lo o k
in to
p e r fo r m a n c e
is s u e s
th r o u g h
d e m o n s tr a tio n - b a s e d e v a lu a tio n s
In o rd e r to e v a lu a te th e p e rfo rm a n c e th e fo llo w in g s e q u e n c e o f e v e n ts a re n e c e s s a ry ,
1) P r o j e c t i n c e p t i o n
2) M i d - l i f e - c y c l e d e s i g n r e v i e w
P E E R IN S P E C T IO N S : A P R A G M A T IC V IE W :
p r o c e s s . N o w i t i s r e p l a c e d b y a d v a n c e d s o f t w a r e e n g i n e e r in g t e c h n o l o g i e s .
- T h is
tr a n s itio n
is
w as
m o tiv a te d
by
th e
u n s a tis fa c to r y
dem and
fo r th e
s o ftw a r e a n d r e d u c e d c o s t.
T H E P R IN C IP L E S O F C O N V E N T IO N A L S O F T W A R E E N G IN E E R IN G
B ased s o ftw a r e
on
m any
y e a rs
of so
s o ftw a r e
d e v e lo p m e n t
e x p e r ie n c e ,
th e
in d u s tr y p r o p o s e d
m a n y p r in c ip le s ( n e a r ly 2 0 1 b y D a v is s ) .
O f w h ic h D a v is s to p 3 0 p r in c ip le s a r e :
1) M ake
q u a lit y
# 1 : Q u a lity m u s t b e q u a n tifie d a n d m e c h a n is m s p u t in to
in v o lv in g
c u s to m e r , s e le c t th e
p r o to ty p in g ,
m o s t e n g in e e r s s u re to
s o lv e
p r o b le m ,
be
e x p lo r e
d o n t
th e o n e w h ic h is n o t u s e d e a r lie r . 6) U se an a p p r o p r ia t e p ro c e s s m o d e l: F o r e v e r y p r o je c t, th e r e a re so
m a n y p r o to ty p e s ( p r o c e s s m o d e ls ) . S o s u ita b le to o u r p r o je c t.
s e le c t th e b e s t o n e th a t is e x a c tly
10) G et w o r k in g
it
r ig h t
b e fo re ru n
you
m ake
it
fa s te r: m ake
It is
v e ry
easy
to
m ake
p ro g ra m
fa s te r th a n
it is to
a fa s t p r o g r a m
w o r k . D o n t
1 5 ) T a k e r e s p o n s ib i l it y : W h e n a b r i d g e c o l l a p s e s w e a s k w h a t d i d t h e e n g i n e e r d o w r o n g ? . S i m il a r ly i f t h e s o f t w a r e f a i l s , w e a s k t h e s a m e . S o t h e f a c t i s i n e v e r y e n g i n e e r in g d i s c ip lin e , t h e b e s t m e t h o d s c a n b e u s e d t o p r o d u c e p o o r r e s u l t s a n d th e m o s t o u t o f d a te m e th o d s to p ro d u c e s ty lis h d e s ig n .
1 6 ) U n d e rs ta n d w o u ld 10% to le r a te
th e
c u s t o m e r s
p r io r it ie s . It is
p o s s ib le la te
th e
c u s to m e r have
90%
o f th e
if th e y c o u ld
17) The (o r
p e r fo r m a n c e )
p r o v id e
fu n c tio n a lity
p e r fo r m a n c e ) th e u s e r w a n ts .
1 8 ) P la n fa c to rs
to is
th r o w w h e th e r
one or
aw ay not a
.O n e
o f th e is
p ro d u c t
v ii)
A v o id
t r ic k s . M a n y p r o g r a m m e r s lo v e th a t p e r fo r m a fu n c tio n
to
c r e a te but
p r o g r a m s w ith in an o b s c u re
tr ic k s w ay.
c o n s tr u c ts
c o r r e c tly ,
S h o w th e w o r ld h o w s m a r t y o u a r e b y a v o id in g tr ic k y c o d e .
v iii)
E n c a p s u la t e .
In fo r m a tio n - h id in g
is
s im p le ,
p ro v e n
concept
th a t
r e s u lts in s o ftw a r e th a t is e a s ie r to te s t a n d m u c h e a s ie r to m a in ta in .
ix )
U se
c o u p lin g
and
c o h e s io n .
C o u p lin g
and
c o h e s io n
a re
th e
best
U se
th e
M cC abe to
c o m p le x it y r e p o r t th e
m e a s u re .
A lth o u g h
th e r e
a re
m any
m e tr ic s a v a ila b le
in h e r e n t c o m p le x ity o f s o ftw a r e , n o n e is
a s in tu itiv e a n d e a s y to u s e a s T o m M c C a b e s .
x i)
D o n t t e s t y o u r o w n
s o f t w a r e . S o ftw a r e
d e v e lo p e r s s h o u ld
never be
th e p r im a r y te s te r s o f th e ir o w n s o ftw a r e .
x ii)
A n a ly z e
causes
f o r e r r o r s . It is fa r m o r e
c o s t- e ffe c tiv e
to
re d u c e
th e
R e a liz e
th a t
u n d e rg o e s
becom e
m o r e a n d m o r e d is o r g a n iz e d .
29.
P e o p le a n d t im e a r e n o t in t e r c h a n g e a b le . M e a s u r in g a p r o je c t s o le ly b y p e r s o n - m o n th s m a k e s little s e n s e .
T H E P R IN C IP L E S O F M O D E R N S O F T W A R E M A N A G E M E N T
1 ) B a s e th e p r o c e s s o n a n a r c h ite c tu r e - fir s t a p p r o a c h : ( C e n tr a l d e s ig n e le m e n t)
2 ) E s ta b lis h a n ite r a tiv e life - c y c le p r o c e s s : ( T h e r is k m a n a g e m e n t e le m e n t) - R is k c o n tr o l th r o u g h e v e r - in c r e a s in g fu n c tio n , p e r fo r m a n c e , q u a lity . W ith e n tir e p r o b le m , in to d a y s th e s o p h is tic a te d e n tir e s y s te m s , b u ild it th e is not p o s s ib le th e n to d e fin e th e th e end
d e s ig n
s o lu tio n ,
s o ftw a r e , th a t p la n
te s t th e
p ro d u c t
sequence. an
In s te a d ,
and
ite r a tiv e an
p ro c e s s e ffe c tiv e
r e fin e s
p r o b le m
u n d e r s ta n d in g ,
e ffe c tiv e
s o lu tio n , a n d
over
s e v e r a l ite r a tio n s
com ponent
e ith e r
5)
E nhance
change
fr e e d o m
th r o u g h
to o ls
th a t s u p p o r t r o u n d - tr ip
e n g in e e r in g :
( T h e a u to m a tio n e le m e n t) - C o m p le m e n ta r y to o ls , in te g r a te d e n v ir o n m e n t
R o u n d - tr ip and s y n c h r o n iz e
e n g in e e r in g
is
th e
e n v ir o n m e n t s u p p o r t n e c e s s a r y to in d iffe r e n t fo r m a ts . C hange
a u to m a te is
e n g in e e r in g
in fo r m a tio n
fr e e d o m
8 ) U s e a d e m o n s tr a tio n - b a s e d a p p r o a c h to a s s e s s in te r m e d ia te a r tifa c ts :
T r a n s itio n in g a r c h ite c tu r e , p r o v id e s or a
fr o m
w h e th e r
th e in to
a r tifa c t an
is
an
e a r ly
p r o to ty p e ,
a of
b a s e lin e r e le v a n t and
b e ta
c a p a b ility
e x e c u ta b le d e s ig n
d e m o n s tr a tio n
m o re
ta n g ib le
u n d e r s ta n d in g
o f th e
tr a d e o ffs , e a r ly in te g r a tio n
e v o lv in g le v e ls o f d e ta il: