- TEXT:
-
-
• Introduction to Software Testing, Ammann and Offutt, Cambridge University Press, 2008
Book website
-
• Readings from various texts:
Pfleeger, Software Engineering, chapter 11;
Hohpe and Woolf, Patterns and Best Practices for Enterprise Integration, Introduction and chapter 1;
Cohn, Agile Estimating and Planning, chapters 1-3.
- OBJECTIVE:
-
Concepts and techniques for testing and modifying software in evolving environments.
Topics include software testing at the unit, module, subsystem, and system levels;
developer testing;
automatic and manual techniques for generating test data;
testing concurrent and distributed software;
designing and implementing software to increase maintainability and reuse;
evaluating software for change;
and validating software changes.
- CONTENT:
-
This course has two closely related themes.
First, more than half the effort in software development is devoted to
activities related to testing,
including test design, execution and evaluation.
This course will teach quantitative, technical, practical methods
that software engineers and developers can use to test their software,
both during and at the end of development.
Second,
more than half of software development effort is not new development,
but maintenance activities such as
adding new features,
correcting problems,
migrating to new platforms,
and integrating third-party components into new projects.
These two themes are intertwined because much of the effort during
maintenance is testing the changes,
and much of the effort in testing is about
evaluating changes.
This course covers these two themes quantitatively,
with a solid basis in theory
and with practical applications.
These topics will be useful to strong programmers
in the Computer Science program,
as well as engineers,
physical scientists,
and mathematicians
who regularly integrate software components as part of their work.
The topic of this course is of interest to and accessible to
students in a wide variety of specializations.
- READING:
-
We will read from the text, various sources on the web,
and transparencies that will be made available on the web site.
You will undersetand the lectures much better if you read the text
before the lecture.
The schedule for the readings are given on the
schedule web page.
- MAKEUPS:
-
Unless arrangements are worked out in advance,
missed assignments cannot be made up,
and 10% per week will be deducted
for late submissions.
I understand that your job may occasionally take you out of town;
so does mine.
If you are going to be forced to miss class on the day something is due,
let me know ahead of time by email or in writing.
- HOMEWORKS:
-
Several homework assignments will be assigned.
I will
make the assignment available on the class web site
and discuss each in class.
Most homeworks will be submitted on paper in class.
Be sure that you receive email through your gmu.edu account,
as refinements and hints for the assignments will be sent through email.
Homeworks must be submitted before class on the day they are due.
Late submissions will be assessed a 10% penalty per class meeting.
All assignments must be submitted
before final exams start and will not be graded thereafter.
- IN-CLASS COMPUTERS AND COMMUNICATION:
-
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.
- HONOR CODE STATEMENT:
-
As with all GMU courses,
SWE 437 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.
- GRADING POLICIES:
-
- There will be several homework assignments (total 30%).
- There will be two exams during the semester (total 20% apiece).
- There will be a closed book, in-class, comprehensive final exam (30%).