web·Book -
Integrating content organization, presentation and services

Werner B. Joerg
Electrical & Computer Engineering Dept.,
University of Alberta


ABSTRACT

 web-Book is a content organization and course delivery product that has been tested and refined over the past three years in University undergraduate course settings. It started from an extensive set of HTML documents with embedded navigation buttons, used in a web-supported course in Software Engineering. It has evolved into a topic independent tool to collate, annotate and present WWW-based documents as electronic books, complemented with a number of interactive services supporting delivery and management of courses. The product, in its present form, consists of a collection of Javascript enhanced web-pages, that provide for navigation through structured course material, and integrate a dynamic, color coded "to do" list, bibliographic references, auxiliar reference material, linked problem/solution sets, and asynchronous interaction facilities.
Three premises are at the root of web-Book: i) reference material used in courses is highly structured; ii) content providers may want to incorporate "seamlessly" their own web pages and references to other qualified WWW-documents; iii) web-courseware does not only consist of static reference material: it must also integrate mechanisms for announcements and facilities forsynchronous/ asynchronous interaction. In this paper we show how web-Book addresses these premises. We report the experiences gained through successive deliveries, from the perspectives of the students, the instructor and the developer. To conclude we reposition web-Book within webStract, an ambitious extension towards collaborative problem-solving and learning.

Keywords: hypermedia, learning, WWW courseware, electronic book, web-book, navigation


BACKGROUND

 web-Book is an essential step towards the realization of our vision of project-driven learning. The model that we envision, has emerged from a course in Software Engineering, the delivery of which was driven by the needs of carefully selected team projects. We aim at building a set of computer-based tools supporting development and delivery of courses along this vision. The model emulates the operation of a project team through monitoring, coordination and personalized guidance of the activities of each team member, and it maintains context dependent reference material to direct the learning process. As a result we create an environment that fosters individual initiative and learning through collaborative problem solving. This implies that the course material should include means for synchronous and asynchronous interaction, that it must offer sophisticated document retrieval services, and that it must be accessible to the students anytime, anywhere.
The emergence of the WWW technology on the Internet, and its successive advances, from HTML 2 to Java, have provided an increasingly powerful tool for the realization of our vision.
Accordingly, web-Book has evolved from an early experiment in WWW-supported courseware in 1994/95, to a topic independent tool to collate, annotate and present WWW-based documents as electronic books, complemented with a number of interactive services supporting delivery and management of courses.
web-Book is still a long way from our vision of project-driven training, but it constitutes a central component in our ambitious (Java based) "webStract" project which we shall introduce briefly in the conclusion.

