Topic Maps-based Courseware to Support Undergraduate Computer Science Courses

Self-directed learning is an important component of any form of education – formal, informal, and lifelong learning. In self-directed online learning learners access Web-based course materials and choose their own learning paths, working depth, and pace. This is the norm when students work on completing open learning tasks, including projects or course assignments where they need to determine the type of information they should be looking for and the way to get that information. Finding relevant trusted information, however, is a recognized difficulty in Web-supported task performance. Students often need help, when experiencing knowledge gaps in dealing with different type of course tasks. Task information support on the Web is not always an easy and straightforward process. Much of the information is inaccurate, biased, out-of-date, or just not thorough enough. Our interest in information seeking is related to task information support in e-learning, considered as computer-based means that support the student’s exploration of a topic of interest in order to solve a task. In this context information seeking is an activity that originates from a task that generating an information need and entails some form of strategy including how and where. Up to this point, however, university education has largely remained unaffected by developments related to accessing and sharing  learning resources that can assist students in their course tasks. Too often, the assistance is restricted to using search engines such as Google. Thus far, students have not profited extensively from semantic web technologies  to facilitate learning processes. On the other hand  current Web-based educational practices indicate that courseware authors’ ability to gather and generate information exceeds their ability to organize, manage, and effectively use it.This project is inspired by the idea  that a concept driven access to learning material implemented as Topic Map can bridge the gap between the learner and knowledge domain. Using knowledge standards, such as Topic Maps (TM), it is possible to incorporate learning content in semantically rich data models. The expressive power of Topic Maps, commonly perceived as a method for indexing information resources, places the standard very close to artificial intelligence and knowledge modeling. Topic Maps resemble semantic networks and conceptual graphs, but offer more - a unique, standards-based way of encoding and exchanging knowledge on the Web. Topic Maps provide an external meta-structure (a knowledge navigation layer) in form of a dynamic, semantically based hypertext.

Currently available Web-based educational materials are mostly hypertext/hypermedia containing prevalently simple hierarchical links, often explicated in ‘table of contents’ pages or page navigation-button links and representing a recommended sequence in which the pages should be visited. An emerging trend in courseware content organization, reflecting efforts to improve its usability, is based on using knowledge classification, conceptualization, and indexing of the digital learning material. The most serious problem is that the created learning content does not have standards-based representation and therefore is not reusable, exchangeable, and interoperable. The educational materials standardization efforts require not only technological standardization, but also knowledge standardization, that is, creating specialized ontologies to be used as a backbone in courseware development. More and more general and specialized ontologies will become available in near future and will be shared and reused.

The driving idea of our project for a concept-based, ontology-aware courseware organization is to use a network of agreed upon concepts in a specific subject domain (e.g. physics, biology, etc.) as both a medium of domain knowledge representation, and a navigable information structure. Thus two different aspects are incorporated uniformly in our approach: domain conceptualization, which supports information findability (by enabling exploration of related domain concepts) and ontologies, which support shareability, exchange, and reusability of educational materials among different authors (by providing a common vocabulary for domain representation). The same network of concepts is used for classification and description of online learning resources through indexing, i.e. linking resources to relevant concepts (ontology terms).

Course-related learning activities are usually focused on practicing knowledge by applying previously introduced concepts. A natural and intuitive concept-based content browsing would help learners explore the ontological structure of the subject domain, which will further strengthen their reflection and enhance the internalization and refinement of their knowledge in the specific subject domain. Through allowing students to navigate and search course related material by broadly understood categories, concept-based courseware can be used as an e-learning task-support environment that assists students in locating information necessary to perform course tasks (assignments, projects, etc.). Thus concept-based, ontology-aware courseware could support learners in:

  • Efficient context-based retrieval of online information relevant to their current tasks.
  • Deeper understanding of the domain conceptual relation.
  • Acquiring new topical knowledge.
  • Creating individual learning and problem-solving paths.

From a courseware author’s point of view, subject ontology would enable the organization of learning material around small pieces of semantically annotated learning objects. The learning objects can be easily organized into customized courseware structures and delivered to the students, according to their goals and needs. Thus concept-based, ontology-aware courseware could support authors in:

  • Effective representation, management, and maintenance of both knowledge and information.
  • Reusing, sharing, and interchanging learning materials that allows rapid courseware development.

