mind the (intelligibility) gap yannis tzitzikas, giorgos flouris institute of computer science forth...
TRANSCRIPT
Mind the (Intelligibility) Gap
Yannis Tzitzikas, Giorgos Flouris
Institute of Computer ScienceFORTH
{tzitzik,fgeo}@ics.forth.gr
17/09/2007 Giorgos Flouris, ECDL-07 2
Introduction on Dependencies
• Dependencies: a set of requirements (prerequisites) for something to be useful (readable, understandable, viewable, executable, …)
• Dependencies of this presentation:– Powerpoint software– Computer system, properly setup – Overhead projector– Knowledge of English language– …
17/09/2007 Giorgos Flouris, ECDL-07 3
Motivation
• Our purpose:– To model the dependencies of digital objects
• Problem of preservation– Maintain a digital object in a usable state in the future– Must have access to all the modules (e.g., software,
hardware, tacit or external knowledge etc) that it depends on
• A dependency model could help in determining:– Usability– What is missing to become usable– Necessary actions when something is about to become
unusable (e.g., a depending module becomes obsolete)
17/09/2007 Giorgos Flouris, ECDL-07 4
Modules and Dependencies
• Dependencies– A set of requirements for something to be useful– C depends on D (C>D) if C cannot be used (read,
understood, viewed, executed, …) without D
• A dependency relation applies between modules– Any physical or non-physical object can be a module
• Module types:– Software, hardware, explicit or tacit knowledge, mental or
physical abilities, documentation, manuals, …– Digital objects are special types of modules
17/09/2007 Giorgos Flouris, ECDL-07 5
Wordpad software
ORNotepad software
Modeling Example
readme.txt
Wordpad software
computer system
Greek language
power outlet
Windows software
Monitor
Notepad software
17/09/2007 Giorgos Flouris, ECDL-07 6
Dependency Graphs
{A}
{B,C}
{E}
{D}
{C}
{B}
A depends on E {A}>{E}A depends on B or C {A}>{B,C}D depends on B or C {D}>{B,C}B depends on D {B}>{D}D depends on F {D}>{F}F depends on B {F}>{B}
{F}
{G}
17/09/2007 Giorgos Flouris, ECDL-07 7
Preservation System
Preservation Setting
DependencyGraph
A A AA D E
F
System Profile: TS
C F
User Profile: Tu
D
All interesting modules are modeled here
{A}
{B,C}
{E}
{D}
{C}
{B} {F}
{G}
{A}
{B,C}
{E}
{D}
{C}
{B} {F}
{G}
17/09/2007 Giorgos Flouris, ECDL-07 8
Intelligibility Issues
E directly depends on D and G
E is intelligible if D and G are intelligible
E depends on E, D, G, {B,C}, B, F
E is intelligible if E, D, G, {B,C}, B, F are accessible
Tu1={D, F, G}
Tu1 is not self-intelligible (e.g., F is not intelligible)
Tu2={B, D, F, G}: self-intelligible
E is intelligible by Tu2
E is not intelligible by Tu1
Missing module: B (Intelligibility Gap)
{A}
{B,C}
{E}
{D}
{C}
{B} {F}
{G}
17/09/2007 Giorgos Flouris, ECDL-07 9
Emulators (Migrators, Translators, …)
A B
E
{A}
{C,E} {C,B}
Not in profile
Unintelligible
{C}
To read a postscript (ps) file without access to a postscript reader, one can transform it into pdf (using ps2pdf.exe), then read it using Acrobat Reader
readme.ps readme.pdf (using ps2pdf.exe)Emulated module Emulation target (using Emulator)
Emulated module
Emulator
Emulation target
Emulation scheme
A is intelligible if C is intelligible
or if E and B are intelligible
Equivalently:A is intelligible if
C or E are intelligible and
C or B are intelligible
17/09/2007 Giorgos Flouris, ECDL-07 10
Changes in Dependency Graph
• A dependency graph is rarely static:– Modules become obsolete and disappear from system’s
and/or users’ profiles– New modules appear (e.g., new emulators created, new
versions of modules appear)– Errors, flaws or problems may be spotted in the original
modeling of the dependencies– Change of focus, perspective, needs or granularity of
modules and dependencies
17/09/2007 Giorgos Flouris, ECDL-07 11
Handling Change
• Two types of change operations:– Atomic (trivial, one-step operations)– Complex (sequences of atomic operations)
• Requirement #1: Validity– Result makes sense (e.g., profiles contain known modules,
dependencies relate known modules etc)– Hard constraint: spawns side-effects or is blocked (rejected)
• Requirement #2: Self-intelligibility– System and user profiles should be self-intelligible– Soft constraint: spawns a notification
17/09/2007 Giorgos Flouris, ECDL-07 12
Change Operations (Summary)
Change OperationApplies
on graphApplies on TS
Applies on Tu
Add Module
Delete Module
Add Dependency
Delete Dependency
Replace Module
Upgrade Backwards Compatible Module
Add Emulation Scheme
Atomic
Complex
17/09/2007 Giorgos Flouris, ECDL-07 13
Conclusion and Future Work
• Provided a framework for modeling dependencies– Very general mechanism– Allows determining the modules required for a digital object
to be intelligible– Applications in digital preservation
• Our purpose:– To provide a framework (i.e., a tool) not a methodology (this
is application-dependent)
• Future work– Devise efficient algorithms for determining intelligibility– Determine computational complexity
17/09/2007 Giorgos Flouris, ECDL-07 14
Thank you…
This work was partially supported by the EU project CASPAR (FP6-2005-IST-033572)