| Over the
course of the quarter, the TAs and I noticed that some students were
having an unusual amount of difficulty analyzing algorithms and code
fragments. One example of this was an unusually poor performance on
Outcome Indicator C2b, which is addressed in the next question.
Another more striking example is that students had trouble analyzing
simple loops, such as the following:
for i = 1 to n^4
x = f(i) //assume f(i) can be computed in constant time
Some students had difficulty understanding why the running time for this
loop was O(n^4) rather than O(n). They were convinced that a
singly-nested loop always runs in linear time.
This is not a problem I have encountered in the past.
I can think of three possible explanations for why they might have been
having this level of difficulty analyzing a simple algorithm.
One possibility is that this was just a one-time aberration, perhaps due
to an unusually ill-prepared cohort of students or a statistical fluke.
This may prove to be the case, but in the meantime, it is appropriate
to examine other possible explanations.
A second possible explanation is that students are not being prepared
properly in their prerequisite courses here are UCI. I do not believe
that to be the case. I have checked with current instructors for ICS 46,
which is a prerequisite for this course and which introduces students
to the basic concepts of algorithm analysis. They have assured me that
this is something that is covered and tested in their classes.
A third possibility is that students who transfer here from other
colleges and universities are not coming in with the same background
that they would have if they had entered our program at the start of
their university studies. Transfer students are given credit for
courses here based on having taken purportedly similar courses at their
previous institution. For some courses, the decision whether to grant
credit is based solely on a comparison of syllabi. For other courses it
is based on an examination. Not all of these examinations are
particularly rigorous. For example, some are multiple choice tests, and
in some cases the examinations are administered online with no
proctoring.
I recommend we move toward making a more rigorous assessment of
students' knowledge of the material in required courses in our
curriculum that they have not taken here. For some of these courses, it
would be appropriate to require students to pass an examination on the
course material in order to waive the requirement to take the course.
Such an exam should be either a proctored written exam (not
multiple-choice) or an oral exam.
As noted above, it might prove to be the case that the degraded
performance seen here is a transient phenomenon. We will vigilantly
monitor student performance in the next few offerings of the class. |