Summary


In this chapter, we discussed how to find themes and how to identify them as aspects and base.

General case theme-identification involves deciding on the major concerns described in a set of requirements, and then ensuring that the appropriate requirements are grouped with those concerns. Themes are groups of requirements that all describe a particular concern. At the end of the theme identification process themes will not overlap; that is to say, two themes will not share a requirement. To arrive at orthogonal themes, requirements may be rewritten to ensure that they are grouped under only one theme. If such a rewriting is not possible, then special attention must be paid to the requirement. The requirement may reveal that design-level choices must be made in order to account for the functionality it describes. Or the requirement may reveal aspect-behavior.

Aspects are a special case of theme, and require additional analysis to identify. Identifying aspects involves looking at requirements that are shared between themes. Shared requirements may represent tangling and may reveal aspects. When considering shared requirements to identify aspects, three questions should be asked:

  • Can the requirement be split?

    If not, then you may have encountered tangled behavior.

  • Is there a dominant theme in the requirement?

    If so, then the dominant theme of the requirement may be an aspect of the other themes mentioned in the requirement.

  • Is the dominant theme triggered by the other themes described in the requirement?

    If it is, then the requirement has revealed that the dominant theme is an aspect.

We then noted that you perform another check of your aspects:

  • Are aspects you have identified crosscutting enough to be modeled as aspects?

    If they are triggered in more than one situation, it may be a good idea to keep them as aspect behavior. Otherwise, making them shared-concept themes may be better.

Finally, we looked at individual themes with design in mind.

In Chapter 5, we discuss how to model the themes you have isolated in the requirements analysis phase. Chapter 6 then explains how to compose themes, both base and aspect, using composition relationships.



Aspect-Oriented Analysis and Design(c) The Theme Approach
Aspect-Oriented Analysis and Design: The Theme Approach
ISBN: 0321246748
EAN: 2147483647
Year: 2006
Pages: 109

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net