Transcript
Page 1: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 7

3 . W h a t i s S o f t w a r e D e v e l o p m e n t L i f e C y c l e ( S D L C ) ?

S o f t w a r e D e v e l o p m e n t L i f e C y c l e c o n s i s t s o f d e t a i l s s t e p s a n d

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

r e p l a c e , a l t e r , e n h a n c e , t e s t o r e v e n l a u n c h a s o f t w a r e .

T h e a c t i v i t i e s c a n b e b r o k e n d o w n i n t o a v e r y d e t a i l l e v e l b u t a t

t h e s a m e t i m e t h e y c a n b e g r o u p e d i n t o f i v e ( 5 ) c o r e c a t e g o r i e s :

P l a n , D e s i g n , D e v e l o p , T e s t a n d D e p l o y .

B e l o w i s a g r a p h i c r e p r e s e n t a t i o n w h i c h d i s p l a y s a t y p i c a l

S o f t w a r e D e v e l o p m e n t L i f e C y c l e .

F i g u r e 1 - S o f t w a r e D e v e l o p m e n t C y c l e

Plan

Design

DevelopTest

Deploy

Page 2: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 8

S t a g e 1 : P l a n

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

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

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

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

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

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

f r o m t h e b u s i n e s s u s e r s . Q u a l i t y A s s u r a n c e a n d R i s k m a n a g e m e n t

p l a n a r e a l s o p r e p a r e d a t p l a n n i n g s t a g e t o m i n i m i z e a n y

u n p r e d i c t a b l e r i s k s . B u s i n e s s C a s e D o c u m e n t a t i o n ( B S D ) s h o u l d b e

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

v i e w o f t h e f u l l p l a n .

S t a g e 2 : D e s i g n

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

S o f t w a r e R e q u i r e m e n t S p e c i f i c a t i o n ( S R S ) d o c u m e n t w h i c h

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

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

b e g i n s .

W i t h S R S i n h a n d s , m o r e t h a n o n e d e s i g n o f t h e p r o d u c t

a r c h i t e c t u r e w i l l b e p r o p o s e d b a s e d o n t h e r e q u i r e m e n t s i n S R S .

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

( D D S ) b y t h e j u n i o r m e m b e r s o f t h e t e a m a n d p a s s e d t o t h e s e n i o r

m e m b e r s , p r o j e c t s t a k e h o l d e r s f o r r e v i e w . D D S w i l l b e e v a l u a t e d

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

f r i e n d l i n e s s , r i s k , i n t e g r a t i o n , e t c .

S t a g e 3 : D e v e l o p

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

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

t h e s o f t w a r e a c c o r d i n g t o t h e D D S a n d a t t h e s a m e t i m e f o l l o w

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

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

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

F u n c t i o n a l S p e c i f i c a t i o n ( F S ) s h o u l d b e w r i t t e n b y p r o g r a m m e r s t o

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

Page 3: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 9

S t a g e 4 : T e s t

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

s t a g e . N o n e t h e l e s s , t w o ( 2 ) m a j o r o n e s s h o u l d b e d o n e b y

p r o g r a m m e r s , e n d - u s e r s a n d q u a l i t y a s s u r a n c e e x p e r t s . T h e r e a s o n

i s t h a t p r o g r a m m e r s k n o w t h e b e s t o f h o w t h e p r o g r a m w o r k s a n d

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

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

t a s k s w h i c h c a n h e l p t o e n s u r e t h e s o f t w a r e c a n f u l f i l l t h e

r e q u i r e m e n t s . L a s t b u t n o t l e a s t , q u a l i t y c o n t r o l e x p e r t s e x a m i n e

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

a r c h i t e c t u r e , s e c u r i t y , i n t e g r a t i o n w i t h o t h e r s y s t e m s , e t c . A s a

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

t h e t h r e e g r o u p s o f t e s t e r s t o c o n d u c t a t t h e t e s t s t a g e .

S t a g e 5 : D e p l o y

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

w e r e r u n t o e n s u r e s u c c e s s f u l s o f t w a r e e x e c u t i o n ,

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

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

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

s e e k i n g f r o m m a n a g e m e n t i n t h i s s t a g e . D e p l o y m e n t P l a n ( D P )

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

t h a t i s g o i n g t o m a k e . G u i d e l i n e d o c u m e n t a t i o n s s h o u l d a l s o b e

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

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

s o r t o f q u e s t i o n s r e g a r d i n g t o t h e s o f t w a r e . F i n a l l y , C o n t i n g e n c y

P l a n s ( C P ) s h o u l d b e c r e a t e d a c c o r d i n g t o t h e f i n a l i z e d s o f t w a r e .

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

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

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

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

c h o i c e s .

Page 4: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 1 0

4 . W h y d o w e n e e d S o f t w a r e D e v e l o p m e n t L i f e

C y c l e ?

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

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

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

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

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

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

r e s o u r c e s t o g e t t h e “ s a m e ” r e s u l t .

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

S o f t w a r e D e v e l o p m e n t L i f e C y c l e .

R e a s o n 1 : Q u a l i t y A s s u r a n c e a n d Q u a l i t y C o n t r o l

T h e d e f i n i t i o n o f Q u a l i t y A s s u r a n c e i s a s e t o f a c t i v i t i e s f o r

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

M e a n w h i l e , t h e d e f i n i t i o n o f Q u a l i t y C o n t r o l i s a s e t o f a c t i v i t i e s

f o r e n s u r i n g q u a l i t y o f t h e d e v e l o p e d p r o d u c t . W h i l e Q A a i m s o n

p r e v e n t i n g d e f e c t s b y f o c u s i n g t h e p r o c e s s o f t h e p r o d u c t

d e v e l o p m e n t , Q C a i m s o f i d e n t i f y i n g t h e d e f e c t s b y e x a m i n i n g

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

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

t o i d e n t i f y a n y d e f e c t t h a t i s m i s s e d i n Q S p r o c e s s e s . T h u s , w i t h

Q A a s a p r o a c t i v e q u a l i t y p r o c e s s a n d Q C a s r e a c t i v e q u a l i t y

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

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

u n r e a s o n a b l e i s s u e s .

Page 5: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 1 1

R e a s o n 2 : E a s i e r i m p l e m e n t a t i o n c o n t r o l

W i t h i n t h e f i v e ( 5 ) c o r e s t a g e s i n S D L C , m u l t i p l e d o c u m e n t a t i o n s

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

p r o g r a m m e r s a n d t e s t e r s t o f o l l o w a n d f o r t h e m a n a g e m e n t s a n d

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

a c t i o n t a k e n . B u s i n e s s C a s e , S o f t w a r e R e q u i r e m e n t S p e c i f i c a t i o n

( S R S ) , D e s i g n D o c u m e n t S p e c i f i c a t i o n ( D D S ) , F u n c t i o n a l

S p e c i f i c a t i o n , T e s t P l a n , D e p l o y m e n t P l a n , e t c . a r e a l l w e l l -

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

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

w h i c h i m p l i e s r e q u i r e m e n t s c a n b e f u l f i l l e d a n d p r o j e c t s c h e d u l e

c a n b e m e t a s p l a n n e d .

R e a s o n 3 : F u l f i l l u s e r r e q u i r e m e n t s o r e v e n e x c e e d i n g t h e i r

e x p e c t a t i o n s

A s m e n t i o n e d e a r l i e r , Q u a l i t y A s s u r a n c e ( Q A ) a n d Q u a l i t y C o n t r o l

( Q C ) h e l p t o e n s u r e t h e p r o d u c t d e l i v e r i n g a s u s e r r e q u i r e d w i t h

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

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

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

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

d e s i g n s t a g e , d e s i g n e r s n o t o n l y g i v e r e s o l u t i o n s f o r t h e

r e q u i r e m e n t s b u t a l s o t a k e c o n s i d e r a t i o n s o f i n t e g r a t i o n w i t h p e e r

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

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

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

t h e y a r e e x p e c t e d t o b e w e l l - t h o u g h t - o u t i n e v e r y p r o d u c t .

Page 6: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 1 2

5 . R o l e s

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

f i v e c o r e s t a g e s , t h r e e ( 3 ) k e y m e m b e r s s h o u l d a l w a y s i n v o l v e i n

t h e p r o j e c t s w h o m t a k e u p m o r e t h a n 9 5 % o f t h e a c t i v i t i e s i n

S D L C . T h e t a k e u p d i f f e r e n t r o l e s i n e a c h s t a g e t o c r o s s c h e c k

a n d m o n i t o r e a c h o t h e r ’ s w o r k t o e n s u r e e a c h d e c i s i o n m a d e i n

t h e S D L C i s v a l i d a n d n e c e s s a r y .

P r o j e c t M a n a g e r

D e f i n e p r o j e c t s c o p e a n d g o a l s

