ENGINEERING A COMPONENT LANGUAGE: COMPJAVA

Hans Albrecht Schmid, Marco Pfeifer

2006

Abstract

After first great enthusiasm about the new generation of component languages like ArchJava, ComponentJ and ACOEL, a closer inspection and use of these languages identified together with their strong points some smaller, but disturbing drawbacks. These might impede a wider acceptance of component languages, which would be harmful since the integration of architecture description with a programming language increases the emphasis on, and consequently the quality of application architecture. Therefore, we took an engineering approach to the construction of a new Java-based component language without these drawbacks. That means, we derived general component language requirements; designed a first language version meeting the requirements and developed a compiler; used it in several projects; and re-iterated three times through the same cycle with improved language versions. The result, called CompJava, which should be fairly stable by now, is presented in the paper.

References

  1. Aldrich, J., Chambers, C., Notkin, D., 2002, May. ArchJava: Connecting Software Architecture to Implementation. In Procs ICSE 2002, May 2002.
  2. Aldrich, J., Chambers, C., Notkin, D., 2002. Architectural Reasoning in ArchJava. In Procs ECCOP 2002, Springer LNCS, Berlin.
  3. Aldrich, J., Sazawal, V., Chambers, C., Notkin, D., 2003. Language Support for Connector Abstractions. In Procs ECCOP 2003, Springer LNCS, Berlin.
  4. Gamma, E., Helm, R., Johnson, R., Vlissides, J., 1995 Design Patterns: Elements of Reusable ObjectOriented Software. Addison-Wesley, 1995.
  5. Medvidovic, N., Rosenblum, D.S., Taylor, R.P., 1999, May. A Language and Environment for ArchitectureBased Software Development and Evolution. In Procs ICSE 1999.
  6. Medvidovic, N., Taylor, R. P., 2000. A Classification and Comparison Framework for Software Architecture Description Languages.
  7. van Ommering, R., van der Linden, F., Kramer, J., Magee, J., 2000, March. The KOALA Component Model for Consumer Electronics Software. In IEEE Computer.
  8. van Ommering, R., 2002. Building Product Populations with Software Components. In Proc. ICSE 2002.
  9. Seco, J. C., Caires, L., 2000. A Basic Model of Typed Components. In Procs. ECOOP 2000, Springer LNCS, Springer, Berlin.
  10. Schmid, H. A., Pfeifer, M., Schneider, T., 2005. A Middleware-Independent Model and Language for Component Distribution. In Proc. SEM 2005, ACM Press, New York.
  11. Sreedhar, V. C., 2002, May. Mixin' Up Components. In Procs ICSE 2002.
  12. Szyperski, C., 1997. Component Software, Beyond Object-Oriented Programming. Addison-Wesley
Download


Paper Citation


in Harvard Style

Albrecht Schmid H. and Pfeifer M. (2006). ENGINEERING A COMPONENT LANGUAGE: COMPJAVA . In Proceedings of the First International Conference on Software and Data Technologies - Volume 1: ICSOFT, ISBN 978-972-8865-69-6, pages 98-106. DOI: 10.5220/0001320100980106


in Bibtex Style

@conference{icsoft06,
author={Hans Albrecht Schmid and Marco Pfeifer},
title={ENGINEERING A COMPONENT LANGUAGE: COMPJAVA},
booktitle={Proceedings of the First International Conference on Software and Data Technologies - Volume 1: ICSOFT,},
year={2006},
pages={98-106},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0001320100980106},
isbn={978-972-8865-69-6},
}


in EndNote Style

TY - CONF
JO - Proceedings of the First International Conference on Software and Data Technologies - Volume 1: ICSOFT,
TI - ENGINEERING A COMPONENT LANGUAGE: COMPJAVA
SN - 978-972-8865-69-6
AU - Albrecht Schmid H.
AU - Pfeifer M.
PY - 2006
SP - 98
EP - 106
DO - 10.5220/0001320100980106