ดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

การสร้างแบบจำลองระบบด้วย UML

การสร้างแบบจำลองระบบด้วย UML
การสร้างแบบจำลองระบบด้วย UML

การสร้างแบบจำลองระบบด้วย UML หมายถึง การสร้างแผนภาพการทำงาน หรือ Diagram หลาย ๆ แบบให้เลือกใช้เพื่อการวิเคราะห์และการออกแบบในระดับระบบ และซอฟต์แวร์ และโมดูลมาตรฐานที่ใช้หลักการออกแบบ OOP 

5 มุมมองหลักของ UML

  • UML-case View: หน้าที่การทำงานของระบบ มีการทำงานของระบบซอฟต์แวร์ โดยพิจารณาจากมุมมองของผู้ใช้ภายนอก หรือ ระบบภายนอก
  • Logical View: หน้าที่การทำงานของระบบ มีโครงสร้างอย่างไร มองในรูปของ Static Structure และ Dynamic Behavior
    • Class diagram, object diagram, state diagram, sequence diagram, collaboration diagram, activity diagrams
  • Component View: องค์ประกอบย่อยในการ Implement ที่ประกอบเป็นระบบ และ Dependency ระหว่างองค์ประกอบเหล่านั้น
    • component diagram
  • Concurrency View: การแบ่งแยก Process และ Processors โดยพิจารณาทั้ง Communication และ Synchronization
    • dynamic diagrams (state diagrams, sequence diagrams, collaboration activity)
    • implementation diagrams (component และ deployment)
  • Deployment View: โครงสร้างทางกายภาพเกี่ยวกับ การติดตั้ง และการใช้งานระบบ
    • deployment diagram

Use Case Diagram ในการพัฒนาระบบงานใด ๆ นั้น การเก็บรวบรวมความต้องการของผู้ใช้มีความสำคัญมาก และจะทำในระยะแรก ๆ ของการพัฒนาระบบงานเสมอ Use case Diagram เป็น Diagram ที่ทำหน้าที่ Capture requirement

  • เป็นเทคนิคในการสร้างแบบจำลองเพื่อใช้อธิบายหน้าที่ของระบบใหม่ หรือระบบปัจจุบัน
  • กระบวนการสร้าง Use case เป็นแบบ Iteration
  • ความต้องการของระบบจะได้จาก ลูกค้า/ผู้ใช้ + ผู้พัฒนาระบบ
  • องค์ประกอบจะมี Use case, Actor, Use case Relation และ System

Class Diagram ประกอบด้วย Class และความสัมพันธ์ระหว่าง Class เช่น Dependency, Generalization, Association เป็นต้น Class Diagram สามารถแสดงรายละเอียดว่ามี Method และ Attribute อย่างไร

 

Class Diagram
Class Diagram ประกอบด้วย Class และความสัมพันธ์ระหว่าง Class

 

Sequence Diagram จะแสดงลำดับการทำงานของระบบโดยมี Object และ เวลาเป็นตัวกำหนดลำดับของงาน และเน้นไปที่ Instant ของ Object

  • Sequence Diagram เป็น Diagram ซึ่งแสดงปฏิสัมพันธ์ (Interaction) ระหว่าง Object ตามลำดับของเหตุการณ์ที่เกิดขึ้น ณ เวลาที่กำหนด message ที่เกิดขึ้นระหว่าง Class จะสามารถนำไปสู่การสร้าง Method ใน Class ที่เกี่ยวข้องได้

 

Sequence Diagram
Sequence Diagram เป็น Diagram ซึ่งแสดงปฏิสัมพันธ์

 

Activities Diagram แสดงลำดับ กิจกรรมของการทำงาน (Work Flow) สามารถแสดงทางเลือกที่เกิดขึ้นได้ Activity Diagram จะแสดงขั้นตอนการทำงานในการปฏิบัติการ โดยประกอบไปด้วยสถานะต่าง ๆ ที่เกิดขึ้นระหว่างการทำงาน และ ผลจากการทำงานในขั้นตอนต่าง ๆ

Activities Diagram
Activities Diagram แสดงลำดับ กิจกรรมของการทำงาน (Work Flow)

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

 

