unit-1 - cs1021 - software project management

31
CS1021 SOFTWARE PROJECT MANAGEMENT UNIT - 1 Conventional Software Managem ent 1. The best thing about software is its flexibility: - It can be programmed to do almost anything. 2. The worst thing about software is its flexibility: - The “almost anything” characteristic has made it difficult to plan, monitor, and control software development. 3. In the mid-1990s, three important analyses were performed on the software engineering industry. All three analyses given the sam e general conclusion:- “The success rate for software projects is very low”. They Summarized as follows: 1. Software development is still highly unpredictable. Only 10% of software projects are delivered successfully within initial budget and scheduled time. 2. Management discipline is more differentiator in success or failure than are technology advances. 3. The level of software scrap and rework is indicative of an immature process. Software m anagement process framework: WATERFALL MODEL 1. It is the baseline process for most conventional software projects have used. 2. We can examine this model in two ways: i. IN THEORY ii. IN PRACTICE IN THEORY:- In 1970, Winston Royce presented a paper called “Managing the Development of Large Scale Software Systems” at IEEE W ESCON. Where he made three primary points: 1.There are two essential steps common to the development of computer programs: - analysis - coding

Upload: dhakshana-murthi

Post on 12-May-2017

233 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: UNIT-1 - CS1021 - Software Project Management

C S 1 0 2 1 – S O F T W A R E P R O J E C T M A N A G E M E N T

U N I T - 1

C o n v e n t i o n a l S o f t w a r e 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 i t s f le x ib i l i t 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 i t s f le x ib i l i t y :

- T h e “ a l m o s t a n y t h i n g ” c h a r a c t e r i s t i c h a s m a d e i t d i f f i c u l t t o p l a n , m o n i t o r , a n d c o n t r o l s o f t w 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 l l t h r e e a n a l y s e s g i v e n t h e s a m e g e n e r a l c o n c l u s i o n : -

“ T h e s u c c e s s r a t e f o r s o f t w a r e p r o je c t s is v e r y

lo w ” . T h e y S u m m a r iz e d a s f o l lo w s :

1 . S o f t w a r e d e v e lo p m e n t is s t i l l h ig h ly u n p r e d ic t a b le . O n ly 1 0 % o f s o f t w a r e p r o je c t s a r e d e l iv e r e d

s u c c e s s f u l ly w i t h in in i t ia l b u d g e t a n d s c h e d u le d t im e .

2 . M a n a g e m e n t d is c ip l in e is m o r e d i f f e r e n t ia t o r in s u c c e s s o r f a i lu r e t h a n a r e t e c h n o lo g y a d v a n c e s .

3 . T h e le v e l o f s o f t w a r e s c r a p a n d r e w o r k is in d ic a t iv e o f a n im m a t u r e p r o c e s s .

S o f t w a r e m a n a g e m e n t p r o c e s s f r a m e w o r k :

W A T E R F A L L M O D E L

1 . I t is t h e b a s e l in 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 .

2 . 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

i i . I N P R A C T I C E

I N T H E O R Y : -

I n 1 9 7 0 , W in s t o n R o y c e p r e s e n t e d a p a p e r c a l le d “ M a n a g in g t h 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

Page 2: UNIT-1 - CS1021 - Software Project Management

2 . I n o r d e r t o m a n g e a n d c o n t r o l a l l o f t h e i n t e l l e c t u a l f r e e d o m a s s o c i a t e d w i t h s o f t w a r e d e v e l o p m e n t o n e s h o u l d f o l l o w

t h e f o l l o w i n g s t e p s :

- S y s t e m r e q u i r e m e n t s d e f i n i t i o n

- S o f t w a r e r e q u i r e m e n t s d e f i n i t i o n

- P r o g r a m d e s i g n a n d t e s t i n g

T h e s e s t e p s a d d i t i o n t o t h e a n a l y s i s a n d c o d i n g s t e p s

3 . S in c e t h e t e s t in g p h a s e is a t t h e e n d o f t h e d e v e lo p m e n t c y c le in t h e w a t e r f a l l m o d e l , i t m a y b e r is k y

a n d in v i t e s f a i lu r e .

S o w e n e e d t o d o e i t h e r t h e r e q u i r e m e n t s m u s t b e m o d i f ie d o r a s u b s t a n t ia l d e s ig n c h a n g e s is

w a r r a n t e d b y b r e a k in g t h e s o f t w a r e in t o d i f f e r e n t p ie c e s .

- T h e r e a r e f i v e i m p r o v e m e n t s t o t h e b a s i c w a t e r f a l l m o d e l t h a t w o u l d e l i m i n a t e m o s t o f t h e

d e v e l o p m e n t r i s k s a r e a s f o l l o w s :

a ) C o m p l e t e p r o g r a m d e s i g n b e f o r e a n a l y s i s a n d c o d i n g b e g i n ( p r o g r a m d e s i g n c o m e s f i r s t ) : -

- B y t h is t e c h n iq u e , t h e p r o g r a m 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 i l l n o t f a i l b e c a u s e o f s t o r a g e ,

t im in g , a n d d a t a f lu c t u a t io n s .

- B e g in t h e d e s ig n p r o c e s s w i t h p r o g r a m 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 .

- W r i t e a n o v e r v ie w 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 i n t a i n c u r r e n t a n d c o m p l e t e d o c u m e n t a t i o n ( D o c u m e n t t h e d e s i g 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 .

Page 3: UNIT-1 - CS1021 - Software Project Management

- D u e t o t h is , h e lp s t o s u p p o r t la t e r m o d i f ic a t io n s b y a s e p a r a t e t e s t t e a m , a s e p a r a t e

m a in t e n a n c e t e a m , a n d o p e r a t io n s p e r s o n n e l w h o a r e n o t s o f t w a r e l i t e r a t e .

c ) D o t h e j o b t w i c e , i f p o s s i b l e ( D o i t t w i c e ) : -

- I f a c o m p u t e r p r o g r a m is d e v e lo p e d f o r t h e f i r s t t im e , a r r a n g e m a t t e r s s o t h a t t h e v e r s io n f in a l ly

d e l iv e r e d t o t h e 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 l ly t h e s e c o n d v e r s io n in s o f a r a s c r i t ic a l

d e s ig n / o p e r a t io n s a r e c o n c e r n e d .

- “ D o i t N t im e s ” a p p r o a c h is t h e p r in c ip le o f m o d e r n - d a y i t e r a t iv e d e v e lo p m e n t .

d ) P l a n , c o n t r o l , a n d m o n i t o r t e s t i n g : -

- T h e b ig g e s t u s e r o f p r o je c t r e s o u r c e s is t h e t e s t p h a s e . T h is is t h e p h a s e o f g r e a t e s t r is k in t e r m s o f

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 l lo 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 o f t e s t s p e c ia l is 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 .

i i ) E m p l o y v i s u a l i n s p e c t i o n s t o s p o t t h e o b v i o u s e r r o r s l i k e d r o p p e d m i n u s s i g n s , m i s s i n g f a c t o 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 .

i i i ) T e s t e v e r y lo g ic p h a s e .

iv ) E m p lo y t h e f in a l c h e c k o u t o n t h e t a r g e t c o m p u t e r .

e ) I n v o l v e t h e c u s t o m e r : -

- I t is im p o r t a n t t o in v o lv e t h e c u s t o m e r in a f o r m a l w a y s o t h a t h e h a s c o m m it t e d h im s e l f a t e a r l ie r

p o in t s b e f o r e f in a l d e l iv e r y b y c o n d u c t in g s o m e r e v ie w s s u c h a s ,