B u d g e t c o n t r o l

R e s o u r c e a l l o c a t i o n

B u s i n e s s d o c u m e n t a t i o n s

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

R o l l o u t a p p r o v a l

B u s i n e s s A n a l y s t / S y s t e m A n a l y s t

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

B u s i n e s s & S y s t e m D o c u m e n t a t i o n s

E v a l u a t e b u s i n e s s r e q u i r e m e n t s

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

E n s u r e b u s i n e s s n e e d s a r e p r o p e r l y a n a l y z e d a n d c o r r e c t l y

i m p l e m e n t e d i n t h e s o l u t i o n

F a c i l i t a t e r e l a t i o n s h i p b e t w e e n b u s i n e s s a n d t e c h n i c a l r o l e s

Q u a l i t y A s s u r a n c e a n d C o n t r o l

P r o g r a m m e r / S o l u t i o n D e v e l o p e r

I n t e r p r e t b u s i n e s s r e q u i r e m e n t s a n d t r a n s l a t e t h e m i n t o a

d e p l o y a b l e s o l u t i o n

T e c h n i c a l s t u d y

R e s o l v e P r o d u c t d e f e c t s

P r e p a r e f u n c t i o n a l s p e c i f i c a t i o n s

P e r f o r m t e s t i n g i n a c c o r d a n c e w i t h a g r e e d s t r a t e g y

Page 7: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 1 3

6 . S o f t w a r e D e v e l o p m e n t L i f e C y c l e M o d e l s

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

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

f o l l o w s a s e r i e s o f u n i q u e s t e p s t h a t b e s t f i t t o i t s p r o j e c t t y p e t o

e n s u r e s u c c e s s p r o c e s s o f s o f t w a r e d e v e l o p m e n t . W a t e r f a l l ,

I t e r a t i v e , A g i l e & S c u m a n d R a p i d A p p l i c a t i o n D e v e l o p m e n t ( R A D )

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

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

f o l l o w s :

M o d e l 1 : W a t e r f a l l

W a t e r f a l l m o d e l i s t h e e a r l i e s t , b e s t - k n o w n a n d m o s t c o m m o n l y

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

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

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

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

A p i c t o r i a l i l l u s t r a t i o n o f W a t e r f a l l M o d e l c a n b e f o u n d b e l o w :

F i g u r e 2 - W a t e r f a l l A p p r o a c h

Requirement

Design

Implementation

Testing

Deployment

Maintenance

Page 8: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 1 4

6 P h a s e s o f W a t e r f a l l M o d e l

1 . R e q u i r e m e n t

R e q u i r e m e n t P h a s e m a i n l y f o c u s e s o n c o m m u n i c a t i n g w i t h

b u s i n e s s u s e r s t o g a t h e r a n d a n a l y z e r e q u i r e m e n t s . P r o j e c t

m a n a g e r s t r y t h e i r b e s t t o u n d e r s t a n d a n d a n a l y z e t h e

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

s c o p e a n d a r r a n g e r e s o u r c e s i n t h e B u s i n e s s C a s e

D o c u m e n t a t i o n .

2 . D e s i g n

W i t h t h e B u s i n e s s C a s e D o c u m e n t a t i o n i n h a n d p r e p a r e d i n

R e q u i r e m e n t P h a s e , B u s i n e s s A n a l y s t s e v a l u a t e a n d s t a r t o n t h e

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

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

B a s e d o n t h e h i g h - l e v e l d e s i g n w h i c h h a s f u l f i l l e d a l l t h e u s e r

r e q u i r e m e n t s , S y s t e m A n a l y s t s t r a n s f o r m t h e h i g h - l e v e l d e s i g n

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

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

a t D e s i g n P h a s e a s w e l l .

3 . I m p l e m e n t a t i o n

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

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

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

R e q u i r e m e n t a n d D e s i g n p h a s e s . T h e i r o u t p u t i s t h e F u n c t i o n a l

S p e c i f i c a t i o n w h i c h f i l e s a l l t h e d e t a i l s o f t h e f u n c t i o n s t h a t

a r e i m p l e m e n t e d .

4 . T e s t i n g

W i t h t h e i n p u t s f r o m t h e I m p l e m e n t a t i o n P h a s e , t e s t e r s i n

T e s t i n g P h a s e w i l l d r a f t t h e T e s t P l a n s b a s e d o f t h e F u n c t i o n a l

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

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

