Syllabus Schedule
I have not failed. I've just found 10,000 ways that won't work.
-Thomas Edison

SWE 637: Software Testing and Quality Evaluation
Course Syllabus

This syllabus is from a graduate course at George Mason University. SWE 637 is an elective in the Masters of Software Engineering program that is taught every semester. It is taken by 30 to 40 masters students in the Software Engineering, Computer Science, Information Systems, and Information and Software Assurance programs; and PhD students in Information Technology and Computer Science. The class meets one day per week for 2.5 hours in the early evening.

Professor: Jeff Offutt
Office: S&T II 347, 993-1654, fax: 993-1638
Email: offutt +=+=+
Class Hours: Tue 4:30-7:10, S&T I, 206
Prerequisite: SWE 619 and SWE Foundation material, or CS 540 and CS 571
Office Hours: anytime electronically, Thur 2:00-3:30, Tue 7:30-8:30, or by appointment
TA: Shuang Wang, swangb +=+=+
Office Hours: Wed 1:30-3:30 pm, S&T II, room 335

Concepts and techniques for testing software and assuring its quality. Topics cover software testing at the unit, module, subsystem, and system levels, automatic and manual techniques for generating and validating test data, the testing process, static vs. dynamic analysis, functional testing, inspections, and reliability assessment. Professor's note: The course will attempt to prepare students to test software in structured, organized ways. This course should provide practical knowledge of a variety of ways to test software, an understanding of some of the tradeoffs between testing techniques, and a feel for the practice of software testing and the research in software testing.

Paul Ammann and Jeff Offutt, Introduction to Software Testing, from Cambridge University Press.
Check out the book website.

Knowledge of programming and data structures and a general knowledge of software engineering. You will need a basic familiarity with some of the subjects and terms of software engineering. You will need an in-depth understanding of the syntax and semantics of multiple programming languages.

I expect you to read the relevant material before lecture. The lectures may not cover everything in the readings and will often include material not found in the readings.

There will be small computer and homework assignments for most of our topics. Some will require pencil and paper and others will require modest programming or use of tools available from the Web. I do not accept late homework unless arrangements are worked out in advance, and 10% per week will be deducted for late submissions.

We will have weekly quizzes and no midterm exam. Quizzes will be given during the first 10 minutes of each class and no makeup or late quizzes will be given. You are allowed to miss up to three quizzes (the lowest three quiz grades will be dropped). The 10 quizzes with the highest scores will be used to calculate the final grade (10 * 3% = 30%).

Phone calls, text messages, instant messages, email, and general web surfing are not allowed during class time. Computers may only be used to follow the material in class. Violators will have their devices confiscated or asked to leave the room.

As with all GMU courses, SWE 637 is governed by the GMU Honor Code. In this course, all assignments, exams, and project submissions carry with them an implicit statement that it is the sole work of the author, unless joint work is explicitly authorized. Help may be obtained from the instructor or other students to understand the description of the problem and any technology, but the solution, particularly the design portion, must be the student's own work. If joint work is authorized, all contributing students must be listed on the submission. Any deviation from this is considered an Honor Code violation, and as a minimum, will result in failure of the submission and as a maximum, failure of the class.