Syllabus for CS 309: Software Quality - Spring 2009

InstructorMs. Jaymie Strecker
Lectures6:00-8:30pm Th in Taylor 200
Office hoursSee Woodle
Phone330-287-1909
E-mailjstrecker@wooster.edu

Course summary

An exploration of meanings of software quality and methods to achieve it, focusing on software correctness. A mixture of lecture and lab time, the course will give students hands-on experience with techniques to prevent, reduce, or contain defects in software. Techniques will likely include writing formal specifications and proving properties about them, model-checking, applying "bug finder" tools, and of course testing. Prerequisites: CS 152 and a basic knowledge of graphs. Current CS 152 students may enroll with permission of the instructor.

Course objectives

Students who complete this course will be able to:

Course materials

Readings, etc.: You do not need to purchase a textbook. Materials will come from:

The reading assignment for each week will be posted on Woodle by the preceding Friday evening.

Forums, schedule, announcements, etc.: On Woodle.

Grades

Grades will be distributed as follows:
Participation80%
Forum Posts5%
Final Project15%

Participation: Most of your grade is based on participation. You will be graded each class session based on the rubric below, and those grades will be averaged. Participation grades will be posted each week on Woodle.
A=4 pointsB=3 pointsC=2 pointsF=0 points
Attendance/punctuality Prepared to work by 6:00, stayed until dismissed Present by 6:00, stayed until dismissed Arrived a few minutes late or left a few minutes before dismissed Missed more than 10 minutes of class
Preparation Demonstrated analysis and synthesis of assigned reading (active reading) in forum posts or discussion. Demonstrated basic comprehension of assigned reading (passive reading) in forum posts or discussion. Demonstrated partial reading in forum posts and discussion. Demonstrated little or no reading in forum posts and discussion.
Contribution to discussion Offered several thoughtful questions or ideas (or just one if discussion was brief). Offered at least one thoughtful question or idea. Offered at least one not-so-thoughtful question or idea. No contribution or disrespectful to others.
Contribution to activities Stayed on task the whole time, tried various strategies to work through difficulties, and interacted productively with team members. 1 of the following: off task some of the time, relied heavily on instructor's help to work through difficulties, or did not interact productively with team members. 2 of the following: off task some of the time, relied heavily on instructor's help to work through difficulties, or did not interact productively with team members. Off task some of the time, relied heavily on instructor's help to work through difficulties, and did not interact productively with team members.

Attendance/punctuality: With so few class meetings and such a small class, it is very important that each student attend each class session. You must let me know in advance if you need to miss a class, arrive late, or leave early. If you miss part of class, I will only allow you to make up the work if you have a very good reason for your absence (serious illness, etc.). Otherwise you will get no points for that class session.

Forum Posts: For each assigned reading (or other material), a Q-and-A forum will be provided on Woodle. To get full credit for each forum, by the start of class you just need to post reasonable answers to 2 questions:

  1. Key point: In 1-2 sentences, what is the authors' most important point?
  2. Muddiest points: What points are least clear to you?
Once you answer those questions, you will be able to view other students' answers and make additional posts. You are encouraged to reply to other students' muddiest points and ask questions about the reading. Please try to post at least a day before class. The instructor will try to address forum posts during class.

Final Project: To be completed independently by Thursday, May 7 at 9:00 a.m. Late projects will not be accepted.

Extra Credit: You may earn extra credit by giving a 10-minute presentation on an article (or several related articles) that is highly relevant to the course. Articles may come from the assigned reading, scholarly/trade journals, conference proceedings, or scientific magazines (like Communications of the ACM or IEEE Software). Other sources, like newspapers and blog posts, may also be acceptable; check with the instructor. Your presentation should include visual aids, such as a slideshow or a handout. If you plan to give a presentation, please send me the article in advance.
    For each presentation, you may earn up to 8 participation points (see the rubric above). You may give up to 5 presentations. I will only count extra credit until the sum of your participation points and your forum points reaches 89% of the total points for the course. In other words, you can't get an A without doing the final project.

Academic honesty

Please know and abide by the rules in The Scot's Key and the Handbook of Selected College Policies.

Cheating in any of your academic work is a serious breach of the Code of Academic Integrity and is grounds for an F in the entire course. Such violations include turning in another person's work as your own, copying from and source without proper citation, crossing the boundary of what is allowed in a group project, and lying in connection with your academic work. You will be held responsible for your actions. If you are unsure as to what is permissible, please contact your course instructor.

Accommodations

If you have a learning disability or long-term condition (such as mono or depression) that may impact your ability to succeed in this course, you are welcome to speak to me about it. If I am aware of your condition, I can work with you to make reasonable accomodations. In any case, I hope you will take advantage of services offered by the Learning Center (x2595, prose@wooster.edu) or the Longbrake Student Wellness Center (x2319).

Class schedule (tentative)

The most detailed and up-to-date schedule is on Woodle.
WeekTopic
1 (3/23-3/27)What this class is about, definitions and importance of quality, careers in quality
2 (3/30-4/3)Testing: mindset and goals, black-box testing
3 (4/6-4/10)Testing: white-box testing, test adequacy, automated testing, testing modern software, testing untestable software
4 (4/13-4/17)Student choice (topics in defect prevention/reduction/containment)
5 (4/20-4/24)Student choice (topics in defect prevention/reduction/containment)
6 (4/27-5/1)Student choice (topics in quality evaluation)