B u s i n e s s A n a l y s t s p r e p a r e t h e T e s t P l a n f o r t h e u s e r s w h i c h

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

C o n t r o l ( Q C ) e x p e r t s g a t h e r a l l t h e d o c u m e n t a t i o n s f r o m a l l

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

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

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

Page 9: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 1 5

5 . D e p l o y m e n t

A f t e r r e c e i v i n g a “ P A S S ” f r o m t h e T e s t i n g P h a s e , t h e p r o d u c t i s

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

b e d e p l o y e d t o p r o d u c t i o n s e r v e r s o r r e l e a s e f o r u s e r s t o i n s t a l l

o n t h e i r o w n m a c h i n e .

6 . M a i n t e n a n c e

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

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

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

M a i n t e n a n c e P h a s e i s f o r c a t e r i n g s u c h s i t u a t i o n a n d d e l i v e r

c h a n g e s t o t h e u s e r s a g a i n . W i t h i n M a i n t e n a n c e P h a s e , a

s u b s e t o f S D L C W a t e r f a l l M o d e l i s i n v o l v e d .

I n p u t s a n d O u t p u t s o f e a c h p h a s e a r e s u m m a r i z e d a n d i l l u s t r a t e d

a s b e l o w :

F i g u r e 3 – D o c u m e n t a t i o n s f o r W a t e r f a l l A p p r o a c h

1. Requirement

• Business Case Documentation

2. Design

• Software Requirement Specification

• Design Documentation Specification

3. Implementation

• Functional Specification

4. Testing

• Test Plans

5. Deployment

• Deployment Plan

• Contingency Plan

Page 10: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 1 6

A p p l i c a t i o n s o f m o d e l

A p p r o p r i a t e s i t u a t i o n s f o r u s i n g W a t e r f a l l M o d e l i n t h e S D L C :

L i m i t e d a m o u n t o f a m b i g u o u s o r u n c o n f i r m e d

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

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

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

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

t o p i c k u p t h e r o l e a t e a c h p h a s e

S i m p l e a n d s m a l l p r o j e c t

A d v a n t a g e s a n d D i s a d v a n t a g e s

A d v a n t a g e s

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

s t a g e t h a t g i v e s c l e a r m i l e s t o n e s

E a s i e r t o c o n t r o l w i t h l i m i t e d e x t e r n a l f a c t o r s a s n o

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

P r o v i d e e x t e n s i v e d o c u m e n t a t i o n s

M o r e d i s c i p l i n e d a n d p r o v i d e d i s t i n c t a c t i o n s f o r t h e

p r o j e c t t o m o v e f o r w a r d a s t h e d e v e l o p m e n t m o v e f r o m

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

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

D i s a d v a n t a g e s

C a n n o t h a v e s c o p e c h a n g e o r r e q u i r e m e n t c h a n g e

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

N o t f l e x i b l e t o h a n d l e u n e x p e c t e d r i s k s

L i m i t e d c o m m u n i c a t i o n w i t h u s e r s a s b o u n d e d t o b e d o n e

a t t h e b e g i n n i n g a n d t h e e n d o f t h e p r o j e c t

M o r e r e s o u r c e s a r e n e e d e d a n d s o m e o f t h e t e a m m a t e s

m i g h t b e i d l e f o r a l o n g d u r a t i o n

P o o r m o d e l f o r l o n g o r o n g o i n g p r o j e c t s a s t h e p r o j e c t s

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

p h a s e

Page 11: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 1 7

M o d e l 2 : I t e r a t i v e

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

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

“ p r o d u c t ” i s i t e r a t i v e l y e n h a n c e d a n d e v o l v e d t o t h e f i n a l

p r o d u c t f o r d e p l o y m e n t . I t i s c a l l e d a s a “ b u i l d ” f o r e a c h

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

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

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

A p i c t o r i a l i l l u s t r a t i o n o f I t e r a t i v e M o d e l i s d e m o n s t r a t e d b e l o w :

F i g u r e 4 - I t e r a t i v e A p p r o a c h

Design

Implement

Test

Design

Implement

Test

Design

Implement

Test

Design

Implement

Test

Design

Implement

Test

Requirements

Deployment

Maintenance

Page 12: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 1 8

6 P h a s e s o f I t e r a t i v e M o d e l

1 . R e q u i r e m e n t

S a m e a s W a t e r f a l l M o d e l , R e q u i r e m e n t P h a s e f o c u s e s o n

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

C a s e D o c u m e n t a t i o n .

