BYTE.com
RSS feed

Newsletter
Free E-mail Newsletter from BYTE.com
Email Address
First Name
Last Name




 
    
             
BYTE.com > Features > 2005

Modeling with Domain-Specific Languages

By Martijn Iseger, Juha-Pekka Tolvanen

December 2, 2005

(Modeling with Domain-Specific Languages :  Page 1 of 1 )



Domain-specific languages (DSLs) may well lead many of us away from the one-size-fits-all approach of current programming and design languages like C, Java, and UML. They raise the level of abstraction of development from coding to more real-world objects, yet allow in many cases to generate final products from the high-level specifications. This makes development truly model-driven. DSLs took center stage during recent leading conferences like OOP, OOPSLA, UML & Design World, and the ACM/IEEE MoDELS conference. What are DSLs? How do they differ from their more generic counterparts and why have they started receiving so much attention? In this article, we focus on the use of DSLs for modeling and therefore speaks about Domain-Specific Modeling (DSM) languages instead of DSLs, which usually have been text-based languages, often backed by dedicated compilers.

The Problem With Generic Languages

One reason for the growing interest in DSM is the possibility it offers for accelerating software and system development by making it truly model-driven: Design the solution with real-world domain concepts and generate full products in code or configuration files from these higher-level designs. Traditionally, design and programming languages have focused on implementation concepts and have thus offered only modest possibilities to raise the level of abstraction and automate development (see Figure 1).

The first step in developing any software or system is to think of a solution in terms that relate to the problem domain of the software. If we are developing a portal for insurance product comparison and purchase, we will use insurance domain concepts like "Risk", "Bonus", and "Damage" while we define the insurance products (the solution). For developing voice menus for a home automation system on the other hand, we will think in terms of "Menus", "Prompts", "Voice Entries" and when we develop applications for TV set-top boxes, we probably work with concepts such as "Channel", "Program Guide", "Aspect Ratio", and the like.

 Page 1 of 1 


BYTE.com > Features > 2005
Dr. Dobb's Media Center
BYTE.com Store

BYTE CD-ROM
NOW, on one CD-ROM, you can instantly access more than 8 years of BYTE.
 
The Best of BYTE: Volume 2 - Heuristic Algorithms
The Best of BYTE: Volume 2 - Heuristic Algorithms
In this volume of Best of BYTE, we explore the emergence of some heuristic algorithms. Although we have only scratched the surface of this intriguing subject, we hope we've suggested the potential of the synthesis of heuristics and algorithms.

© 2008 Think Services, Privacy Policy, Terms of Service, United Business Media Limited
Site comments: webmaster@byte.com
Web Sites: BYTE.com, dotnetjunkies.com, Dr. Dobb's Journal, SD Expo, Sys Admin, sqljunkies.com, Unixreview



MarketPlace
IT Service Management that Delivers. Real Value. Real Flexibility. Real Results. Free Demo.
Automatically capture customer crash data, no debugger required. Support for .NET, C++, OS X, Java.
One Stop to Buy All Your Business IT Solutions. Browse Through Dell's Best Deals Online Now!
Find Scalable and Secure Dell� Network Server Solutions at Dell� - Official Site.
Advance Your Business Technology Now with the Thin and Portable Business Solutions at Dell.com Now!
Wanna see your ad here?
 

web2