skip to main content
10.1145/949344.949346acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
Article

Model driven development: the case for domain oriented programming

Published:26 October 2003Publication History

ABSTRACT

In this paper, we offer an alternative vision for domain driven development (3D). Our approach is model driven and emphasizes the use of generic and specific domain oriented programming (DOP) languages. DOP uses strong specific languages, which directly incorporate domain abstractions, to allow knowledgeable end users to succinctly express their needs in the form of an application computation. Most domain driven development (3D) approaches and techniques are targeted at professional software engineers and computer scientists. We argue that DOP offers a promising alternative. Specifically we are focused on empowering application developers who have extensive domain knowledge as well as sound foundations in their professions, but may not be formally trained in computer science.We provide a brief survey of DOP experiences, which show that many of the best practices such as patterns, refactoring, and pair programming are naturally and ideally practiced in a Model Driven Development (MDD) setting. We compare and contrast our DOP with other popular approaches, most of which are deeply rooted in the OO community.Finally we highlight challenges and opportunities in the design and implementation of such languages.

References

  1. Philip Cox and Trevor Smedley, End-User and Domain-Specific Programming (EUP) Symposium, 2002 IEEE Symposia on Human Centric Computing Languages and Environments (HCC'02).Google ScholarGoogle Scholar
  2. Alan J. Perlis and Spencer Rugaber, Programming with idioms in APL, International Conference on APL Proceedings, Pages: 232 -- 235, 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. J. Hughes, Why Functional Programming Matters, Computer Journal, 32, 2, pp 98--107, 1989. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Simon Peyton Jones, Jean-Marc Eber and Julian Seward, Composing Contracts: An Adventure in Financial Engineering, ICFP 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Mark Baker, Internet Programming with OmniMark, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. APL 2002, Proceedings of the 2002 International Conference on APL: Array Processing Languages: Lore, Problems, and Applications, July 22-25, 2002, Madrid, Spain. ACM, 2002.Google ScholarGoogle Scholar
  7. Philip Wadler, Functional Programming in the Real World, http://www.research.avayalabs.com/user/wadler/realworld/.Google ScholarGoogle Scholar
  8. David B. Lamkins, Appendix A - Successful Lisp Applications, Successful Lisp: How to Understand and Use Common Lisp, <http://www.psg.com/~dlamkins/sl/appendix-a.html>.Google ScholarGoogle Scholar
  9. Dave Thomas, Ubiquitous Applications: Embedded Systems to Mainframe, Communications of the ACM <http://portal.acm.org/toc.cfm?id=J79&type=periodical&coll=portal&dl=ACM&CFID=9759906&CFTOKEN=98965897>&coll=portal&dl=ACM&CFID=9759906&CFTOKEN=98965897>&dl=ACM&CFID=9759906&CFTOKEN=98965897>&CFID=9759906&CFTOKEN=98965897>&CFTOKEN=98965897>>Volume 38, Issue 10 (October 1995). Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Visual Language Research Bibliography http://cs.oregonstate.edu/~burnett/vpl.html.Google ScholarGoogle Scholar
  11. http://wwhttp://cs.oregonstate.edu/~burnett/vpl.html#V2A4w.usenix.org/publications/library/proceedings/dsl99/technical.html <http://www.usenix.org/publications/library/proceedings/dsl99/technical.html>Google ScholarGoogle Scholar
  12. Steven T. Karris, Signals and Systems with MATLAB Applications, Orchard Publications, 2001.Google ScholarGoogle Scholar
  13. <http://www.bricklin.com/visicalc.htm>.Google ScholarGoogle Scholar
  14. <http://www.pictorius.com/>.Google ScholarGoogle Scholar
  15. http://www.maplesoft.com/products/.Google ScholarGoogle Scholar

Index Terms

  1. Model driven development: the case for domain oriented programming

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader