CS 110A - Intro to Programming: C++ - Stage 5 - Charles Metzler

Assessment

Assessment Methods

Analysis of exam, quiz, or homework items linked to specific SLOs

Assessment DescriptionI examine the results of all tests and the final exam and review the suggestions from the last year’s assessment:

Warn students to remember && before ||.

Remind students the different results from .fail()

Fix the test #2 question on strings, and review infinite loops more.

Discuss call by reference with other department members.

Next time check Test #1 or Test3
Learning OutcomesALL
Number of Sections6
Number of Instructors4
Number of Students200

Data Analysis

Data Shared With
  • Instructors of the same course (at CCSF)
  • Faculty and staff within our department
Data Sharing Methods
  • Face-to-face meetings
  • Email
  • Website review and commentary
Data SummaryThe tests have two parts, one for multiple choice questions, the part II has written answers. Here are the 7 questions where students got 50% or under:

Test #1

4. on the 5 components should be easy – watch wording or take off.

18. on data types too tricky (i.e. integer not int)

24. on multiple lines of code and statements

What is true about a single cout statement on multiple lines of code?

(a) only the last line of the code ends with the semicolon

(b) do not split up a variable name between lines of code

(c) do not start and end a quote between two lines of code

(d) all of the above

29 on formatted output

double num = 12.344;

cout << fixed << setprecision(4) << num << endl;

(a) 12.34 (b) 12.3440 (c) 0012 (d) none

Test#2

All questions 50% or higher! may be due to running a program before the test in class.

Test#3

4. on fail()

Given the following code:

ofstream clear_stream;

clear_stream.open("abc.txt");

When is clear_stream.fail() set to true?

(a) when abc.txt does not exist

(b) when abc.txt already exists

(c) when there is incorrect permissions for the file

(d) none

25. on call by reference

In call by reference

(a) the argument must be a variable

(b) the argument can be a constant

(c) the return statement is required

(d) all of the above

(e) none

Final

17 on call by reference

void nonstopfun(int&, int, int&);

int main() {

int a = 1, b = 2, c;

nonstopfun(a, b, c);

cout << a << " " << b << " " << c;

}

void nonstopfun(int& a, int b, int& c) {

a++;

b = 3;

c = b - a;

}

The above outputs

(a) 1 2 3 (b) 2 3 1 (c) 1 2 1 (d) 2 2 1 (d) 1 3 2

Our department discussed the issue of call by reference in November 2012 and shared our experiences and ideas. Although all agreed this is the most difficult topic for introductory students, it importance was also reiterated. We all seem to have similar tricks to teaching this in lectures.

We also discussed the issue of the dangling else (two ifs with on else) and I found that no one but me has tested on that issue.

I had student use the computers in the classroom to try out the problem issues and they improved on tests.
Analysis SummaryThe issues historically have been: call by reference, && before ||, two ifs with one else, .fail().

There are seven questions on all tests that had 50% or fewer results. Besides wording changes there are still two issues that students are having problems: .fail() and call by reference including arrays parameters

Previous analysis showed students were having problems with the following but are now doing better: && before || and two ifs with one else

These results will be shared with other member of the department in June 2013
Next Steps PlannedContinue to warn students to remember && before ||.

Continue to remind students the different results from .fail()

Continue to remind students the issues with call by reference.
Learning OutcomesALL

Changes

DetailsWarn students to remember && before ||.

Remind students the different results from .fail()

Fix the test #2 question on strings, and review infinite loops more.

Discuss call by reference with other department members.
Learning Outcomesall

Tentative Future Plans

TermSpring 2014
Activities
  • Assessment (measurement) of outcomes
  • Analysis and discussion of assessment data and next steps
  • Implementation of planned changes and reassessment
More Detailscontinue to have students use computers in the classroom to review concepts before the exam

SLO Details Storage Location

Back to Department Overview