Upload
sujitha14
View
244
Download
0
Embed Size (px)
Citation preview
8/18/2019 Chapter 3 Ooad
1/22
Chapter 3
8/18/2019 Chapter 3 Ooad
2/22
INTRODUCTION
• Software development
• Analysis, design, implementation, testing &
refnement to transorm users need into
sot!are solution that satisfes those needs• O"#e$t%oriented approa$h
– more rigorous pro$ess to do things right
– more time spent on gathering reuirements,
de'eloping reuirements model & analysis model,then turn into design model
– need not see $ode until ater ()* de'elopmenttime
8/18/2019 Chapter 3 Ooad
3/22
+OT-AR. D./.0O12.NT 1ROC.++
• +ystem de'elopment $an "e 'ie!ed as apro$ess
• 1ro$esses $hange, refne, transorm &
add to e4isting produ$t• The pro$ess $an "e di'ided into small,
intera$ting phases 5 su"pro$esses
• .a$h su"pro$ess must ha'e the ollo!ing6
– A des$ription in terms o ho! it !or7s
– +pe$if$ation o the input reuired or thepro$ess
– +pe$if$ation o the output to "e produ$ed
8/18/2019 Chapter 3 Ooad
4/22
THE SOFTWARE DEVELOPMENTPROCESS
• +ot!are de'elopment pro$ess $an "e 'ie!ed as aseries o transormations
• The output o one transormation "e$omes the inputo the su"seuent transormation
• Transformaton ! "anal#ss$ % translates the usersneeds into system reuirements and responsi"ilities
• Transformaton & "des'n$ % "egins !ith a pro"lemstatement and ends !ith a detailed design that $an
"e transormed into an operational system• Transformaton ( "mplementaton$ % re)nes t*e
detaled des'n nto t*e s#stem deplo#mentt*at wll satsf# +sers, needs-
8/18/2019 Chapter 3 Ooad
5/22
8/18/2019 Chapter 3 Ooad
6/22
./0LD0N1 H01H23/AL0T4SOFTWARE
• To a$hie'e high uality in sot!are !eneed to "e a"le to ans!er the ollo!inguestions6
• 8o! do !e determine !hen the systemis ready or deli'ery9
• Is it no! an operational system that
satisfes users needs9• Is it $orre$t and operating as !e thought
it should9
• Does it pass an e'aluation pro$ess9
8/18/2019 Chapter 3 Ooad
7/22
+ystem .'aluation % :lum
• Corresponden5e % measures ho! !ell thedeli'ered system mat$hes the needs o theoperational en'ironment, as des$ri"ed in theoriginal reuirements statement
• Valdaton % tas7 o predi$ting $orresponden$e
• Corre5tness % measures the $onsisten$y o theprodu$t reuirements !ith respe$t to the design
spe$if$ation• Ver)5aton % e4er$ise o determining
$orre$tness
8/18/2019 Chapter 3 Ooad
8/22
/erif$ation & /alidation
• Verifcation: Am I building the product right?
• Validation: Am I building theright product?
8/18/2019 Chapter 3 Ooad
9/22
8/18/2019 Chapter 3 Ooad
10/22
8/18/2019 Chapter 3 Ooad
11/22
OOSD6 A +se25ase drven approa5*
•
A5tvtes• O"#e$t%oriented analysis % use $ase dri'en
• O"#e$t%oriented design
• 1rototyping
• Component%"ased de'elopment
• In$remental testing
• En5o+ra'es
• 5 'ie!ing o system as a system o$ooperati'e o"#e$ts
• 5 in$remental de'elopment
8/18/2019 Chapter 3 Ooad
12/22
O78e5t2orented anal#ss• $on$erned !ith determining the system reuirements
and identiying $lasses and their relationships to other$lasses in the pro"lem domain
• A5tors6 The users o the system
• /se 5ase6 A typi$al intera$tion "t!n a user and a
system that $aptures users goals and needs• S5enaros6 Used to help analysts understand
reuirements
• Colla7oraton6 The interse$tion among o"#e$ts rolesto a$hie'e a gi'en goal is $alled $olla"oration
• /se25ase modeln'6 .4pressing these high%le'elpro$esses and intera$tions !ith $ustomers in a s$enarioand analy=ing it is reerred to as use%$ase modeling
• The 9:2&: r+le generally applies or do$umentation6
>? per$ent o the !or7 $an "e done !ith (? per$ent o
8/18/2019 Chapter 3 Ooad
13/22
• Use Case, is a name for a scenarioto describe the user–computer
system interaction.
• Determine system reuirements,identiy $lasses & their relationship
to other $lasses in domain• To understand system reuirements
– need to identiy the users or a$tors
– !ho are the a$tors 9 – 8o! do they use system 9
8/18/2019 Chapter 3 Ooad
14/22
O78e5t2orented des'n
• design the $lasses identifed during theanalysis phase and the user intera$e
• identiy and defne additional o"#e$ts and
$lasses that support implementation othe reuirements
– Design and refne $lasses
– Design and refne attri"utes
– Design and refne methods
– Design and refne stru$tures
– Design and refne asso$iations
8/18/2019 Chapter 3 Ooad
15/22
@uidelines to o"#e$t%oriented design
• Reuse, rather than "uild, a ne! $lassno! the e4isting $lasses
• Design a large num"er o simple
$lasses, rather than a small num"er o$omple4 $lasses
• Design methods
• Critiue !hat you ha'e proposed Ipossi"le, go "a$7 and refne the$lasses
8/18/2019 Chapter 3 Ooad
16/22
Protot#pn'
• A prototype is a 'ersion o a sot!are produ$tde'eloped in the early stages o the produ$ts lie$y$le or spe$if$ e4perimental purposes
• 1rototypes ha'e "een $ategori=ed in 'arious !ays
• A *or;ontal protot#pe is a simulation o theintera$e , "ut $ontains no un$tionality
• A vert5al protot#pe is a su"set o the systemeatures !ith $omplete un$tionality
• An anal#ss protot#pe is an aid or e4ploring the
pro"lem domain
• A doman protot#pe is an aid or the in$rementalde'elopment o the ultimate sot!are solution
8/18/2019 Chapter 3 Ooad
17/22
1urpose o the prototypere'ie!
B To demonstrate that the prototypehas "een de'eloped a$$ording to thespe$if$ation
( To $olle$t inormation a"out errors orother pro"lems in the system
3 To gi'e management and e'eryone
$onne$ted !ith the pro#e$t the frstglimpse o !hat the te$hnology $anpro'ide
8/18/2019 Chapter 3 Ooad
18/22
0mplementaton6 Component27ased development
• CASE Tools6
• Computer Aided +ot!are .ngineering;CA+.< tools allo! their users to rapidly
de'elop inormation systems
• automation o the entire inormationsystems de'elopment lie $y$le pro$ess
using a set o integrated sot!are tools,su$h as modeling, methodology, andautomati$ $ode generation
8/18/2019 Chapter 3 Ooad
19/22
0mplementaton6 Component27ased development
• Component .ased Development6
• C:D is an industriali=ed approa$h tothe sot!are de'elopment pro$ess
• Assem"ly o pre"uilt, pretested,reusa"le sot!are $omponents thatoperate !ith ea$h other
8/18/2019 Chapter 3 Ooad
20/22
8/18/2019 Chapter 3 Ooad
21/22
0mplementaton6 Component27ased development
• Rapd Appl5aton Development6
• RAD is a set o tools and te$hniuesthat $an "e used to "uild anappli$ation aster than typi$allypossi"le !ith traditional methods
• Through tools su$h as Delphi, /isual
Age, /isual :asi$, or 1o!er :uilder
8/18/2019 Chapter 3 Ooad
22/22
0n5remental testn'
• I you !ait until ater de'elopment totest an appli$ation or "ugs andperorman$e, you
• $ould "e !asting thousands o dollarsand hours o time
• Testing should "e integral part o
+D0C