Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore Use case diagram

Use case diagram

Published by ฐิติวุฒิ โมจนยรรยง, 2021-02-19 03:16:48

Description: สไลด์ กลุ่มที่ 2 Use case diagram
วิดีโอนำเสนอ
https://drive.google.com/drive/folders/1PySOuQFAcNRUBZk_weVX0Jc9IFsP3HZi

Search

Read the Text Version

Use Case Diagram

2 Use Case Diagram Use Case Diagram เปนแผนภาพทีใ่ ชแ สดงใหท ราบวา ระบบทาํ งานหรือมหี นาท่ใี ดบา ง โดยมีสญั ลกั ษณรูปวงรีแทน Use Case และสญั ลกั ษณร ูปคน (Stick Man Icon) แทน Actor สว นการมปี ฏสิ มั พนั ธระหวา ง Use Case และ Actor จะใชเ สน ตรงลาก เช่ือมตอกัน หรือจะใชเสน ตรงมหี วั ลูกศรก็ได

3 ในท่นี เี้ ลอื กใชเ สนตรงไมม หี วั ลกู ศร สว นเสน แบงขอบเขตระหวา ง Actor กับ Use Case จะ ใชเสนกรอบสีเ่ หล่ยี ม เรียกวา “System Boundary” และส่ิงสาคัญสว นสุดทายกค็ อื “ชอื่ ของระบบ (System Name)” ใหแ สดงไวด านบนสดุ ของแผนภาพ

4 1. สัญลักษณค วามสมั พนั ธ

5 Use Case คอื หนาท่ีทร่ี ะบบตองกระทา ใชส ัญลกั ษณรปู วงรี พรอมท้งั เขียนชอ่ื Use Case ซ่งึ ตองใชคาํ กริยาหรอื กริยาวลีก็ได

6 Actor คือ ผเู กี่ยวของกับระบบ ซงึ่ รวมทง้ั Primary Actor และ Stakeholder Actor ที่เปนมนุษย ในท่ีน้ี จะใชสัญลกั ษณรูปคน (Stick Man Icon) พรอ มท้ังเขียนช่อื Actor ไวด านลา งของสัญลักษณด ว ย แตหาก เปน Actor ท่ไี มใ ชมนษุ ย จะใชรปู สี่เหล่ยี มแลว เขยี นคาวา “<<actor>>” ไวดานบน

7 System Boundary เสนแบง ขอบเขตระหวางระบบกับผูกระทาตอระบบ (Use Case กบั Actor) ใชรูปสเี่ หลีย่ มเปน สัญลกั ษณ พรอมท้งั เขียนชอ่ื ระบบไวดา นใน

8 Connection คือ เสนทลี่ ากเชอื่ มตอ ระหวา ง Actor กบั Use Case ท่มี ปี ฏสิ มั พันธกัน ใชเ สน ตรงไมม ีหัวลูกศรเปน สัญลกั ษณของ Connection สวน Connection ที่ใชเ ชื่อมตอ ระหวาง Use Case กบั Use Case กรณีท่ี Use Case น้ันมีความสมั พันธซ ึ่งกนั และกนั จะใชสญั ลกั ษณเ สนตรงมหี ัวลกู ศร พรอมทัง้ เขยี นชือ่ ความสัมพนั ธไวต รง กลางเสนดว ย โดยเขียนไวภายในเคร่อื งหมาย <<...>>

9 Extend Relationship เปน ความสัมพนั ธแ บบขยายหรือเพ่มิ เกดิ ข้ึนใน การวาดเสน Connection เช่อื มระหวาง Use Case ทง้ั สอง กรณที บ่ี าง Use Case ดําเนินกิจกรรมของตนเองไปตามปกติ แตอ าจจะ ใหเรม่ิ ตน ลากเสนตรงจาก Extending Use Case หนั ลูกศรชี้ มีเงื่อนไขหรอื สิ่งกระตนุ บางอยา งที่สงผลใหก ิจกรรมตามปกติของ Use ไปที่ Base Use Case Case น้นั ถูกรบกวนจนเบีย่ งเบนไป โดยเรียก Use Case ทถ่ี กู รบกวน หรอื Use Case ทีด่ าํ เนินงานตามปกตวิ า “Base Use Case” และเรียก Use Case ท่ีทําหนาท่ีรบกวนหรือกระตุน Base Use Case วา “Extending Use Case”

