งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

วิชาวิเคราะห์และออกแบบระบบเชิงวัตถุ Lec09 :: Behavioral Modeling with UML Behavioral Diagrams Interaction Diagrams State Diagrams Activity Diagram Last.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "วิชาวิเคราะห์และออกแบบระบบเชิงวัตถุ Lec09 :: Behavioral Modeling with UML Behavioral Diagrams Interaction Diagrams State Diagrams Activity Diagram Last."— ใบสำเนางานนำเสนอ:

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


ดาวน์โหลด ppt วิชาวิเคราะห์และออกแบบระบบเชิงวัตถุ Lec09 :: Behavioral Modeling with UML Behavioral Diagrams Interaction Diagrams State Diagrams Activity Diagram Last.

งานนำเสนอที่คล้ายกัน


Ads by Google