Printer Friendly
The Free Library
14,715,918 articles and books
Member login
User name  
Password 
 
Join us Forgot password?

An introduction to custom WebBrowsers for the qualitative study of hypertext navigation.


For the benefit of researchers new to custom programming, this article presents a discussion of the advantages of custom applications and an example of such a program with a description and explanation of some of the programming code used to create it. Visual Basic 6.0 is an Integrated Development Environment See IDE.

integrated development environment - interactive development environment
 (IDE (1) (Integrated Development Environment) A set of programs run from a single user interface. For example, programming languages often include a text editor, compiler and debugger, which are all activated and function from a common menu. ) that allows researchers to Custom design interface forms using standard window controls and to code routines using the Visual Basic programming language. Visual Basic 6.0 (Professional Edition) also includes specialized spe·cial·ize  
v. spe·cial·ized, spe·cial·iz·ing, spe·cial·iz·es

v.intr.
1. To pursue a special activity, occupation, or field of study.

2.
 controls such as the WebBrowser Control that enables researchers to add hypertext hypertext, technique for organizing computer databases or documents to facilitate the nonsequential retrieval of information. Related pieces of information are connected by preestablished or user-created links that allow a user to follow associative trails across the  navigation to an application with a highly adaptable a·dapt·a·ble  
adj.
Capable of adapting or of being adapted.



a·dapta·bil
 browser browser

Software that allows a computer user to find and view information on the Internet. The first text-based browser for the World Wide Web became available in 1991; Web use expanded rapidly after the release in 1993 of a browser called Mosaic, which used
 interface. This collection of functions provides a particularly valuable tool for investigating hypertext navigation and user interactions with document features.

**********

