5. Outcome (j) assessment
Outcome (j): An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices.
Assessment of Outcome (j) was conducted in CS 146 and the results are as follows.
For Sections 1 and 2 combined, for indicators 1 and 3, students did very well, again with approximately 90% of students performing at a satisfactory level or better. Indicator 2 was not quite as good, with about 15% missing the mark.
From Katerina Potika: “Comparing two algorithms for a sorting problem is difficult for some students, mostly due to the fact that the problem might have two input sizes (n and k) etc.”
For sections 3 and 4, I (Taylor) made a serious assessment mistake: for one of the two sections, none of the three indicators was easy. For the first indicator, one section’s question was very straightforward, but the corresponding question for the other section was not. The 2nd indicator problem I used (given inefficient pseudocode, make it efficient), it is definitely more difficult than the problem described in the indicator. The third indicator was measured by a programming assignment late in the semester. Students are not required to do all programming assignments, so many (40%) skipped this one. Nevertheless, because performance on other indicators was fairly similar between sections, I would estimate that perhaps 80% of students in Section 3 and 4 should have been able to perform Outcome J overall at a satisfactory level or better. (It might drop to 70% using a more stringent definition of satisfactory.) Again, a more detailed (and justified) suggestion to refining assessment is given in Section 4.