290353 Object-Oriented Analysis and Design ด้วย Communication Diagram โด อ.ธารารัตน์ พวงสุวรรณ คณะวิทยาศาสตร์และศิลปศาสตร์ มหาวิทยาลัยบูรพา วิทยาเขตสารสนเทศจันทบุรี
Communication Diagram แสดง interaction ที่เกิดขึ้นระหว่าง object แสดงให้เห็นถึงการทำงานร่วมกัน โดยการรับและส่ง message ระหว่างกัน Link จะเป็นการแสดงความร่วมมือระหว่างกัน เน้นไปที่พื้นที่การทำงานแทนที่จะเป็นเรื่องของเวลา Communication เป็นการกำหนดวิธีของการแยกหมวดหมู่ Use case หรือ Operation จะถูกทำให้เข้าใจได้โดยกลุ่มของ classes Association ที่ใช้กำหนดบทบาทและใช้งานเฉพาะอย่าง Communication จะถูกกำหนดการ interaction
Communication Diagram Collaboration diagram อาจประกอบไปด้วย object, actor, link และ message ที่มีปฏิกิริยาระหว่างกัน Diagram จะแสดงรายละเอียดว่ามีอะไรเกิดขึ้นกับ object เช่น วิธีการส่งและรับ message กับ object อื่นๆ เป็น diagram ที่ได้มาจาก use case เป็นการแสดง interaction ที่เกิดขึ้นระหว่าง actor และ object หรือ instances ของ classes Communication เน้นไปที่การตอบโต้และความสัมพันธ์ที่เกิดขึ้นจากการร่วมมือกันในการทำงานของ object แต่ละ diagram จะสร้างได้จากหลาย scenario ของ use case ดังนั้นจึงเป็นไปได้ที่จะมีหลายๆ object ที่มีการ communication กันในแต่ละ use case
Communication Diagram ลำดับของ message ที่แสดงอยู่ภายใน diagram จะไม่ได้มีลักษณะเช่นที่ปรากฏอยู่ใน sequence diagram ใช้เฉพาะ message ที่ต้องการแสดงการเปลี่ยนแปลงของลำดับการทำงานภายใน scenario การนำเสนอข้อมูลคล้ายกับ sequence diagram เน้นที่ความสัมพันธ์แบบ static ของ class model
Symbol (Communication Diagram) Class roles แสดงบทบาทของ object Actor เป็น actor ที่มีส่วนร่วมกับการ interaction Association roles กำหนดรายละเอียดของ association หรือเรียกว่า link โดยปกติจะแทนด้วยเส้นตรงและมี <<stereotypes>> กำกับไว้ <<global>>
Symbol (Communication Diagram) message จะแทนด้วยลูกศรและ label กำกับไว้ที่ link แสดงทิศทางการรับและส่ง message ไปยัง object ต่างๆ ชื่อและพารามิเตอร์จะกำกับในลูกศร ใส่ตัวเลขเพื่อแสดงค่าลำดับการทำงาน
Symbol (Communication Diagram) Message ใน communication diagram จะไม่มีช่วงเวลากำหนด แต่มีเพียงลำดับการทำงานเท่านั้น Loop จะใช้ * กำกับไว้ที่หลังตัวเลขลำดับการทำงาน กรณีต้องการกำหนดเงื่อนไขการทำงานให้กับเมสเสจ ด้วย Guard-Condition ซึ่งเป็นเงื่อนไขที่เป็นจริงหรือเท็จ จะใช้สัญลักษณ์เหมือนสัญลักษณ์การวนซ้ำแต่ไม่มีเครื่องหมายดอกจันนำหน้า
Hotel Example – Communication Diagram
Comparing Sequence and Communication diagrams Sequence diagram เน้นไปที่ลำดับการทำงานเป็นหลัก Communication diagram จะแสดงความสัมพันธ์ระหว่าง class เป็นหลัก เป็นการติดต่อกับแบบ Static Communication diagram จะเน้นไปที่ link ระหว่าง object ที่มีการทำงานร่วมกัน diagram ทั้งสองแบบจะเหมาะสมในการกำหนดรายละเอียดของพฤติกรรม (behaviour) Communication diagram สามารถทบทวนการกำหนดขอบเขตของ class ได้อีกด้วย
Comparing Sequence and Communication diagrams Sequence diagram แสดงให้เห็นถึง object ที่เกี่ยวข้องกับการ interaction โดยเฉพาะอย่างยิ่งในช่วงเวลาหนึ่ง แต่ไม่ได้แสดงความสัมพันธ์ระหว่าง object Communication และ Sequence diagram เป็นทางเลือกในการนำเสนอ interaction ระหว่าง object ในระบบ แสดงให้เห็นถึงลำดับของ message ที่มีการทำงานเกิดขึ้น แสดงรายละเอียดของ object, link และ message