2 . D e s i g n

S i m i l a r t o W a t e r M o d e l , B u s i n e s s A n a l y s t s a n d S y s t e m

A n a l y s t s w o r k o n t h e l o g i c a l a n d p h y s i c a l d e s i g n s

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

S p e c i f i c a t i o n a n d D e s i g n S p e c i f i c a t i o n D o c u m e n t . H o w e v e r ,

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

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

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

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

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

r o u n d o f b u i l d . T h e r e f o r e , t h e s u b s e t o f d e s i g n s i s n o t

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

3 . I m p l e m e n t a t i o n

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

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

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

i m p l e m e n t a t i o n .

4 . T e s t i n g

P r o g r a m m e r s , b u s i n e s s u s e r s a n d Q C e x p e r t s w i l l a l l b e

i n v o l v e d f o r e a c h s u b s e t o f t e s t i n g . H o w e v e r , b u s i n e s s u s e r s

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

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

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

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

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

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

5 . D e p l o y m e n t

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

b e r e a d y b y t h i s p h a s e a n d a D e p l o y m e n t P l a n f o r r e l e a s e .

Page 13: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 1 9

6 . M a i n t e n a n c e

A g a i n , l i k e W a t e r f a l l M o d e l , i t i s i n e v i t a b l e t h a t e v e r y

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

S D L C I t e r a t i v e M o d e l i s g o i n g t o t a k e p a r t i n M a i n t e n a n c e

P h a s e .

I n p u t s a n d O u t p u t s o f e a c h p h a s e a r e s u m m a r i z e d a n d i l l u s t r a t e d

a s b e l o w :

F i g u r e 5 - D o c u m e n t a t i o n s f o r I t e r a t i v e A p p r o a c h

A f t e r e v e r y s u b s e t o f t e s t i n g , i t l o o p s b a c k t o t h e D e s i g n P h a s e

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

1. Requirement

• Business Case Documentation

2. Design

• Software Requirement Specification

• Design Documentation Specification

3. Implementation

• Functional Specification

4. Testing

• Test Plans

5. Deployment

• Deployment Plan

• Contingency Plan

Page 14: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 2 0

A p p l i c a t i o n s o f m o d e l

A p p r o p r i a t e s i t u a t i o n s f o r u s i n g I t e r a t i v e M o d e l i n t h e S D L C :

M a j o r r e q u i r e m e n t s a r e d e f i n e d b u t t h e m i n o r d e t a i l s m i g h t

e v o l v e w h e n t i m e g o e s

N e w t e c h n o l o g i e s a r e b e i n g u s e d a n d t h e r e i s a l e a r n i n g c u r v e

f o r t h e p r o g r a m m e r s t o l e a r n

R e s o u r c e s a r e l i m i t e d t o d o a h u g e p r o j e c t a s i f a s m a l l p r o j e c t

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

V e r y h i g h r i s k a s t h e g o a l o f t h e p r o j e c t m i g h t c h a n g e f r o m

t i m e t o t i m e

A d v a n t a g e s a n d D i s a d v a n t a g e s

A d v a n t a g e s

E a s i e r t o s t a r t o n a c o m p l e x p r o j e c t

P r e v i e w t h e p r o j e c t p e r i o d i c a l l y

P a r a l l e l i m p l e m e n t a t i o n i s a l l o w e d

P r o j e c t c a n s t i l l b e m a n a g e d l i k e w a t e r f a l l M o d e l w i t h

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

E a s i e r t e s t i n g a n d t r o u b l e s h o o t i n g a t e a c h b u i l d

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

S u i t a b l e f o r h u g e a n d c o r e p r o j e c t s

B e t t e r c o m m u n i c a t i o n w i t h b u s i n e s s u s e r s a s f e e d b a c k s

c a n b e g a t h e r a t e a c h b u i l d

D i s a d v a n t a g e s

H i g h r i s k d u e t o s y s t e m a r c h i t e c t u r e a n d d e s i g n s k e e p

c h a n g i n g

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

M o r e m a n a g e m e n t w o r k t o d o t o e n s u r e e a c h b u i l d c a n

m e e t t h e s t a n d a r d

O v e r l a p p i n g i m p l e m e n t a t i o n c o u l d b e c h a o t i c

N e e d m o r e i n v o l v e m e n t o f b u s i n e s s u s e r s

E a s i e r b u t m o r e t i m e i s n e e d e d f o r e a c h t e s t i n g a s e a c h

