|
The explosive growth of application areas such as electronic commerce, enterprise
resource planning and mobile computing has profoundly and irreversibly
changed our views on software systems. Nowadays, software is to be based on
open architectures that continuously change and evolve to accommodate new
components and meet new requirements. Software must also operate on different
platforms, without recompilation, and with minimal assumptions about its
operating environment and its users. Furthermore, software must be robust and
autonomous, capable of serving a user with a minimum of overhead and
interference.
Agent concepts hold great promise for responding to the new realities of
software systems. They offer higher-level abstractions and mechanisms which
address issues such as knowledge representation and reasoning, communication,
coordination, cooperation among heterogeneous and autonomous parties, perception,
commitments, goals, beliefs, and intentions, all of which need conceptual
modelling. On the one hand, the concrete implementation of these concepts can
lead to advanced functionalities, e.g., in inference-based query answering, transaction
control, adaptive workflows, brokering and integration of disparate information
sources, and automated communication processes. On the other hand,
their rich representational capabilities allow more faithful and flexible treatments
of complex organizational processes, leading to more effective requirements analysis
and architectural/detailed design. |