Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| research:adi [2009/05/15 17:17] – azambrano | research:adi [2012/10/26 17:34] (current) – [AO Design in the Slot Machine Domain] jfabry | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | One line of research within PLEIAD is the topic of Aspects, Dependencies and Interactions. [[people: | ||
| + | |||
| + | --------------- | ||
| + | |||
| + | ===== AO Requirements modeling in the Slot Machine Domain ===== | ||
| + | |||
| + | We have studied the expressive capabilities for aspect interactions of selected AORE approaches. | ||
| + | Our first case study is the Slot Machine (SM) domain. This has been published as part of ACM SAC 2009 [1]. | ||
| + | Below you will find links to | ||
| + | the requirements for SMs and the output resulting from the application of two AORE approaches: | ||
| + | Theme/Doc [2] and Multi-Dimensional Separation of Concerns for Requirements Engineering [3]. | ||
| + | |||
| + | |||
| + | The [[research: | ||
| + | |||
| + | The [[research: | ||
| + | |||
| + | The [[research: | ||
| + | |||
| + | [1] A. Zambrano, J. Fabry, G. Jacobson, and S. Gordillo. Expressing aspectual interactions in requirements engineering: | ||
| + | |||
| + | [2] E. Baniassad and S. Clarke. Theme: An approach for aspect-oriented analysis and | ||
| + | design. In ICSE ’04: Proceedings of the 26th International Conference on Software | ||
| + | Engineering, | ||
| + | |||
| + | [3] A. Moreira, A. Rashid, and J. Araujo. Multi-dimensional separation of concerns | ||
| + | in requirements engineering. In Proc. 13th IEEE International Conference on | ||
| + | Requirements Engineering, | ||
| + | |||
| + | ===== AO Design in the Slot Machine Domain ===== | ||
| + | |||
| + | In the Slot Machine domain, we also studied the expressive capabilities for aspect interactions of selected AO Design appraches: Theme/UML [1] and Motorola WEAVR [2]. The results of this study: [[http:// | ||
| + | |||
| + | [1] S. Clarke, E. Baniassad: Aspect-Oriented Analysis and Design. The Theme Approach. Object Technology Series, Addison-Wesley, | ||
| + | |||
| + | [2] T. Cottenier, A. van den Berg, T. Elrad: Motorola weavr: Aspect and model- driven engineering. Journal of Object Technology 6(7), 51–88 (2007) | ||
| + | |||
| + | --------------- | ||
| + | |||
| + | |||
| + | ===== AspectMaps: A Scalable Visualization of Join Point Shadows ===== | ||
| + | |||
| + | The implicit invocation mechanism of AOP introduces an additional layer of | ||
| + | complexity in the construction of a system. This can make it harder to | ||
| + | understand how base system and aspects interact and thus how the | ||
| + | system will behave. For example, when writing | ||
| + | pointcut definitions, | ||
| + | aspect will intervene in the base code. This can then lead to | ||
| + | situations where the pointcut either captures too many join points | ||
| + | (false positives), or where certain join points that were intended to | ||
| + | be captured, are not (false negatives). | ||
| + | is the so-called //fragile pointcut problem// (Kellens et.al., ECOOP 2006). | ||
| + | |||
| + | AspectMaps is a software visualization tool built | ||
| + | to aid the understanding of aspect-oriented software systems. It provides a scalable visualization | ||
| + | of implicit invocation. AspectMaps visualizes selected join point | ||
| + | shadows (a.k.a. shadow points): locations in the source code that at | ||
| + | run-time produce a join point. AspectMaps visualizes the shadow points | ||
| + | where an aspect will execute, and if multiple aspects will execute, | ||
| + | the order in which they are specified to run. This results in a | ||
| + | visualization that clearly shows how aspects cross-cut the base code, | ||
| + | as well as how they interact at each join point. AspectMaps is a | ||
| + | scalable visualization mainly due to its use of selective structural | ||
| + | zooming. The structure of source code is shown at different levels of | ||
| + | granularity, | ||
| + | |||
| + | More information on AspectMaps can be found [[research: | ||
| + | |||
| + | --------------- | ||
| + | |||
| + | ===== Aspect Coordination for Web Applications in Java and Ruby ===== | ||
| + | |||
| + | This work is by [[people: | ||
| + | |||
| + | This work is reported in the paper with the same name, accepted at the [[http:// | ||
| + | |||
| + | --------------- | ||
| + | |||

