@ericbouwers

Identifying, Assigning, and Quantifying Crosscutting Concerns

, , and . ACoM '07: Proceedings of the First International Workshop on Assessment of Contemporary Modularization Techniques, page 2. Washington, DC, USA, IEEE Computer Society, (2007)

Description

The paper introduces a concern model which defines a concern as an element from a program's logical specification. The concern-component mapping is a tuple (S,T,CS,CT,r). S and T are the source specification and the target specification. Both CS and CT describe the containment relations. Lastly, R describes the dependency relations between the two specifications. Based on this model the authors define two metrics for SoC. Degree Of Scattering and Degree Of Focus. DOS explains how much variance there is in the concentration of a component. DOF show how much variance there is within the dedication of a component to every concern. Both measurements have several nice properties. Averaging the metrics gives an indication of how well the concerns are scattered c.q. focussed. In order to calculate the metrics the code needs to be assigned to concerns. In contrast to earlier approaches that tagged based on a contribution relation, the approach given by the authors is based on the fact whether a component has a removal dependency on the concern. The authors performed a case-study on a C# program. They compare their metrics with similar metrics that defined by others. Results from this are that over 95 percent of the requirements were scattered across multiple classes. Making things more fine-grained made it worse, because 100 percent of the requirements are scattered over across multiple methods. Furthermore, The authors argue that their metric provide more insight than metrics from Garcia because it can detect differences between how much a concern is scattered, while the metrics from Garcia give both concerns the same value.

Links and resources

Tags

community

  • @ericbouwers
  • @gron
@ericbouwers's tags highlighted