3. A Generic Model to Express Quality of Information Requirements in EBS
3.4. Capabilities: Support for Properties
3.4.2. Capability Profiles: Characterizing Publishers
In an EBS, publishers provide all data as notifications while the MOM can only determine or manipulate certain generic properties of these notifications. Thus, the system is only able to satisfy an expectation if there is at least one publisher available that provides notifications with generic properties matching the set of generic properties required by the subscriber.
We introduce the notion of a capability profile to characterize a publisher in terms of its overall support for a set of generic properties. A capability profile bundles all capabilities of a publisher for notifications of a given type of event together with those capabilities supported by the MOM. Thus, a capability profile reflects the full set of capabilities available from a specific publisher for notifications of a given type of event and can be matched against expectations.
Definition 5 (Capability Profile). A capability profileCPe
j is a set of capabilities{C e
1, . . . , Cek} asso- ciated with publisher j for events of type e. It consists of atomic as well as broker-side capabilities about generic propertiesp1, . . . , pk.
Multiple publishers can provide the same capability but with different ranges, current values, or cost functions, i.e., support for a specific generic property. However, each publisher can define only one capability per generic property. Consequently, capability profiles for the same type of event (CPe) but associated with different publishers can be heterogeneous in terms of the
1. set of generic properties, e.g.,CP2e =Ce r at e,C e l at enc y ⊂ CP e 1=C e r at e,C e l at enc y,C e con f id ence ;
2. potential support available for each property through adaptation; and 3. the current values provided as actual support.
We use an example to show how capability profiles describe different publishers regarding their support for generic properties. We show how we can use capability profiles to visually determine if an expectation can be satisfied by notifications of a publisher or not. An algorithmic approach for this is presented and discussed in detail in Chapter 4.
We define three capability profilesCPe
1,CP2e, andCPe3about the generic properties sampling rate, confidence of detection, latency, precision, and accuracy. Their lower and upper bounds as well as
current values are shown in Table 3.7; cost functions are omitted for the sake of simplicity10. Table 3.7.: Example of three capability profiles characterizing different publishers.
Sampling Rate Confidence Trustw. Latency Precision Accuracy
CP LB CV UB LB CV UB LB CV UB LB CV UB LB CV UB LB CV UB CPe 1 0 10 60 50 80 95 n m m 100 200 240 50 95 100 60 80 100 CPe 2 0 25 60 50 60 80 n m m 100 200 240 50 70 95 70 80 90 CPe 3 0 30 60 50 61 80 n l l 200 300 400 40 60 80 50 70 80
Note: Levels of trustworthiness are abbreviated with l = low, m = medium, and h = high.
Similar to expectations, we can visualize capability profiles in Figure 3.21 using star plots with each axis representing the support for a generic property. On each axis, we plot three values: the actual support for this generic property denoted by the current value (black), the minimal value that could be provided after adaptation (light green), as well as the maximum value that could be provided after adaptation (dark green). Connecting the dots of each type of value between the different axes and filling out the area between the lower bound and the upper bound visualizes the profile of a publisher: the green area denotes the potential support, i.e., all combinations of values that could be provided by applying adaptation, while the black ring shows the actual support for all generic properties the capability profile is defined about.
10 In Chapter 4 we will have a close look at how different cost functions affect the decisions of the MOM during
runtime negotiation.
As we can see from the star plots in Figure 3.21,CPe
1 andCP
e
2 are quite similar withCP e
1 having
higher current values for sampling rate, confidence of detection, precision, and accuracy (cf., Fig- ure 3.21a and Figure 3.21c). Furthermore, a publisher supporting capabilities as bundled inCPe 1
would offer a wider spectrum of adaptation than a publisher characterized byCPe2. By contrast, the potential support for generic properties as described inCPe3 is rather limited, most obvious for trustworthiness, precision and accuracy (cf., Figure 3.21e).
These differences are important when determining whether an expectation can be satisfied or not. We use expectationXe
1 we have discussed in Section 3.3.1 as an illustration. We visually
compare each capability profile withXe
1 by superimposing the star plot ofXe1 (cf., Figure 3.13a)
with the star plot of each capability profile. This is shown in Figure 3.21b, 3.21d, and 3.21f. Matching Xe1 against CP1e (cf., Figure 3.21b) shows that the expectation would be satisfied by notifications published by a publisher characterized by CPe1: the current state of each generic property is satisfying the expectation’s requirements as illustrated by the black line of the current values of CPe
1 being covered by the red area of X e
1 that defines its range of accepted values.
Matching Xe
1 against CP2e (cf., Figure 3.21d) in turn shows that the expectation would not be
satisfied at the moment as the current values for sampling rate, confidence of detection and precision are not covered by the red area ofX2e. However, the green area of the potential support of CPe
2 is overlapping with the red area of X e
2. Hence, adjusting the current values for these
generic properties could satisfyXe
1. Matching X e
1 againstCP e
3, however, shows that CP e
3 neither
does nor could satisfy the expectation. Even by applying adaptation, support for precision and trustworthiness could not be provided at a level required by this expectation as illustrated by the gap and missing overlap between the green and the red areas in Figure 3.21f.