Task: Model External Interfaces
Performing this task involves to determine all possible external entities that could communicate with the system and to build the appropriate interface model to meet the requirements that arise from this interaction.
Purpose
The objective of this task is to identify the organisation’s interfaces with external entities, whether they are other agents, organisations, or actors external to the system. To capture the organisation’s interfaces, various classes of external entities are scrutinised to determine if the organisation needs to interact with them.
Relationships
Parent Practices
RolesPrimary Performer: Additional Performers:
InputsMandatory:
    Optional:
    • None
    Outputs
      Main Description

      Because an open system will interact with external entities such as alien agents, it is necessary to know about the interfaces that it has to provide. Supported by the System Architecture, these interfaces can be identified. It is necessary to describe the kind of data that is exchanged, which protocols are required by the external systems, which communication paths are used, and which security mechanisms need to be in place.

      In the O-MaSE (DeLoach & Garcia-Ojeda 2010) task  "Model organisation interfaces" (originally a task within the "Solution analysis" activity), protocols are identified between the organisation and the external entities. The methodology assumes that agent organisations interact as a whole with external components, a view that fits a hierarchical system structure. The description of the task states:
      "There should be a protocol for each type of interaction and thus there can be more than one protocol with a given external entity. The interfaces are defined in an organisation model, which depicts a single organisation interacting with a set of external actors. All external entities are modelled as external actors."

      In the context of open, self-organising multi-agent systems, the organisation can be a single agent as well as a more complex structure combined from several agents.

      Steps
      Identify communication interfaces
      Identify external actors that the agents or organisations within the system have to interact with. Interaction can take place by message passing, remote procedure call, or other means.
      Determine protocols
      Each external actor requires a protocol for a structured data exchange. Determine which protocol is used when interacting with each actor and how the protocol can be implemented by the agents.
      Define data structures
      If data is exchanged between agents and external actors, the structures that contain this data have to be clearly defined. Determine how they can be implemented by the agents and how they have to be encoded and decoded for transmission.
      Determine security measures

      If external actors receive or provide confidential or critical data, additional security mechanisms might have to be in place, e.g., an encrypted connection or mutual authentication with certificates. Identify which security requirements are present and design a solution that will ensure they are met. This can mean that additional supporting infrastructure becomes necessary or the protocols have to be adapted accordingly.