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

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

Burapha University, 2002 Object-Oriented Technology Behavioral Modeling with UML Behavioral Modeling State Transition Diagram Week #6 Jarungjit Parnjai.

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


งานนำเสนอเรื่อง: "Burapha University, 2002 Object-Oriented Technology Behavioral Modeling with UML Behavioral Modeling State Transition Diagram Week #6 Jarungjit Parnjai."— ใบสำเนางานนำเสนอ:

1 Burapha University, 2002 Object-Oriented Technology Behavioral Modeling with UML Behavioral Modeling State Transition Diagram Week #6 Jarungjit Parnjai

2 Burapha University, 2002 Object-Oriented Technology Lecture Outline Behavioral Diagrams State-Transition Diagram

3 Burapha University, 2002 Object-Oriented Technology 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 Burapha University, 2002 Object-Oriented Technology Behavioral Diagrams Behavioral Diagrams เป็น โครงสร้างแบบ dynamic 4 diagrams ได้แก่ –Sequence Diagram –Collaboration Diagram –State-transition Diagram –Activity Diagram c Interaction Diagrams

5 Burapha University, 2002 Object-Oriented Technology 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 Burapha University, 2002 Object-Oriented Technology An Activity Diagram Show MessageBox “Printing” on Screen Create postscript file Send postscript file to printer Remove MessageBox displayer sampler Swimlane Example Ordinary Example

7 Burapha University, 2002 Object-Oriented Technology State Diagram

8 Burapha University, 2002 Object-Oriented Technology State diagram แสดงพฤติกรรมของวัตถุใดๆ วัตถุ หนึ่งที่สร้างขึ้นจากคลาส – แสดงสถานะ (states) ทั้งหมดที่เป็นไป ได้ของวัตถุ – แสดงการเปลี่ยนแปลงสถานภาพของ วัตถุ ตั้งแต่เริ่มต้นสถานภาพ จนสิ้นสุด สถานภาพ ชื่ออื่นๆ ของ State Diagram ได้แก่ –State transition diagram –Harel diagram (statecharts)

9 Burapha University, 2002 Object-Oriented Technology State Transition ตัวอย่างการเปลี่ยนแปลงสถานภาพ (State Transition) – เมื่อกดสวิทซ์ไฟ หลอดไฟฟ้าจะเปลี่ยน สถานะจาก “ มืด ” ไปเป็น ” สว่าง ” – เมื่อกดปุ่มวางสายโทรศัพท์ โทรศัพท์จะ เปลี่ยนสถานะจาก “ กำลังโทร ” ไปเป็น “ วางสาย ” – เมื่อถอนเงินเกินยอดบัญชีคงเหลือ สถานะของบัญชี จะเปลี่ยนสถานะจาก “ ปกติ ” ไปเป็น “ เบิกเกินบัญชี ” – เมื่อเวลาผ่านไประยะหนึ่ง เครื่องซักผ้า จะเปลี่ยนสถานะจาก “ ซักน้ำ ” ไปเป็น “ ปั่นแห้ง ”

10 Burapha University, 2002 Object-Oriented Technology Object states สถานะ (State) = ชุดของค่าที่ บ่งบอกถึง วัตถุ ( รวมทั้ง condition และ situation ของวัตถุ ) ที่ เวลาใดเวลาหนึ่ง สถานะถูกกำหนดโดยค่าของ attribute ในวัตถุ overdrafted ok Account balance : Float states

11 Burapha University, 2002 Object-Oriented Technology State changes (1) สถานะอาจเปลี่ยนแปลง – เมื่อมีเหตุการณ์ (event) เกิดขึ้นกับวัตถุ หรือ เมื่อเวลาผ่านไปชั่วระยะหนึ่ง การเปลี่ยนแปลงสถานภาพ (State Transition) – ความสัมพันธ์ที่ระบุการเปลี่ยนแปลงของ สถานะ overdrafted ok deposit(sum) withdraw(sum)

12 Burapha University, 2002 Object-Oriented Technology State changes (2) เหตุการณ์ (Events) – หมายถึง Message หรือ signal ที่วัตถุ ได้รับ Events อาจจะทำ ให้สถานะของวัตถุ เปลี่ยนแปลง หรือไม่ก็ได้ –Self-transition overdrafted ok deposit withdrawdeposit withdraw

13 Burapha University, 2002 Object-Oriented Technology Component of State diagram องค์ประกอบของ State Diagram – จุดเริ่มต้น / จุดสิ้นสุด – สถานะต่างๆ (States) – เส้นแสดงการเปลี่ยนสถานะ (Transition Line) – เหตุการณ์ (Event) และ / หรือ เงื่อนไข (condition) State-A State-B Event หรือ condition

14 Burapha University, 2002 Object-Oriented Technology 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 event 1 (a:T)[exp]: action 1 state variable(s) event n (a:T)[exp]: action n …

15 Burapha University, 2002 Object-Oriented Technology State-AState-B Event(arguments) [condition]/action State diagram notation (2) Event – หมายถึง เหตุการณ์ที่เกิดขึ้นใน time และ space – ก่อให้เกิด (trigger) การเปลี่ยนสถานะ (transition) – อาจเป็น signals, calls, ช่วงเวลา หรือ การเปลี่ยนสถานะ Condition –Transition เกิดขึ้นเมื่อ condition เป็น จริงเท่านั้น Action – หมายถึง กระบวนการที่เกิดขึ้นโดยอย่าง รวดเร็ว โดยไม่ถูกขัดจังหวะ

