Mo20 Œ 1 0!Œ2+10&!1" www.di.uoa.gr/~afrodite/oo2001.html (USE CASE MODELING) 2)$ 2 #use case modeling..!10.. Œ0!!%0 2" 02 #!".Œ.210" 2 # 1#12.2 ". /+10.1.3. 1#0Œ Œ0!!.3.2 2. Œ!Œ0. 0 2 1*12.. Œ.!$0 2.2 1.. 2. 0$ 0Œ.0#1 2 # 1#12.2 ".. Œ.!$0 2.)22..$0* 2. 02 Œ 2. 02 #!".Œ.210" 1. 12" 10". 2" 02 #!0" 2 # 1#12.2 " Use Case /.!.2. 0!!3 # 2 02 #! /1Œ.1 2 # 1#12.2 " 10 use cases. actors Œ #.0Œ/! * 0.#2" use cases..œ.!12 * 2".Œ.210" 2 # Œ02 ùœ 201. / #!." 2 # 2 # use case +0). ) /!.. use case 0Œ2 0!" Œ0!!.3 0 00 textual description) 0 use case Use case diagram-/0$0 2 #" $!120" 2" /3!0" 03.! ". 2" 02.* 2 #" 1$10" 20 Œ 1 0" 0)." 2 # 1#12.2 " þù üÿ þ ÿ ÿ ù ü201 1#.." 02" 0 Œ12&2!2. Œ!.3 2 # 1#. #.130." üœ00!.1..!.1 * Œ02 ü2.!0.." +1" 2.212 12 $0. Œ&10& û0#21 1#..+ üù þ 2.212 Œ02 ù ÿ ù-ùüÿ 02" ù!&œ " 02" ü2.!0. û.$0!1.!.1 * Œ02!.1)" "!.2 /)21" 1
B.2.. 2 / #!. 2& use case /.!.2& K.!1)" 2&!& 2 # 1#12.2 " ü*!01 2& actors. 2& use cases.2.10# 0 *. * /.!.2 " use cases 0!!.3 2& use cases (0.Œ) 00 0 activity diagrams) E*!01 2& 1#1$0210& 02.* 2& use cases üœ*!&1 2 # 2 # 2& use cases #12.2. 12. Use-case /.!.2. üœ$0!1.13.0+ *12. 1. USE CASE 2 1*12. Œ!0. 0.. 1). 0Œ$0!1. $. Use Case /!.. Actors (1) Use Case /!.. Actors (2) Actors.0Œ/! * 0 2 1*12. $!1 Œ +2." 2 1*12. / 0+2." 2 0201 2& use cases 0 2. $!1 Œ *2..Œ) 2 1*12. / Œ.!$ 2." 2 02 #!)22... Œ!..2 Œ *2. use cases 0 actor Œ!Œ0. 0Œ &0 0 2 #$12. use case 1$1 0Œ &." 0..20##)0 actors..œ.!12 *!) #" (roles) Œ!..2 $!120" Œ! *. $ # Œ0!11)20! #".Œ).!) #" 10 0 $! 12 DFWRUV!1 2. 02)" 2&!& 2 # 1#12.2 " actor 0Œ! 1&Œ0.!) )$. 1#0! $!12 2 # 1#12.2 " üœ &0 02 1*12. 12 2.".. 2." *.2...212.1 $!1" use case) 00! Œ 02..Œ). actor actor 0Œ! 1&Œ0.!) )$. 1#0! $!12 2 # 1#12.2 " ò." 0&20!)" $!12" actor) 0.. 1 )$. 12)2#Œ ü." actor Œ!0. $0 Œ *"!) #" Use Case /!.. Actors (3) Use Case /!.. Actors (4) actors 12UML!&20*& actor û0#20!0*& actor!1 Œ 0 2" Œ!&20* #10" 02 #!0" 2 # 1#12.2 " Œ$ 12"!1 Œ 0 /0#20!0* #10" 02 #!0" )Œ&".#2" Œ # «Actor»!2!." ù13.0+ ü0!2)" ùctor.2)" Actor 1#2! * 2 1*12.. Œ$ û2" + ü..#2)" Œ # 00! Œ 0. use case û0.!$ Œ 0. 1#02$0 10. use-case Œ$ 02#Œ&2"!2!.".13.0+ actor 0.. 1. 1$0/02. 1..! + 10& 0 2 120!0)2#Œ actor. H /Œ. 0). 0 2.!&Œ (stickman) $0 2 ). 2 # 0&20! * $!12 (actor).œ) 2& 2
$100#1"02.*actors ò." actor Œ "! 0. actor ù0..)". 0Œ &0 02./. use cases )Œ&" ù þ Œ.Œ! )22. 0Œ2!Œ02. &XVWRPHU 7HOHSKRQH &XVWRPHU 3HUVRQDO 9LVLW &XVWRPHU ü!&210" 2 0*!01 2& actors. $!1 Œ * 2 *!. 02 #!)22. 2 # 1#12.2 " $!0 2. #Œ 12!.Œ) 2 1*12. 12".0!" 2 #".1$ 0". 1#2! *. /.$0! 2. 2 1*12. Œ0!30!0. # * $!002. 2 1*12.. $!1 Œ 0 0 Œ. 1#12.2. $!002..0Œ &0 2 1*12. )" 2 $0 0/.3! 2..Œ 201.2. Œ #. Œ.!0 2 1*12. Use Case /!.. Use cases ü..1*.œ) 0!00" Œ #.2. # 10..Œ 201. $!1 12 0&20!) $!12. use-case 00! Œ 02..Œ). actor! 13!0. $!1.Œ 201. 12 0&20!) $!12 ü.. Œ!" Œ0!!.3ò. ) " 0. /.!01 0)" use-case 10!)20!. /.!.2. 2& use-case use-cases(.2.1210" $!10" Œ.!12 2. 1. 00%0" 12. )!. 2 # 1#12.2 "$ # 1#/10" 0 2 #" actors. */01 " 0Œ &." ùctor name Use-case U name System name Use case Use-case A,,ü Use-case B Use-case B.!/0.Use Case -.!/0. Use Case insert appointment ò.!.20 * Œ!0. 01.$0.. Œ0!11)20! #" 1#02$ 20".Œ). $!12 Œ # $0 0 authorized. Œ " /0 $!002.. 0..".Œ) 2 #" 1#02$ 20" õ 1#02$ 20" Œ!Œ0. 00!& *. 2!.20 *..!.20 * Œ!Œ0. 0. 01.!.2 10 ). 2.. $2 0! ). 2&.212 $& 1#020$)2&!)1010 22!)1010.. *! 22 0 2 22 1#!.3.. ISBN 12 1*12. 3
ü!&2.2..20*!01 2&use cases 0" 02 #!0".Œ.20 $!12".Œ) 2 1*12. 2 $!002.. 0!Œ0 $!12". /.10.Œ 0*10 / #!10 /.!%0 Œ. Œ! 3!. 12 1*12.!002. $!12". 0/ Œ 10 2 1*12.. 0/ Œ 0.Œ).#2) 10 1$1 0 Œ. 0 )2. Œ+" 02.3! 2..#2 10 02 #!)22. 2 # 1#12.2 " Œ!0.0! / #0 2 # $!12.Œ Œ 0 0 0" 02 #!0" 2 # 1#12.2 " ù0"0!&210"œ #/0 0 *.Œ)actors T 01)/ #"0)/ #" $!002. 2 1*12. ùœ) Œ #!$ 2.. Œ * Œ. # 0. 2. *!. Œ!.2. 0 2 Œ.!) 1*12. $0!!.3).#2.2 Œ $10" 02.* 2& USE-CASES (1) $1 0Œ2.1" (extends):. use-case 0Œ0200 Œ. Œ! 12 2." 0ŒŒ 0!00" 12 0 use-case $1 00#1"00/0#1" generalization/specialization): M. use-case! 0 2 1#Œ0!3!. 2 Œ0!!.3 " " use-case $1 01&2&1" includes): M use case 01&.2+0 2 1#Œ0!3! " " $1./ Œ 1" : õ2..".!)" XVH-cases Œ.! #10 Œ.!). 02 #!)22. 1$02 2. 02.* 2 #" 0 Œ 2!)Œ Œ! *. 1#Œ0!3 * 10. UML Œ.2. ò. UML Œ.2./ Œ 0 1$02 12 $0. 02.* 2 #" ù#2 Œ! *...Œ.!.12. *!.3.Œ). 1*..#2 ).. üœ2!œ #. Œ #0 2.2 2 1*12. $10" 02.* use cases (2) «Extends» 1$1 $01 üœ2.1". use case «extends». use case: Œ!+2 Œ0!.0 Œ..Œ) 2 1#Œ0!3! 2" 1" Œ # 0Œ0200 þ XVH FDVH % Œ # 0Œ02002. $!002. 2 02 #!. 2".1" use case A $ H[WHQGVª % $10" 02.* use cases (3) $1 üœ2.1" $10" 02.* use-cases (4) $1 üœ2.1" Configure program 0. 0Œ2.1" H[WHQGª Configure /.+.2. Œ! 1Œ.1" Œ!.3 1#. #.130." ù. /.&2& Œ! 1Œ.1" ù. Œ.!.2!& H[WHQGª ù. Œ.!.2!& >üœ$. Œ.!.2!&@ Configure Œ.!.2! #" 0Œ0200ª extends Œ!.3 1#. #.!".#2 2 #!Œ0..!120 1# #Œ) 2 Œ. 0Œ020 #1. use case 01&.2+02. +. 0 use case Œ! *.!12 * Œ&.Œ). 10. 0Œ2.1" T. ).2. 2& 10& 0Œ2.1" Œ!Œ0.0../ T. ).2. 2& 10& 0Œ2.1" /0 $!002.. 0. 2. ).2. 2& use cases Œ # # 2 0Œ2.1 T. ).2. 2& 10& 0Œ2.1" 0..Œ labels Œ # 03. 2. 12! 2& 0 )2& 2".1" use case 4
$10" 02.* use cases (5) $1 Œ0!.0 «Includes» 1$1 Œ.)20!. uses» 1.1) þ1#œ0!3! 2" ú01&.2+02. 12 ù 01&.2& use case ú0..œ.!.22. 202 #!)22. 2".1" use case ù $10" 02.* use-cases (6) $1 00#1"00/0#1" $1 00#1" 00/0#1".!). 0 2 1$1 00#1".01. 12" 10". þ ù! 0 2 1#Œ0!3! 2" ú. 0Œ2!Œ02.. 2 0Œ0200..2 #Œ0!0 (override). LQFOXGHVª 6LJQLQJ,QVXUDQFH 3ROLF\ LQFOXGHVª þù! 0 2" 1$10" 0Œ &." 2" ú ò21 0. /#.2 20 Œ 1 2& abstract 10& 6LJQLQJ &DU,QVXUDQFH 6LJQLQJ /LIH,QVXUDQFH $ % +00*0 0!.0 üœ0200 Place Order --------------- Extension Points Set priority Track Order LQFOXGHVª H[WHQGVª VHW SULRULW\ LQFOXGHVª Validate User Main Flow of Events for Use Case Track Order: Obtain and verify order number. Include (Validate user). For each part in the order,query its status, then report back to the user Place Rush Order Check Password Retinal Scan üüÿ +üÿ üþ üüÿûÿ üþ Main Flow of Events for Use Case Place Order: Include (Validate user). Collect the user s order items. (set priority). Submit the order for processing. Borrower Librarian Use Case û!...!/0. Make Reservation Remove Reservation Includes Lend item Return of item Library system Remove title Add item Add title Includes Includes Includes Includes Maintenance Remove item Includes Add Includes Borrower Remove or XSGDWH ERUU ZHU Librarian query entry Export entries!12" Delete entry {abstract} Insert entry Change entry DFWRUª Insert entry Update calendar )D[V\VWHP Configure program Notify participants DFWRUª (PDLO V\VWHP Insert appointment Insert to-do entry Administrator Administer entry type Administer users 5
ù3.!02use Case. use case Œ # $!1 Œ 02..Œ) 0". /0 $!1 Œ 02. Œ 2.Œ) ) 2" û./ 2 $!1 Œ *0.Œ. 12" Œ0!!.3"." û0 $0 #Œ)12.1 ) 2"./ Œ 12& use cases 10 Œ.2. 0. use case /.!.2.: Œ * Œ *Œ. UML $.1)".3.!01": Œ.2.!2!.. /1Œ.1 Functional cohesion Actors V\VWHPª üœ0!. &DOOHQGDULXP... 6\VWHP $GPLQLVWUDWLRQ $SSRLQWPHQW 0DQDJHU 0!!3 2." 2" Use-Cases (2. Œ!Œ0. Œ0!.0 Œ0!!.3 0 # ù200)" 12)$ " 2& use-case : 12)$ " Œ # 0Œ2#$0 0 use-case. Œ!Œ0.0. 30! " +" 00! Œ 02. 2 use-case H! 2& #2&.01. 12 #" $!120"actor). 12" use-case : Œ. *.2. 0.1 2..01 2 #". ü..2! 12 use-case :. use-case Œ!0. Œ.! #10 0..2" 02010"..)&" 0 Œ 0" 1#0" 0.!10" &". use-case 200+0 / 2." Œ.Œ 201. 12 actor (0&20!) $!12.!/0. Œ0!!.3" use case: Validate User 10. ù *!. +0 )2& þ use case.!$0 )2. o Œ02" 010 2!2. 2 # 1*12. 2.Œ) 2 Œ02 PIN. Œ02" 010 2 PIN.Œ) 2 Œ2! ). 12 2 " Œ.2 2 #Œ ENTER. To 1*12. 0$0 2 0#!)22. 2 # PIN. E 2 PIN 0. #! 2 1*12. &12 Œ 0 2 01.& 2& 12 $0&. 2 use case 200+0 ü..2 +0 )2& 02" Œ!0. Œ1. 12..#!+10 2 1#.. 0 2 Œ2. 2 # #Œ * CANCEL, 21 use case..!$0 ü..2 +0 )2& 02" Œ!0. Œ1. 12. /.!%0 2 PIN Œ! 2 20) Œ2. 2 # #Œ * ENTER....0. PIN. ü..2 +0 )2& ü Œ02" /+10..1 PIN, use case..!$0 ù.#2) 1#0 2!0" 3!" 1#0$)00" 2 1*12..#!+0 ) 2 1#... 0Œ /0 2 Œ02. 0 1#.. 12. 0Œ)0. /0#20!)0Œ2. 0!!.32&use cases ü..2 0!!.3." use case (1/2). #120 )2 H Œ0!!.3 1$0202. 02 0&20!) actor, )$ 0 2 Œ&" 2. 2. Œ!.2. 1. 12 1*12. 00. 0. 1.3" Œ!0" 1#0Œ". Œ!0..2. 0. 00$0.Œ) 2 Œ02 *020". Œ0!Œ 0" Œ! 210"..Œ 30* 2. õ.1*2 Œ0!!.3 Preconditions: Œ!.Œ.2 *0.. 1&12 0201 Post condition:.212.1 2 # 1#12.2 " 02.Œ) 0Œ2#$ 0201.2.1210" #": ) Œ # $ # 1$1 0 2 Œ0/!1 * Post condition 10.212.1 #" Actors: Œ # 0Œ & * 0 2 use case 6
ü..2 0!!.3." use case (2/2) Trigger:. 1# Œ # Œ!.0 2 use case *! 10! 0Œ2#$.":.Œ.2.. use cases üœ0210"û.3! Œ 10":.Œ 10".Œ) 2 *! 10! 0Œ2#$." ü..2 0!!.3." Use Case -.!/0. õ.. 1*2 Œ0!!.3: Insert appointment «ò.!.20 * Œ!0. 01.$0.. Œ0!11)20! #" 1#02$ 20".Œ). $!12 Œ #$0 0 authorized. Œ " /0 $!002.. 0..".Œ) 2 #" 1#02$ 20" õ 1#02$ 20" Œ!Œ0. 00!& *. 2!.20 *..!.20 * Œ!Œ0.0. 01.!.2 10 ). 2.. $2 0! ). 2&.212 $& 1#020$)2&ª Precondition: $!12" 0. &12)" 12 1*12. Postcondition: ü102..!.20 * ü/ Œ *2. 1#02$ 20" 020. 2!.20 *.2 )2 /0 0Œ20*$0 )& Œ! 2& authorisation 01.& 12 0! ) ü0!+ 2. )0" )%0" 2 #0! #.2.1210" #" $!12" /0 $0 2..2. /.+.2.. 0 1#02$ 2. +120. 010 2!.20 * 12. 0! ) 2 #" ü..2 0!!.3." Use Case -.!/0. Postcondition 10 Œ0!Œ2&1 #":!.20 * /0 Œ!0.01.$0. 0! ). 2& 1#020$)2& /0 2! Œ Œ *2., *20 /.3!02" )%0" 2& 0! &. Actors:!12" Œ!&20*& actor), E-mail-system (/0#20!0*& actor), Fax-system (/0#20!0*& actor). Trigger: - *! 10! 0Œ2#$.": $!12" 2.#2 Œ 02. (2).2.!3 2. 0Œ2!00" 2 #!.20 * (Œ * Œ)20 Œ ) $!12" $0 /.&.. 010 2!.20 *. ) #" 2 #" 1#02$ 20" (4)!.20 * /0 Œ!.0 1#! *10". 0102. ü..2 0!!.3." Use Case -.!/0. õ 1#02$ 20" (02)".Œ) 2 $!12. 0.. 1#02$&) 00!+ 2... 0 2 2!)Œ Œ # $ # 0Œ0 (fax e-mail) («include» notify participants) (6) õ. 2.. $2 0! ). 2& 1#020$)2& 00!+ 2. include» update calendar) üœ0210"û.3! Œ 10" (3 ) $!12" /0 $0 /.&.. 2 #$12. 1#02$ 2. ù.. 2 ù.. 2 )Œ # 0 1#02$ 2." 2 # Œ # 2 0! ) /0 Œ! *10. 2! Œ Œ 0 00!+02..2 Œ!). ü0!+ 2. ).2.0! ).. 2. Œ. /0 #Œ!$0 Œ!). Forward Engineering of use cases Forward Engineering: 0. /./.1. 02.2! Œ" 0)" 2 # 10 +/. 0 12)$ 2 0$) 2 # 0 use case 10. /!.. use case Œ0!!30 2! 2& 0 )2&.1. 0..2" ù#2"! " /0$ # 2..0)0 1#Œ0!3! 2 # 1#12.2 " ù#2).0.00$0. 1$0/.1 use case. Œ0!.0. pre-, post-conditions Œ # Œ! *. $!1 Œ *.!1) 2".!$".212.1" 2 # 0$ #. 2&!2!& 0Œ2#$." 2 # Œ!020..2.10#1020 test case 0 use case 1. 10. use case /!.. 21 +120. 2 µ2!$020 0 3! Œ #.2.10#020. / 1 0.13. 2." 0.#2) 2 2!)Œ )2.#2) / #0*0 21 )Œ&" $!002. Œ! Œ! $&!1020 12.2.10# & /.!.2& Œ # 0.!2+2..Œ).#2),#020 )2 2. use cases Œ0!!3 # ÿ 0 2 2 # 1#12.2 " Œ&" 1#Œ0!3!02.. )$ Œ+" # Œ 02..#2 1#Œ0!3! ñ 2!)Œ Œ0!!.3" 2& Use-cases 0!!.3 1& 2& /.!.2& /!.12! 22& (activity diagrams) : 3.0!+ # 2. #. 2& 0 )2&. 2".Œ 310" Œ #. 2..2 Œ. /!.12!)22.. 0Œ. #10 0!!.3 1& 10.! # :To 10! /0$0. 1#0! Œ0!Œ2&1 12 Œ. 0Œ 2. 0&20! $!120" 10 01. Œ! 1/!1. 12)2#Œ. 10!.Œ 200 ) 1#Œ!&. 2 # use-case. /0 #Œ.12 Œ!&". Œ0!!.3 2 # use-case 7
ü!&210" 2 2 " 2" 20 Œ 1" 2& use cases 2 $0* # 12. üœ0.+1 # )2 /0 $0 Œ.!.30 Œ use case Œ " actor N.../0 # /3!0" 1#1$0210" 02.* 2& actors 02.* 2& use cases (1#1$0210" 00#1" Œ0!.0ª 0Œ0200ª ü!&210" 2 2 " 2" 20 Œ 1" 2& use cases Œ!$0.2 #$12 1*/01 0 actor 0. Œ0!11)20!. use cases? Œ!$ # actors use cases Œ # /0 $ #. 1*/01 0Œ &." ù. 2 Œ0 " $ #0 Œ.!.0%0 2 0. Œ0!22 actors 2. use cases Œ!$ # )220" 02.* Œ & actors Œ #.2Œ! 1&Œ0* # Œ!).. Œ! *1.. Œ0!!.3 * 1..1 1 actor»? Œ!$ # )220" 02.* 2& Œ & use cases Œ # Œ! *..Œ & *.. Œ0!!.3 * 0 1$1 Œ0!.0ª 0 1$1 00#1"00/0#1"" Œ!$ # 0/" Œ0!Œ2+10" 10 use case Œ #. Œ! *1.. Œ0!!.3 * 0 1$1 0Œ0200ª" Œ!$ # Œ 0" 02 #!".Œ.210" Œ # /0 1#Œ0!. 2. 10. use case? ù. / #!0120. 0" use cases.#2" 2".Œ.210" M. 1$0/.1 use case 2. 1$0/020 use cases 12 UML 0!!30 1#0!..2.0!22 1#Œ0!3! 2 # 1#12.2 "! #" 2 # 1#12.2 " 0!!30 2! 2& 0 )2& 0 1.3. 0*Œ2 2!)Œ Œ 0/) Œ! 3!" 0!!302. 0. 0$12 1* 10.!& Œ # Œ0!!3 # 2. 1#Œ0!3!. 0..2" 1#Œ0!3!" 2" use case ò$0 $!1 Œ 10 00Œ2#$. 2" 1$10" 00#1"00/0#1" Œ0!.0ª. 0Œ0200ª û020 ) 2. use cases Œ # 0..Œ.!.22. 2.2.)1 2" 1#Œ0!3!" 2 # 1#12.2 "! #" 2 # 1#12.2 " 02)" 2&!& 2 # û020 ) 2 #" actors Œ # 1$02 2. 0.#2 2. use cases 2. 1$0/020 use cases 12 UML!)Œ 0Œ.0#1" 2&use cases û+120. ). Œ # /0$0 2 1 Œ) 2" use case B20 2. /3!. 12 $0. 0 22 2!)Œ +120. 0.$12 Œ *!." Œ # /.12.#!+ 2.!.+120 2 21 +120!). 1#Œ0!3!" Œ # 1#1$02 2..!1 2. 2. 3#1!1 Œ 0120 $!+.. 10+10". 2!.020 2 Œ! 1 $ 10 1.2 10. 2 # /.!.2 " /0$020 Œ 0/ 1#1$0210& +0. $020 Œ *Œ 0" 1#1$0210" 00#1"00/0#1" Œ0!.0ª 0Œ0200ª 20 20" 10 0$&!12) /!.. üœ.0#1 (Verification) üœ0.+0 )2 2 1*12. $0..Œ2#$0 1&12 üœ*!&1 (Validation) üœ0.+0 )2 2 #Œ).Œ2# 1*12. Œ!0 2".Œ.210" 2 # $!12 8
Walking the use case (2!)Œ " 0$ # 2" 0#!)22."/Œ!)22." 2& use-case) 1#02$ 20" Œ. # 0. 2 #" 0"!) #" Actor *12. ù!.2" Œ #!.2 * 10+10" *2 Œ Œ! 3!." Œ #$0 Œ.!.30 0Œ2!00" Œ. usecases. )!. use cases).!$" 2" UML. 2 # Œ 1 2& use-cases ò. use-case Œ!..2 Œ 02. 1..1#0!.1. 10&..20& collaboration) : /0$0 2 01&20! # Œ 1 12 0ŒŒ0/ 2&.20&. 2& 10&. 2" 02.* 2 #" 1$10" 2 Œ0/ (context) 2" 1#0!.1." collaboration). üœ1" 3.0!+0 2 02.* 2 #".0Œ/!.1. 2 0Œ20# 2" 0Œ#2" 02 #!)22.".0Œ/!.1 LQWHUDFWLRQ 2" 1#0!.1." 2& 10& + FROODERUDWLRQ 0Œ! 1&Œ02. 12 UML.Œ)..!) /.!.2& Œ # /0$ # 2)1 2 Œ0/ )1. 2.0Œ/!.1 02.* 2& 1#12.2+ 10! 0.. 12)2#Œ 2 # use-case 2 # collaboration,œ # Œ0!!30 2" 0Œ0)00" 10" 2" 02 #!0" 2 #. 2 02.* 2 #" 0Œ &. 0! Use case Œ!..2 Œ 0ª Collaboration õ2. 2 10! Œ0!!30 use case, Œ0!!02. ) 12 0&20! 1#Œ0!3! Œ # 0.!.2 Œ! " 2 #" actors õ2. 2 10! 0..12)2#Œ 0)" collaboration, 2)20 Œ0!!30 2 01&20! # Œ 1 2& 1$02+ 10& 2& 02 #!+ 2 #". 2" 0Œ &." 2 #" 0!!.3 2 # use-case 1.O actor Œ.2. #Œ use-case # Œ 0. 0!0. use-case.œ.2 0. #. 12 $!12 # Œ 0 # Œ 0 # Œ 0 1 ù 1 ú 1 + 02 #!. 02 #! 02 #! 02 #! 02 #! 02 #! +. 2 / #!. 0)" use-case, 0#* 2" / #!." 0.2 " 02.3!02. 12 1#0!.1..01. 12" 10" 12" 02.* 2 #" 1#1$0210". 02 #!0" ƒ ƒ ü/2&120!0 2*Œ&.20& ù200.!& :.#2) 2 0/ " 2&.20&!102. 2 12. )!. 2 # 1#12.2 "..0Œ/! 0 2 #" $!120" &.Œ) 2. )!. 2 # 1#12.2 " ù200. 0$ # : 0$ # 2".0Œ/!10".01. 10 /0".20& ƒ ù200. 2)22." : o 2*Œ ".#2 * 2 #.20 # 0Œ! 1&Œ0. 2)22. 12 Œ0! $ 0$ # 2 # 1#12.2 "ü. #!&" Œ.2). /0.!$ Œ 0 ü..2 / ùœ2#" #122& O/ *0.Œ) 2. Use Cases / *0.Œ).!$ / #!. 2& 0)" 2 # 10&. 2& 1#1$0210+ 2 #" 12 $+! 2 # Œ!.2 " #/#.1)" þ/./.1..œ2#" 0. üùùþ ÿ þ.0œ/!10".œ) ) 2 # 9
Use Cases üÿþþ T. use cases 0. 20$ 2 Œ0!!.3 2& 02 #!+.Œ.210& 2 # 1#12.2 "./.!.2. use cases Œ0!. # actors, uses cases 2" 02.* 2 #" 1#1$0210" 1. 12. )!. 2 # 1#12.2 "Œ # 20 Œ 02. Use Cases üÿþþ actors 00! Œ *. 0Œ & * 0 2.use cases ò. use case 0..10!.Œ) 0!00" Œ # 020 *2.. Œ.!.$0 Œ $0! Œ.12).Œ 201. Œ # $!002. Œ " actor) O actors. 2. use cases 0. 10" / 0!. # 0" Œ0!!.3" actor..œ.!12.!) Œ # $0 Œ. 0&20! 2)22. $!12" #) 1*12. Œ Œ #.0Œ/! 0 2 1*12. ò." actor 1#/02. 0 Œ0!11)20!0" use cases Use Cases üÿþþ. actors. 2. use cases Œ!0. $ # 1#1$0210" 00#1"00/0#1" 1& 2& Œ &! * Œ0!!.3. 1#Œ0!3! ò. 2 Use Case Œ0!.0. Œ0!11)20!. use case /.!.2.. use cases # Œ *2. 0 collaborations, )Œ #. collaboration 0. Œ0!!.3 0)" Œ0/ #..3!" Œ # /0$0 10".200.. 1#1$0210".+". 2 02.* 2 #".0Œ/!.1 Œ! 0 #. Œ.! # 2.Œ.2 *0 02 #!)22. Use Cases üÿþþ.2 2 # Œ 1 "use case, 0. Œ!Œ0. # Œ 02..Œ) 2" 0)/ #" Œ." 1" 10&. 2 02.* 2 #".0Œ/!.1 ò. 10! 0..12)2#Œ " use case " collaboration. Œ0!!30.1#0! Œ2 0201" õ2. 2 10! 0. 12)2#Œ " use case, /0$0 ) 2.0Œ/!.1 02.* 2" use case. 2& 0&20!+ actors õ2. 0. 12)2#Œ 0)" collaboration /0$0 2.0Œ/!.1 02.* 2& 10&.20& Œ # # Œ * 1#0! 1#Œ0!3! 1. 12 1*12. ò. collaboration Œ0!!302. 0/.!.2. /!.12! 22& 1#0!.1."..0Œ/!.1"...# *.!)20!..!/0. - Calendar Manager û.$0!1 0! & Œ + $!12+ 1& 2 # Internet. Visualisation )%0" 10 021.,.., 0/./... 0!1. 1 01.&/0!&1!.20 * 10 Œ./Œ 20 )% highlighting 2& 0!+ 0!.20 * ) 10 021. )%.20 *.Œ. 0Œ...)0.!.20 * /#.2)22.!1 * /.3!02+ 0/+!.20 * (Œ! 1&Œ,. / #0, 0 2.2!) Œ) /.$0!1 12." to-do 2.!.20 * Œ! *.. # 1 0. 12.0!.!/0. (1#$0. üœ &..! 0!&1 )& )1& 1#02$ # 10.!.20 * Œ! *0 0/ Œ 1.2.!.20 * /.$0!1 /.&2& Œ! 1Œ.1" /.$0!1 +!.20 * /#.2)22...21". Œ.!.20 * 1#020$)2&!1)".21& /&.2)& ü.&!.20 *." 1#0!" $! " Œ0!)/ # 12 02#Œ&2, 10. 12) 3*, 10 HTML û3!0" Œ.!02! Œ.! #1.1" Œ #.! 2..Œ) 2 $!12 10
Use Case Diagram - TXHU\ DSSRLQWPHQW &$/(1'$5,80 H[SRUW!12" query entry Export entries Delete entry!12" DSSRLQWPHQWV GHOHWH DSSRLQWPHQW FKDQJH DSSRLQWPHQW Change entry Insert entry Configure program Notify participants Update calendar DFWRUª )D[V\VWHP DFWRUª (PDLO V\VWHP LQVHUW Administrator DSSRLQWPHQW Administer entry type Administer users ú!.3. (1/3) Insert appointment {abstract} Insert entry Insert to-do entry! 20)0 /.1. UML Toolkit by Hans-Erik Eriksson and Magnus Penker, Wiley Computer Publishing UML Distilled: Applying the Standard Object Modeling Language by Martin Fowler, Kendall Scott and Ivar Jacobson, Addison-Wesley Object Technology Series Unified Modeling Language User Guide by Grady Booch, James Rumbaugh and Ivar Jacobson, Addison-Wesley Object Technology Series ú!.3. (2/3) The Unified Modeling Language Reference Manual by James Rumbaugh, Ivar Jacobson and Grady Booch, Addison- Wesley Object Technology Series Visual Modeling With Rational Rose and Uml by Terry Quatrani, Addison-Wesley Object Technology Series, Published 1998 Visual Modeling with Rational Rose 2000 and UML by Terry Quatrani, Addison-Wesley Object Technology Series, Published 1999 Kruchten P., Nov. 95, The 4+1 View Model of Architecture, IEEE Software ú!.3. (3/3) UML Resource Centers http://www.rational.com/uml http://www.sdmagazine.com/uml 11