อ่าน 3 นาที
การสร้างแบบจำลองเฉพาะโดเมน
การสร้างแบบจำลองเฉพาะโดเมน (Domain-specific modeling หรือ DSM ) เป็น วิธี การทางวิศวกรรมซอฟต์แวร์ สำหรับการออกแบบและพัฒนาระบบ เช่น ซอฟต์แวร์คอมพิวเตอร์ โดยเกี่ยวข้องกับการใช้...
การสร้างแบบจำลองเฉพาะโดเมน
การสร้างแบบจำลองเฉพาะโดเมน (Domain-specific modelingหรือDSM ) เป็นวิธีการทางวิศวกรรมซอฟต์แวร์ สำหรับการออกแบบและพัฒนาระบบ เช่นซอฟต์แวร์คอมพิวเตอร์โดยเกี่ยวข้องกับการใช้ภาษาเฉพาะโดเมนอย่างเป็นระบบเพื่อแสดงแง่มุมต่างๆ ของระบบ
ภาษาสร้างแบบจำลองเฉพาะโดเมนมีแนวโน้มที่จะรองรับนามธรรม ระดับสูง กว่า ภาษา สร้างแบบจำลองทั่วไปดังนั้นจึงใช้ความพยายามน้อยลงและรายละเอียดระดับต่ำน้อยลงในการกำหนดระบบที่กำหนด
ภาพรวม
การสร้างแบบจำลองเฉพาะโดเมนมักจะรวมถึงแนวคิดของการสร้างโค้ด ด้วย กล่าว คือการสร้างซอร์สโค้ด ที่สามารถเรียกใช้งานได้ โดยอัตโนมัติจากแบบจำลองภาษาเฉพาะโดเมน การที่ไม่ต้องสร้างและบำรุงรักษาซอร์สโค้ดด้วยตนเองหมายความว่าภาษาเฉพาะโดเมนสามารถปรับปรุงประสิทธิภาพการทำงานของนักพัฒนาได้อย่างมาก[ 1 ]ความน่าเชื่อถือของการสร้างอัตโนมัติเมื่อเทียบกับการเขียนโค้ดด้วยตนเองจะช่วยลดจำนวนข้อบกพร่องในโปรแกรมที่ได้ ซึ่งจะช่วยปรับปรุงคุณภาพ
ภาษาเฉพาะโดเมนแตกต่างจากความพยายามสร้างโค้ดในยุคแรกๆ เช่น เครื่องมือ CASEในช่วงทศวรรษ 1980 หรือ เครื่องมือ UMLในช่วงทศวรรษ 1990 ในทั้งสองกรณีนั้น ตัวสร้างโค้ดและภาษาสร้างแบบจำลองถูกสร้างขึ้นโดยผู้จำหน่ายเครื่องมือ แม้ว่าจะเป็นไปได้ที่ผู้จำหน่ายเครื่องมือจะสร้างภาษาเฉพาะโดเมนและตัวสร้างโค้ด แต่โดยทั่วไปแล้ว ภาษาเฉพาะโดเมนจะเกิดขึ้นภายในองค์กรเดียวกัน นักพัฒนาผู้เชี่ยวชาญหนึ่งหรือสองคนสร้างภาษาสร้างแบบจำลองและตัวสร้างโค้ด และนักพัฒนาคนอื่นๆ ก็ใช้งานสิ่งเหล่านั้น
การที่องค์กรที่จะใช้งานเป็นผู้สร้างภาษาสร้างแบบจำลองและเครื่องมือสร้างแบบจำลองเอง จะช่วยให้สอดคล้องกับขอบเขตการใช้งานเฉพาะของพวกเขา และสามารถตอบสนองต่อการเปลี่ยนแปลงในขอบเขตการใช้งานนั้นได้อย่างแม่นยำ
ภาษาเฉพาะโดเมนโดยทั่วไปสามารถครอบคลุมระดับนามธรรมที่หลากหลายสำหรับโดเมนเฉพาะนั้นๆ ตัวอย่างเช่น ภาษาสร้างแบบจำลองเฉพาะโดเมนสำหรับโทรศัพท์มือถืออาจอนุญาตให้ผู้ใช้ระบุระดับนามธรรมสูงสำหรับส่วนติดต่อผู้ใช้รวมถึงระดับนามธรรมที่ต่ำกว่าสำหรับการจัดเก็บข้อมูล เช่น หมายเลขโทรศัพท์หรือการตั้งค่า ในทำนองเดียวกัน ภาษาสร้างแบบจำลองเฉพาะโดเมนสำหรับบริการทางการเงินอาจอนุญาตให้ผู้ใช้ระบุระดับนามธรรมสูงสำหรับลูกค้า รวมถึงระดับนามธรรมที่ต่ำกว่าสำหรับการใช้งานอัลกอริทึมการซื้อขายหุ้นและพันธบัตร
หัวข้อ
การกำหนดภาษาเฉพาะโดเมน
ในการกำหนดภาษา จำเป็นต้องมีภาษาสำหรับเขียนคำจำกัดความนั้น ภาษาของแบบจำลองมักเรียกว่าเมตาแบบจำลองดังนั้น ภาษาที่ใช้ในการกำหนดภาษาของแบบจำลองจึงเรียกว่า เมตา-เมตาแบบจำลอง เมตา-เมตาแบบจำลองสามารถแบ่งออกได้เป็นสองกลุ่ม ได้แก่ กลุ่มที่ได้มาจากหรือปรับแต่งจากภาษาที่มีอยู่แล้ว และกลุ่มที่พัฒนาขึ้นมาโดยเฉพาะในฐานะเมตา-เมตาแบบจำลอง
เมตา-เมตาโมเดลที่ได้มานั้น ได้แก่แผนภาพความสัมพันธ์ระหว่างเอนทิตีภาษาเชิงรูปธรรม รูปแบบ Backus–Naur แบบขยาย (EBNF) ภาษาออนโทโลยี สคีมา XML และ Meta -Object Facility (MOF) จุดแข็งของภาษาเหล่านี้มักอยู่ที่ความคุ้นเคยและความเป็นมาตรฐานของภาษาดั้งเดิม
แนวคิดของการสร้างแบบจำลองเฉพาะโดเมนสนับสนุนการสร้างภาษาใหม่สำหรับงานเฉพาะ ดังนั้นจึงไม่น่าแปลกใจที่มีภาษาใหม่ๆ ที่ออกแบบมาเป็นเมตา-เมตาโมเดล ตระกูลภาษาที่ใช้กันอย่างแพร่หลายที่สุดคือ OPRR [ 2 ] [ 3 ] GOPRR [ 4 ]และ GOPPRR ซึ่งมุ่งเน้นการสนับสนุนสิ่งต่างๆ ที่พบในภาษาการสร้างแบบจำลองด้วยความพยายามน้อยที่สุด
การสนับสนุนเครื่องมือสำหรับภาษาเฉพาะโดเมน
ภาษา สร้างแบบจำลองทั่วไปหลายภาษา มีเครื่องมือสนับสนุนอยู่แล้วในรูปแบบของ เครื่องมือ CASEส่วนภาษาเฉพาะโดเมนนั้น มักมีตลาดขนาดเล็กเกินไปที่จะสนับสนุนการสร้างเครื่องมือ CASE ขึ้นมาใหม่ทั้งหมด ดังนั้น เครื่องมือสนับสนุนสำหรับภาษาเฉพาะโดเมนส่วนใหญ่จึงสร้างขึ้นจากเฟรมเวิร์กภาษาเฉพาะโดเมนที่มีอยู่แล้ว หรือผ่านสภาพแวดล้อมภาษาเฉพาะโดเมน
อาจมองสภาพแวดล้อมภาษาเฉพาะโดเมนว่าเป็นเครื่องมือสร้างแบบจำลองเชิงอภิมาน (metamodeling tool) กล่าวคือ เป็นเครื่องมือสร้างแบบจำลองที่ใช้ในการกำหนดเครื่องมือสร้างแบบจำลองหรือเครื่องมือ CASE เครื่องมือที่ได้อาจทำงานภายในสภาพแวดล้อมภาษาเฉพาะโดเมน หรืออาจสร้างขึ้นเป็นโปรแกรมแบบสแตนด์อะโลนแยกต่างหาก ซึ่งพบได้น้อยกว่า ในกรณีทั่วไป สภาพแวดล้อมภาษาเฉพาะโดเมนจะรองรับระดับนามธรรม เพิ่มเติม เมื่อเทียบกับเครื่องมือ CASE แบบดั้งเดิม
การใช้สภาพแวดล้อมภาษาเฉพาะโดเมนสามารถลดต้นทุนในการจัดหาเครื่องมือสนับสนุนสำหรับภาษาเฉพาะโดเมนได้อย่างมาก เนื่องจากสภาพแวดล้อมภาษาเฉพาะโดเมนที่ออกแบบมาอย่างดีจะช่วยสร้างส่วนประกอบของโปรแกรมโดยอัตโนมัติ ซึ่งหากสร้างเองตั้งแต่เริ่มต้นจะมีต้นทุนสูง เช่น โปรแกรมแก้ไขข้อความ เบราว์เซอร์ และส่วนประกอบเฉพาะโดเมน ผู้เชี่ยวชาญเฉพาะโดเมนเพียงแค่ต้องระบุโครงสร้างและกฎเฉพาะโดเมนเท่านั้น และสภาพแวดล้อมภาษาเฉพาะโดเมนจะจัดหาเครื่องมือสร้างแบบจำลองที่ปรับแต่งมาสำหรับโดเมนเป้าหมาย
ภาษาเฉพาะโดเมนที่มีอยู่ส่วนใหญ่ทำงานอยู่ภายในสภาพแวดล้อมภาษาเฉพาะโดเมน ไม่ว่าจะเป็นเชิงพาณิชย์ เช่นMetaEdit+หรือActifsourceโอเพนซอร์ส เช่นGEMSหรือเชิงวิชาการ เช่นGMEความนิยมที่เพิ่มขึ้นของภาษาเฉพาะโดเมนทำให้มีการเพิ่มเฟรมเวิร์กภาษาเฉพาะโดเมนเข้าไปใน IDE ที่มีอยู่ เช่นEclipse Modeling Project (EMP) พร้อมด้วยEMFและGMFหรือในDSL Tools for Software Factoriesของ Microsoft
ภาษาเฉพาะโดเมนและ UML
ภาษาสร้างแบบจำลองรวม (UML) เป็น ภาษา สร้างแบบจำลองอเนกประสงค์สำหรับระบบที่เน้นซอฟต์แวร์ ซึ่งออกแบบมาเพื่อรองรับการเขียนโปรแกรมเชิงวัตถุ เป็นหลัก ดังนั้น เมื่อเปรียบเทียบกับภาษาเฉพาะโดเมน UML จึงถูกนำไปใช้ในหลากหลายวัตถุประสงค์ในวงกว้าง องค์ประกอบพื้นฐานที่ UML นำเสนอคือองค์ประกอบของการเขียนโปรแกรมเชิงวัตถุ ในขณะที่ภาษาเฉพาะโดเมนนำเสนอองค์ประกอบพื้นฐานที่มีความหมายคุ้นเคยสำหรับผู้ปฏิบัติงานทุกคนในโดเมนนั้น ตัวอย่างเช่น ในโดเมนของวิศวกรรมยานยนต์จะมีแบบจำลองซอฟต์แวร์เพื่อแสดงคุณสมบัติของระบบเบรกป้องกันล้อล็อกหรือพวงมาลัยเป็นต้น
UML มีกลไกการสร้างโปรไฟล์ที่ช่วยให้สามารถจำกัดและปรับแต่ง UML ให้เหมาะสมกับโดเมนและแพลตฟอร์มเฉพาะได้ โปรไฟล์ UML ใช้สเตอริโอไทป์คุณลักษณะของสเตอริโอไทป์ (หรือที่เรียกว่าค่าแท็กก่อน UML 2.0) และข้อจำกัดเพื่อจำกัดและขยายขอบเขตของ UML ให้เหมาะสมกับโดเมนเฉพาะ ตัวอย่างที่รู้จักกันดีที่สุดของการปรับแต่ง UML สำหรับโดเมนเฉพาะคือSysMLซึ่งเป็นภาษาเฉพาะโดเมนสำหรับวิศวกรรม ระบบ
UML เป็นตัวเลือกยอดนิยมสำหรับแนวทางการพัฒนาแบบใช้โมเดลเป็นหลักต่างๆ โดยที่สิ่งประดิษฐ์ทางเทคนิค เช่น ซอร์สโค้ด เอกสาร การทดสอบ และอื่นๆ จะถูกสร้างขึ้นตามอัลกอริทึมจากโมเดลโดเมน ตัวอย่างเช่น โปรไฟล์แอปพลิเคชันของมาตรฐานเอกสารทางกฎหมายAlberto Álvarez O.สามารถพัฒนาได้โดยการแสดงแนวคิดทางกฎหมายและออนโทโลยีในออบเจ็กต์คลาส UML [ 5 ]
ดูเพิ่มเติม
- วิศวกรรมซอฟต์แวร์โดยใช้คอมพิวเตอร์ช่วย
- การออกแบบที่ขับเคลื่อนด้วยโดเมน
- ภาษาเฉพาะโดเมน
- ภาษาสร้างแบบจำลองเฉพาะเฟรมเวิร์ก
- การสร้างแบบจำลองอเนกประสงค์
- การสร้างแบบจำลองหลายแบบเฉพาะโดเมน
- วิศวกรรมที่ขับเคลื่อนด้วยแบบจำลอง
- สถาปัตยกรรมที่ขับเคลื่อนด้วยแบบจำลอง
- โรงงานซอฟต์แวร์
- การสร้างแบบจำลองเฉพาะสาขาวิชา
ลิงก์ภายนอก
- การสร้างแบบจำลองเฉพาะโดเมนสำหรับการพัฒนาซอฟต์แวร์เชิงสร้างสรรค์เก็บถาวรเมื่อ 31 มกราคม 2010 ที่Wayback Machineบทความบนเว็บโดย Martijn Iseger, 2010
- การสร้างแบบจำลองเฉพาะโดเมนในกรอบงาน IoCบทความออนไลน์โดยKe Jin , 2007
- การสร้างแบบจำลองเฉพาะโดเมนสำหรับการสร้างโค้ดแบบสมบูรณ์จากวิธีการและเครื่องมือบทความออนไลน์โดย Juha-Pekka Tolvanen, 2005
- การสร้างภาษาสร้างแบบจำลองเฉพาะโดเมนสำหรับเฟรมเวิร์กที่มีอยู่บทความออนไลน์โดย Juha-Pekka Tolvanen, 2006
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ การสร้างแบบจำลองเฉพาะโดเมน
การสร้างแบบจำลองเฉพาะโดเมน (Domain-specific modeling หรือ DSM ) เป็น วิธี การทางวิศวกรรมซอฟต์แวร์ สำหรับการออกแบบและพัฒนาระบบ เช่น ซอฟต์แวร์คอมพิวเตอร์ โดยเกี่ยวข้องกับการใช้...
ภาพรวม
การสร้างแบบจำลองเฉพาะโดเมนมักจะรวมถึงแนวคิดของ การสร้างโค้ด ด้วย กล่าว คือการสร้าง ซอร์สโค้ด ที่สามารถเรียกใช้งานได้ โดยอัตโนมัติ จากแบบจำลองภาษาเฉพาะโดเมน...
การกำหนดภาษาเฉพาะโดเมน
ในการกำหนดภาษา จำเป็นต้องมีภาษาสำหรับเขียนคำจำกัดความนั้น ภาษาของแบบจำลองมักเรียกว่า เมตาแบบจำลอง ดังนั้น ภาษาที่ใช้ในการกำหนดภาษาของแบบจำลองจึงเรียกว่า เมตา-เมตาแบบจำลอง เมตา-เมตาแบบจำลองสามารถแบ่งออกได้เป็นสองกลุ่ม ได้แก่...
การสนับสนุนเครื่องมือสำหรับภาษาเฉพาะโดเมน
ภาษา สร้างแบบจำลองทั่วไป หลายภาษา มีเครื่องมือสนับสนุนอยู่แล้วในรูปแบบของ เครื่องมือ CASE ส่วนภาษาเฉพาะโดเมนนั้น มักมีตลาดขนาดเล็กเกินไปที่จะสนับสนุนการสร้างเครื่องมือ CASE ขึ้นมาใหม่ทั้งหมด ดังนั้น...