UML (Unified Modeling Language) คือ ภาษาสัญลักษณ์มาตรฐานสำหรับจำลองแบบระบบเชิงวัตถุ โดยแบ่งโครงสร้างหลักออกเป็น 3 ส่วน ได้แก่ ส่วนประกอบ (Things), ความสัมพันธ์ (Relationships) และ แผนภาพ (Diagrams) ซึ่งมีทั้งหมด 14 ประเภท ดังนี้
ส่วนประกอบหลัก (Things)
- Structural Things: องค์ประกอบเชิงโครงสร้าง เช่น คลาส (Class), อินเทอร์เฟซ (Interface), วัตถุ (Object) และคอมโพเนนต์ (Component)
- Behavioral Things: องค์ประกอบเชิงพฤติกรรม อธิบายการทำงานของระบบ เช่น ปฏิสัมพันธ์ (Interaction) และสเตทแมชชีน (State Machine)
- Group Things: องค์ประกอบที่ใช้จัดกลุ่มส่วนต่างๆ เข้าด้วยกัน เช่น แพ็คเกจ (Package)
- Annotational Things: องค์ประกอบที่ใช้ใส่คำอธิบายเพิ่มเติม (Note)
ความสัมพันธ์ (Relationships)
- Dependency: ความสัมพันธ์แบบอิงอาศัยกัน หากอีกฝั่งเปลี่ยนแปลงจะมีผลกระทบ
- Association: ความสัมพันธ์ระหว่างอ็อบเจ็กต์ทั่วไป (เช่น การเชื่อมโยง/ใช้งานกัน)
- Generalization: ความสัมพันธ์แบบสืบทอด (Inheritance) หรือแม่-ลูก
- Realization: ความสัมพันธ์ที่อ็อบเจ็กต์หนึ่งทำตามข้อกำหนด (Interface) ของอีกอ็อบเจ็กต์หนึ่ง
แผนภาพ UML (Diagrams) ทั้ง 14 ประเภท
แผนภาพถูกแบ่งออกเป็น 2 กลุ่มใหญ่ คือ
1 แผนภาพโครงสร้าง (Structural Diagrams)
แสดงโครงสร้างและส่วนประกอบคงที่ของระบบ ประกอบด้วย
- Class Diagram: แผนภาพแสดงคลาส คุณสมบัติ และความสัมพันธ์
- Object Diagram: แผนภาพแสดงอ็อบเจ็กต์จำลองที่เกิดจากคลาสในช่วงเวลาหนึ่ง
- Component Diagram: แผนภาพแสดงโครงสร้างส่วนประกอบซอฟต์แวร์
- Deployment Diagram: แผนภาพแสดงฮาร์ดแวร์และสภาพแวดล้อมการติดตั้งระบบ
- Composite Structure Diagram: แผนภาพแสดงโครงสร้างภายในของคลาส
- Package Diagram: แผนภาพแสดงการจัดกลุ่มคลาสหรือโมดูล
- Profile Diagram: แผนภาพปรับแต่ง UML สำหรับนำไปใช้เฉพาะทาง
2 แผนภาพพฤติกรรม (Behavioral Diagrams)
แสดงการทำงานแบบไดนามิกและการโต้ตอบของระบบเมื่อเวลาผ่านไป ประกอบด้วย
- Use Case Diagram: แผนภาพแสดงฟังก์ชันการทำงานของระบบและผู้ใช้งาน (Actor)
- Activity Diagram: แผนภาพแสดงขั้นตอนการทำงานของระบบ คล้ายผังงาน (Flowchart)
- Sequence Diagram: แผนภาพแสดงลำดับขั้นตอนการโต้ตอบของอ็อบเจ็กต์ตามเวลา
- State Machine Diagram: แผนภาพแสดงสถานะการทำงานของอ็อบเจ็กต์ตั้งแต่เริ่มต้นจนจบ
- Communication Diagram: แผนภาพแสดงการติดต่อสื่อสารระหว่างอ็อบเจ็กต์
- Interaction Overview Diagram: แผนภาพสรุปการทำงานที่มีความซับซ้อนโดยรวมแผนภาพย่อยต่าง ๆ เข้าไว้ด้วยกัน
- Timing Diagram: แผนภาพแสดงการเปลี่ยนแปลงสถานะของอ็อบเจ็กต์เทียบกับเวลา
อ่านเพิ่มเติม
