Java Applets enhance learning in a freshmen ECE course

Java Applets enhance learning in a freshmen ECE course

Graham, Charles R

Java Applets Enhance Learning in a Freshman ECE Course*


The goals of our work have been to enhance the learning environment of our students and to increase the productivity of faculty by freeing them from the drudgery of grading homework and quizzes, as well as the time required to record and compute grades. We have achieved these goals by means of the highly interactive World Wide Web (WWW)-based learning environment provided by MallardTM,1,2 and by the development of several Java applets3 within the Mallard environment to enhance the learning process. These Java applets are the subject of this paper. They include the ability to draw timing diagrams and graphs whose data points can be communicated to the server for grading. Java applets have also been written to simulate a simple microprocessor, and a whiteboard has been implemented as an applet for synchronous communication with on-line tutors. We also present some interesting student survey results on Mallard and Web-based instruction.


Two of the goals for our ECE110 freshman engineering course” are to excite students about studying electrical and computer engineering and to expose them early in their education to all of the basic topics taught as part of the electrical and computer engineering curriculum. It is a lecture/laboratory course in which students learn about electrical instruments, motors, generators, diodes, transistors, amplifiers, digital circuits, and the microprocessor. In the laboratory the students experiment with various modules containing these devices, and in the final weeks of the laboratory they design a robotic vehicle. The enrollment in the course has grown steadily to several hundred students per semester, and it is still growing as more non-majors elect this course over the traditional circuit analysis course. This places a heavy burden on staffing. The prior work of Burks Oakley II reported in reference 5 demonstrated that asynchronous learning technologies can be an effective solution to this problem. His software was platform dependent. With the rapid advances occurring in the WWW and browsers and with the promise of platform independent software, we concluded, as did others, that the WWW has great potential as an asynchronous learning environment.

In the 1996 Spring Semester we made the decision to abandon textbook-assigned problems, which were manually graded by a teaching assistant (TA), and move to the highly interactive WWW-based learning environment. Our goal was to relieve the instructors and their assistants of mundane tasks and to create an interactive environment in which the student receives immediate feedback and assistance. There are many approaches to using multimedia and the WWW to support asynchronous learning. At the University of Illinois at Urbana-Champaign Mike Swafford and Donna Brown were developing Mallard,lz a WWW-based asynchronous learning environment. Mallard provides an asynchronous learning environment in which students can view interactive tutorials and take personalized on-line quizzes. Mallard grades quizzes submitted by the students and gives them immediate feedback about their solutions. Mallard also provides a number of useful features to help instructors maintain class rosters, post important announcements, keep track of student grades and progress, and develop appropriate teaching materials for their courses. Since its inception in the Fall Semester of 1995, Mallard has now been used by thousands of students in a dozen different courses. Courses that have used Mallard at the University of Illinois include courses in electrical and computer engineering, Italian, and economics.

In our freshman course the students do all of their homework on-line and don’t submit any homework on paper for manual grading. Instead, the students submit their homework to the Mallard server. Within seconds after submission a student receives his/her grade. If a student does not receive 100%, the student can be given additional feedback with clues about how to correct the problem. The student can also be given the opportunity to resubmit the problem a limited number of times with or without penalty. Hints can also be made available after an answer is submitted to guide the student towards the correct solution. The student’s grade and number of attempts are recorded on a secure server. Cheating is less of a problem with Mallard than with textbook assigned problems, because problems and problem parameters can be randomized. Also, the homework is only weighted as 10% of the grade; the other 90% of the grade consists of traditional in-class examinations and performance in the laboratory.

For the 1996 Spring Semester the question types in Mallard were constrained to multiple choice, numerical, or simple symbolic answers. Sometimes we were too confined in the types of questions that we could ask the students. Yet the grading of more complex question types can put too much of a load on the server and can slow the response time unacceptably for the hundreds of students who are on line. We found Java applets to be a solution. By means of Java applets students can draw a timing diagram in the browser window or draw a piecewise linear waveform on the screen. After the student has finished drawing the timing diagram or graph, the applet communicates the solution to the Mallard server, which grades the problem and gives the student feedback about his/her solution.

To grade design problems, Java-based simulators can be written. Last semester a Java-based microprocessor simulator was developed to teach the students about programming in assembly code. We have integrated the simulator with Mallard so that the students can be assigned simple programs to write. After the program has been run, Mallard will be able to check the correctness of the program by checking the state of the processor.

