9 UC Design
1 9 UC Design
IBM Software Group Mastering object-Oriented Analysis and Design With UML Module 9: Use-Case Design Rational software
2
Class Design in Context [Early Elaboration [Inception Iteration Iteraton(Optional) Define a Candidate Perform Architecture Architectural Analyze Behavor Refine the (Optional) Arch tecture 大 Class Desian Define Design the Databas H
3
E bonn arabo 架构分析 ⑧ E Defne a candidate Partum Arcteetra 用例分析 Anay 识别设计元素 Anaya BehaVor 运行时架构 Rore ne Archtecture 描述分布 Degn物e 数据库设计 用例设计 子系统设计 类设计 M 且
4
Project Use Case Mo del Supplementary Guidelines Caps ule Specification D esign Caps ule Des igner Use case Modg Realizations Capsule Proto col esian ase Class Des ign Desi Interface Review Designe the d es ign Te chic al Reviewe Tes tability Subsystem ments Des ign Design Subsyst Pro ject Revew Test Interface Specific Guidelines pecif icat io Test Interface Testability Design specification Class Package Interface Define Testa bili Design Elements Test Model Desig Use Case
5
Use-Case Design Steps Describe interaction among design objects Simplify sequence diagrams using subsystems Describe persistence-related 0 behavior Refine the flow of events description ◆ Unify classes and subsystems← H
6
Use-Case Design Steps ★◆ Describe interaction among design objects Simplify sequence diagrams using subsystems Describe persistence-related behavior Refine the flow of events description Unify classes and subsystems H
7
Representing Subsystems on a Sequence Diagram ◆| interfaces Represent any model element that realizes the interface No message should be drawn from the interface ◆ Subsystem Component Represents a specific subsystem Messages can be drawn from the subsystem Obiect A Interface Object B ObjectA Subsystem Object B Component 1: Message 1 Message 1 2:Me、sa,e2 2: Message 2 Invalid message Valid message E写喜
8 Representing Subsystems on a Sequence Diagram Interfaces Represent any model element that realizes the interface No message should be drawn from the interface Subsystem Component Represents a specific subsystem Messages can be drawn from the subsystem Object A Interface Object B 1: Message 1 2: Message 2 Object A Subsystem Component Object B 1: Message 1 2: Message 2 X Invalid message Valid message
EXample: Incorporating Subsystem Interfaces Analysis Classes Design Elements > > Billing System Billing System /submit billo I System submit Bill(for Tuition: Double, for Student: Student) > Course Catalog System > Course Catalog system get course offerings lCourse Catalog System get CourseOfferings(for Semester: Semester, for Student: Student): Course OfferingList All other analysis classes are mapped directly to design classes
9 All other analysis classes are mapped directly to design classes. Analysis Classes Design Elements Example: Incorporating Subsystem Interfaces BillingSystem //submit bill() > Billing System > IBillingSystem submitBill(forTuition : Double, forStudent : Student) CourseCatalogSystem //get course offerings() > ICourseCatalogSystem getCourseOfferings(forSemester : Semester, forStudent : Student) : CourseOfferingList initialize() Course Catalog System >
EXample: Incorporating Subsystems Before Analysis class to be replaced RegisterForCoursesForm: Registration Controller: Course Catalog System: Schedule Student Student 1.∥ create schedule 1.1.get course offerings() Student wishes to create a new 1.1.1.get course offerings(forSemester) schedule 1. 2. / display course offerings() A list of the available course offerings for this semester are displayed a blank schedule 1.3. /I display blank schedule() is displayed for the students to select oFFerings Select Offerings Submit Schedule
10 Example: Incorporating Subsystems (Before) Analysis class to be replaced : Student : RegisterForCoursesForm : RegistrationController : CourseCatalogSystem : Schedule : Student Student wishes to create a new schedule 1. // create schedule( ) 1.2. // display course offerings( ) 1.1. // get course offerings( ) 1.1.1. // get course offerings(forSemester) 1.3. // display blank schedule( ) A blank schedule is displayed for the students to select offerings A list of the available course offerings for this semester are displayed Select Offerings Submit Schedule ref ref