Technical Program
  Invited Speakers
  Technical Papers
  Practitioner Reports
Educators' Symposium
Doctoral Symposium
Student Research Comp.
Turing Lecture
Social Events
Week at a Glance
Final Program (1.5M .pdf)

Find in Program


view, help

"Modeling and Implementing Software Architecture with Acme and ArchJava"
Object-Oriented Programming, Systems, Languages and Applications
Home    Program    Housing & Transportation    Registration    Submissions    Wiki    Maps

 : All Demonstrations : Wednesday : Wednesday Demonstrations

Modeling and Implementing Software Architecture with Acme and ArchJava

Courtyard, Demo room 1
Wednesday, 15:30, 45 minutes


This event is also being given Tuesday at 12:30.

Jonathan Aldrich, Carnegie Mellon University

Demonstration number: 3

Software architecture describes the high-level organization of a software system, and is essential both for reasoning about system properties and for implementing and evolving code. This demonstration will describe two architecture-related tools: AcmeStudio for architectural modeling and analysis, and ArchJava for ensuring consistency between architecture and implementation.

AcmeStudio is an architectural design tool based on Eclipse, supporting graphical and textual descriptions of software architecture as well as various forms of architectural analysis. We will show how to create an architecture in Acme and check it against the constraints of an architectural style such as pipe-and-filter.

ArchJava extends the Java language to include explicit architectural modeling constructs, and uses type system techniques to ensure that the implementation conforms to the architecture. We will show how AcmeStudio can generate skeleton ArchJava code, how developers can fill in this architecture with an implementation using an Eclipse-based ArchJava IDE, and how ArchJava's type system can help the developer to maintain consistency between code and architecture.

Additional information about ArchJava and AcmeStudio is available at http://www.archjava.org/ and http://www.cs.cmu.edu/~acme/AcmeStudio/.