16 Burapha University, 2002 Object-Oriented Technology State diagram notation (3) Start state – ไม่มี event ใดที่ก่อให้เกิดการเปลี่ยน สถานะสู่ start state – อาจมี branch conditions End state – สิ้นสุด state machine Initial stateState-B Event(attribute) Start StateEnd State

17 Burapha University, 2002 Object-Oriented Technology Example : State transitions for GUI Initializing Working Select Shut Down Turn PC on Shutting Down

18 Burapha University, 2002 Object-Oriented Technology Triggering an Event การกระตุ้นให้เกิดการเปลี่ยนแปลง สถานภาพ (Triggering an Event) และ การเปลี่ยนแปลงสถานภาพ โดยไม่มี เหตุการณ์เข้าไปกระตุ้น (Triggerless Event) InitializingWorking Select Shut Down Turn PC On do : startup Shutting Down

19 Burapha University, 2002 Object-Oriented Technology Guard Condition การเปลี่ยนแปลงสถานภาพด้วยเงื่อนไขทาง ตรรกะ ทำได้โดยอาศัย Guard Condition Guard Condition หมายถึง ลักษณะการ กำหนดเงื่อนไขทางตรรกะบางอย่าง เช่น อาจใช้ระยะเวลาเป็นตัวกำหนด เป็นต้น Initializing Working Select Shut Down Turn PC On do : startup Shutting Down [is time out] Keypressed or mouse movement Screen Saving

20 Burapha University, 2002 Object-Oriented Technology 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] Delivered [ All items checked && some items not in stock] [ All items checked && all items availables ] [ not all items checked ] / get next item

21 Burapha University, 2002 Object-Oriented Technology 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] Delivered [ All items checked && some items not in stock] [ All items checked && all items availables ] [ not all items checked ] / get next item

22 Burapha University, 2002 Object-Oriented Technology Transitions to “cancelled” Dispatching do: initiate delivery Waiting Delivered Item received [ some items not in stock ] Item received [ all items available ] Delivered 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 items available ] cancelled

23 Burapha University, 2002 Object-Oriented Technology SubState สถานะการทำงานย่อย (SubState) แบ่งเป็น 2 ประเภท คือ –Sequential เป็นการเปลี่ยนสถานะการ ทำงานอย่างเป็นลำดับ จากสถานะหนึ่ง ไปสู่อีกสถานะหนึ่ง –Concurrent มีหลาย ๆ สถานะที่มีการ เปลี่ยนแปลงพร้อมๆ กัน

24 Burapha University, 2002 Object-Oriented Technology Sequential SubState – เป็นการเปลี่ยนสถานะการทำงานอย่าง เป็นลำดับ จากสถานะหนึ่ง ไปสู่อีก สถานะหนึ่ง Awaiting User Input Registering User Input Input Visualizing User Input Working

25 Burapha University, 2002 Object-Oriented Technology Concurrent SubState – มีหลาย ๆ สถานะที่มีการเปลี่ยนแปลง พร้อมๆ กัน Awaiting User Input Registering User Input Input Visualizing User Input Working Watch System Clock Update display [is interval out]

26 Burapha University, 2002 Object-Oriented Technology State diagram notation (4) Superstate State-AState-B Event A Event B Event C Composite state: ประกอบด้วย Sequential substates

27 Burapha University, 2002 Object-Oriented Technology Superstate / Substates Delivered Cancelled Active cancelled Checking do : check item Dispatching do : initiate delivery Waiting / get first item Item received [someitems not in stock ] Item received [ all items available] Delivered [ All items checked && some items not in stock] [ All items checked && all items availables ] [ not all items checked ] / get next item

28 Burapha University, 2002 Object-Oriented Technology Example: Payment authorization in class Order Authorizing do: check payment Authorized Delivered Rejected [ payment ok ] [ payment not ok ] 2 parallel processes: - authorization - order handling

29 Burapha University, 2002 Object-Oriented Technology Concurrent state diagram for the class Order Checking Waiting Dispatching Authorizing Authorized Cancelled Delivered Rejected

30 Burapha University, 2002 Object-Oriented Technology State diagram notation (5) Superstate State-AState-BState-AState-B Event A Event B Event C H History state เป็นตัวบอกว่าเมื่อมีการเปลี่ยนกลับมาสถานะเดิม จะให้กลับมาที่จุดใด เริ่มต้นด้วย substate หลังสุดที่ทำงานก่อนที่จะออกจาก composite state

31 Burapha University, 2002 Object-Oriented Technology Awaiting User Input Registering User Input Input Visualizing User Input Working Initializing Turn PC On Shutting Down [is time out] Keypressed or mouse movement Screen Saving H Select Shut Down

32 Burapha University, 2002 Object-Oriented Technology Exercises ให้สร้าง State diagram สำหรับ –an elevator –a soccer game –an ATM –a mobile phone –…

33 Burapha University, 2002 Object-Oriented Technology Summary Behavioral Diagrams State-Transition Diagram


ดาวน์โหลด ppt Burapha University, 2002 Object-Oriented Technology Behavioral Modeling with UML Behavioral Modeling State Transition Diagram Week #6 Jarungjit Parnjai.

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


Ads by Google