UML Use Case Modeling Vn
Transcript of UML Use Case Modeling Vn
-
8/8/2019 UML Use Case Modeling Vn
1/43
MM HNHHNH HAHA UU SESE CC ASEASEHoang Huu Hanh (PhD), Hue Universityhanh-at-hueuni.edu.vn
-
8/8/2019 UML Use Case Modeling Vn
2/43
NN ii dungdungy Use Case l g?y L i ch c a Use Casey Use Case vs. Ti li u yu c uy M hnh ha Use Case
H th ng - SystemTc nhn - Actor
Use CaseQuan h gi a cc Use Casey V d : TVR S Use Case
2Use Case Mo delingBased on tutor ials and prese ntat ions of Rat ionals UML webs ite
-
8/8/2019 UML Use Case Modeling Vn
3/43
Use CaseUse Case ll gg??y c xu t b i Ivar Jacobson (1994)y L m t kh i ch c n ng c th c hi n
b i h th ng mang l i mt k t qu cgi tr i v i mt actor no
y Tr l i cu h iH th ng s lm g theocch nhn c a ng i s d ng
y L t p cc k ch b n c a ra d avo cc yu c u chung c a ng i sd ng
y M hnh ha Use Case khng ph i lm t k thu t m hnh ha h ng it ng
3Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
4/43
LL ii chch Use CaseUse Casey N m b t cc yu c u v ch c n ng
t kha c nh ng i dngy M t r rng v ph h p nh ng g h
th ng c n lmy L c s ki m nh h th ngy Gip cho vi c a cc yu c u h
th ng thnh cc l p v cc hm ch cn ng vo h th ng
4Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
5/43
LL ii chch Use CaseUse Casey ng vi tr nh l m t n v c b n
dng nh giy L n v c phn tch nh nh t
E ach increment that is planned anddelivered is described in terms of the UseCase that will be delivered in that
increment
5Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
6/43
Use CaseUse Case vv cccc yuyu cc uuy M t ti li u yu c u cho bi t nh ng g h
th ng s th c hi n. Use Case m t nh ngho t ng m ng i s d ng th c hi n vnh ng p tr t ng ng c a h th ng
y
i khi Use Case c xem nh l m t suylu n t nh ng yu c uy Cc yu c u s c l p ti li u hi u qu
b ng cc Use CaseT ng kh n ng tm v tGip cho vi c xc th c yu c u ng i dng vch c n ng c a h th ng d dng h nGip cho vi c phn lo i ng i s d ng th cngCng c tm cc l p
6Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
7/43
Use CaseUse Case vv cccc yuyu cc uuy Use Case khng ph h p cho vi c
xc nh cc yu c u phi ch c n ngc a h th ng
y Use case c xem nh l m t ph nc a vi c c t cc yu c u h th ng
7Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
8/43
BiBi u u Use CaseUse Casey M hnh Use Case c m t trong
UML b i mt hay nhi u bi u UseCase (UCD)
y M t bi u Use Case bao g m 4thnh ph n chnh:M t h th ngCc tc nhn m h th ng t ng tcCc UC, ho c d ch v m h th ng th chi nM i quan h gi a cc thnh ph n trn
8Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
9/43
HH thth ngngy L m t ph n c a m hnh Use Casey R anh gi i c a h th ng m ta mu n pht tri n c n
ph i c nh ngh a r rngy H th ng khng c n thi t l mt h th ng
ph n m my nh ngh a cc vng bin quan tr ng c a hth ng
Nh ng tc v no c th c hi n t ng ho cth cng?Nh ng tc v no c th c hi n b i cc hth ng khc?x T t c cc gi i php c a ra ph i n m trong vng
bin c a h th ng
9Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
10/43
HH thth ngngy M t h th ng trong bi u Use Case
c m t nh m t h p hnh kh iy Tn c a h th ng c hi n th bn
trong ho c trn h p hnh kh i
Traffic Violations Report System
10Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
11/43
Tc nhnTc nhny L ci g ho c ai t ng tc v i h th ng (trao
i thng tin v i h th ng)y Tc nhn m t v i di n cho mt vai tr,
ch khng ph i l m t ng i s d ng th t sv c th c a h th ngy V d :
Nhn vin (Clerk)Nh p d li uNg i gim st (Supervisor) Cho php hi uch nh/xa d li uNg i qu n l (Manager) Cho php xem ccphn tch
y M t ng i s d ng n l c th c nhi uh n m t vai tr
11Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
12/43
Tc nhnTc nhny Tc nhn c m c ch:
Add a TrafficViolationLookup a TrafficViolation
y Tc nhn khng nh t thi t l con ng iC th l m t h th ng bn ngoi t ng tcv i h th ng chnh
y M i tc nhn u c tn, ph n nh vai
tr c a tc nhny M t use case lun c kch ho t b i
m t tc nhn no
1 2Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
13/43
K hiK hi u tc nhnu tc nhn
Clerk
>
Clerk
13Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
14/43
MM i quan hi quan h gigi a cc tc nhna cc tc nhny K hi cc tc nhn v i t ng vai tr c mnh, nh m th c hi n
m t vai tr khi qut h n th vai tr c m t nh m ts khi qut chung c a t ng vai tr ring bi t
y Nh ng hnh vi chung c a cc tc nhn s c m t l pcha
y Cc tc nhn k th a cc hnh vi c a l p tc nhn cha vm r ng nh ng ch c n ng m l p cha khng c
y Cc tc nhn khng nh t thi t lc no c ng c quan h v inhau
Clerk SupervisorManager
14Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
15/43
X c X c nh tc nhnnh tc nhny Ai s d ng ch c n ng chnh c a h
th ng?y Ai s duy tr, qu n l v gi cho h th ng
lm vi c?y Nh ng ph n m m/h th ng khc m h
th ng c n t ng tc?Nh ng h th ng my tnh khcNh ng ng d ng khc ch y trn cng m tmy tnh (i.e. X client/server)Ch : trnh nh m l n gi a s t ng tc(interaction) v i u vo (input)
15Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
16/43
X c X c nh tc nhnnh tc nhny L ai
S d ng h th ng?Ci t h th ng?
K h i ng h th ng?Duy tr h th ng?Thot h th ng?Thu th p thng tin t h th ng?
Cung c p thng tin cho h th ng?y Chuy n g x y ra t i mt th i i m nh
tr c?
16Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
17/43
ThTh i gian?i gian?y Xem th i gian nh l m t tc nhny Tc nhn th i gian c th kch ho t
m t Use Case
17Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
18/43
Use CaseUse Casey M t m t ch c n ng hon ch nh theo
quan i m c a m t tc nhnM t UC th a mn m t m c ch no
c a tc nhny Lun c kch ho t b i m t tc nhny M t UC cung c p m t gi tr cho mt
tc nhny M t UC ph i hon ch nh
Trnh phn r UC thnh cc UC nh h nb sung cho nhau (phn r ch c n ng)
18Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
19/43
Use Case ( cont.)Use Case ( cont.)y Cc k ch b n c a UC th ng c m
t d i d ng v n b nc t n gi n v nh t qun cch th c m
tc nhn v h th ng t ng tc v i nhauM u m t UC (Use Case DescriptionTempate
y M t theo m c nh c a ng i sd ng v s tr l i c a h th ng
K hng s d ng cc y u t cng ngh , trnhch ti t ho cc c ch , c bi t l lin quan
n cc giao di n
19Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
20/43
MM uu mm tt UCUCTn (Name)x Tn c a UC, c ngh a g n v i m c ch ng i s
d ngCc tc nhn (Actors)M c ch (Goals)Cc yu c u (Requirements) (ty ch n)x Cung c p kh n ng l n v t
i u ki n tin quy t (Pre-Conditions)x Cc i u ki n c n thi t c n ph i c tr c khi th chi n m UCx C th l m t UC khc (khng gi ng v i quan h
)
20Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
21/43
BiBi u mu m u m tu m t UCUCy M t (Description)
M t cc ti n trnh c b n ho c bnh th ng c a h th ngn u h th ng ho t ng nh d nh (m i th i u ng)
y i u ki n sau (Post-conditions)Tr ng thi c a h th ng sau khi UC c th c thiCc gi tr a ra cho cc tc nhnPhn bi t gi a bi n th v cc ngo i l
y Cc bi n th (Variations)Cc i u ki n d n t i vi c phn nhnhM t cc ti n trnh thay th ho c l tn m r ng c a UC
y Cc ngo i l (Exceptions)Nh ng i u ki n khng mong i d n t i vi c phn nhnh(xung t v i i u ki n sau)M t cc ti n trnh thay th
21Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
22/43
UseUse--Cases TipsCases Tipsy Ph n l n b t u v k t thc b i tc
nhny K ch b n (m t ) c vi t theo cch
nhn c a tc nhn (v v y cc b cnn ch r cho tc nhn th y)
y S d ng cc cu khai bo
22Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
23/43
T mT m kiki mm Use CaseUse Casey V i m i tc nhn, ta xc nh:
Nh ng d ch v no tc nhn yu c u t hth ng?H th ng c l u tr thng tin khng?x c, t o, h y, hi u ch nh, lu tr thng tinLi u tc nhn c n c thng bo v cc ski n trong h th ng, hay tc nhn c n thngbo cho h th ng v vi c g khng?Cng vi c th ng ngy c a tc nhn c ngi n khng?x K hng nn ch t p trung vo h th ng hi n t i
23Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
24/43
Use Case ( cont.)Use Case ( cont.)y K hi u Use Case
L m t hnh elip ch a tn c a Use Casec t bn trong bin m hnh c a h th ng
K t n i v i t nh t mt tc nhn
Add Traffic Violation
Traffic Violations Report system
Clerk
Ngo i l cho cc UC c bi t v m r ng
24Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
25/43
MM i quan hi quan h gigi a cc Use Casea cc Use Casey M i quan h Include (uses i v i cc phin
b n tr c)K hi m t s UC c chung hnh vi, th hnh vi s cm hnh ha thnh m t UC ring c s d ng b i cc
UC khcX > Y c ngh a l mu n th c hi n hnh ngX th ph i th c hi n Y t nh t mt l nTh n tr ng i v i vi c phn r ch c n ngUC include ph i hon ch nhX ph i th a mn nh ng i u ki n u c a Y tr c khiinclude Y
Use Case Mo deling 25
>X Y
-
8/8/2019 UML Use Case Modeling Vn
26/43
MM ii quanquan hh gigi aa cccc Use CaseUse Casey Quan h khi qut ha
S d ng khi m t s Use Case c chung m t vitc v , nh ng khc nhau m t vi tc v khc
c th tch ra thnh cc Use Case ring bi tCc Use Case t ng qut v chuyn bi t ph i ccng chung m c chM t Use Case chuyn bi t n m b t m t k ch b nno c a Use Case t ng qutUse Case t ng qut ph i hon thi n
Specialized Generalized
26Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
27/43
MM ii quanquan hh gigi aa cccc Use CaseUse Casey Quan h khi qut ha
Use Case chuyn bi t c th t ng tcv i cc tc nhn m iLo i Use Case ny c ng c th thm vocc i u ki n u vpost-conditions
Specialized Generalized
27Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
28/43
Recommended Wor k flowRecommended Wor k flow1. Xc nh cc tc nhn (quan h gi a chng n u c n
thi t)2. V i m i tc nhn xc nh, tm UC cho n khi
khng tm th y UC m ia. Xc nh t t c m c ch c a tc nhn
b. Quy t nh ti n trnh no s gip t c i v i m im c chc. T o Use Case i v i m i m c ch tm c
x Tc nhn/m c ch m i c th c tm th y trong b c nyd. Xc th c/ki m tra tnh ng cc Use Case tm c
3. V bi u Use Casen gi ha m hnh b ng cch l p l i cc quy trnh trong
tr ng h p bi u qu ph c t p
28Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
29/43
TVRS Use CaseTVRS Use CaseExample
29Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
30/43
Ex ampleEx ample TVRS Use CaseTVRS Use Casey Name: R emove TrafficViolationy Actors : Supervisor, OffendersDB.y Goal: R emove an existing TrafficViolationy R eferences to requirements: 1.2.3, 1.3.2.4, y Pre-conditions :
Normal Course of Lookup TrafficViolation UC iscompleted, and the details of an existing TrafficViolation are displayed
y Descriptio n:1. Supervisor calls for deletion of the chosen TrafficViolation
2. TVR S prompts Supervisor for confirmation
Ex ternalSystem
30Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
31/43
Ex ampleEx ample TVRS Use CaseTVRS Use Case3. Supervisor confirms4. TVR S requests OffendersDB to delete the
TrafficViolation from the offenders record5. OffendersDB approves that the Traffic Violation
has been deleted6. TVR S allows Supervisor to look up a new
Traffic Violation as described in the LookupTrafficViolation UC
y Post-conditions :R emoved Traffic Violation is no longer stored inthe TVR S.Traffic Violation is removed from the offendersrecord in the OffendersDB"Lookup TrafficViolation" form is displayed
31Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
32/43
Ex ampleEx ample TVRS Use CaseTVRS Use Casey Exceptions :
3a: Supervisor cancels:x 3a1: TVR S Continues to item 6 without removing the
TrafficViolation5a: Traffic Violation is not removed from theOffendersDBx 5a1: TVR S displays an error message describing the
failure5a2: TVR S continues to item 6 without clearing chosenTraffic Violation details, and without deleting the TrafficViolation
3 2Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
33/43
Ex ampleEx ample TVRS Use CaseTVRS Use Casey Name: Add TrafficViolationy Actors : Clerk, PolicemenDB, OffendersDBy Goal: Add a new TrafficViolation to the TVR Sy R eferences to requirements: y Pre-conditions :The Traffic Violation Management window is
displayedy Description :
1. Clerk calls for addition of a new TrafficViolation2. TVR S displays an empty Traffic Violation Detailsform3. Clerk enters violation details and calls for saving
the new TrafficViolation
33Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
34/43
Ex ampleEx ample TVRS Use CaseTVRS Use Case4. TVR S prompts Clerk for confirmation.5. Clerk confirms6. TVR S asks the PolicemenDB whether or not
the policeman is known7. PolicemenDB replies that the policeman is
known8. TVR S asks the OffendersDB whether or not
the offender is known9. [E xtension point] OffendersDB replies that the
offender is known
34Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
35/43
Ex ampleEx ample TVRS Use CaseTVRS Use Casey Post-conditions :
New TrafficViolation is stored in the TVR STVR S displays an empty TrafficViolation Details form
y Variations :
5a: Clerk cancelsx 5a1: TVR S continues to item 2 without clearing the trafficviolation details entered by clerk
9a: OffendersDB replies that the offender is notknown.x Described in Use Case New Offender
7a: Policeman is not stored in the policemenDBx 7a1: TVR S displays an error messagex 7a2: TVR S continues to item 2 without clearing Traffic
Violation details entered by clerk...
35Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
36/43
Ex ampleEx ample TVRS Use CaseTVRS Use Casey Exceptions :
3a: Clerk cancels addition of the new TrafficViolationx 3a1: TVR S displays the "Traffic Violation Management"
form
36Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
37/43
Ex ampleEx ample TVRS Use CaseTVRS Use Casey Name: New Offender [extends Add Traffic
Violaton ]y Actors :y Goal:y References to requirements : y Pre-conditions :
Offender is not stored in the OffendersDB
U C attributes
are inherited
37Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
38/43
Ex ampleEx ample TVRS Use CaseTVRS Use Casey Description :
9a: OffendersDB replies that the offender is not known.[Add TrafficViolation]9b: TVR S displays an empty Offender Details form9c: Clerk enters offender details and calls for saving the
new details9d: TVR S prompts Clerk for confirmation9e: Clerk confirms9f: TVR S requests OffendersDB to store the new offender 9g: OffendersDB replies that offender was storedsuccessfully
y Post-conditions :New Offender is stored in the offenders DB
y ...
38Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
39/43
Ex ampleEx ample TVRS Use CaseTVRS Use Case
Remove T.V
Lookup T.V
ReplaceOffender
New Offender
E dit T.V.
(8)
Add T.V.(9)
Clerk
Supervisor
Traffic Violations Report System
>
>
> OffendersDB
PolicemenDB
39Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
40/43
Levels of UseLevels of Use--CasesCasesy Sea-Level
Discrete interactions between primaryactor and system
y K ite-LevelShow how sea-level use-cases fit into
wider business interactions
40Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
41/43
UseUse--CasesCasesy Provide the boundaries and scope of a
project
41Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
42/43
P r ior it izeP r ior it ize Use CaseUse Casey Based on risky Timey Money
4 2Use Case Mo deling
-
8/8/2019 UML Use Case Modeling Vn
43/43
Thank You!Thank You! feel t ire d? Y ES!!!!
43Use Case Mo deling