The Topic Maps technology is appropriate for developing such courseware as it provides a paradigm for organizing, retrieving, and interchanging semantic information on the Web.


Topic Maps-based Courseware Development

As part of our project activities we have chosen two Computer Science modules that are relevant to at least two undergraduate courses in order to be able to experiment with reusing and sharing them across different courses at local level. We have developed information support for “Java Programming”, which is relevant to “Computer Programming I”, and “Data Structures”; and “Prolog”, which is included in “Programming Languages” and “Artificial Intelligence”.

Topic Maps-based information support development (and courseware in general) comprises three phases: (1) identifying specialized domain ontology; (2) developing/identifying quality online learning materials and (3) creating educational Topic Maps based on (1). In turn this process comprises the following tasks:

  • Defining the domain ontology;

  • Collecting and examine online learning material;

  • Choosing an appropriate toolset.

  • Populating the ontology, i.e. to construct the topic map itself. This involved discovering the topics, associations and occurrences as far as possible from the available resources, and also enriching the topic map manually. Both the definition of the ontology and its population were iterative processes.

These are the essential tasks in any topic map application, but the amount of effort they involve varies tremendously from one application to another and depends to a large extent on the nature of the domain. Sometimes defining the ontology is less costly, because it already exists in some form, perhaps as subject classification, index, glossary taxonomy or table of contents. In other cases it requires serious analytical work with input from domain experts and can be a process that stretches over several weeks or months. Sometimes a lot of effort needs to be put into evaluating tools in order to choose the best fit for the job. In our case this was not problematic since we had already developed a Topic Map editor ourselves and wanted to use this project to make this tool even better.

Defining the ontology