The term "hypertext" refers to any electronic document or document collection of interconnected units of information. A prominent example of a large hypertext system Noun 1. hypertext system - a database management system that allows strings of text (`objects') to be processed as a complex network of nodes that are linked together in an arbitrary way  is the World Wide Web (WWW WWW or W3: see World Wide Web.


(World Wide Web) The common host name for a Web server. The "www-dot" prefix on Web addresses is widely used to provide a recognizable way of identifying a Web site.
 or Web). On a smaller scale, customized, constrained con·strain  
tr.v. con·strained, con·strain·ing, con·strains
1. To compel by physical, moral, or circumstantial force; oblige: felt constrained to object. See Synonyms at force.

2.
 systems of hypertext documents (intranet systems) have become commonplace in work and educational environments.

Unfortunately, the cognitive processes Cognitive processes
Thought processes (i.e., reasoning, perception, judgment, memory).

Mentioned in: Psychosocial Disorders
 involved in navigating (networking, hypertext) navigating - Finding your way around. Often used of the Internet, particularly the World-Wide Web.

A browser is a tool for navigating hypertext documents.
 through even a single hypertext document are not understood clearly. This is largely because the task of navigating in hypertext involves the integration of many complex cognitive processes within a very multifaceted mul·ti·fac·et·ed  
adj.
Having many facets or aspects. See Synonyms at versatile.

Adj. 1. multifaceted - having many aspects; "a many-sided subject"; "a multifaceted undertaking"; "multifarious interests"; "the multifarious
 environment. The multitudes of variables that a navigation task presents demands methodologies that control the interface users see and provides flexibility for collecting diverse types of data. This article outlines a custom application, programmed using Visual Basic 6.0 that provides both of these benefits.

Controlling the Interface

The Visual Basic ActiveX WebBrowser Control included in Visual Basic 6.0 creates a highly adaptable web browser The program that serves as your front end to the Web on the Internet. In order to view a site, you type its address (URL) into the browser's Location field; for example, www.computerlanguage.com, and the home page of that site is downloaded to you.  that allows for the management of options available to users of hypertext documents. This is important for two reasons. First, to access information about the cognitions involved in hypertext use, a pared-down, sparse sparse - A sparse matrix (or vector, or array) is one in which most of the elements are zero. If storage space is more important than access speed, it may be preferable to store a sparse matrix as a list of (index, value) pairs or use some kind of hash scheme or associative memory.  version of browsers and hypermedia hypermedia: see hypertext.


The use of hyperlinks, regular text, graphics, audio and video to provide an interactive, multimedia presentation. All the various elements are linked, enabling the user to move from one to another.
 pages may be desirable. Custom programming allows researchers to introduce new elements to the browser controls as well as eliminate unwanted controls resulting in interface elements that are specifically applicable to the question of interest. For example, for some research questions, the elimination of options such as the back, forward, or print buttons from the browser menu may be favorable fa·vor·a·ble  
adj.
1. Advantageous; helpful: favorable winds.

2. Encouraging; propitious: a favorable diagnosis.

3.
.

Second, a custom browser ensures a novel environment for every user regardless of their prior experiences with standard browsers. Pretesting users on previous computer use is helpful but these measures usually rely on general information such as how often a computer is used within a certain timeframe or the number of activities a user engages in on a regular basis (e.g., e-mail, word processing word processing, use of a computer program or a dedicated hardware and software package to write, edit, format, and print a document. Text is most commonly entered using a keyboard similar to a typewriter's, although handwritten input (see pen-based computer) and ). Questionnaires can result in ambiguous responses depending on the questions asked and a user's interpretations of the questions. Ensuring that every user begins the research task with an equal level of familiarity with the browser eliminates one extraneous variable Extraneous variables are variables other than the independent variable that may bear any effect on the behaviour of the subject being studied.

Extraneous variables are often classified into three main types:
.

Collecting Appropriate Data

Often, hypertext researchers are interested in tracking very quantitative navigation responses such as time spent on pages, number of pages accessed, and order of pages. A custom program can provide procedures for data collection that are strictly controlled by a researcher, eliminating any impact of features inherent in other standard tracking mechanisms such as browser history lists or server logs.

For example, browser history lists make use of a variety of procedures for recording page access. To optimize the history list, some methods erase prior revisits and only retain the most recent instance of access (for further description of history lists see Tauscher & Greenberg, 1997). By creating a custom application, a local log file of users' movements can be constructed to record every single move with no elimination of repeated page accesses that can happen with the typical history lists of standard browsers.

For some types of measures, collecting data through server logs presents obstacles as well. The procedures used by the server to cache items may skew (1) The misalignment of a document or punch card in the feed tray or hopper that prohibits it from being scanned or read properly.

(2) In facsimile, the difference in rectangularity between the received and transmitted page.
 data by affecting the way pages are delivered to the user. For example, as numerous users access a single page numerous times, the server retains the page in memory and will load that page quickly relative to a page that is not held in memory. This results in navigation experiences that may be different from user to user. Also, because server use involves multiple users on a shared network, system traffic could interfere with timed results as page delivery could be delayed by network congestion In data networking and queueing theory, network congestion occurs when a link or node is carrying so much data that its quality of service deteriorates. Typical effects include queueing delay, packet loss or the blocking of new connections. . By having tracking procedures local to each individual work station, that is, creating local logs instead of server logs, the above-mentioned problems can be avoided.

The program outlined in this article also allows for seamless transitions between the browser that displays web pages and additional cognitive tasks that provide other types of information about a user's navigation experience. For example, in the study outlined, (Boechler & Dawson, 2002a; Boechler & Dawson, 2002b) users are required to complete an information search task of 10 questions using a customized browser. During this task, navigation data is collected as well as a user's answers to the ten questions. Users use the mouse to select sections of text as their answer to each question. This method avoids data that is difficult to process due to users' typing mistakes or inconsistent use of terms. When this task is complete, the program switches from the browser to a series of psychological tasks about the document--a free recall task, a recognition task and a distance-like ratings task recording all responses in a flexible format (text files) for subsequent data analysis.

Advantages of Visual Basic 6.0

It is true that other programming formats include an adaptable browser function, so why Visual Basic 6.0? For researchers new to custom applications, there are several pragmatic reasons for using Visual Basic. First, it is easily accessible. Versions of Visual Basic are included in popular office suite software packages. Second, Visual Basic is well-supported through reference books and extensive online help. Third, Visual Basic is a relatively simple programming environment, compared to many other programming languages.

Educational and psychological researchers are faced with an often-confusing plethora plethora /pleth·o·ra/ (pleth´ah-rah)
1. an excess of blood.

2. by extension, a red florid complexion.pletho´ric


pleth·o·ra
n.
1.
 of technological possibilities for collecting relevant hypertext data. This article is meant to provide a starting point Noun 1. starting point - earliest limiting point
terminus a quo

commencement, get-go, offset, outset, showtime, starting time, beginning, start, kickoff, first - the time at which something is supposed to begin; "they got an early start"; "she knew from the
 for researchers who may wish to pursue the use of custom applications. It provides an example of a computer program that uses a relatively simple programming environment to gather basic navigation data as well as collect data on other behaviors that may be of interest to the hypertext researcher.

First, the development of the interface of the document is described. Second, the coded routines that accompany the interface are detailed.

INTERFACE DEVELOPMENT

The hypertext interface is created in two parts: (a) the actual hypertext pages with the specified content and links are constructed and (b) the Visual Basic application forms, including the WebBrowser Control that displays the web pages, are programmed.

Developing the Visual Basic Application

Visual Basic 6.0 is an Integrated Development Environment (IDE) that allows a researcher to design, run, test, and debug To correct a problem in hardware or software. Debugging software means locating the errors in the source code (the program logic). Debugging hardware means finding errors in the circuit design (logical circuits) or in the physical interconnections of the circuits.  Windows applications A program that is written to run under Microsoft's Windows operating system. Such applications typically run under all 32-bit versions of Windows, but earlier applications might also run under the 16-bit versions (Windows 3.x) as well. See Windows.  using the Visual Basic language. Development in the Visual Basic 6.0 environment involves placing standard components onto a visual container called a form, thereby constructing the user interface. Coded routines are written to respond to a user's interactions with the form's components. Each control has a certain set of events that will generate responses (eg., mouse click, resized, document loaded). Several forms, which appear as separate windows, were constructed for this application, including the form that contains the specialized component that displays web pages, the WebBrowser control.

The Development of Forms

Individual forms for the interface are constructed to accomplish certain tasks. Tasks are subdivided into user actions that are represented as various controls in strategic positions on the form. Each form in the application is maintained in a file designated by the form name plus the extension .frm. Form files contain the graphic interface of the form and also text files that contain code to describe the controls on the form and the events that correspond to them. During the development phase, switching between the graphic interface and the code window of the form is easily accomplished with only one icon selection.

There are several types of standard window controls that can be included on a Visual Basic form. For example, Textboxes are used to display and enter text. Command buttons represent actions that will occur when a user activates that control. Option buttons are presented in groups and are used when a user is required to make one choice out of several options. The CheckBox control allows a user to make several choices from a list of options. In Figure 1, the Administrative Login Signing in and gaining access to a network server, Web server or other computer system. The process (the noun) is a "login" or "logon," while the act of doing it (the verb) is to "log in" or to "log on.  form shows an example of a form with labeled textboxes (the spaces provided for user and password submissions), option buttons (the buttons used to select the appropriate condition) and a command button (the "submit" button). Such controls are added by selecting and placing icons from the General Toolbox See toolkit and toolbar.  menu onto the form. Numerous properties can be selected for each control (e.g., for the textbox control, properties for the number of text lines, the inclusion of scroll bars A vertical bar on the right side of a window or a horizontal bar at the bottom of a window that is used to move the window contents up and down or left and right. The bar contains a box with square or rounded corners, which together look like an elevator in a shaft. , and the maximum length of the entered text can be chosen). P roperties can either be set from the Properties window or written into the code. As the project is developed, the Project Explorer provides a list of the components (e.g., forms) that have been added to the project.

CODE THAT ACCOMPANIES THE INTERFACE

Controls can be activated by several types of events triggered by user interactions in the form of either mouse use (e.g., clicking, press and release of the mouse button, or movement of the mouse) or keyboard use (e.g., key press, changes to text boxes). Other events are triggered by changes in control state (e.g., the WebBrowser's documentComplete is triggered when the control has successfully loaded a page). Whenever a control on a form is activated, the program will initiate the event routines that accompany that control. For example, on the Login form (Figure 1), once selections are made between the option buttons in the dialog boxes A movable window that is displayed on screen in response to the user selecting a menu option. It provides the current status and available options for a particular feature in the program. , clicking on the "submit" button initiates the subroutine A group of instructions that perform a specific task. A large subroutine might be called a "module" or "procedure." Subroutine is somewhat of a dated term, but it is still quite valid.  coded for the "on click" event as outlined in Listing # 1. Note the initial section of code for each form declares the variables local to that form using the Dim (dimension) statement. Local variables that are intended to be available only to a specific subroutine can also be declared within individual subroutines.

An initial administrative login form, such as the one previously described, can be used to specify a particular condition or version of stimuli for each individual subject. Later in the application, flow control statements (e.g., "If-Then," "Select Case") can access the selections made in the initial Login form and use them to execute only the appropriate statements for the specified stimuli. In addition to the administrative login form, this application includes a user login form that collects identification data particular to a given subject (see Figure 2).

Displaying the Web pages

When the Browser Form is loaded, the "select case" structure is used to direct the program to present the appropriate instruction page and the navigation aid to be used in that specific test session (Listing # 2, Subroutine #1 and #2 from the Browser Form set-up routines). The four possible conditions in this study were named Alpha, Hier, Spatial, Spatialhier.

Loading the Browser Form also initializes the timer timer,
n radiographic timing device that functions as an automatic exposure timer and a switch to control the current to the high-tension transformer and filament transformer. The face of the timer is calibrated in seconds and fractions of seconds.
, opens the appropriate data files, and presents the desired controls on the form (e.g., "submit" command button). The final line of code in the second subroutine (Listing #2, subroutine #2) of the Browser Form instructs the WebBrowser Control to navigate to the designated page, which appears in the window at run time. Once the WebBrowser Control is functioning, the links embedded Inserted into. See embedded system.  in the individual web pages allow a user to revisit re·vis·it  
tr.v. re·vis·it·ed, re·vis·it·ing, re·vis·its
To visit again.

n.
A second or repeated visit.



re
 the navigation aid and instructions page. Each successful navigation triggers the WebBrowser's "Document Complete" event, which causes the subroutine WebBrowser1_DocumentComplete to execute, calculating, and recording the time a user has spent on the previous page (Listing #3, Subroutine #5, #6).

Developing Data Files

For the program to open data files and store data within them, certain variables must be accessible to all Forms and Modules throughout the run time of the application. These variables must be declared as Public (rather than Dim) and as Form variables or within Modules. An example of public variables declared within a module appears in Listing #4. This module also declares the set value for the password for the initial administrative login.

In the study described, users' responses to four tasks were collected and stored in text files that were automatically constructed when the user interacted with specific forms in the program. For three of the tasks (the free recall, recognition, and ratings tasks), this merely involved transferring the typed responses or option button and checkbox responses of the user to text files. The fourth task, the initial information search task, required the storage of selections of text, which necessitated a slightly different approach. In order to check the accuracy of a user's search efforts, users were instructed to highlight the answer with the mouse (e.g., phrase or sentence) for each question from the page on which they found it and then submit the answer by clicking on a "submit" command button. The code that responds to the "Click" event takes advantage of the fact that the WebBrowser is an OLE (Object Linking and Embedding See OLE.

(operating system) Object Linking and Embedding - (OLE) A distributed object system and protocol from Microsoft, also used on the Acorn Archimedes. OLE allows an editor to "farm out" part of a document to another editor and then reimport it.
) container for the active HTML HTML
 in full HyperText Markup Language

Markup language derived from SGML that is used to prepare hypertext documents. Relatively easy for nonprogrammers to master, HTML is the language used for documents on the World Wide Web.
 page. An OLE control See OCX.  allows the programmer (1) A hardware device used to customize a programmable logic chip such as a PAL, GAL, EPROM, etc. See PROM programmer.

(2) A person who designs the logic for and writes the lines of codes of a computer program.
 to insert ob jects from other applications into the Visual Basic form, so the functions of that application are available to the VB program. In this case, the OLE container In OLE compound document technology, it is the OLE client application, which holds the linked or embedded objects. See OLE.  accesses the Visual Basic document through an interface that initiates the correct implementation of a common command. One of the commonly supported commands is to copy the currently highlighted or selected text to the clipboard A reserved section of memory that is used as a temporary holding area for data that is copied or moved from one application to another using the copy and paste and cut and paste (move) menu options. Each time you transfer something into the clipboard, the previous contents are deleted. . Using the execCommand method of the active document's interface with "Copy" as the indicated command, the highlighted or selected data is copied to the clipboard. The globally available (common to and useable by all) clipboard was then accessed by the research program, which retrieved the data to a local variable and wrote the information to file (Listing # 3, Subroutine #3, #4). Constraining con·strain  
tr.v. con·strained, con·strain·ing, con·strains
1. To compel by physical, moral, or circumstantial force; oblige: felt constrained to object. See Synonyms at force.

2.
 a user to copying and pasting information to the clipboard avoids common problems like typing mistakes or user interpretation of data, which would make subsequent data verification or validation difficult.

The collection of efficiency measures was accomplished using a log file of a user's movements through the document which records each page accessed including revisitations, the time spent on each page and the page where a user found the information required by the search task (Figure 3 an example of the log file). The log file was constructed by writing successive lines in the log file each representing a record of specific structure (eg., User, Page, Time Spent). Each record is a series of comma delimited A record layout that separates data fields with a comma and usually surrounds character data with quotes, for example:

"Pat Smith","Main St.","New Hope","PA","18950" "K. Jones","34 8th Ave.","Syosset","NY","11724" re>
 pieces of information. The new line character separates individual records. The format of the log files was chosen because it offers a format that is tool independent providing guaranteed access while being of a common format used by data analysis tools that import data from other sources. This allows for easy organization of data beyond the data collection phase.

CONCLUDING REMARKS

The Visual Basic program outlined provides an accessible and effective means of tracking the processes involved in hypertext use. Once the custom browser program is created, altering the content and functions of the individual hypertext pages can modify the task to address additional research questions. To accompany navigation data, relevant tasks such as recall and recognition tasks can be programmed for online data collection in a text format that is easily manipulated for subsequent data analysis.

[PROGRAM LISTING NOT REPRODUCIBLE IN ASCII ASCII or American Standard Code for Information Interchange, a set of codes used to represent letters, numbers, a few symbols, and control characters. Originally designed for teletype operations, it has found wide application in computers. ]
Figure 3

Example of the logfile Data


"Subject 1 ","C:\VB Project2\Instructions.htm","0.71999999999388"
"Subject 1 ","C:\VB Project2\instructions1.htm","47.5800000000017"
"Subject 1 ","C:\VB Project2\SpatialHier.htm","19.4700000000012"
"Subject 1 ","C:\VB Project2\Shtypes.htm","25.9100000000035"
"Subject 1 ","C:\VB Project2\SpatialHier.htm","4.63999999999942"
"Subject 1 ","C:\VB Project2\Shclub.htm","18.6100000000006"
"Subject 1 ","C:\VB Project2\SpatialHier.htm","1.44999999999709"
"Subject 1 ","C:\VB Project2\Shsac.htm","23.9499999999971"
"Subject 1 ","C:\VB Project2\SpatialHier.htm","1.68000000000029"
"Subject 1 ","C:\VB Project2\Shconjugat.htm","23.0600000000049"
"Subject 1 ","C:\VB Project2\SpatialHier.htm","1.83999999999651"
"Subject 1 ","C:\VB Project2\ShChytrids.htm","26.1800000000003"
"Subject 1 ","C:\VB Project2\SpatialHier.htm","1.13999999999942"
"Subject 1 ","C:\VB Project2\Shlichen.htm","24.5999999999985"


References

Boechler, P.M., & Dawson, M.R.W. (2002a). Connections between performance, path patterns and mental representations in hypertext navigation. Journal of Educational Multimedia and Hypermedia, 11(2), 95-115.

Boechler, P.M., & Dawson, M.R.W. (2002b). The effects of navigation tool information on hypertext navigation behavior: A configural analysis of page-transition data. Manuscript in preparation.

Tauscher, L., & Greenberg, S. (1997). How people revisit web pages: Empirical findings and implications for the design of history systems. International Journal of Human-Computer Studies, 47, 97-137.
COPYRIGHT 2002 Association for the Advancement of Computing in Education (AACE)
No portion of this article can be reproduced without the express written permission from the copyright holder.
Copyright 2002, Gale Group. All rights reserved. Gale Group is a Thomson Corporation Company.

 Reader Opinion

Title:

Comment:



 

Article Details
Printer friendly Cite/link Email Feedback
Author:Boechler, Kelvin R.
Publication:Journal of Educational Multimedia and Hypermedia
Date:Sep 22, 2002
Words:2864
Previous Article:Challenges of being an instructional designer for new media development: a view from the practitioners.
Next Article:The power of peer review in multimedia production.
Topics:



Related Articles
Individual Differences, Hypermedia Navigation, and Learning: An Empirical Study.
SmexWeb: An Adaptive Web-Based Hypermedia Teaching System.
The Effects of Prior Knowledge and Goal Strength on the Use of Hypertext.(Statistical Data Included)
User centered evaluation of an automatically constructed hyper-textbook.(Statistical Data Included)
Assessing complex problem-solving skills and knowledge assembly using web-based hypermedia design.
The effects of graphical overviews, prior knowledge, and self-concept on hypertext disorientation and learning achievement.
Assessing learning from hypertext: an individual differences perspective.
Computer hypertextual "uncovering" in art education.
Orienting tasks and their impact on learning and attitudes in the use of hypertext.
Effects of navigation tools and computer confidence on performance and attitudes in a hypermedia learning environment.

Terms of use | Copyright © 2009 Farlex, Inc. | Feedback | For webmasters | Submit articles