Page 42 - การวิเคราะห์และออกแบบระบบเชิงวัตถุ
P. 42
6-30 การวเิ คราะห์และออกแบบระบบเชิงวัตถุ
ความสมั พนั ธแ์ บบรวมเปน็ การแยกฟงั กช์ นั การทำ� งานออกมาเพอื่ ทจี่ ะใหย้ สู เคสอน่ื ๆ สามารถเรยี ก
ใช้ได้และสามารถสงั เกตได้เลยวา่ เม่ือยูสเคสนไ้ี ด้ถูกแยกออกมาแลว้ นัน้ จะมกี ารเรยี กใช้ หรอื มียูสเคสอ่ืนๆ
ท�ำการเรียกใช้บ่อยๆ คือ มีการ <<include>> อยู่ในหลายๆ ยูสเคสนั่นเอง แต่อย่างไรก็ตามการสร้าง
ยูสเคสน้ันข้ึนอยู่กับการออกแบบระบบ ซึ่งนักวิเคราะห์แต่ละคนสามารถออกแบบระบบได้แตกต่างกัน
ข้ึนกับลักษณะความต้องการขององค์กรด้วยสามารถสรุปได้ว่า การสร้างความสัมพันธ์แบบพึ่งพาออกมา
เป็นอกี ยสู เคสหนง่ึ ก็ตอ่ เมื่อ
- ยสู เคสนัน้ เป็นเหตุการณ์หรอื กจิ กรรมท่ีเกิดขน้ึ อยู่ในหลายๆ ยสู เคส จงึ แยกออกมาเปน็
sub Use case เพ่อื ลดปัญหาความซ้�ำซ้อน
- ยูสเคสท่ีมีข้ันตอนการท�ำงานท่ีซับซ้อนและมีขั้นตอนในการท�ำงานท่ีมากหลายขั้นตอน
เพ่อื การง่ายตอ่ การทำ� ความเข้าใจ
2.3 ความสัมพันธ์ระหว่างยูสเคสแบบขยาย (Extend relationship) เป็นยูสเคสในอีกลักษณะ
หนึ่งคือมีการด�ำเนินกิจกรรมของตนเองบางอย่างตามปกติ แต่อาจมีส่ิงกระตุ้นท�ำแล้วเกิดการท�ำงานที่
แตกต่างกันออกไป จึงกลายเป็นยูสเคสท่ีมีความสัมพันธ์แบบการขยาย (extend) กล่าวคือเป็นการน�ำ
ยสู เคสเดมิ ทมี่ อี ยแู่ ลว้ มาเพม่ิ เตมิ การกระทำ� หรอื เพม่ิ เพอื่ ใหเ้ กดิ มกี ารทำ� งานบางอยา่ งทเ่ี ฉพาะเจาะจงมาก
ยิง่ ขน้ึ ดงั แสดงในภาพท่ี 6.19 ยูสเคสพ้นื ฐาน Base Use case ท่ีมคี วามสมั พันธ์แบบขยายกับ Extend
Use case
Base Use case extend
<<extend>>
Extend Use case
ภาพท่ี 6.19 ยูสเคส มีความสัมพันธ์แบบขยาย
ตัวอย่างที่ 6.7 การสร้างความสัมพันธ์ของยูสเคสแบบขยาย ยสู เคสกลบั รถ (Turn) เพอื่ ทำ� การ
เลี้ยวรถหรือกลับรถ โดยที่สามารถแยกยูสเคสเป็นกลับรถทางซ้าย (Turn-left) และกลับรถทางขวา
(Turn-right) ท่ีมีความสัมพันธ์แบบสืบทอดในลักษณะเพ่ือเพ่ิมเติมพฤติกรรมของการบังคับพวงมาลัย
เพอื่ ใหร้ ถไปยงั ทศิ ทางซา้ ยและขวาตามทต่ี อ้ งการ ดงั นนั้ หวั ลกู ศรจะชไ้ี ปยงั ยสู เคสพนื้ ฐาน (base Use case)
คอื ยูสเคสกลับรถดังแสดงในภาพท่ี 6.20