Dedal is a three-dimensional ADL aimed at modeling the component-based software systems.
The two objectives of Dedal are to enable the expression of architecture design and to help
support architecture evolution. Firstly, it enables the description of abstract architecture
specications, concrete architecture congurations and instantiated component assemblies.
Then it supports a controlled process that helps build, test and record architecture
evolution.
Dedal models architectures at three separate abstraction levels, which correspond to
the main stages of component-based development lifecycle. Each architecture denition
on an abstraction level consists of components and connectors in dierent forms. An
overview of their relationships is shown in Fig. 1 and 2. Each abstraction level tries to capture
and reflect the design decisions at a given stage (design, development/construction and
deployment/execution).

Fig. 1: Component-based software development process

Fig. 2: Relationship between three levels