i ) P r e l im in a r y s o f t w a r e r e v ie w d u r in g p r e l im in a r y p r o g r a m d e s ig n s t e p .

i i ) C r i t 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 d e s ig n .

i i i ) 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 l lo w in g t e s t in g .

I N P R A C T I C E : -

- W h a t e v e r t h e a d v ic e s t h a t a r e g iv e n b y t h e s o f t w a r e d e v e lo p e r s a n d t h e t h e o r y b e h in d t h e w a t e r f a l l

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 i l l 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 i t t h e f o l lo 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 i r 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

a l l a t o n c e , t h e n in t e g r a t e d . O n ly a t t h e e n d o f t h is p r o c e s s w a s i t p o s s ib le t o p e r f o r m s y s t e m t e s t in g t o

v e r i f y t h a t t h e f u n d a m e n t a l a r c h i t e c t u r e w a s s o u n d .

- H e r e t h e t e s t i n g a c t iv i t ie s c o n s u m e 4 0 % o r m o r e l i f e - c y c le r e s o u r c e s .

A C T I V I T Y C O S T

M a n a g e m e n t 5 %

R e q u i r e m e n t s 5 %

D e s ig n 10%

C o d e a n d u n i t t e s t in g 30%

I n t e g r a t io n a n d t e s t 40%

D e p lo y m e n t 5 %

E n v i r o n m e n t 5 %

Page 4: UNIT-1 - CS1021 - Software Project Management

i i ) L a t e R i s k R e s o l u t i o n

- A s e r i o u s i s s u e s a s s o c i a t e d w i t h t h e w a t e r f a l l l i f e c y c l e w a s t h e l a c k o f e a r l y r i s k

r e s o l u t i o n . T h e r i s k p r o f i l e o f a w a t e r f a l l m o d e l i s ,

Page 5: UNIT-1 - CS1021 - Software Project Management

- I t i n c l u d e s f o u r d i s t i n c t p e r i o d s o f r i s k e x p o s u r e , w h e r e r i s k i s d e f i n e d a s “ t h e p r o b a b i l i t y o f

m i s s i n g a c o s t , s c h e d u l e , f e a t u r e , o r q u a l i t y g o a l ” .

i i i ) R e q u i r e m e n t s - D r i v e n F u n c t i o n a l D e c o m p o s i t i o n

- T r a d i t io n a l ly , 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 i r 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 i r e m e n t s d e f in i t 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 i r 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 i f y in g r e q u i r 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 i t ie s b e g in .

- I t f r a n k ly t r e a t s a l l r e q u i r e m e n t s a s e q u a l ly im p o r t a n t .

- S p e c i f ic a t io n o f r e q u i r e m e n t s is a d i f f ic u l t 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 r o c e s s .

i v ) A d v e r s a r i a l S t a k e h o l d e r R e l a t i o n s h i p s

T h e f o l lo 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 :

- T h e c o n t r a c t o r p r e p a r e d a d r a f t c o n t a c t - d e l iv e r a b le d o c u m e n t t h a t c a p t u r e d a n in t e r m e d ia t e a r t i f a c t

a n d d e l iv e r e d i t 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 i t 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 i t t e d a f in a l v e r s io n f o r a p p r o v a l ( w i t h i n 1 5 t o 3 0 d a y s )

P r o j e c t S t a k e h o l d e r s :

S t a k e h o ld e r s a r e t h e p e o p le i n v o l v e d i n o r a f f e c t e d b y p r o je c t a c t i v i t i e s

S t a k e h o ld e r s i n c lu d e

t h e p r o je c t s p o n s o r a n d p r o je c t t e a m

s u p p o r t s t a f f

c u s t o m e r s

u s e r s

s u p p l i e r s

o p p o n e n t s t o t h e p r o je c t

v ) F o c u s o n D o c u m e n t s a n d R e v i e w M e e t i n g s

- T h e c o n v e n t io n a l p r o c e s s f o c u s e d o n v a r io u s d o c u m e n ts t h a t a t t e m p te d t o d e s c r ib e t h e s o f t w a r e p r o d u c t .

- C o n t r a c to r s p r o d u c e l i t e r a l ly t o n s o f p a p e r t o m e e t m i le s to n e s a n d d e m o n s t r a t e p r o g r e s s t o s t a k e h o ld e r s ,

r a t h e r t h a n s p e n d t h e i r e n e r g y o n t a s k s t h a t w o u ld r e d u c e r is k a n d p r o d u c e q u a l i t y s o f t w a r e .

- M o s t d e s ig n r e v ie w s r e s u l t e d in lo w e n g in e e r in g a n d h ig h c o s t in t e r m s o f t h e e f f o r t a n d s c h e d u le

in v o lv e d in t h e i r p r e p a r a t io n a n d c o n d u c t .

Page 6: UNIT-1 - CS1021 - Software Project Management
Page 7: UNIT-1 - CS1021 - Software Project Management

C O N V E N T I O 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 a f t e r d e l iv 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

f ix in g t h e p r o b le m in e a r ly d e s i g n p h a s e s .

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 % o f n o m in a l ( s m a l l ) , b u t n o m o r e .

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 i l l s p e n d $ 2 o n m a in t e n a n c e .

4 ) S o f t w a r e d e v e lo p m e n t a n d m a in t e n a n c e c o s t s a r e p r im a r i ly a f u n c t io n o f t h e n u m b e r o f

s o u r c e l in 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 i f f e r e n c e in s o f t w a r e p r o d u c t iv i t y .

6 ) T h e o v e r a l l 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 t s is s t i l l g r o w in g . I n 1 9 5 5 i t 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 l ly 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 r o g r a m s . S o f t w a r e - s y s t e 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 t h e e r r o r s .

1 0 ) 8 0 % o f t h e c o n t r ib u t io n c o m e s f r o m 2 0 % o f t h e c o n t r ib u t o r s .

- 8 0 % 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 i r e m e n t s .

- 8 0 % 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 t h e c o m p o n e n t s .

- 8 0 % o f t h e e r r o r s a r e c a u s e d b y 2 0 % o f t h e c o m p o n e n t s .

- 8 0 % 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 t h e e r r o r s .

- 8 0 % o f t h e r e s o u r c e s a r e c o n s u m e d b y 2 0 % o f t h e c o m p o n e n t s .

- 8 0 % o f t h e e n g in e e r in g is a c c o m p l is h e d b y 2 0 % o f t h e t o o ls .

- 8 0 % 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 .

Page 8: UNIT-1 - CS1021 - Software Project Management

E v o l u t i o n o f S o f t w a r e E c o n o m i c 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 F T W A R E C O N O M I C S : -

T h e c o s t o f t h e s o f t w a r e c a n b e e s t i m a t e d b y c o n s i d e r i n g t h e f o l l o w i n g t h i n g s a s p a r a m e t e r s t o a

f u n c t io n .

1 ) S iz e : W h ic h is m e a s u r e d in t e r m s o f t h e n u m b e r o f S o u r c e L in e s O f C o d e o r t h e

n u m b e r o f f u n c t io n p o in t s r e q u i r e d t o d e v e lo p t h e r e q u i r e d f u n c t io n a l i t y .

2 ) P r o c e s s : U s e d t o p r o d u c e t h e e n d p r o d u c t , in p a r t ic u la r t h e a b i l i t y o f t h e p r o c e s s is t o

a v o id n o n - v a lu e - a d d in g a c t iv i t ie s ( r e w o r k , b u r e a u c r a t ic d e la y s , c o m m u n ic a t io n s o v e r h e a d ) .

3 ) P e r s o n n e l : T h e c a p a b i l i t ie s o f s o f t w a r e e n g in e e r in g p e r s o n n e l , a n d p a r t ic u la r ly t h e i r

