Tim Lethbridge's PhD Thesis

This is the hypertext version of my thesis. It is also available in postscript, Adobe Acrobat pdf and MS Word 5.0 format. If you click on a section, the whole thesis will be loaded and positioned at that section.

You can also read a discussion of my PhD research and look at some papers about my research in general..

  1. Contents
  2. List of figures
  3. Introduction
    1. 1.1Overview of the research
    2. 1.2Definitions of important terms
      1. 1.2.1Knowledge acquisition and knowledge management
      2. 1.2.2Concepts
      3. 1.2.3Knowledge bases and ontologies
      4. 1.2.4Knowledge organizing techniques
      5. 1.2.5Formality and informality
      6. 1.2.6Mediating representations
    3. 1.3The Task: Practical knowledge management
      1. 1.3.1Uses of a knowledge management systems
      2. 1.3.2Non-computer-specialists as users
    4. 1.4The Problems: Factors that make knowledge management difficult
      1. 1.4.1Intrinsic problems
      2. 1.4.2Accidental problems
    5. 1.5A preview of techniques
      1. 1.5.1Knowledge representation techniques
      2. 1.5.2User interface techniques
      3. 1.5.3Knowledge measuring techniques
    6. 1.6Research history and methodology
      1. 1.6.1Research chronology
        1. Phase 1: CODE2 development (1989-1990)
        2. Phase 2: CODE4 development (1991-1992)
        3. Phase 3: CODE4 evaluation (1993-1994)
      2. 1.6.2Summary of the research methodology
  4. Other Technologies for Knowledge Management
    1. 2.1Technology from the field of artificial intelligence
      1. 2.1.1Descriptions of the tools
        1. CODE2 and CODE3
        2. Cyc
        3. KM
        4. Classic and LOOM: KL-One derivatives
        5. Knowledge acquisition tools
        6. Other relevant artificial intelligence technology
      2. 2.1.2Features of the AI-based tools found most useful in this research
        1. The frame-based representation
        2. Certain graphical representations
      3. 2.1.3Limitations of the tools for practical knowledge management
        1. Complexity of the languages and ontologies
        2. User interface weaknesses
        3. Difficulties dealing with names
    2. 2.2Personal productivity software
      1. 2.2.1Description of the tools
        1. Spreadsheets
        2. Outline processors
      2. 2.2.2Features of the tools that were found most useful in this research
        1. Large amounts of information displayed in a convenient manner
        2. The non-modal graphical user interface
        3. Easy extensibility
        4. The ability to work on multiple files at a time
        5. Automatic updating of multiple windows
        6. The ability to analyse `what-if scenarios'
        7. Absolute and relative references
        8. Easy facilities for extracting information
      3. 2.2.3Limitations of the tools for practical knowledge management
        1. Limitations on the ability to represent concepts
        2. Lack of inference capabilities
    3. 2.3Hypertext systems
      1. 2.3.1Features of the tools that were found most useful in this research
        1. The ability to navigate through complex networks
        2. Simple end-user oriented displays of informal information
      2. 2.3.2Limitations of the tools for practical knowledge management
    4. 2.4An object-oriented software engineering tool
      1. 2.4.1Features of OMTool found most useful in this research
        1. Graphical layout and editing of knowledge
        2. Associations, attributes and operations
        3. Annotations.
        4. Classes and instances
        5. Disjointness
        6. Discriminators
      2. 2.4.2Limitations of OMTool for practical knowledge management
        1. Limitations of the representation
        2. Limitations of the user interface
    5. 2.5Summary
  5. Knowledge Representation for Practical Knowledge Management
    1. 3.1Introduction
    2. 3.2An overview of concepts
      1. 3.2.1Classes of concept
      2. 3.2.2Knowledge management problems addressed by the way CODE4-KR organizes concepts
    3. 3.3Practicality vs. semantics and expressiveness vs. inference
        1. Practical effects sections
        2. Intended semantics sections
        3. Practical effects and intended semantics of inference mechanisms
        4. Summary
    4. 3.4Types vs. instances
      1. 3.4.1Practical effects
        1. Flexibility about whether concepts are instances or types
        2. Disjointness
      2. 3.4.2Intended semantics of types and instances
        1. The extension of concepts
        2. Quantificational patterns
      3. 3.4.3Observations on the use of types and instances
        1. Ontologies of types vs. databases of instances
        2. Types and instances as siblings in the inheritance hierarchy
        3. Instances of instances
        4. Summary
      4. 3.4.4Knowledge management problems addressed by types and instances
    5. 3.5Properties
      1. 3.5.1Practical effects
        1. Introduction, possession and most general subjects
        2. Subproperties and the property hierarchy
      2. 3.5.2Intended semantics
        1. Intensions
        2. The property hierarchy: a hierarchy of instances
      3. 3.5.3Observations on use
      4. 3.5.4Knowledge management problems addressed by properties
    6. 3.6Statements and facets
      1. 3.6.1Practical effects
        1. The circumstances under which statements exist
        2. The statement hierarchy
        3. Facets
        4. The value facet and the facet hierarchy
        5. Formal values, informal values and value items
        6. The basic inheritance rule
      2. 3.6.2Intended semantics
        1. The modality facet
        2. Subordinate value facets
        3. Value and modality consistency maintenance
        4. Multiple value items as sets
      3. 3.6.3Observations on use
      4. 3.6.4Knowledge management problems addressed by statements and facets
    7. 3.7Terms
      1. 3.7.1Practical effects
        1. Naming concepts
        2. Properties of terms
        3. The assignment of terms to concepts
      2. 3.7.2Intended semantics
      3. 3.7.3Observations on use
      4. 3.7.4Knowledge management problems addressed by terms
    8. 3.8Metaconcepts
      1. 3.8.1Practical effects
        1. The circumstances under which metaconcepts exist
        2. Metaconcepts as a way to support non-inheriting properties
        3. The implicit metaconcept hierarchy
        4. Important metaconcept properties
      2. 3.8.2Intended semantics
      3. 3.8.3Observations on use
      4. 3.8.4Knowledge management problems addressed by metaconcepts
    9. 3.9Primitive concepts
      1. 3.9.1Practical effects
        1. Primitive types
        2. Primitive properties
      2. Computed primitive properties
        1. Optimized primitive properties
        2. Editable and non-editable primitive properties
      3. 3.9.2Intended semantics
      4. 3.9.3Observations on use
      5. 3.9.4Knowledge management problems addressed by primitive concepts
    10. 3.10Further details of inference mechanisms
      1. 3.10.1Delegation
      2. 3.10.2Inheritance
    11. 3.11Knowledge organizing techniques at the representation level
    12. 3.12Comparison of CODE4-KR with other knowledge management technologies
    13. 3.13CODE4-KR as an abstract schema
      1. 3.13.1Alternate schemata
      2. 3.13.2The CODE4 API and its manifestation as the CKB syntax
        1. The physical representation and the API
        2. The knowledge map layer
        3. CKB Format
        4. Uses of CKB format
        5. Design of the CKB syntax
        6. Order dependence
  6. User Interface Techniques for Practical Knowledge Management
    1. 4.1Knowledge maps
      1. 4.1.1Details of how relations are specified
      2. 4.1.2Classes of knowledge map
        1. Inheritance hierarchies
        2. Property hierarchies
        3. Statement hierarchies
        4. Arbitrary relations graphs
      3. 4.1.3Commands available on the knowledge map interface
      4. 4.1.4Knowledge management problems addressed by knowledge maps
    2. 4.2Mediating representations and browsing
      1. 4.2.1Common features of CODE4's mediating representations
        1. Uniform ways of making selections
        2. Organization of mediating representations into hierarchies
        3. Organization of mediating representations into compound browsers
        4. Displaying the current state of the knowledge base
        5. Uniform handling of commands
      2. 4.2.2The outline mediating representation
      3. 4.2.3The graphical mediating representation
      4. 4.2.4The matrix mediating representation
      5. 4.2.5Knowledge management problems addressed by mediating representations
    3. 4.3Masks
      1. 4.3.1Using masks
      2. 4.3.2Knowledge management problems addressed by masks
    4. 4.4Other interface features
      1. 4.4.1The control panel
      2. 4.4.2The feedback panel
  7. Knowledge Base Measurement
    1. 5.1Introduction
    2. 5.2Some important definitions and background
      1. 5.2.1Measurements vs. measures vs. metrics
      2. 5.2.2Open-ended vs. closed-ended metrics
      3. 5.2.3Important metrics in software engineering
        1. Lines of code
        2. Function points
        3. Constructive Cost Modelling (COCOMO)
        4. Lessons learned
      4. 5.2.4Measuring knowledge bases vs. measuring knowledge
      5. 5.2.5The kind of knowledge bases to be measured
    3. 5.3General tasks for which knowledge base measurement may be useful
      1. 5.3.1Tasks A to D: Assessing the present state of a single knowledge base
        1. Task A - Assessing completeness
        2. Task B - Assessing complexity
        3. Task C - Assessing information content
        4. Task D - Assessing balance
      2. 5.3.2Task E. Predicting knowledge base development time and effort
      3. 5.3.3Tasks F to I: Comparison
        1. Task F - Comparing users
        2. Task G - Comparing domains
        3. Task H - Comparing development techniques
        4. Task I - Comparing representation schemata
    4. 5.4Proposals for metrics
      1. 5.4.1Metrics for raw size
        1. The total count of all CODE4 concepts, MALLC
        2. The number of main subjects, MMSUBJ
      2. 5.4.2Independent and closed-ended metrics for complexity
        1. Relative Properties, MRPROP
        2. Detail, MDET
        3. Statement Formality, MSFORM
        4. Diversity, MDIV
        5. Second Order Knowledge, MSOK
        6. Isa complexity, MISA
        7. Multiple Inheritance, MMI
      3. 5.4.3Compound metrics for complexity
        1. Apparent completeness, MACPLT
        2. Pure complexity, MPCPLX
        3. Overall complexity, MOCPLX
    5. 5.5Desirable qualities of the metrics
      1. 5.5.1How subjectively useful are the metrics?
      2. 5.5.2How intuitive or understandable are the metrics?
      3. 5.5.3How good is the mapping between the metric's function and the subjective phenomenon?
      4. 5.5.4Summary of desirable qualities of the metrics
    6. 5.6Summary
  8. Evaluation
    1. 6.1The basic evaluation procedure
      1. 6.1.1Details of the evaluation procedure
        1. Step 1: As many people as possible were solicited to build knowledge bases using CODE4.
        2. Step 2: The users were trained to use the system, or trained themselves.
        3. Step 3: CODE4 was regularly enhanced in response to requests from the users.
        4. Step 4: Information was gathered from as many users as possible
      2. 6.1.2The CODE4 user questionnaire
      3. 6.1.3Statistical tests
        1. Test type 1: Confirming that the mean reported for a question or measure is significant
        2. Test type 2: Confirming that the coefficient of linear correlation between two measures (or a measure and a question) is meaningful.
        3. Test type 3: Verifying that there is a statistically significant difference between two means.
      4. 6.1.4The indirect nature of the evaluation
      5. 6.1.5Why not run a `controlled' experiment?
    2. 6.2Evaluation of the metrics
      1. 6.2.1How independent is each complexity metric from the others?
    3. 6.3Evaluation of CODE4
      1. 6.3.1Evaluation by observing the general use of CODE4
        1. Do people choose to use the software in their work over a significant period of time and in significant projects?
        2. Is the software used in a variety of domains?
      2. 6.3.2Features users found useful
        1. What aspects of knowledge bases convey more of their content?
        2. How useful were the particular knowledge representation features?
        3. How useful were particular user interface features?
        4. Which mediating representation did users use most when entering knowledge?
        5. What other information can be learned about formality and informality in CODE4?
      3. 6.3.3Tasks performed during knowledge management
        1. How difficult do users find various knowledge management tasks?
        2. How difficult were naming tasks?
      4. 6.3.4General benefits of CODE4
        1. How much insight into the domain did participants obtain?
        2. Was creating the knowledge base a worthwhile exercise?
        3. How do users find CODE4's capabilities compare with those of other representations and tools?
      5. 6.3.5Analysing the knowledge bases created by participants
    4. 6.4Summary
  9. Contributions and Future Work
    1. 7.1General summary of the research
    2. 7.2Contributions of this research
      1. 7.2.1Contributions to knowledge representation
      2. 7.2.2Contributions to user interfaces for knowledge management
      3. 7.2.3Other general contributions
      4. 7.2.4Problems addressed by the research
        1. Problem I-1: Categorizing
        2. Problem I-2: Naming things
        3. Problem I-3: Making distinctions
        4. Problem I-4: Understanding effects
        5. Problem I-5: Extracting knowledge
        6. Problem I-6: Handling errors
        7. Problem A-1: Special purpose restriction
        8. Problem A-2: The expert user restriction
        9. Problem A-3: The small knowledge base restriction
        10. Problem A-4: The single-user restriction
    3. 7.3Future Research
      1. 7.3.1Future work on user interfaces for knowledge management systems.
      2. 7.3.2Future work in knowledge representation
      3. 7.3.3Future work on CODE4 in general
      4. 7.3.4Future work involving metrics
    4. 7.4Conclusions
  10. Bibliography
  11. Data About the Users
    1. A.1General questions about experiences with CODE4.
    2. A.2Questions about CODE4 knowledge representation features
    3. A.3Questions about CODE4 user interface features
  12. Summary of Data Gathered about Knowledge Bases
    1. B.1General data about the knowledge bases studied
    2. B.2Measurements of the knowledge bases
  13. CODE4 Design Principles
    1. C.1Assumptions about the user and environment
    2. C.2General principles
    3. C.3User interface principles
    4. C.4Knowledge representation principles
    5. C.5Inferencing principles
  14. CKB Format for a Sample Knowledge Base
  15. Glossary
  16. Index

Back to my home page