(c) 1996 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE.

By choosing to view this document, you agree to all provisions of the copyright laws protecting it.

# A NEW APPROACH TO INTERACTIVE TUTORIAL SOFTWARE FOR ENGINEERING EDUCATION

## Sally L. Wood Electrical Engineering Department Santa Clara University Santa Clara, California, 95053 tel: 408 554 4058; fax: 408 554 5474; email: swood@scu.edu

#### This work was supported by the National Science Foundation under grant DUE 91 56103

Abstract The experimental tutorial software described in this paper is designed specifically for engineering education at the university level, and it is significantly different in purpose and structure from other educational software. Its goal is to help students understand, visualize, and connect basic concepts. It is not a design tool or a wealth of hyperlinked text or an infinite source of drill problems. It is intended to be a dynamic and flexible resource for instructors as well as students and to be used by groups as well as individuals. It takes advantage of currently available high resolution graphics capability to go beyond what can reasonably be expected of textbooks or computer systems with small low resolution displays. Since the software is written as an X Windows Motif application, it achieves a wide degree of platform independence for workstations and PCs. In addition, the tutorial set can be distributed without license fees or additional software acquisition costs for the user.

Keywords: tutorial software, engineering mathematics, digital logic design, digital signal processing, Motif application

### I. INTRODUCTION

The way in which engineers approach problems and teach other engineers is strongly influenced by the tools they use. Prior to widespread availability of calculators and computers, there was emphasis on finding closed form solutions or making second order approximations with a limited range of validity. Computation was done with slide rules and tables. As calculation tools with high precision numerical representation became generally available to working engineers, the emphasis shifted to iterative or recursive numerical methods. Now generally available workstations provide high performance computing, high resolution graphics displays, and graphical user interfaces. This has facilitated the creation of new design and simulation tools which have dramatically changed the way in which engineering design is accomplished in the workplace. Similar computational resources are now available to engineering students and can be used to develop powerful new educational tools which combine numerical computational power with conceptual presentation and symbolic representation.

The potential for widespread use of computer applications software has always been limited by platform specificity. In the case of commercial software for large markets, multiple versions of the product are created and maintained. However, this is too expensive an alternative for special purpose educational software which can not generate a significant income stream. Even software products written in high level source languages have limited portability when they require specific platforms, specific hardware or peripheral configurations, specific operating systems, or licenses for additional software products. These problems are accentuated for software with graphic display output and a graphical user interface.

In recent years portability problems for graphics oriented software have been reduced. Most UNIX workstations now use X Windows [11] , [29] developed at MIT as their standard network transparent and vendor independent graphics interface. The Motif widget set is also widely supported. Linux, [21] a freely distributable version of UNIX for PCs, is becoming popular in both the universities and the commercial world. A single PC can simultaneously have Linux, X Windows, DOS [16] and Microsoft Windows available, and can run programs under each of those operating systems or windowing systems. Alternatively, inexpensive software for PCs will allow them to operate as X terminals which can use a network to run applications on an X server with local graphic display. Color displays with workstation resolution are also becoming more common for PCs.

### II. BACKGROUND

Both personal computers and workstations are used on a daily basis by engineering students as an integrated component of the educational process. Educators typically use both software designed for educational purposes and adaptations of commercial software for engineering applications. A survey of PC use can be found in [8]. As PCs increase in power and capability and the cost of workstations decreases, more application programs are being marketed for both types of platforms.

Commercial software products that are toolkits and libraries of mathematical functions with good visualization tools have been widely adapted for educational use. Examples include MATLAB [14] , [15] , [ 1] and Maple [5] . These are valuable research tools which provide numeric or symbolic results. They can also be used by undergraduates for homework and laboratory assignments, and have been integrated into textbooks ( e.g. [20] ).

Although these tools are an extremely important student resource, they are not designed for the purpose of communicating basic concepts. Using these tools a student can solve many more problems than is feasible using tedious hand calculations, but in taking advantage of this computational efficiency to obtain numerical results, the student may fail to understand the underlying structure of the problems. This has been recently discussed as a problem faced by employers [13] . Effective use requires that the student be self directed or given specific assignments or goals which require reflection concerning the significance of the results. In addition, incorrect results due to incorrect input may go undetected by a student who is new to a subject area and does not have intuition about expected results.

