Last updated 2009 March 5
About the Course
The course introduces systematic methods of testing and verifying various types of software systems covering a range of static and dynamic techniques and their use within the development process. All too often software is designed and then tested. The real aim must be to take a more holistic view, where design is carried out with verification in mind to achieve overall project goals.
Upon successful completion of the course you shoud be able to do the following.
- Understand the importance of testing.
- Understand the strengths and weaknesses of particular techniques and be able to select appropropriate techniques for a given situation.
- Be able to produce test harnesses for large sorftware systems.
- Be able to produce quality problem reports.
Texts
The course text book is the following. It may be purchased at bookstore.
Paul C. Jorgenson
Software Testing - A Craftman's Approach
Auerbach Publications, 2008, third edition
ISBN 0-8493-7475-8
Addional notes and class slides are available from
the resources page for the course.
Workload
The work load in this course, as in most computer science and engineering courses,
is high. The course has a large unscheduled laboratory component to it that
involves writing reports and testing programs. You should be preparedto devote
10 hours a week on average to the course; this includes class time. With proper
planning and discipline, you can spread most of the work load fairly evenly
throughout the course.
It is up to the you to read and study relevant material without explicit
instructions. You are expected to find the required readings in the references
and any other sources you can find. Part of the university experience is
to acquire a measure of self reliance. The instructor for the course can
only guide you as to what is useful to learn; the effort must come from
you. The course classes will not cover all the topics in detail. Instead,
the classes will cover the most important points and give you pointers
as to how the rest of the material can be studied.
Classes
The course consists of three class hours per week. In preparation
for classes you are expected to read the appropriate material - the class
schedule gives an approximate idea of when various topics and readings
will be deal with. In addition, exercises will be given which you should
do in preparation for future classes.
Class participation
The course format is an interleaving of lecture and seminar style. I expect
lots of participation and discussion. You will have to draw on your past
experiences, current readings and exercises to not only ask questions
but also answer questions
raised by myself and the other students.
You are encouraged to participate in class. Interviewers say that communications skills are a problem area for some of our graduate students. I encourage you to work on your communication skills in this class. Ask questions, Answer questions. Let me tell you from my own experience, once you have looked stupid enough times, it will no longer bother you. Believe me, I know! And, seriously, it is highly unlikely that your classmates will actually think you are stupid. It would be virtually impossible for a stupid person to make it this far through school. No, it is more likely that every person in the class is smart, not stupid. But no one knows everything, so we will all sometimes answer questions incorrectly, and we will all sometimes say something that is wrong. We may even ask a silly question; and we may even all laugh about it. That will be a growing experience in itself. So, in summary, you are encouraged to participate in class!.
Reports and Exercises
You will hand in for grading a set of reports. The specifications are given as announcements in the course forum. The
report page gives more information
about the style and content of reports.
The timetable section give the due dates and times for the
reports.
The grading page describes the grading scheme for the course.
In addition, the instructor may suggest ungraded exercises. Spend a reasonable amount of time on each exercise. Simply giving an effort leads to a learning experience and discussion. The major point of an exercise is to get all class members thinking about the same problem.
Tests and Examinations
There is a take home examination at the end of the term.
The timetable section give the dates and times for the
tests and examination.
The grading page describes the grading scheme used and the algorithm for computing your final grade.
The test questions will be based on all the course material: texts, readings,
classes, reports, exercises, and on-line notes and slides.
Timetable
Follows the Faculty of Pure and Applied Science dates.
Class times: Tuesday and Thursday 10:00am to 11:30am, FS 106
Due dates for reports and tests
Report 1 Tuesday, March 31, 1:00 pm, at the class
Report 2 Tuesday, April 28, 1:00 pm, at the class
Report 3 Thursday, May 21, 1:00 pm, at CSEB 2032
Take home test: given out Thursday, May 21 -- on line as a bulletin
due Tuesday, June 2, 1:00 pm, at CSEB 2032
Miscellaneous important dates
First day of classes : Wednesday, March 4
Last day to enroll in the course : Wednesday, March 18
Reading week (no classes) : N.A.
Family Day (no classes) : N.A.
Last day to drop the course : Wednesday, April 22
Last day of classes : Thursday, May 21
Good Friday -- University closed : Friday, April 10
Victoria day -- Univeristy closed : Monday, May 18