e x p e r ie n c e w i t h t h e c o m p u t e r s c ie n c e is s u e s a n d t h e a p p l ic a t io n d o m a in is s u e s o f t h e p r o je c t .

4 ) E n v i r o n m e n t : W h ic h is m a d e u p o f t h e t o o ls a n d t e c h n iq u e s a v a i la b le t o s u p p o r t

e f f ic ie n t s o f t w a r e d e v e lo p m e n t a n d t o a u t o m a t e t h e p r o c e s s .

5 ) Q u a l i t y : I t in c lu d e s i t s f e a t u r e s , p e r f o r m a n c e , r e l ia b i l i t y , a n d f le x ib i l i t y .

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 ,

E f f o r t = ( P e r s o n n e l ) ( E n v i r o n m e n t ) ( Q u a l i t y ) ( S iz eP r o c e s s

)

- O n e im p o r t a 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 i t 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 l t 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 t o m o s t m a n u f a c t u r i n g p r o c e s s e s , t h e m o r e s o f t w a r e y o u b u i l d , t h e m o r e e x p e n s i v e i t i s

p e r u n i t i t e m .

- T h e r e a r e t h r e e g e n e r a t i o n s o f b a s i c t e c h n o l o g y a d v a n c e m e n t i n t o o l s , c o m p o n e n t s , a n d p r o c e s s e s

a r e a v a i la 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 i r t u a l ly a l l c u s t o m c o m p o n e n t s b u i l t in p r im i t 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 .

Page 9: UNIT-1 - CS1021 - Software Project Management

2 ) T r a n s i t i o n : 1 9 8 0 a n d 1 9 9 0 , s o f tw a r e e n g in e e r in g . O r g a n iz a t io n s u s e d m o r e - r e p e a ta b le

p r o c e s s e s a n d o f f - t h e - s h e l f t o o ls , a n d m o s t ly ( > 7 0 % ) c u s to m c o m p o n e n t s b u i l t in h ig h e r le v e l la n g u a g e s .

- S o m e o f t h e c o m p o n e n t s ( < 3 0 % ) w e r e a v a i l a b l e a s c o m m e r c i a l p r o d u c t s l i k e , O S , D B M S ,

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 .

- 7 0 % c o m p o n e n t - b a s e d ,

- 3 0 % c u s t o m

C o n v e n t i o n a l T r a n s i t i o n Modern Practices

- 1 9 6 0 s – 1 9 7 0 s - 1 9 8 0 s – 1 9 9 0 s - 2 0 0 0 a n d o n

- W a t e r f a l l 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

- Diseconomy of scale- Diseconomy of scale- ROI

E n v i r o n m e n t s / t o o l s :

C u s t o m Off-the-shelf, separate Off-the-shelf, Integrated

S i z e :

1 0 0 % c u s t o m 30% component-based 70% component-based

7 0 % c u s t o m 3 0 % c u s t o m

P r o c e s s :

A d h o c R e p e a t a b le M a n a g e d / m e a s u r e 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 l ly :

O v e r b u d g e t O n b u d g e t O n b u d g e t

Over schedule On schedule O n s c h e d u le

W h a t D o e s R e t u r n O n I n v e s t m e n t - R O I M e a n ?

Page 10: UNIT-1 - CS1021 - Software Project Management

A performance measure used to evaluate the efficiency of an investment or to compare the

efficiency of a number of different investments. To calculate ROI, the benefit (return) of an investment is

divided by the cost of the investment; the result is expressed as a percentage or a ratio.

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 s im p l ic i t y . T h a t

is, if an investment does not have a positive ROI, or if there are other opportunities with a higher ROI, then

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 r o j e c t S i z e s :

• 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 l l 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

• T h e m o r e t h e s iz e , t h e g r e a t e r a r e t h e c o s t s o f m a n a g e m e n t o v e r h e a d , c o m m u n ic a t io n ,

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 f t w a r e S i z e :

T h e le s s s o f t w a r e w e w r i t e , t h e b e t t e r i t 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 l i t 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 ; i t is a ls o in

A n a ly s is o f r e q u i r e m e n t s

– D e s ig n

– R e v ie w o f r e q u i r 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 , i f 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 i r 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 i l l

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

Page 11: UNIT-1 - CS1021 - Software Project Management

- 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 f t w a r e 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 l f S o f t w a r e )

– P r o g r a m m i n g L a n g u a g e s

P R A G M A T I C S O F T W A R E E S T I M A T I O N :

- I f t h e r e is n o p r o p e r w e l l - d o c u m e n t e d c a s e s t u d ie s t h e n i t is d i f f ic u l t t o e s t im a t e t h e

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 i t ic a l p r o b le m in s o f t w a r e c o s t e s t im a t io n .

- 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 t h a t t h e i r t o o ls a r e w e l l s u i t a b le f o r e s t im a t in g

i t e r a t iv e d e v e lo p m e n t p r o je c t s .

- 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 l lo 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 i t 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 i la 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 r o Q M S , S E E R , S L I M , 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 l l - 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 L O C 2 ) F u n c t i o n p o i n t s

- M o s t s o f t w a r e e x p e r t s a r g u e d t h a t t h e S L O C is a p o o r m e a s u r e o f s iz e . B u t i t h a s s o m e v a lu e in

t h e s o f t w a r e I n d u s t r y .

- S L O C w o r k e d w e l l in a p p l ic a t io n s t h a t w e r e c u s t o m b u i l t w h y b e c a u s e o f e a s y t o

a u t o m a t e a n d in s t r u m e n t .

- N o w a d a y s t h e r e a r e s o m a n y a u t o m a t ic s o u r c e c o d e g e n e r a t o r s a r e a v a i la b le a n d t h e r e

a r e s o m a n y a d v a n c e d h ig h e r - le v e l la n g u a g e s a r e a v a i la b le . S o S L O C is a u n c e r t a in m e a s u r e .

- T h e m a in a d v a n t a g e o f f u n c t io n p o in t s is t h a t t h is m e t h o d is in d e p e n d e n t o f t h e t e c h n o lo g y

a n d is t h e r e f o r e a m u c h b e t t e r p r im i t iv e u n i t f o r c o m p a r is o n s a m o n g p r o je c t s a n d o r g a n iz a t io n s .

- T h e m a in d is a d v a n t a g e o f f u n c t io n p o in t s is t h a t t h e p r im i t iv e d e f in i t io n s a r e a b s t r a c t a n d

m e a s u r e m e n t s a r e n o t e a s i ly d e r iv e d d i r e c t ly f r o m t h e e v o lv in g a r t i f a c t s .

Page 12: UNIT-1 - CS1021 - Software Project Management

- F u n c t i o n p o i n t s i s m o r e a c c u r a t e e s t i m a t o r i n t h e e a r l y p h a s e s o f a p r o j e c t l i f e c y c l e . I n l a t e r

p h a s e s , S L O C b e c o m e s a m o r e u s e f u l a n d p r e c i s e m e a s u r e m e n t b a s i s o f v a r i o u s m e t r i c s p e r s p e c t i v e s .

- 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 .

- T h e s o f t w a r e p r o je c t m a n a g e r d e f in e s t h e t a r g e t c o s t o f t h e s o f t w a r e , t h e n m a n ip u la t e s t h e

p a r a m e t e r s a n d s iz in g u n t i l t h e t a r g e t c o s t c a n b e ju s t i f 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 . I t i s n o t t h a t m u c h e a s y t o im p r o v e t h e s o f t w a r e e c o n o m ic s b u t a l s o d i f f i c u l t t o

m e a s u r e a n d v a l i d a t e .

