(USE CASE MODELING) Use Case /.!.2. 2)$ 2 #use case modeling.

Similar documents
LESSON PLAN SUB NAME : OBJECT ORIENTED ANALYSIS AND DESIGN UNIT SYLLABUS

Object-Oriented Software Development Goal and Scope

Information Systems Development Methodologies

1 Introduction. 1.1 Introduction

Software Engineering

Introduction to Information Systems (IS)

Introduction to Software Engineering. 5. Modeling Objects and Classes

System Structure Modeling

Modeling Requirements

The Dynamic Model. An Introduction to UML. Enterprise Architect. by Geoffrey Sparks. All material (c) Geoffrey Sparks

Software Development. Modular Design and Algorithm Analysis

Index. brief description section (Use Case Specification documents), 138 Browser window (Rational Rose), 257 Business Rules document, 212

The Unified Modeling Language User Guide

SpeechViewer vs Snack: û*

System Architecture Design

Engineering Design w/embedded Systems

Index. 6356indx.qxd_SR 7/18/06 03:27 PM Page 283

UML Modeling I. Instructor: Yongjie Zheng September 3, CS 490MT/5555 Software Methods and Tools

How and Why to Use the Unified Modeling Language. among software components, architectural-based

Object-Oriented Analysis and Design

User-Interface Design

DOWNLOAD OR READ : THE UNIFIED MODELING LANGUAGE UML98 BEYOND THE NOTATION BEYOND THE NOTATION FIRST INTERNATIONAL PDF EBOOK EPUB MOBI

Research Review on Basic Principles of Unified Modelling Language

The Unified Modeling Language (UML)

Software Design And Modeling BE 2015 (w. e. f Academic Year )

Unified Modelling Language User Guide READ ONLINE

MSc programme (induction week) Department of Informatics INTRODUCTION TO UML

: A FRAMEWORK FOR ARCHITECTURAL SPECIFICATION OF DISTRIBUTED SYSTEMS

üœ00!.1..2 ". ù #12 ú.2.

CSE 308. UML Overview Use Case Diagrams. Reference. Class diagrams. Session 6 UML Intro/Use cases. Robert Kelly, B. Bruegge,

UML part I. UML part I 1/41

Lecture 33 April 4, Unied Modelling Language. ECE155: Engineering Design with Embedded Systems Winter Patrick Lam version 1

Design and Implementation of Bibliography Registration System

Proposal of a Supporting Method for Diagrams Generation with the Transformation Rules in UML

UML Modeling. Sumantra Sarkar. 29 th June CIS 8090 Managing Enterprise Architecture

The Unified Modeling Language User Guide (2nd Edition) By James Rumbaugh, Grady Booch READ ONLINE

SOFTWARE DESIGN COSC 4353 / Dr. Raj Singh

Software Engineering

Introduction for using UML

CSE 308. UML Overview Use Case Diagrams. Reference. en.wikipedia.org/wiki/class_diagram. Robert Kelly, B. Bruegge,

Importance of Rational ROSE in Software Development Process Models

Software Service Engineering

1 Reference Material for these slides is taken from many UML reference books. However, the two I most often used are: UML Explained, by Kendall Scott,

BCS Higher Education Qualifications. Diploma in IT. Object Oriented Programming Syllabus

Session 8: UML The Unified Modeling (or the Unstructured Muddling) language?

Introduction to Software Engineering. 5. Modeling Objects and Classes

INTRODUCTION TO UNIFIED MODELING MODEL (UML) & DFD. Slides by: Shree Jaswal

III. CLAIMS ADMINISTRATION

CISC 322 Software Architecture

EECE 310: Software Engineering

.0" ...3!0" ! Œ. 1#&"..*02. 0Œ# " 2" 10. Œ Œ) 2 Œ!)! )" #Œ 0" 2! 1. Œ " )0 1 )! 12 $0& Œ #

Chapter 2, lecture 1, Modeling with UML

DOWNLOAD OR READ : UML AND C A PRACTICAL GUIDE TO OBJECT ORIENTED DEVELOPMENT PDF EBOOK EPUB MOBI

Rational Software White paper

SyncFree SyncFree: The Development of an Open Source Personal Data Synchronization Software

THE MODELING OF E-SUPERVISED (E-SUV) FOR DISTANCE LEARNING CENTRE

UML MODEL FOR MIS OF BRIDGE BASED ON B/S ARCHITECTURE

Applying UML 2.0 to Design a Botanical Document Warehouse

Systems Analysis & Design

Unified Modeling Language (UML)

Requirements Modeling

Unified Modeling Language - UML

Génie Logiciel Avancé - Advanced Software Engineering A Brief Revision of UML

Accelerating J2EE Development with Rational XDE

Extension to UML Using Stereotypes

New Features of UML2.0 UML2 UML2.0. Koichiro Ochimizu, JAIST UML Structured Classifier. Design View (Internal structure diagram)

L02.1 Introduction... 2

i219 Software Design Methodology 1. Overview of software design methodology Kazuhiro Ogata (JAIST) Outline of lecture

Functional Requirements and Use Cases

UML Diagrams & And Some Of Their Elements

UML Primer. -Elango Sundaram

CIS 771: Software Specifications

Dr.S.S.Riaz Ahamed Principal, Sathak Institute of Technology, Ramanathapuram,India.

Lecture #2 on Object-Oriented Modeling

BUILDING BLOCKS. UML & more...

02291: System Integration

Schedule(3/3) March 18th 13:00 Unified Process and Usecase-Driven Approach. (problem definition, use case model)

Personal Conference Manager (PCM)

Designing Component-Based Architectures with Rational Rose RealTime

Lecture 5 C Programming Language

SE203b: OO Design for Software Engineers. Office: TEB349, Ext

Lecture Notes UML UNIT-II. Subject: OOAD Semester: 8TH Course No: CSE-802

TTool Training. I. Introduction to UML

Index. : (colon), 80 <<>> (guillemets), 34, 56

Object-Oriented Modeling with UML: A Study of Developers Perceptions

) $ G}] }O H~U. G yhpgxl. Cong

Teaching Object-Oriented Systems Analysis and Design with UML

Index. Add Diagram > Sequence Diagram command,

Outline of Unified Process

Unified Modeling Language

APPLESHARE PC UPDATE INTERNATIONAL SUPPORT IN APPLESHARE PC

1 OBJECT-ORIENTED ANALYSIS

UML (Unified Modeling Language)

OO Analysis and Design with UML 2 and UP

3.0 Object-Oriented Modeling Using UML

Lab Manual. Object Oriented Analysis And Design. TE(Computer) VI semester

A SYSTEMATIC APPROACH FOR COMPONENT-BASED SOFTWARE DEVELOPMENT

INTERACTION ARCHITECTURAL MODELING. Lecture 9 Interaction Architectureal Modeling

DEPARTMENT OF COMPUTER APPLICATIONS B.C.A. - THIRD YEAR ( REGULATION) FIFTH SEMESTER LESSON PLAN SRM UNIVERSITY

Cartons (PCCs) Management

Transcription:

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