ช่องทางการศึกษาเพิ่มเติมข่าวสารที่น่าสนใจเกี่ยวกับ : บทความทั่วไป

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ความรุนแรงในเด็กๆ
โดย noppadonsk ศ 21 ก.พ. 2020 11:47 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
17
ศ 21 ก.พ. 2020 11:47 am โดย noppadonsk
จะทำอย่างไรให้ ค่าในอาเรย์ที่ซ้ำกันเหลือแค่ค่าเดียวครับ
โดย waterwelon ศ 21 ก.พ. 2020 2:04 pm บอร์ด Programming - PHP
2
30
ศ 21 ก.พ. 2020 2:34 pm โดย waterwelon
องค์ประกอบพื้นฐานของการจัดทำ Extension ใน phpBB 3 ส่วนของ admin
โดย Ittichai_chupol พฤ 20 ก.พ. 2020 1:56 pm บอร์ด PHP Knowledge
0
23
พฤ 20 ก.พ. 2020 1:56 pm โดย Ittichai_chupol
ประทานโทษ
โดย noppadonsk พฤ 20 ก.พ. 2020 12:54 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
11
พฤ 20 ก.พ. 2020 12:54 pm โดย noppadonsk
มาแล้ว Plugin System MooZiiCart Auto Close สำหรับตั้งเวลาเปิดปิดระบบการสั่งซื้อสินค้าออนไลน์
โดย prmindphp พ 19 ก.พ. 2020 6:40 pm บอร์ด MindPHP News & Feedback
0
50
พ 19 ก.พ. 2020 6:40 pm โดย prmindphp
ถ้าคุณต้องเลือก
โดย noppadonsk พ 19 ก.พ. 2020 11:22 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
15
พ 19 ก.พ. 2020 11:22 am โดย noppadonsk
อยากจะทราบว่าวิธีการแสดงค่าอาเรย์แต่ล่ะค่าครับ
โดย waterwelon พ 19 ก.พ. 2020 11:04 am บอร์ด Programming - PHP
2
39
พ 19 ก.พ. 2020 11:58 am โดย thatsawan
คลายเครียด
โดย noppadonsk อ 18 ก.พ. 2020 2:50 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
34
อ 18 ก.พ. 2020 2:50 pm โดย noppadonsk
7 สิ่งที่ต้องปรับปรุงเพื่อลดค่า Bounce Rate บนหน้าเว็บไซต์
โดย phasamon อ 18 ก.พ. 2020 10:22 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
24
อ 18 ก.พ. 2020 10:22 am โดย phasamon
อยากให้ธุรกิจเป็นที่รู้จักบนโลกออนไลน์ ลองหาบริษัทรับทำ SEO ดูซิ !
โดย totheworld จ 17 ก.พ. 2020 3:34 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
65
จ 17 ก.พ. 2020 3:34 pm โดย totheworld
สี่เหตุผลที่ควรปรับปรุงเว็บไซต์
โดย phasamon จ 17 ก.พ. 2020 2:05 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
46
จ 17 ก.พ. 2020 2:05 pm โดย phasamon
อย่าได้พลาดเชียว
โดย noppadonsk จ 17 ก.พ. 2020 10:52 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
23
จ 17 ก.พ. 2020 10:52 am โดย noppadonsk
วิธีการแก้ไขปํญหา undefined index กรณีกำหนดเงือนไขเทียบค่าอาร์เรย์
โดย Ittichai_chupol ศ 14 ก.พ. 2020 5:50 pm บอร์ด PHP Knowledge
0
95
ศ 14 ก.พ. 2020 5:50 pm โดย Ittichai_chupol
เรื่องน่าเศร้า
โดย noppadonsk ศ 14 ก.พ. 2020 10:19 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
73
ศ 14 ก.พ. 2020 10:19 am โดย noppadonsk
อยากทรบวิธีจัดการไม่ให้สมาชิกที่อยู่ในกลุ่มที่กำหนดมาส่องโพสต์ของผู้อื่นได้
โดย Ittichai_chupol พฤ 13 ก.พ. 2020 3:22 pm บอร์ด Programming - PHP
3
108
พฤ 13 ก.พ. 2020 5:31 pm โดย thatsawan
กลับไปเริ่มใหม่
โดย noppadonsk พฤ 13 ก.พ. 2020 10:57 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
61
พฤ 13 ก.พ. 2020 10:57 am โดย noppadonsk
อยากทราบการเอาเลขมาคุณในช่อง 10อัน แล้วมาแล้วผลข้างล่างครับ
โดย comopal พ 12 ก.พ. 2020 6:49 pm บอร์ด Programming - PHP
1
157
พฤ 13 ก.พ. 2020 9:39 am โดย LEG
ต้องรีบเดี๋ยวลืม
โดย noppadonsk พ 12 ก.พ. 2020 10:56 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
62
พ 12 ก.พ. 2020 10:56 am โดย noppadonsk
วิธีการเลือกงาน
โดย jataz2 พ 12 ก.พ. 2020 9:47 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
78
พ 12 ก.พ. 2020 9:47 am โดย jataz2
วิธีการไปสัมภาษณ์งาน
โดย jataz2 พ 12 ก.พ. 2020 9:25 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
94
พ 12 ก.พ. 2020 9:25 am โดย jataz2