This activity aims at detailing how the previously developed applications will be concretely deployed; this includes studying distribution aspects, holons physical location and their relationships with external devices (sensors, actuators used/accessed by agents) and resources. This activity also details how to perform the integration of parts of the application that have been designed and developed with traditional approaches (i.e. object-oriented ones) with parts designed by using an agent oriented approach.
Work products delivered by the Holarchy Design and Holon Architecture activities are the inputs of this activity.
The deployment configuration is described by using an extended version of UML deployment diagram. Nodes and artefacts are stereotyped to represent Janus kernels, holons and their associated roles. All resources and external dependencies of the system are also described as well as the media or the middleware used to connect them to the system.
Work to be done
The first task of this activity consists in establishing a partitioning among the various holons used to develop the application. This partition is mainly performed according to resources localisation and the organisation in which they are used. Then at least one janus kernel is deployed on each available elaborating unit. At this stage, the set of corresponding holons and their associated organisations are deployed on the various kernels according to the previous partition. If a dynamic discovery process is used to integrate at runtime new Janus kernels, the way to deploy organisations and their associated roles on newly discovered kernels have also to be described.
Figure 33 partially describes the deployment configuration associated to our Robot Soccer simulator example. Three janus kernels are used to distribute the application over the network: one kernel is used for each of the two JTeam-SimulatorHolon holons (and their associated members) and the last one is used for the shared environment holon and the graphical user interface. In our example we assume that all kernels already have installed all the classes associated to each organisation involved in the designed solution.