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

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

 

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

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
วิธีแก้ปัญหาตัวอักษรในใบปริ้นเอกสารจากตัวระบบห่าง ใน OpenERP / Odoo
โดย natthanit.r2538 ส 18 ก.ค. 2020 12:30 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
191
ส 18 ก.ค. 2020 12:30 pm โดย natthanit.r2538
argparse คืออะไร
โดย jirawoot พฤ 16 ก.ค. 2020 12:43 pm บอร์ด Python Knowledge
0
1731
พฤ 16 ก.ค. 2020 12:43 pm โดย jirawoot
เวอร์ชั่นใหม่มาแล้ว Joomla 3.9.20 อัพเดทความปลอดภัยหลายจุด
โดย tsukasaz พ 15 ก.ค. 2020 1:45 pm บอร์ด MindPHP News & Feedback
0
263
พ 15 ก.ค. 2020 1:45 pm โดย tsukasaz
วิธีการ การลิ้งค์ข้อมูลข้าม Sheet ใน Google Sheet คู่มือ บทความสอน
โดย Phakakrong อ 14 ก.ค. 2020 6:03 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
173
อ 14 ก.ค. 2020 6:03 pm โดย Phakakrong
c# read excel .xlsx
โดย jataz2 อ 14 ก.ค. 2020 2:50 pm บอร์ด Programming - C/C++ & java & Python
0
148
อ 14 ก.ค. 2020 2:50 pm โดย jataz2
การเทสแป้นพิมพ์
โดย natthanit.r2538 อ 14 ก.ค. 2020 1:43 pm บอร์ด Share Knowledge
0
133
อ 14 ก.ค. 2020 1:43 pm โดย natthanit.r2538
c# example format digit
โดย jataz2 อ 14 ก.ค. 2020 10:29 am บอร์ด Programming - C/C++ & java & Python
0
194
อ 14 ก.ค. 2020 10:29 am โดย jataz2
c# example read csv file
โดย jataz2 อ 14 ก.ค. 2020 10:20 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
102
อ 14 ก.ค. 2020 10:20 am โดย jataz2
งานประจำวันที่ 14 กรกฏาคม 2563
โดย Phakakrong อ 14 ก.ค. 2020 9:36 am บอร์ด M105 - ผกากรอง กุสาวดี
2
26
อ 14 ก.ค. 2020 7:26 pm โดย Phakakrong
การเขียนโพสต์แชร์ในบอร์ดด้วยรูปแบบที่ถูกต้อง
โดย Phakakrong จ 13 ก.ค. 2020 5:33 pm บอร์ด Share Knowledge
0
146
จ 13 ก.ค. 2020 5:33 pm โดย Phakakrong
วิธีการทำ Logged Calls รับ / โทรออก
โดย Phakakrong จ 13 ก.ค. 2020 2:52 pm บอร์ด M105 - ผกากรอง กุสาวดี
0
22
จ 13 ก.ค. 2020 2:52 pm โดย Phakakrong
ขอความช่วยเหลือ ดู Code สไลด์ แบบมีลูกศรกดด้านข้างครับ
โดย dzjp จ 13 ก.ค. 2020 2:43 pm บอร์ด Programming - PHP
0
159
จ 13 ก.ค. 2020 2:43 pm โดย dzjp
ร่วมใจให้ชุมชนดีเด่นกับโครงการธนาคารเห็ด
โดย medalezga จ 13 ก.ค. 2020 12:12 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
175
พ 15 ก.ค. 2020 9:58 am โดย Sirayu
การนำเอาข้อมูลหลายๆ Sheet(Excel ) มารวมกันด้วย Power Query
โดย Phakakrong จ 13 ก.ค. 2020 11:37 am บอร์ด Microsoft Office Knowledge & line & Etc
0
238
จ 13 ก.ค. 2020 11:37 am โดย Phakakrong
งานประจำวันที่ 13 กรกฏาคม 2563
โดย Phakakrong จ 13 ก.ค. 2020 9:43 am บอร์ด M105 - ผกากรอง กุสาวดี
4
65
จ 13 ก.ค. 2020 7:03 pm โดย Phakakrong
ถ้าต้องการจะส่งเมล เเล้วแนบไฟล์ไปด้วยใน phpbb ทำยังไงคะ
โดย thatsawan ส 11 ก.ค. 2020 11:33 am บอร์ด Programming - PHP
7
299
อ 14 ก.ค. 2020 2:09 pm โดย thatsawan
การเพิ่มกรอบจอโทรศัพท์มือถือบน Google Chrome
โดย natthanit.r2538 ส 11 ก.ค. 2020 10:41 am บอร์ด Share Knowledge
0
187
ส 11 ก.ค. 2020 10:41 am โดย natthanit.r2538
งานประจำวันที่ 11 กรกฏาคม 2563
โดย Phakakrong ส 11 ก.ค. 2020 9:22 am บอร์ด M105 - ผกากรอง กุสาวดี
3
24
ส 11 ก.ค. 2020 6:48 pm โดย Phakakrong
ถ้าต้องการเช็คค่าว่าง select ให้ alert ก่อนก่อนปุ่มอื่นๆ ทำยังไงได้บ้างคะ
โดย thatsawan ศ 10 ก.ค. 2020 4:18 pm บอร์ด JavaScript & Jquery Ajax
1
230
ศ 10 ก.ค. 2020 4:59 pm โดย tsukasaz
งานประจำวันที่ 10 กรกฏาคม 2563
โดย Phakakrong ศ 10 ก.ค. 2020 9:35 am บอร์ด M105 - ผกากรอง กุสาวดี
5
24
ศ 10 ก.ค. 2020 7:58 pm โดย Phakakrong