Following The XML Papers: Lessons on Applying Topic Maps, by Steve Paper and Lars Marius  Grashol (http://www.ontopia.net/topicmaps/materials/xmlconf.html), our working definition of "ontology" in the context of topic maps is: The set of typing topics that is used within a given topic map, or that defines a class of topic maps. Creating a topic map amounts to creating an ontology.  Subject categorization, data dictionaries, indexes, catalogs, thesauri, classification schemas, site maps, are examples of Topic Maps. Since Topic Maps can be merged, it is also possible for a user to merge their own maps with the maps provided by other sources to enable them to connect their information with other relevant information.

As to our selected modules, the design of the domain ontology was based on an examination of existing course outlines, textbooks, tutorials, glossaries and subject classifications. The set of identified typing topics are organized based on class-subclass and part-whole hierarchy (extending predefined topic typing relationship). For example, the following partial structure, which is an extract of the Java Portal (http://iiscs.wssu.edu/p4j/) reflects a part-whole categorization.

  • Chapter 1: Introduction to Computers and Java
    • Compiling and Running a Java Program
    • Computer Systems
    • Java Program
    • Object-Oriented Programming
      • Classes and Objects
      • Component Reusability
      • Data Hiding
      • Encapsulation
      • Inheritance
      • Methods
    • Programming Languages
  • Chapter 2: Java Fundamentals
  • Chapter 3: A First Look at Classes and Objects

According to it  the Encapsulation section is part of  “Object-Oriented Programming” sub-chapter which in turn is pat-of “ Introduction to Computers and Java” chapter. Similarly  the following partial structure which is an extract of the Java Portal (http://iiscs.wssu.edu/p4j/) reflects the superclass-subclass topic tree.

  • Ontology
    • Encapsulation
        Classes
        • Class Structure
          • Attribute
            • Constants
            • Literal
            • String
            • Symbolic Constant
          • Variables
        • Interface
        • Method
        • Modifiers
        • Object

    According to it  the “Literal” is subclass of  “Attribute”  superclass that is subclass of “ Classes”, that is subclass of  “ Encapsulation” superclass, which in turn is subclass  “Ontology” superclass. The resources are linked to topics that are organized in a hierarchy, and there is an "uplink" to the much richer conceptual level. Therefore the learning resources can be viewed in the context of the related topics along with the relevant conceptual components of the learning collection. In a similar manner topics can be inspected in a drill down fashion. This means that the learner always sees the concepts to which the viewed resource is linked to and can always switch back and forth between the resource and topic domains. The P4J portal (http://iiscs.wssu.edu/p4j) is context and view driven (Fig. 1). The learner can inspect the collection from selected perspective (domain, course structure etc.) or choose to examine a contextually related topic (e.g. from the topic “Lists” to switch to the related topic “Recursion”). This kind of contextual visualization gives learner a feeling of being in a “relational space”.


    Figure 1. The P4J Portal.

    Creating and populating domain ontologies

    An ontology provides a general vocabulary of a certain domain, and it can be defined as “an explicit specification of a conceptualization”. In essence, an ontology gives the semantics to the metadata. In order to standardize semantic metadata, specific ontologies are introduced in many disciplines. Typically such ontologies are hierarchical taxonomies of terms describing certain topics. For example, the ACM Computing Classification System is a hierarchy (a tree) in which the nodes represent the classes of the taxonomy. In this context we use the Topic  Maps paradigm  to  provide a model for expressing the basic structure and content of domain concept schemes. Basically, the Topic Maps standard defines topics,  associations  and occurences that can be used to express the content and structure of a  learning collection (such as Concept, is-subclass-of, is-part-of, related, isSubjectOf, etc.). For example, is-subclass-of relation can be used to specify that a concept is broader than another one.

    Designing the ontology is an integral and important aspect of every Topic Maps application. It's rare that an ontology will simply be created to stand on its own--more often than not, new ontologies "borrow from" or "extend" existing ontologies. Due to the difficulties and costs involved in building an ontology from scratch, ontology engineering methodologies  often recommend to rely on available domain-related ontologies or structured data like course outlines, table of contents, dictionaries etc. Creating a Topic Map amounts to creating an ontology. Ontologies are being developed by interested groups from various sectors of academia. Many of these ontologies have been proven to be useful to wide communities. Based on this fact as a starting point we were trying to identify some (partial) domain ontologies for the pre-selected topic (e.g., Java and Prolog). The goal was to provide a structure for the learning collection  that can enable: information retrieval and information integration.

    Categorizing “what exists” in appropriate form provides a structure that enables learners to locate relevant resources. Quite a large number of applications based on ontologies have been published for e-learning. The applications typically utilize several ontologies. Examples of such ontologies are a domain ontology that captures knowledge of the subject that is being taught such as Java Programming (http://lina.es.ncku.edu.tw/JLOO/, http://www.site.uottawa.ca:4321/java/index.html.), an ontology that describes learners and their goals and features, or an ontology that describes pedagogical approaches, and how content should be presented. In addition course information support creation is based on a natural assumption that instructors are domain experts for the course they are developing. Once the ontology layer is complete then the next step is populating Topic Map with content . To achieve this we were using the TM4L editing environment. The application that is using the resulting topic map to make the course information support available to students is designed to use front end (i.e. user interface) without need for the users to have any additional knowledge about technical aspects such as topics, association occurences, ontologies, etc. (see http://iiscs.wssu.edu/p4j).


    A key motivating factor in our work on the project was to demonstrate the feasibility of or the proposed approach by creating real life Topic Maps for selected course modules.  The work on developing ontologies and identifying learning resources was derived by this main aspiration. An additional benefit of this work is the increased level of reusability by enabling the use of an existing conceptual structure with different course/module strictures. The related study demonstrated that the project goals were in line with the current trends in the e-learning field, evolving towards incorporating Semantic Web technology in education.  The research in the initial phase of the project shows that:

    • Concept driven access to learning material implemented as a Topic Map can bridge the gap between the learner and knowledge.
    • Topic Map paradigm enables representation of different perspectives of a domain instead of just capturing and representing a single view of the subject.
    • It is possible to increase the level of reusability by enabling the use of an existing conceptual structure with different course/module strictures.

    We believe that even at this early stage  we able to prove that educational Topic Maps can efficiently support students in their self-directed learning where they are actively engaged in seeking trusted relevant information. Providing adequate support for learners to efficiently search for useful web resources is crucial in self-directed learning and presently a problem of high priority in e-learning. We believe that context modeling and its incorporation for structuring course modules will contribute to the advancement in that direction by supporting efficient, context-based navigation of educational Topic Maps.

    • An original outcome of our work on the project is the  proposed computational framework oriented towards e-learning applications and information seeking tasks based on contexts.
    • The proposed model of context is used for context representation in the TM4L environment, which enables the creation, maintenance, and use of context-aware courseware based on Topic Maps.

    A portal-based version of the Java module (P4J) is available  for trial and evaluation at (http://iiscs.wssu.edu/p4j/).