Page 52 - วิศวกรรมซอฟต์แวร์
P. 52
7-42 วิศวกรรมซอฟต์แวร์
1) ก�ำหนดขอบเขตของปัญหาให้ชัดเจน และยึดถือเป็นมาตรฐานและบรรทัดฐานในการวิเคราะห์ระบบ
(ขอบเขตของปัญหาน้ี สามารถเปลี่ยนแปลงได้ตามช่วงเวลา แต่ไม่ควรเปลี่ยนแปลงบ่อยจนเกินความจ�ำเป็น) จากน้ัน
เขียนแผนภาพยูสเคสของขอบเขตของปัญหาที่ก�ำหนดไว้ แล้วพิจารณาว่า ในแต่ละยูสเคสจะมีอ็อบเจ็กต์อะไรอยู่บ้าง
เม่ือท�ำเช่นน้ีจนครบทุกยูสเคสแล้วจะได้อ็อบเจ็กต์ที่มีอยู่ในขอบเขตของปัญหาทั้งหมด
2) พจิ ารณาหาออ็ บเจก็ ตท์ ี่สามารถจับตอ้ งได้ เหน็ ได้ สัมผสั ได้ จากขอบเขตของปัญหาเดียวกนั ให้ครบทุกตวั
3) พิจารณาหาอ็อบเจ็กต์ที่ไม่สามารถจับต้องได้ ที่น่าจะมีอยู่ในขอบเขตของปัญหาเดียวกัน
4) ใช้การจ�ำแนกคลาสนามธรรม (classification abstraction) เพ่ือแยกแยะวัตถุและสร้างคลาส และ
พยายามหาแอตทริบิวต์และเมธอดที่มีอยู่ในคลาสนั้น ๆ เท่าที่จะหามาได้ แล้ววาดคลาสที่ได้ท้ังหมดลงในแผนภาพ
คลาส
5) หาความสัมพันธ์ระหว่างคลาสแบบการเป็นส่วนหนึ่งของ (aggregation) โดยพิจารณาคลาสที่ได้จากการ
จำ� แนกคลาสนามธรรม วา่ มคี ลาสใดหรอื ไม่ที่มคี วามสมั พันธแ์ บบการเป็นสว่ นหนงึ่ ของ (is-part-of) หรอื ประกอบดว้ ย
(whole-part) คลาสอื่น ๆ ถ้ามีพยายามหาว่าความสัมพันธ์ที่เกิดข้ึนน้ันมีค่าจ�ำนวนในความสัมพันธ์ (multiplicity)
เท่าใด ให้ใส่ให้ถูกต้อง
6) พิจารณาความสัมพันธ์ในลักษณะการระบุคุณลักษณะท่ัวไป (generalization) มาพิจารณาคลาสต่าง ๆ
ในแผนภาพคลาส หากเกิดมีความสัมพันธ์แบบสืบทอดคุณสมบัติเกิดข้ึน ให้เพิ่มเติมลงในแผนภาพคลาส ซ่ึงใน
ข้ันตอนน้ีอาจมีการสร้างคลาสใหม่ได้
7) พิจารณาความสัมพันธ์แบบเก่ียวข้องกัน (association) มาพิจารณาคลาสต่าง ๆ ในแผนภาพคลาสและ
เพมิ่ เตมิ สญั ลกั ษณข์ องความสมั พนั ธแ์ บบเกยี่ วขอ้ งกนั ลงในแผนภาพคลาส จากนน้ั พจิ ารณาประเภทของความสมั พนั ธ์
และก�ำหนดค่าจ�ำนวนในความสัมพันธ์ (multiplicity) ให้ถูกต้อง
8) พิจารณาแผนภาพคลาสที่สร้างมาทั้งหมด ดังนี้
• ทุกคลาสและทุกกลุ่มของคลาสมีความสัมพันธ์แบบใดแบบหนึ่งกับคลาสหรือกลุ่มของคลาสอ่ืน
หรือไม่
• หากวา่ มคี ลาสใดคลาสหนึ่งหรอื กลมุ่ หน่ึง ยงั ไม่มคี วามสมั พนั ธใ์ ดกับคลาสอื่นเลย อาจเกิดเนอ่ื งจาก
คลาสนั้นเป็นคลาสท่ีเกินความจ�ำเป็นจริง ๆ ไม่ต้องมีในระบบก็ได้
• หรืออาจเกิดจาก ยังขาดคลาสอื่น ๆ ท่ีจ�ำเป็นต้องมีและต้องมีความสัมพันธ์กับคลาสดังกล่าว ส่ิงท่ี
ต้องท�ำหากเกิดกรณีนี้ข้ึน คือ เริ่มต้นใหม่ต้ังแต่ขั้นตอนท่ี 1 โดยพิจารณาหาอ็อบเจ็กต์ที่น่าจะขาดหายหรือเกินข้ึนมา
แล้วท�ำต่อมาจนจบหรือจนกว่าจะได้แผนภาพคลาสที่สมบูรณ์
หมายเหตุ ข้อ 5) ถึง 7) สามารถท�ำสลับข้ันตอนกันได้
2. การกำ�หนดคลาสในแผนภาพคลาส
การเขียนสัญลักษณ์ในแผนภาพคลาสตามมาตรฐานยูเอ็มแอล จะใช้สัญลักษณ์สี่เหลี่ยมแบ่งเป็นส่วน ๆ
ในการแสดงองค์ประกอบภายใน ซึ่งประกอบด้วย ชื่อคลาส (class name) ส่วนแสดงคุณลักษณะ (attribute) และ
ส่วนแสดงพฤติกรรม (operation) หรือเมธอด (method) โดยสามารถแสดงเพียงบางส่วนหรือครบทุกส่วนก็ได้
ดังแสดงในภาพที่ 7.29