กลับไปหน้าบทความ

อ่าน 3 นาที

วิศวกรรมที่ขับเคลื่อนด้วยแบบจำลอง

วิศวกรรมที่ขับเคลื่อนด้วยแบบจำลอง (Model-driven engineering หรือ MDE ) เป็น วิธีการพัฒนาซอฟต์แวร์ ที่เน้นการสร้างและใช้ประโยชน์ จากแบบจำลองโดเมน ซึ่งเป็น แบบจำลองเชิงแนวคิด...

วิศวกรรมที่ขับเคลื่อนด้วยแบบจำลอง

วิศวกรรมที่ขับเคลื่อนด้วยแบบจำลอง (Model-driven engineeringหรือMDE ) เป็นวิธีการพัฒนาซอฟต์แวร์ที่เน้นการสร้างและใช้ประโยชน์จากแบบจำลองโดเมนซึ่งเป็นแบบจำลองเชิงแนวคิดของหัวข้อทั้งหมดที่เกี่ยวข้องกับปัญหาเฉพาะ ดังนั้นจึงเน้นและมุ่งเป้าไปที่ การแสดง ความรู้ และกิจกรรม ที่เป็นนามธรรมซึ่งควบคุมโดเมนแอปพลิเคชัน เฉพาะ มากกว่าแนวคิดด้านการคำนวณ (เช่น แนวคิดเชิงอัลกอริทึม )

MDE เป็นสาขาย่อยของ แนวทาง การออกแบบซอฟต์แวร์ที่เรียกว่าวิศวกรรมแบบรอบด้านขอบเขตของ MDE กว้างกว่าสถาปัตยกรรมแบบขับเคลื่อนด้วยโมเดล มาก [ 1 ]

ภาพรวม

แนวทาง MDE มุ่งเน้นการเพิ่มผลผลิตโดยการเพิ่มความเข้ากันได้ระหว่างระบบให้สูงสุด (ผ่านการใช้โมเดลมาตรฐานซ้ำ) ลดความซับซ้อนของกระบวนการออกแบบ (ผ่านโมเดลของรูปแบบการออกแบบ ที่เกิดขึ้นซ้ำ ในโดเมนแอปพลิเคชัน) และส่งเสริมการสื่อสารระหว่างบุคคลและทีมที่ทำงานในระบบ (ผ่านการกำหนดมาตรฐานของคำศัพท์และแนวปฏิบัติที่ดีที่สุดที่ใช้ในโดเมนแอปพลิเคชัน) ตัวอย่างเช่น ในการพัฒนาแบบขับเคลื่อนด้วยโมเดล สิ่งประดิษฐ์ทางเทคนิค เช่น ซอร์สโค้ด เอกสาร การทดสอบ และอื่นๆ จะถูกสร้างขึ้นตามอัลกอริทึมจากโมเดลโดเมน[ 2 ]

รูปแบบการสร้างแบบจำลองสำหรับ MDE ถือว่ามีประสิทธิภาพหากแบบจำลองนั้นมีความหมายในมุมมองของผู้ใช้ที่คุ้นเคยกับโดเมน และสามารถใช้เป็นพื้นฐานในการพัฒนาระบบได้ แบบจำลองเหล่านี้ได้รับการพัฒนาผ่านการสื่อสารอย่างกว้างขวางระหว่างผู้จัดการผลิตภัณฑ์ นักออกแบบ นักพัฒนา และผู้ใช้ในโดเมนแอปพลิเคชัน เมื่อแบบจำลองใกล้เสร็จสมบูรณ์แล้ว ก็จะช่วยให้สามารถพัฒนาซอฟต์แวร์และระบบได้

