Syllabus

Instructor

Lectures

Office hours

Charles Wallace
205 Rekhi Hall
(906) 487-3431
wallace@mtu.edu
Tuesday, Thursday, 9:30-11:00 AM
Rekhi 214
Monday, Thursday, 11:00 AM-12:00 PM

Web site

Prerequisites

http://www.csl.mtu.edu/cs4712/www/Home.html CS 3141 (Team Software Project)

Course description

Building on previous exposure to the fundamentals of the software process, this course focuses on techniques for ensuring software quality. Here, quality assurance is viewed as a holistic activity that runs through the entire development process: understanding the needs of clients and users; analyzing and documenting requirements; verifying and validating solutions through testing.

There are four major topics:

Textbooks

P. Ammann and J. Offutt. Introduction to Software Testing. Cambridge University Press, 2008. ISBN 978-0-521-88038-1

D. Galin. Software Quality Assurance. Addison Wesley, 2004. ISBN 978-0-201-70945-2

Other sources

R.E. Fairley and M.J. Wilshire. Why the Vasa sank: 10 Problems and some antidotes for software projects. IEEE Software 20(2), 2003, 18-25.

J.A. Hughes, D. Randall, and D. Shapiro. Faltering from Ethnography to Design. Proc. CSCW, 1992, 115-122.

M. Jackson and P. Zave. Deriving Specifications from Requirements: An Example. Proc. ICSE, 1995, 15-24.

Nielsen Norman Group. Paper prototyping: A how-to-video. 2003.

Case studies in software communication. Available at http://www.speaksoft.mtu.edu

PFEdit: A graphical editor for Problem Frame diagrams. Available at http://www.speaksoft.mtu.edu

Course requirements and grading

Since this is an upper-level undergraduate course, a high degree of student participation in lectures is expected. It is essential that you read the assigned material before lecture and be prepared to participate in the class discussion. By now you should have a certain amount of experience designing software, through coursework or extracurricular activities like co-ops. You should bring this experience to bear in reading and evaluating the material: how do the techniques we discuss apply (if at all) to your efforts in the "real world"?

The coursework consists of the following:

All written assignments done outside of class must be typed.

No late assignments will be accepted, and no extra credit will be awarded. So it is important to concentrate on getting the regularly assigned work done, on time.