Identify interaction contracts
Define which kind of contracts are in place for the different kinds of interaction in the system. Identify what these
contracts need to capture, i.e., what the properties of an interaction are that will lead to different trust values. |
Define experiences
Once the contracts and the properties stored in it are defined, the data stored in the experiences needs to be
defined. This data can either be pre-processed, e.g., if only deviations from the agreed upon contract are stored, or raw
where both the contract and the result of the interaction are stored. The amount of pre-processing performed can greatly
influence the complexity if the trust model itself as well as the amount of data that needs to be stored. As a general
guideline, the experiences should only contain data that are used in the algorithm to derive the trust value. |
Define the semantic meaning of the trust value
Make sure you understand what the trust value means. It is important to define not only what the extremes of a trust value
mean (e.g., "0" equals no trust at all and "'1" the maximum amount of trust"), but also what the middle values express
(e.g., a trust value of "0.5" can mean different things from "behaves completely favorable in half the interactions" to
"only delivers half the agreed upon quantity). |
Describe the algorithm to derive the trust value from the input data
The algorithm that implements the trust model should be defined in a formal and unambiguous way. Usually, the model can be
expressed as a set of mathematical fomulae or as pseudo-code. If a model-driven approach is used, a language or modeling
paradigm that can be automatically transformed into code can be useful as well. |
|