โครงการริเริ่มของ MDE ที่เป็นที่รู้จักกันดีบางส่วน ได้แก่:

  • กลุ่มการจัดการวัตถุ (OMG) ริเริ่มสถาปัตยกรรมที่ขับเคลื่อนด้วยแบบจำลอง (MDA) ซึ่งใช้ประโยชน์จากมาตรฐานหลายอย่าง เช่นMeta-Object Facility , XMI , CWM , CORBA , Unified Modeling Language (กล่าวให้แม่นยำยิ่งขึ้น ปัจจุบัน OMG สนับสนุนการใช้ชุดย่อยของ UML ที่เรียกว่าfUMLร่วมกับภาษาการดำเนินการALF สำหรับ สถาปัตยกรรมที่ขับเคลื่อนด้วยแบบจำลอง แนวทางก่อนหน้านี้อาศัย Executable UML และOCLแทน) และQVT [ 3 ]
  • ระบบนิเวศของเครื่องมือการเขียนโปรแกรมและการสร้างแบบจำลองของEclipseซึ่ง โดยทั่วไปแล้วแสดงด้วย ( Eclipse Modeling Framework ) นั้น เฟรมเวิร์กนี้อนุญาตให้สร้างเครื่องมือที่ใช้มาตรฐาน MDA ของ OMG ได้ แต่ก็สามารถใช้สร้างเครื่องมืออื่นๆ ที่เกี่ยวข้องกับการสร้างแบบจำลองได้เช่นกัน

ประวัติศาสตร์

แผนภูมิแสดงความสัมพันธ์ระหว่างการสร้างและการแสดงผลระหว่างเมตาโมเดล โมเดล และต้นฉบับ (เป็นภาษาฝรั่งเศส)

เครื่องมือแรกๆ ที่สนับสนุน MDE คือเครื่องมือ Computer-Aided Software Engineering ( CASE ) ที่พัฒนาขึ้นในทศวรรษ 1980 บริษัทต่างๆ เช่น Integrated Development Environments (IDE – StP), Higher Order Software (ปัจจุบันคือ Hamilton Technologies, Inc., HTI), Cadre Technologies, Bachman Information SystemsและLogic Works (BP-Win และ ER-Win) เป็นผู้บุกเบิกในสาขานี้

รัฐบาลสหรัฐฯ เข้ามามีส่วนร่วมในการกำหนดนิยามของแบบจำลอง โดยสร้าง ข้อกำหนด IDEFขึ้นมา ด้วยนิยามของแบบจำลองหลายรูปแบบ (ดูBooch , Rumbaugh , Jacobson , Gane และ Sarson, Harel , Shlaer และ Mellorและอื่นๆ) ในที่สุดก็ถูกรวมเข้าด้วยกันจนเกิดเป็นภาษาสร้างแบบจำลองรวม (Unified Modeling Language หรือ UML) Rational Roseซึ่งเป็นผลิตภัณฑ์สำหรับการใช้งาน UML นั้น พัฒนาโดย Rational Corporation (Booch) โดยมองว่าระบบอัตโนมัติจะนำไปสู่ระดับนามธรรมที่สูงขึ้นในการพัฒนาซอฟต์แวร์ นามธรรมนี้ส่งเสริมแบบจำลองที่ง่ายขึ้นและเน้นที่พื้นที่ปัญหามากขึ้น เมื่อรวมกับความหมายที่สามารถดำเนินการได้ จะช่วยยกระดับระบบอัตโนมัติโดยรวมให้สูงขึ้นกลุ่มการจัดการวัตถุ (Object Management Groupหรือ OMG) ได้พัฒนาชุดมาตรฐานที่เรียกว่า สถาปัตยกรรมขับเคลื่อนด้วยแบบจำลอง (Model-Driven Architectureหรือ MDA) ซึ่งเป็นรากฐานสำหรับแนวทางที่เน้นสถาปัตยกรรมขั้นสูงนี้

เอกสารวิจัยฉบับแรกที่อ้างถึง MDE อย่างชัดเจนปรากฏอยู่ใน[ 4 ]แนวคิดเหล่านี้มีต้นกำเนิดมาจากงานของกลุ่ม "Precise UML" (pUML) ซึ่งประกอบด้วยนักวิจัย ได้แก่Robert France , Bernhard Rumpe , Kevin Lanoและคนอื่นๆ

ข้อดี