t e s t i n g h a v e t o c o v e r a l l t h e p r e v i o u s w o r k s

Page 15: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 2 1

M o d e l 3 : A g i l e

A g i l e M o d e l e x t e n d s t h e a d v a n t a g e s o f I t e r a t i v e M o d e l a n d a i m s

o n u s e r s a t i s f a c t i o n a n d p r o d u c t a d a p t a b i l i t y b y r a p i d d e l i v e r i n g

o f p r o d u c t . F r o m R e q u i r e m e n t p h a s e t o D e p l o y m e n t P h a s e , A g i l e

M o d e l b r e a k s t h e p r o d u c t i n t o s m a l l b u i l d s . I n s t e a d o f g o i n g b a c k

t o D e s i g n P h a s e l i k e I t e r a t i v e M o d e l a f t e r e a c h s u b s e t o f t e s t i n g ,

A g i l e M o d e l g o e s t o D e p l o y m e n t P h a s e a n d r e l e a s e t h e p r o d u c t .

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

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

A p i c t o r i a l i l l u s t r a t i o n o f A g i l e M o d e l i s d e m o n s t r a t e d b e l o w :

F i g u r e 6 - A g i l e A p p r o a c h

Requirement

Design

ImplementationTesting

Deployment

Requirement

Design

ImplementationTesting

Deployment

B u i l d 1

B u i l d 2

Page 16: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 2 2

5 P h a s e s o f A g i l e M o d e l

1 . R e q u i r e m e n t

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

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

g a t h e r f e e d b a c k s a f t e r e v e r y r e l e a s e . H o w e v e r , a B u s i n e s s

C a s e D o c u m e n t a t i o n i s s t i l l n e e d e d a t t h e s t a r t u p o f t h e

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

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

e a c h b u i l d .

2 . D e s i g n

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

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

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

b u i l d s w i l l s t i l l f o l l o w t h e s c o p e t h a t i s d e f i n e d i n t h e

B u s i n e s s C a s e D o c u m e n t a t i o n . S o f t w a r e R e q u i r e m e n t

S p e c i f i c a t i o n a n d D e s i g n S p e c i f i c a t i o n D o c u m e n t a t i o n a r e

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

i n t h e c u r r e n t b u i l d .

3 . I m p l e m e n t a t i o n

P r o g r a m m e r s t e n d t o h a v e m o r e “ f r e e d o m ” i n A g i l e M o d e l

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

H o w e v e r , t h e y a r e s t i l l r e q u i r e d t o f o l l o w s t r i c t l y o n t h e

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

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

4 . T e s t i n g

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

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

Q C e x p e r t s . B u s i n e s s u s e r s t e n d t o t e s t o n a v e r y h i g h l e v e l

o r n o t e v e n i n c l u d e s b u s i n e s s u s e r s i n t h e T e s t i n g P h a s e .

5 . D e p l o y m e n t

U s u a l l y p r o d u c t r e l e a s e t o u s e r s t w o – t h r e e ( 2 - 3 ) w e e k s

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

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

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

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

Page 17: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 2 3

6 . M a i n t e n a n c e ( N o t n e c e s s a r y )

N o t n e c e s s a r y f o r A g i l e M o d e l a s t h e n e x t b u i l d i s c o m i n g u p

a n d c a n b e d o n e i n t h e n e x t b u i l d .

I n p u t s a n d O u t p u t s o f e a c h p h a s e a r e s u m m a r i z e d a n d i l l u s t r a t e d

a s b e l o w :

F i g u r e 7 - D o c u m e n t a t i o n s f o r A g i l e A p p r o a c h

A g i l e M o d e l d o e s n ’ t p a y t o o m u c h a t t e n t i o n o n t h e

d o c u m e n t a t i o n a s W a t e r f a l l a n d I t e r a t i v e M o d e l s . A l t h o u g h t h e

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

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

i s v e r y l i m i t e d .

1. Requirement

• Business Case Documentation

2. Design

• Software Requirement Specification

• Design Documentation Specification

3. Implementation

• Functional Specification

4. Testing

• Test Plans

5. Deployment

• Deployment Plan

• Contingency Plan

Page 18: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 2 4

A p p l i c a t i o n s o f m o d e l

N o d e t a i l i n f o r m a t i o n i s p r o v i d e d f r o m b u s i n e s s u s e r s

F e a t u r e s d r i v e n p r o j e c t

P r o d u c t r e q u i r e m e n t s c h a n g e d y n a m i c a l l y

