SE320 Software Verification and Validation
SE320 Software Verification and Validation
Course Trivia
- Instructor: Spiros Mancoridis, Professor
- E-mail: spiros AT drexel . edu
- WWW:
http://www.cs.drexel.edu/~spiros
- Lecture: University Crossings 153, T,Th 12:30pm-1:50pm
- Office: University Crossings 139
- Phone: x6824
- Office Hours: T,Th 11:00am-12:30am University Crossings 139
- Reading: Software Testing 2nd edition, by Ron Patton,
Sams Publishing, 2006 (ISBN 0-672-32798-8). Lecture notes provided by the
instructor.
- Pre-requisite: CS260 Data Structures
Introduction
Software Testing is a critical element of software quality
assurance and represents the ultimate review of a system's source
code with the intent of discovering bugs.
Presents theory and practice of software testing. Covers structural testing
including such topics as syntax testing, mutation testing, tools for software
testing, testing specifications, black-box and white-box testing, code
inspections, metrics, usability testing, testing documentation, website
testing, security testing, beta testing, quality assurance, and software
safety.
Course Objectives
- Understand the concepts and theory related to software testing.
- Understand different testing techniques used in designing test plans,
developing test suites, and evaluating test suite coverage
- Understand the relationship between black-box and white-box testing
and know how to apply as appropriate.
- Learn to use automated testing tools in order to measure code coverage.
- Understand how software developers can integrate a testing framework into
code development in order to incrementally develop and test code.
Intended Audience
This course is intended for undergraduate students in Software Engineering
and Computer Science. Before taking this course, students should take CS260
Data Structures.
Students seeking to brush up on their Java skills are encouraged to
consult the following resources:
Course Grading Scheme
- Mid-term Exam (25%)
- Final Exam (25%)
- 3 Assignments (50%)
- Assignment 1 (10%)
- Assignment 2 (20%)
- Assignment 2 (20%)
Grading Scale
Letter grades (A+/-, B+/-, C+/-, D, F) will be assigned to the
the assignments and examinations.
Grading is competitive. Typically, the top 35% of the class will get a grade
in the [A-, A+] range. Most students will get a grade in the
[B+, B-] range. Students who perform poorly will receive a grade
in the [C+, F] range.
Grading Rules
- All grades are final.
- There will be no extra credit assignments.
- No extensions will be given. All late work will receive a 0 grade
(unless a serious medical condition prevents the student from completing
the work on time).
Assignments
-
Assignment 1
-
Assignment 2
-
Assignment 3
Examinations
Students should prepare for the examinations by studying all of the
lecture notes covered prior to the examinations. The midterm examination
will cover material from Week 1 until (and including) Week 5. The
final examination will cover material from Week 6 until (and including)
Week 11. The examinations will be a combination of short answer, essay, and
problem solving questions. The examinations are in class and closed book/notes.
Course Schedule
- Week 1 (Sept. 22, 24):
- Week 2 (Sept. 29, Oct. 1)
- Week 3 (Oct. 6, 8):
- Week 4 (Oct. 13, 15)
- Week 5 (Oct. 20, 22):
- Oct. 20: White-box Testing Part 1 (Cont'd)
- Oct. 20: Due Assignment 1
- Oct. 22: Midterm Examination (in class)
- Week 6 (Oct. 27, 29)
- Week 7 (Nov. 3, 5):
- Week 8 (Nov. 10, 12):
- Week 9 (Nov. 17, 19):
- Week 10 (Nov. 24, 26):
- Week 11 (Dec. 1, 3):
- Dec. 1: Testing for Security (Cont'd)
- Dec. 1: Due Assignment 3
- Dec. 3: In class project.
- Week 12 (final examination week):
- Dec. 8 (8AM-10AM) Final Examination
in Matheson 305
Academic Honesty
The university's Academic Honesty policy is in effect for this course.
Please read the "Academic Honesty" section in Chapter 11 of the Drexel University
online student handbook.