ตามที่Douglas C. Schmidtกล่าว เทคโนโลยีวิศวกรรมที่ขับเคลื่อนด้วยแบบจำลองนำเสนอแนวทางที่น่าสนใจในการแก้ไขปัญหาความไม่สามารถของภาษาเจเนอเรชั่นที่สามในการลดความซับซ้อนของแพลตฟอร์มและแสดงแนวคิดโดเมนได้อย่างมีประสิทธิภาพ[ 5 ]

เครื่องมือ

เครื่องมือซอฟต์แวร์ที่โดดเด่นสำหรับการวิศวกรรมแบบจำลอง ได้แก่:

ดูเพิ่มเติม

อ่านเพิ่มเติม

  • David S. Frankel , สถาปัตยกรรมที่ขับเคลื่อนด้วยแบบจำลอง: การประยุกต์ใช้ MDA กับการประมวลผลระดับองค์กร , John Wiley & Sons, ISBN 0-471-31920-1
  • Marco Brambilla, Jordi Cabot, Manuel Wimmer, วิศวกรรมซอฟต์แวร์ที่ขับเคลื่อนด้วยแบบจำลองในทางปฏิบัติ , คำนำโดยRichard Soley ( ประธาน OMG ), Morgan & Claypool, สหรัฐอเมริกา, 2012, ชุดบรรยายสังเคราะห์ด้านวิศวกรรมซอฟต์แวร์ #1. 182 หน้า. ISBN 9781608458820(ปกอ่อน) ISBN 9781608458837(อีบุ๊ก) https://www.mdse-book.com
  • da Silva, Alberto Rodrigues (2015). "วิศวกรรมที่ขับเคลื่อนด้วยแบบจำลอง: การสำรวจที่ได้รับการสนับสนุนโดยแบบจำลองเชิงแนวคิดที่เป็นหนึ่งเดียว" . ภาษาคอมพิวเตอร์ ระบบ และโครงสร้าง . 43 (43): 139– 155. doi : 10.1016/j.cl.2015.06.001 .
  • สถาปัตยกรรมที่ขับเคลื่อนด้วยแบบจำลอง: วิสัยทัศน์ มาตรฐาน และเทคโนโลยีเกิดใหม่ที่ omg.org
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Model-driven_engineering&oldid=1360265994 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ วิศวกรรมที่ขับเคลื่อนด้วยแบบจำลอง

วิศวกรรมที่ขับเคลื่อนด้วยแบบจำลอง (Model-driven engineering หรือ MDE ) เป็น วิธีการพัฒนาซอฟต์แวร์ ที่เน้นการสร้างและใช้ประโยชน์ จากแบบจำลองโดเมน ซึ่งเป็น แบบจำลองเชิงแนวคิด...

ภาพรวม

แนวทาง MDE มุ่งเน้นการเพิ่มผลผลิตโดยการเพิ่มความเข้ากันได้ระหว่างระบบให้สูงสุด (ผ่านการใช้โมเดลมาตรฐานซ้ำ) ลดความซับซ้อนของกระบวนการออกแบบ (ผ่านโมเดลของ รูปแบบการออกแบบ ที่เกิดขึ้นซ้ำ ในโดเมนแอปพลิเคชัน) และส่งเสริมการสื่อสารระหว่างบุคคลและทีมที่ทำงานในระบบ...

ประวัติศาสตร์

เครื่องมือแรกๆ ที่สนับสนุน MDE คือเครื่องมือ Computer-Aided Software Engineering ( CASE ) ที่พัฒนาขึ้นในทศวรรษ 1980 บริษัทต่างๆ เช่น Integrated Development Environments (IDE – StP), Higher Order Software (ปัจจุบันคือ Hamilton Technologies, Inc.

ข้อดี

ตามที่ Douglas C. Schmidt กล่าว เทคโนโลยีวิศวกรรมที่ขับเคลื่อนด้วยแบบจำลองนำเสนอแนวทางที่น่าสนใจในการแก้ไขปัญหาความไม่สามารถของภาษาเจเนอเรชั่นที่สามในการลดความซับซ้อนของแพลตฟอร์มและแสดงแนวคิดโดเมนได้อย่างมีประสิทธิภาพ [ 5 ]