Professional Documents
Culture Documents
UML UseCaseModeling VN
UML UseCaseModeling VN
Ni dung
Use Case l g? Li ch ca Use Case Use Case vs. Ti liu yu cu M hnh ha Use Case
H thng - System Tc nhn - Actor Use Case Quan h gia cc Use Case
Use Case l g?
c xut bi Ivar Jacobson (1994) L mt khi chc nng c thc hin bi h thng mang li mt kt qu c gi tr i vi mt actor no Tr li cu hi H thng s lm g theo cch nhn ca ngi s dng L tp cc kch bn c a ra da vo cc yu cu chung ca ngi s dng M hnh ha Use Case khng phi l mt k thut m hnh ha hng i tng
Use Case Modeling 3
Li ch Use Case
Nm bt cc yu cu v chc nng t kha cnh ngi dng M t r rng v ph hp nhng g h thng cn lm L c s kim nh h thng Gip cho vic a cc yu cu h thng thnh cc lp v cc hm chc nng vo h thng
Li ch Use Case
ng vi tr nh l mt n v c bn dng nh gi L n v c phn tch nh nht
Each increment that is planned and delivered is described in terms of the Use Case that will be delivered in that increment
Use Case v cc yu cu
Mt ti liu yu cu cho bit nhng g h thng s thc hin. Use Case m t nhng hot ng m ngi s dng thc hin v nhng p tr tng ng ca h thng i khi Use Case c xem nh l mt suy lun t nhng yu cu Cc yu cu s c lp ti liu hiu qu bng cc Use Case
Tng kh nng tm vt Gip cho vic xc thc yu cu ngi dng v chc nng ca h thng d dng hn Gip cho vic phn loi ngi s dng th cng Cng c tm cc lp
Use Case Modeling
Use Case v cc yu cu
Use Case khng ph hp cho vic xc nh cc yu cu phi chc nng ca h thng Use case c xem nh l mt phn ca vic c t cc yu cu h thng
M t h thng Cc tc nhn m h thng tng tc Cc UC, hoc dch v m h thng thc hin Mi quan h gia cc thnh phn trn
Use Case Modeling 8
H thng
H thng khng cn thit l mt h thng phn mm nh ngha cc vng bin quan trng ca h thng
Nhng tc v no c thc hin t ng hoc th cng? Nhng tc v no c thc hin bi cc h thng khc?
H thng
Mt h thng trong biu Use Case c m t nh mt hp hnh khi Tn ca h thng c hin th bn trong hoc trn hp hnh khi
10
Tc nhn
L ci g hoc ai tng tc vi h thng (trao i thng tin vi h thng) Tc nhn m t v i din cho mt vai tr, ch khng phi l mt ngi s dng tht s v c th ca h thng V d:
Nhn vin (Clerk) Nhp d liu Ngi gim st (Supervisor) Cho php hiu chnh/xa d liu Ngi qun l (Manager) Cho php xem cc phn tch
Tc nhn
Tc nhn c mc ch:
Add a Traffic Violation Lookup a Traffic Violation
Mi tc nhn u c tn, phn nh vai tr ca tc nhn Mt use case lun c kch hot bi mt tc nhn no
K hiu tc nhn
Clerk
13
Khi cc tc nhn vi tng vai tr c mnh, nhm thc hin mt vai tr khi qut hn th vai tr c m t nh mt s khi qut chung ca tng vai tr ring bit Nhng hnh vi chung ca cc tc nhn s c m t lp cha Cc tc nhn k tha cc hnh vi ca lp tc nhn cha v m rng nhng chc nng m lp cha khng c Cc tc nhn khng nht thit lc no cng c quan h vi nhau
Manager
Supervisor
Use Case Modeling
Clerk
14
Xc nh tc nhn
Ai s dng chc nng chnh ca h thng? Ai s duy tr, qun l v gi cho h thng lm vic? Nhng phn mm/h thng khc m h thng cn tng tc?
Nhng h thng my tnh khc Nhng ng dng khc chy trn cng mt my tnh (i.e. X client/server) Ch : trnh nhm ln gia s tng tc (interaction) vi u vo (input)
Use Case Modeling 15
Xc nh tc nhn
L ai
S dng h thng? Ci t h thng? Khi ng h thng? Duy tr h thng? Thot h thng? Thu thp thng tin t h thng? Cung cp thng tin cho h thng?
Thi gian?
Xem thi gian nh l mt tc nhn Tc nhn thi gian c th kch hot mt Use Case
17
Use Case
Lun c kch hot bi mt tc nhn Mt UC cung cp mt gi tr cho mt tc nhn Mt UC phi hon chnh
Mu m t UC
Tn (Name)
Tn ca UC, c ngha gn vi mc ch ngi s dng
Biu mu m t UC
M t (Description)
M t cc tin trnh c bn hoc bnh thng ca h thng nu h thng hot ng nh d nh (mi th iu ng)
Cc bin th (Variations)
Cc iu kin dn ti vic phn nhnh M t cc tin trnh thay th hoc l tn m rng ca UC
Cc ngoi l (Exceptions)
Nhng iu kin khng mong i dn ti vic phn nhnh (xung t vi iu kin sau) M t cc tin trnh thay th
21
Use-Cases Tips
Phn ln bt u v kt thc bi tc nhn Kch bn (m t) c vit theo cch nhn ca tc nhn (v vy cc bc nn ch r cho tc nhn thy) S dng cc cu khai bo
22
Vi mi tc nhn, ta xc nh:
Nhng dch v no tc nhn yu cu t h thng? H thng c lu tr thng tin khng?
c, to, hy, hiu chnh, lu tr thng tin
Liu tc nhn cn c thng bo v cc s kin trong h thng, hay tc nhn cn thng bo cho h thng v vic g khng? Cng vic thng ngy ca tc nhn c n gin khng?
Khng nn ch tp trung vo h thng hin ti
23
Y
25
Specialized
Generalized
27
Recommended Workflow
1.
2.
Xc nh cc tc nhn (quan h gia chng nu cn thit) Vi mi tc nhn xc nh, tm UC cho n khi khng tm thy UC mi
a. b. Xc nh tt c mc ch ca tc nhn Quyt nh tin trnh no s gip t c i vi mi mc ch To Use Case i vi mi mc ch tm c
Tc nhn/mc ch mi c th c tm thy trong bc ny
c.
d.
3.
28
29
External Name: Remove Traffic Violation System Actors: Supervisor, OffendersDB. Goal: Remove an existing Traffic Violation References to requirements: 1.2.3, 1.3.2.4, Pre-conditions:
Normal Course of Lookup Traffic Violation UC is completed, and the details of an existing Traffic Violation are displayed
Description:
1.
2.
Supervisor calls for deletion of the chosen Traffic Violation TVRS prompts Supervisor for confirmation
Use Case Modeling 30
Post-conditions:
Removed Traffic Violation is no longer stored in the TVRS. Traffic Violation is removed from the offenders record in the OffendersDB "Lookup Traffic Violation" form is displayed
Use Case Modeling 31
Exceptions:
3a: Supervisor cancels:
3a1: TVRS Continues to item 6 without removing the Traffic Violation
32
Name: Add Traffic Violation Actors: Clerk, PolicemenDB, OffendersDB Goal: Add a new Traffic Violation to the TVRS References to requirements: Pre-conditions:
The Traffic displayed Violation Management window is
Description:
1. 2. 3. Clerk calls for addition of a new Traffic Violation TVRS displays an empty Traffic Violation Details form Clerk enters violation details and calls for saving the new Traffic Violation
33
Post-conditions:
New Traffic Violation is stored in the TVRS TVRS displays an empty Traffic Violation Details form
Variations:
5a: Clerk cancels
5a1: TVRS continues to item 2 without clearing the traffic violation details entered by clerk
...
Use Case Modeling 35
Exceptions:
3a: Clerk cancels addition of the new Traffic Violation
3a1: TVRS displays the "Traffic Violation Management" form
36
Name: New Offender [extends Add Traffic Violaton ] Actors: UC attributes Goal: are inherited References to requirements: Pre-conditions:
Offender is not stored in the OffendersDB
37
Description:
9a: OffendersDB replies that the offender is not known. [Add Traffic Violation] 9b: TVRS displays an empty Offender Details form 9c: Clerk enters offender details and calls for saving the new details 9d: TVRS prompts Clerk for confirmation 9e: Clerk confirms 9f: TVRS requests OffendersDB to store the new offender 9g: OffendersDB replies that offender was stored successfully
Post-conditions:
New Offender is stored in the offenders DB
...
38
Replace Offender
OffendersDB
<<extend>>
PolicemenDB
New Offender
Use Case Modeling 39
Supervisor
Levels of Use-Cases
Sea-Level
Discrete interactions between primary actor and system
Kite-Level
Show how sea-level use-cases fit into wider business interactions
40
Use-Cases
41
42
Thank You!
feel tired? YES!!!!
43