AORE approaches (Sampaio et al., 2007; Herrera et
al., 2012), have pointed out the concern
identification and classification as a bottleneck
activity in the AORE process. The authors state that
identifying CCC is harder than identifying base
concerns. Some of the possible causes for this are
(Sampaio et al., 2007; Herrera et al., 2012):
Base concerns are better known and
understood by the scientific community than the
CCC ones and many approaches are based only on
the experience of software engineers who apply
them. Some approaches support the software
engineers during the concern identification and
classification through guidelines, such as catalogues,
but these guidelines generally are complex to be
read and understood by humans and they are not
prepared for automated semantic processing.
Moreover, most of these approaches does not
present a process that instruct the software engineer
on how to use the proposed guidelines; and
Some CCC are not explicitly mentioned in the
requirements document, i.e., they emerge from
other concerns and some AORE approaches are
based only on searching for keywords in the
requirements document, what may affect the
identification of implicit concerns. For instance, if
the software requires a good performance to persist
its data, a possible strategy is using concurrency
mechanisms, such as connection pooling. Hence, the
“Concurrency” concern is observed from the
existence of two other CCC: “Persistence” and
“Performance” (Sampaio et al., 2007).
Theme/Doc (Clarke and Baniassad, 2005;
Baniassad and Clarke, 2004) is an AORE approach
that has been used, evolved and evaluated in several
recent studies (Herrera et al., 2012; Ali and Kasirun,
2011; Penim and Araújo, 2010; Kit et al., 2006).
This approach proposes that concern identification
and classification activity be performed using a set
of keywords identified by the software engineer
from the software requirements. This strategy makes
Theme/Doc highly depended on the software
engineers’ experience, what may lead to low levels
of recall and precision, as stated in some
experimental studies (Herrera et al., 2012).
1.3 Goal
The main goal of this work is increasing the recall
and precision provided by the Theme/Doc approach,
regarding to the concern identification and
classification. To do this, an ontology for CCC
(OntoCCC) and an extension of the Theme/Doc
(OnTheme/Doc), in which the concern identification
and classification activity is supported by the usage
of OntoCCC instances, are proposed.
An ontology defines a specific vocabulary that
captures the concepts and relationships of a domain
and a set of explicit decisions (axioms), which
describe the meaning of this vocabulary (Falbo et
al., 2007; Guarino, 1998). Hence, the purpose of the
OntoCCC ontology is capturing the specific
concepts and relationships of crosscutting concerns
domain, which have been documented in several
AORE approaches in the literature (Agostinho et al.,
2008; Sampaio et al., 2005; Chitchyan et al., 2006;
Zheng et al., 2010; Liu et al., 2009; Soeiro et al.,
2006; Moreira et al., 2005; Chernak, 2012; Whitlle
and Araújo, 2004; Alencar et al., 2010; Brito and
Moreira, 2003; Mussbacher et al., 2010).
In this work, we consider that the usage of
OntoCCC ontology may improve the recall and
precision provided by the Theme/Doc approach as
follows:
Regarding to the Dependence of Software
Engineers’ Experience: the knowledge base of the
OntoCCC ontology may be used for the definition of
better keywords, aiming to minimize the dependence
of the professionals’ experience; and
Regarding to the Implicit CCC: the mutual
influence that exists between different CCC may be
documented in the OntoCCC ontology, aiming to
allow the identification of CCC that are not
explicitly described in the requirements document.
It is important to state that the usage of
ontologies in the context of requirements
engineering has been widely explored (López et al.,
2008). However, according to a recent systematic
mapping of the literature, conducted by the authors
of this paper, the usage of ontologies for concern
identification and classification has not been fully
exploited yet.
1.4 Evaluation and Contributions
To verify the goal proposed in this paper, an
experimental study involving undergraduate and
graduate students in Computer Science from two
Federal Universities in Brazil was conducted.
The study was planning and implemented
according to the procedure proposed by Wohlin et
al., (2012). As results, it was observed that, with
99.9% of significance level, the values of recall
provided by the OnTheme/Doc approach is higher
than those provided by Theme/Doc, regarding to the
CCC identification. Besides, it was observed no
significant differences with regard to the precision
provided by both approaches, neither for the time
OnTheme/Doc-AnOntology-basedApproachforCrosscuttingConcernIdentificationfromSoftwareRequirements
189