ArchJava: Connecting Software Architecture to Implementation
The
International Conference on Software Engineering (ICSE '02),
Orlando, Florida, May 19-25, 2002.
Jonathan Aldrich,
Craig Chambers, and
David Notkin
Software architecture describes the structure of a system, enabling more
effective design, program understanding, and formal analysis. However,
existing approaches decouple implementation code from architecture,
allowing inconsistencies, causing confusion, violating architectural
properties, and inhibiting software evolution. ArchJava is an extension
to Java that seamlessly unifies software architecture with implementation,
ensuring that the implementation conforms to architectural constraints. A
case study applying ArchJava to a circuit-design application suggests that
ArchJava can express architectural structure effectively within an
implementation, and that it can aid in program understanding and software
evolution.
To get the paper, click
here (PDF format).
ArchJava Project,
jonal@cs.washington.edu