Object diagram

Object diagram

              ออบเจ็กต์ไดอะแกรม มีความใกล้เคียงกับ คลาสไดอะแกรม สิ่งที่แตกต่างก็คือ ออบเจ็กต์แสดงถึง ตัวแทนออบเจ็กต์ของ คลาส และชุดความสัมพันธ์ต่างๆ ในขณะหนึ่ง ออบเจ็กต์ไดอะแกรมใช้ เซตย่อย ขององค์ประกอบจากคลาสไดอะแกรม ในอันที่จะ เน้นด้านความสัมพันธ์ระหว่าง กรณีตัวอย่าง (instances) ของคลาส ในช่วงใดช่วงหนึ่ง อย่างไรก็ตาม สังเกตได้ว่า ออบเจ็กต์ ไดอะแกรม ไม่ได้แสดงถึงสถาปัตยกรรมที่แตกต่างกันมากนักกับคลาสไดอะแกรม แต่ก็ได้สะท้อนให้เห็น ตัวทวีค่า(multiplicity) และ บทบาทของคลาสตัวอย่างที่สามารถตอบสนองการให้บริการ 

                คลาส และ องค์ประกอบออบเจ็กต์ ตัวอย่างไดอะแกรมด้านล่างแสดง ถึงความแตกต่างที่มองเห็นได้ ระหว่าง องค์ประกอบคลาส และองค์ประกอบออบเจ็กต์สังเกตว่า องค์ประกอบของคลาสประกอบด้วย 3 ส่วนแยกกัน แบ่งเป็น ชื่อ คุณสมบัติ (attribute) และส่วนดำเนินการ โดยค่าแรกเริ่มแล้ว องค์ประกอบของออบเจ็กต์ จะไม่มีการแบ่งแยกส่วน เป็นแต่เพียงแสดงชื่อ เพื่อแสดงให้เห็นถึงความแตกต่าง ชื่อของออบเจ็กต์จะถูกขีดเส้นใต้ และอาจแสดงชื่อคลาสอิงตามออบเจ็กต์ที่กำหนดให้เป็น กรณีตัวอย่าง 


รูปประกอบที่ 1 สัญลักษณ์ออบเจ็กต์และองค์ประกอบ


                  สถานะในขณะประมวลคำสั่ง (Run Time)ส่วนขยาย ในองค์ประกอบ สามารถเป็นได้ทั้ง ตัวเลขใดๆ ของแอททริบิ้วและ การดำเนินการก็ได้ ค่าเหล่านี้ ไม่ได้แสดงในกรณีตัวอย่างของออบเจ็กต์ อย่างไรก็ตาม การนิยามออบเจ็กต์ในขณะรันไทม์ เป็นการแสดงถึงชุดค่าของแอททริบิ้วใน กรณีตัวอย่างเฉพาะเท่านั้น 


รูปประกอบที่ 2 สัญลักษณ์แสดงสถานะ


ตัวอย่าง ออบเจ็กต์ไดอะแกรม
                      ไดอะแกรมด้านล่างนี้แสดง ตัวอย่างออบเจ็กต์ไดอะแกรม ที่ทำการสอดแทรกเข้าไปในข้อกำหนดของคลาสไดอะแกรม และได้แสดงการทำงานของ ออบเจ็กต์ไดอะแกรม ที่ถูกนำมาใช้เพื่อทดสอบ ตัวทวีค่า ของการ กำหนดค่าในคลาสไดอะแกรม ตัวอย่างนี้ เป็น คลาส รถยนต์ ที่มี ตัวทวีค่าเท่ากับ 1-to-many กับคลาสที่เป็นล้อ ดังนั้น ควรกำหนดให้ตัวทวีค่าเป็น 1-to-4 แทน ด้วยวิธีดังกล่าวเป็นการ ป้องกันไม่ให้ รถยนต์ กำหนดจำนวนของล้อ ที่ไม่ตรงตามความเป็นจริง ในออบเจ็กต์ไดอะแกรม   

รูปประกอบที่ 3 ตัวอย่างออบเจ็กต์ไดอะแกรม






กลับยังหน้า Diagram