A second category of very useful commercial software products includes design tools for circuit or system design, simulation, testing, and documentation. Use of these tools gives students a good understanding of how engineering is currently practiced, and carefully selected subsets of such tools can be used effectively even in lower division courses (see e.g. [28] ). However, these products are designed and marketed as tools which will increase the productivity of working engineers, so they are efficient for the frequent user and provide all necessary options. Adaptation for education requires extraction of a useful subset of options which can be mastered with a greatly reduced training period. Despite the valuable addition commercial design tools make to design classes and laboratories, it is difficult to use them specifically as teaching tools for undergraduates due to the complexity of the setup required for open ended investigation.

Numerous sophisticated authoring tools are available for creating multimedia presentations with eyecatching page transitions, audio tracks, and interactive navigation through the screens. Many educational products have been developed with these tools or using a similar presentation style [19] , [12] , [4] , [ 3] . Although these tools allow the use of current technology to create computer controlled presentations using computer screens or projectors, the challenge for educators lies in structuring the material for effective presentation.

A variety of software products have been created specifically for education. Much of this software has been written for low end PCs with low resolution screens which support viewgraph style presentation of small sections of text or simple plots and animations. A heavy reliance on pull down menus allows the user to navigate through this material using programmed links or simple searches [8] , [10] , [19] . Another type of educational product provides a virtually infinite supply of drill problems for skills development with automatic evaluation of student performance [17] . Although this is one component of the educational process, it does not help the student understand the context for use of the skill being practiced. Other software products which simulate actual measurement equipment can help students become familiar with specific equipment prior to a laboratory session [7] . Such products can also increase the number of students served by expensive laboratory equipment by using a combination of virtual and actual laboratory experiences.

Recently some educators have explored the use of more powerful networked computer systems to create a different kind of educational software which fills an important gap in the currently available options [ 2] , [6] , [24] , [27] , [18] . This software will help instructors teach important concepts using more symbolic and graphical presentations with less reliance on a numerical orientation.

### III. GOALS OF THE NEW TUTORIAL SOFTWARE

A set of interactive tutorials was motivated by the need to help engineering students develop a more intuitive understanding of basic concepts which are important for engineering design and analysis, but are often lost while learning specific computational tasks [22] . An integrated presentation was needed to emphasize connections and balance more fragmented topical presentations. The prospect of increasing portability and the availability of standard user interfaces make the investment in developing tutorial software reasonable. By making effective use of current computer, display, and user interface technology, these tutorials would provide a new type of educational resource that would fill a niche not covered by commercial design tools, equipment simulators, or mathematical tool sets. The experimental software would complement existing educational tools and methods and would be easily used in a wide variety of educational settings.

A primary goal of the tutorial software is to help students form an integrated understanding of basic concepts in each course and build a stronger platform for more efficient advancement so they will be more able to assimilate new technology as it evolves. This integrated approach balances the narrow focus of drill problems with numerical solutions or linked viewgraph presentations. This resource also provides background information to support just in time'' teaching styles or facilitate the transition of re-entry students.

Often intuitive understanding is associated with visualization skills and perceiving connections, and students have varying ability and experience with this. Integration can be facilitated by a unified graphical presentation of concepts which might bring together perspectives typically found in several different textbook chapters. A new concept can be presented in the context of previous topics at a level of detail that is not possible in textbooks or blackboard presentations.

These presentations provide environments for learning through both interactive modification and observation of results and conceptual descriptions of examples. A balance of graphical presentation and text explanation is needed. Intuition is not always visual, but guided interactivity and visual presentation allow the user to make alterations, observe responses, and develop intuition which comes from experience. A second balance is needed between allowing wide ranging exploration and providing guidance and structured development paths. The tutorial provides far more examples than would be found in a text and also provides the structure for observing the significance of examples and differentiating what is common to all from what is particular to each.

