ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
ได้พิมพ์โดยTrin Ratanarak ได้เปลี่ยน 10 ปีที่แล้ว
1
วิชาวิเคราะห์และออกแบบระบบเชิงวัตถุ Lec09 :: Behavioral Modeling with UML Behavioral Diagrams Interaction Diagrams State Diagrams Activity Diagram Last Updated :: 17/04/ Mr. Nattapong Songneam
2
Lecture Outline Behavioral Diagrams State-Transition Diagram
Activity Diagram
3
UML has 9 kinds of diagrams
Class Diagram Object Diagram Component Diagram Deployment Diagram Use Case Diagram Sequence Diagram Collaboration Diagram StateTransition Diagram Activity Diagram Structural Diagrams Behavioral Diagrams
4
Behavioral Diagrams Behavioral Diagrams เป็นโครงสร้างแบบ dynamic
Sequence Diagram Collaboration Diagram State-transition Diagram Activity Diagram Interaction Diagrams
5
A State-Transition Diagram
Initialization Open entry: Register student exit: Increment count Closed Canceled do: Initialize course do: Finalize course do: Notify registered students Add Student / Set count = 0 Add student[ count < 10 ] [ count = 10 ] Cancel
6
An Activity Diagram Show MessageBox “Printing” on Screen
Create postscript file Send postscript file to printer Remove displayer sampler Swimlane Example Ordinary Example
7
State Diagram
8
State diagram แสดงพฤติกรรมของวัตถุใดๆ วัตถุหนึ่งที่สร้างขึ้นจากคลาส
แสดงสถานะ (states) ทั้งหมดที่เป็นไปได้ของวัตถุ แสดงการเปลี่ยนแปลงสถานะของวัตถุ ที่เป็นผลจาก message ที่วัตถุนั้นได้รับ ชื่ออื่นๆ ของ State Diagram ได้แก่ State transition diagram Harel diagram (statecharts)
9
Object states สถานะ (State) = ชุดของค่าที่ บ่งบอกถึง วัตถุ (รวมทั้ง condition และ situation ของวัตถุ) ที่เวลาใดเวลาหนึ่ง สถานะถูกกำหนดโดยค่าของ attribute ในวัตถุ overdrafted Account balance : Float states ok
10
State changes (1) สถานะอาจเปลี่ยนแปลง เมื่อมีเหตุการณ์ (event) เกิดขึ้นกับวัตถุ State transition หมายถึงความสัมพันธ์ที่ระบุการเปลี่ยนแปลงของสถานะ overdrafted withdraw(sum) deposit(sum) ok
11
State changes (2) เหตุการณ์ (Events)
หมายถึง Message หรือ signal ที่วัตถุได้รับ Events อาจจะทำให้สถานะของวัตถุเปลี่ยนแปลง หรือไม่ก็ได้ Self-transition overdrafted ok deposit withdraw
12
State diagram notation (1)
entry / entry-action เมื่อเข้ามายัง State นี้ให้ทำ entry-action do / activity-action หลังจากเข้ามายัง State นี้แล้ว หากไม่มีเงื่อนไขอื่นใดให้ทำ activity-action exit / exit-action ขณะที่จะออกจาก State นี้ ให้ทำ activity-action conditon / condition-action ขณะที่อยู่ภายใน State นี้ ให้ทำ condition-action ตามเงื่อนไขที่กำหนด State name entry / entry-action condition /conditiont-action exit / exit-action do / activity-A event1(a:T)[exp]: action1 state variable(s) eventn(a:T)[exp]: actionn …
13
State diagram notation (2)
State-A State-B Event(arguments) [condition]/action Event หมายถึง เหตุการณ์ที่เกิดขึ้นใน time และ space ก่อให้เกิด (trigger) การเปลี่ยนสถานะ (transition) อาจเป็น signals, calls, ช่วงเวลา หรือ การเปลี่ยนสถานะ Condition Transition อาจเกิดขึ้นเมื่อ condition เป็นจริงเท่านั้น Action หมายถึง กระบวนการที่เกิดขึ้นโดยอย่างรวดเร็ว โดยไม่ถูกขัดจังหวะ
14
State diagram notation (3)
Event(attribute) Initial state State-B Start State End State Start state ไม่มี event triggers อาจมี branch conditions อาจเปลี่ยนสถานะจาก start states End state สิ้นสุด state machine
15
Example : State transitions for an invoice
Unpaid Paid Destroyed Created
16
Example : State transitions for an order
Checking do : check item Dispatching do : initiate delivery Waiting Delivered / get first item Item received [someitems not in stock ] Item received [ all items available] [ All items checked && some items not in stock] [ All items checked && all items availables ] [ not all items checked ] / get next item
17
Transitions to “cancelled”
Dispatching do: initiate delivery Waiting Delivered Item received [ some items not in stock ] Item received [ all items available ] Cancelled Checking do: check item [ not all items checked ] / get next item / get first item [ All items checked && some items not in stock ] [ All items checked && all cancelled
18
State diagram notation (4)
Superstate Event A State-A State-B State-B Event C Event B Composite state: Sequential substates
19
Superstate / Substates
Active [ not all items checked ] / get next item Item received [someitems not in stock ] [ All items checked && some items not in stock] / get first item Checking cancelled Waiting do : check item Cancelled [ All items checked && all items availables ] There are also concurrent substates Item received [ all items available] Delivered Dispatching Delivered do : initiate delivery
20
Exercises ให้สร้าง State diagram สำหรับ an elevator a soccer game
an ATM a mobile phone …
21
Activity Diagram
22
Activity diagram ใช้สำหรับอธิบาย Activities Similar to Petri nets
กระแสการไหลของการทำงาน (workflow) การประมวลผลแบบขนาน (parallel processing) Activities conceptual: task to be done specification/implementation: method of a class Similar to Petri nets
23
Structure of activity diagrams
Synchronization bar: outbound triggers: activities can be carried out in parallel (any order) default: outbound triggers occur when all incoming triggers occurred (i.e. all predecessors finished) Activity diagram shows partial order of activities Concurrent fork Activity Synchronization Bar Activity Activity [synchronization condition] Concurrent join Activity
24
Example of activity diagrams
The Coffee Pot
25
Activity diagram Find coffee Put coffee Add water in filter
to reservoir Put filter in machine Turn on machine
26
Conditions in activity diagrams
Find coffee Sequential branch unguarded transition Put coffee Check water in filter in reservoir [not enough water] Put water in the reservoir Put filter in machine [else] [filter with coffee in machine and reservoir contains water] Turn on machine
27
Structure of activity diagrams
[condition 1] Activity Guard expression Branch Activity [condition 2] Activity Activity Strictly UML: forks joins branch merge No synchronization condition [synchronization condition] Activity
28
Swimlanes Identify responsibilities
Customer Sales Warehouse Request product Identify responsibilities Example: Modeling workflows for business units Process order Pull material Ship order
29
Customer Sales Warehouse Request product Process Order Pull Material
Continue Work Ship Order Recieve Order Bill Customer Pay Bill Close Order
30
o:Order [in progress] o:Order [filled] b:Bill [unpaid] b:Bill [paid]
Warehouse Customer Sales Request product Process Order Pull Material Continue Work o:Order [in progress] Ship Order o:Order [filled] Recieve Order Bill Customer b:Bill [unpaid] Pay Bill b:Bill [paid] Close Order
31
Summary Software Modeling Require and Domain Analysis Model
Design Model Brief Overview of Unified Modeling Language (UML) Use Case Model
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.