WeBWorK Development in Electric Circuits Elizabeth J. Brauer Department of Electrical Engineering Northern Arizona University, Flagstaff, AZ liz.brauer@nau.edu Abstract WeBWorK is an internet-based homework system first developed for math courses but also utilized in science courses. Little development has been done with WeBWorK in engineering courses. In a similar vein, some publishers have developed computer-mediated homework to accompany their textbooks but these tend to have limited capabilities. This paper presents work done at Northern Arizona University to develop a collection of WeBWorK problems for Electric Circuits. Each individual student receives a randomized parameter set and the WeBWorK system analyzes the correctness of the solution. The problem set has been developed over a period of three semesters with an initial assessment of student perceptions included in Fall 2007. The problems are written in a Perl-based language. The value of the system is the immediate feedback of the correctness of the numerical solution. On the other hand, students express frustration at the lack of specific feedback when the solution is incorrect. We continue to expand the problem set and develop methods of providing feedback. Introduction Computer based learning systems, beginning with the Plato system at the University of Illinois in the 1960s, have taken various approaches to using technology to enhance learning. One recent system, WeBWorK [1], was developed at the University of Rochester as a web-based interactive homework system. The original fields were mathematics and the sciences and numerous problem sets have been developed in these areas. In the effort described in this paper, problems are being developed for the beginning class, EE 188 Electric Circuits I, at Northern Arizona University. This class covers basic dc and ac circuits, and fundamentals like Ohm’s Law, Kirchhoff’s Voltage Law and Kirchhoff’s Current Law. The emphasis is on circuit analysis, where the circuit and parameter values are given and the student determines a given voltage, current, power, or other value using the requested analysis strategy. In this paper, I will present a typical WeBWorK problem in EE 188, showing the problem from the student’s perspective, then how the problem is constructed in the WeBWorK language. Last I will discuss the results of student assessment and conclude the paper. Problem Presentation When the student logs into the WeBWorK system using an internet browser, a sample screen is shown in Figure 1. On the left are links for accessing homework sets and managing the WeBWorK account. In the main screen are the homework sets, each as a link. When the student selects a homework set, Figure 2 appears and shows the list of problems and the status of each problem such as how many attempts remain and the percentage correct. The student is also able Proceedings of the 2008 American Society for Engineering Education Pacific Southwest Annual Conference Copyright © 2008, American Society for Engineering Education to create a hardcopy pdf file of the problems, which is helpful for solving the problems initially away from the computer. Clicking on a particular link brings up the problem details, shown in Figure 3. If a schematic is included, clicking on the schematic outlined in blue brings up another window with a bigger version (Figure 4). The student enters the solution in the white boxes. Clicking on the Submit Answers box requests the WeBWorK system to evaluate the answers and determine which ones are correct. See Figure 5. The student is provided the problem status in terms of percent correct and remaining attempts. Notice the “Email instructor” button in each screen. This allows the student to send an email to the instructor containing a message, usually a request for help, along with which problem is being solved. Figure 1 Initial WeBWorK screen Figure 2. Problem set screen Proceedings of the 2008 American Society for Engineering Education Pacific Southwest Annual Conference Copyright © 2008, American Society for Engineering Education Figure 3. Sample problem Figure 4. Schematic window Figure 5. Graded sample problem. Proceedings of the 2008 American Society for Engineering Education Pacific Southwest Annual Conference Copyright © 2008, American Society for Engineering Education Problem Construction The WeBWorK language is based on Perl. An example is shown in Table 1. The first section is a description with keywords. The executable code begins with the keyword DOCUMENT. The first step is to load macro files. These include subroutines for things like evaluating answers. The next section begins with the keyword TEXT. First is the generation of random numbers. For example, the variable i3 will take on one of 1, 2, 3, 4, 5 or 6. You can use already defined variables in the random number generation statement or you can use a do loop to ensure that two values are not the same. For example, this line will repeatedly assign a value to R2 until it is not the same as R1. do { $R2 = random(2,20,1); } until ($R2 != $R1); The next part of the problem, between the keywords TEXT and EOT, is the part that is visible to students. In this example, an image is shown first, followed by the listing of the parameter values. The answer boxes are specified by \{ans_rule(20)\}. The keyword ANS corresponds to each ANS_RULE above. In this case, the relative tolerance is 2%. END_DOCUMENT is the last statement. My strategy for creating WeBWorK problems is to use problems from existing textbooks, such as Irwin [2] or Hayt [3] (the current textbook for the course). I check the solution of the book’s parameter set in MathCAD and compare to the author’s solution. I then program the WeBWorK problem and compare the book’s parameter set and a random parameter set with MathCAD to verify the WeBWorK solution. Student Assessment In Fall 2007, I performed an assessment to gauge student response to WeBWorK and guide future development. I asked the following questions. Question 1 Please describe the positive aspects of the WeBWorK system. For example, did you like the immediate feedback? ----------------------------------------------------Question 2 What are the negative aspects of the WeBWorK homework system? For example, one negative aspect might be the lack of feedback about an error in your solution method. List as many as you want. ----------------------------------------------------Question 3 Please suggest any improvements to the WeBWorK homework system. List as many as you like. Thank you for your feedback. I greatly appreciate your inputs. Appreciation of immediate feedback was almost unanimous while several students expressed frustration at the lack of feedback when the answer was incorrect. Other comments included the Proceedings of the 2008 American Society for Engineering Education Pacific Southwest Annual Conference Copyright © 2008, American Society for Engineering Education benefit of partial credit given for questions with multiple answers and of universal access. One student compared the problems to having a tutor. The negative aspects included no partial credit, the limited number of tries, lack of feedback to correct errors, problems with entering values in WeBWorK (too precise), and errors in the problem solution. Suggestions for improvement include a reference to a section of the book, more feedback or hints, and not restrict the number of tries. As a result of this assessment, I have increased the number of tries from 25 to 30 and added intermediate steps for some problems. I have also included more discussion about the solution method in the problem description. Conclusion WeBWorK is being utilized for the beginning circuits class in Electrical Engineering at Northern Arizona University. While there are negatives to the system, the strong positives are the immediate feedback, forcing the student to obtain the correct solution, and automatic grading of large numbers of students’ work. WeBWorK development in the beginning circuits class continues with the creation of new problems and improvements to existing problems. Bibliography [1] [2] [3] http://webwork.rochester.edu/ J.D. Irwin and R.M. Nelms, Basic Engineering Circuit Analysis. John Wiley & Sons, Inc.,Hoboken, NJ, 2005. W.H. Hayt, Jr., J.E. Kemmerly, and S.M. Durbin, Engineering Circuit Analysis. McGraw-Hill Higher Education, Boston, 2007. Table 1. Sample problem – WeBWorK language ##DESCRIPTION ##KEYWORDS('resistance', 'power') ## Find resistance,and subsequently, the power dissipated in a piece of wire ##ENDDESCRIPTION DOCUMENT(); # This should be the first executable line in the problem. loadMacros( "PG.pl", "PGbasicmacros.pl", "PGchoicemacros.pl", "PGanswermacros.pl", "PGauxiliaryFunctions.pl" ); TEXT(&beginproblem); $showPartialCorrectAnswers = 1; $i3 = random(1,6,1); #unit = A Proceedings of the 2008 American Society for Engineering Education Pacific Southwest Annual Conference Copyright © 2008, American Society for Engineering Education $i6 = random(1,3,1); $i4 = random(($i6+1),18,1); #unit = A #unit = A TEXT(EV2(<<EOT)); \{ image("irwin_02_011.gif") \}$BR Find \(I_1\) and \(I_2\) in the circuit shown given that \(I_3 = $i3 A, I_4 = $i4 A\) and \(I_6 = $i6 A\) $BR $PAR \(I_1 =\) \{ans_rule(20)\} \(A\) $BR $PAR \(I_2 =\) \{ans_rule(20)\} \(A\) $BR $PAR EOT $i_1 = $i4; $i_2 = $i4 - $i6; ANS(num_cmp($i_1, reltol=>2, format=>'%4.4g')); ANS(num_cmp($i_2, reltol=>2, format=>'%4.4g')); ENDDOCUMENT(); # This should be the last executable line in the problem. Proceedings of the 2008 American Society for Engineering Education Pacific Southwest Annual Conference Copyright © 2008, American Society for Engineering Education