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

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

State Diagram.

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


งานนำเสนอเรื่อง: "State Diagram."— ใบสำเนางานนำเสนอ:

1 State Diagram

2 State และ Transition แสดงกิจกรรมที่เกิดขึ้นใน Object ที่ประกอบกัน คือ สถานะ (State) และการเปลี่ยนสถานะ (Transition)

3 สัญลักษณ์ที่ใช้ State Transition Initial State End State
Condition = เงื่อนไขในการเข้าหรือออกจาก State Action = กิจกรรมที่ทำระหว่างการเปลี่ยน State [Condition]/[Action] Transition Initial State End State

4 ตัวอย่าง /Turn Off /Turn On Want Up/Go Up Desired Floor Want Down/
Idle Move Up Want Up/Go Up Desired Floor reached Want Down/ Go Down Floor >1 /Go Down Floor=1 Floor <>1 & Desired Floor reached Move Down Reach State Diagram แสดงการทำงานของลิฟต์

5 เงื่อนไขของการเข้าและออกจาก State ต่างๆ ใน State Diagram
State Name Entry/Action Do/Action Exit/Action Condition/Action Entry/Action เมื่อเข้ามายัง State นี้ ให้ทำกิจกรรม Action เช่น Entry/Count=0 หมายถึง เมื่อเข้ายัง State ให้ค่า Count=0 Do/Action เมื่อเข้ามายัง State นี้ หากไม่มีเงื่อนไขอื่นใด ให้ทำกิจกรรม Action เช่น Do/Count=Count+1 หมายถึง เมื่อเข้ายัง State นี้ให้เพิ่มค่า Count ทีละ 1 Exit/Action ขณะที่ออกจาก State นี้ ให้ทำกิจกรรม Action เช่น Exit/Show “Good Bye” หมายถึง เมื่อออกจาก State นี้ให้แสดงข้อความ Good Bye Condition/Action ขณะที่อยู่ใน State นี้ เมื่อเกิดเงื่อนไขใดๆ ที่กำหนดโดย Condition ให้ทำกิจกรรม Action เช่น every 2 seconds/phone ring หมายถึง ทุกๆ 2 วินาทีให้เสียงโทรศัพท์ดัง 1 ครั้ง

6 ตัวอย่าง /Turn Off /Turn On Want Up/Go Up Desired Floor reached
Idle entry/floor=1 Move Up Do/floor=floor+1 (floor=max)/Stop /Turn On Want Up/Go Up Desired Floor reached Floor >1 /Go Down Want Down/ Go Down Floor=1 Floor <>1 & Desired Floor reached Move Down Do/floor=floor-1 (floor=1)/Stop Reach entry/Stop State Diagram แสดงการทำงานของลิฟต์

7 หลักการเขียน State Diagram
จาก Class Diagram ให้ดูว่ามี State Diagram กี่ตัวที่ต้องเขียนบ้าง ซึ่งปกติแล้วจะเท่ากับจำนวน Function ของแต่ละ Class รวมกัน แต่อย่างไรก็ตาม ไม่จำเป็นที่จะต้องเขียน State Diagram ของทุก ๆ Function ของ ทุก ๆ Class Diagram ก็ได้ ในบางกรณี Function ที่ไม่ได้มีกิจกรรมที่ซับซ้อนมากมาย ก็ไม่จำเป็นต้องมี State Diagram ก็ได้ ในแต่ละ Class ให้พิจารณาว่า จะมี State อะไรบ้าง (โดยยึดจากหลักการของความเป็นจริง) โดยยังไม่ต้อง คำนึงว่ามี Function อะไรอยู่บ้าง จาก State ที่มีอยู่ ให้เขียน State Diagram ของแต่ละ Function หากพบว่ามี State ใดที่จะต้องเพิ่ม เพื่อทำให้ State Diagram สมบูรณ์ขึ้น ให้เพิ่มเข้าไป ทำข้อ 3 และ 4 จนกว่าจะได้ State Diagram ของ 1 Class ที่สมบูรณ์ ทำข้อ จนครบทุก ๆ Class Diagram

8 ตัวอย่าง จงเขียน State Diagram ของ Class “Computer”
-Power Status #Turn On #Shut down #Read Instruction #Decode #Execute #Store Data เมื่อพิจารณาแล้วพบว่า State ที่ควรจะมีของ Class Computer คือ Off เครื่องเปิด On เครื่องปิด Boot เครื่องกำลังเริ่มทำงาน Readyเครื่องพร้อมทำงาน Reading อ่านคำสั่งจากหน่วยความจำ Sending ส่งคำสั่งที่อ่านไปยัง CPU Decoding ถอดรหัสคำสั่งโดย CPU Executing ประมวลผลคำสั่งโดย CPU Buffering เก็บผลลัพธ์จากการประมวลผลไว้ในหน่วยความจำชั่วคราวเพื่อรอการประมวลผลเสร็จสิ้น Output แสดงผลออกทางอุปกรณ์แสดงผล Storing Data เก็บผลลัพธ์จากการประมวลผลไว้ในหน่วยความจำ

9 เขียน State Diagram ของแต่ละ Function
Turn On (เปิดเครื่อง) Ready do/waiting for instructions Booting Complete Boot do/Loading the Operation System Switch on Computer Off do/shut down the power On Do/turn on the Computer Switch is turned on

10 เขียน State Diagram ของแต่ละ Function
Shut Down (ปิดเครื่อง) Ready do/waiting for instructions Off Shut down the power Switch is turned off

11 เขียน State Diagram ของแต่ละ Function
Read Instruction (อ่านคำสั่งจากหน่วยความจำ) Reading not complete Ready do/waiting for instructions Instruction Coming Reading do/reading instruction From memory Reading Complete Sending Complete Sending Do/sending instruction to CPU Sending not complete

12 เขียน State Diagram ของแต่ละ Function
Decoding not complete Decode (การถอดรหัสคำสั่ง) Ready do/waiting for instructions Decoding do/decode instruction Decoding Complete

13 เขียน State Diagram ของแต่ละ Function
Executing not Complete Execute (การประมวลผล) I/O Instruction Executed Ready do/waiting for instructions Ready do/executing instructions Buffering do/keep output in memory Memory instruction Executed Reading Complete Output Complete Output Do/Outputing the Result

14 เขียน State Diagram ของแต่ละ Function
Storing Data not complete Store Data (การบันทึกผลลัพธ์สู่หน่วยความจำ) Ready do/waiting for instructions Storing Data do/storing data to memory Storing Data Complete

15


ดาวน์โหลด ppt State Diagram.

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


Ads by Google