|
Last Update: October 2008
|
|
PhD Thesis
An i*-based Reengineering Framework for Requirements Engineering
|
Information Systems are a crucial asset of the organizations and can provide competitive advantages to them. However, once
the Information System is built, it has to be maintained and evolved, which includes changes on the requirements, the
technology used, or the business processes supported. All these changes are diverse in nature and may require different
treatments according to their impact, ranging from small improvements to the deployment of a new Information System. In both
situations, changes are addressed at the requirements level, where decisions are analysed involving less resources. Because
Requirements Engineering and Business Process Reengineering methods share common activities, and the design of the
Information System with the business strategy has to be maintained during its evolution, a Business Process Reengineering
approach is adequate for addressing Information Systems Development when there is an existing Information System to be
used as starting point.
The i* framework is a well-consolidated goal-oriented approach that allows to model Information Systems in a graphical way, in
terms of actors and dependencies among them. The i* framework addresses Requirements Engineering and Business Process
Reengineering but none of the i*-based existing approaches provide a complete framework for reengineering. In order to
explore the applicability of i* for a reengineering framework, we have defined PRiM: a Process Reengineering i* Method, which
assumes that there is an existing process that is the basis for the specification of the new Information System. PRiM is a sixphase
method that combines techniques from the fields of Business Process Reengineering and Requirements Engineering
and defines new techniques when needed. As a result PRiM addresses: 1) the analysis of the current process using sociotechnical
analysis techniques; 2) the construction of the i* model by differentiating the operationalization of the process form the
strategic intentionality behind it; 3) the reengineering of the current process based on its analysis for improvements using goal
acquisition techniques; 4) the generation of alternatives based on heuristics and patterns; 5) the evaluation of alternatives by
defining structural metrics; and, 6) the specification of the new Information System from the selected i* model.
There are several techniques from the Requirements Engineering and Business Process Reengineering fields, that can be
used instead the ones selected in PRiM. Therefore, in order to not enforce the application of a certain technique we propose a
more generic framework where to use and combine them. Method Engineering is the discipline that constructs new methods
from parts of existing ones and, so, it is the approach adopted to define ReeF: a Reengineering Framework. In ReeF the six
phases of PRiM are abstracted and generalized in order to allow selecting the most appropriate techniques for each of the
phases, depending on the user expertise and the domain of application. As an example of the applicability of ReeF, the new
method SARiM is defined.
The main contributions of this work are twofold. On the one hand, two i*-based methods are defined: the PRiM method, which
addresses process reengineering, and SARiM, which addresses software architecture reengineering. On the other hand, we
provide several i*-based techniques to be used for constructing i* models, generating alternatives, and evaluating them using
Structural Metrics. These methods and techniques are based on exhaustive review of existing work and their validation is done
by means of several formative case studies and an industrial case study. Tool support has been developed for the approach:
REDEPEND-REACT supporting the graphical modelling of i*, the generation of alternatives and the definition of Structural
Metrics; and, J-PRiM supporting all the phases of the PRiM method using a textual visualization of the i* models.
|
|