The benefits of using a well-designed Domain-Specific Language (DSL) are such that once trained we frequently forget that we are using one. Consider the traffic light: Imagine the user experience if the red-yellow-green lights were replaced by text descriptions of what to do at intersections, authored by each municipality. Those simple “commands” of color, position and shape clearly communicate the intersection domain.
Imagine if building enterprise applications was as easy as navigating an intersection.
Of course, the manufacturers of the lights, poles, controller electronics, optical sensors, etc., may not think that the traffic intersection DSL is so simplistic.
Using DSLs in the enterprise today is more like being the manufacturer than being the driver. The cost and complexity involved in building a finely-tuned DSL have often been more expensive than just “doing it the old way.”
But this is changing – tools and techniques exist that can radically reduce the complexity and time to market of building enterprise applications using DSLs. A basic roadmap Digital Architects follows is:
- Clearly define your problem domain.
- Don’t build what you can effectively buy.
- Start small and rapidly deliver a proof-of-concept.
- Deliver the main project using the principals of Agile, especially “deliver working software early and often”.
A recent project for one of our clients provides a good example of how this process can work. This project was the subject of two recent articles in Dr. Dobbs Journal and InformationWeek.

