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
- Aldrich, J., Chambers, C., Notkin, D., 2002, May. ArchJava: Connecting Software Architecture to Implementation. In Procs ICSE 2002, May 2002.
- Aldrich, J., Chambers, C., Notkin, D., 2002. Architectural Reasoning in ArchJava. In Procs ECCOP 2002, Springer LNCS, Berlin.
- Aldrich, J., Sazawal, V., Chambers, C., Notkin, D., 2003. Language Support for Connector Abstractions. In Procs ECCOP 2003, Springer LNCS, Berlin.
- Gamma, E., Helm, R., Johnson, R., Vlissides, J., 1995 Design Patterns: Elements of Reusable ObjectOriented Software. Addison-Wesley, 1995.
- Medvidovic, N., Rosenblum, D.S., Taylor, R.P., 1999, May. A Language and Environment for ArchitectureBased Software Development and Evolution. In Procs ICSE 1999.
- Medvidovic, N., Taylor, R. P., 2000. A Classification and Comparison Framework for Software Architecture Description Languages.
- van Ommering, R., van der Linden, F., Kramer, J., Magee, J., 2000, March. The KOALA Component Model for Consumer Electronics Software. In IEEE Computer.
- van Ommering, R., 2002. Building Product Populations with Software Components. In Proc. ICSE 2002.
- Seco, J. C., Caires, L., 2000. A Basic Model of Typed Components. In Procs. ECOOP 2000, Springer LNCS, Springer, Berlin.
- 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.
- Sreedhar, V. C., 2002, May. Mixin' Up Components. In Procs ICSE 2002.
- Szyperski, C., 1997. Component Software, Beyond Object-Oriented Programming. Addison-Wesley
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