10 สังเกตที่ Use Case “Register Course” ซ่ึงเปน Base Use Case คือ ทาหนา ที่รับลงทะเบยี นตามปกติ แตเมือ่ มีเงอ่ื นไขหรือมีเหตกุ ารณพเิ ศษเกดิ ขน้ึ คือ “นกั ศึกษาบางคนอาจมีการลงทะเบียนเรยี นซา เพื่อปรบั เกรดดว ย (Regrade)” จงึ ไดเ พิม่ Extending Use Case เพอื่ มารองรับหนาท่ีพเิ ศษดังกลาว นัน่ คอื “Register Regrade”

11 Include Relationship ความสัมพันธอีกรูปแบบหน่ึงของ Use Case Diagram ก็คอื ความสมั พันธแบบเรียกใชเกดิ ขน้ึ ในกรณที ี่ Use Case หน่ึงไปเรยี กหรือดงึ กจิ กรรมของอีก Use Case หนึง่ มาใชเพื่อใหกิจกรรมนนั้ เกดิ ขน้ึ จรงิ ใน Use Case ของตนเอง โดย Use Case ทีท่ าหนาทด่ี งึ กิจกรรมมาจาก Use Case อ่นื ๆ เรียกวา “Base Use Case” ในขณะที่ Use Case ทถี่ กู เรียก หรอื ถกู ดงึ กจิ กรรมมาใช เรยี กวา“Included Use Case” สามารถเขยี นเสน Connection ไดใ นทิศทางตรงกันขา มกบั Extend Relationship โดยเร่มิ ตน ลากเสน ตรงจาก Base Use Case หนั ลกู ศรช้ีไปท่ี Included Use Case แลวเขยี นชือ่ Relationship “<<uses>>” (บางตาราจะใชคําวา <<include>>) ไวต รงกลางเสน ดวย

12 ความสมั พนั ธร ะหวาง Use Case แบบ Include เปนการสนับสนุนหลกั การนากลับมาใชใหมข อง Use Case (Use Case Reusability) กลาวคือ Use Case หนง่ึ สามารถถูก Include ไดโดย Base Use Case หลายๆ ตวั และสามารถถกู Include ไดม าก กวา หนึ่งครั้งดวย

13 Generalization หรอื Specialization ทเ่ี กิดขนึ้ ระหวาง Use Case มคี ณุ สมบัติแตกตา งจาก Generalization/ Specialization ท่ีเกดิ ขึ้นระหวา งคลาสคอื ความสมั พันธลกั ษณะดงั กลาวทเี่ กดิ ขนึ้ ใน Use Case น้จี ะไมมีการถา ยทอด คุณลักษณะ (ไมม กี าร Inherit) แตจ ะใชเพ่อื แสดงความสมั พนั ธแบบจาแนกแยกแยะประเภทของ Use Case เทา นน้ั Use Case หลักในการจาํ แนกประเภทจะเรยี กวา “Parent Use Case” สว น Use Case ทถี่ ูกจาํ แนกแยกแยะออกมา จะเรยี ก วา “Child Use Case” สวนสัญลกั ษณเ ชื่อมความสัมพันธ ใหใ ชเ สนตรงลูกศรโปรง ลากจาก Child Use Case ใหลูกศรชี้ไปที่ Parent Use Case

14 ตามท่กี ลา วไปแลววา เราจะใช Generalization / Specialization ในกรณที ี่ ตองการแสดงความสัมพนั ธใ นเชงิ การจาแนกแยกแยะประเภทของ Use Case

