UML - แผนภาพการโต้ตอบ

จากคำว่า Interaction เป็นที่ชัดเจนว่าแผนภาพถูกใช้เพื่ออธิบายการโต้ตอบบางประเภทระหว่างองค์ประกอบต่างๆในแบบจำลอง ปฏิสัมพันธ์นี้เป็นส่วนหนึ่งของพฤติกรรมพลวัตของระบบ

พฤติกรรมแบบโต้ตอบนี้แสดงใน UML โดยสองไดอะแกรมที่เรียกว่า Sequence diagram และ Collaboration diagram. จุดประสงค์พื้นฐานของแผนภาพทั้งสองมีความคล้ายคลึงกัน

แผนภาพลำดับเน้นตามลำดับเวลาของข้อความและแผนภาพการทำงานร่วมกันจะเน้นที่การจัดโครงสร้างของวัตถุที่ส่งและรับข้อความ

วัตถุประสงค์ของแผนภาพปฏิสัมพันธ์

จุดประสงค์ของแผนภาพปฏิสัมพันธ์คือเพื่อให้เห็นภาพพฤติกรรมโต้ตอบของระบบ การแสดงภาพปฏิสัมพันธ์เป็นงานที่ยาก ดังนั้นวิธีแก้ปัญหาคือการใช้โมเดลประเภทต่างๆเพื่อจับแง่มุมที่แตกต่างกันของการโต้ตอบ

แผนภาพลำดับและการทำงานร่วมกันใช้เพื่อจับภาพลักษณะไดนามิก แต่จากมุมที่ต่างกัน

วัตถุประสงค์ของแผนภาพปฏิสัมพันธ์คือ -

  • เพื่อจับพฤติกรรมไดนามิกของระบบ

  • เพื่ออธิบายการไหลของข้อความในระบบ

  • เพื่ออธิบายการจัดโครงสร้างของวัตถุ

  • เพื่ออธิบายปฏิสัมพันธ์ระหว่างวัตถุ

วิธีการวาดแผนภาพปฏิสัมพันธ์

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

เรามีแผนภาพปฏิสัมพันธ์สองประเภทใน UML แผนภาพลำดับแรกคือแผนภาพการทำงานร่วมกัน แผนภาพลำดับจะรวบรวมลำดับเวลาของการไหลของข้อความจากวัตถุหนึ่งไปยังอีกวัตถุหนึ่งและแผนภาพการทำงานร่วมกันจะอธิบายการจัดระเบียบของวัตถุในระบบที่มีส่วนร่วมในการไหลของข้อความ

ต้องระบุสิ่งต่อไปนี้ให้ชัดเจนก่อนวาดแผนภาพปฏิสัมพันธ์

  • วัตถุที่มีส่วนร่วมในการโต้ตอบ

  • ข้อความไหลไปมาระหว่างวัตถุ

  • ลำดับที่ข้อความกำลังไหล

  • องค์กรวัตถุ

ต่อไปนี้เป็นแผนภาพปฏิสัมพันธ์สองแบบที่สร้างแบบจำลองระบบการจัดการคำสั่งซื้อ แผนภาพแรกคือแผนภาพลำดับและแผนภาพที่สองคือแผนภาพการทำงานร่วมกัน

แผนภาพลำดับ

แผนภาพลำดับมีออบเจ็กต์สี่ชิ้น (ลูกค้าคำสั่งซื้อ SpecialOrder และ NormalOrder)

แผนภาพต่อไปนี้แสดงลำดับข้อความสำหรับอ็อบเจ็กต์SpecialOrderและสามารถใช้สิ่งเดียวกันในกรณีของอ็อบเจ็กต์NormalOrder สิ่งสำคัญคือต้องเข้าใจลำดับเวลาของการไหลของข้อความ การไหลของข้อความเป็นเพียงการเรียกใช้เมธอดของวัตถุ

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

แผนภาพการทำงานร่วมกัน

แผนภาพปฏิสัมพันธ์ที่สองคือแผนภาพการทำงานร่วมกัน จะแสดงองค์กรวัตถุดังที่เห็นในแผนภาพต่อไปนี้ ในแผนภาพการทำงานร่วมกันลำดับการเรียกเมธอดจะถูกระบุโดยเทคนิคการกำหนดหมายเลข ตัวเลขระบุวิธีการเรียกใช้ทีละวิธี เราได้ใช้ระบบการจัดการคำสั่งซื้อเดียวกันเพื่ออธิบายแผนภาพการทำงานร่วมกัน

การเรียกเมธอดจะคล้ายกับแผนภาพลำดับ อย่างไรก็ตามความแตกต่างของแผนภาพลำดับไม่ได้อธิบายถึงองค์กรวัตถุในขณะที่แผนภาพการทำงานร่วมกันจะแสดงองค์กรของวัตถุ

ในการเลือกระหว่างสองแผนภาพนี้จะเน้นที่ประเภทของความต้องการ หากลำดับเวลามีความสำคัญก็จะใช้แผนภาพลำดับ หากจำเป็นต้องใช้องค์กรก็จะใช้แผนภาพการทำงานร่วมกัน

จะใช้แผนภาพการโต้ตอบได้ที่ไหน

เราได้พูดคุยกันแล้วว่าแผนภาพปฏิสัมพันธ์ใช้เพื่ออธิบายลักษณะไดนามิกของระบบ ตอนนี้เราจะดูสถานการณ์จริงที่ใช้ไดอะแกรมเหล่านี้ เพื่อให้เข้าใจถึงการนำไปใช้จริงเราจำเป็นต้องเข้าใจลักษณะพื้นฐานของลำดับและแผนภาพการทำงานร่วมกัน

จุดประสงค์หลักของแผนภาพทั้งสองมีความคล้ายคลึงกันเนื่องจากใช้เพื่อจับภาพพฤติกรรมพลวัตของระบบ อย่างไรก็ตามวัตถุประสงค์เฉพาะนั้นสำคัญกว่าในการชี้แจงและทำความเข้าใจ

แผนภาพลำดับใช้เพื่อจับลำดับของข้อความที่ไหลจากวัตถุหนึ่งไปยังอีกวัตถุหนึ่ง แผนภาพการทำงานร่วมกันใช้เพื่ออธิบายการจัดโครงสร้างของวัตถุที่มีส่วนร่วมในการโต้ตอบ แผนภาพเดียวไม่เพียงพอที่จะอธิบายลักษณะไดนามิกของระบบทั้งหมดดังนั้นจึงใช้ชุดของไดอะแกรมเพื่อจับภาพโดยรวม

แผนภาพการโต้ตอบใช้เมื่อเราต้องการเข้าใจการไหลของข้อความและการจัดโครงสร้าง การไหลของข้อความหมายถึงลำดับของการไหลของการควบคุมจากวัตถุหนึ่งไปยังอีกวัตถุหนึ่ง โครงสร้างองค์กรหมายถึงการจัดวางองค์ประกอบภาพในระบบ

สามารถใช้แผนภาพปฏิสัมพันธ์ -

  • เพื่อจำลองการไหลของการควบคุมตามลำดับเวลา

  • เพื่อจำลองการไหลของการควบคุมโดยองค์กรโครงสร้าง

  • สำหรับวิศวกรรมก้าวหน้า

  • สำหรับวิศวกรรมย้อนกลับ.