Finally, we developed a Java-based whiteboard to allow the students to communicate synchronously with each other and with the TAs. The TAs have assigned office hours during which they will be monitoring the whiteboard to answer questions posed by students. In a session with the TA, students can upload circuit diagrams to the whiteboard and annotate them in order to show the TA how they are working a problem. The TA can respond immediately to the student’s concern by drawing and/or typing a response to the student. In this way students can get help from their instructor or the TA over the Internet during office hours.


Because Mallard relies on HTML forms and CGI scripts to correct and grade answers from the students, all student solutions originally had to be text based. While developing course materials for ECE110 in the Spring Semester of 1996, we found that there were several types of questions that we had difficulty asking students in Mallard because the responses were inherently graphical in nature. Two examples of this are timing diagrams and piecewise linear graphs, which are used sometimes to characterize the response of digital and analog circuits. In the case of timing diagrams we were able to work around the problem by simply asking the students to enter a string of ones and zeros representing the state of the circuit at each time period in the solution as shown in figure 1. We had a more difficult time coming up with ways to present the piecewise linear graphing problem in an effective way. We came up with two possible solutions:

we could ask the students to enter a list of critical points in the graph or equations representing the graphical solution, or we could ask the question using another question type such as multiple choice.

Neither choice was very satisfactory, but we had to make a decision. We chose the second because we felt that the first possibility would be too tedious for the students as well as deprive them of insight that could be gained by drawing or seeing a graph. We felt, however, that we had compromised some of the challenge in the problem by changing it from a graphing problem to a multiplechoice problem. Figure 2 shows an example of how we used the multiple choice question type and an arithmetic blank question type to ask a piecewise linear graphing problem.

In order to improve the quality of the types of questions that we could ask students, we chose to experiment with the use of Java applets. We developed Java applets to provide the graphical interface for problems like the timing diagram problem and the piecewise linear graphing problem. Then we used Netscape’s LiveConnect technology to allow the Java applets to communicate with the HTML form elements. In this way the students could draw a timing diagram or sketch a piecewise linear graph in the browser window. The applet would then convert the graphical solution to a textual solution and transfer the textual solution to the HTML form using LiveConnect. The students could then submit a solution to Mallard to be graded.

Figure 3 shows the Java version of the original timing diagram problem displayed in figure 1. Note that when the student clicks on the timing diagram with the mouse, the values change from X to 0 to 1 and back to X again. The state in each timing interval is automatically written to the answer form via LiveConnect. A disadvantage of this method is that the LiveConnect technology is browser specific. Currently only Netscape supports applets communicating with forms via LiveConnect. In this problem we left the HTML form visible instead of hiding it so that students working on non-Netscape browsers could use the applet to get the visualization and then manually input the solution from the timing diagram to the blank.

Figure 4 shows how we used Java to ask piecewise linear graphing questions. Notice that now students can draw on the graphs in their browsers by clicking on a grid to add or delete points. This is much more intuitive to the students than typing in a list of points or an equation to represent the solution.


Traditionally design problems are some of the most difficult types of problems to grade because there may be an infinite number of correct solutions and some solutions may be technically correct but not as good as others. Below we explain how a Java-based microprocessor simulator can be used to grade students’ assembly language programs.

Using Java we have created a stand-alone applet which functions as a microprocessor simulator for the students in the ECE110 course. We simulate an imaginary microprocessor called the Knight 2000 (K2000), which is a simple RISC processor with 16 instructions in its instruction set. The purpose for the simulator is to teach students

how to write assembly code programs,

how assembly to machine code conversion is done, and

basic principles about how executing an instruction changes the machine states including the register file, program counter, i/o ports, and memory.

Figure 5 shows the graphical user interface for the K2000 simulator. Because it was written in Java the students can access it from any browser that is Java capable. The students enter their assembly code program into the left panel of the simulator. Then they can step through the program instruction by instruction or they can execute the entire program at once. At any time they can view any aspect of the machine’s state. For example, they can view the register contents and program counter. If they wish they can view the contents of memory to see how their program is converted into machine code and stored in memory or they can view the values on the i/o ports of the K2000.

In Spring Semester 1996 the only non-Mallard, written homework that we gave the students was an assignment to write a short program in assembly language. Although the assigned program was not very complex (ranging from 15-20 lines of assembly code) there were several acceptable solutions.

We have designed the simulator applet and integrated it into Mallard. Now students do not have to turn in programs to be graded manually. Mallard will set the initial state of the K2000. The students develop code to solve the particular homework problem, enter it into the simulator, and run the simulation. As the program executes and the K2000 changes state, these changes are communicated to Mallard via LiveConnect. When the simulation has finished executing, the students click the Mallard submit button and Mallard checks the final state values to determine if the code functioned properly. By integrating the K2000 Java-based simulator into Mallard students are able to get immediate feedback about the correctness of their assembly code programs.


