Information Technology Reference
In-Depth Information
decades. Her plethora of contributions include novel concepts, methods and tools
for building information systems, as well as dozens of young researchers who will
carry the torch of her ideas for years to come. One of those ideas that has had
tremendous impact on the field is the notion that system requirements are stake-
holder goals—rather than system functions—and ought to be elicited, modeled and
analyzed accordingly [ 21, 27, 28] . In this chapter, we take this idea one small step
farther.
In traditional software engineering research and practice, requirements are clas-
sified either as functional or nonfunctional. Functional requirements consist of all
functions the system-to-be ought to support, and have been modeled and analyzed
in terms of box-and-arrow diagrams in the spirit of SADT [ 32] . Nonfunctional
requirements include desired software qualities for the system-to-be and have
been described either in natural language or in terms of metrics. This ortho-
doxy was challenged in the mid-90s by a host of proposals that had a common
theme: all requirements—functional and non-functional—are initially stakeholder
goals, rather than functions. Through systematic processes, these goals can be
refined into specifications of functions the system-to-be needs to deliver, whereas
actions assigned to external actors need to be executed. This view is dominating
Requirements Engineering (RE) research and is beginning to have an impact on RE
practice.
The main objective of this chapter is to propose a next step along this line of
research, by adding the concept of conditional commitment as companion concept
to that of goal. Goals are intentional entities that capture the needs and wants of
stakeholders. Commitments, on the other hand, are social concepts that define the
willingness and capability of actors to contribute to the fulfillment of requirements.
Specifically, a conditional commitment involves two actors A and B, where A has
committed to fulfill a predicate
ϕ
for the benefit of actor B, provided B (in return)
fulfills
for the benefit A. In our conceptualization, goals are mapped to collections
of commitments rather than functions, qualities, and actor assignments.
Our work is motivated by RE frameworks such as i [ 43] which are founded on
the notion of actor and social dependencies between pairs of actors; also on Agent-
Oriented Software Engineering (AOSE) frameworks such as Tropos [ 4] , where
design begins with stakeholder goals and proceeds through a refinement process
to identify and characterize alternative designs (plans) that can fulfill these goals.
The Tropos framework has been formalized for goals and their refinements [ 18] ,
but not for goal fulfillment in a multiagent setting where commitments form the pri-
mary vehicle for goal fulfillment. We have striven to keep our proposal generic so
that it applies not only to Tropos but also other frameworks where there is a need to
reason with a collection of agents along with their goals and commitments.
We motivate the importance of the concept of commitment for RE through exam-
ples and discussion. We also contrast our proposal with state-of-the-art requirements
modeling and analysis frameworks, such as KAOS [ 10] , MAP [ 29] , i and Tropos.
Our proposal is intended primarily for the development of socio-technical sys-
tems. Unlike their traditional computer-based cousins, such systems include in their
architecture and operation organizational and human actors along with software
ψ
Search WWH ::




Custom Search