15 นอกจากเราจะใชค วามสมั พนั ธแ บบ Generalization / Specialization กับ Use Case แลว เรายงั สามารถ ใชค วามสัมพนั ธลักษณะนก้ี ับ Actor ไดเชนเดยี วกนั ตวั อยา งเชน เราสามารถใช UML อธิบายขอ เท็จจรงิ “คนคมุ งาน (Worker Supervisor) จดั เปน คนงาน ประเภทพิเศษทีม่ ีหนา ทีพ่ เิ ศษกวา คนงาน (Worker) ทัว่ ไป” ได

16 2. การสรา ง Use Case Diagram

17 การสราง Use Case 1. คนหา Actor 4. ตอ งไมม ี Actor ใดเลยทไ่ี มม ีปฏสิ มั พนั Diagram ดว ยการวเิ คราะหห า ธกบั Use Case ขอบเขตของระบบ (Problem 2. คนหา Use Case ท่มี ปี ฏสิ ัมพนั Domain) ซึง่ ประกอบไปดว ย ธก ับ Actor นน้ั โดยตรง 5. ตองไมมี Use Case ใดเลยท่ไี มมี ปฏิสมั พนั ธก บั Actor 3. คนหาและสรางความสัมพันธ ระหวาง Use Case หรอื Actor 6. Use Case ทกุ ตัวตอ งมปี ฏิสมั พนั ธอยาง ใดอยางหน่งึ กับ Actor หรอื Use Case ตวั อืน่ ๆเสมอ 7. เขียนคําอธิบายแตละ Use Case จน ครบถวน

18 3. ขอ แนะนาํ ในการสราง Use Case Diagram

19 ปญหาสําคัญที่เกิดข้ึนในระหวางการสราง Use Case Diagram กค็ อื การที่นักวเิ คราะหร ะบบหรือทมี งานที่รบั ผดิ ชอบไมสามารถ ระบุไดชัดเจนวาจะตอ งแสดง Use Case ใหละเอียดมากนอยเพียงใด จะตอ งแสดง Use Case ใดบา ง ไมแสดง Use Case ใด บา ง หรอื ตอ งแสดง Use Case ทง้ั หมดทเี่ ปนหนา ทท่ี ี่ระบบตอ งกระทา ทาใหบ างครัง้ ตอ งเสียเวลา ดงั นั้น ในท่ีนีจ้ งึ มขี อแนะนา บางประการท่จี ะทาใหข ั้นตอนการสราง Use Case Diagram เปน ขัน้ ตอนทไี่ มต อ งใชเ วลามากจนเกนิ ไป

20 1. Use Case Diagram ใชเพ่อื แสดงใหเหน็ 2. Use Case Diagram อาจมคี วามละเอยี ดมากหรือ ถงึ ขอ มลู ความตอ งการของผใู ชระบบเทา น้นั นอยกไ็ ด ขึ้นอยกู ับมมุ มอง เทคนิค และประสบการณ เนอื่ งจากหาก Use Case Diagram ทไ่ี ดใ น ของทมี งานหรือนักวิเคราะหร ะบบ จงึ ไมม ขี อ สรุปใด รอบแรกยังไมส ามารถครอบคลมุ ความ ระบไุ ดว า Use Case Diagram ลกั ษณะใดถกู ตอง ตองการของผูใช กส็ ามารถนามาปรับปรุง หรอื ลกั ษณะใดไมถ ูกตอง แกไขเพม่ิ เตมิ ไดจ นกวา จะครบถว น

21 3. ใหตระหนกั อยเู สมอวา Use Case 4. Use Case Diagram โดยสว นใหญจะไม Diagram นน้ั ใชเพ่อื การสือ่ สารระหวา งนัก แสดงใหเห็นถงึ การทางานในระดบั การ วิเคราะหระบบกับผูใช ไมไดใ ชสือ่ สาร จดั การขอ มลู ในฐานขอมลู เน่ืองจาก ระหวา งนักวิเคราะหระบบกบั โปรแกรมเมอร โปรแกรมของระบบงานทุกระบบจะตอ ง ดังนั้น Use Case Diagram จงึ ควรทาใหผ ูใ ช มีหนา ท่ีในสว นของการจัดการขอ มลู เปน เหน็ ภาพรวมของระบบในเชิงกวางมากกวา หนาที่พืน้ ฐานอยูแลว ไมจ าเปน ตองนาํ มา เชงิ ลึก แสดงใหเหน็ ใน Use Case Diagram กไ็ ด