4 . T h e r e a r e m a n y a s p e c t s a r e t h e r e i n o r d e r t o im p r o v e t h e s o f t w a r e e c o n o m ic s

t h e y a r e , S i z e , P r o c e s s , P e r s o n n e l , E n v i r o n m e n t a n d q u a l i t y .

5 . T h e s e p a r a m e t e r s ( a s p e c t s ) a r e n o t i n d e p e n d e n t t h e y a r e d e p e n d e n t . F o r

e x a m p le , t o o l s e n a b le s i z e r e d u c t i o n a n d p r o c e s s im p r o v e m e n t s , s i z e - r e d u c t i o n

a p p r o a c h e s l e a d t o p r o c e s s c h a n g e s , a n d p r o c e s s im p r o v e m e n t s d r i v e t o o l

r e q u i r e m e n t s .

6 . G U I t e c h n o l o g y i s a g o o d e x a m p l e o f t o o l s e n a b l i n g a n e w a n d d i f f e r e n t p r o 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 , t e a m s d e v e lo p in g a u s e r i n t e r f a c e w o u ld s p e n d e x t e n s i v e t im e

a n a l y z in g f a c t o r s , s c r e e n l a y o u t , a n d s c r e e n d y n a m ic s . A l l t h i s w o u ld d o n e o n p a p e r .

W h e r e a s b y u s in g G U I , t h e p a p e r d e s c r i p t i o n s a r e n o t n e c e s s a r y .

8 . A l o n g w i t h t h e s e f i v e b a s i c p a r a m e t e r s a n o t h e r i m p o r t a n t f a c t o r t h a t h a s i n f l u e n c e d

s o f t w a r e t e c h n o l o g y i m p r o v e m e n t s a c r o s s t h e b o a r d i s t h e e v e r - i n c r e a s i n g a d v a n c e s i n

Page 13: UNIT-1 - CS1021 - Software Project Management

h a r d w a r e

p e r f o r m a n c e .

R E D U C I N G S O F T W A R E P R O D U C T S I Z E :

- B y c h o o s in g t h e t y p e o f t h e l a n g u a g e

- B y u s in g O b je c t - O r i e n t e d m e t h o d s a n d v i s u a l m o d e l i n g

- B y r e u s in g t h e e x i s t i n g c o m p o n e n t s a n d b u i l d i n g r e u s a b le c o m p o n e n t s &

- B y u s i n g c o m m e r c i a l c o m p o n e n t s , w e c a n r e d u c e t h e p r o d u c t s i z e o f a s o f t w a r e .

Page 14: UNIT-1 - CS1021 - Software Project Management

H e r e U P F s ( U n i v e r s a l F u n c t i o n P o in t s ) a r e u s e f u l e s t im a t o r s f o r l a n g u a g e -

i n d e p e n d e n t i n t h e e a r l y l i f e c y c le p h a s e s . T h e b a s i c u n i t s o f f u n c t i o n p o in t s a r e :

- E x t e r n a l u s e r i n p u t s

- E x t e r n a l o u t p u t s

- I n t e r n a l l o g i c a l d a t a g r o u p s

- E x t e r n a l d a t a I n t e r f a c e s

- E x t e r n a l i n q u i r i e s

Page 15: UNIT-1 - CS1021 - Software Project Management

O B J E C T O R I E N T E D M E T H O D S A N D V I S U A L M O D E L I N 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 t s i n t h e 1 9 9 0 s t o w a r d O b je c t -

O r i e n t e d t e c h n o lo g y .

- S o m e s t u d ie s c o n c lu d e d t h a t O b je c t - O r i e n t e d p r o g r a m m in g l a n g u a g e s a p p e a r

t o b e n e f i t b o t h s o f t w a r e p r o d u c t i v i t y a n d s o f t w a r e q u a l i t y . O n e o f s u c h O b je c t - O r i e n t e d

m e t h o d i s U M L - U n i f i e d M o d e l i n g L a n g u a g e .

B o o c h d e s c r i b e d t h e f o l l o w i n 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 j e c t s

t h a t a r e u s i n g O b j e c t - O r i e n t e d c o n c e p t s :

1 ) A n O O - m o d e l o f t h e p r o b le m a n d i t s s o lu t i o n e n c o u r a g e s a c o m m o n

v o c a b u la r y b e t w e e n t h e e n d u s e r o f a s y s t e m a n d i t s d e v e lo p e r s , t h u s c r e a t i n g a

s h a r e d u n d e r s t a n d in g o f t h e p r o b le m b e in g s o l v e d .

2 ) T h e u s e o f c o n t i n u o u s i n t e g r a t i o n c r e a t e s o p p o r t u n i t i e s t o r e c o g n i z e r i s k e a r ly

a n d m a k e i n c r e m e n t a l c o r r e c t i o n s w i t h o u t w e a k e n t h e e n t i r e d e v e lo p m e n t e f f o r t .

3 ) A n O O - a r c h i t e c tu r e p r o v i d e s a c l e a r s e p a r a t i o n a m o n g d i f f e r e n t e l e m e n t s o f a s y s t e m ,

c r a t i n g f i r e w a l l s t h a t p r e v e n t a c h a n g e i n o n e p a r t o f t h e s y s t e m f r o m t h e e n t i r e a r c h i t e c t u r e .

H e a l s o s u g g e s t e d f i v e c h a r a c t e r i s t i c s o f a s u c c e s s f u l O O - P r o j e c t ,

1 ) A c r u e l f o c u s o n t h e d e v e lo p m e n t o f a s y s t e m t h a t p r o v id e s a w e l l

u n d e r s t o o d c o l l e c t i o n o f e s s e n t i a l m in im a l c h a r a c t e r i s t i c s .

2 ) T h e e x i s t e n c e o f a c u l t u r e t h a t i s c e n t e r e d o n r e s u l t s , e n c o u r a g e s

c o m m u n ic a t i o n , a n d y e t i s n o t a f r a i d t o f a i l .

3 ) T h e e f f e c t i v e u s e o f O O - m o d e l i n g .

4 ) T h e e x i s t e n c e o f a s t r o n g a r c h i t e c t u r a l v i s i o n .

5 ) T h e a p p l i c a t i o n o f a w e l l - m a n a g e d i t e r a t i v e a n d i n c r e m e n t a l d e v e l o p m e n t l i f e c y c l e .

R E U S E :

O r g a n i z a t i o n s t h a t t r a n s la t e s r e u s a b le c o m p o n e n t s i n t o c o m m e r c ia l

p r o d u c t s h a s t h e f o l l o w in g c h a r a c t e r i s t i c s :

- T h e y h a v e a n e c o n o m ic m o t i v a t i o n f o r c o n t i n u e d s u p p o r t .

- T h e y t a k e o w n e r s h ip o f im p r o v in g p r o d u c t q u a l i t y , a d d in g n e w

f e a t u r e s a n d t r a n s i t i o n in g t o n e w t e c h n o lo g ie s .

Page 16: UNIT-1 - CS1021 - Software Project Management

- T h e y h a v e a s u f f i c i e n t l 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 I A L C O M P O N E N T S

Page 17: UNIT-1 - CS1021 - Software Project Management

I M P R O V I N G S O F T W A R E P R O C E S S E S :

T h e r e a r e t h r e e d i s t i n c t p r o c e s s p e r s p e c t i v e s :

- M e t a p r o c e s s :

I t i s a n O r g a n i z a t i o n ‟ s p o l i c i e s , p r o c e d u r e s , a n d p r a c t i c e s f o r p u r s u in g a

s o f t w a r e - i n t e n s i v e l i n e o f b u s in e s s .

T h e f o c u s o f t h i s p r o c e s s i s o f o r g a n i z a t i o n a l e c o n o m ic s , l o n g - t e r m

s t r a t e g ie s , a n d a s o f t w a r e R O I .

- M a c r o p r o c e s s :

A p r o je c t ‟ s p o l i c i e s , a n d p r a c t i c e s f o r p r o d u c in g a c o m p le t e s o f t w a r e

p r o d u c t w i t h i n c e r t a i n c o s t , s c h e d u le , a n d q u a l i t y c o n s t r a in t s .

T h e f o c u s o f t h e m a c r o p r o c e s s i s o n c r e a t i n g a n s u f f i c i e n t

i n s t a n c e o f t h e m e t a p r o c e s s f o r a s p e c i f i c s e t o f c o n s t r a in t s .

- M i c r o p r o c e s s :

A p r o je c t s t e a m ‟s p o l i c i e s , p r o c e d u r e s , a n d p r a c t i c e s f o r a c h ie v in g a n

a r t i f a c t o f a s o f t w a r e p r o c e s s .

T h e f o c u s o f t h e m ic r o p r o c e s s i s o n a c h ie v in g a n i n t e r m e d ia t e p r o d u c t

b a s e l i n e w i t h s u f f i c i e n t f u n c t i o n a l i t y a s e c o n o m ic a l l y a n d r a p id l y a s p r a c t i c a l .

T h e o b je c t i v e o f p r o c e s s im p r o v e m e n t i s t o m a x im iz e t h e a l l o c a t i o n o f

r e s o u r c e s t o p r o d u c t i v e a c t i v i t i e s a n d m in im iz e t h e im p a c t o f o v e r h e a d a c t i v i t i e 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 t e r s , a n d s c h e d u le .

Page 18: UNIT-1 - CS1021 - Software Project Management

I M P R O V I N G T E A M E F F E C T I V E N E S S :

- C O C O M O m o d e l s u g g e s t s t h a t t h e c o m b i n e d e f f e c ts o f p e r s o n n e l s k i l l a n d e x p e r i e n c e c a n

h a v e a n i m p a c t o n p r o d u c t i v i t y a s m u c h a s a f a c t o r o f f o u r o v e r t h e u n s k i l l e d p e r s o n n e l .

- B a la n c e a n d c o v e r a g e a r e t w o o f t h e m o s t im p o r t a n t f e a t u r e s o f

e x c e l l e n t t e a m s . W h e n e v e r a t e a m i s i n o u t o f b a la n c e t h e n i t i s v u ln e r a b le .

- I t i s t h e r e s p o n s ib i l i t y o f t h e p r o je c t m a n a g e r t o k e e p t r a c k o f h i s t e a m s . S in c e

t e a m w o r k i s m u c h m o r e im p o r t a n t t h a n t h e s u m o f t h e i n d i v i d u a l s .

B o e h m – s t a f f i n g p r i n c ip l e s :

- T h e p r i n c i p l e o f t o p t a l e n t : U s e b e t t e r a n d f e w e r p e o p le .

- T h e p r i n c i p l e o f j o b m a t c h i n g : F i t t h e t a s k s t o t h e s k i l l s a n d m o t i v a t i o n o f

t h e p e o p le a v a i l a b le .

Page 19: UNIT-1 - CS1021 - Software Project Management

- T h e p r i n c i p l e o f c a r e e r p r o g r e s s i o n : A n o r g a n i z a t i o n d o e s b e s t i n t h e

l o n g r u n b y h e lp in g i t s p e o p le t o s e l f - a c t u a l i z e .

4 ) T h e p r i n c i p l e o f t e a m b a l a n c e : S e le c t p e o p le w h o w i l l c o m p le m e n t a n d

s y n c h r o n i z e w i t h o n e a n o t h e r .

5 ) T h e p r i n c i p l e o f p h a s e - o u t : K e e p i n g a m i s f i t o n t h e t e a m d o e s n ‟ t b e n e f i t a n y o n e .

I n g e n e r a l , s t a f f i n g i s a c h i e v e d b y t h e s e c o m m o n m e t h o d s :

– I f p e o p le a r e a l r e a d y a v a i l a b le w i t h r e q u i r e d s k i l l s e t , j u s t t a k e t h e m

– I f p e o p l e a r e a l r e a d y a v a i l a b l e b u t d o n o t h a v e t h e r e q u i r e d s k i l l s , r e - t r a i n t h e m

– I f p e o p le a r e n o t a v a i l a b le , r e c r u i t t r a i n e d p e o p le

– I f y o u a r e n o t a b le t o r e c r u i t s k i l l e d p e o p le , r e c r u i t a n d t r a i n p e o p le

S t a f f i n g o f k e y p e r s o n n e l i s v e r y i m p o r t a n t :

- P r o je c t M a n a g e r

- S o f t w a r e A r c h i t e c t

I m p o r t a n t P r o j e c t M a n a g e r S k i l l s :

H i r i n g s k i l l s . F e w d e c i s i o n s a r e a s im p o r t a n t a s h i r i n g d e c i s i o n s . P la c in g t h e

r i g h t p e r s o n i n t h e r i g h t j o b s e e m s o b v io u s b u t i s s u r p r i s i n g l y h a r d t o a c h ie v e .

C u s t o m e r - i n t e r f a c e s k i l l . A v o id in g a d v e r s a r i a l r e l a t i o n s h ip s a m o n g s t a k e -

h o ld e r s i s a p r e r e q u i s i t e f o r s u c c e s s .

D e c i s i o n - m a k i n g s k i l l . T h e j i l l i o n b o o k s w r i t t e n a b o u t m a n a g e m e n t h a v e f a i l e d t o

p r o v i d e a c l e a r d e f i n i t i o n o f t h i s a t t r i b u t e . W e a l l k n o w a g o o d l e a d e r w h e n w e r u n

i n t o o n e , a n d d e c i s i o n - m a k i n g s k i l l s e e m s o b v i o u s d e s p i t e i t s i n t a n g i b l e d e f i n i t i o n .

T e a m - b u i l d i n g s k i l l . T e a m w o r k r e q u i r e s t h a t a m a n a g e r e s t a b l i s h t r u s t , m o t i v a t e

p r o g r e s s , e x p l o i t e c c e n t r i c p r i m a d o n n a s , t r a n s i t i o n a v e r a g e p e o p l e i n t o t o p

p e r f o r m e r s , e l i m i n a t e m i s f i t s , a n d c o n s o l i d a t e d i v e r s e o p i n i o n s i n t o a t e a m d i r e c t i o 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 t i 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 .

Page 20: UNIT-1 - CS1021 - Software Project Management

I m p o r t a n t S o f t w a r e A r c h i t e c t S k i l l s :

• T e c h n i c a l S k i l l s : t h e m o s t i m p o r t a n t s k i l l s f o r a n a r c h i t e c t . T h e s e m u s t

i n c l u d e s k i l l s i n b o t h , t h e p r o b l e m d o m a i n a n d t h e s o l u t i o n d o m a i n

• P e o p l e M a n a g e m e n t S k i l l s : m u s t e n s u r e t h a t a l l p e o p l e u n d e r s t a n d a n d

i m p l e m e n t t h e a r c h i t e c t u r e i n e x a c t l y t h e w a y h e h a s c o n c e p t u a l i z e d i t .

T h i s c a l l s f o r a l o t o f p e o p l e m a n a g e m e n t s k i l l s a n d p a t i e n c e .

• R o l e M o d e l : m u s t b e a r o l e m o d e l f o r t h e s o f t w a r e e n g i n e e r s – t h e y w o u l d

e m u l a t e a l l g o o d ( a n d a l s o a l l b a d ! ) t h i n g s t h a t t h e a r c h i t e c t d o e s

I M P R O V I N G A U T O M A T I O N T H R O U G H S O F T W A R E

E N V I R O N M E N T S

T h e f o l l o w i n g a r e t h e s o m e o f t h e c o n f i g u r a t i o n m a n a g e m e n t e n v i r o n m e n t s

w h i c h p r o v i d e t h e f o u n d a t i o n f o r e x e c u t i n g a n d i m p l e m e n t i n g t h e p r o c e s s :

P l a n n i n g t o o l s , Q u a l i t y a s s u r a n c e a n d a n a l y s i s t o o l s , T e s t t o o l s , a n d

U s e r i n t e r f a c e s p r o v i d e c r u c i a l a u t o m a t i o n s u p p o r t f o r e v o l v i n g t h e s o f t w a r e

e n g i n e e r i n g a r t i f a c t s .

R o u n d - t r i p e n g i n e e r i n g : i s a t e r m u s e d t o d e s c r i b e t h e k e y c a p a b i l i t y

o f e n v i r o n m e n t s t h a t s u p p o r t i t e r a t i v e d e v e l o p m e n t .

F o r w a r d e n g i n e e r i n g : i s t h e a u t o m a t i o n o f o n e e n g i n e e r i n g a r t i f a c t

f r o m a n o t h e r , m o r e a b s t r a c t r e p r e s e n t a t i o n . E x : c o m p i l e r s a n d l i n k e r s

R e v e r s e e n g i n e e r i n g : i s t h e g e n e r a t i o n o f m o d i f i c a t i o n o f m o r e

a b s t r a c t r e p r e s e n t a t i o n f r o m a n e x i s t i n g a r t i f a c t . E x : c r e a t i n g v i s u a l

d e s i g n m o d e l f r o m a s o u r c e c o d e .

A C H I E V I N G R E Q U I R E D Q U A L I T Y :

K e y e l e m e n t s t h a t i m p r o v e o v e r a l l s o f t w a r e q u a l i t y i n c l u d e t h e

f o l l o w i n g :

- F o c u s i n g o n p o w e r f u l r e q u i r e m e n t s a n d c r i t i c a l u s e c a s e e a r l y i n t h e l i f e

c y c l e

- F o c u s in g o n r e q u i r e m e n ts c o m p le t e n e s s a n d t r a c e a b i l i t y l a t e i n t h e l i f e c y c l e

Page 21: UNIT-1 - CS1021 - Software Project Management

- F o c u s i n g t h r o u g h o u t t h e l i f e c y c l e o n a b a l a n c e b e t w e e n

r e q u i r e m e n t s e v o l u t i o n , d e s i g n e v o l u t i o n , a n d p l a n e v o l u t i o n

- U s i n g m e t r i c s a n d i n d i c a t o r s t o m e a s u r e t h e p r o g r e s s a n d q u a l i t y o f

a n a r c h i t e c t u r e a s i t e v o l v e s f r o m h i g h - l e v e l p r o t o t y p e i n t o a f u l l y

b i d d a b l e p r o d u c t

- P r o v i d i n g i n t e g r a t e d l i f e - c y c l e e n v i r o n m e n t s t h a t s u p p o r t e a r l y a n d

c o n t i n u o u s c o n f i g u r a t i o n c o n t r o l , c h a n g e m a n a g e m e n t , r i g o r o u s d e s i g n

m e t h o d s , d o c u m e n t a u t o m a t i o n , a n d r e g r e s s i o n t e s t a u t o m a t i o n

- U s i n g v i s u a l m o d e l in g a n d h i g h e r l e v e l l a n g u a g e s t h a t s u p p o r t a r c h i t e c t u r a l

c o n t r o l , a b s t r a c t i o n , r e l i a b l e p r o g r a m m i n g , r e u s e , a n d s e l f - d o c u m e n t a t i o n

- E a r l y a n d c o n t i n u o u s c l o s e l o o k i n t o p e r f o r m a n c e i s s u e s t h r o u g h

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 i o n s

I n o r d e r t o e v a l u a t e t h e p e r f o r m a n c e t h e f o l l o w i n g s e q u e n c e o f e v e n t s a r e n e c e s s a r y ,

1) P r o je c t i n c e p t i o n 2 ) Initial design review

2) M id - l i f e - c y c le d e s ig n r e v ie w 4 ) Integration and test

Page 22: UNIT-1 - CS1021 - Software Project Management
Page 23: UNIT-1 - CS1021 - Software Project Management

P E E R I N S P E C T I O N S : A P R A G M A T I C V I E W :

Page 24: UNIT-1 - CS1021 - Software Project Management

T H E O L D W A Y A N D T H E N E W

- O v e r t h e p a s t t w o d e c a d e s s o f t w a r e d e v e l o p m e n t i s a r e - e n g i n e e r i n g

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 i s t r a n s i t i o n i s w a s m o t i v a t e d b y t h e u n s a t i s f a c t o r y d e m a n d f o r t h e

s o f t w a r e a n d r e d u c e d c o s t .

T H E P R I N C I P L E S O F C O N V E N T I O N A L S O F T W A R E E N G I N E E R I N G

B a s e d o n m a n y y e a r s o f s o f t w a r e d e v e l o p m e n t e x p e r i e n c e , t h e

s o f t w a r e i n d u s t r y p r o p o s e d s o m a n y p r i n c i p l e s ( n e a r l y 2 0 1 b y – D a v i s ‟ s ) .

O f w h i c h D a v i s ‟ s t o p 3 0 p r i n c i p l e s a r e :

1 ) M a k e q u a l i t y # 1 : Q u a l i t y m u s t b e q u a n t i f i e d a n d m e c h a n i s m s p u t i n t o

p l a c e t o m o t i v a t e i t s a c h i e v e m e n t .

2 ) H i g h - q u a l i t y s o f t w a r e i s p o s s i b l e : I n o r d e r t o i m p r o v e t h e q u a l i t y o f

t h e p r o d u c t w e n e e d t o i n v o l v i n g t h e c u s t o m e r , s e l e c t t h e p r o t o t y p i n g ,

s i m p l i f y i n g d e s i g n , c o n d u c t i n g i n s p e c t i o n s , a n d h i r i n g t h e b e s t p e o p l e .

Page 25: UNIT-1 - CS1021 - Software Project Management

3 ) G i v e p r o d u c t s t o c u s t o m e r s e a r l y : N o m a t t e r h o w h a r d y o u t r y t o l e a r n

u s e r ‟ s n e e d s d u r i n g t h e r e q u i r e m e n t s p h a s e , t h e m o s t e f f e c t i v e w a y t o

d e t e r m i n e r e a l n e e d s i s t o g i v e u s e r s a p r o d u c t a n d l e t t h e m p l a y w i t h i t .

4 ) D e t e r m i n e t h e p r o b l e m b e f o r e w r i t i n g t h e r e q u i r e m e n t s : W h e n e v e r

a p r o b l e m i s r a i s e d m o s t e n g i n e e r s p r o v i d e a s o l u t i o n . B e f o r e w e t r y t o

s o l v e a p r o b l e m , b e s u r e t o e x p l o r e a l l t h e a l t e r n a t i v e s a n d d o n ‟ t b e

b l i n d e d b y t h e u n d e r s t a n d a b l e s o l u t i o n .

5 ) E v a l u a t e d e s i g n a l t e r n a t i v e s : A f t e r t h e r e q u i r e m e n t s a r e g r e e d u p o n ,

w e m u s t e x a m i n e a v a r i e t y o f a r c h i t e c t u r e s a n d a l g o r i t h m s a n d c h o o s e

