+ All Categories
Home > Documents > Deriving AO Software Architectures using the AO-ADL Tool Suite Luis Fernández, Lidia Fuentes,...

Deriving AO Software Architectures using the AO-ADL Tool Suite Luis Fernández, Lidia Fuentes,...

Date post: 24-Dec-2015
Category:
Upload: ezra-tyler
View: 215 times
Download: 0 times
Share this document with a friend
Popular Tags:
12
Deriving AO Software Architectures using the AO-ADL Tool Suite Luis Fernández , Lidia Fuentes, Mónica Pinto, Juan A. Valenzuela Universidad de Málaga {lfernandez,pinto,lff,valenzuela}@lcc.uma.es AOSD Brussels, April 2008
Transcript

Deriving AO Software Architectures using the AO-ADL Tool Suite

Luis Fernández, Lidia Fuentes, Mónica Pinto, Juan A. ValenzuelaUniversidad de Málaga

{lfernandez,pinto,lff,valenzuela}@lcc.uma.es

AOSDBrussels, April 2008

April, 2008AOSD 2

Agenda

Problem SpecificationAspect Oriented ADLs

Solution SpecificationAO-ADLAO-ADL Decomposition ModelAO-ADL Composition Model

Conclusions

April, 2008AOSD 3

Problem Specification: Aspect-Oriented ADLs

Separation, Representation and Composition of crosscutting concerns at the early stages of the

development

Specially, the specification of crosscutting concerns at architecture level using ADLs

Is not enough with the traditional ADLsWe can incorporate specific elements or notThe alternatives are based on the decomposition model and the composition model

April, 2008AOSD 4

Solution Specification: AO-ADL

AO-ADL is an aspect-oriented architecture description language

The main contributions of AO-ADL are two:Symmetric decomposition modelExtension of the semantic of connectors with aspectual composition information

We specially focus on:Aspectual compositionsReutilization of connectors through the definition of Connector Templates

April, 2008AOSD 5

AO-ADLDecomposition and Composition model

Decomposition Model: Symmetric

Components model crosscutting (aspectual component) and non-crosscutting behavior (base component)

A component is considered an aspect when it participates in an aspectual interaction

Composition Model: Crosscutting relationships in connectors

Provide support to describe different kinds of interactionsTypical communication Crosscutting influence

Specify how ’aspectual’ components are weaved with ’base’ components during components’ communication.

April, 2008AOSD 6

Solution Specification: AO-ADL Decomposition Model

Decomposition Model: SymmetricAdvantages

Increases the reusability of components, which may play an aspectual or non-aspectual role depending on the particular interactions in which they participate

AO-ADL explicitly and homogenously represents the dependencies of both ’aspectual’ and ’base’ components, by means of its provided and required interfaces

The modularity of components is improved, solving the tangled and the scattered behavior problem earlier, at the architectural level

April, 2008AOSD 7

Solution Specification: AO-ADL Composition Model

Composition Model: Crosscutting relationships in connectors

Advantages

The traditional structure of ADLs is maintained even in the presence of crosscutting behaviors

All the composition relationships are homogeneously modeled using the same building block

The pointcut specification is not part of the ’aspectual’ component definition, but part of the connector aspectual binding specification

Helps to localize in the same architectural block all aspect-oriented information

The use of quantifications help to model more generic and reusable connectors

April, 2008AOSD 8

AO-ADL Tool Suite

AO-ADL Tool SuiteFeatures

It has been developed as an Eclipse plug-in

Provides support to manage the repository of Components and Connectors (C&C Repository)

Creation, modification and deletion of AO-ADL elementsDefinition and Instantiation of Connector TemplatesTransformation of AO-ADL elements to Theme/UMLValidation of AO-ADL elementsSearch for any AO-ADL element (interfaces, components or connectors) following a search criterion.

April, 2008AOSD 9

Connector Templates

Reutilization of connectorsConnector Templates

The use of Connector Templates increase the reusability of well-known behavior patterns

Through the instantiation process we can reuse the same behavior pattern is several architectures

We use JET (Java Emitter Templates) as the language for the parameterization of the connectors:

Is a part of an Eclipse projectAllows the use of Java code in the parameterization process

April, 2008AOSD 10

Transformation to Theme/UML

Automatic transformation to Theme/UML

Mapping defined in collaboration with Trinity College (Dublin), creators of Theme/UMLMake easier to continue with the next stage of development process

Automatic transformation to Theme/UML

It allows transforming concrete elements (a component, a connector) as well as a complete architecturesUse MDD technology

AO-ADL Model ---- rules ----> Theme/UML ModelTransformation rules implemented with ATL (ATLAS Transformation Language)

Transformations can be extended to other target models (e.g. plain UML 2.0)

April, 2008AOSD 11

Conclusions

This language is the aspect-oriented integrated ADL of the AOSD-Europe Network Of Excellence on AOSD.

Using AO-ADLCrosscutting behaviors (modeled by ’aspectual’ components) can be separated and reused at the architectural level

Compositions between ’aspectual’ and ’base’ components (modeled by ’aspectual bindings’ inside connectors) are clearly represented at the architectural level.

Behavior patterns can be reused through the definition of connector templates.

April, 2008AOSD 12

Thank you!

Luis Fernández, Mónica Pinto, Lidia Fuentes, Juan A. ValenzuelaUniversity of Málaga{lfernandez,pinto,lff,valenzuela}@lcc.uma.es

AO-ADL Tool Suite Update Sitehttp://caosd.lcc.uma.es/AO-ADLUpdates

CAOSD Group webhttp://caosd.lcc.uma.es


Recommended