The following summary of the evolution of our course material illustrates the dramatic effect of the evolution of WWW technology on the level of services, presentation and interaction available to content providers and users.

  • '94-'95 edition (Intended to be viewed with Netscape 1.1)
  • '95-'96 edition (Intended to be viewed with Netscape 2.1)
  • '96-'97 edition (Intended to be viewed with Netscape 3.0.1)
  • The remainder of this paper is structured as follows: In the Motivation section we discuss the need for tools facilitating knowledge acquisition, elucidation, presentation and services. Then, under The user's view we describe the mechanisms to access and navigate well structured material, and to interact with peers and teacher. In the The content provider's perspective section we elaborate on how web-Book supports the tedious task of collecting and organizing knowledge. In the section entitled Delivery we focus on packaging and delivery formats, and we report experiences from the perspective of the developer (content provider), teacher and users. Finally, under Conclusion we share our view about where web-Book fits w.r.t. other web-tools (web-CT, Virtual U, ...) and we provide a first glimpse into the webStract project.

    MOTIVATION

     The need to provide means for putting together WWW-courseware, for presenting it in a consistent style, to provide for easy navigation and to embedd "Services", determine the primary motivation for the current design of web-Book. We have identified three premises to guide the design:
    1. reference material used in courses is highly structured;
    2. content providers may want to incorporate seamlessly their own web pages and references to other qualified WWW-documents;
    3. web-courseware does not only consist of static reference material: it must also integrate mechanisms for announcements and facilities for synchronous/ asynchronous interaction.
    We divide this section into four parts, dealing with knowledge acquisition and organization, with knowledge presentation, with navigation, and with integration of services respectively.

    Knowledge acquisition and organization

     Premise ii) suggests that support must be offered to content providers for collecting qualified reference material on the WWW and combining or complementing it with their own web material into a homogeneous package.
    Much of this support is already available through the search and bookmarking facilities of the most common browsers. "Bookmarks" - also called reference pointers - consist typically of the URL of the referenced WWW-page, its title, its date(s) when added and when last visited. We may therefore limit the task of web-Book to accepting "bookmark-files" as an initial layout of reference material, and to providing means for (re)organizing, editing and structuring the reference pointers. The result of this process is retained in a "pagelist-file", which constitutes a booklet in web-Book terminology. We'll introduce the format of the pagelist file in section 4.

    Knowledge presentation

     Knowledge presentation in this context refers both to the imposition of structure upon the selected reference material, and to its elucidation.

    Navigation

     We distinguish three types of navigation: topic, thematic, and thread navigation.

    No amount of sophistication for navigation however, can guarantee that users do not "get lost". So, rather than trying to cover all possible aberrations, we have decided to complement the navigation tools with a Where am I? button that may be activated at any time and that highlights the position of the current document within the table of contents.

    Integration of services

    To this point, web-Book is merely a sophisticated viewing tool that allows hypertext-based access to reference material. Much of this could be achieved with any hypertext reader accessing material distributed by a content provider for "off-line" viewing. The only benefit gained from the connection to the Internet, is the ability to incorporate live references to foreign documents.
    The real benefit of the WWW emerges when we combine this "static" viewing component ("knowledge component") with a "dynamic" service component ("operational component") that allows to publish changing information, that supports synchronous or asynchronous interaction, and that provides controlled access to a variable pool of information. With these functionalities we have integrated into web-Book services such as (see fig. 4) periodically updated course information, list of things to do (with color coding of urgency and links to relevant documents or forms), variable pool of additional course resources (e.g. bibliography - also linked into the reference material -, links to team home pages and documents), frequently asked question archive, discussion forums, forms for submission of questions (to the course instructor or TAs). It must be noted that several such services have been available on the Internet before the WWW era: WWW technology allows to integrate them into a cohesive environment.
    As we shall see under section 5. Delivery, the separation into static and dynamic components, will prove advantageous for effective packaging of the course material.

    THE USER'S VIEW

     A web-Book user is confronted with four main interfaces: the top level for selection of services and course material; a set of service views; a table of contents for selecting an entry point into the course material; and a viewing window for display of the selected material and navigation.

    The top level interface

     Web-Book's initial window contains three frames: the "main control panel" at the top left, the "Book cover panel" at the top right; and the third frame, covering the remainder of the window serves as display area for the various functions available in the top frames. The main control panel offers services such as "Configuration", "Help" and "Guest Book". Clicking any of these buttons displays corresponding information in the display area. The principal role of the main control panel however, is to show the available Books in a drop down menu. Once the user selects a book, the corresponding cover is displayed in the "Book cover panel", replacing the initial default cover. The book cover opens access to the reference material, as well as to the associated services: the reference material consists usually of a list of "booklets" (typically chapters or sections of the "Book") and a table of services. Upon selection of a booklet, a corresponding live table of contents is created in the display area. In fig. 5 we show the effect of selecting the booklet "Introduction" in the book "CMPE 313 Software Engineering" (note that in this case the list of booklets is matched to a "clickable image", and that the booklet title "Introduction" is hidden under the course motto "Making great ideas fly"). Note also that much of the help facility is built-in by displaying, in the status line, a short description of any item pointed at by the cursor.
    If we scroll down the book cover, the table of services (as shown in fig. 4) appears.

    Service views

     Clicking any of the cells of the service table brings up a corresponding service view. For space reasons we shall focus here on the "Things to do" service represented by the to do list window (fig. 6). A short explanation of this window is appropriate: we have decided to provide the course instructor with the means to classify the many things students and teams are expected to complete during a course - in this example we distinguish activities directly related to the classroom, activities of the various teams, reading assignments, etc... A color coded summary of the corresponding categories is displayed in the summary panel, reflecting the highest urgency of any item in each category. Clicking on any category in the summary panel brings up the details of that category, sorted in decreasing order of urgency. Note that the items in the category panel may contain live links to related material.
    Readers are encouraged to explore other services, e.g. the "Resources" view, in particular the selection for problem sets and suggested solutions.

    The table of contents

     A closer look at the table of contents (bottom part of fig. 5) reveals a number of useful properties: the header panel offers means to alter the overall appearance of the table, e.g. the buttons to the left allow to control the number of indentation levels to be displayed; the buttons to the right allow to switch the presentation format between a list and a table representation, to show or hide all the "Abstracts" and to alternate between full and short topic index. Fig. 7 illustrates the effects of these controls. The table of contents itself is collapsible and live, i.e. the arrow symbols can be used to expand/collapse indentation levels, and all line items are linked to a document in the reference material. The symbols <<A>> and <<N>> indicate that there is an Abstract or a personal Note attached to the corresponding document, and can be used to show or hide it. Obviously the itemized action of these symbols overrides the overall appearance controlled through the header panel. Another symbol, <<K>> (not visible in the example) appears if the document has an associated list of keywords.

    The viewing window

     When a line item in the table of contents is selected, web-Book opens the viewing window, which consists of three panels (Fig. 8, background window): a title panel, a viewing panel and a navigation panel. In addition to the obvious document title and the document index, the title panel will also display any associated abstract and list of keywords.
    The navigation panel provides for topic and thread navigation (from left to right, excluding the "?" button): parent topic, previous topic, thread backward, thread forward, next topic, next parent topic. Note that active buttons are highlighted, and that the status line describes the destination, when the mouse is moved over any button. The "?" button implements the "Where am I" function: it leads back into the table of contents and highlights the corresponding entry. (If that entry is not visible, the table of content is expanded accordingly). The "Add Note" button, which is not yet fully implemented due to Javascript limitations, will allow the readers to attach their own notes to any page (invisible to other readers) - once such a note is attached, the button turns into "Show Note".
    The viewing panel displays the content of the currently selected document; if this document is owned by the content provider, additional web-Book services may be embedded as shown in the front of Fig. 8: a link in the main document opens a sidebar, which itself contains a link to the bibliography; such bibliography links may be contained also in the main document. The full bibliography may be accessed under the "Resources" section of "Services".

    THE CONTENT PROVIDER'S PERSPECTIVE

     Most of the user interface, as presented in the previous section is generated by web-Book and does not require any intervention from the developer, so that content providers can focus on the substance rather than dispair over syntactic or semantic intricacies of the underlying language. In short, the only steps the content provider needs to take are deciding on what information to use and on how to organize it; deriving the pagelist file for each booklet; complementing it with additional data such abstracts, keywords and new titles, if necessary; deciding on the services to be offered and where to be maintained; creating a book cover and entering the new book in the booklist file. Content providers who create own documents for inclusion in the reference material, may exploit additional features such as sidebar, thematic links and bibliography. That's it: everything else - presentation of the list of books and booklets, creation of the tables of contents, labeling of the document index, navigation, access to abstracts and keywords, hooks to services - is taken care of by web-Book. Let us look in more detail at the content provider's tasks. (Note: for non-programmers the following may look intimidating, but in reality much of the work can be accomplished through slight modification of existing files or templates).

    Knowledge acquisition and organization

     We suggest that a WWW-browser with bookmarking capabilities be used, to collect references (local and external) to the documents of interest. The organization process may be more effective, if the documents are visited in the order intended for each booklet. Once the collection process is completed, the bookmark file must be manipulated to adjust order and indentation of the pages, and to insert section headings for subtopics (some browsers provide this functionality, others may require a text editor). These steps must be repeated for every booklet (chapter).

    Building the pagelist files

     The bookmark files generated above are the basis for the pagelist files, one for each. The pagelist files contain actual invocations of Javascript methods defined in web-Book, i.e. they are external Javascript programs. Here are the definitions of the permissible method calls:
      addPage(ordered,addrLoc,dateAdded,title,addrNote) 
      folder(ordered,addrLoc,dateAdded,title,addrNote)
      endFolder()
      addAbstr(txt)
      addKeyW(txt)
    
    The first three methods are used to define the document order and indentation in the table of contents. (Note that the folder directive, which corresponds to a topic title, may contain a document reference too). The translation of the bookmark file into a pagelist file can be automated (e.g. with a Perl script): bookmarks translate into addPage, and separators/indentation into folder / endfolder pairs. The remaining two methods allow for the association of abstracts and keyword lists with any document. Such entries may be made during the elucidation process. The following excerpt shows pieces of the pagelist file pertaining to the "Introduction" booklet shown in fig. 5.
      addPage(true,"/F_motiv/baber_0.htm","","My favorite introductory story","")
      addAbstr("...  has been written a long time ago, or has it?")
    
      folder(true,"/Intr.htm#top","849972888","What is Software Engineering?","")
    
        folder(true,"","","A Need for Software Engineering","")
          addAbstr( "There is more to SE than just writing programs and debugging them!")
          addPage(true,"/F_need/fact.htm#top","849972950","Some facts","") 
          ...
        endFolder()
    
        folder(true,"/pslv.htm#top","849973056","A problem-solving approach to Software Engineering","")
          addPage(true,"/F_pslv/modl.htm#top","849973071","A model for problem solving","")
          addPage(true,"/F_pslv/cmpl.htm#top","849973090","Handling complexity",
            "/myNotes.htm#top#1")
            
          folder(true,"/F_pslv/soln.htm#top","849973148","The Software Engineering Process","")
            addPage(true,"/F_pslv/F_soln/what.htm#top","849973172","Determining the WHAT","")
            ...
          endFolder()
        endFolder()
    
        addPage(true,"/road.htm#top","","Derivation of a Roadmap to Software Engineering","")
      endFolder()
    

    Designing the Book cover

     No particular directions are to be followed for book cover design. There are however two principal elements that should be part of the cover: a list (or map) of the available booklets, and a collection (e.g. table) of services. The following excerpts of the CMPE 313 book cover illustrate the use of the various "hooks" available (in bold face; user entries italicized):

    For the list of booklets:

      <ul>
        <li>
          <a href="javascript:openBooklet('Intro','Introduction')" 
            onMouseOver="window.status='Click to select Booklet *Introduction*'; return true"
          >Introduction</a>
        <li>
        ...
      </ul>
    
    For the table of services:
      <table border cellpadding="5" width="100%">
        <tr>
        <td align="center" bgcolor="ffffdd" width="33%">
          <a href= 
            "javascript:parent.service('Org/org.htm',false)" 
            OnMouseOver="window.status='Display course administration menu'; return true"
            OnMouseOut="window.status=''"
          <Course organisation</a></td>
        <td align="center" width="33%" bgcolor="ffaadd">
          <a href= 
            "javascript:parent.toDoList()" 
            OnMouseOver= "window.status='Display summary of things to do'; return true"
            OnMouseOut="window.status=''" 
          <Things to do</a></td>
          ...
      </table>
    

    Updating the list of books

     When updating the list of books, we must decide where the static component (reference material) and where the dynamic component (services) of the new book are to be located. Here is for example the entry for CMPE 313:
      addBook("../../Books/ce313/","CMPE 313 Softw. Eng.",
        "http://www.ee.ualberta.ca/~wjoerg/wwwSupport/ce313/Services/")
    
    This indicates that the reference material is accessible on the user's machine and the services are maintained on the departmental server.

    Adding more navigation support

     In documents owned by the content provider, additional navigation support such as sidebars, thematic references and bibliographic references may be added, using a set of methods built into web-Book. The following excerpts illustrate how these services can be embedded in any HTML document. (method name in bold case; user entries italicized). Note that the omnipresent "parent.opener.parent." leader of the method invocation is necessary due to the hierarchy of the Javascript files in web-Book; it guarantees that the invocations "work" with any document, at any level.

    For sidebar:

      <a href=
        "javascript:parent.opener.parent.sideBar('xyz.htm',500,250)"
        onMouseOver="window.status='Show sidebar'; return true"
        onMouseOut="window.status=''"
      >xyz</a>
    
    For forward references:
      <a href=
        "javascript:parent.opener.parent.move(true,'title in toc')"
        onMouseOver="window.status='Forward reference'; return true"
        onMouseOut="window.status=''"
      >forward</a>
    
    For backward references:
      <a href=
        "javascript:parent.opener.parent.move(false,'title in toc')"
        onMouseOver="window.status='Backward reference'; return true"
        onMouseOut="window.status=''"
      >backward</a>
    
    For bibliographic references:
      [<a href=
        "javascript:parent.opener.parent.showLitRef('etal99')"
        onMouseOver="window.status='Bibliography: show reference'; return true"
        onMouseOut="window.status=''"
      >etal99</a>]
    
    To explore references outside of current booklet:
      <a href=
        "javascript:parent.opener.parent.explore('blabla.htm')"
        onMouseOver="window.status='Click to explore'; return true"
        onMouseOut="window.status=''"
      >blabla</a>
    

    Maintaining services

     We have seen already how service hooks are used in the book cover. This paragraph deals with the maintenance of services. Since services are usually quite application specific, we shall focus only one of the generic services: the To Do list.
    The following excerpt of the list used for fig. 6 shows the entries made by the course instructor in the todo list file for the CMPE 313 book:
      addItem('class','Elaborate on the following statement:<br>'+
        '"It is impossible to be definitive about a problem specification'+
        ' when establishing the SRD."','970829/1400')
      addItem('lab V6','Acceptance tests 76E1','971128/1500')
      addItem('class','Mid-term exam','970914/1300')
      addItem('class', 'End of classes, at last', '971203/1350')
      addItem('class','Personality assessment <a href="../forms/Pers_1.htm"'+
        ' target=_blank>#1</a>','970825/1400')
      addItem('class', 'Class <a href="../forms/regist.htm"'+
        ' target=_blank>registration/questionnaire</a>','970823/1400')
      ...
    
    Each entry consists of the invocation of a predefined Javascript method, with parameters describing the category, the text of the item of concern, and the deadline (date/time). Note that items items may be listed in any order: classification, sorting, prioritizing and color coding are done by web-Book at the time of display.

    DELIVERY

     As stated earlier, the concepts for web-Book, and even more so for its successor webStract, are derived from the author's experience with repeated delivery of a "project-driven" course in Software Engineering. The projects are usually real-life problems presented by domain experts (industry or academic). As a consequence, students face two problem areas: a) learning about the project sponsor's domain of discourse and understanding the problem, and b) learning how to translate this understanding into a reliable working product that fulfills the sponsor's (frequently changing) needs, within tight constraints on available resources. Students select their preferred project and form their own teams, but they are expected to cater to the former problem area on their own. The aim of the course is to provide tools and guidance for the latter (formal) problem area.

    We have therefore established the following principles for course delivery:

    web-Book has been designed as an experiment addressing the diversity of functionality required for the delivery of a course along these guidelines: it embeds (a)synchronous services for team interaction; it provides the instructor with means to post sample work-documents, with links into the reference material, and to post deadlines, for reading assignments or for submission of work-documents; it supports highly structured reference material, for easy top-down presentation in class; it enables random access to topics for direct access to details; it supports sidebars for fast access to additional explanatory information.
    It has been suggested earlier that we distinguish between a dynamic and a static component. web-Book is accordingly packaged, into three parts:
    1. the web-Book program (a hierarchy of html/javascript documents as illustrated in fig. 9)
    2. the dynamic service component (located on the course server)
    3. the static course (reference) material
    This separation allows students to access the course material either through public labs or through a copy of the web-Book program on their personal computer; they may download the knowledge component for local, off-line viewing, and still maintain access to the operational component through an internet connection. A copy of the knowledge component is left on the server for access by visitors, and for live access during classes held in a multimedia classroom.

    Experiences: To be effective, hypermedia systems must be more than a linking of multimedia resources but must, in Jonassen's words, be a "network of nodes that are conceptually organized and interrelated by a linked structure" [Jon91]. Determining an optimal design of this linked structure is a challenge to educators, as Park observed [Prk91] and suggested the use of buttons that follow the logical topic structure. In our WWW-supported course we address the issue of knowledge structuring, by evolving the course along a generic scenario for the development of a software engineering project [Prn94] - consistent with schema based learning. The issue of navigation is addressed by limiting the types of links to topic, thread and thematic, i.e. even more restrictive than de La Passardiere and Dufresne's [dLPD92], (also [Ekl95]), puntual, structural and historical tools. The mere fact that, based on student's comments, we felt compelled to introduce thread navigation, could be seen as undermining these researcher's optimism. We shall limit our comments however, to the observation that topically structured and linked material may be of little use to novices who long for strict linear guidance until they have built up enough understanding; but it is a powerful tool for systematic (top down) presentation and reviewing of reference material.
    Since in real life projects, the process steps may follow different sequences, or may require different emphasis, we anticipated that using hyperlinks would help absorb minor variations in depth and ordering of learning needs. In spite of a study extended over two separate editions of the course (results have been reported elsewhere [AnJo96]), no conclusive evidence could be identified, confirming or dismissing that expectation. We suspect that the combination of novelty of the material, topic sequencing along a generic project, and tight time frames gave students little room for variation, and therefore de facto lockstepped the development steps with the learning process - quite the opposite of what we want to achieve with project-driven training. On other issues our experience is consistent with other researcher's reporting, e.g. like Hart [Hrt95], we have observed an unexpected rush by students to create hard copies of the course material. We are unclear whether the complete implementation of the targeted product - project driven training, with problem based retrieval of learning material - would affect this behaviour, or whether it is inherently tied to the "threading" problem reported above.
    An interesting observation w.r.t acceptance by students: a pattern of initial excitement and enthusiasm, shifting towards a fairly even distribution of total embracement, moderate acceptance and total rejection, observed over the first two years, seems to flatten out: less ostensible initial enthusiasm turns into broader moderate acceptance. This leads us to believe that web-Book, and WWW-technology in general, is coming of age, moving from a subjective love/hate relationship of a toy, to objective acceptance of a useful tool.
    From the teacher's perspective, the service component is most effective in several ways: posting of the to do list has never again led to any discussions about "misunderstood" deadlines; the ability to post forms for weekly reports - and withdraw them shortly after the deadline - establishes very quickly a reliable reporting procedure; and the fact that problem sets and suggested solutions are open to public scrutiny, motivates course instructors to work out "clean" solutions.

    CONCLUSION

     Over the past two years a growing number of tools for the development and delivery of WWW courseware have been proposed or are being built ([BruSW96], [GoSS96], [SchBW96], [HaCa95]). From our perspective, the roles of web-Book w.r.t. Web-CT and Virtual-U are of closest interest.
    Both Web-CT and Virtual-U are server based tools; the former operates primarily as an elegant tool for generation of web courseware with built-in facilities for delivery; the latter stands as a container for courseware and supports primarily delivery. web-Book is not server-based: its entire functionality is distributed to the user's platform, connecting to some server only for acces to shared documents. This characteristic is essential for the future role of web-Book within webStract. At present we envisage web-Book taking a role between Web-CT and Virtual-U: booklets could be produced and enhanced with Web-CT, and web-Book would instantiate a particular style of course delivery within Virtual-U.

    The experience gained with web-Book, in particular some of the above "shortcomings" has convinced us that we are on a track worthwile exploring; a track along which web-Book in its present form is a necessary intermediate step. In our ongoing work we have streamlined the task of web-Book as a tool to explore and navigate sophisticated electronic books, within a wider concept: webStract - an imaginary term alluding to the double role of abstracting information from the web, and extracting context dependent portions on demand.
    webStract extends the scope of web-Book from a navigational, individualized framework to a distributed knowledge base and communication tool for collaborative learning. A number of significant enhancements integrated into one platform independent product, contribute to the uniqueness of the targeted product:
    A first enhancement is the product's database - an extension from collating HTML documents to a document-independent "knowledge base" potentially capable of archiving, referencing and linking any electronic document. WebStract performs content (keyterm) analysis of submitted documents and records the results in the database as MCF (Meta Content Format) descriptors, which can be enriched by the content providers as well as the end users. Content analysis consists of statistical, language independent extraction of keyterms and a characterization as to their distribution. The database can be searched; inference about such characterizations is used for preliminary sorting of the retrieved documents. The results can be collated and elucidated into "books", which can be viewed by the streamlined version of web-Book, capable of handling a multitude of electronic documents (e-mail fragments, synchronous meeting reports, HTML, pdf ,...).
    The second enhancement is a move from the single-user model of the web-Book to a distributed, multi-user system. A webStract deployment can be visualised as a set of "nodes". Each node has access to a pool of data items, either local to the user or through connections to other nodes. Each data item will be either public, private, or keyed: public meaning any other node connecting to the node can access the data; private meaning only the owner can access the data; and keyed meaning the owner can selectively control who has access to the data. With the architectural shift to a distributed environment, a significant expansion of the services becomes possible. webStract tightly integrates synchronous and asynchronous interaction through the concept of "foyers": for synchronous meetings, interested (or invited) users congregate in dedicated meeting rooms operated by electronic clerks ("bots"); for asynchronous users may post to bulletin boards in the foyer, post messages to individuals or groups, or join particular discussion threads.
    All asynchronous documents generated through such interactions are implicitly analyzed and recorded in the database, which makes them all retrievable through the search mechanisms. All documents recorded in the database can also be annotated, i.e. individual users may create persistent notes as they browse documents in the knowledge base, and may review them each time the carrying document is retrieved.

    Much of the above functionality is already in place and our focus is currently on graph-based project guidance, and integration of automated activity reporting for evaluation purposes. We target the '98 spring edition of our Software Engineering course as a first test vehicle for webStract/web-Book.

    Acknowledgement

    The author wishes to acknowledge partial financial support for an early version of web-Book, by the "Alternative Delivery Initiative" at the University of Alberta. Development and evaluation of webStract are being made possible through "Learning Enhancement Envelope" grants from the Alberta Government and funding from the "Office of Learning Technologies" of the Government of Canada.

    References

    [AnJo96] Anderson T. and Joerg .W, Perceived Effectiveness of World Wide Web to Supplement University Level Classroom Instruction. Canadian Journal of Educational Communications 25(1) 19-36

    [BruSW96] Brusilovsky P., Schwarz E., and Weber G., A Tool for Developing Adaptive Electronic Textbooks on WWW, Proc. WebNet-96, 1996

    [dLPD92] de La Passardiere B., and Dufresne A., Adaptive navigational tools for educational hypermedia, Proc. ICCAL 1992

    [Ekl95] Eklund J., Cognitive models for structuring hypermedia and implications for learning from the world-wide-web, Proc. of ACCE Conf., 1995

    [GoSS96] Goldberg M., Salari S., and Swoboda P. World Wide Web - Course Tool: An Environment for building WWW-based Courses, Computer Networks and ISDN Systems, 28, 1996

    [HaCa95] Harasim L. and Calvert T., The Virtual University and continuing education for engineers. Proc. 6th World Conference on Continuing Engineering Education, Brazil, 1995

    [Hrt95] Hart G., Learning Styles and Hypertext: Exploring User Attitudes, Proc. ASCILITE'95 Conf., 1995

    [Jon91] Jonassen D., Hypertext as instructional design, Educational Training Research and Development, Vol. 39, Nr. 1, 1991

    [Prk91] Park O., Hypermedia: Functional issues and research issues, Educational Technology, Vol. 331, Nr. 8, 1991

    [Prn94] Parnas D., Teaching Programming As if it Were Engineering, Proc. ASEE Conf. 1994

    [SchBW96] Schwarz E., Brusilovsky P., and Weber G., World-Wide Intelligent TextBooks, Proc. ED-TELECOM'96 Conf., 1996


    APPENDIX - Figures


     
     

    Figure 1: Sample navigation bar of the '94-'95 version


     
     

    Figure 2: Navigation frames of the '95-'96 version


     
     

    Figure 3: Valid document structures in web-Book


     
     

    Figure 4: Table for selection of services


     
     

    Figure 5: View of web-Book panels (Software Eng. course/ Booklet "Introduction" selected)


     
     

    Figure 6: "To Do List" panels


     
     

    Figure 7: Effects of buttons in header panel of table of contents


     
     

    Figure 8: Viewing panels and navigation


     
     

    Figure 9: web-Book architecture (HTML/Javascript implementation)


    Werner B. Joerg
    Professor, E&CE Dept.
    University of Alberta
    Edmonton, Alberta T6G 2G7 Canada
    wjoerg@ee.ualberta.ca
    http://www.ee.ualberta.ca/~wjoerg


    ©, 1997. The author, W.B. Joerg, assigns to the University of New Brunswick and other educational and non-profit institutions a non-exclusive license to use this document for personal use and in courses of instruction provided that the article is used in full and this copyright statement is reproduced. The author also grants a non-exclusive license to the University of New Brunswick to publish this document in full on the World Wide Web and on CD-ROM and in printed form with the conference papers, and for the document to be published on mirrors on the World Wide Web. Any other usage is prohibited without the express permission of the author.