|
A Style-neutral Architecture Description Language
Project Description
Acme is a simple, generic software architecture description language
(ADL) that can be used as a common interchange format for architecture
design tools and/or as a foundation for developing new architectural
design and analysis tools.
The Acme language and toolkit provide three fundamental capabilities:
- Architecture Description. Acme has emerged as a useful
architecture description language in its own right. It provides a
straightforward set of language constructs for describing
architectural structure, architectural types and styles, and annotated
properties of the architectural elements. Although not appropriate for
all applications, the Acme architecture description language provides
a good introduction to architectural modelling, and an easy way to
describe relatively simple software architectures.
- Extensible foundation for new architecture design and analysis
tools. Many, if not most, architectural design and analysis tools
require a representation for describing, storing, and manipulating
architectural designs. Unfortunately, developing good architectural
representations is difficult, time consuming, and costly. Acme can
mitigate the cost and difficulty of building architectural tools by
providing a language and toolkit to use as a foundation for building
tools. Acme provides a solid, extensible foundation and infrastructure
that allows tool builders to avoid needlessly rebuilding standard
tooling infrastructure. Further, Acme's origin as a generic
interchange language allows tools developed using Acme as their native
architectural representation to be compatible with a broad variety of
existing architecture description languages and toolsets with little
or no additional developer effort.
- Architectural interchange. By providing a generic
interchange format for architectural designs, Acme allows
architectural tool developers to readily integrate their tools with
other complementary tools. Likewise, architects using Acme-compliant
tools have a broader array of analysis and design tools available at
their disposal than architects locked into a single ADL.
Project Home Page:http://www.cs.cmu.edu/~acme
Research
Our Position:Architectural style can be used to provide
effective tailoring of architectural tools for domain-specific
notations and analyses.
Sample Questions
- How can styles be mixed to provide tailored support for specific
domains, and multiple analyses?
- How can one be assured that combining styles will enable valid
architectural instantiations?
- How can tools be developed that provide effective, scalable, and
extensible architectural design environments, that seamlessly fit into
a company's software development lifecycle?
- What kinds of architectural analyses can be applied at the
architectural level
- How can architectural notations be used to specify and analyze
intrinsically dynamic software architectures?
Contacts
David Garlan, Bradley Schmerl, Nicholas Sherman, Jung-Soo Kim,
Shang-Wen (Owen) Cheng.
|