M. Baldoni - Accountability e responsibility nei processi e sistemi distribuiti
M. Baldoni - Accountability e responsibility nei processi e sistemi distribuiti
Many contexts, both in the human world and in software, are characterized
by the distribution of activities through a group of interacting parties:
each member in the group takes care of a part of the activity, and the
desired overall result is achieved only
when each member behaves properly, and properly interacts with the others.
This happens both in human organizations, and in distributed systems
like multi-agent systems (MAS).
Such contexts often resort to the concept of responsibility to refer
to the assignment of a task (or a duty) to a member in the group.
From the seminal work by
Garfinkel, many studies identify in accountability the key notion on
top of which interaction
is built.
In political sciences, accountability is seen as a major driving force
of individuals when it comes to decide about their own behavior.
Psychologists provide
evidence that accountability increases the salience of goals.
Ethnomethodologists
postulate that social behavior is configured by relying on the same mechanisms through
which it is explained, which indeed give meaning to social action.
Management studies,
consider it a framework for managing expectations.
We conceive accountability and responsibility as tools to systematize
and guide the
design and development of processes – agents or, more in general, distributed systems.
We claim that an explicit representation of accountability relationships and responsibility
assumptions can increase the robustness of such systems by guiding and systematizing
both design and development. We explain the use of such concepts as engineering
concepts, that allow developing agents by starting from a specification of the system in
terms of accountability and responsibility requirements.
We are currently studying the application of such concepts both in the context of
multi-agent organizations and in the context of business processes. In particular, we
are interested in a more effective way to modularize the software, which is based on
an explicit statement of what an agent is willing to do for the organization. That is,
what are the responsibilities that an agent explicitly takes on when it joins an organization.
Along this line, the specification of the organization is enhanced with a set of
accountability and responsibility specifications that makes it clear what responsibilities
an agent enacting a role is expected to accept and accomplish. This aproach has interesting
applications in the field of Business Processes where the issues arising from goal
distribution over a set of interacting processes is a well-known.