H a v e r e s o u r c e s o n t e s t i n g

C l o s e c o l l a b o r a t i o n w i t h i n t h e t e a m

C l o s e r e l a t i o n s h i p w i t h b u s i n e s s u s e r s

A d v a n t a g e s a n d D i s a d v a n t a g e s

A d v a n t a g e s

R e a l i s t i c a p p r o a c h – w h a t y o u n e e d t h e m o s t , i m p l e m e n t

f i r s t ; w h a t i s l e s s i m p o r t a n t , i m p l e m e n t l a s t

F u n c t i o n a l i t i e s c a n b e d e v e l o p e d a n d d e l i v e r e d p r o m p t l y

L e s s r e s o u r c e s a r e r e q u i r e d d u e t o t h e b y b u i l d a p p r o a c h

D e l i v e r t h e p r o j e c t p e r i o d i c a l l y w i t h n e w f u n c t i o n s

M o r e f r e e d o m a n d f l e x i b i l i t y a t e a c h p h a s e e s p e c i a l l y f o r

p r o g r a m m e r s

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

D i s a d v a n t a g e s

V e r y h i g h r i s k s f o r m a i n t e n a n c e a n d e x t e n d i b i l i t y

N o t s u i t a b i l i t y f o r c o m p l e x a n d c o r e p r o j e c t s

P r o j e c t M a n a g e r s h a v e t o f o l l o w c l o s e l y a t a l l t i m e t o

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

D e p e n d s h e a v i l y o n b u s i n e s s u s e r s ’ f e e d b a c k w h i c h c o u l d

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

u s e r s a r e n o t s u r e w h a t t h e y a c t u a l l y w a n t

T o o m u c h i n d i v i d u a l d e p e n d e n c y a s n o t m u c h

d o c u m e n t a t i o n t o f o l l o w

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

l a c k o f d o c u m e n t a t i o n s

Page 19: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 2 5

M o d e l 4 : R a p i d A p p l i c a t i o n D e v e l o p m e n t ( R A D )

R a p i d A p p l i c a t i o n D e v e l o p m e n t ( R A D ) f o c u s e s o n g a t h e r i n g u s e r

r e q u i r e m e n t s t h r o u g h w o r k s h o p s , t e s t o n t h e p r e - r e l e a s e d

p r o t o t y p e s c o n d u c t e d b y u s e r s a n d t h e n r e u s e t h e p r o t o t y p e s t o

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

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

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

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

a n d f a v o r s f a s t e r p r o d u c t d e l i v e r y . R A D M o d e l i s b a s i c a l l y

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

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

r e g a r d i n g t h e r e q u i r e m e n t s .

A p i c t o r i a l i l l u s t r a t i o n o f R A D M o d e l c a n b e f o u n d b e l o w :

F i g u r e 8 - R a p i d A p p l i c a t i o n D e v e l o p m e n t A p p r o a c h

Prototype 1

Prototype 2

Prototype 3

Final Releasing Product

Page 20: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 2 6

5 P h a s e s o f R A D M o d e l

1 . B u s i n e s s M o d e l i n g

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

i d e n t i f i e d b e t w e e n d i f f e r e n t b u s i n e s s c h a n n e l s . A B u s i n e s s

A n a l y s i s R e p o r t i s p r e p a r e d t o f i n d o u t t h e e s s e n t i a l

i n f o r m a t i o n f o r t h e b u s i n e s s s u c h a s h o w i t c a n b e a c q u i r e d ,

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

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

2 . D a t a M o d e l i n g

W i t h t h e i n p u t s o f B u s i n e s s M o d e l i n g P h a s e , a l l t h e n e c e s s a r y

i n f o r m a t i o n s h o u l d h a v e b e e n i d e n t i f i e d . A t D a t a M o d e l i n g

P h a s e , t h e i d e n t i f i e d i n f o r m a t i o n i s t r a n s f o r m e d t o c e r t a i n

d a t a s e t s o r d a t a o b j e c t s w h i c h w i l l b e f u r t h e r e v a l u a t e d

a n d d e f i n e d t h e i r r e l a t i o n s h i p s i n r e l e v a n c e t o t h e B u s i n e s s

M o d e l .

3 . P r o c e s s M o d e l i n g

T h e d e f i n e d d a t a s e t p a s s e d f r o m D a t a M o d e l i n g P h a s e w i l l

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

a c h i e v e t h e b u s i n e s s o b j e c t i v e s t h a t a r e i d e n t i f i e d a t

