Communication Model (UCP:CM)

For the presented unified solution for Service Oriented Architecture (SOA) and User Interface generation, a communication model is required. This chapter presents the so-called Discourse-based Communication Model. The idea of such a communication model is based on human language theories like Speech Act Theory [Sea69], Conversation Analysis [LFG90] and Rhetorical Structure Theory [MT88]. The resulting model defines the communicative interaction. The term communicative interaction describes the part of interaction that is used to communicate between two communication parties. It does not matter, if one or both communication parties are humans or services provided by an application.

The Discourse-based Communication Model consists of three parts. The first one, the Domain-of-Discourse Model, specifies the objects used in the communication. The second part, the Action-Notification Model, specifies the actions executed on the objects of the Domain-of-Discourse Model. The last part is the so-called Discourse Model. This model specifies the possible flow of the communication. The composition of these three models results in the Discourse-based Communication Model.

As stated above, the Discourse-based Communication Model consists of three parts. The Discourse Model is inspired by Speech Act Theory, Conversation Analysis and Rhetorical Structure Theory. There are two main classes of elements defined in such a Discourse Model. One is the class of the Communicative Acts and the second one is the class of Discourse Relations. Communicative Acts are a generalization of Speech Acts and define the information exchanged between two communication parties. The communicative interaction normally consists of an opening Communicative Act like a question and a corresponding closing Communicative Act like an answer. This connection is modeled via Adjacency Pairs derived from Conversation Analysis. These Adjacency Pairs are connected via Discourse Relations that are used to define the relation and the out of it resulting flow of Communicative Acts in a discourse more specifically a dialog. These Relations are divided into two groups. The first group, the RST Relations, is based on the relations defined in the Rhetorical Structure Theory. Mann and Taboada present a list of defined relations and the principles of the underlying theory in [MT05]. The second one is called Procedural Constructs used to explicitly define the procedural flow, like the IfUntil construct. The Action-Notification Model and the Domain-of-Discourse Model are used to define the propositional content of Communicative Acts. The Action-Notification Model specifies either the actions which should be performed by the receiver of a Communicative Act (e.g., setting a variable, or starting a booking request) or the kind of a notification performed by the sender of a Communicative Act (e.g., informing about an error). The Domain-of-Discourse Model is used to specify the objects of the conversation. For this purpose an ecore model is used, which defines a subset of the UML class diagram. Figure 4.1 shows the FlightBooking example’s Discourse Model of the Discourse-based Communication Model. The black framed part in the upper left corner shows the Adjacency Pair that models the request from the Customer to buy a ticket and the response of the Airline. The yellow and green rounded boxes represent the Communicative Acts. Their fill color represents the associated communication party that utters the Communicative Act, green for the Customer and yellow for the Airline. Each diamond represents an Adjacency Pair that relates the opening (i.e., the Request sent by the Customer) and closing (i.e., the Accept or Reject sent by the Airline) Communicative Acts. In the course of interaction, an Inserted Sequence is started by the Airline to collect the data needed to book a flight. The symbol for an Inserted Sequence is the small icon that consists of three cubes and three dots. The Inserted Sequence in Figure 4.1 is shown in the same figure. The Inserted Sequence starts with three questions potentially uttered at the same time. The first two questions ask for the departure airport and the destination airport and the third question ask for the flight date. These three Adjacency Pairs are related via two so-called Joint relations. This kind of relation specifics that all questions have to be answered, before the process continues. After all these questions have been answered, the Airline presents the Customer in a so-called ClosedQuestion flights fulfilling her criteria. The next ClosedQuestion ask for a selection of one flight by the Customer for booking. As soon as a flight is selected, the Customer has to enter her personal data and some payment information. After all this information is given, the Airline either makes a booking for the Customer or rejects her booking request. In case of a successful booking the Airline sends the Costumer the ticket in the Accept Communicative Act closing the Adjacency Pair starting with the buy ticket Request from the Customer. In the other case the Airline sends the Reject of the same Adjacency Pair. The text in the lower part of the Communicative Acts specifies the propositional content. The propositional content references to elements of the Action-Notification Model and the Domain-of-Discourse Model.

WordPress Themes