A final innovative approach that we have used in the ECE110 class is to provide synchronous as well as asynchronous on-line TA help. We have developed an interactive whiteboard using Java, which allows students to communicate with TAs and instructors during office hours without having to leave their computers and trek across campus to another building. The whiteboard allows students to get help from TAs who are on duty without leaving the comfort of their dorms or the computer lab where they happen to be working.

Students log onto the whiteboard using the Session Manager. This allows them to see what sessions are currently active and also who is participating in each of the sessions. Figure 6 shows a depiction of the Session Manager. It shows that there are currently two active sessions ECEl10_TA and HW5P3_Question. The members that are currently participating in each one of the sessions are listed under each session after the “M=”. The student may at this point choose to create a new session, join an existing session, or exit the session manager.

When a student joins a session, all of the other participants in the session are alerted on their individual computers with the sound of a rooster crowing. Similarly when a participant exits a session the remaining members receive an audio alert. Once a student has joined a session with a TA, the students can upload an image from one of the homework problems or tutorials to annotate in the window, sketch a figure in the workspace, or type in a question to the TA concerning a homework problem. Figure 7 shows the whiteboard and an example session in progress.

The three main challenges that we have encountered with the use of the whiteboard are:

the instability of more complex Java features such as socket programming on some platforms (e.g., certain Macintosh machines)

the lack of visual and audio feedback in the communication between participants (e.g., does a long pause mean the student is confused, the network is slow, or did the student get distracted for a couple of minutes by a friend?)

the lack of security features to restrict access to a session or positively identify participants in a session.

We have seen mixed responses from the students with regard to using the whiteboard. Some students have found it helpful and tend to use it quite often while other students prefer to post questions in the class newsgroup or visit the TA in person. Although we have run across some challenges trying to make the whiteboard painless to use, we feel that it can be a useful tool with proper supervision. As time passes and technology improves we expect that many of the challenges that we have faced will fade away and that most, if not all, students will use on-line TA help because it is easier than the altemative.


Our new freshman course, “Introduction to Electrical and Computer Engineering” was offered on an experimental basis beginning in 1993. The course became a requirement in the fall of 1995. Since then the students have completed a survey which asks them to rate, among other things, the lecture, laboratory, homework, and Mallard. The rating scale is (5) excellent, (4) good, (3) average, (2) fair, and (1) poor. The averages for each category are contained in table 1 for the past three semesters. Over 90% of the students completed the survey in each semester.

In this table the number in parenthesis in the enrollment column indicates the approximate section size. Note that we have been able to triple the section size and still obtain a high level of student satisfaction because of the self-paced nature of the Mallard tutorials and quizzes. We were surprised to note that Mallard has become as highly rated as the popular laboratory. In the fall 1995 semester, homework was assigned from the textbook. In the spring and fall 1996 semesters we completely eliminated the need to collect and grade homework problems. It is all done electronically, and the students’ reaction has been very favorable. The instructors also believe that Mallard has improved the students’ performance on examinations. Mallard certainly hasn’t hurt their performance on examinations, and there is some evidence to indicate that performance has improved.


In addition to the above course rating, each semester the Office of Instructional Resources (OIR) surveys courses across campus which use computer technologies for conferencing or the WWW for the distribution of course materials and on-line quizzes. In the 1996 Fall Semester our course was one of those surveyed. For courses with a Web component, the OIR was interested in where students accessed the Web, what Web activities the students engaged in and how frequently, how effective the Web was in learning course material, and any difficulties the students might have had in using the Web in their course. A summary of the survey results for all courses can be found at URL: http.// In the following charts the survey results are summarized for our freshman course. We do not require our students to own a computer, yet figure 8 shows that 62% of the students most frequently accessed the Web from a private room, such as a dormitory room or apartment.

Figure 9 shows how frequently the students accessed course material on the Web. The values are not surprising because we assigned at least one on-line quiz each week. It is interesting that 75% of the students also surf the Web at least once a week. A bulletin board was made available to students in the course to communicate with each other, TAs, and the faculty. It is interesting that 50% of the students claim that they used the Web to communicate at least once a week with other students. The frequency of communication with faculty was low. Because of the large class size, communication with faculty was not emphasized. Students were encouraged to communicate electronically with each other and with the on-line TAs if they had questions outside the classroom.

In figure 10 it is interesting to note that 70% of the students found Web access to course material and on-line quizzes effective in helping to learn the course material. Only 8% of the students had a negative view. Figure 11 indicates that the students’ viewed the Web as an effective tool for learning.