An ideal educational software product would be as easily used and portable as a text book. If tutorial software is to have widespread use, it must be easily adapted to most engineering schools. Portability is reduced when a new financial investment in hardware or software must be made, or when software requires specialized skills or a longer learning time than can be justified for student or faculty use. These barriers can be minimized by writing the software as an application program for a standard windowing system which runs on a variety of commonly available platforms.

### IV. DESIGN

The current tutorial structure provides several options for style and level of interaction and has evolved from the original design as students have provided feedback. Presentations are primarily graphical, but there is supporting text for background, guidance, and motivation. Both guided interaction and independent exploration are supported. Several aspects of a topic are shown simultaneously to present an extended context to observe the effects of interactively changing parameters. Where animations are used, the movements are simple so that the user can focus on the change.

#### A. The User Interface

The design of the user interface is based on three principles. The tutorial should be simple to use and require no training. The user should not need experience or specialized knowledge unrelated to the tutorial subject areas. The interface should provide immediately available guidance and explanations without deeply nested pulldown menus.

The first two objectives are facilitated by creating the tutorials as Motif applications which will run under the X Window system. This is a standard graphical user interface, and applications can be run without any knowledge of programming languages or operating systems.

Making the tutorial easy to use without training is accomplished by simplifying the layout of the display and defining the modes of user interaction. Available options are clearly visible on the high resolution screen without unreasonably limiting the graphic display, and the current state' of the display is equally clear. This avoids the need for nested menus and the complications they create. Guidance information and instructions are also always visible on the screen.

Several benefits are derived from the requirement that all user inputs come from buttons and sliders rather than keyboard entry. All input values controlling the display are always visible. A full range of behavior can be presented with a limited range of values, and limiting the range of values has two positive effects. If a new user has no idea about what parameter values may be interesting, the range limitations provide guidance. The designer can also guarantee that all user choices will result is displays which are free of artifacts due to the discrete pixels of the raster display.

The example in Figure 1 shows how failure to limit input possibilities for a discrete display may cause confusion or reinforce incorrect ideas, especially for a student focused on the apparently continuous appearance of plotted results. The upper waveform shows a 35 Hz sine wave plotted with a time increment of 0.1 s. Most students in lower division classes would be puzzled by this result because it does not look like the expected sinusoidal signal. A student in an upper division class may determine that this time increment violates the Nyquist criterion, but that student would be expecting the characteristic lower frequency aliased sinusoid, in this case at 5 Hz, rather than the random effects of the computer's limited precision. The lower plot has a time increment of 0.01 s, which is well below the Nyquist limit. However, since linear interpolation is typically used in plotting rather than bandlimited interpolation, the plot appears more like the sum of two sinusoids with a noticeable 5 Hz variation. When students use these numeric data sets and then try to analyze or interpret results based on them, it is possible that wrong conclusions will be drawn. A good tutorial system will either not allow misleading results or will advise the user that there is a display limitation.

#### B. Tutorial Structure

Two different experimental tutorial collections have been developed. The first, DIANA [22] , [23] , [24] , includes tutorials on DIgital ANAlysis for digital logic design and digital signal processing. It also includes tutorials on sampling, aliasing, and interpolation. The second, MARTIE [25] , [26] , [27] , is a MAthematical Review and Tutor In Engineering which covers topics under the subjects of complex numbers, differential equations, Fourier series, and probability. Although these tutorials have similar structures, experience with the first set led to some modifications when the second was designed.

The first set of digital analysis tutorials is divided into five general subject areas, each of which has five to fifteen associated topics. A subject is selected from a main screen with a button defined by both an icon and text. When a subject area is selected, a new screen appears which has a common format for all topics. There is a large main display area for both text and graphics. A narrow panel on the right has topic selection lists, interaction options, and information display. An example can be seen in Figure 2 , which shows a cosine shaped FIR filter and its characteristics. Topics for this subject, which are listed on the right, can be selected by simply clicking the mouse over the desired topic name. The End Subject button is always clearly visible.

