แผนภาพ UML สำหรับการปรับใช้ พร้อมตัวอย่าง
⚡ สรุปอย่างชาญฉลาด
แผนภาพการติดตั้งใช้งาน (Deployment Diagram) เป็นแผนภาพ UML ที่ระบุฮาร์ดแวร์ทางกายภาพที่ระบบซอฟต์แวร์ทำงาน และแมปส่วนประกอบของซอฟต์แวร์ไปยังโหนดต่างๆ โดยอธิบายถึงวัตถุประสงค์ สัญลักษณ์ ส่วนประกอบ โหนด ขั้นตอนการวาด และตัวอย่างที่เป็นรูปธรรม
แผนภาพการปรับใช้คืออะไร?
แผนภาพการติดตั้งใช้งาน (Deployment Diagram) เป็นแผนภาพประเภทหนึ่งที่ระบุฮาร์ดแวร์ทางกายภาพที่ระบบซอฟต์แวร์จะทำงาน นอกจากนี้ยังกำหนดวิธีการติดตั้งใช้งานซอฟต์แวร์บนฮาร์ดแวร์พื้นฐานด้วย โดยจะเชื่อมโยงส่วนประกอบซอฟต์แวร์ของระบบเข้ากับอุปกรณ์ที่จะนำไปใช้งาน
ไดอะแกรมการปรับใช้จะจับคู่สถาปัตยกรรมซอฟต์แวร์ที่สร้างขึ้นในการออกแบบกับสถาปัตยกรรมระบบทางกายภาพที่ดำเนินการ ในระบบแบบกระจาย ไดอะแกรมนี้จะสร้างแบบจำลองการกระจายซอฟต์แวร์ไปยังโหนดทางกายภาพ
ระบบซอฟต์แวร์นั้นแสดงออกมาโดยใช้ต่างๆ สิ่งประดิษฐ์จากนั้นจึงทำการแมปข้อมูลเหล่านั้นไปยังสภาพแวดล้อมการทำงานที่จะใช้ในการเรียกใช้ซอฟต์แวร์ เช่น โหนดแผนภาพการใช้งานเกี่ยวข้องกับโหนดจำนวนมาก ดังนั้นความสัมพันธ์ระหว่างโหนดเหล่านั้นจึงแสดงโดยใช้เส้นทางการสื่อสาร
แผนภาพการใช้งานมีสองรูปแบบ:
- Descriptหรือแบบฟอร์ม – ประกอบด้วยโหนด และความสัมพันธ์ระหว่างโหนดและสิ่งประดิษฐ์
- แบบฟอร์มอินสแตนซ์ – ประกอบด้วยอินสแตนซ์ของโหนด และความสัมพันธ์ระหว่างอินสแตนซ์ของโหนดกับอินสแตนซ์ของอาร์ติแฟกต์ ชื่อที่มีขีดเส้นใต้แสดงถึงอินสแตนซ์ของโหนด
วัตถุประสงค์ของแผนภาพการใช้งาน
แผนภาพการติดตั้งใช้งานมีจุดประสงค์หลักเพื่ออธิบายวิธีการติดตั้งซอฟต์แวร์ลงในระบบฮาร์ดแวร์ โดยจะแสดงให้เห็นว่าซอฟต์แวร์ทำงานร่วมกับฮาร์ดแวร์อย่างไรเพื่อให้ได้ฟังก์ชันการทำงานที่สมบูรณ์ ใช้เพื่ออธิบายการทำงานร่วมกันระหว่างซอฟต์แวร์และฮาร์ดแวร์ และในทางกลับกัน
สัญลักษณ์ไดอะแกรมการปรับใช้และสัญลักษณ์
สัญลักษณ์ไดอะแกรมการปรับใช้
ไดอะแกรมการปรับใช้ประกอบด้วยสัญลักษณ์ต่อไปนี้:
- โหนด
- ส่วนประกอบ
- สิ่งประดิษฐ์
- อินเทอร์เฟซ
สิ่งประดิษฐ์คืออะไร?
อาร์ติแฟกต์ (Artifact) คือสิ่งบ่งชี้เฉพาะของสิ่งที่เป็นรูปธรรมในโลกแห่งความเป็นจริงที่เกี่ยวข้องกับการพัฒนาซอฟต์แวร์ คุณสามารถใช้อาร์ติแฟกต์เพื่ออธิบายเฟรมเวิร์กที่ใช้ในระหว่างกระบวนการพัฒนาซอฟต์แวร์ หรือไฟล์ปฏิบัติการก็ได้ อาร์ติแฟกต์จะถูกติดตั้งบนโหนด อาร์ติแฟกต์ที่พบบ่อยที่สุดมีดังต่อไปนี้:
- ไฟล์ต้นฉบับ
- ไฟล์ปฏิบัติการ
- ตารางฐานข้อมูล
- สคริปต์
- ไฟล์ DLL
- คู่มือการใช้งานหรือเอกสารประกอบ
- ไฟล์เอาต์พุต
อาร์ติแฟกต์จะถูกติดตั้งบนโหนดต่างๆ อาร์ติแฟกต์เหล่านี้สามารถแสดงผลในรูปแบบทางกายภาพขององค์ประกอบ UML ใดๆ ก็ได้ โดยทั่วไปแล้วจะแสดงผลในรูปแบบของคอมponent อาร์ติแฟกต์จะถูกติดป้ายกำกับด้วยสเตอริโอไทป์ < >และอาจมีไอคอนรูปสิ่งประดิษฐ์ปรากฏอยู่ที่มุมบนขวามือ
แต่ละอาร์ติแฟกต์จะมีชื่อไฟล์อยู่ในข้อกำหนด ซึ่งบ่งบอกถึงตำแหน่งทางกายภาพของอาร์ติแฟกต์นั้น อาร์ติแฟกต์หนึ่งอาจมีอาร์ติแฟกต์อื่นอยู่ภายใน และอาจมีความสัมพันธ์กัน
สิ่งประดิษฐ์แต่ละชิ้นมีคุณสมบัติและพฤติกรรมเฉพาะตัว ซึ่งสามารถนำมาดัดแปลงใช้ได้
โดยทั่วไป อาร์ติแฟกต์จะแสดงในภาษาการสร้างแบบจำลองแบบรวมดังต่อไปนี้
สิ่งประดิษฐ์
อินสแตนซ์ของสิ่งประดิษฐ์
ตัวอย่างสิ่งประดิษฐ์ (Artifact instance) หมายถึงตัวอย่างหนึ่งของสิ่งประดิษฐ์นั้นๆ ตัวอย่างสิ่งประดิษฐ์จะใช้สัญลักษณ์เดียวกับสิ่งประดิษฐ์นั้นๆ ยกเว้นชื่อสิ่งประดิษฐ์จะถูกขีดเส้นใต้ แผนภาพ UML วิธีนี้ช่วยให้สามารถแยกแยะความแตกต่างระหว่างต้นฉบับและสำเนาได้ สำเนาหรือไฟล์แต่ละชิ้นเป็นสำเนาของต้นฉบับที่ไม่ซ้ำกัน
โดยทั่วไป อินสแตนซ์อาร์ติแฟกต์จะแสดงในภาษาการสร้างแบบจำลองแบบรวมดังต่อไปนี้
ตัวอย่างสิ่งประดิษฐ์
โหนดคืออะไร?
โหนดคือทรัพยากรการคำนวณที่ใช้สำหรับติดตั้งและประมวลผลข้อมูล โหนดเป็นสิ่งที่มีอยู่จริงและสามารถประมวลผลข้อมูลได้ตั้งแต่หนึ่งอย่างขึ้นไป ขนาดของโหนดอาจแตกต่างกันไปขึ้นอยู่กับขนาดของโครงการ
โหนดเป็นองค์ประกอบสำคัญของ UML ที่อธิบายการทำงานของโค้ดและการสื่อสารระหว่างส่วนประกอบต่างๆ ของระบบ โดยจะแสดงด้วยกล่องสามมิติที่มีชื่อโหนดเขียนอยู่ภายใน โหนดช่วยสื่อถึงฮาร์ดแวร์ที่ใช้ในการติดตั้งซอฟต์แวร์
การเชื่อมโยงระหว่างโหนดแสดงถึงเส้นทางการสื่อสารซึ่งมีการแลกเปลี่ยนข้อมูลไปในทิศทางใดก็ได้
โดยทั่วไป โหนดจะมีแบบแผนสองแบบดังนี้:
- << อุปกรณ์ >> – เป็นโหนดที่แสดงถึงเครื่องจริงที่สามารถทำการคำนวณได้ อุปกรณ์นั้นอาจเป็นเราเตอร์หรือเครื่องเซิร์ฟเวอร์พีซี โดยจะแสดงด้วยโหนดที่มีสเตอริโอไทป์ < ในแบบจำลอง UML คุณยังสามารถซ้อนอุปกรณ์หนึ่งหรือหลายอุปกรณ์ไว้ภายในกันได้อีกด้วย
ต่อไปนี้เป็นตัวแทนของอุปกรณ์ใน UML:
โหนดอุปกรณ์
- << สภาพแวดล้อมการดำเนินการ >> – มันคือโหนดที่แสดงถึงสภาพแวดล้อมที่ซอฟต์แวร์จะทำงาน ตัวอย่างเช่น Java แอปพลิเคชันจะถูกเรียกใช้งานใน Java เครื่องเสมือน (JVM)JVM ถือเป็นสภาพแวดล้อมการประมวลผลสำหรับ Java แอปพลิเคชันต่างๆ เราสามารถสร้างสภาพแวดล้อมการทำงานแบบซ้อนภายในโหนดอุปกรณ์ได้ และคุณสามารถสร้างสภาพแวดล้อมการทำงานแบบซ้อนมากกว่าหนึ่งรายการในโหนดอุปกรณ์เดียวได้
ต่อไปนี้เป็นการแสดงสภาพแวดล้อมการดำเนินการใน UML:
โหนดสภาพแวดล้อมการดำเนินการ
จะวาดไดอะแกรมการปรับใช้ได้อย่างไร?
แผนภาพการติดตั้งแสดงภาพรวมเชิงโครงสร้างของระบบทั้งหมด โดยแสดงถึงขั้นตอนการติดตั้งระบบ
ไดอะแกรมการใช้งานประกอบด้วยโหนดซึ่งอธิบายอุปกรณ์ทางกายภาพที่ใช้ภายในระบบ บนโหนดเหล่านี้ จะมีการปรับใช้อาร์ทิแฟกต์ นอกจากนี้ เรายังสามารถมีอินสแตนซ์โหนดที่อินสแตนซ์อาร์ทิแฟกต์จะถูกนำไปใช้งาน
ส่วนประกอบและองค์ประกอบต่างๆ ของระบบมีส่วนร่วมในการดำเนินการขั้นสุดท้ายของระบบ
แผนภาพการใช้งานมีบทบาทสำคัญอย่างยิ่งในกระบวนการบริหารจัดการ และต้องเป็นไปตามพารามิเตอร์ต่อไปนี้:
- ประสิทธิภาพสูง
- การบำรุงรักษา
- scalability
- Portability
- เข้าใจง่าย
โหนดและอาร์ทิแฟกต์เป็นองค์ประกอบสำคัญของการปรับใช้ ก่อนที่จะวาดไดอะแกรมการปรับใช้จริง จะต้องระบุโหนดทั้งหมดและความสัมพันธ์ระหว่างโหนดแต่ละโหนดของระบบเสียก่อน
คุณต้องรู้จักสถาปัตยกรรมของระบบ ไม่ว่าแอปพลิเคชันนั้นจะเป็นเว็บแอปพลิเคชัน คลาวด์แอปพลิเคชัน เดสก์ท็อปแอปพลิเคชัน หรือมือถือแอปพลิเคชัน สิ่งเหล่านี้ล้วนมีความสำคัญและมีบทบาทสำคัญอย่างยิ่งในการพัฒนาแผนภาพการใช้งาน
หากทราบโหนด ความสัมพันธ์ และส่วนต่างๆ ทั้งหมด ก็จะกลายเป็นเรื่องง่ายในการพัฒนาไดอะแกรมการปรับใช้
ตัวอย่างแผนภาพการปรับใช้
แผนภาพการติดตั้งต่อไปนี้แสดงการทำงานของโปรแกรมเล่นวิดีโอ HTML5 ในเบราว์เซอร์:
ไดอะแกรมการปรับใช้
เมื่อใดจึงควรใช้แผนภาพการปรับใช้
ไดอะแกรมการใช้งานส่วนใหญ่มักใช้โดยผู้ดูแลระบบ วิศวกรเครือข่าย ฯลฯ ไดอะแกรมเหล่านี้ใช้เพื่ออธิบายวิธีการปรับใช้ซอฟต์แวร์ในระบบฮาร์ดแวร์เท่านั้น โดยจะแสดงภาพว่าซอฟต์แวร์โต้ตอบกับฮาร์ดแวร์อย่างไรเพื่อดำเนินการฟังก์ชันทั้งหมด
เพื่อให้ซอฟต์แวร์ทำงานได้อย่างมีประสิทธิภาพและรวดเร็วยิ่งขึ้น ฮาร์ดแวร์จะต้องมีคุณภาพดีด้วย ต้องได้รับการออกแบบอย่างมีประสิทธิภาพเพื่อให้ซอฟต์แวร์ทำงานได้อย่างถูกต้องและให้ผลลัพธ์ที่แม่นยำในเวลาอันรวดเร็ว
แผนภาพการติดตั้งสามารถนำไปใช้ได้ในกรณีต่อไปนี้:
- การสร้างแบบจำลองโทโพโลยีเครือข่ายของระบบ
- การสร้างแบบจำลองระบบและเครือข่ายแบบกระจาย
- กระบวนการทางวิศวกรรมไปข้างหน้าและย้อนกลับ







