Information Technology Reference
In-Depth Information
based on facts and rules. The boxes of the upper layer contain information available
for all users regarding tasks, dependencies and taxonomies of tasks/ modules.
The lower layer contains the modules that are available to each user. Every box
corresponds to a user, e.g. James has a file HelloWorld.java in his laptop and
has installed the applications Notepad and VI . If a user wants to perform a task
with a module then he can use the facts of her box and also exploit the rules from
the boxes of the upper layer.
In general, the problem of deciding the intelligibility of a module relies on
Datalog query answering over the set of modules that are available to the user. More
specifically we send a Datalog query regarding the task we want to perform with a
module and check if the answer of the query contains that module. If the module is
not in the answer then the task cannot be performed and some additional modules
are required. For example in order to check the editability of HelloWorld.java
by James we can send the Datalog query IsEditable(X) using only the facts
of his profile. The answer will contain the above module meaning that James can
successfully perform that task. In fact he can edit it using any of the two different
text editors that are available to him. Now suppose that we want to check whether he
can compile this file. This requires answering the query IsCompilable(X) .The
answer of this query is empty since James does not have a compiler for performing
the task. Similarly Helen can only compile HelloWorld.java and not edit it.
8.2.3.2 Discovering Intelligibility Gaps
If a module is not intelligible from the users of a DC profile, we have an
Intelligibility Gap and we have to provide the extra modules required. In particu-
lar, the intelligibility gap will contain only those modules that are required for the
user to understand the module. This policy enables the selection of only the missing
modules instead of the selecting all required modules and hence avoiding redun-
dancies. However the disjunctive nature of dependencies makes the computation
of intelligibility gap complicated. For this reason we again distinguish the case of
conjunctive from the case of disjunctive dependencies.
Conjunctive Dependencies
If the dependencies have conjunctive semantics then a task can be performed only
if all its required modules are available. If any of these modules is missing then the
module is not intelligible from the user. So if a module t is not intelligible by a user
u , then intelligibility gap is defined as follows:
Definition 3 The intelligibility gap between a module t and a user u with DC
profile T(u) is defined as the smallest set of extra modules that
are required to make it intelligible. For conjunctive dependencies
it holds:
Gap
Nr + (
Nr (
(
t , u
) =
t
) \
T
(
u
))
Search WWH ::




Custom Search