Next: Prototype specification
Up: Specification and Simulation
Previous: Agents in CaseLP
The realization of a MAS-based software prototype
can be performed according to the following steps. Figure 1 gives a
graphical representation of the method.
Figure 1: The development method.
-
Static architectural description of the prototype.
The developer decides the static structure of the MAS.
This step is further broken down to:
(a) determining the
classes of agents the application needs;
(b) for each class, determining the kind of the agents belonging to
the class, their architecture, their eventual interpreters
and their set of services ;
(c) determining the set of necessary instances for each class;
(d) defining the interconnections between the instances of
agents, linking appropriately requested and provided services.
This phase
defines the agents that form the prototype, and the communication channels
among them. Notice that architecture can refer either to an architecture
already available in a library or to a ``new'' architecture that has still to be
defined.
-
Description of communication between agents.
Each provided or requested service needs a specific conversation
between the agent that provides the service and the one that requires it.
This step allows to specify the sequence of exchanged messages. Some
conversations
can start some other (sub)conversations. This is properly captured in this step.
The conversation model of the MAS includes the set of all the
conversations and the sub-conversation relationship among them.
-
High-level specification of the system and the agents.
At this stage a high-level specification language is used to model the
prototype.
Three different levels of modeling can be identified:
- specification of interactions among
agents in the MAS, abstracting from their architecture and
taking into account the interaction model specified in step 2;
- specification of the ``new'' architectures chosen in
step 1, i.e. modeling of the interactions between the
internal components of an agent;
- specification of the agents' behavior.
-
Verification and testing of the system.
This step verifies and/or performs a preliminary validation of the abstract
specification defined in step
3.
Validation is possible if the specification language used in the previous step
is executable. Verification is possible if proof mechanisms are available
for the used specification language. If the specification is given using a
logical language, goal-directed execution is a proof procedure.
In this case, given a prototype
specification and an initial configuration, it is possible to follow the
evolution of a particular MAS in detail. It is possible to verify whether a
particular computation may be carried out or, what is more important, that
every computation starting from a given configuration leads to a final
state which satisfies a given property.
-
Implementation of the prototype.
This step
transforms the abstract specification of the application
into the final prototype. An extended concrete logic-programming language is used for
prototype implementation. Interfaces towards
external software and data are provided using appropriate interpreters.
Moreover, message passing communication, and other
lower-level details which were abstracted in the previous steps,
are now implemented.
-
Execution of the obtained prototype.
Prototype execution is used to validate the prototype against the
client's desiderata. Execution provides the user and the developer with
information about the events that occur in the MAS, and allows them to check if
the prototype behaves as expected and if it encompasses all the desired features.
Any error or misbehavior discovered in this step may imply a
revision of the choices made in the previous steps.
We can distinguish three different phases in the method adopted by CaseLP.
Steps 1 through 4 form the modeling phase of the
prototype. Step 5 represents the implementation phase and step
6 represents the execution phase. The next three sections focus on
languages and tools that CaseLP provides to face each of the phases listed above.
Next: Prototype specification
Up: Specification and Simulation
Previous: Agents in CaseLP
Floriano Zini
Wed Oct 20 15:24:59 GMT+0200 1999