Information Technology Reference
In-Depth Information
aspects modularized so that one does not have to recover them from the code
at a later date.
Our analysis focuses on clarifying the problem domain concepts that underlie
the candidate early aspects. By investigating the meanings of the terms that
stakeholders use to describe these high-level goals, we can determine whether
they do indeed represent concerns that crosscut requirements and design arti-
facts. Not all high-level goals are crosscutting. For example, a softgoal might be
relevant just to a single design decision, or it might impact a large number of
design decisions. If the early aspect requires specific implementation steps to be
taken, these may be contained in a single part of the program code, or may be
code aspects that crosscut the program structure.
A key problem with goal models is the high level goals, which are candidate
aspects, are often described by stakeholders using vague terms such as “reliable”
and “user friendly”. Hence, our approach includes a rigorous analysis of the
stakeholder concepts relevant to their stated softgoals. Concepts are fundamental
building blocks of human learning [28]. We use formal concept analysis (FCA), a
mathematical technique that treats concepts as binary relations between objects
and their properties [12]. We apply FCA to the contribution links between system
tasks and softgoals in a goal model. The resulting concept lattice offers non-
trivial insights into relationships between candidate aspects and various concerns
appearing in the problem domain.
The development of any sizeable software system invariably involves many
stakeholders, whose concerns may overlap, complement, or contradict each other.
Models with built-in notions of agents or perspectives add another challenge to
requirements' crosscutting structure: stakeholders may express their concerns
using overlapping, yet incoherent, vocabularies. For example, what one calls “re-
sponsiveness” may correspond to “performance” in another person's description,
thus the same concept is scattered over multiple terms. As another example, “us-
ability” for software running in a cell phone may be interpreted as “easy to learn”
by one stakeholder, and as “mobility” by another stakeholder, causing different
concepts tangled in one expression. The challenge is to align concepts with re-
spect to stakeholder vocabularies. We argue that an early aspects framework
must provide mechanisms to avoid tangling of distinct concepts expressed using
the same term, and to prevent scattering of one concept over dissimilar lexicons.
Analysis of conceptual and terminological interference is only possible if we are
able to discover relationships between different stakeholders' mental models and
the terms they use to describe them. Kelly's personal construct theory (PCT) [18]
addresses this issue. It explains how an individual constructs a personal (i.e.,
idiosyncratic) view of his or her environment (e.g., artifacts, events). The theory
has been used to develop techniques for exploring personal constructs, most
notably the repertory grid technique (RGT) [10]. We present a novel use of
RGT as a means of exploring how stakeholders interpret the labels attached to
softgoals, thereby helping to build a vocabulary map to tackle early aspects'
intertwinement in different viewpoints.
Search WWH ::




Custom Search