t h e o n e w h i c h i s n o t u s e d e a r l i e r .

6 ) U s e a n a p p r o p r i a t e p r o c e s s m o d e l : F o r e v e r y p r o j e c t , t h e r e a r e s o

m a n y p r o t o t y p e s ( p r o c e s s m o d e l s ) . S o s e l e c t t h e b e s t o n e t h a t i s e x a c t l y

s u i t a b l e t o o u r p r o j e c t .

7 ) U s e d i f f e r e n t l a n g u a g e s f o r d i f f e r e n t p h a s e s : O u r i n d u s t r y ‟ s m a i n a i m

i s t o p r o v i d e s i m p l e s o l u t i o n s t o c o m p l e x p r o b l e m s . I n o r d e r t o a c c o m p l i s h

t h i s g o a l c h o o s e d i f f e r e n t l a n g u a g e s f o r d i f f e r e n t m o d u l e s / p h a s e s i f r e q u ir e d .

8 ) M i n i m i z e i n t e l l e c t u a l d i s t a n c e : W e h a v e t o d e s i g n t h e s t r u c t u r e o f a

s o f t w a r e i s a s c l o s e a s p o s s i b l e t o t h e r e a l - w o r l d s t r u c t u r e .

9 ) P u t t e c h n i q u e s b e f o r e t o o l s : A n u n d i s c i p l i n e d s o f t w a r e e n g i n e e r w i t h

a t o o l b e c o m e s a d a n g e r o u s , u n d i s c i p l i n e d s o f t w a r e e n g i n e e r .

1 0 ) G e t i t r i g h t b e f o r e y o u m a k e i t f a s t e r : I t i s v e r y e a s y t o m a k e a

w o r k i n g p r o g r a m r u n f a s t e r t h a n i t i s t o m a k e a f a s t p r o g r a m w o r k . D o n ‟ t

w o r r y a b o u t o p t i m i z a t i o n d u r i n g i n i t i a l c o d i n g .

1 1 ) I n s p e c t t h e c o d e : E x a m i n e t h e d e t a i l e d d e s i g n a n d c o d e i s a m u c h

b e t t e r w a y t o f i n d t h e e r r o r s t h a n t e s t i n g .

1 2 ) G o o d m a n a g e m e n t i s m o r e i m p o r t a n t t h a n g o o d t e c h n o l o g y

1 3 ) P e o p l e a r e t h e k e y t o s u c c e s s : H i g h l y s k i l l e d p e o p l e w i t h

a p p r o p r i a t e e x p e r i e n c e , t a l e n t , a n d t r a i n i n g a r e k e y . T h e r i g h t p e o p l e w i t h

i n s u f f i c i e n t t o o l s , l a n g u a g e s , a n d p r o c e s s w i l l s u c c e e d .

1 4 ) F o l l o w w i t h c a r e : E v e r y b o d y i s d o i n g s o m e t h i n g b u t d o e s n o t m a k e i t

r i g h t f o r y o u . I t m a y b e r i g h t , b u t y o u m u s t c a r e f u l l y a s s e s s i t s a p p l i c a b i l i t y

t o y o u r e n v i r o n m e n t .

Page 26: UNIT-1 - CS1021 - Software Project Management

1 5 ) T a k e r e s p o n s ib i l i t 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 i l 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 l in 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

t h e m o s t o u t o f d a t e m e t h o d s t o p r o d u c e s t y l i s h d e s i g n .

1 6 ) U n d e r s t a n d t h e c u s t o m e r ’ s p r i o r i t i e s . I t i s p o s s i b l e t h e c u s t o m e r

w o u l d t o l e r a t e 9 0 % o f t h e f u n c t i o n a l i t y d e l i v e r e d l a t e i f t h e y c o u l d h a v e

1 0 % o f i t o n t i m e .

1 7 ) T h e m o r e t h e y s e e , t h e m o r e t h e y n e e d . T h e m o r e f u n c t i o n a l i t y

( o r p e r f o r m a n c e ) y o u p r o v i d e a u s e r , t h e m o r e f u n c t i o n a l i t y ( o r

p e r f o r m a n c e ) t h e u s e r w a n t s .

Page 27: UNIT-1 - CS1021 - Software Project Management

1 8 ) P l a n t o t h r o w o n e a w a y . O n e o f t h e m o s t i m p o r t a n t c r i t i c a l s u c c e s s

f a c t o r s i s w h e t h e r o r n o t a p r o d u c t i s e n t i r e l y n e w . S u c h b r a n d - n e w

a p p l i c a t i o n s , a r c h i t e c t u r e s , i n t e r f a c e s , o r a l g o r i t h m s r a r e l y w o r k t h e f i r s t t i m e .

1 9 ) D e s i g n f o r c h a n g e . T h e a r c h i t e c t u r e s , c o m p o n e n t s , a n d

s p e c i f i c a t i o n t e c h n i q u e s y o u u s e m u s t a c c o m m o d a t e c h a n g e .

2 0 ) D e s i g n w i t h o u t d o c u m e n t a t i o n i s n o t d e s i g n . I h a v e o f t e n h e a r d s o f t w a r e

e n g i n e e r s s a y , “ I h a v e f i n i s h e d t h e d e s i g n . A l l t h a t i s l e f t i s t h e d o c u m e n ta t io n . ”

v i ) U s e t o o l s , b u t b e r e a l i s t i c . S o f t w a r e t o o l s m a k e t h e i r u s e r s m o r e e f f i c i e n t .

v i i ) A v o i d t r i c k s . M a n y p r o g r a m m e r s l o v e t o c r e a t e p r o g r a m s w i t h t r i c k s -

c o n s t r u c t s t h a t p e r f o r m a f u n c t i o n c o r r e c t l y , b u t i n a n o b s c u r e w a y .

S h o w t h e w o r l d h o w s m a r t y o u a r e b y a v o i d i n g t r i c k y c o d e .

v i i i ) E n c a p s u l a t e . I n f o r m a t i o n - h i d i n g i s a s i m p l e , p r o v e n c o n c e p t t h a t

r e s u l t s i n s o f t w a r e t h a t i s e a s i e r t o t e s t a n d m u c h e a s i e r t o m a i n t a i n .

i x ) U s e c o u p l i n g a n d c o h e s i o n . C o u p l i n g a n d c o h e s i o n a r e t h e b e s t

w a y s t o m e a s u r e s o f t w a r e ‟ s i n h e r e n t m a i n t a i n a b i l i t y a n d a d a p t a b i l i t y .

x ) U s e t h e M c C a b e c o m p l e x i t y m e a s u r e . A l t h o u g h t h e r e a r e m a n y

m e t r i c s a v a i l a b l e t o r e p o r t t h e i n h e r e n t c o m p l e x i t y o f s o f t w a r e , n o n e i s

a s i n t u i t i v e a n d e a s y t o 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 f t w a r e d e v e l o p e r s s h o u l d n e v e r b e

t h e p r i m a r y t e s t e r s o f t h e i r o w n s o f t w a r e .

x i i ) A n a l y z e c a u s e s f o r e r r o r s . I t i s f a r m o r e c o s t - e f f e c t i v e t o r e d u c e t h e

e f f e c t o f a n e r r o r b y p r e v e n t i n g i t t h a n i t i s t o f i n d a n d f i x i t . O n e w a y t o

d o t h i s i s t o a n a l y z e t h e c a u s e s o f e r r o r s a s t h e y a r e d e t e c t e d .

x i i i ) R e a l i z e t h a t s o f t w a r e ’ s e n t r o p y i n c r e a s e s . A n y s o f t w a r e s y s t e m t h a t

