Information Technology Reference
In-Depth Information
adaptation. Their approach uses goal models to specify the adaptation process; in our
approach the adaptation is the indirect result of imposing customization and precedence
constraints on goals. Strategy trees have also been used to evaluate alternative recon-
figurations of software systems in the context of QoS and structural changes [17]. Our
approach differs in that it deals with user goals and behavior adaptation.
Researchers have also proposed different ways to model and bind variability in busi-
ness processes. Lapouchnian et al. use goal models for analyzing alternative business
process configurations [18]. Lu et al. propose the construction of flexible business pro-
cess templates that lay the basic constraints that must be met [19]. Elsewhere [20,21]
variability constructs are added to existing business process notations. In requirements
engineering, a constraint language with temporal features has been proposed to analyze
families of scenarios [22]. In general, such frameworks do not include an implementa-
tion approach, and when they do, this is restricted to specialized frameworks such as
workflow engines [21] or e.g. BPEL-based service composition platforms [18].
The extensive literature on software composition, on the other hand (e.g. [9] for a
taxonomy), is focusing on specific technologies, frameworks or techniques by which
composition can be implemented - e.g. composition of services ([23]), the AHEAD
framework and its descendants [24,25] or Aspect Orientation [26], Domain Specific
Languages and Generators [27,28]. Use of existing AI planning applications to service
composition, in particular, ([29,30] - cf. [10] for a survey), requires certain assumptions
such as, for example, availability of cleanly defined services, limited degree of user
intervention or the existence of some implementation and execution technique of the
desired composition that also alleviates increased reasoning times. Our customization
framework attempts to be more generally applicable, has a stronger focus on the im-
plementation aspect without making platform or architectural assumptions and it also
focuses on user interactions and therefore families of behaviours (system customiza-
tions) rather than single-purpose compositions. At the same time, it focuses on the re-
quirements aspect of the problem, that is how the desired customization result can be
communicated through reference to terms related to the experience and the goals of the
actual users, rather than technical features of the system.
6
Conclusions
Tailoring the behavior of a software system to the needs of individual stakeholders,
contexts and situations as these change over time has emerged as an important need
in today's systems development. However, it also poses a challenging engineering and
maintenance problem.
The main contribution of our paper is a technique to exactly allow this translation
of high-level customization requirements into an appropriately configured system, in a
flexible and accessible way. The merits of our approach lie in the following features.
Firstly, it offers a direct linkage of software customization with user requirements using
goal models and high-level customization desire specifications. This way customization
is performed through talking about the user activity and experience rather than features
of the system to be. Secondly, our proposal for constructive customization, where users
express their exact needs, versus selective, where users select from predefined options,
Search WWH ::




Custom Search