The design process used in developing this computer-based tutorial is similar to the Conceptual Model for Designing Instructional Hypermedia presented in [14]. This model is divided into seven components:

  1. Learner Characteristics
  2. Goals/Objectives
  3. Pedagogical Model
  4. Navigation
  5. Structure
  6. Format
  7. Content

The design process consists of identifying and specifying each of these components.

Learner Characteristics defines the target market for the computer-based application. This includes descriptions of previous knowledge, learning styles and motivation of the target market. The assumed Learner Characteristics for the MATLAB tutorial market are:

1.      The intended users of this tutorial are undergraduate or graduate students who have had little or no exposure to MATLAB.

2.      A basic math/computer background is assumed. A first course in linear algebra, probability theory and calculus would be an asset, though not a requirement for this tutorial.

3.      The learning styles of these students are not well defined, but they are familiar with the traditional lecture/assignment approach, which integrates auditory and visual presentations and reinforcement of topics through student interaction using questions and assignments. A conscious attempt has been made to cater to the different learning styles, which include 'reading, listening and doing'.

4.      In a university environment the curriculums are heavy and the students tend to focus their limited resources on the higher value items within the grading system. Thus it is assumed that this tutorial will be integrated into an existing undergraduate class and the students will be rewarded appropriately for successfully completing the tutorial.

The major Goal/Objective of this computer-based application is to provide an effective tool for the independent study of MATLAB, producing a confident student able to use MATLAB for numerical computation and displaying graphics.

The Pedagogical Model defines the method used to teach the content. The approach chosen here, is a tutorial with reinforcement using exercises and quizzes. This method was selected since the material taught consists of MATLAB commands and concepts, which lends itself to a sequential and logical presentation. Students are also familiar with this method since it is similar to the traditional lecture/assignment approach. The exercises use a form of elaborative feedback [15] involving hints and the correct answer. Audio, in the form of voice, is also used throughout the tutorial. A number of experimental audio methods are used and evaluated through student feedback.

Navigation refers to the user interface design, which defines how the student can move through the computer-based application. This is definitely the most important non-content design issue. The guiding principles used in designing the navigator were:

1.      The overhead in learning how to use the navigator should be low.  A navigation format similar to other Windows-based applications was chosen to minimize this overhead.

2.      The students should feel that they have full control over the tutorial at all times.  Details of the techniques used are presented in the Implementation section.

The Structure is defined as the overall organization of the content. Given the pedagogical model and the nature of the content, a hierarchical structure was chosen for the tutorial. The content is organized in sections and subsections, which are defined by common material.

The Format is defined as the type of media that is used to deliver the content. The media used in this tutorial consists of text, audio, video and graphics. Elaborate graphics and animation are not used, because of the nature of the content, which consists of descriptions of basic MATLAB commands and concepts.

The Content is the information presented in the computer-based application. Since the intended users have a general math background with possibly little exposure to matrices, it was decided to present the basic math related content as follows:

1.      The students are first introduced to MATLAB operators and functions using scalar variables.

2.      Vectors are then defined and an expanded list of MATLAB operators and functions are covered, including plotting, relational and logical math.

3.      Finally, matrices and their associated operators and functions are introduced, including solving sets of linear equations.

Since the students are familiar with scalar operations, the scalar math section introduces the student to MATLAB without the complication of matrix notation. Many of these scalar operators and functions can also be applied to vectors and matrices, which makes the transition to vector and matrix math easier.