Unit 1
Unit 1
Basics − S/W engineering paradigm − Life cycle models (Water fall, Incremental, Spiral,
WINWIN, Spiral, Evolutionary, Prototyping, Object Oriented) − System engineering −
Computer based system −Verification − Validation − Life cycle process – Development
process − System engineering hierarchy
----------------------------------------------------------------------------------------------------------
--------------
1.1 Basics:
● Software is m o re th an ju s t a p ro g ra m c o d e . A p ro g ra m is a n e xe c u ta b le c o d e, w h ic h
s erv es s o m e c o m p u ta tio n a l p u rp o s e. S o ftw a re is c o n s id ered to b e c o lle c tio n o f
ex ec u ta b le p ro g ra m m in g c o d e , d a ta s tru c tu re s a n d d o c u m en ta tio n s . S o ftw a re , w h e n
m a d e fo r a s p e c ific re q u ire m e n t is c a lled software product.
Definitions
(2 ) T h e s tu d y o f a p p ro a c h e s a s in th e a b o v e s ta te m en t.
● S o f tw a re is e n g in e ered o r d ev elo p ed , n o t m a n u fa c tu re d .
● S o f tw a re d o es n o t w ea r o u t.
● M o s t s o ftw a re is c u s to m b u ilt ra th er th a n b e in g a s s em b le d fro m c o m p o n en ts .
Software Evolution
T h e p ro c es s o f d e ve lo p in g a s o ftw a re p ro d u c t u s in g s o ftw a re e n g in ee rin g p rin c ip le s a n d
m eth o d s is refe rre d to a s software evolution. T h is in c lu d e s th e in itia l d ev elo p m en t o f
s o f tw a re a n d its m a in te n a n c e a n d u p d a tes , till d es ired s o ftw a re p ro d u c t is d ev elo p e d , w h ic h
s a tis f ie s th e e xp ec ted req u ire m e n ts .
E v o lu tio n s ta rts fro m th e req u ire m e n t g a th erin g p ro c es s . A fter w h ic h d ev elo p ers c re a te a
p ro to typ e o f th e in ten d ed s o ftw a re a n d s h o w it to th e u s e rs to g e t th eir fee d b a c k a t th e e a rly
s ta g e o f s o ftw a re p ro d u c t d ev elo p m e n t. T h e u s e rs s u g g e s t c h a n g es , o n w h ic h s ev era l
c o n s ec u tiv e u p d a te s a n d m a in ten a n c e k e ep o n c h a n g in g to o . Th is p ro c es s c h a n g e s to th e
o rig in a l s o ftw a re , till th e d es ired s o ftw a re is a c c o m p lis h ed .
● R e q u irem en t g a th erin g
● S o f tw a re d e s ig n
● P ro g ra m m in g
2.Software Design Paradigm
T h is p a ra d ig m is a p a rt o f S o ftw a re D ev elo p m en t a n d in c lud es –
● D e s ig n
● M a in ten a n c e
● P ro g ra m m in g
3. Programming Paradigm
is a s ub s et o f S o ftw a re d e s ig n p a rad ig m w h ic h is fu rth e r a s u b s e t o f S o ftw a re d ev elo p m en t
p a ra d ig m .
A p ro c e s s d e fin e s w h o is d o in g w h a t w h e n a n d h o w to re a c h a c e rta in g o a l.
T h e a im o f s o ftw a re p ro c e s s is e ff e c tiv e o n -tim e d eliv e ry o f s o f tw a re w ith q u a lity.
2Action: A c tio n s c o n s is t o f th e s e t o f ta s k s th a t is u s e d to p ro d u c e th e p ro d u c t.
Process framework
1.Communication
2.Planning
5.Deployment
▶ T h e s o f tw a re is d e live re d to th e c u s to m e r, w h o e v a lu a te s th e p ro d u c t a n d p ro v id e s
fe e d b a c k b a s e d o n th e ev a lu a tio n .
▶ G en e ra lly, th e f ra m ew o rk a c tivitie s a re a p p lie d ite ra tive ly a s a p ro je c t p ro g re s s e s .
▶ E a c h p ro je c t itera tio n p ro d u c e s a s o f tw a re in c rem e n t th a t p ro v id es s ta k e h o ld ers
w ith a s u b s e t o f o v e ra ll s o ftw a re f ea tu res a n d f u n c tio n a lity.
▶ A s ea c h in c re m en t is p ro d u c e d , th e s o f tw a re b e c o m es m o re a n d m o re c o m p le te.
▶ T h e P ro c e s s fra m e w o rk a c tiv ities a re c o m p lem e n te d b y a n u m b er o f u m b rella
a c tivitie s w h ic h h e lp s to m a n a g e a n d c o n tro l p ro g re s s , q u a lity , c h a n g e , a n d ris k .
Umbrella activities:
1 . Software project tracking and control - h e lp s to a s s e s s p ro g re s s a g a in s t th e p ro je c t
p la n a n d ta k e a n y n e c es s a ry a c tio n to m a in ta in th e s c h e d u le .
2. Risk management- a s s e s s e s ris k s th a t m a y a ffe c t th e o u tc o m e a n d q u a lity o f th e
p ro jec t.S o ftw a re q u a lity a s s u ra n c e d ef in e s th e a c tiv ities re q u ired to e n s u re s o ftw a re
q u a lity.
3. Technical reviews- a s s e s s th e p ro d u c ts to u n c o v e r a n d re m o v e e rro rs b ef o re th e y
a re p ro p a g a te d to th e n e xt a c tiv ity .
4. Measurement- d ef in es a n d c o lle c ts p ro c e s s , p ro jec t, a n d p ro d u c t m ea s u res th a t
a s s is t th e te a m in d e liv erin g s o ftw a re th a t m ee ts s ta k eh o ld ers ’ n ee d s .
5. Software configuration managemen- m a n a g es th e e ff ec ts o f c h a n g e th ro u g h o u t
th e s o ftw a re p ro c e s s .
6. Reusability management- d e fin e s c rite ria fo r w o rk p ro d u c t re u s e a n d es ta b lis h e s
m e c h a n is m s to a c h ie v e re u s a b le c o m p o n e n ts .
7. Work product preparation and production en c o m p a s s es th e a c tivitie s req u ire d to
c rea te w o rk p ro d u c ts s u c h a s m o d e ls , d o c u m e n ts , a n d lis ts .
PROCESS MODEL
A ta s k s et d e f in es th e a c tu a l w o rk to b e d o n e to a c c o m p lis h th e
o b je c tiv e s o f a s o ftw a re en g in e e rin g a c tio n .
● A lis t o f th e ta s k to b e a c c o m p lis h e d
● A lis t o f th e w o rk p ro d u c ts to b e p ro d u c e d
● A lis t o f th e q u a lity a s s u ra n c e f ilte rs to b e a p p lie d
E g : F o r a s m a ll p ro jec t, th e ta s k s et m a y in c lu d e :
● M a k e a lis t o f s ta k e h o ld e rs fo r th e p ro je c t.
● In fo rm a l m e e tin g w ith s ta k e h o ld ers to id e n tify th e f u n c tio n s re q u ired
● D is c u s s req u ire m en ts a n d b u ild a fin a l lis t.
● P rio ritiz e re q u irem e n ts .
C h o o s e th e ta s k s e ts th a t a c h ie ve th e g o a l a n d s till m a in ta in q u a lity a n d a g ility .
Process Patterns
A p ro c e s s p a ttern p ro v id es a tem p la te f o r d e s c rib in g p ro b le m s o lu tio n s th a t is
en c o u n te red d u rin g s o ftw a re e n g in ee rin g w o rk
T h e tem p la te fo r d e s c rib in g a p ro c es s p a tte rn :
Pattern Name. - a m e a n in g fu l n a m e d e s c rib in g th e p a tte rn w ith in th e c o n te x t ( e .g .,
T e c h n ic a l R e v iew s ).
Forces - T h e e n v iro n m e n t w h e re th e p a tte rn is e n c o u n tere d .
Type - T h e p a ttern ty p e is s p ec ifie d . T h e y a re th re e typ e s o f p a tte rn s :
Advantages of SDLC:
● P ro vid e s a s tru c tu re d a p p ro a c h to s o ftw a re d e ve lo p m e n t, w h ic h h elp s to e n s u re
th a t im p o rta n t s te p s a re n o t o ve rlo o k e d .
● H e lp s to id en tif y a n d m a n a g e ris k s ea rly in th e d e ve lo p m e n t p ro c es s .
● H e lp s to d eliv e r s o f tw a re o n tim e a n d w ith in b u d g e t.
● H e lp s to e n s u re th a t s o ftw a re m e e ts th e n e e d s o f th e c u s to m er o r en d -u s e r.
● H e lp s to im p ro v e c o m m u n ic a tio n a n d c o lla b o ra tio n a m o n g te a m m e m b e rs .
● Better Resource Management: T h e S D L C h e lp s to e n s u re th a t re s o u rc es , s u c h a s
p ers o n n e l, eq u ip m e n t, and m a teria ls , a re a llo c a te d ef fe c tiv e ly th ro u g h o u t th e
d ev e lo p m en t p ro c e s s . T h is h e lp s to en s u re th a t th e p ro je c t s ta ys o n s c h ed u le a n d
w ith in b u d g e t.
● Quality Assurance: T h e S D LC in c lu d e s m u ltip le s ta g es o f q u a lity a s s u ra n c e,
in c lu d in g te s tin g , v a lid a tio n , a n d v erific a tio n . T h is h elp s to en s u re th a t th e f in a l p ro d u c t
is fre e o f b u g s a n d e rro rs a n d m e ets q u a lity s ta n d a rd s .
● Flexibility: T h e S D L C c a n b e a d a p te d to s u it th e n e ed s o f d iffe re n t typ e s o f p ro je c ts
and o rg a n iz a tio n s . T h is fle xib ility a llo w s o rg a n iz a tio n s to c ho os e th e SDLC
m e th o d o lo g y th a t w o rk s b e s t f o r th e m .
● Improved Documentation: T h e S D LC req u ire s d o c u m e n ta tio n a t e v ery s ta g e o f th e
d ev e lo p m en t p ro c e s s . T h is h e lp s to e n s u re th a t im p o rta n t in f o rm a tio n is c a p tu re d a n d
c a n b e re fe rred to la te r if n e e d e d .
● Continuous Improvement: T h e S D L C en c o u ra g es c o n tin u o u s im p ro ve m e n t b y
p ro v id in g o p p o rtu n itie s fo r fe e d b a c k a n d e v a lu a tio n th ro u g h o u t th e d e ve lo p m e n t
p ro c e s s . T h is h e lp s to en s u re th a t th e fin a l p ro d u c t m e ets th e c h a n g in g n e e d s o f th e
c u s to m e r o r e n d -u s er.
● Compliance: T h e S DLC can h e lp o rg a n iza tio n s to c o m p ly w ith re g u la to ry
re q u ire m en ts a n d in d u s try s ta n d a rd s b y e n s u rin g th a t s o f tw a re is d e v elo p ed in a
c o n tro lled a n d s tru c tu red m a n n e r.
Disadvantages of SDLC:
● C a n b e in fle x ib le , m a k in g it d iff ic u lt to a c c o m m o d a te c h a n g es o r u n e x p e c te d
e ve n ts .
● C a n b e tim e-c o n s u m in g a n d c o s tly, p a rtic u la rly in th e ea rly s ta g e s o f d ev e lo p m e n t.
● C a n lea d to d e la ys o r in c rea s ed c o s ts if req u ire m en ts c h a n g e d u rin g d e ve lo p m e n t.
● C a n lea d to a fo c u s o n d o c u m en ta tio n ra th e r th a n w o rk in g s o f tw a re .
● C a n lea d to a la c k o f c u s to m e r in v o lv e m e n t d u rin g d e ve lo p m e n t, w h ic h c a n re s u lt in
a p ro d u c t th a t d o e s n o t m e e t th e c u s to m er’s n ee d s .
● Limited scope for creativity: T h e S D L C is a s tru c tu re d a p p ro a c h to s o ftw a re
d ev e lo p m en t th a t c a n b e q u ite rig id in its p ro c es s es a n d p ro c ed u re s . T h is c a n lim it th e
a b ility o f d e v elo p ers to b e c rea tiv e a n d c o m e u p w ith in n o v a tiv e s o lu tio n s .
● Overemphasis on planning : T h e S D L C p la c e s a g re a t d ea l o f em p h a s is o n p la n n in g
a n d d o c u m e n ta tio n , w h ic h c a n s o m e tim es re s u lt in to o m u c h tim e a n d re s o u rc es b e in g
s p e n t o n th e s e a c tivitie s a t th e ex p en s e o f a c tu a lly d e ve lo p in g th e s o ftw a re .
● Difficulty in handling complex or large projects: T h e S D L C c a n b e d iffic u lt to
m a n a g e f o r c o m p le x o r la rg e p ro je c ts , a s it in v o lv e s a lo t o f c o o rd in a tio n a n d
c o m m u n ic a tio n a m o n g te a m m e m b ers a n d s ta k eh o ld ers .
● Risk of waterfall model: T h e S D L C fo llo w s a s e q u e n tia l p ro c es s , o f ten re fe rre d to
a s th e w a te rf a ll m o d e l. T h is m ea n s th a t ea c h s ta g e o f th e d e ve lo p m e n t p ro c e s s m u s t
b e c o m p le te d b e fo re m o v in g o n to th e n e x t s ta g e. T h is c a n re s u lt in d e la ys a n d
in c rea s ed c o s ts if p ro b lem s a re e n c o u n te re d la te r in th e d e ve lo p m e n t p ro c es s .
● Can be too rigid for agile projects: T h e S D LC is n o t w ell s u ite d fo r a g ile
d ev e lo p m en t m eth o d o lo g ie s , w h ic h re q u ire a m o re f lex ib le a n d itera tiv e a p p ro a c h to
s o ftw a re d e v elo p m en t.
● May not be suitable for all types of software: T h e S D L C m a y n o t b e s u ita b le fo r a ll
typ es o f s o ftw a re , p a rtic u la rly th o s e th a t req u ire a ra p id d e v elo p m e n t c yc le o r f req u e n t
u p d a te s .
1. Waterfall Model:
T h e w a te rf a ll m o d e l is th e o ld es t p a ra d ig m f o r s o ftw a re en g in e e rin g .
T h e w a te rf a ll m o d e l, s o m etim e s c a lled th e c la s s ic lif e c yc le , s u g g es ts a s ys te m a tic ,
s e q u en tia l a p p ro a c h to s o ftw a re d e v elo p m e n t th a t b eg in s w ith c u s to m er
s p e c if ic a tio n o f req u ire m en ts a n d p ro g re s s e s th ro u g h p la n n in g , m o d e llin g ,
c o n s tru c tio n , a n d d e p lo ym e n t, c u lm in a tin g in o n g o in g s u p p o rt o f th e c o m p le ted
s o ftw a re
T h is m o d el is u s ed fo r d e v elo p in g p ro je c ts w h ere th e re q u irem e n ts a re w ell d e fin e d
a n d rea s o n a b ly s ta b le , it le a d s to a lin ea r f a s h io n .
Phases:
1. Communication: C u s to m er s p e c if ic a tio n o f re q u ire m e n ts
2. Planning - id e n tif yin g th e w o rk ta s k , a n a lys in g th e ris k in v o lv e d , s c h e d u lin g th e
p ro jec t a n d es tim a tin g th e ef fo rt a n d tim e n e ed e d to c o m p le te th e p ro je c t e tc
3. Modelling w h ic h in v o lve s tra n s la tin g th e req u ire m en ts g a th e red in to a d e s ig n
4. Construction – c o n v e rtin g th e d e s ig n in to th e ex e c u ta b le c o d e a n d te s tin g to
u n c o ve r th e erro rs .
5. Deployment in c lu d es d e live ry o f th e p ro d u c t a n d e v a lu a tio n o f th e s o f tw a re .
Problems/Drawbacks of waterfall model
1. Real projects rarely follow the sequential flow that the model proposes . A lth o u g h
th e lin ea r m o d el c a n a c c o m m o d a te itera tio n , it d o es s o in d ire c tly. A s a re s u lt,
c h a n g es c a n c a u s e c o n fu s io n a s th e p ro je c t te a m p ro c ee d s
2 . It is often difficult for the customer to state all requirements explicitly. T h e
w a te rfa ll m o d e l re q u ires th is a n d h a s d if fic u lty a c c o m m o d a tin g th e n a tu ra l
u n c e rta in ty th a t e xis ts a t th e b eg in n in g o f m a n y p ro je c ts .
3 . The customer must have patience. A w o rk in g v e rs io n o f th e p ro g ra m (s ) w ill n o t b e
a v a ila b le u n til la te in th e p ro je c t tim e s p a n . A m a jo r b lu n d e r, if u n d e tec te d u n til th e
w o rk in g p ro g ra m is re vie w e d , c a n b e d is a s tro u s .
T h e lin e a r n a tu re o f th e c la s s ic life c yc le le a d s to “b lo c k in g s ta te s ” in w h ic h
s o m e p ro je c t te a m m em b e rs m u s t w a it fo r o th er m em b ers o f th e te a m to
c o m p lete d e p en d e n t ta s k s . T h e tim e s p e n t w a itin g c a n e x c e e d th e tim e s p en t o n
p ro d u c tiv e w o rk . T h e b lo c k in g s ta te s te n d to b e m o re p re v a le n t a t th e b e g in n in g
a n d e n d o f a lin ea r s e q u e n tia l p ro c e s s .
It c a n s e rv e a s a u s e fu l p ro c es s m o d e l in s itu a tio n s w h ere re q u ire m e n ts a re f ixe d
a n d w o rk is to p ro c e ed to c o m p le tio n in a lin ea r m a n n er.
V-model
A va ria tio n in th e re p re s e n ta tio n o f th e w a terf a ll m o d el is c a lle d th e V -m o d e l
w h ic h in c lu d es th e q u a lity a s s u ra n c e a c tio n s a s s o c ia te d w ith c o m m u n ic a tio n ,
m o d elin g a n d e a rly c o d e c o n s tru c tio n a c tiv ities .
T e a m firs t m o v e s d o w n th e le ft s id e o f th e V to re fin e th e p ro b le m
re q u irem e n ts .
O n c e c o d e is g e n e ra ted , th e te a m m o v es u p th e rig h t s id e o f th e V ,
p e rfo rm in g a s erie s o f tes ts th a t va lid a te e a c h o f th e m o d e ls c rea te d .
T h e V -m o d e l p ro v id e s a w a y o f v is u a lizin g h o w v e rif ic a tio n a n d va lid a tio n
a c tio n s a re a p p lie d a t th e d iff ere n t s ta g es o f d e v elo p m e n t.
2.Incremental Models
▶ T h e in c rem e n ta l m o d el delivers a series of releases, called increments, th a t
p ro v id e p ro g re s s iv e ly m o re fu n c tio n a lity fo r th e c u s to m er a s e a c h in c rem e n t is
d e liv ere d
In c re m e n ta l m o d e ls c o n s tru c t a partial implementation of a total system and then
slowly add increased functionality
T h e in c re m en ta l m o d el p rio ritiz es re q u irem e n ts o f th e s ys te m a n d th e n im p le m e n ts
th em in g ro u p s .
In c re m e n ta l M o d e l, a ls o k n o w n a s th e successive version model , is a w id e ly
a d o p ted m o d e l o f s o f tw a re d e ve lo p m e n t p ro c es s
H ere th e s o f tw a re re q u irem e n ts a re d iv id ed or b ro k en d ow n in to m u ltip le
s ta n d -a lo n e m o d u le s / in c re m e n ts in th e S D L C ( S o ftw a re D e ve lo p m e n t Lif e C yc le ).
E a c h in c rem e n t is trea te d a s a s u b -p ro je c t a n d g o es th ro u g h a ll p h a s es o f th e S D LC
in c re m e n ta l m o d e l.
T h is s o u n d s s im ila r to a n ite ra tiv e m o d e l. H o w e v er, th is m o d e l is a n en h a n c em e n t
to th e itera tiv e m o d el a n d d u e to th is , th e in c re m en ta l m o d e l is a ls o c a lle d th e
Iterative Enhancement Model.
E a c h ite ra tio n p a s s es th ro u g h th e requirements, design, coding and testing phases .
A n d ea c h s u b s e q u en t re lea s e o f th e s ys te m a d d s f u n c tio n to th e p re v io u s re le a s e
u n til a ll d e s ig n e d f u n c tio n a lity h a s b ee n im p lem e n ted .
▶ F o r e x a m p le , w o rd -p ro c es s in g s o ftw a re d e ve lo p e d u s in g th e in c re m en ta l p a ra d ig m
m ig h t d e live r b a s ic file m a n a g e m e n t, e d itin g , a n d d o c u m e n t p ro d u c tio n f u n c tio n s in
th e firs t in c rem e n t; m o re s o p h is tic a ted e d itin g a n d d o c u m e n t p ro d u c tio n
c a p a b ilitie s in th e s e c o n d in c rem e n t; s p ellin g a n d g ra m m a r c h ec k in g in th e th ird
in c rem e n t; a n d a d va n c e d p a g e la yo u t c a p a b ility in th e fo u rth in c re m e n t.
When to use Incremental models?
● R eq u ire m e n ts o f th e s ys te m a re c le a rly u n d e rs to o d
● W h e n d e m a n d f o r a n e a rly re le a s e o f a p ro d u c t a ris e s
● W h e n s o ftw a re e n g in ee rin g te a m a re n o t v e ry w e ll s k illed o r tra in e d
● W h e n h ig h -ris k fe a tu re s a n d g o a ls a re in v o lv e d
● S u c h m e th o d o lo g y is m o re in u s e f o r w e b a p p lic a tio n a n d p ro d u c t b a s e d
c o m p a n ie s
T h is m o d el c o n s is ts o f 4 b a s ic p h a s e s :
1. Requirements Planning – It in vo lv es th e u s e o f v a rio u s tec h n iq u e s u s e d in
re q u ire m en ts elic ita tio n lik e b ra in s to rm in g , ta s k a n a lys is , f o rm a n a lys is , u s e r
s c e n a rio s , F A S T (F a c ilita te d A p p lic a tio n D e ve lo p m e n t T e c h n iq u e ), e tc . It a ls o
c o n s is ts o f th e en tire s tru c tu re d p la n d es c rib in g th e c ritic a l d a ta , m e th o d s to o b ta in
it, a n d th e n p ro c e s s in g it to fo rm a fin a l re fin e d m o d el.
2. User Description – T h is p h a s e c o n s is ts o f ta k in g u s e r fe e d b a c k a n d b u ild in g th e
p ro to typ e u s in g d ev e lo p e r to o ls . In o th e r w o rd s , it in c lu d es re -ex a m in a tio n a n d
v a lid a tio n o f th e d a ta c o llec te d in th e firs t p h a s e . T h e d a ta s e t a ttrib u te s a re a ls o
id en tif ied a n d elu c id a te d in th is p h a s e.
▶ U s e o f re u s a b le c o m p o n e n ts h e lp s to re d u c e th e c y c le tim e o f th e p ro je c t.
▶ E n c o u ra g e s u s e r in v o lv e m e n t
▶ R ed u c ed c o s t.
▶ F le x ib le a n d a d a p ta b le to c h a n g es
Disadvantages
▶ F o r la rg e s c a la b le p ro je c ts , R A D re q u ires s u ff ic ie n t h u m a n re s o u rc es to c re a te th e
rig h t n u m b e r o f R A D te a m s .
▶ If d e v elo p ers a n d c u s to m ers a re n o t c o m m itted to th e ra p id -fire a c tiv ities , th e n
p ro jec t w ill fa il.
If a s ys te m c a n n o t p ro p e rly b e m o d u la riz e d , b u ild in g th e c o m p o n e n ts n e c es s a ry fo r
R A D w ill b e p ro b le m a tic .
T h e u s e o f p o w e rfu l a n d e ffic ie n t to o ls req u ire s h ig h ly s k ille d p ro fe s s io n a ls .
C u s to m e r in v o lv e m e n t is re q u ire d th ro u g h o u t th e lif e c yc le .
AdvantagesofObject-OrientedLifeCycleModel
● S in c e it is d a ta -fo c u s e d an d e a sy to w o rk w ith p ro b le m d o m a in s .
● It u s e s en c a p s u la tio n a n d d a ta h id in g p ro c e s s th at a llo w s a d e velo p er to b u ild ta m p er-
p ro o f s ys tem s.
● It en a b les s o f tw a re m o d u la rity, m a k in g it ea s ier to m a n a g e an d m a in ta in c o m p lex
s o ftw are.
● It a llo w s d e ve lo p ers to c rea te n ew m o d u le s u s in g exis tin g m o d e ls , s a vin g tim e a nd
d e ve lo p m e n t c o s t o f o rg a n iz a tio n s .
TheprimaryobjectivesoftheObject-OrientedModel
● O b jec t-o rien ted A n a lysis
● O b jec t-o rien ted D e s ig n
● O b jec t-o rien ted Im p lem en ta tio n
Object-OrientedAnalysis(OOA)
● T h e o b jec t-o rien te d a n alys is c o n s is ts o f th e p ro c es s w h ere a d ev elo p m en t tea m
ev a lu a tes th e s ys te m a n d o rg a n iz es th e req u irem e n ts a s o b je c ts . C o n tra ry to
tra d itio na l s tru c tura l a n a lys is , th e O O A he a vily d e p en d s o n a d v an c ed d a ta lik e U s e
C a s es a n d O b je c t M o d els .
● Use case- U s e C a s es a re w ritten d es c rip tio n s a b o ut h o w u s ers w ill b e ha v e w h e n th ey
en ter yo u r w e b s ite o r a p p lic a tio n . It c o m p rise s th e g o als o f ea c h u s er fro m th e p o in t
o f th eir en try to e xit.
● Object Model- A n o b jec t m o d el a llo w s th e d e velo p m e n t te a m to c re a te a n
a rc h itec tu ra l s o ftw a re o r s ys tem m o d el b efo re im p le m e ntin g o r p ro g ra m m in g . It h elp s
in d efinin g a so ftw a re/s ys tem in o b je c ts a n d c la s s es . It in fo rm s th e d eve lo p ers ab o u t
● In terac tio n b e tw ee n d iffe re nt m o d els
● In h erita n c e
● E n c ap s u la tio n
● O th er typ e s o f o b jec t-o rien ted in te rfa c es
T h e O O A s ta rts w ith a n a lyz in g th e p ro b lem d o m a in a n d p ro d u c e a c o n c ep tu a l m o d e l b y
tho ro u g h ly eva lu a tin g th e in fo rm a tio n in th e g iven area . Th e re is an ab u nd a nc e o f d a ta
a va ila b le fro m va rio us s o u rc es like Formal document, Requirement statements and Primary data
collected through stakeholders
O n c e th e an a lys is is c o m p lete, th e d eve lo p m en t tea m p rep a res a c o nc ep tu a l m o d el
d e s c rib in g th e sys tem 's fu n c tio n a litie s a n d re q u ire m e nts .
Object-orientedDesign(OOD)
● It is th e ne xt d e velo p m e n t s ta g e o f th e o b jec t-o rien ted life c yc le m o d el w he re th e
a n a lys ts d es ig n th e d e sired s ys te m 's o ve ra ll a rc h itec tu re.
● T h e s ystem is d ivid e d in to a s e t o f intera c tin g s u b s ys tem s.
● T h e an a lys t c o n s id e rs th e s p e c ific a tio n s f ro m th e s ys te m an a lys is . Its a ll a b o u t
ev a lu a tin g w h a t th e e nd -u s ers e xp e c t fro m th e n ew s ys tem .
● A s p er th e o b jec t-o rien ted d es ig n , th e sys tem is c o ns id e re d a c o lle c tio n o f o b je c ts,
w ith e a c h o b je c t h a n d lin g a s p e c ific s ta te d a ta .
● F o r exa m p le, in b a n k in g so ftw a re, ea c h a c c o u n t m a y fea tu re so m e exc lu s ive o b je c ts
w ith s e p a ra te d a ta a n d fu n c tio n s.
● T h e p h ilo s o p h y b e h in d a n o b jec t-o rien te d d es ig n is to c re a te a s et o f intera c ting
o b jec ts a s s ee n in th e rea l w o rld .
● In s te a d o f p ro c es s -b as e d s tru c tu ra l p ro g ra m m in g , d eve lo p ers c re ate o b jec ts th ro u g h
d a ta s tru c tu res .
UsefuldefinitionsforObject-orienteddesign
Class
● A c la s s re fers to a c o lle c tio n o f s im ila r o b jec ts . It is c rea ted a s a b lu ep rin t to d e fin e
va riab le s a n d m etho d s th a t s h a re c erta in s im ila ritie s w ith o b je c ts . A s s ta te d ab o ve , a n
o b jec t-o rien ted d e s ig n b ea rs res em b la nc es w ith th e re a l w o rld .
● Le t's s a y yo u h a v e p u rc h a s ed a s m a rtp ho n e. N o w , yo u r s m a rtp h o n e is ju s t o ne o f th e
s ev era l 's m a rtp ho n es ' av a ila b le in th e w o rld . W e c a n c o n s id er 's m a rtp h o n e s ' a s a
c la s s o f o b je c ts , an d yo ur s m a rtp h o n e o b je c t is a n in s ta n c e o f a c la s s o f o b je c ts .
S m a rtp h o n es fe a tu re m a ny s ta tes (o p era tin g S ys te m , R A M , a n d m o th erb o ard ) a nd
b e h av io r (p la y m u sic , c all, m es s a g in g ) in c o m m o n . H o w ev er, th e s ta te o f e ac h
s m a rtp h o n e is in d ep en d e n t a nd c a n b e d ifferen t fro m o th e r s m a rtp ho n es .
● W h ile m a n ufa c tu rin g s m a rtp h o n es , m a nu fa c tu rers c an u s e th e e xa c t b lue p rin t to b u ild
m an y s m a rtp h o n es a s th ey sh a re c o m m o n c h a ra c teristic s . T his a llo w s m a n u fac tu rers
to c rea te n e w b lu ep rin ts m o re e ffic ie n tly.
● Lik ew is e, in o b je c t-o rie nted p ro g ra m m in g , d ev elo p ers c a n u s e m a n y s im ilar o b je c ts to
c rea te b lu ep rin ts . T his is c a lle d a c la s s .
Abstraction
● A b s tra c tio n is th e es s en c e u s e d b y d e velo p ers to b u ild c la ss e s . D e ve lo p ers o b s erve a
s et o f sim ila r o b jec ts a n d c h a ra c teris tic s o f im p o rta n c e to d efin e c la s s es .
● T h e a b s tra c tio n o f o b je c ts va ries a s p er th e a p p lic atio n . F o r exa m p le, w h ile d efin in g a
s m a rtp h o n e c la s s o f us e rs , d e ve lo p ers m ig h t s e t a ttrib utes lik e c o lo r, fea tu res , p ric e,
etc . H o w ev er, fo r m a n u fac tu ring firm s , d eve lo p ers m a y s et a ttrib u tes c o n ta in in g s uc h
a s th e m a n u fa c tu rin g c o sts p er sm a rtp h o ne , q u a lity c o n tro l, tu rn a ro un d , e tc .
Inheritance
● T h e c o nc ep t o f inh e ritan c e in o b jec t-o rien ted d es ig n d efin es th e p ro c es s o f reu s ing
'o b jec ts .' D eve lo p e rs c a n d efin e a n e w c la s s typ e u s ing a s im ila r e xis tin g c la s s .
Object-orientedImplementation
Types of Models:
1. Class Model:
● T h e c la s s m o d e l s h o w s a ll th e c la s s e s p re s e n t in th e s ys te m . T h e c la s s m o d e l
s h o w s th e a ttrib u te s a n d th e b e h a v io r a s s o c ia te d w ith th e o b je c ts .
● T h e c la s s d ia g ra m is u s ed to s h o w th e c la s s m o d e l.
● T h e c la s s d ia g ra m s h o w s th e c la s s n a m e fo llo w ed b y th e a ttrib u te s fo llo w e d b y th e
fu n c tio n s o r th e m e th o d s th a t a re a s s o c ia te d w ith th e o b jec t o f th e c la s s .
● G o a l in c o n s tru c tin g c la s s m o d e l is to c a p tu re th o s e c o n c e p ts fro m th e re a l w o rld
th a t a re im p o rta n t to a n a p p lic a tio n .
2. State Model:
3.Interaction Model:
Sequence diagram
1.6System Engineering
Computer Based Ssytem:
Is d e fin e d as s et o f arran g em en t o f e le m en ts w h ic h are c o m b in e d to p e rfo rm a s p e c ific
ta s k ie. P re d efin ed g o a l. T h is p re d efin ed g o a l is a c hiev ed b y p ro c es s in g
in fo rm a tio n (w h e n in p u t is g iv en it is p ro c e s se d a n d o u tp u t is p ro d uc ed ).
T h e g o al m a y b e to s u p p o rt s o m e b us in es s fu nc tio n o r to d e ve lo p a p ro d u c t th at c a n b e
s o ld to g en e ra te b u s in e s s rev en u es . T o ac c o m p lis h th e g o a l, a c o m p u te r b a s ed s ys tem
m a k es u s e o f v a riety o f s ys tem e le m e n ts a s fo llo w s .
1. S o ftw a re
2. H a rd w a re
3. P eo p le
4. D a ta b a s e
5. D o c u m e n ta tio n
6. P ro c ed u re s
1. Software: So ftw a re is a c o m p u te r p ro g ra m o r s et o f in s tru c tio n s, d a ta s tru c tu res
a n d re la ted d o c u m en ta tio n th a t s erve to effe c t lo g ic a l m e th o d , p ro c e d u re o r
c o n tro l th a t is req u ired .
2. Hardware: It is
Electronic device th a t p ro vid e c o m p u tin g c a p a b ility,
T h e interconnectivity devices th a t e n ab le th e flo w o f d a ta (ex :ne tw o rk s w itc h ,
telec o m m u n ic atio n d ev ic e),
Electromechanical devices(S en s o rs , m o to rs , p u m p s ) th a t p ro v id es extern a l w o rld
fu n c tio n .(E x . F ire ala rm s ystem )
3. People: U s e rs o r o p era to rs o f h a rd w a re a nd s o ftw a re .
4. Database: L a rg e , o rg a nis ed c o lle c tio n o f in fo rm a tio n th a t is a c c es s ed v ia
s o ftw are.
5. Documentation: D es c rip tiv e info rm a tio n th a t p o rtra ys th e u se an d /o r o p e ra tio n o f
s ys te m . It is a h a rd c o p y o r m a n u a l o r re p o rt. (E x: w h e n u p u rc h as e a n yth in g
m an u a l is as s o c iated w ith it)
6. Procedure: T he s tep s th a t d ef in e th e sp ec ific u s e o f ea c h o f s ys te m elem en t o r
the p ro c e d u re c o n te xt in w h ic h th e s ys tem res id es .
Example:
Y o u a re h av in g a R o b o t. Th is ro b o t is g o in g to tra n s fo rm e ac h a n d ev ery
c o m m a n d in to s et o f s ig n a ls a n d th e se c o n tro l s ig n a ls c a u s e s o m e s et o f a c tio n .
Example:
C o ns id e r a fac to ry a u to m a tio n s ys te m w he re m u ltip le p ro d u c ts o r s o ftw a re is
b e in g d eve lo p ed in b u lk. It is g o in g to ha v e d ifferen t lev els o f h iera rc h y.
At the lowest level of hierarchy, yo u a re g o in g to ha v e c o n tro l m ac h in e s , th e
ro b o ts o r a n y d a ta en try d e vic e s. E ac h o f th em is a c o m p o n en t b a s ed s ys te m
b e c a u s e it is g o in g to ta k e in p u t a n d p ro d u c e o u tp u t.
W ith in th e c o ntro l m a c h in e s u r g o in g to h a ve a n y e le c tro m e c h a n ic al h ard w a re o r
elec tro n ic s ta ff w ill b e th ere. H ere the
H a rd w a re- c a n b e p ro c es s o r, m e m o ry, s en s o rs
S o ftw a re- C o m m u nic atio n , m a c h in e c o ntro l
D a ta b a s e- p ro g ra m
D o c u m e n ta tio n - m a n ua l, re p o rts
P ro c ed u re s - a c tio n s -> ta s k .
At the next level of hierarchy, w e c a n ha v e a m a n ufa c tu rin g c ell. W ith in th is a ls o
it h a s d iffe re n t c o m p u ter b a s ed s ys te m s w h ic h h as d iffe re nt elem en ts o f its o w n .
E x : C o m p uters , m e c h a n ic a l fixers , h o w to in teg ra te th e d iffe re n t elem en ts w ith th e
s o ftw are.
1. World view:
● T h e s ys tem en g in e erin g p ro c es s u s u a lly b eg in s w ith a "w o rld v iew ," T h at is , th e en tire
b u s in e s s o r p ro d u c t d o m a in is ex a m in ed to e n s u re th a t the p ro p er b u s in es s o r
tec h n o lo g y c o n tex t c a n b e e s ta b lis h e d .
● S ta te d in a s lig h tly m o re fo rm a l m a n n e r, th e w o rld v ie w ( W V ) is c o m p o s e d o f a s e t o f
d o m ain s (D i), w h ic h c a n e a c h b e a s ys te m o r s ys tem o f s ys tem s in its o w n rig h t.
WV = {D1, D2, D3, . . . , Dn}
2 . Domain View
E a c h d o m a in is c o m p o s ed o f s p ec ific ele m e n ts (E j) ea c h o f w h ic h s erve s s o m e ro le in
a c c o m p lis h in g the o b jec tiv e a n d g o a ls o f th e d o m a in o r c o m p o n en t:
Di = {E1, E2, E3, . . . , Em}
3.Element View
F in a lly, ea c h elem en t is im p lem en ted b y s p ec ifyin g th e te c h n ic a l c o m p o n e n ts (C k ) th a t
a c h ie ve th e n ec es s a ry fu n c tio n fo r an e lem en t:
Ej = {C1, C2, C3, . . . , Ck}
4.Detailed View
In th e s o ftw a re c o n te xt, a c o m p o n e n t c o u ld b e a c o m p u ter p ro g ra m , a reu s a b le p ro g ra m
c o m p o n e n t, a m o d u le , a c la s s o r o b jec t, o r e ve n a p ro g ra m m in g la n g u a g e s ta tem en t. It
is im p o rta n t to n o te th a t th e s ys te m e n g in ee r n a rro w s th e fo c u s o f w o rk a s he o r s h e
m o v es d o w n w a rd in th e h ie ra rc h y ju s t d e s c rib e d .
Example:ProductEngineeringSystemHierarchy
SystemModelling
System engineering is a modeling process. Whether the focus is on the world view or the detailed
view,the engineercreatesmodels that
• Define the processes that serve the needs of the view under consideration.
• Represent the behavior of the processes and the assumptions on which the behavior is based.
• Explicitly define both exogenous and endogenous input3 to the model.
• Represent all linkages (including output) that will enable the engineer to better understand the
view.
SystemSimulation
● In the late 1960s, R. M. Graham [GRA69] made a distressing comment about the way we
build computer-based systems: "We build systems like the Wright brothers built airplanes—
build thewhole thing, push it offa cliff, let it crash, andstart overagain."
● Manycomputer-based systemsinteract with the real world ina reactivefashion.
● That is, real-world events are monitored by the hardware and software that form the
computer-based system, and based on these events, the system imposes control on the
machines, processes, and evenpeople who cause theeventstooccur.
● Real-time and embeddedsystemsoften fall into the reactivesystemscategory.
Problems/Complicationsinreactivesystems
● Thedevelopersof reactive systemssometimes struggletomakethemperformproperly.
● It is difficult to predict the performance, efficiency, and behavior of such systems prior to
building them.
● If the system crashed due to incorrect function, inappropriate behavior, or
poorperformance,we picked upthepiecesand startedoveragain.
● Many systems in the reactive category control machines and/or processes (e.g.,
commercial aircraft or petroleum refineries) that must operate with an extremely high
degree of reliability. If the system fails, significant economic or human loss could occur. For
this reason, the approach describedbyGrahamisboth painfuland dangerous.
Today, software tools for system modeling and simulation are being used to help to eliminate
surprises when reactive, computer-based systems are built. These tools are applied during the
system engineering process, while the role of hardware and software, databases and people is
being specified. Modeling and simulation tools enable a system engineer to "test drive" a
specificationof thesystem.
Verification
● V e rific a tio n is th e p ro c e s s o f c h ec k in g th a t s o f tw a re a c h ie ve s its g o a l w ith o u t a n y
b ugs .
● It is th e p ro c e s s to e n s u re w h e th e r th e p ro d u c t th a t is d e v e lo p ed is rig h t o r n o t.
● It v e rifie s w h eth er th e d e v elo p ed p ro d u c t f u lfills th e re q u ire m en ts th a t w e h a ve .
● V e rific a tio n is s im p ly k n o w n a s Static Testing.
● H e re a re s o m e o f th e a c tivitie s th a t a re in vo lv ed in v e rif ic a tio n .
■ In s p e c tio n s
■ R ev ie w s
■ W a lk th ro u g h s
■ D es k -c h e c k in g
Validation
● It is th e p ro c e s s o f c h e c k in g th e va lid a tio n o f th e p ro d u c t i.e . it c h e c k s w h a t w e a re
d ev e lo p in g is th e rig h t p ro d u c t. it is a v a lid a tio n o f a c tu a l a n d e xp e c te d p ro d u c ts .
● V a lid a tio n T es tin g is k n o w n a s Dynamic Testing in w h ic h w e ex a m in e w h e th er w e
h a v e d e v elo p ed th e p ro d u c t rig h t o r n o t a n d a ls o a b o u t th e b u s in e s s n ee d s o f th e
c lien t. H ere a re s o m e o f th e a c tiv ities th a t a re in v o lve d in V a lid a tio n .
■ B la c k B o x T es tin g
■ W h ite B o x T e s tin g
■ U n it T es tin g
■ In te g ra tio n T es tin g
● V e rific a tio n is f o llo w e d b y V a lid a tio n .
----------------------------------------------------------------------------------------------------
--