u n d e r g o e s c o n t i n u o u s c h a n g e w i l l g r o w i n c o m p l e x i t y a n d b e c o m e

m o r e a n d m o r e d i s o r g a n i z e d .

Page 28: UNIT-1 - CS1021 - Software Project Management

2 9 . P e o p l e a n d t i m e a r e n o t i n t e r c h a n g e a b l e . M e a s u r i n g a p r o j e c t s o l e l y

b y p e r s o n - m o n t h s m a k e s l i t t l e s e n s e .

3 0 ) E x p e r t e x c e l l e n c e . Y o u r e m p l o y e e s w i l l d o m u c h b e t t e r i f y o u h a v e

h i g h e x p e c t a t i o n s f o r t h e m .

T H E P R I N C I P 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 t h e p r o c e s s o n a n a r c h i t e c t u r e - f i r s t a p p r o a c h : ( C e n t r a l d e s ig n e le m e n t )

- D e s ig n a n d i n t e g r a t i o n f i r s t , t h e n p r o d u c t i o n a n d t e s t

2 ) E s t a b l i s h a n i t e r a t i v e l i f e - c y c le p r o c e s s : ( T h e r i s k m a n a g e m e n t e le m e n t )

- R i s k c o n t r o l t h r o u g h e v e r - i n c r e a s in g f u n c t i o n , p e r f o r m a n c e , q u a l i t y .

W i t h t o d a y ‟ s s o p h i s t i c a t e d s y s t e m s , i t i s n o t p o s s ib le t o d e f i n e t h e

e n t i r e p r o b le m , d e s ig n t h e e n t i r e s o lu t i o n , b u i l d t h e s o f t w a r e , t h e n t e s t t h e e n d

p r o d u c t i n s e q u e n c e . I n s t e a d , a n d i t e r a t i v e p r o c e s s t h a t r e f i n e s t h e p r o b le m

u n d e r s t a n d in g , a n e f f e c t i v e s o lu t i o n , a n d a n e f f e c t i v e p la n o v e r s e v e r a l i t e r a t i o n s

e n c o u r a g e s b a la n c e d t r e a t m e n t o f a l l s t a k e h o ld e r o b je c t i v e s .

M a jo r r i s k s m u s t b e a d d r e s s e d e a r l y t o i n c r e a s e p r e d i c t a b i l i t y a n d a v o id

e x p e n s i v e d o w n s t r e a m s c r a p a n d r e w o r k .

3 ) T r a n s i t i o n d e s ig n m e t h o d s t o e m p h a s i z e c o m p o n e n t - b a s e d d e v e lo p m e n t : ( T h e

t e c h n o lo g y e le m e n t )

M o v in g f r o m L O C m e n t a l l y t o c o m p o n e n t - b a s e d m e n t a l l y i s n e c e s s a r y

t o r e d u c e t h e a m o u n t 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 a n d c u s t o m d e v e lo p m e n t . A

c o m p o n e n t i s a c o h e s i v e s e t o f p r e e x i s t i n g l i n e s o f c o d e , e i t h e r i n s o u r c e o r

e x e c u t a b le f o r m a t , w i t h a d e f i n e d i n t e r f a c e a n d b e h a v io r .

4 ) E s t a b l i s h a c h a n g e m a n a g e m e n t e n v i r o n m e n t : ( T h e c o n t r o l e l e m e n t )

- M e t r i c s , t r e n d s , p r o c e s s i n s t r u m e n t a t i o n

T h e d y n a m ic s o f i t e r a t i v e d e v e lo p m e n t , i n c lu d e c o n c u r r e n t w o r k f l o w s b y

d i f f e r e n t t e a m s w o r k in g o n s h a r e d a r t i f a c t s , n e c e s s i t a t e s o b je c t i v e l y c o n t r o l l e d b a s e l i n e .

Page 29: UNIT-1 - CS1021 - Software Project Management

5 ) E n h a n c e c h a n g e f r e e d o m t h r o u g h t o o l s t h a t s u p p o r t r o u n d - t r i p e n g in e e r i n g :

( T h e a u t o m a t i o n e le m e n t )

- C o m p le m e n t a r y t o o l s , i n t e g r a t e d e n v i r o n m e n t

R o u n d - t r i p e n g in e e r i n g i s t h e e n v i r o n m e n t s u p p o r t n e c e s s a r y t o a u t o m a t e

a n d s y n c h r o n i z e e n g in e e r i n g i n f o r m a t i o n i n d i f f e r e n t f o r m a t s . C h a n g e f r e e d o m i s

n e c e s s a r y i n a n i t e r a t i v e p r o c e s s .

6 ) C a p t u r e d e s ig n a r t i f a c t s i n r i g o r o u s , m o d e l - b a s e d n o t a t i o n :

- A m o d e l - b a s e d a p p r o a c h s u p p o r t s t h e e v o lu t i o n o f s e m a n t i c a l l y r i c h g r a p h i c a l

a n d t e x t u a l d e s ig n n o t a t i o n s .

- V i s u a l m o d e l i n g w i t h r i g o r o u s n o t a t i o n s a n d f o r m a l m a c h in e - p r o c e s s a b le

l a n g u a g e p r o v id e s m o r e o b je c t i v e m e a s u r e s t h a n t h e t r a d i t i o n a l a p p r o a c h o f h u m a n

r e v ie w a n d i n s p e c t i o n o f a d h o c d e s ig n r e p r e s e n t a t i o n s i n p a p e r d o c .

7 ) I n s t r u m e n t t h e p r o c e s s f o r o b je c t i v e q u a l i t y c o n t r o l a n d p r o g r e s s a s s e s s m e n t :

- L i f e - c y c le a s s e s s m e n t o f t h e p r o g r e s s a n d q u a l i t y o f a l l i n t e r m e d ia t e p r o d u c t

m u s t b e i n t e g r a t e d i n t o t h e p r o c e s s .

- T h e b e s t a s s e s s m e n t m e c h a n i s m s a r e w e l l - d e f i n e d m e a s u r e s d e r i v e d d i r e c t l y

f r o m t h e e v o l v i n g e n g in e e r i n g a r t i f a c t s a n d i n t e g r a t e d i n t o a l l a c t i v i t i e s a n d t e a m s .

8 ) U s e a d e m o n s t r a t i o n - b a s e d a p p r o a c h t o a s s e s s i n t e r m e d ia t e a r t i f a c t s :

T r a n s i t i o n in g f r o m w h e t h e r t h e a r t i f a c t i s a n e a r l y p r o t o t y p e , a b a s e l i n e

a r c h i t e c t u r e , o r a b e t a c a p a b i l i t y i n t o a n e x e c u t a b le d e m o n s t r a t i o n o f r e l e v a n t

p r o v id e s m o r e t a n g ib le u n d e r s t a n d in g o f t h e d e s ig n t r a d e o f f s , e a r l y i n t e g r a t i o n a n d

e a r l i e r e l im i n a t i o n o f a r c h i t e c t u r a l d e f e c t s .

9 ) P la n i n t e r m e d ia t e r e le a s e s i n g r o u p s o f u s a g e s c e n a r i o s w i t h

e v o l v i n g l e v e l s o f d e t a i l :

1 0 ) E s t a b l i s h a c o n f i g u r a b le p r o c e s s t h a t e c o n o m ic a l l y s c a la b le :

N o s in g le p r o c e s s i s s u i t a b le f o r a l l s o f t w a r e d e v e lo p m e n t s . T h e p r o c e s s

m u s t e n s u r e t h a t t h e r e i s e c o n o m y o f s c a le a n d R O I .

Page 30: UNIT-1 - CS1021 - Software Project Management
Page 31: UNIT-1 - CS1021 - Software Project Management