DAOP Architecture Description Language
DAOP-ADL is an architecture description
language used to describe components and aspects, together with the composition
Architecture descriptions using DAOP-ADL comprises of the two parts: one defines standalone components and aspects, and the second is the composition specification.
The visual notation of the DAOP-ADL language is CAM (Component-Aspect Model).
Figure 1. An example of the CAM design of a Chat application
Although it does not appear in the figure, the applies to relationships have an associated constraint that indicates if the aspect is evaluated before or after creating or eliminating an instance of a component, before or after sending or receiving a message, or when an event is thrown.
Specification of standalone components and aspects
Figure 2 shows the DAOP-ADL specification of the standalone aspects and components comprising the system in Figure 1. Properties are also specified here. That’s where the global role names are assigned (chat, authentication, persistence, filter), and implementation classes are registered (LDAP and Oracle storage).
Figure 2. DAOP-ADL specification of the components and aspects in the Chat application
Specification of the Composition Rules
This specification includes the definition of the aspect pointcuts, which in CAM/DAOP are defined using the DAOP-ADL language and never as part of the definition or implementation of components and aspects.
Figure 3. DAOP-ADL specification of the Composition Rules of a Chat application