Course
Overview
This is a course in managing the software testing process and in testing computer
software. The course covers the theory and practice of quality assurance and
testing for each step of the software development cycle. Topics include Verification
vs. validation; Test case design techniques, test coverage criteria, and tools
for static and dynamic analysis; Standards; Test-driven development; QA for
maintenance and legacy applications; and Experimental approaches
Prerequisites
CS 673 or CS 682
Learning Objectives
This course provides a comprehensive examination of the testing tools, methodologies
and techniques of software testing. Frequently used testing frameworks will
be introduced and students will develop and design testing suites. Students
will learn how to select right testing tools and understand risk management
issues.
Methods of Instruction
The course will be primarily lecture-based, with extensive lecture notes made
available by the instructor on the course web site. Questions are encouraged.
Attendance will be taken during each class meeting.
The web-based component is managed through a course companion web site in CourseInfo
that includes
- lecture notes,
- references, library and other institutional resources, links to Internet resources;
- homework assignments and solutions;
- on-line homework submission;
- grade management: remote private access to grading information for the student, spreadsheets and grade statistic functions for the instructor;
- a wealth of communication types: chat (individual or groups), threaded discussion, e-mail (individual or groups), bulleting board;
Evaluation and Grading
Testing Exercise:
There will be a small block of code for which to plan, design, document, and
execute tests.
Examinations:
There will be small midterm and final examinations, on assigned readings. It
is expected that these will take no more than an hour and a half each.
Grading:
The grading criteria as follows:
Two exams, 12.5% each, total 25%.
Testing Exercise, 15%.
Research Project, 40%.
Classroom discussion showing preparation and absorption of the material, clarity
of thought and succinctness of explanation.
Academic Honesty
The course is governed by the Academic Conduct
Committee policies regarding plagiarism (any attempt to represent
the work of another person as one's own).
This includes copying (even with modifications) of a program or segment of
code. You can discuss general ideas with other people, but the work you submit
must be your own. Collaboration is not permitted.
Instructor Information
Instructor: Roy Horsey
Telephone: (508) 529-6148
E-mail: royhorsey@mindspring.com
Lab
MET College operates four pc laboratories as a resource for our students and
faculty. The laboratories include 64 PC's running Windows 2000, Linux or UNIX.
Each lab has a LaserJet networked printer, scanner and LCD projector. The computer
labs hours are:
Fall and Spring Semester: Daily: 10:00am to 11:00pm
Summer Term: Mon-Thu: 4:00 to 10:00pm, Fri-Sun: 12:00 to 6:00pm
Labs are closed during all holidays, intersession and spring break.
Please note that lab rooms get reserved for classes during certain hours.
View lab reservation calendar.
All labs have the following software: Adobe Acrobat 5.0, Photoshop 5.0, MS
Office2000 Pro, IE 6.0, WS-FTP, McAfee VirusScan.
Homework
Research Project:
Each student will conduct a research project, as the student's interests dictate,
on a subject related to software testing. The research project material will
be submitted to the instructor, and a portion will be presented to the class.
The high points of the research project will typically be put together into
a presentation of 30 minutes or less. The instructor will exercise supervisory
venue over the selection of topic, and offer assistance in methods of research
and in selection of presentation material.
References
Hetzel, The Complete Guide to Software Testing,
2nd ed. John Wiley & sons,
New York,1988.
Myers, The Art of Software Testing, John Wiley & Sons, New York, 1979.
Schedule
Class
1
James Bach white paper Testing Internet Software at www.veritestcom/testers'networkJ (sign in beforehand, then get password to access the white papers).
Philosophy of testing, adequacy of testing, controlling issues.