B u s i n e s s M o d e l i n g P h a s e . A n y c h a n g e s o r e n h a n c e m e n t s o n

t h e d a t a s e t s w i l l b e d o n e a t P r o c e s s M o d e l i n g P h a s e .

O p e r a t i o n o f c r e a t e , r e t r i e v e , u p d a t e o r d e l e t e ( C R U D ) o f a

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

4 . A p p l i c a t i o n G e n e r a t i o n

A u t o m a t e d t o o l s w i l l b e u s e d t o c o n v e r t a l l t h e P r o c e s s

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

p r o t o t y p e .

5 . T e s t i n g & T u r n o v e r

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

a t t h i s p h a s e w i t h o u t t a k i n g c o n s i d e r a t i o n o f t h e f u n c t i o n s

t h a t a r e i m p l e m e n t e d i n o t h e r p r o t o t y p e s . H o w e v e r , t h e

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

Page 21: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 2 7

A p i c t o r i a l i l l u s t r a t i o n o f t h e i n p u t s a n d o u t p u t s f o r e a c h

p r o t o t y p e i s s h o w n :

F i g u r e 9 - D o c u m e n t a t i o n s f o r R a p i d A p p l i c a t i o n D e v e l o p m e n t

A p p r o a c h

A p p l i c a t i o n o f m o d e l

B u s i n e s s u s e r s t e n d t o c h a n g e t h e i r r e q u i r e m e n t s f r o m t i m e

t o t i m e d u e t o t h e d y n a m i c b u s i n e s s e n v i r o n m e n t

S o f t w a r e t h a t i s f e a s i b l e t o b e m o d u l a r i z e d

S o f t w a r e t h a t i s a c c e p t a b l e t o b e d e l i v e r e d p a r t b y p a r t

D e s i g n e r s w h o h a v e t h e b u s i n e s s k n o w l e d g e a n d k n o w t h e

r e l a t i o n s h i p b e t w e e n p r o t o t y p e s

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

c o d e g e n e r a t o r

Business Modeling

• Business Analysis Report

Data Modeling

• Data Sets / Data Objects

Process Modeling

• Data Sets / Data Obejcts with functionalities

Application Generation

• Program / Codes

Testing & Turnover

• Prototype

Page 22: Software Development Life Cycle · 3. What is Software Development Life Cycle (SDLC)? Softw are Devel opment Li fe Cycl e con si st s of det ail s st ep s an d a cti viti es whi ch

S o f t w a r e D e v e l o p m e n t L i f e C y c l e 2 8

A d v a n t a g e s a n d D i s a d v a n t a g e s

A d v a n t a g e s

C a n t o l e r a t e f r e q u e n t r e q u i r e m e n t c h a n g e

M e a s u r a b l e p r o g r e s s

H i g h i n t e g r a t i o n a s i t i s d e s i g n e d t o i n t e g r a t e w i t h o t h e r

p r o t o t y p e s a t a l l t i m e

M o r e c o m m u n i c a t i o n w i t h b u s i n e s s u s e r s w h i c h c a n b e

d o n e a f t e r e a c h p r o t o t y p e r e l e a s e

P r e v i e w a n d R e v i e w t h e p r o d u c t p e r i o d i c a l l y

L e s s p r o g r a m m e r d e p e n d e n t w i t h a u t o m a t e d c o d e

g e n e r a t o r

S h o r t e r S D L C R A D t i m e

D i s a d v a n t a g e s

D e p e n d i n g t o o m u c h o n t h e a u t o m a t e d c o d e g e n e r a t i n g

t o o l s

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

a u t o m a t i o n

C o s t l y a u t o m a t i o n t o o l s

R e q u i r e d s k i l l f u l d e s i g n e r s w h o h a v e t h e b u s i n e s s

k n o w l e d g e a n d t h e t e c h n i c a l s k i l l s

L i m i t e d t o m o d u l a r i z a t i o n a v a i l a b l e s o f t w a r e

T o o m u c h d e p e n d e n c y o n b u s i n e s s u s e r s ’ f e e d b a c k a n d

t h e y h a v e t o b e i n v o l v e d a t t h e w h o l e S D L C R A D p r o c e s s

R e q u i r e m e n t s c o u l d b e t o o d y n a m i c

N o t m u c h d o c u m e n t a t i o n s

H i g h l y d e p e n d s o n t h e B u s i n e s s A n a l y s i s R e p o r t


Top Related