22 5. จากขอ 3 สิ่งที่ควรนามาแสดงใน 6. จากขอ 4 คําวา “หนาทห่ี ลกั Use Case Diagram ก็คือ หนา ที่ หรอื หนา ท่ที ่ีเปน จดุ เดน ของระบบ” หลกั ๆ หรือหนาที่ทเี่ ปนจุดเดนของ ในทีน่ หี้ มายถึง หนาท่ีท่ีระบบจะ ระบบที่ผูใ ชงานตองการใหระบบ ตอ งกระทํา (System Operate) กระทาไดอ ยางแทจริงเทา นั้น ตามความตองการของผูใช ไมใ ช หนาทีท่ ีผ่ ูใชจ ะตองกระทํา (Human Operate) อนั เนื่องจากการทาํ งาน ของระบบ

23 4. การเขียนคาํ อธบิ าย Use Case

24 การวเิ คราะหระบบแบบเดิมท่ีจะตองมกี ารเขียนคําอธิบาย Context Diagram เพอ่ื ใหทราบรายละเอยี ดปลีกยอ ยของแตล ะ ระบบยอ ยดว ย สาหรบั ในแตล ะ Use Case ตามทก่ี ลาวไปแลววาประกอบไปดว ยการกระทาหลายๆ อยา งตอเนอื่ งกนั เปนลา ดับขน้ั ตอน ดงั น้ันการแสดงแผนภาพแทนความคดิ จําเปน ตอ งมกี ารเขียนอธบิ ายรายละเอยี ดควบคกู ันไปดว ย เรียก Use Case ดงั กลา ววา “กระแสของเหตุการณ (Flow of Event)”

25 การเขียนคําอธบิ าย Use Case หรือ Flow of Event นน้ั ปจจุบนั มีรูปแบบแตกตางกนั ออกไป แตในที่น้จี ะเขียนคาอธบิ ายโดยมสี วนประกอบ 2 สว นสาํ คญั ไดแก Main Flow และ Exceptional Flow 1. Main Flow คือ ลําดับกจิ กรรม เม่ือ Use Case ดาเนนิ กจิ กรรมตามปกติ และ Main Flow จะตอ งมเี พยี งหน่ึงเดยี วเทา นั้น 2. Exceptional Flow คอื ลําดับกิจกรรม เมือ่ Use Case ดาเนินกิจกรรมผดิ จากปกติ โดยสามารถมมี ากกวา 1 Flow ได ทง้ั Main Flow และ Exceptional Flow จะตองระบุถึงสาเหตุของการเรม่ิ ตน และสนิ้ สุดกิจกรรมดวยเสมอ

26 Use Case Diagram ทีส่ รา งเสรจ็ เรยี บรอยแลว เราสามารถทราบไดวาระบบ ลงทะเบยี นจะตอ งมีหนาที่หลกั ๆ อยู 3 หนาท่ี ไดแก ลงทะเบยี นเรยี น ตรวจ สอบรายวิชา และบันทึกการชาระเงินคาลงทะเบยี น โดยผทู ่ีมหี นา ท่ีลง ทะเบยี นกค็ อื “นักศึกษา” สว นผูทีม่ หี นา ท่ีรบั ลงทะเบยี นก็คอื “เจา หนาท่ี ฝา ยทะเบียน” และผูทมี่ หี นาทบ่ี ันทึกการชาระเงินคาลงทะเบยี น กค็ อื “เจาหนาท่ีฝายการเงนิ ” ซง่ึ ตา งกเ็ ปนพนกั งานของมหาวิทยาลยั เชนเดียวกนั


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook