The Aesop System Provides:
- A toolkit for rapidly building software architecture design environments
specialized for domain specific architectural styles.
- An open tool integration framework that supports cooperation between
Aesop and your favorite tools.
- A "Style-aware" repository for storing, retrieving, and reusing
architectural design elements.
- A persistent object-oriented database for storing and manipulating
- A customizable Tcl/Tk based graphical user interface.
Aesop Helps You:
- Exploit design and domain knowledge when producing domain
- Rapidly generate design environments for producing families of
- Store, retrieve, and organize libraries of "style-aware"
architectural design elements and patterns with the Software Shelf.
The Aesop Model:
Aesop provides a generic toolkit and communication infrastructure
that users can customize with architectural style descriptions
and a set of tools that they would like to use
for architectural analysis. Example tools that we have integrated with
our Aesop styles include: cycle detectors, type consistency verifiers,
formal communication protocol analyzers, C-code generators,
compilers, structured language editors, and rate-monotonic analysis tools.
An architectural style description includes items such as a
vocabulary of design elements (components, connectors, and patterns)
along with their associated semantics, global design rules, customized
visualizations, and other information, if desired.
From these inputs, Aesop creates a software architecture
design environment that is specialized to support design in the styles
that it has taken as input. A diagram of the Aesop model appears below:
The following picture displays a software architecture design
environment for the "pipe-and-filter" style. The strip of buttons on
the right side of the picture allow the user to select from a palette
of primitive design elements in this style. The boxes in the drawing
area represent components of the system (filters in this case), and
the lines with circles in the middle represent the connectors (pipes).
Selecting the image will bring up a full size screen dump for closer
For More Information about Aesop:
For more detailed information about the current version of Aesop, the following documents
- An Aesop User's Guide and Tutorial .
Also in available in Postscript.
- An Overview of Architectural Style and Aesop.
(Postscript. HTMLized version soon)
- A User's Guide for the Fcl system.
Fcl is a persistent object-oriented language and run-time system
that we built on top of Tcl/Tk. Tools in the Aesop environment
that manipulate designs directly are written in Fcl. Designs
are stored in the database as collections of design elements
which are implemented as instances of Fcl classes.
- Programming a Style in Aesop
provides a step-by-step description of what needs to be done to
create a new style with the Aesop system. We are currently working
on making the style definition process more simple and clean.
- The ABLE UI Library design document
describes the structure of the UI library. People developing new
visualizations and styles will probably want to look at this.
- A list of some of the more technical papers that we have
written relating to Aesop can be found on the ABLE group's
- Finally, information about the design and implementation of
Aesop is on the Aesop Developer's page along
with other useful information for programmers.
If you are interested in ordering the Aesop, it is available for
free by anonymous ftp from CMU. See Ordering The Aesop
for information to order register with us and order a copy.
ABLE home page
Aesop Maintainer (firstname.lastname@example.org)
ACME-Web test, local access only