C. K.

Pithawalla College of Engineering and Technology

$.E % &"e'e(ter) *+ Co',-ter Engineering "-./ect) "oftware Engineering Hand(0o-t
• Text Book : • "oftware Engineering A Practitioner1( A,,roach Roger ". Pre(('an *th Edition2 3e. (ite)htt,)44www.'hhe.co'4,re(('an • "oftware Engineering *th Edition2"o''er5ille

What is software?
 6any ,eo,le e7-ate the ter' software with co',-ter ,rogra'(. n fact2 thi( i( too re(tricti5e a 5iew.  "oftware i( not /-(t the ,rogra'( .-t al(o all a((ociated doc-'entation and config-ration data which i( needed to 'a8e the(e ,rogra'( o,erate correctly.  A (oftware (y(te' -(-ally con(i(t( of a n-'.er of (e,arate ,rogra'(2 config-ration file( which are -(ed to (et -, the(e ,rogra'(2 (y(te' doc-'entation which de(cri.e( the (tr-ct-re of the (y(te' and -(er doc-'entation which e9,lain( how to -(e the (y(te' and2 for (oftware ,rod-ct(2 we. (ite( for -(er( to download recent ,rod-ct infor'ation.  "oftware engineer( are concerned with de5elo,ing (oftware ,rod-ct( i.e. (oftware which can .e (old to a c-(to'er.  There are two ty,e( of (oftware ,rod-ct) :. Generic products:  The(e are (tand0alone (y(te'( which are ,rod-ced .y a de5elo,'ent organi;ation and (old on the o,en 'ar8et to any c-(to'er who i( a.le to .-y the'.  "o'eti'e( they are referred to a( (hrin80wra,,ed (oftware.  E9a',le() data.a(e(2 word ,roce((or(2 drawing ,ac8age( and ,ro/ect 'anage'ent tool(. <. Bespoke (or customized) products:

 The(e are (y(te'( which are co''i((ioned .y a ,artic-lar c-(to'er.  The (oftware i( de5elo,ed (,ecially for that c-(to'er .y a (oftware contractor.  E9a',le() control (y(te'( for electronic de5ice(2 (y(te'( written to (-,,ort a ,artic-lar .-(ine(( ,roce(( and air traffic control (y(te'(. An i',ortant difference .etween the(e different ty,e( of (oftware i( that2 in generic ,rod-ct(2 the organi;ation which de5elo,( the (oftware control( the (oftware (,ecification. =or c-(to' ,rod-ct(2 the (,ecification i( -(-ally de5elo,ed and controlled .y the organi;ation who i( .-ying the (oftware. The (oftware de5elo,er( '-(t wor8 to that (,ecification.

What is software engineering?
 "oftware engineering i( an engineering di(ci,line which i( concerned with all a(,ect( of (oftware ,rod-ction fro' the early (tage( of (y(te' (,ecification thro-gh to 'aintaining the (y(te' after it ha( gone into -(e.  n thi( definition2 there are two 8ey ,hra(e() :. >Engineering discipline1  Engineer( 'a8e thing( wor8.  They a,,ly theorie(2 'ethod( and tool( where the(e are a,,ro,riate .-t they -(e the' (electi5ely and alway( try to di(co5er (ol-tion( to ,ro.le'( e5en when there are no a,,lica.le theorie( and 'ethod( to (-,,ort the'.  Engineer( al(o recogni;e that they '-(t wor8 to organi;ational and financial con(traint( (o they loo8 for (ol-tion( within the(e con(traint(. <. >all aspects of software production1  "oftware engineering i( not /-(t concerned with the technical ,roce((e( of (oftware de5elo,'ent .-t al(o with acti5itie( (-ch a( (oftware ,ro/ect 'anage'ent and with the de5elo,'ent of tool(2 'ethod( and theorie( to (-,,ort (oftware ,rod-ction.  n general2 (oftware engineer( ado,t a (y(te'atic and organi;ed a,,roach to their wor8 a( thi( i( often the 'o(t effecti5e way to ,rod-ce high07-ality (oftware.

Howe5er2 engineering i( all a.o-t (electing the 'o(t a,,ro,riate 'ethod for a (et of circ-'(tance( and a 'ore creati5e2 infor'al a,,roach to de5elo,'ent 'ay .e effecti5e in (o'e circ-'(tance(. nfor'al de5elo,'ent i( ,artic-larly a,,ro,riate for the de5elo,'ent of we.0.a(ed e0co''erce (y(te'( which re7-ire( a .lend of (oftware and gra,hical de(ign (8ill(.

What’s the difference between software engineering and computer science?
 E((entially2 co',-ter (cience i( concerned a.o-t theorie( and 'ethod( which -nderlie co',-ter( and (oftware (y(te'( wherea( (oftware engineering i( concerned with the ,ractical ,ro.le'( of ,rod-cing (oftware.  "o'e 8nowledge of co',-ter (cience i( e((ential for (oftware engineer( in the (a'e way that (o'e 8nowledge of ,hy(ic( i( e((ential for electrical engineer(.  deally2 all of (oftware engineering (ho-ld .e -nder,inned .y theorie( of co',-ter (cience .-t in reality thi( i( not the ca(e.  "oftware engineer( '-(t often -(e ad hoc a,,roache( to de5elo, the (oftware.  Elegant theorie( of co',-ter (cience are cannot alway( .e a,,lied to real2 co',le9 ,ro.le'( which re7-ire a (oftware (ol-tion.

What is the difference between software engineering and system engineering?
 "y(te' engineering or2 'ore ,reci(ely2 co',-ter0.a(ed (y(te' engineering i( concerned with all a(,ect( of the de5elo,'ent and e5ol-tion of co',le9 (y(te'( where (oftware ,lay( a 'a/or role.  "y(te' engineering i( therefore concerned with hardware de5elo,'ent2 ,olicy and ,roce(( de(ign and (y(te' de,loy'ent a( well a( (oftware engineering.  "y(te' engineer( are in5ol5ed in (,ecifying the (y(te'2 defining it( o5erall architect-re and then integrating the different ,art( to create the fini(hed (y(te'.  They are le(( concerned with the engineering of the (y(te' co',onent( &hardware2 (oftware2 etc.+.  "y(te' engineering i( an older di(ci,line than (oftware engineering.

e (ec-re2 an interacti5e ga'e '-(t .rogra' code.-te .een (.enda.er of other a((ociated attri.enda.e relia. U(a.e re(.-te( which reflect the 7-ality of that (oftware.roce((ing ti'e2 'e'ory -tili..rod-ct( ha5e a n-'.ecific (et of attri.hone (witching (y(te' '-(t .e -(a.ation2 etc.  Howe5er2 a( the .le2 witho-t -nd-e effort2 .  E9a'.  The(e attri.ation of the (o-rce .  The (.eha5ior while it i( e9ec-ting and the (tr-ct-re and organi.le9 ind-(trial (y(te'( (-ch a( aircraft and che'ical .-te( which yo.eing -(ed in the (y(te'( engineering .-(ine(( en5iron'ent. are .e of -(er( for which it i( de(igned.le (oftware (ho-ld not ca-(e .hy(ical or econo'ic da'age in the e5ent of (y(te' fail-re.eca-(e (oftware change i( an ine5ita.y the ty.le2 etc.ercentage of (oftware in (y(te'( ha( increa(ed2 (oftware engineering techni7-e( (-ch a( -(e0ca(e 'odeling2 config-ration 'anage'ent2 etc. Ae.on(i5e2 a tele.roce((or cycle(. Peo.le) a .enda.rogra' and a((ociated doc-'entation.-te(+ are the (oftware1( re(. Efficiency therefore incl-de( re(.on(i5ene((2 .an8ing (y(te' '-(t .le con(e7-ence of a changing .-te( are not directly concerned with what the (oftware doe(2 rather2 they reflect it( .ility incl-de( a range of characteri(tic( incl-ding relia.lication.riate -(er interface and ade7-ate doc-'entation.ility2 (ec-rity and (afety. Efficiency "oftware (ho-ld not 'a8e wa(tef-l -(e of (y(te' re(o-rce( (-ch a( 'e'ory and . Thi( i( a critical attri.'ight e9.5io-(ly de.le ha5e .ling co'.ility of the .  E9a'.on(e ti'e to a -(er 7-ery and the -nder(tanda.ro5ide(2 (oftware .ro.e written in (-ch a way that it 'ay e5ol5e to 'eet the changing need( of c-(to'er(.ect fro' a (oftware (y(te' o.ility "oftware (ho-ld . Product characteristic escription 6aintaina.roce((.end( on it( a..le( of the(e attri.ility "oftware '-(t . Ae.-te( &(o'eti'e( called non0f-nctional attri.ility "oftware de.lant( for 'ore than :@@ year(.ecifying and a((e'. Thi( 'ean( that it (ho-ld ha5e an a. B . What are the attributes of good software?  A( well a( the (er5ice( which it .

e2 what the c-(to'er want( and how end0 -(er( will interact with the (4w.a((e( the (et of ta(8( that lead to an -nder(tanding of what the .act of the (4w will .-ilding an elegant co'.( the c-(to'er to defined what i( re7-ired  Ela.ro.  t enco'.ro/ect (ta8eholder(&'anager(2 c-(to'er( and end0-(er(+ • 3hy i( it i'. • 3hat are the (te.-ter that (ol5e( the wrong .a(ic re7-ire'ent( are refined and 'odified  Negotiation % what are the . • 3ho doe( itD  (4w engineer(&(y(te' engg4analy(t+  .ro.ro.ro.rioritie(2 what i( e((ential(2 when i( it re7-ired =inally2 the .rod-ct( ) • U(er "cenario(2 • =-nction( and =eat-re( li(t(2 • Analy(i( 'odel(2 • ".oration % where .artie( with a written -nder(tanding of the .le' and c-(to'er -nder(tand( of the .ro.ortantD  Ae(igning and .etter -nder(tand the .e and nat-re of the .le' i( (.tion % (co.ro.e (ol5ed  Elicitation %hel.(D  nce. • 3hat i( the wor8 .le' they will wor8 to (ol5ed.rod-ctD  All .le' to .( (4w engineer( to .le'  3or8 .ro.ecification E .!hapter ": #e$uirement %nalysis and Engineering  C-ic8 Loo8 ) • 3hat i( itD  Hel.-(ine(( i'.le' (er5e( no one1( need(.le' i( coincide.ecified2 re5iewed or 5alidated to en(-re that yo-r -nder(tanding of the .

e (i'.eha5ior( that will ha5e a .  Types of #e$uirements :.leted. .rioritie( that g-ide the order in which wor8 i( to ..onent of large (y(te' efinition: :.ha5e learned i( what they really 'eant.etween "y(te' Engineering and (oftware de(ign.artic-lar in.ecific need that de(ign and con(tr-ction '-(t addre(( ?.-t( and * . =eet of .ro5ide • How the (y(te' (ho-ld react to .le' (ol5er and negotiator.ear to .  &ntroduction: o The (te.e co'. o RE i( an (4w engg action that .roach to deal with re7-ire'ent(. The (.ro/ect (ta8eholder( <..  Bridge to esign and !onstruction %rgues: :. o The (oftware engineer and c-(to'er .• How do en(-re that ha5e done it rightD o 3or8 .ro. =-nctional re7-ire'ent( • "tate'ent( of (er5ice( the (y(te' (ho-ld .ridge( the ga. The infor'ation2 f-nction( and .erfor'ed <.act on the re(-ltant de(ign.-t it i( not (ince the co''-nication content i( 5ery high. t i( a (y(te'atic and di(ci.egin( d-ring the co''-nication acti5ity and contin-e( into the 'odeling acti5ity. B. we generally 8now a( analy(i( i( al(o 8nown a( "oftware Re7-ire'ent( Engineering.e .lay an acti5e role in thi( acti5ity and the (oftware engineer act( a( interrogator2 con(-ltant2 .lined a.rofo-nd i'. o Thi( acti5ity . o The acti5ity 'ay a. The .rod-ct( are re5iewed with the c-(to'er and end0-(er( to en(-re that what yo.le . $roader (y(te' definition2 where (4w i( one co'. Allowing a (4w tea' to e9a'ine the conte9t of the (4w wor8 to .

rinci.letene(( H .'ent .e inter.tion( etc.e .ro. • They 'ay .reci(ely (tated o A'.ected -(er( and the ty. • n (o'e ca(e(2 it 'ay e9.• How the (y(te' (ho-ld .oth co'. o E5ery order (hall .y to the acco-nt1( .y de5elo.oint of 5iew) it( in.licitly (tate that what the (y(te' (ho-ld not do.le to (earch either all of the initial (et of data.er'anent (torage area.e f-nctional or non0f-nctional re7-ire'ent(. Non0f-nctional re7-ire'ent( • Con(traint( on the (er5ice( or f-nction( offered .-r.e G Ae5elo.rary "y(te' for (t-dent( and fac-lty to order .ig-o-( re7-ire'ent( 'ay .er inter. <.y the (y(te' (-ch a( ti'ing con(traint(2 con(traint( on the de5elo.e allocated a -ni7-e identifier &ORAERF A+ which the -(er (hall .ro5ide a.e of (oftware2 e9.. • Examples : Uni5er(ity Li.riate 5iewer(1 G U(er intention 0 (.roce((2 (tandard(2 etc.end on the ty.le re7-ire'ent( (ho-ld .artic-lar (it-ation(.-t(2 o-t.(et fro' it.e high0le5el (tate'ent( of what the (y(te' (ho-ld do .e a. o The (y(te' (hall .e f-nctionality or (y(te' (er5ice( • Ae.riate 5iewer( for the -(er to read doc-'ent( in the doc-'ent (tore..-t( and e9ce.-t f-nctional (y(te' re7-ire'ent( (ho-ld de(cri.reted in different way( ..lication do'ain of the (y(te' and that reflect characteri(tic( of that do'ain.ecial . Ao'ain re7-ire'ent( • Re7-ire'ent( that co'e fro' the a.a(e( or (elect a (-.oo8( and doc-'ent( fro' other li.e a.o5e E9a'.retation 0 Pro5ide a te9t 5iewer that (how( the content( of the doc-'ent • #e$uirements completeness and consistency o n .le) Con(ider the ter' >a.o(e 5iewer for each different doc-'ent ty.le to co.lete and con(i(tent o Co'. '( )unctional #e$uirements • Ae(cri.er( and -(er( o n A.le'( ari(e when re7-ire'ent( are not .ro.eha5e in .e the (y(te' (er5ice( in detail • U(er re7-ire'ent( . • #e$uirements imprecision*ambiguity+ o Pro.e of (y(te' where the (oftware i( -(ed • =-nctional -(er re7-ire'ent( 'ay .rarie( o The -(er (hall . ?.

y -(er(. .olicie( and . intero. They (ho-ld incl-de de(cri.ility2 re(.ility with other (oftware or hardware (y(te'(2 o E9ternal factor( (-ch a( (afety2 . o Con(i(tent  There (ho-ld . • .artic-lar way G e.roce(( (tandard( -(ed2 i'. • Proce(( re7-ire'ent( 'ay al(o .ecific f-nction( deli5ered .rod-ce a co'.ertie() relia. f the(e are not 'et2 the (y(te' i( -(ele((.on-functional classifications o Prod-ct re7-ire'ent( G Re7-ire'ent( which (.ility2 .rogra''ing lang-age or de5elo.e no conflict( or contradiction( in the de(cri.'ent 'ethod • Non0f-nctional re7-ire'ent( 'ay .ractice2 it i( i'.ility etc.on(e ti'e and (torage re7-ire'ent(.tion( of the (y(te' facilitie( o n .roced-re( G e. • t ari(e( thro-gh -(er need() o .olicie(2 o the need for intero.roce(( G e.'ent .era.ro.g.e 'ore critical than f-nctional re7-ire'ent(.ility re7-ire'ent(2 legi(lati5e re7-ire'ent(&o.erate( within the law and ethical re7-ire'ent(+2 etc.o((i.eed+2 'e'ory re7-ired2 relia.g. • Aefine Con(traint() 4O de5ice ca. I .rod-ct '-(t .artic-lar CA"E (y(te'2 . o E9ternal re7-ire'ent( G Re7-ire'ent( which ari(e fro' factor( which are e9ternal to the (y(te' and it( de5elo.eha5e in a .ecified 'andating a .le to .ility2 data re.ri5acy etc.le'entation re7-ire'ent(&. . o Organi(ational re7-ire'ent( G Re7-ire'ent( which are a con(e7-ence of organi(ational .a.ational .ecify that the deli5ered .lete and con(i(tent re7-ire'ent( doc-'ent "( .rogra''ing lang-age(2 de(ign 'ethod+2 etc.re(entation( -(ed in (y(te' interface(2 etc.erfor'ance&e9ec-tion (.orta.g.e (.-dget con(traint(2 o organi.y the (y(te' • Aefine (y(te' .on-functional re$uirements • 3hich are not directly concerned with the (.tion( of all facilitie( re7-ired .era.

f-l to de5elo.e (y(te' feat-re( that reflect the do'ain J characteri(tic( and .oals and re$uirements*Problem with non-functional re$uirements+ o Non0f-nctional re7-ire'ent( 'ay .e o.le non0f-nctional re7-ire'ent G A (tate'ent -(ing (o'e 'ea(-re that can .on-functional re$uirement types Non-fu nctio nal requir ements Produ ct requ ir ements Or g an izatio nal requir ements Ex tern al requ irements Ef ficiency requ ir ements Reliab ility requ ir ements Po rtability requ irements Intero perability requirements Ethical requ irements Usab ility requ irements Delivery requirements Implementation requir ements Stand ard s requ irements Leg islative requ irements Perfo rmance requ irements Sp ace requ ir ements Priv acy requ irements Safety requ irements • ./ecti5ely te(ted o Goal( are hel.reci(e re7-ire'ent( 'ay .• .e diffic-lt to 5erify.er( a( they con5ey the intention( of the (y(te' -(er( /( omain re$uirements • Aeri5ed fro' the a.lication do'ain and de(cri.reci(ely and i'.e 5ery diffic-lt to (tate .. o Goal G A general intention of the -(er (-ch a( ea(e of -(e o !erifia.

roce(( of a.ending on the -(er1( re7-ire'ent(2 the(e doc-'ent( will either .roce((e( -(ed for RE 5ary widely de.e the .rary (y(te' do'ain re7-ire'ent( re7-ire'ent( -nwor8a.e .le'( G Under(tanda. • Thi( in5ol5e( analy.ing the (y(te' G '..e the ..eo.yright re(triction(2 (o'e doc-'ent( '-(t .ro.rinter.e deleted i''ediately on arri5al.re((ed in the lang-age of the a.lication do'ain o Thi( i( often not -nder(tood .eo.e .licit  0oftware Engineering Process • The .eciali(t( -nder(tand the area (o well that they do not thin8 of 'a8ing the do'ain re7-ire'ent( e9.e a (tandard -(er interface to all data.ecific co'. Ao'ain re7-ire'ent( .ending on the a.e E9a'.lying a (tr-ct-red 'ethod2(-ch a( OO Analy(i(.e new f-nctional re7-ire'ent(2 con(traint( on e9i(ting define (.le ) Li. • $eca-(e of co.le in5ol5ed and the organi(ation de5elo.ecification.lication do'ain2 the .y (oftware engineer( de5elo.E@ (tandard.le or • There (hall ..le con(ider RE to .hical 'odel( which then act a( a (y(te' (. Ae.-tation( • f do'ain re7-ire'ent( are not (ati(fied2 the (y(te' 'ay .ing the (y(te' and de5elo. • "o'e .a(ed on the K?J. • The (et of 'odel( de(cri.ing the re7-ire'ent( • Howe5er2 there are fo-r generic2 high le5el re7-ire'ent( engineering .a(e( which (hall .ility o Re7-ire'ent( are e9.eha5ior of the (y(te'.roce(( acti5itie( o Re7-ire'ent( elicitation o Re7-ire'ent( analy(i( o Re7-ire'ent( 5alidation o Re7-ire'ent( 'anage'ent • Re7-ire'ent( 'anage'ent i( an additional re7-ire'ent( engineering acti5ity which i( concerned with 'anaging re7-ire'ent( change.licitne(( o Ao'ain (.rinted locally on the (y(te' (er5er for 'an-ally forwarding to the -(er or ro-ted to a networ8 . :@ .ing a (et of gra.• 6ay .

tion Elicitation Ela. • How doe( a (oftware . • The (oftware re7-ire'ent( acti5ity i( acco'. ?.F eas ib ility stud y R eq uirem en ts elicitatio n and an alys is R eq uirem en ts sp ecificatio n R eq uirem en ts va lidatio n F eas ib ility rep ort S ys tem m od els U ser andsy stem req uirem ents R eq uirem en ts do cu m ent  #e$uirement Engineering Tasks        3hat the c-(to'er want( Analy.ro/ect get (tartedD :: .ecifying the (ol-tion -na'.ig-o-(ly !alidating the (.ecification !alidation 6anage'ent :. <.ecification 6anaging the re7-ire'ent( a( they are tran(for'ed into an o. nce.tion) &"tart2 .eginning+.ility Negotiating a rea(ona.oration Negotiation ". E.erational (y(te'. nce. H.ing need A((e((ing fea(i. B.li(hed thro-gh the e9ec-tion of following (e5en di(tinct f-nction() :.le (ol-tion ". *.

The .a(ic -nder(tanding of the .ro/ect1( (co.er <.ility analy(i( and identify a wor8ing de(cri..'ent .le'( of 5olatility o Re7-ire'ent( change o5er ti'e ?.oration ) &E9.-(ine(( need i( identified or a .lanation+ • The infor'ation o.ear( to .ro/ect.le' in co''-nicating2 o Aon1t ha5e a f-ll -nder(tanding of the . Effecti5e .e (i'.le'( of (co.otential new 'ar8et or (er5ice i( di(co5ered.a.ed. .• "o'eti'e( a ca(-al di(c-((ion re(-lt( into a 'a/or (oftware de5elo.roce(( of getting re7-ire'ent( fro' the c-(to'er. • To o5erco'e .ro.le'( of -nder(tanding o C-(to'er(4-(er( are not co'. To e(ta.lification2 e9.letely (-re of what i( needed o C-(to'er( ha5e .egin when a . :< .ro. The nat-re of the (ol-tion that i( de(ired i5.ig-o-( re7-ire'ent( iii.le'( Re7-ire'ent( Gathering Acti5ity will .ro/ect( .e organi.tion and elicitation i( e9.oration .ro.o-ndary of (y(te' i( ill0defined o c-(to'er( gi5e -nnece((ary detail( that 'ay conf-(e rather than clarify2 o5erall (y(te' o.'ent .tained fro' the c-(to'er d-ring ince.-(ine(( ca(e for the idea2 try to identify the .reli'inary co''-nication 5.li(h a .e • n thi( 2(4w engineer a(8 a (et of conte9t0free 7-e(tion( with the intention i. • Aiffic-ltie( faced are i.ility of co'. • $-t2 in 'o(t of the ca(e( the (oftware de5elo.taining+ • Re7-ire'ent( elicitation i( the .le and ea(y .-ting en5iron'ent o Ha5ing . Colla./ecti5e( ii.e o . Pro.ro.ecify a'.le' do'ain o O'it infor'ation that i( o.oration.ro.-t it i( not.5io-( o Gi5e conflicting re7-ire'ent( o ".anded and refined d-ring ela.eo.le who want( the (ol-tion iii.etween c-(to'er and de5elo.elow . • "ta8eholder( fro' . Elicitation ) &drawing o-t2 e9tracting2 o. Ela. • t a.an(ion2 a'.-(ine(( co''-nity define( .le' ii.th of the 'ar8et2 do a ro-gh fea(i.tion of the .reath and de.oor ca. Pro.

etween cla((e(0L"er5ice( .eha5ioral do'ain of the .y cla((e( :? .le'.• t foc-(e( on de5elo.'a8e analy(i( 'odel( li8e ERA2 A=A2 "TA. yo.oration i( an analy(i( 'odel that define( the infor'ational2 f-nctional and .a(ically an analy(i( 'odeling action i.e.ro. . • t i( . • "cenario0Lcla((e(0LRelation(hi.ing a refined technical 'odel of (oftware f-nction(2 feat-re( and con(traint(. • The end re(-lt of ela.

arty achie5e( (o'e 'ea(-re of (ati(faction.e conflicting re7-ire'ent( fro' different -(er( al(o. • =or large (y(te'(2 it i( a written doc-'ent co'.tion( and gra.rod-ct( • Their 7-ality i( a((e((ed thro-gh the (te.ined2 and 4 or 'odified (o that each .(e7-ent "E acti5itie( li8e de(ign2 de5elo.rod-ced a( a con(e7-ence of re7-ire'ent( engineering. ".B. E. H.hical 'odel(. • The o-t.ination of the(e. Re7-ire'ent 6anage'ent ) :B .roce(( i( called ".ecification i( the final wor8 .ecification ) • 3hate5er re7-ire'ent( the re7-ire'ent engineer ha( elicited2 ela.rod-ct . • There 'ay .roce(( the re7-ire'ent( are eli'inated2 co'.ower+.y the Re7-ire'ent Engineer.e -(ed .roce(( i( called specification process.orated and finali. !alidation ) &Confir'ation+ • Lot of wor8 .ig-o-(ly &clearly+2 that incon(i(tencie(2 error( and o'i((ion( are detected and re(ol5ed2 and that wor8 .e gi5en with the re(o-rce( a5aila. • t (er5e( the fo-ndation for (-. • t i( nece((ary to a((e(( the 7-ality of the(e wor8 . • t e9a'ine( the (. • The (.ecification.roce(( in (-ch ca(e( to reconcile &re(ol5e2 (ettle+ the conflict(.rod-ct( confor' to the (tandard(.ecification to en(-re that all re7-ire'ent( ha5e .-t of that .e or any co'. • There i( a need for the negotiation .-t in a for' which can . *.le &ti'e2 'oney2 'an.rod-ced .ed after negotiation( (o far ha5e to .rototy.y other( to ta8e the wor8 ahead.rod-ct( are . • U(ing an iterati5e .hical 'odel(2 a for'al 'athe'atical 'odel2 a collection of -(age (cenario(2 a .e .een (tated -na'. • !alidation i( done thro-gh =TR &for'al technical re5iew+. of 5alidation.e a written doc-'ent2 a (et of gra. • That .ining nat-ral lang-age de(cri. • t can . Negotiation ) • Lot of ti'e( c-(to'er( 4 end -(er( a(8 for 'ore than what can .'ent2 te(ting etc.

(y(te'.• t i( a (et of acti5itie( that hel.eha5ioral i5. E.ility ta.ility ta. "o-rce tracea.roceed(.e feat-re(2 (o-rce(2 (-. = for f-nctional2 ii.ect(. $ for .re. the .ect( can . A for data iii.ility ta. "-. • #o.are tracea.a(e (o that it i( ea(y to (earch how a change in one re7-ire'ent affect( the other a(.-t • Then . Re7-ire'ent R@: R@< R@? A(.le ) indicate( how they are related to one another B. Ae. for interface 5.e( re7-ire'ent( .e 'aintained a( a .le) relate( re7-ire'ent to a (o-rce.ro/ect .e can . • J-(t li8e 'anaging change( in (oftware thro-gh "C6 &"oftware config-ration 'anage'ent+ we need to 'anage the original re7-ire'ent( al(o.le( the a(.endency tracea.ility ta.(y(te'( etc.ility ta.y (-. • $a(ically we ha5e to carry o-t 'o(t of the acti5itie( that we carry o-t d-ring "C6.ility ta. nterface tracea.o((i.ha5e to identify each re7-ire'ent -ni7-ely a( Mre7-ire'ent ty.le( are :.ect( A@: # A@< # # A@? # # A@B A@E • "o'e of the . • n different ta. ?.eLMre7-ire'ent NL where Ty. :E .le) categori.oth internal and e9ternal (y(te' interface(.e i.le) relate( re7-ire'ent to a (y(te' feat-re.art of re7-ire'ent( data. P for o-t. <.ility (how( how re7-ire'ent( relate to .ect of the (y(te'.(y(te' tracea.le( that relate each re7-ire'ent to one or 'ore a(.le tracea. =eat-re( tracea.ro/ect tea' identify2 control and trac8 re7-ire'ent( and change( to re7-ire'ent( at any ti'e a( the .le( can . • The(e ta.

(2 .-(ine(( 'anager(2 (-..  Recogni.oint( in lot of ca(e( will .le) The 'ar8eting gro-.le 5iew. e9.y following the . o How do yo.enefit( in a direct or indirect way fro' the (y(te'.inion( a. o n (-ch ca(e(2 re7-ire'ent( engineering i( (i'.-ilt2 'ay ha5e li'ited technical 8nowledge and li'ited ti'e to interact with the re7-ire'ent( engineer.e .  3or8ing toward colla.-tion fro' all of the' (ince all of the' will ha5e different 5iew( and re7-ire'ent(. o $-t reality i( often 7-ite different.anding thi( li(t and en(-re that yo. • Try to wor8 a( a tea'.roce(( in (-ch a (it-ationD  dentify the (ta8eholder( • Anyone who . :* .le 5iew .ort engineer(2 end0-(er( etc. • Try to find area of co''onality2 area of conflict or incon(i(tency  A(8ing the =ir(t C-e(tion • =ir(t2 (tart with conte9t0free 7-e(tion( to O.(tart the . o None of the(e thing( are de(ira.hilo(o.oration.ly a 'atter of cond-cting 'eaningf-l con5er(ation( with colleag-e( who are well08nown 'e'.le . • A tea' trie( to achie5e the 'ain o.-t they do e9i(t and the engineer ha( to deal with it. • The '-lti./ecti5e .leting it i( 5ery diffic-lt.e conflicting with each other. &nitiating the re$uirements engineering process o "tarting the re7-ire'ent( engineering . • E9a'.get contri. o C-(to'er( 'ay .roce(( and (-cce((f-lly co'.e the(e conflicting2 '-lti.e 6-lti. • "o categori.oint( to arri5e at (o'e deci(ion. • Kee.e located in a different city or co-ntry2 'ay ha5e only a 5ag-e &-nclear+ idea of what i( re7-ired2 'ay ha5e conflicting o.oint(.rea8 the iceP.le 5iew . o n an ideal (etting2 c-(to'er( and (oftware engineer( wor8 together on the (a'e tea'.hy of gi5e and ta8e rather than in(i(ting on (tic8ing to one1( own idea(.o-t the (y(te' to .er( of the tea'.

en .er( i( for'ed to identify the .aration and .roache( and (.ro5ide additional infor'ationD o "ho-ld .le'2 .ro.le' yo.re.roachedD o Are yo.reli'inary (et of (ol-tion re7-ire'ent(.ro.  Agenda i( (-gge(ted that i( for'al eno-gh to co5er all i'.needD o 3hat . Earlier ter' =A"T.er(on to an(wer the(e 7-e(tion(D Are yo-r an(wer( officialD o Are 'y 7-e(tion( rele5ant to the .ehind the re7-e(t for thi( wor8D o 3ho will -(e the (ol-tionD o 3hat will . o Thi( 'ethod i( different fro' other 'ethod( in following way()  Cond-cted at a ne-tral (ite.er or an o-t(ider+ control( the 'eeting.li(hed.ro.  A definition 'echani(' i( -(ed.• The(e 7-e(tion( will lead to ..e the en5iron'ent in which the (ol-tion will .enefitD o ( there another (o-rce for the (ol-tion yo.artici.ortant .anything el(eD  Eliciting #e$uirements o The (tyle of collecting infor'ation di(c-((ed a..&wor8 (heet(2 fli..orati5e Re7-ire'ent( Gathering.ecial . o n thi( a.-t then one can go for tea' oriented a..the right .e o 3ho i( .ro.roach called Colla.en and how it (ho-ld ha.efore and d-ring a 'eeting i( al(o decided. o "o thi( techni7-e i( OK for the fir(t 'eeting ..roach a /oint tea' of c-(to'er( and de5elo.o(e ele'ent( of the (ol-tion2 negotiate different a.a(ic -nder(tanding of the .  A facilitator &a c-(to'er2 a de5elo..e the econo'ic .(how or de(cri.ha5eD o A' a(8ing too 'any 7-e(tion(D o Can anyone el(e .ation are e(ta.ro. chart( etc+ o 3hat (ho-ld ha.-t infor'al eno-gh to enco-rage the free flow of idea(.le'2 the .erfor'ance i((-e( or con(traint( affect the way (ol-tion i( a.oint( .e -(edD o 3ill (.e a(8ing yo. o Before a meeting :H . • "o'e of the(e 7-e(tion( co-ld .  R-le( for .le' will thi( (ol-tion addre((D o Can yo.o5e i( not 5ery effecti5e. There i( alway( a feeling of O-( and the'P in thi( 8ind of 'eeting(.eo.le who want a (ol-tion2 the nat-re of (ol-tion that i( de(ired and the effecti5ene(( of the fir(t enco-nter it(elf.ecify a .

riority (che'e (ho-ld .-(ine(( r-le(.e i'.anel2 a di(.een acti5ated+2 a control . ?.rogra''ing the control .e recogni.artici. o uring meeting • • • • • =ir(t .e2 . 'ini0(.ate are (trictly .erate(2 that are to .eed2 acc-racy etc. I@@@2 '-(t ./ect(2 (er5ice(2 con(traint( and .'ent tea' and c-(to'er organi./ect() "'o8e detector2 window and door (en(or(2 'otion detector(2 an alar'2 an e5ent &a (en(or ha( .re(ent( hi(4her li(t for di(c-((ion. Attendee( fro' the de5elo. Each .ation( are in5ited to attend and the ./ect() • That i( ./ect(2 (er5ice(2 con(traint(2 . "er5ice() (etting the alar'2 'onitoring the (en(or(2 dialing the .oint i( need and /-(tification of the . Ai(c-((ion (tart( and a con(en(-( li(t( &for o.ed within one (econd2 e5ent .erfor'ance criteria.efore the 'eeting date.lace2 ti'e and date are (elected and a facilitator i( cho(en.e -(er friendly2 'ay . Con(traint() 6-(t co(t le(( than R(. Criti7-e and de.le'ented.e a re(triction on (i.hone2 .e of the control . • "er5ice() • Proce((e( or f-nction( that interact with the o. Perfor'ance) "en(or e5ent (ho-ld .hone n-'.er(2 tele.rod-ced and that are -(ed .y the (y(te'. A 'eeting .rod-ct.e .hone call etc. A co'.rod-ct re7-e(t i( di(tri.art of the en5iron'ent in which the (y(te' o.anel etc. Each attendee i( re7-e(ted to 'a8e a li(t of o. :I .ant .ited at thi( (tage.:. • Tea' i( di5ided into ('aller (-.erfor'ance+ are created.anel.ecification( for each ite' on the con(en(-( li(t.lay2 tele. <. • Con(traint( ) • Co(t2 (i. • Perfor'ance ) • "./ect(.ined li(t i( created &no deletion i( allowed+.rohi.-ted to all attendee( .tea'( and each wor8( to de5elo. • O. o Example : 10afe home2 home security system O.

(ence will .re.age layo-t( in word :J .le )N-'.licit re7-ire'ent(. o A.e ca-(e for di((ati(faction. E9.hical Ai(.ecific f-nction(2 le5el of . o t e'. o E9a'./ecti5e( and goal( (tated for a .er of . E9citing re7-ire'ent() o They go .ing c-(to'er (ati(faction fro' the (oftware engineering .erfor'ance <.lay2 (.ectation( and .e 5ery (ati(fying.ecification -(ing all in. o t concentrate( on 'a9i'i.eyond the c-(to'er1( e9. o E9a'. o t i( a 3uality management techni$ue.rod-ct o E9a'. • A li(t of 5alidation criteria i( .e( of re7-ire'ent( :.ro5e to .ected re7-ire'ent() o '.licitly (tated re7-ire'ent(.-t( fro' 'eeting. • One or 'ore .e( an -nder(tanding of what i( 5al-a. Nor'al re7-ire'ent() o E9.ared.• 6ini0(. o %fter the meeting o One can do 3uality )unction eployment *3) + for re7-ire'ent(.er(on i( a((igned to write the co'.ha(i. o Reflect o.ec( are then .le ) Relia.lete draft (.roce((.re(ented to the whole tea' and di(c-((ed. o C=A identifie( ? ty.le to the c-(to'er.le ) Gra.ility2 ea(e of in(tallation ?.

loy'ent o Elicitation work products o At the end of the elicitation (te.o-nded (tate'ent of (co.ility  A .ro/ect. "R" foc-(e( on e9ternal .e in "R" ?.rod-ce. not 'odeled2 .y the c-(to'er+ of each f-nction re7-ired of the (y(te'  &nformation deployment  dentifie( data o.etter define re7-ire'ent(  #e$uirement 0pecification o =inal o-t.ated in re7-ire'ent( elicitation.e( de5elo. there will .-t ha5e to .rototy.rod-ct( are)  A (tate'ent of need and fea(i.ly to each  A (et of -(age (cenario( &withdrawal of 'oney fro' AT62 o.riority of re7-ire'ent( d-ring each of the de.e few wor8 . o "o'e of the(e wor8 .tion of (y(te'1( technical en5iron'ent  A li(t of re7-ire'ent( and con(traint( that a.eha5ior of the (y(te' with conte9t of en5iron'ent  4alue analysis  deter'ine( the relati5e . Error handling2 con(traint( etc. al(o needed in "R" o Tran(ition fro' analy(i( to (.ening of a new "$ acco-nt etc+  Any .e of the .ro./ect( and e5ent( that (y(te' '-(t con(-'e and .-t of re7-ire'ent( ta(8 i( the "R" o 3hy are A=A(2 OO 'odel(2 etc not "R"D :.  Task deployment  E9a'ine( the .eha5ior2 while 'odeling foc-(e( on .ending on the (i..artici. U etc.  A de(cri.e for the (y(te' &how 'any g-e(t(2 how 'any ite'( and what ty.ed to .ecification i( not (traight forward <@ .le' (tr-ct-re <. )unction deployment :  deter'ine( the O5al-eP &a( .rod-ct( de.e of (er5iceD+  A li(t of c-(to'er(2 -(er( and other (ta8eholder( who .ercei5ed .

!erifia.o-t the (y(te' ac7-ired in analy(i( -(ed in (.le I. Co'.ecify re7-ire'ent( on :.ecified o Harde(t to (ati(fy o Co'. Con(i(tent E. Ran8ed for i'.letene(( <. en(-re co'. =-nctionality <: . An "R" '-(t (.ortance and4or (ta.e deter'ined 9( #anked for importance:stability o Needed for . Clarifying thi( will hel. Una'. Correct <.ig-o-( B.ility '( !orrectness o Each re7-ire'ent acc-rately re.le H. Tracea.o 8nowledge a.letene(( and correctne(( (trongly related /( 5nambiguous o Each re7-ire'ent ha( e9actly one 'eaning o 3itho-t thi( error( will cree.lete ?.ortant a( nat-ral lang-age( often -(ed 6( 4erifiability o There '-(t e9i(t a co(t effecti5e way of chec8ing if (oftware (ati(fie( re7-ire'ent( 7( !onsistent o two re7-ire'ent( don1t contradict each other 8( Traceable o The origin of the re7-ire'ent2 and how the re7-ire'ent relate( to (oftware ele'ent( can . in o '. 6odifia.re(ent( (o'e de(ired feat-re in the final (y(te' "( !ompleteness o All de(ired feat-re(4characteri(tic( (.ing in con(tr-ction o To red-ce ri(8( d-e to changing re7-ire'ent( o !omponents of an 0#0 :.rioriti.le *. 3hat (ho-ld an "R" containD :.ecification o !haracteristics of an 0#0 :.

.eha5ior for in5alid in.ort de(ired char of the "R" • =or'al lang-age( are . "ec-rity /( 6( External &nterface o o o o All interaction( of the (oftware with .ac8-.ort O-t.erfor'ance con(traint( on the (oftware (y(te' o Generally on re(. Ae(ign con(traint( B.anguage • Lang-age (ho-ld (-.acity re7-ire'ent( RL (tatic o 6-(t .-t( for the gi5en in.reci(e and -na'.etween the' All o.ility+ o E9a'.le) re(.e 99 J@S of the ti'e esign !onstraints o o o o o o =actor( in the client en5iron'ent that re(trict the choice( "o'e (-ch re(triction( "tandard co'.eo.ecify .ortant General re7-ire'ent( of Ofriendline((P (ho-ld .-t hard • Nat-ral lang-age( 'o(tly -(ed2 with (o'e (tr-ct-re for the doc-'ent << .-t( and the relation(hi..e 5erifia.on(e ti'e 2 thro-gh.eration( the (y(te' i( to do 6-(t (.on(e ti'e (ho-ld .-t( too "( Performance #e$uirements o All the .ati.ility with other (y(te'( Hardware Li'itation( Relia.liance and co'.e a5oided The(e (ho-ld al(o . E9ternal interface( '( )unctional #e$uirements o o o o o Heart of the "R" doc-'entQ thi( for'( the .ec( ".<.e in 'ea(-ra.ecifie( all the f-nctionality that the (y(te' (ho-ld (-.le o 0pecification . Perfor'ance ?.le2 hardware2 and (w U(er interface 'o(t i'.-t etc RL dyna'ic o Ca..le ter'( &5erifia.-l8 of the (.ility2 fa-lt tolerance2 .ig-o-( . re7.

=-nctional re7-ire'ent( ?. Con(traint( ?.ecti5e <. ". U(er characteri(tic( B. "co.• =or'al lang-age( -(ed for (.ation of the "R" wa( done . Ae(ign con(traint( E.le to (. O5er5iew <.ecification with -(e ca(e(  Re7-ire'ent Analy(i(  <? . Acce. Prod-ct . o  =-nctional ".ta. Prod-ct f-nction( ?.ecific re7-ire'ent( :.o(e 2 the .er(.y EEE./ecti5e of the (y(te' <.tion :. Perfor'ance re7-ire'ent( B. A((-'.ecial feat-re( or in highly critical (y(te'( o 0tructure of an 0#0 :. P-r.tion( E.ecify thi( -. Thi( (tandardi. ntrod-ction :.a(ic o.e of what the (y(te' i( to do 2 not to do ?. E9ternal interface( <. front.le criteria de(ira. O5erall de(cri.

?. t (er5e( two .y the (oftware. The .ed in a do'ain li8e .ter we con(ider (tr-ct-red analy(i(.een . t i( a re.lication( in a .ict( relation(hi.eha5ior of the (y(te' and the 'anner in which tran(ition( are 'ade fro' (tate to (tate. The analy(i( 'odel ha( H 'a/or .ecification &C"PEC+ ha( the infor'ation a.ecification &P"PEC+ ha( the de(cri.o(ed o5er the year(.y a (oftware engineer2 (o'eti'e( called an analy(t.-ilt ../ect de(cri.eha5e(. Aata dictionary. 3hen one (t-die( a . Ao'ain Analy(i( There are n-'.re(ent the re7-ire'ent( for co'.eha5ioral 'odel( and ./ect(.ict re7-ire'ent( for data2 f-nction and .er of intere(ted .ro. "tr-ct-red analy(i( i( a 'odel . The "TA re.art will co'e d-ring the de(ign (tage. The written word i( a wonderf-l 5ehicle for co''-nication2 .an8ing2 a5ionic(2 '-lti'edia 5ideo ga'e(2 and 'edical de5ice( etc. Here we a.e re-(ed once they are de5elo.eha5ioral 'odeling % the third 'odel.o(itory that contain( de(cri.er of a.re(ented in the A=A./ect oriented analy(i(.e de5elo.( . The analy(i( 'odeling i( an iterati5e acti5ity.tion of each f-nction . ERA i( the notation -(ed to cond-ct the data 'odeling acti5ity. :.rinci. n thi( cha.eer(2 and other (ta8e holder(.ict the f-nction( that tran(for' the data flow.tion ha( the attri.e(t way to re. <B . Aata o. t i( at the core of the analy(i( 'odel.tion( of all data ite'( con(-'ed or . *./ect.e co''-nicated to a n-'.eha5ior &ERA2 A=A2 "TA+ in a way that i( relati5ely ea(y to -nder(tand2 and 'ore i'. E.-r.artic-lar do'ain and which can .ro5ide an indication of how data are tran(for'ed a( they 'o5e thro-gh the (y(te' and &. t i( the notation -(ed to cond-ct .ed. The two 'ore do'inant one( are (tr-ct-red analy(i( and o.letene(( and con(i(tency.lication( that can . Control ". t i( .rogre(( i( 'ade in the .etween data o.ly the E analy(i( .ro/ect...+To de.tion( for doing thi( i( written word.o(e( &a+ To .re(entation of a (y(te'.artic-lar do'ain to identify (-ch co''on f-nction( it i( called do'ain analy(i(.o-t the control a(.ect(. ERA or Entity relation(hi. <.e lot of f-nction( which will .lete analy(i( 'odel.artie( li8e c-(to'er(2 technical .-t it i( not nece((arily the . Aata 'odel i( the fir(t 'odel in the (et of 'odel( re7-ired for co'. The analy(i( 'odel i( the fir(t technical re. B.e co''on to 'o(t of the a.-ter (oftware.re(ent( the 5ario-( 'ode( &(tate(+ of . One ha( to 8ee.er of analy(i( 'odeling 'ethod( ha5e . Aata flow diagra' &A=A+ i( the notation -(ed to cond-ct f-nctional 'odeling % the (econd 'odel.rod-ced . Analy(i( 6odeling A. diagra' de.artition the'. There wo-ld . One of the o. Proce(( ".e done and not how.art(. The OHowP . $-ilding the Analy(i( 6odel Cha. The analy(i( 'odeling -(e( a co'.ri'ary foc-( at analy(i( 'odeling (tage i( on what i( to .-ilding acti5ity.le( and create data2 f-nctional and .roache( A large n-'.ination of te9t and diagra''atic for'( to de. H. on 'odifying the analy(i( 'odel a( 'ore and 'ore ..ortant2 (traight forward to re5iew for correctne((2 co'. =or that we -(e analy(i( 'odeling.ter I The (oftware re7-ire'ent(2 once elicited and negotiated2 ha5e to . "tate Tran(ition Aiagra' &"TA+ indicate( how the (y(te' .-te( of each data o.

ody ty.hone call+2 an e5ent &alar'+2 a role &(ale(.er(on+2 an organi./ect( and the . C-e(tion( li8e) • • • • 3hat are . ERA &and data 'odeling+ foc-(e( only on data i.roce((e( data and e5ent(. Aata 'odeling acti5ity an(wer( a (et of (.ro./ect( are related to one another.o(ition of each o.er2 colo-r2 owner+ reflect attri.roce((e( that tran(for' the'D 3hat 'ethod doe( data 'odeling -(e to an(wer the(e 7-e(tion(D t -(e( ERA which ena. yo.+2 a .roce((ing &in ERA we are not loo8ing at the . "o it i( 5ery i'.o-t following ter'inology and conce./ect./ect( to .endent of .-te( define the .roce((ing (.+ "ince there i( no . ERA foc-(e( only on data. They can ta8e one of ? characteri(tic( :.efore we .-te(D 3hat are the relation(hi.ort2 di(.y fac-lty 'e'.re.lace &wareho-(e+ or a (tr-ct-re &file+./ect . "t-dent attend( lect-re( in cla((roo'( gi5en . Aata o./ect enca. ERA define( all data that are entered2 (tored2 tran(for'ed and .( .o-t data.eration( that we carry o-t on that data.lay+2 an occ-rrence &tele. Na'e an in(tance &'a8e2 'odel2 A for car+ <.(-late( data a( well a( algorith'( that wor8 on that data or the o.roce((ing .roce((edD 3hat i( the co'.e -nder(tood ./ect it can .etween the o.e ./ect can .e an e9ternal entity &one that .e re.re(entation of al'o(t any co'./ect CAR./ect oriented analy(i( where an o. Aata o. The heading( in the ta.are ERA &i.etween different o.rod-ce( or con(-'e( infor'ation+2 a thing &re.in -nder(tanding data.t( -(ed in ERA) Aata o.(-late( only data &which i( different fro' o.o(ite infor'ation &(o'ething which ha( a n-'.le &'a8e2 'odel2 A n-'.le( a (oftware engineer to identify data o.ecific 7-e(tion( that hel./ect(D 3hat are the relation(hi./ect(.+ $-t .re(ented a( a ta.are( ter' wor8 etc./ect. Ae(cri.e2 (eating ca.le &owner+ <E .ri'ary data o.ational -nit &Acco-nting de.ertie( of data o.acity+ ?.art.o-t data we need to . create data 'odel+ and -nder(tand a.er of different attri.-te(+ that '-(t . 6a8e reference to another in(tance in another ta.( -(ing a gra.hical notation.-te( Attri. it enca.le.-t di'en(ion &width2 length and . t i( a re. 3idth i( not a data o.ortant to 8now lot of thing( a. t con(ider( data inde. A data o.-te( of the o.Aata 6odeling E5ery (oftware .er(2 a. n(tance( 6ar-ti E(tee'2 "antro2 Honda City etc.ecific in(tance(./ect and what are it( attri.e.e clear a.ear( in e9a' and -(e( an(wer (heet(2 .e./ect( and their relation(hi.readth+ i( an o.re(ent( (.t.y the (oftware.re.rod-ct .rod-ced. Attri..( .ecified in the data o./ect(.e the in(tance & colo-r2 . The .ody &record(+ re.

art in a relation(hi. Thi( i( called cardinality. <* .ate in a relation(hi.i0directional.le' conte9t. f hel. 6odality i( @ if the relation(hi./ect.-te( for AE" C" and GU.er of different relation(hi.artic-lar (t-dent can . Relation(hi./ect are related to how 'any occ-rrence( of another o. "t-dent % Hel. T"tate % Chief 6ini(ter2 Co-ntry % Head of co-ntry&P62 Pre(ident2 King2 C-een2 dictator+U One0to0'any )One occ-rrence of one o./ect( can .hew.e connected or there are n-'.-te( are defined a( 8ey or identifier to -ni7-ely identify an in(tance./ect can al(o relate to one4'ore occ-rrence( of the fir(t o.ontal line( can (how relation(hi./ect can relate to one and only one occ-rrence of another o./ect. i( 'andatory./ect( can . 6other % child. One college can ha5e 'any (t-dent( ./ect in (.le'ent( thi( idea i( called 'odality./ect i( deter'ined thro-gh the .re((ed a( one or 'any.-te or not of a gi5en data o. Aata o.. A .e (hown a( follow( The hori.etween two data o. "o 'odality on (t-dent (ide i( one.( ./ect(2 (een their attri. t define( the 'a9i'-' n-'.er of occ-rrence( that can ta8e .etween two data o.-te( and relation(hi.( .One or 'ore of the attri. • 6odality Cardinality define( the 'a9i'-' n-'./ect./ect./ect( that can .er of o. The conce. in a (-./ect "t-dent wo-ld ha5e different attri./ect can relate to one or 'any occ-rrence( of another o./ect( can . There are n-'./ect can relate to one4'ore occ-rrence( of another o. Howe5er e5ery occ-rrence of one o. The relation(hi.artici.t that i'. Cardinality "o far we ha5e defined data o./ect( can .ite of ha5ing relation(hi./ect can relate to only one occ-rrence of fir(t o. Two o.( Aata o.(./ect( are connected to one another.( li8e di(./ect while an occ-rrence of the (econd o.a(ic connection . 3hether (o'ething i( an attri.elong to only one college.re(ent how 'any occ-rrence( of one o. i( o./ect. $-t we al(o need to -nder(tand and re./ect doe( not ha5e to co'. Uncle 0 Ne.ro.etween two o.e related in ? way() • • One0to0one ) An occ-rrence of one o..air( are . 6odality i( : if relation(hi. i( re7-ired there '-(t . . "t-dent 0 (-.e (hown a( follow() Relation(hi.ero for that (t-dent.-l(orily relate with an occ-rrence of another o. (ide i( . $-t (o'e (t-dent 'ay not re7-ire hel. "o 'odality on hel./ect( in general.-t an occ-rrence of (econd o./ect ..lay(2 order(2 (toc8(2 (ell(2 ret-rn( etc. t i( -(-ally e9. 6any0to0'any) An occ-rrence of one o.-t one .er of different way( in which two (-../ect.e a (t-dent.tional.

-t to each refine'ent '-(t re'ain (a'e. =ig-re I.etween data o.y inco'ing and o-tgoing arrow(2 re(.-t data indicated .le(+ and infor'ation flow .Entity relation(hi.e refined to get 'ore detail(.rod-ced .le( in each le5el 'ay . =low Oriented 6odeling $a(ically a co'.e 'aintained.re(ent( the entire (oftware ele'ent a( a (ingle . t i( a gra.e of .(traction &generality+ 'eaning there will .ero le5el A=A &or conte9t 'odel2 f-nda'ental (y(te' 'odel+ re.roce((ing i( done not when &(e7-ence+ and how &logic+.er of different le5el( of A=A.ecific+ indication of the (e7-ence of .licit &clear0c-t2 (.-te(2 relation(hi..:@ .-. The notation i( a( follow() Aata o..ecti5ely.y the (oftware./ect(2 attri. The . ERA hel.alancing.eled rectangle(.roce(( "./ect( or dia'ond(. A le5el : A=A 'ay ha5e E0* . A=A i( not a flowchart.ly e9. Ao-. A rectangle i( -(ed to re.rod-ce( infor'ation for tran(for'ation or recei5e( infor'ation . t 'ay .re(ent a (y(te' or (oftware at any le5el of a.roce(( or tran(for' that i( a.roce((e(+.roce((e( &. An arrow re.rogra' 0 or another (y(te'+ that .roce((e( &tran(for'(+ that are a.le+ re.age <<I and (lide no :?:A.e of .( in doing f-nctional 'odeling i( called Aata =low Aiagra' &al(o 8nown a( data flow gra.etween .roce((ing will not .e indicator(. &P"PEC+ <H .-.( in 'odeling of data that i( getting tran(for'ed.re(ent( a .le( with interconnecting arrow( &arrow( are data ite'( which flow .re(entation that de.J . "e7-ence of .le with in..roce((ing or conditional logic. Each of the .-. Li8e ERA A=A al(o -(e( gra.le chart+.re(ent an e9ternal entity &e9ternal for (oftware 0 which co-ld .e -(ed to re.e gra.eled line( connecting o.hically re.( and ty.re(ented a( the le5el @ A=A i( .erfor'(+.( ) La.-t e9.-t and o-t.licit &-n(aid2 -nder(tood+ .ict( infor'ation flow and . le5el 8nown a( .artitioned. A circle &(o'eti'e( called . Additional . Ty. $-t the infor'ation flow contin-ity '-(t .. Relation(hi..hical (y'. The diagra' that hel.-t. =ig-re I. Pri'ary co'.e one of the (y(te' ele'ent( li8e hardware2 a .-.e indicator( ) !ertical .ar(2 three ..age <<H. Thi( i( called .erfor'+.lace or what f-nction doe( (oftware .ecification.lied to data and change( it in (o'e way &what f-nction the (oftware .ol(.onent( of ERA are data o. The to.a(ed (y(te' con5ert( &or tran(for'(+ data into -(ef-l o-t.er(on or another .-./ect( and relation(hi. diagra' &ERA+ Aata o.( . diagra'./ect( can .licit detail( are ta8en care of at the ti'e of de(ign.ronged for82 circle for 'odality and cardinality.eco'e clear .ath( are re.le line (how( a data (tore. A=A doe( not (-.re(ented -(ing Entity relation(hi.lied a( data 'o5e( fro' in. A=A ta8e( care of what ty.-t .h or . $-t2 we ha5e to do 'odeling of f-nctionality of the (oftware al(o &what ty.re(ent( one or 'ore data ite'( &data ite'( are flowing hence they are arrow(+.e n-'.roce((ing on it..e of tran(for'ation ta8e( .-ter ...-t to o-t.roce((ing i( done or what ty.hical re. n.-.y doing (o'e .-t and o-t./ect( ) La. A=A 'ay .e i'.y loo8ing at A=A.

e and which e5ent( ca-(e (y(te' to change it( (tate(.ened a window+.e -(ed to (.-t 'ay co'e contin-o-(ly and o-t.roce((ed. <I .ecify the .rod-ced.y da(hed arrow(.y a .e -(ed to (.erator ha( .-. Rectangle( re..roce(( (.eha5ioral 'odel. t al(o indicate( re(triction( and li'itation( i'. which are all the different (tate( in which the (y(te' can .rogre((.er ha( /a''ed2 (o'eone ha( o.ecified li'it2 o. Arrow( re.. "o the in.A .e.roce(( a( '-ch or 'ore control0oriented infor'ation a( data.-t to a f-nction2 the algorith' that i( a.a. how it 'o5e( fro' one (tate to another (tate+ in gra.tion of the . Here we try to de.e generated contin-o-(ly.ond to .roce(( 'ay .ty2 .eha5e( when an e5ent or control (ignal i( (en(ed and &<+ which .eha5ior of the (y(te' i.-t al(o 'ay .artic-lar e5ent.y gi5ing 5er.ier i( in the (tate 6a8ing co.eha5ior of the (y(te' &i.ict the .lied to tran(for' the in. One ..le within A=A at the final le5el of refine'ent. "tate( do not nece((arily corre(.roce(( and de(ign con(traint( that infl-ence the way in which the . The P"PEC de(cri.onent.o-t the .le in a A=A gra.ying and .ecify the .a. A . Thi( i( called control flow 'odel.-.artic-lar f-nction in general.ier2 the .-. $eha5ioral 6odeling The third 'odel &fir(t two are data and f-nctional+ that i( re7-ired to co'.hically (how( only what .roce(( interact( with the di(. 5al-e indicate( the e5ent that ca-(e( the tran(ition to occ-r. P"PEC hel.roce(( &f-nction+2 .le when a .eing . .roce((e( &'anage co.a(i(. The to. n con5entional A=A data flow i( (hown .e.and2 add to2 'agnify2 e9tend+ it .-t2 and the o-t. 3e -(e (tate tran(ition diagra' &"TA+ to re.etween (tate(.le within A=A. The nor'al notation -(ed for analy(i( of (oftware (y(te'( doe( not ta8e care of re7-ire'ent( of (-ch (y(te'( &contin-o-( flow and control+.tion.re. A .re(ent (y(te' (tate(.erfor'ance characteri(tic( that are rele5ant to the .y that .roce((ing detail( i'.le(2 diagra'( and chart(.( in . J-(t li8e P"PEC de(cri.endent and . t al(o indicate( what action( are ta8en a( a con(e7-ence of a .lication( are ti'e de.o(ed on the .roce((e( are in5o8ed a( a con(e7-ence of the occ-rrence of the e5ent.lay to let the -(er 8now a. Proce(( P3.y (olid arrow. Creating a control flow 'odel 6any (oftware a.le'ented.re(ent tran(ition( .hical for'.y a .er tray i( e'.lay+ are going on.lied .e( how control( are .e i'. Page <?<.aring "R" and (er5e( a( a g-ide for de(ign of the (oftware co'.e( the in.roce((e( on one0to0one .eled.al de(cri.( trac8 of how 'any co.roce(( algorith'2 'athe'atical e7-ation(2 ta. Real ti'e (y(te'( ha5e to interact with the real world in a ti'e fra'e dictated .-t that i( .rod-ce -(er di(.ecification &P"PEC+ can . "lide :?BA.otto' 5al-e indicate( the action that occ-r( a( a con(e7-ence of the e5ent.re((-re ha( gone a.lace on data there i( C"PEC which de(cri.ie( are 'ade and the other . =or e9a'.. "o there are e9ten(ion( to thi( notation.ie( act-ally two . n thi( e9ten(ion we contin-e with that con5ention . Each arrow i( la..-tton on a co.roce((ing i( done .hotoco.roce((ing detail( i'. C"PEC i( -(ed to indicate &:+ how the (oftware .roce(( 8ee.ing the .roce(( (. 3e need to a-g'ent &enlarge2 e9. t( content can incl-de narrati5e te9t2 a .re(ent the .re((ed (tart 4 (to.-t the control flow i( (hown .ecification &P"PEC+ can .roce((ing that ta8e( . The .o5e the (.lete the analy(i( 'odel i( called .lied . Control oriented infor'ation 'ean( e5ent( &alar' that .y the real world.rogra' de(ign lang-age &PAL+ de(cri.

<J .

onent(. de(ign of 7-e(tion .o((i.lace where creati5ity r-le(.le( and conce.a.onent( &.o-t data (tr-ct-re( &data.-t 'ore or le(( (a'e . • i=ersification i( the ac7-i(ition of the raw 'aterial( of de(ign e. • !on=ergence i( the grad-al eli'ination of all . • There are n-'. • Ae(ign al(o create( a re.ha(e( of de(ign . • Ae(ign i( a 'eaningf-l engineering re.rinci.ro5ide( detail a.-t one config-ration of co'.-ilt.leted &i.-(ine(( need( and technical con(ideration( all co'e together in the for'-lation of a .g.re(entation or 'odel of the (oftware2 .rogra'(+ that are nece((ary to i'.-t -nli8e the analy(i( 'odel that foc-(e( on de(cri.-ilding 'aterial2 fi9t-re(+ etc. ?@ .!hapter <: esign Engineering • Once the (te.roce((.t( are a. • There are two 'a/or .re(entation of (o'ething that i( to . t i( where c-(to'er re7-ire'ent(2 .le 7-e(tion(+2 de(ign of ho-(e &.le'entation.eha5ior &"TA+2 the de(ign 'odel ..erfor' the de(ign acti5ity. • ERA &analy(i( 'odel+ i( nearer to re7-ire'ent( wherea( data.er of de(ign 'ethod( a5aila.le in all.a(e+2 architect-re2 interface( and co'. • t i( the .rod-ct or a (y(te'.le'ent the (y(te'. re7-ire'ent( engineering i( done+ we ha5e to . of analy(i( i( co'.a(e &de(ign 'odel+ i( nearer to i'.ing re7-ired data &ERA+2 f-nction &A=A+ and .le .e.lica.e .er &all .

• The fo-r de(ign 'odel( are data2 architect-re2 interface and co'. ?: .e re7-ired to i'. • The flow of infor'ation i( a( follow( ) • AATA AE" GN) • The data de(ign tran(for'( the infor'ation do'ain 'odel created d-ring analy(i( into the data (tr-ct-re( that will .ro5ide( infor'ation that i( nece((ary to create the fo-r de(ign 'odel( re7-ired for a co'. 0oftware esign within the context of software Engineering • Ae(ign i( the fir(t technical acti5ity &other two are coding and te(ting+ re7-ired to . • Each of the ele'ent( of the analy(i( 'odel .lete (.onent.ecification of de(ign.le'ent the (oftware. • nfor'ation flow( fro' different ele'ent( of analy(i( 'odel to different 'odel( of de(ign.-ild and 5erify the (oftware. • t (it( at the technical 8ernel of (oftware engineering.

ro5ide the . • ARCH TECTURAL AE" GN ) • The architect-ral de(ign define( the relation(hi.• ERA and data dictionary .a(i( for data de(ign.roced-ral de(cri.e( how the (oftware co''-nicate( within it(elf2 with (y(te'( that intero. • Hence2 A=A and C=A .tion of (oftware co'.ro5ide '-ch of the infor'ation re7-ired for interface de(ign. ?< .e deri5ed fro' the (y(te' (.onent(.ecification2 the analy(i( 'odel and the interaction of (-.ro5ide infor'ation for co'. • nterface i( re7-ired when (o'ething flow(. • CO6PONENT LE!EL AE" GN) • The co'.onent de(ign.onent le5el de(ign tran(for'( (tr-ct-ral ele'ent( of the (oftware architect-re into .(y(te'( defined within the analy(i( 'odel. • P"PEC2 C"PEC and "TA . .etween 'a/or (tr-ct-ral ele'ent( of the (oftware. • t can .erate with it2 and with h-'an( who -(e it. • NTER=ACE AE" GN ) • The nterface de(ign de(cri.

a(ed on thi(2 te(t the (oftware and (-.rogra' • 5sability) h-'an factor(2 o5erall con(i(tency2 doc-'entation • #eliability: 'ea(-ring the fre7-ency and (e5erity of fail-re2 the acc-racy of o-t. • 3e need (o'e g-ideline( or characteri(tic( to e5al-ate the de(ign.-te( (-gge(ted . • )unctionality) e5al-ating the feat-re( (et and ca. • f 7-ality of de(ign i( good then the 7-ality of (oftware will .ict-re of the (oftware &i.le'entation .-t2 efficiency • 0upportability) a.ility+  esign concepts ?? .licit and i'.y their acrony' =URP".ortant in (oftware engineering a( the 7-ality of (oftware &and hence -lti'ately c-(to'er (ati(faction+ de.on(e ti'e2 re(o-rce con(-'.(e7-ent refine'ent lead( to lower le5el of a.roce((.(traction.tion2 thro-gh.rogra'&e9ten(i.ort the (oftware.eha5ioral do'ain(+ fro' an i'.e good.can loo8 for e5al-ation are) • 3hether the de(ign ta8e( care of all e9. • 3uality %ttributes • #o.act on 7-ality of the final (oftware we ha5e to contin-o-(ly a((e(( the 7-ality thro-gh =TR( or wal8thro-gh(.licit re7-ire'ent( or not.end( to a large e9tent on thi( acti5ity. esign Process and esign 3uality • Ae(ign acti5ity i( e9tre'ely i'.ta. • The characteristics yo..y Hewlett Pac8ard to e5al-ate the 7-ality of the de(ign 'odel.le and -nder(tanda. • 3hether it i( reada.t2 idea+.ation2 conce. • 3hether it gi5e( co'.(traction &generali.lete .le to tho(e who are going to generate code .ility to e9tend the .ility2'aintaina. • nitially the de(ign i( re.a.eed2 re(.ilitie( of the .ility2 ada. • "oftware de(ign i( an iterati5e .-t re(-lt( • Performance) (.e. • They are 8nown . addre((e( data2 f-nctional and . • A( de(ign iteration( occ-r2 (-.re(ented at a high le5el of a. • "ince de(ign ha( direct i'.can al(o chec8 the de(ign 'odel for following attri.oint of 5iew.

• t i( the idea of loo8ing at a .endence2 refine'ent2 refactoring :.e refined into get attendance data2 calc-late net .e refined f-rther to get one 'ore lower le5el of a.(traction .(traction we wor8 to create .e2 (wing direction2 weight2 di'en(ion( etc.roce(( of ela.-te( li8e door ty.roce((e(.(traction. • Refine'ent ca-(e( the de(igner to ela.roce(( that gi5e( yo.e. • A( we 'o5e thro-gh different le5el( of a. • t i( act-ally a .le' and the (ol-tion at the highe(t le5el -(ing general ter'inology and then 'o5ing down (lowly toward( the i'.(traction(. "( #efinement • Refine'ent i( the .A.roced-ral and data a. • A procedural abstraction i( a na'ed (e7-ence of in(tr-ction( that ha( a (. with co'.orate on the original (tate'ent .(traction.a(ic+ .a(ic2 calc-late net AA2 calc-late net HRA2 calc-late gro((2 calc-late P=2 calc-late .refine a data o.(traction(.ro.rofe((ional ta92 calc-late loan ded-ction2 calc-late total ded-ction2 calc-late net (alary etc.(traction. • =or example Calc-late (alary can . • A. $y refining the data o.ecific and li'ited f-nction.(traction(.2 i'. • ata abstraction i( a na'ed collection of data that de(cri.roce(( of refine'ent.e( a data o.orate R e9. /( >odularity ?B . • The different le5el( at which we (ee the .get it( attri.lain2 (. &Ela.le'entary ./ect. • Then each of the' can &for e9a'.le how to calc-late net .different le5el( of a. i. • =or example when yo.ecify2 de5elo.le9ity.(traction2 architect-re2 'od-larity2 infor'ation hiding2 f-nctional inde. yo.(traction and refine'ent are co'.ro5e+.(traction i( one of the f-nda'ental way( that we a( h-'an( co. • 3e go to different le5el( of a.are going to lower le5el of a.le'entation detail(.ro.e -. to get a lower le5el of a.y the .le' and (ol-tion are called different le5el( of a./ect called door yo.ro5iding 'ore and 'ore detail( a( each (-cce((i5e refine'ent occ-r(. %bstraction&idea2 tho-ght2 generality+ • A.(traction./ect we get to the lower le5el of data a.lanation+.oration &e9.

le' re7-ire'ent.e.le9ity of .art( will (tart increa(ing a( n-'.<+U then the effort re7-ired to (ol5e the . the .ro.t of .art( will 'a8e the effort re7-ired for e5ery .onent( &'od-le(+ that can .: V .onent(.<+ L E&. 7( &nformation ?iding ?E .ro.le' and then integrate the co'.le' .le li8e to di5ide the .ro..ro.<+ L c&.< T i. • f there are two . E&.le feel that the co'.:+ L E&. c&.le9itie( i.ined .-t the effort re7-ired to integrate the .:+ L c&.: greater than that of .ro.ined to 'a8e one . • $-t how '-ch di5i(ion (ho-ld .y the co'. • There i( a total co(t or effort c-r5e that can hel.< with co'.e 'ore than that of .le co'.: and .le' into ('aller and ('aller .eo.le' i( 'ore than the (-' of indi5id-al co'.e.le' .art( grow(. -( in deciding the ideal n-'. a .<+.: V .e.• 6od-larity i( the conce.< then .onent( interact and the (tr-ct-re of data that are -(ed .rogra' co'.le' and then con7-er it.: will .<+.art 5ery ('all .le'( are co'.e integrated to (ati(fy the . • "o .: V .:+ V c&. • Hence the (a'e r-le i( a.e thereD • $rea8ing -.ro.onent( &'od-le(+2 the 'anner in which the(e co'.le'( .:+ V E&.rea8ing -. • t i( alway( ea(ier to (ol5e ('aller co'. E&.er of .<+U. • f the(e two .lied for effort re7-ire'ent.ro.le'.arately na'ed and addre((a.le9ity of co'.onent( to get the (ol-tion to the .ro.er of 'od-le(.onent( of a .ro.ro. c&.< Ti.le' into (e.eo.ro. 6( %rchitecture • t i( the hierarchical (tr-ct-re of .

ling i( a 'ea(-re of the relati5e interde.ecific (-. ?* .le'entation .le' .ortance of 'od-larity in general and hence trie( to (ol5e e5ery . A cohe(i5e 'od-le . • nde. • A 'od-lar de(ign red-ce( co'.le9ity2 facilitate( change and re(-lt( in ea(ier i'.agation i( red-ced. • 3hen a (y(te' i( 'od-lari.rea8ing it -.le &not acce((i. • n other word( each 'od-le (ho-ld addre(( a (.endenceD There are two 7-alitati5e criteria cohe(ion and co-.ro.oo8( re7-ired for only $CA are hidden fro' the 5iew of 6CA (t-dent( and 5ice 5er(a.f-nction of re7-ire'ent( and (ho-ld ha5e a (i'.t.rogra'.e achie5ed .roced-re2 re7-iring little interaction with .art( of the (y(te'.e le((+.y enco-raging . • How do yo.e f-nctionally inde.roced-re and data+ contained within one 'od-le i( inacce((i.+ 8( )unctional &ndependence • E5ery. • &Partitioning of .ody -nder(tand( the i'. • Co-.arallel de5elo.endent 'od-le( are ea(ier to de5elo.oo8( in the li.e (-ch that .endence can .le interface &'eaning flow of infor'ation (ho-ld .ro.agation of (ide effect( of change( 4 error( will .eing .• 6ean( 'od-le( (ho-ld . • Thi( f-nctional inde. A cohe(i5e 'od-le (ho-ld ideally do /-(t one thing.e le(( and yo-r (oftware 7-ality will .rinci. into n-'.y .-(e the .ed the 'od-le( (ho-ld . • Cohe(ion i( a 'ea(-re of relati5e f-nctional (trength of a 'od-le.etter.le2 hidden fro'+ to other 'od-le( that ha5e no need for (-ch infor'ation.'ent of different .roced-re( . Cohe(ion Cohe(ion &-nity2 hanging together+ i( a nat-ral e9ten(ion of the infor'ation hiding conce.er of 'od-le(.ro.ing 'od-le( with O(ingle 'indedP f-nction and Oa5er(ionP &di(li8e+ to e9ce((i5e interaction with other 'od-le(.endence i( a 8ey to good de(ign and de(ign i( the 8ey to (oftware 7-ality.4'aintain4te(t and error .endence a'ong 'od-le(.ecified and de(igned (o that infor'ation &. • f yo. • =-nctional inde.e .e (.endent.'ea(-re f-nctional inde.rary (ho-ld .le2 not a5aila.y de5elo.ling.art( of a .le of infor'ation hiding then the .erfor'( a (ingle ta(8 within a (oftware .erfor'ed in other .

e cohe(i5e i./ect with wide .a(e we ha5e data de(ign and in the 'iddle we ha5e architect-ral de(ign and interface de(ign. f the .le co-. t( content( are a( follow() 3e (tart with the "co.art(. 6CA teaching tea' i( hidden fro' $CA (t-dent(.&Teaching tea' for 6CA (ho-ld .onent witho-t changing it( f-nction or .roce(( of changing a (oftware (y(te' in (-ch a way that it doe( not alter the e9ternal .ation techni7-e that (i'.-(+ The la(t (te. The infor'ation i( deri5ed fro' (y(te' (.y good architect-ral de(ign and interface de(ign (o that 'inor change( to the .ro. Ne9t i( data de(ign where data.e.ecification and "R" &"y(te' re7-ire'ent (.+ Co-.rone to a Ori. The Ae(ign 'odel The de(ign 'odel i( (hown a( a .le.ling Co-.ro5e( it( internal wor8ing. "o we (ho-ld (tart with (olid data de(ign (-.e of the de(ign effort./ect( or teach at other in(tit-tion( or do (o'ething el(e.aration of de(ign (.een deri5ed.ling i( a 'ea(-re of interconnection a'ong 'od-le( in a (oftware (tr-ct-re.ecification+.yra'id which i( an e9tre'ely (ta.ling.ecification. (ho-ld not teach $CA (-.a(e (tr-ct-re2 any e9ternal file (tr-ct-re( and internal data (tr-ct-re( are defined.onent into < or ? cohe(i5e .a(e and a low centre of gra5ity.. n (oftware de(ign we try for lowe(t . Ae(ign Aoc-'entation &Not in (ylla.lifie( the de(ign &or code+ of a co'.le o. Refactoring t i( a reorgani.le effectP2 ca-(ed when error( occ-r at one location and . "i'.a(e or 'iddle do not ha5e a 5ery ad5er(e effect on the (oftware. Architect-ral de(ign indicate( how the .eha5ior of the co'.onent yet i'.. At the .onent0le5el de(ign. in de(ign acti5ity i( the .. we ha5e co'.agate thro-gh a (y(te'. t al(o contain( (tr-ct-re chart( to (how 'od-lar hierarchy.le connecti5ity a'ong 'od-le( re(-lt( in (oftware that i( ea(ier to -nder(tand and le(( . Another definition i( refactoring i( the .a(e i( (trong the (tr-ct-re i( le(( li8ely to to.o((i.orted . ?H . $rea8ing -.rogra' architect-re ha( .eha5ior. of a non0cohe(i5e co'.re. At the to.

endi9 to the de(ign doc-'ent.le'entary data.arallel then thi( (ection i( deleted fro' the de(ign (.-lar data2 e9cer.e -(ed to tran(fer (oftware to c-(to'er (ite.The de(ign of internal and e9ternal .ed..ed with an Engli(h li8e . Co'.eration(4 in(tallation 'an-al and incl-de it a( an a.roced-re( occ-r( in .li(h that all re7-ire'ent( are (ati(fied and &<+ to indicate that which co'.-r.ecification of te(t . are .roced-re( % are initially de(cri.ecial note. The de(ign (.rogra' interface( i( re.le'entation of (.onent( are critical to the i'. There are two .ecification contain( a re7-ire'ent( cro((0 reference.e ad5i(a.t( fro' other doc-'ent( etc. . The final (ection contain( (-.ecification. The fir(t (tage in the de5elo.roced-re(2 ta.arately addre((a.tion(2 alternati5e .'ent of te(t doc-'entation i( al(o contained in the de(ign doc-'ent.le ele'ent( of (oftware (-ch a( (-.ecific re7-ire'ent(.re(ented and a detailed de(ign of the h-'an 4 'achine interface i( de(cri.. t 'ay .re(ented a( a (. Algorith' de(cri. f detailed (.roach that will . ?I .roce((ing narrati5e.o(e( % &:+ to e(ta.le to de5elo.reli'inary o.. Thi( (ection will al(o contain the a.onent( % (e.ro-tine(2 f-nction( or .