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

การสร้างแบบจำลองระบบด้วย 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 ไปใช้เข้าใจการทำงานได้ง่ายขึ้น 

 

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

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
เปลี่ยน Default Python3 บนเครื่อง Ubuntu 16.04 จาก Python3.5 เป็น Python3.6
โดย mindphp พฤ 21 พ.ย. 2019 7:04 am บอร์ด Linux - Web Server
1
55
ส 23 พ.ย. 2019 1:34 am โดย mindphp
สร้าง Template ใน Joomla
โดย bankjittapol พ 20 พ.ย. 2019 8:06 pm บอร์ด Joomla Developing Knowledge
0
41
พ 20 พ.ย. 2019 8:06 pm โดย bankjittapol
list box เลือกแสดงรูปแบบของวันที่ (Date Format )
โดย bankjittapol พ 20 พ.ย. 2019 6:55 pm บอร์ด Joomla Developing Knowledge
0
41
พ 20 พ.ย. 2019 6:55 pm โดย bankjittapol
คำสั่งเข้าใช้งาน PostgreSQL ด้วย Command Line
โดย mindphp อ 30 ก.ค. 2017 11:24 pm บอร์ด PostgreSQL
6
1929
พ 20 พ.ย. 2019 6:38 pm โดย mindphp
replace() คำสั่งค้นหาแทนที่ใน javascript
โดย jamepiyawat พ 20 พ.ย. 2019 6:36 pm บอร์ด Jquery & Ajax Knowledge
0
40
พ 20 พ.ย. 2019 6:36 pm โดย jamepiyawat
VDO - แนะนำฟังก์ชั่นระบบ Webboard Mindphp.com ใหม่ (phpbb v.3.2)
โดย numtan5839 พ 20 พ.ย. 2019 6:31 pm บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
18
111
พ 04 ธ.ค. 2019 7:55 pm โดย mindphp
วิธีการเขียน SQL เพื่ม เพิ่มคอลัมน์ ฐานข้อมูล
โดย Ittichai_chupol พ 20 พ.ย. 2019 6:06 pm บอร์ด SQL Knowledge
0
36
พ 20 พ.ย. 2019 6:06 pm โดย Ittichai_chupol
VDO - Program Exchange Rate
โดย numtan5839 อ 12 พ.ย. 2019 2:42 pm บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
5
85
พฤ 28 พ.ย. 2019 3:38 pm โดย numtan5839
วิธีเช็คเวอร์ชั่น ของ Joomla
โดย bankjittapol พ 20 พ.ย. 2019 5:39 pm บอร์ด Joomla Developing Knowledge
0
57
พ 20 พ.ย. 2019 5:39 pm โดย bankjittapol
G - ข้อมูลสำหรับทำระบบ สรุปความต้องการ / ประชุมกับลูกค้า- ThaiVI
โดย mindphp พ 10 ต.ค. 2018 3:29 am บอร์ด ThaiVI (Main)
11
135
พ 04 ธ.ค. 2019 8:04 pm โดย mindphp
การปรับเปลี่ยนข้อมูลของ object โดยใช้ javascript
โดย Ittichai_chupol พ 20 พ.ย. 2019 3:34 pm บอร์ด Jquery & Ajax Knowledge
0
35
พ 20 พ.ย. 2019 3:34 pm โดย Ittichai_chupol
ค้นหาแบบนี้ ใช้ส่วนเสริมตัวไหนครับ
โดย toonytoony2004 อ 19 พ.ย. 2019 8:25 pm บอร์ด Joomla Development
2
46
พ 20 พ.ย. 2019 1:12 pm โดย mindphp
ระหว่าง joomla กับ wordpress แตกต่างกันยังไงครับ
โดย aloha11x พ 13 พ.ย. 2019 2:12 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS, CRM
1
146
พ 20 พ.ย. 2019 1:10 pm โดย mindphp
จะทำยังไงถึงจะแปลงวันที่ ให้อยู่ในรูปแบบของ universal date format ครับ
โดย bankjittapol พ 20 พ.ย. 2019 10:44 am บอร์ด Joomla Development
2
64
พ 20 พ.ย. 2019 6:24 pm โดย bankjittapol
งานประจำวันที่ 20 พฤศจิกายน 2562
โดย numtan5839 พ 20 พ.ย. 2019 10:10 am บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
4
34
พฤ 21 พ.ย. 2019 2:09 pm โดย numtan5839
list box เพื่อเลือกจังหวัดที่ต้องการให้แสดงผลพยากรณ์อากาศ
โดย bankjittapol อ 19 พ.ย. 2019 7:12 pm บอร์ด Joomla Developing Knowledge
0
36
อ 19 พ.ย. 2019 7:12 pm โดย bankjittapol
justify-content: space-between คำสั่ง flex ที่จะช่วยให้ระยะห่างแต่ละรูปเท่ากัน
โดย jamepiyawat อ 19 พ.ย. 2019 6:13 pm บอร์ด CSS Knowledge
0
28
อ 19 พ.ย. 2019 6:13 pm โดย jamepiyawat
วิธีการสร้าง form เมื่อกดปุ่ม โดยใช้ javascript
โดย Ittichai_chupol อ 19 พ.ย. 2019 6:09 pm บอร์ด Jquery & Ajax Knowledge
0
39
อ 19 พ.ย. 2019 6:09 pm โดย Ittichai_chupol
อยากทราบวิธีการ Link ปุ่ม
โดย numtan5839 อ 19 พ.ย. 2019 5:06 pm บอร์ด MindPHP News & Feedback
2
52
อ 19 พ.ย. 2019 5:50 pm โดย numtan5839
อยากทราบวิธีการปรับเปลี่ยนค่า ตัวแปร array ใน javascript
โดย Ittichai_chupol อ 19 พ.ย. 2019 5:19 pm บอร์ด JavaScript & Jquery Ajax
4
58
อ 19 พ.ย. 2019 6:02 pm โดย jamepiyawat