Figures 12 and 13 show that the students had very little difficulty with using the Web to access course material. These are interesting results because the students were given only a one-hour class demonstration on how to access the Web and how to use Mallard to take on-line quizzes.

Even though this was the first time most of the students accessed course material and took quizzes on the Web, figure 14 shows that only a small percentage of the students reacted negatively to the experience. The majority of the students indicated that using the Web as part of the class was worthwhile.

A similar survey was taken in the 1997 fall semester, and the results were not substantially different from those reported above. The most noticeable changes from 1996 to 1997 are that in 1997 more students own their own computer and more of them are familiar with the WWW. This survey also allowed students to make open-ended comments. Below is a sample ofthe students’ comments:

“I was able to get a quick response to my answers and, if I was wrong, I would go back and retry the problem until I figured out the correct way to solve it.”

“It gave us time and the opportunity to make mistakes and learn from them.”

“The new quiz option let men get a near-endless array of practice problems.”

“I can log on anywhere: my dorm, a lab, or a different city and do my homework.”

“I was constantly in touch with what was going on in this class.”

“It provided me with an easy means to access, explore and learn the course material and to recognize my won areas of weakness.”

“It’s nice because you can work ahead if you want to.”

“Helped me learn on my own.”

“It forced is to do our homework on time and made me punctual. “So, it keeps me on my toes!” Not all of the response were positive. For example, one student wrote:

“It creates a feeling that you are just a number, and that you are only known by your net ID, not by your face.”

This comment can be made about large classes in general. To minimize this feeling, the course has a required laboratory. The students are divided into laboratory sections of not more than 28 students/section. The laboratory sections meet for three hours each week with a lab instructor. The labs are also staffed by two graduate student TAs and a couple of undergraduate student mentors who are available to offer advice to the students. The graduate TAs also grade the lab notebooks.


At the University of Illinois at Urbana/Champaign we are using some innovative ideas to teach a freshman electrical and computer engineering course. The students are using a WWW-based asynchronous learning environment called Mallard. Within this environment they are able to do homework problems and receive immediate feedback regarding their solutions. In order to expand the type and quality of the questions we could ask the students we have integrated Java-based question types into Mallard. These question types provide the students with a more intuitive interface to problems that are graphical in nature such as drawing timing diagrams or plotting piecewise linear graphs. We have also developed a Javabased microprocessor simulator. We have integrated this simulator into Mallard so that design problems involving writing assembly code programs can be graded. Finally, we have developed a Javabased interactive whiteboard, which allows the students to get synchronous help from on-line TAs from wherever they are working on their homework. The instructors feel that using Mallard has enhanced the learning process for the students as well as relieving TAs from some of the more mundane tasks such as grading. Finally the results from the survey of the students indicate that students enjoy using Mallard and feel that it was effective in helping them to learn the course material.


The authors wish to express their appreciation to the Alfred P. Sloan Foundation and the University of Illinois for their financial support of this project.

* Based on “An Innovative Approach to Asynchronous Learning Using Mallard: Application of Java Applets in a Freshman Course” by Timothy Trick and Charles R. Graham which appeared in the Proceedings of the 1997 Frontiers in Education Conference, Pittsburgh, PA, November 5-8, IEEE Catalog No. 97CH36099, pp. 238-244, 1997 IEEE.


1. Swafford M. L., C. R Graham, D. J. Brown, and T. N. Trick, “MallardS: Asynchronous Learning in Two Engineering Courses,” Proceedings, 1996 Frontiers in Education Conference, IEEE/ASEE, 1996, vol. 3, pp. 1023-1026.

2. 3.

4. Uribe R B., L. Haken, and M. C. Loui, “A Design Laboratory in Electrical and Computer Engineering for Freshmen,” IEEE Transactions on Education, vol. 37, no. 2, May 1994, pp. 194-202. 5. Oakley, Burks II, ” A Virtual Classroom Approach to Teaching Circuit Analysis,” IEEE Transactions on Education, vol. 39, no. 3, August 1996, pp. 287-296.

6. Schodorf, J.B., M. A. Yoder, J. H. McClellan, and R W. Schafer, “Using Multimedia to Teach the Theory of Digital Multimedia Signals,” IEEE Transactions on Education, vol. 39, no. 3, August 1996, pp. 336-341.


Instructional Systems Technology Department Indiana University


Department of Electrical and Computer Engineering University of Illinois at Urbana-Champaign

Copyright American Society for Engineering Education Oct 1998

Provided by ProQuest Information and Learning Company. All rights Reserved