Four types of interaction are available for each topic. Buttons for all options are always visible on the screen in the upper right corner. Review displays a scrollable text review of the topic in the main display area. From one to four short pages with simple diagrams and equations are provided to orient the user about the topic and establish notation.

Demonstration uses the main display area for an integrated interactive graphic presentation of the topic. The user interaction is topic specific. In Manual Mode the user controls relevant parameters and then observes the effects of the parameter changes. Although operation is simple and intuitive, instructions and reminders are always available in the lower right corner of the display. No request for a popup help window is needed. The demonstration can be changed from {\it Manual Mode} to Auto Mode using a button above the display area. In Auto Mode a choreographed sequence of displays with strategically selected parameters is presented. A short text description of the significance of each display appears in the information area. The user can step through these selections in a forward or reverse direction.

Self Test allows the user to select parameters as in the manual demonstration mode, but the resulting display does not appear until requested by the user. In this way understanding can be tested by the ability to predict the results. No automatic verification is provided since the goal is the presentation of complex concepts rather than skill in computing numerical results.

Questions provides a list of questions which can be answered by experimenting with the manual demonstration mode. Some questions are quite specific while others are more open to discussion. The questions are intended to encourage students to explore further.

The second set of tutorials on topics in engineering mathematics, MARTIE, has a similar structure, but improvements have been made based on feedback from student users and observations of student use. Topics can be selected in two ways. As in DIANA, a main subject area can be selected, and then a topic from that subject area can be chosen. In addition, each topic has its own list of related topics which may be in any subject area. At any time the user may select a topic from either the subject area list or the related topic list by clicking over the name with the mouse. This is roughly analogous to accessing information from the table of contents and from the index since related topics may be in other subject areas. For topics in engineering mathematics, there is considerable overlap for any logical grouping.

When a topic is selected in MARTIE, the demonstration is automatically started in an interactive mode. The parameter control area and the graphic viewing area are separated and consistently located in all subjects. The user always knows what parameters are controlling the display and knows specifically what has been changed. Demonstrations in the automatic mode are replaced by the Example option, which provides a structured sequence of examples described in a narrow newspaper style column of text. This is easier to read than wide screen text, and the user can see the graphic display and alter parameters while reading the text. The user is asked to set parameters to specific values and a description of the appearance and significance of the screen display is given. The sequence of examples is structured to help build an understanding of the topic. The text is presented in a form similar to HTML with limited equation and symbolic capability.

The Information button replaces Review and uses the same narrow column display as Example. The Information option displays a short review of the subject area, a discussion of the operation of the topic window, and some questions which can be answered using the interactive inputs.

An example of a topic in MARTIE is shown in Figure 3 . The display area shows results for a second order linear differential equation with a square wave input. The control buttons and sliders appear in the area below the display. To the right is the list of subject area topics followed by the related topics list. Below the related topics list is an information area which includes general instructions under Readme and the information and example buttons. Text for Information and Example would appear over the topic lists.

### V. EXPECTED USAGE

The sets of tutorials should be available for use by an instructor for lecture preparation or presentation and for scheduled office hours. The same software should also be available to students who may be studying for a class in progress or reviewing material from a class completed earlier. This can be accomplished by having the software accessible through network connections with workstations or X terminals or by having it installed on individual computers.

A professor can use the tutorials as a resource to create and present any number of precise examples which can help demonstrate a lecture topic to the class as a group. No programming of any kind is required to do this. After the introduction and development of a topic, a simple example is often used to illustrate it. Complex examples using a chalkboard presentation may create more confusion than clarification due to abstract sketching by the instructor and imprecise copying by students. However, using the tutorial software the instructor can create custom examples with precision and context to reinforce the lecture message.

During office hours students can ask questions about examples used in class, and the instructor can use the tutorials with an office computer or X terminal to recreate the same example or variations of it. New examples can be tailored to address the specific questions or misunderstandings of an individual student.

This tutorial software is intended to be a resource for student use rather than an evaluation tool. Students can use it as a dynamic equivalent of the reserve reading room resources. No programming is required to do this, so all students will have equal access. A student can recreate the same displays that the instructor created during lecture or office hours, and those examples can be studied further without confusion caused by imprecise notebook sketches and annotations. The student can also interactively explore the subject material or use the guided set of structured examples with text descriptions of the significance of each.

### VI. EXAMPLES

A few specific examples with figures are discussed to demonstrate the style and operation of the tutorials. While they are representative, there are many other topics and subject areas, and each screen layout and interaction is customized. The figures will not convey information as efficiently as viewing a display screen because of the figures' limited size and lack of color. The dynamic interaction can also not be reproduced.

#### A. Finite Impulse Response Digital Filters

In digital signal processing courses the simple uniform average filter is often used as a first example to illustrate many topics. A filter of length four is easily drawn on the blackboard to show the mathematical derivation of properties, but using a longer filter results in confusing and ambiguous blackboard drawings. A tutorial topic from DIANA on uniform average filters allows the user to select any filter length between 1 and 51 and simultaneously observe the impulse response, the pole/zero diagram, the frequency response, and the output of the filter for a selected input. The user can select the input from one of five waveform types with parameter control and can change the scale of the output waveform. The student can clearly see the relationship between the arrangements of the zeros in the Z-plane and the form of the frequency response. Both the transient and the steady state response in the filter output are also clear. The relationship between these two responses is often difficult for students to grasp.

A slightly more complex FIR filter has sampled cosine values for filter coefficients. In addition to being a mathematically tractable FIR filter with a more interesting filter shape, introducing it as simply another type of FIR filter early in a digital signal processing course has advantages. Understanding this windowed cosine filter forms a good foundation for the later introduction of the basis functions of the DFT or the use of modulation to design a bandpass filter from a lowpass filter design.

An example of a windowed cosine filter is shown in Figure 2 . The user controls both the length of the filter and the number of cycles of a cosine. Here the filter length is 8 with 1 cycle of the cosine waveform. The bandpass nature of the filter is clear from both the pole/zero diagram and the frequency response. The selected sinusoidal input waveform has a period of 30 samples. From the obvious transition from transient to steady state response in the output waveform, it is clear that the duration of the transient response is the length of the filter.

On a high resolution color computer screen it is easy to explore longer filters and view the graphic results which would be more difficult to discern on a printed page. For example, if the filter length were extended to a length of 30 and two or three cycles of a cosine wave were used instead of one, the steady state response for the input shown would be zero. However, the transient response would be significant as the filter memory is filled, and it would be clearly seen in the output waveform. The user could interactively increase or decrease the frequency of the input and watch the steady state output respond.

#### B. Differential Equations and Applications

Linear constant coefficient differential equations are used to model dynamic systems in most fields of engineering, and understanding dynamic behavior is the foundation for many other courses. Although the derivation of the model parameters and the units will vary, the fundamental solution techniques are the same for mechanical and electrical systems. Understanding solution methods is important, but understanding the significance of the relationship of the model parameters to the type of solution obtained is also important. Using MARTIE, this type of understanding is developed through a series of related topics. which show general solution techniques and specific examples. In some cases the electrical and mechanical animations are shown together to emphasize the common behavior of linear systems with restoring forces.

Five topics are available for the second order linear differential equation subject area of MARTIE. The first topic explores homogeneous equations ay''(t)+by'(t)+cy(t)=f(t) where f(t)=0. The user controls the three coefficients, the two initial conditions, and the maximum time for the display. Each plotted output can be turned on or off individually. In addition to the time waveforms for the solution and derivatives, the user can also observe the phase plot of the solution and its first derivative. The basic steps of the solution process are given on the screen using the values of the selected parameters. The solution is identified as underdamped, critically damped, or overdamped, and the appropriate equation for the solution is given. Changing the maximum time value allows observation of the development of the phase plot in relationship to the development of the time waveforms. There is no combination of coefficients and time duration which will result in display artifacts due to low display sampling rate.

Although students typically compute natural frequencies and reciprocal time constants from the characteristic equation solution, explicitly expressing these results on the display in terms of the natural period and the time constant makes the solution waveform easier to understand. For example, students often assume that the three solution forms with three different mathematical representations must be dramatically different. They are initially surprised when a small variation of b in the neighborhood of critical damping causes no noticeable change in the output waveform. This is easily explained with a discussion of the relationship between the natural period and the decay time of five time constants. In the second topic, parameter sensitivity, the user selects a parameter to vary from the three coefficients and the two initial conditions and also selects the amount of variation. The three solutions to the three homogeneous differential equations are plotted in different colors. The symbolic form of the solutions is written on the screen and the phase plots use the same color identification.

The remaining three topics show the solutions obtained with a forcing function which is either a pulse, a square wave of variable duty cycle, or a sinusoidal input. In Figure 3 , a square wave with a 50\% duty cycle and a period of 8 s is the input to a second order system which is underdamped and has a time constant of 1.25 s. The user can see the progression from the response due to the initial conditions to the steady state periodic behavior both in the time waveform and the phase plot. The equations for the first three half periods are explicitly shown so the user can check solution techniques. This would be a time consuming error prone pencil and paper exercise for a student, and even if it were successfully completed, the emergence of the steady state behavior would not be as clear as it is in the graphical presentation. Similar results can be observed for the sinusoidal and pulse inputs. The effect of underdamping in a stable system can also be quite dramatic.

A second set of topics focuses on physical systems modeled by second order linear differential equations. In the example shown in Figure 4 , the user selects the length of the line supporting the pendulum weight, its initial position and velocity, and the gravitational force. The solution for these inputs is shown on the screen. If the animation is started, plots of the position, velocity, potential and kinetic energy are shown as a strip chart while the pendulum is swinging.

#### C. Fourier Series

Figure 5 and Figure 6 show two of the topics from the Fourier series set. In the Fourier Series Example topic of Figure 5 , the user can select one of five different types of periodic waveforms. The Fourier series is computed and the coefficients are both listed and plotted on the screen. A reconstructed waveform using the first 9 coefficients is plotted and compared to the original, and the individual components are plotted separately using different colors. The user can individually add or delete these components and observe the effect on the reconstructed waveform. The first two types of input waveform are a cosine sum and a cosine power. These are both bandlimited and a perfect reconstruction is possible. The third choice, a square wave with variable duty cycle, is the typical classroom example. The low pass filtering effect of selecting only 9 coefficients causes the reconstructed waveform to be different from the original, and varying the duty cycle to change the relative frequency content above this limit demonstrates this clearly. The triangle and exponential inputs are somewhat more complicated and provide inputs which are not symmetric and will have complex valued frequency domain representations. For all input waveforms the user can add a dc offset and a time shift.

The Fourier series for a square wave with a 25% duty cycle is shown in Figure 5 . For the reconstruction, only the first 4 components have been selected. Because this waveform is symmetric, all coefficients are real, and the four selected are all positive and part of the main lobe. Observing the reconstruction shows that all the components are aligned so they can reinforce where the positive pulse is. The cancellation effects can be seen clearly where the waveform is zero. As the user adds higher order components which have negative coefficients, the cancellation in the center of the positive pulse and reinforcement at the edges flattens the reconstructed pulse and sharpens the edges. Addition of a dc offset changes only the dc component and adding time delay clearly shows that linear phase results from time shift.

The second example, Fourier Series Computation, shown in Figure 6 demonstrates the method of computing Fourier series coefficients. This interactive presentation communicates more effectively to students than a single figure in a text. The Fourier series is computed and plotted for a periodic waveform selected from one of the five types discussed earlier. For a single user selected component, the waveforms and the product of the sine and cosine for that component are plotted. The shaded area of the product over one period is integrated to evaluate the coefficient.

### VII. CONCLUSIONS

The experimental tutorial software described here provides an environment in which students can develop insight and understanding. It takes advantage of widely available high resolution color computer display screens to provide graphical and analytical presentations of concepts in a broad context. This goes beyond what can reasonably be achieved by a textbook because the computer display is dynamic, interactive, multicolored, and of sufficient pixel resolution to show several perspectives simultaneously. This software does not replace instructors, but provides instructors with additional resources to facilitate communication during lectures and office hours. It does not compete with commercial design tools or mathematical function libraries and tools, but fills a niche not covered by these products. It does not replace examinations as an evaluation tool, but provides a new tool for structured exploration of basic engineering concepts.

Student evaluations over several years have indicated that this tutorial software is extremely easy to use, and the most common complaint is that more topics are desired. While ease of use is important, an evaluation of the benefits of using the tutorial system is also important. These evaluation results based on student comments are anecdotal rather than quantitative. They indicate that the visual presentation provides an alternate perspective of the course material which broadens understanding and that some common misunderstandings can be corrected more quickly with visual feedback. This type of tutor software was expected to help develop intuition and visualization skills and improve retention for average to good students. However, many of the very good students also report improved understanding of concepts they had previously thought they fully understood.

This tutorial set achieves the goals of providing a new capability and being accessible to a large number of students and faculty. It will run as a Motif application on UNIX workstations, PCs running as X terminals, and PCs using Linux. The graphical user interface is common, and the users need no programming or file manipulation skills. Because there is no training associated with the use of the tutorial software, no class or laboratory time is diverted to introduce it.

This software will continue to evolve. Since it is written in C, conversion to JAVA [9] for network use will be explored. Executable versions of the current software for a variety of platforms and additional information can be obtained from the World Wide Web at http://www-elec-eng.scu.edu.

### REFERENCES

1. Azemi, Asad, and Edwin E. Yaz, PSpice and MATLAB in Undergraduate and Graduate Electrical Engineering Courses'', Proc. Frontiers in Education 24th Annual Conf., pp 456-459, San Jose, California, Nov. 2-6, 1994.
2. Beltzer, A.I. and A.L. Shenkman, Use of Symbolic Computation in Engineering Education'', IEEE Transactions on Education, Vol. 38, No. 2, pp177-184, May 1995.
3. Borkowski, C.A., S.I. Mehta, S.M. Gronhovd, Bloom's Taxonomy: Cognitive Domain, as it Applies to the Design and Development of a Laboratory Hypertext/Hypermedia Teaching and Learning Environment'', Proc. 1995 ASEE Annual Conference, pp 135-139, Anaheim, California, June 25-28, 1995.
4. Carver, Curtis A. and Mark A. Biehler, Incorporating Multimedia and Hypertext Document in an Undergraduate Curriculum'', Proc. Frontiers in Education 24th Annual Conf., pp 87-92, San Jose, California, Nov. 2-6, 1994.
5. Char, B.W., K.O. Geddes, G.H. Gonnet, B.L. Leong, M.B. Monagan, S.M. Watt, Maple V, Language Reference Manual Berlin, Springer, 1992.
6. Cvetkovic, S.R., R.J.A. Seebold, K.N. Bateson, and V.K. Okretic, CAL Programs Developed in Advanced Programming Environments for Teaching Electrical Engineering'', IEEE Transactions on Education, Vol. 37, No. 2, pp221-227, May 1994.
7. Darnell, John H. and Harold P. Stern, Creating a Smooth Transition Between the Classroom and Laboratory via Computer Simulation'', Proc. Frontiers in Education 24th Annual Conf., pp 93-97, San Jose, California, Nov. 2-6, 1994.
8. Huelsman, Lawrence P., Personal Computers in Electrical and Computer Engineering: Education Survey'', IEEE Transactions on Education, Vol. 34, No. 2, pp175-178, May 1991.
9. Gosling, James, and Henry McGilton, The Java Language Environment, A White Paper'', Sun Microsystems Computer Company, Mountain View, California, October, 1995.
10. Jeyasurya, B., An Educational interactive Program for Direct Analysis of Power System Transient Stability'', IEEE Transactions on Education, Vol. 38, No. 1, pp90-94, Feb. 1995.
11. Mansfield, Niall, The X Window System: A User's Guide, Addison-Wesley.
12. Marcy, William M. and Marion O. Hagler, Implementation Issues Using SIMPLE Learning Environment'', Proc. Frontiers in Education 24th Annual Conf., pp 267-270, San Jose, California, Nov. 2-6, 1994.
13. Marple, S. L., Jr., Restoring the Nyquist Barrier'', IEEE Signal Processing Magazine, January, 1996, pp24-28.
14. Matlab User's Guide, I00026, The MathWorks, Natick Massachusetts, 1992.
15. Matlab Reference Guide, I00021, The MathWorks, Natick Massachusetts, 1993.
16. Microsoft MS-DOS5 User's Guide and Reference Microsoft Corporation, 1991.
17. Oakley II, Burks and Roy E. Roper, Implementation of a Virtual Classroom for an Introductory Circuit Analysis Course'', Proc. Frontiers in Education 24th Annual Conf., pp 279-283, San Jose, California, Nov. 2-6, 1994.
18. Orsak, Geoffrey C., and Delores M. Etter, Collaborative DSP Education Using the Internet and MATLAB'', IEEE Signal Processing Magazine, November, 1995, pp23-32.
19. Raymond, J. and D. Pilon, Software Tools for Computer-Aided Lecturing'' IEEE Transactions on Education, Vol. 37, No. 1, pp23-29, Feb. 1994.
20. Strum, Robert D. and Donald E. Kirk, Contemporary Linear Systems, PWS Publishing, Boston, 1996.
21. Welsh, Matt et. al., The Linux Bible: the Gnu Testament - 3rd edition, Yggdrasil Computing Inc., San Jose California, 1994.
22. Wood, Sally L., Tutorial Software with Visualization Tools for Undergraduate Engineering Education'', Proc. Innovations in Undergraduate Engineering Education, Engineering Foundation, Mercersberg, Pennsylvania, Aug. 6-11, 1989.
23. Wood, Sally L., R. Scherek, and L.L. Tsoi, Development of Tutorial Software for Selected Undergraduate Electrical Engineering Courses'', Proc. New approaches to Undergraduate Engineering Education III, Bannf, Alberta, July 1991.
24. Wood, Sally L., Tutorial Visualization Software for Concept Reinforcement in DSP Education'', Proc. ICASSP-92, San Francisco, California, March, 1992.
25. Wood, Sally L., A Tutorial Software Design for Selected Undergraduate Electrical Engineering Courses'', Proc. Frontiers in Education 23rd Annual Conf., Washington D.C., Nov. 6-9, 1993, pp182-186.
26. Wood, Sally L., An Interactive Workstation Based Tutorial for Engineering Mathematics'', Proc. 1994 ASEE Annual Conference, pp 2623-2627, Edmonton, Alberta, June 26-29, 1994.
27. Wood, Sally L., Tutorial Software for Engineering Mathematics'', Proc. Frontiers in Education 24th Annual Conf., pp 39-43, San Jose, California, Nov. 2-6, 1994.
28. Wood, Sally L., `Introduction of Programmable Gate Arrays into an Introductory Logic Design Course'', Proc. Frontiers in Education 24th Annual Conf., pp 388-392, San Jose, California, Nov. 2-6, 1994.
29. Young, Douglas A., The X Window System Programming and Applications with Xt: OSF/ Motif Edition, Prentice Hall, Englewood Cliffs, N.J., 1990.

### AUTHOR BIOGRAPHY

Sally L. Wood received the BSEE degree from Columbia University in 1965 and the MSEE and Ph.D. from Stanford University in 1975 and 1978 respectively. Her research interests include image processing, computer graphics, and visualization with particular emphasis on applications in medical imaging. Her research experience in this area has included both academic and industrial environments. From 1978 to 1983 she worked at Telesensory Systems, Inc. and Contour Medical Systems. She joined the faculty of Santa Clara University in 1985 where she is currently Professor and Chair of the Electrical Engineering Department. She teaches graduate and undergraduate courses in image processing, communications, digital logic design, and computer graphics. She is a member of the IEEE, Tau Beta Pi, and Eta Kappa Nu.