Skip to main content

Applying a Domain Specific Language Approach to Component Oriented Programming

  • Conference paper
  • First Online:
Object-Oriented Technology: ECOOP’98 Workshop Reader (ECOOP 1998)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1543))

Included in the following conference series:

Abstract

A number of methods have been suggested to deal with component specification (e.g. Buichi and Sekerinski [1]), re-use (e.g Lalanda [2]) and fault-management (e.g Baggiolini and Harms [3]). At Durham we propose the use of a Domain Oriented method in order to specify the semantic and syntactic properties of components, to provide a framework in which to re-use and re-configure the components and to provide additional optimisation and fault-tolerant behaviour.

We are currently developing a prototype Domain Specific Language (DSL) which describes a “model” domain of cost-accounting. In order to implement this prototype we are using Java, CORBA and JESS (Java Expert System Shell [4]) and a distributed component model. Different categories of component types (e.g. persistent components) are being identified and guidelines for their use documented. By developing many little languages (as per Deursen and Klint [5]) it is claimed that the maintenance effort will be reduced. After the implementation and evaluation of this “toy domain”, we propose to apply these techniques to an industrial software system by working closely with a large telecommunications company.

This paper identifies a number of issues which the authors feel are important for Component Oriented Programming to succeed. Then we define DSL’ s and outline how and why we are using them, first in general terms and then in terms of the issues outlined earlier.

In order to promote component re-use we are advocating automating some methods of error detection which will be encoded into the DSL. This will enable a current configuration of components to detect certain error conditions and, with the help of extra domain knowledge and the underlying system architecture, attempt to remedy the situation.

This is followed by a brief overview of the supporting architecture which has been developed to allow the mapping of DSL constructs to component code and to automatically insert test code where applicable. This architecture is currently being implemented in Java and CORBA at the University of Durham. We have also included an outline of the “toy domain” DSL language.

Although this architecture addresses many important aspects of re-use, it is acknowledged that it is still based on the assumption of “as is” re-use or human intervention at times of component development. However it is argued that for this approach these are not unreasonable assumptions.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. M. Buichi and E. Sekerinski Formal methods for component software: The refinement calculus perspective. presented at WCOP 97, Finland, 1997.

    Google Scholar 

  2. P. Lalanda A control model for the dynamic selection and configuration of software components presented at WCOP 97, Finland, 1997.

    Google Scholar 

  3. V. Baggiolini and J. Harms toward automatic, run-time fault management for component-based applciations presented at WCOP 97, Finland, 1997.

    Google Scholar 

  4. E. Friedman-Hill Java Expert system Shell (JESS) vol. 4.0Beta. http://herzberg.ca.sandia.gov/jess/ Sandia National Laboratories, 1997.

  5. A. v. Deursen and P. Klint Little Languages: Little Maintenance? CWI, Amsterdam December 16, 1996

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1998 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ingham, J., Munro, M. (1998). Applying a Domain Specific Language Approach to Component Oriented Programming. In: Demeyer, S., Bosch, J. (eds) Object-Oriented Technology: ECOOP’98 Workshop Reader. ECOOP 1998. Lecture Notes in Computer Science, vol 1543. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-49255-0_36

Download citation

  • DOI: https://doi.org/10.1007/3-540-49255-0_36

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-65460-5

  • Online ISBN: 978-3-540-49255-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics