CSE 7314/5314 (Fall 2009) Syllabus
Software Testing and Quality Assurance
Prof. Jeff Tian, CSE Dept., SMU, Dallas, TX 75275
Phone: (214)768-2861; Fax: (214)768-3085
E-mail: tian@lyle.smu.edu; Webpage: www.lyle.smu.edu/~tian/class/7314.09f
General Description
Quality assurance (QA) includes testing as well as many other
activities and related techniques aimed at
assuring that appropriate functionality has been
implemented correctly and efficiently in the software system
or product to satisfy the requirements and needs of
its target customers and users.
We will devote substantial amount of time to various topics related to testing,
with a focus on testing techniques, including:
- black-box or functional testing,
with a focus on covering (or thoroughly testing) external functions
expected of a software product;
- clear-box or structural testing;
with a focus on covering (or thoroughly testing) implemented
internal components and structures;
- usage-based statistical testing,
with a focus on adequately testing operations commonly used by target
customers and users to ensure product reliability after product delivery.
These testing techniques are organized by their underlying models,
including 1) lists, partitions and equivalent classes,
and 2) finite-state machines and related derivatives.
These models will help us perform testing to achieve functional
or structural coverage or to mimic realistic usage scenarios.
Specific testing techniques to be covered include:
checklists, partition testing, input domain boundary testing,
finite state machine testing,
control flow testing,
data dependency analysis and data flow testing,
basic operational profiles and Markov chains for usage-based statistical
testing,
fault injection and mutation testing.
Test activities, management, automation, and related issues,
such as testing sub-phases,
team organization, testing process, people's roles and responsibilities,
test automation tools, specialized testing techniques,
test integration, etc., will also be discussed.
The rest of the class time will be devoted to the following topics:
-
General concepts about quality,
quality assurance (QA),
and software quality engineering (SQE).
-
Other QA alternatives beyond testing,
including, defect prevention and process improvement,
inspection, formal verification,
and fault tolerance and safety assurance.
A good understanding of each alternative's relative strength
and weakness will help us construct and carry out
a comprehensive QA strategy that more often than not will
integrate several such alternatives.
-
Quality assessment and improvement, including,
measurement and feedback mechanisms,
quality models, defect analysis, risk identification,
and software reliability engineering.
Workload and Grading
The course grade each student receives will reflect the weighted
average of exams, homework assignments, and course project.
The approximate weight assignment is as follows:
Homework
Midterm Exam
Final Exam
Project
|
15%
25%
25%
35%
|
The primary difference for graduate students (enrolled in 7314) and
undergraduate students (enrolled in 5314) is in the project,
as explained in the project assignment information.
Textbook and Other Information
-
Jeff Tian,
"Software Quality Engineering:
Testing, Quality Assurance, and Quantifiable Improvement"
John Wiley and Sons, Inc., and IEEE Computer Society Press, 2005.
ISBN: 0-471-71345-7
Available at SMU bookstore,
official Wiley website for the book,
or your favorite local/online booksellers.
-
List of topics and tentative schedule.
-
Other references, reading material,
and selected class material will be listed or posted online.
-
Notice 1:
If you need to make alternative arrangements for turning-in
material or taking exams,
you must contact the instructor ahead of time,
unless it is truly an emergency.
(Otherwise you'll receive 0 for the specific item.)
-
Notice 2
(Relevant SMU policies):
* Disability Accommodations:
Students needing academic accommodations for
a disability must first contact Ms. Rebecca Marin, Coordinator,
Services for Students with Disabilities (214-768-4557)
to verify the disability and establish eligibility for accommodations.
They should then schedule an appointment with the professor
to make appropriate arrangements. (See University Policy No. 2.4.)
* Religious Observance: Religiously observant students wishing to be
absent on holidays that require missing class should notify
their professors in writing at the beginning of the semester,
and should discuss with them, in advance, acceptable ways of
making up any work missed because of the absence.
(See University Policy No. 1.9.)
* Excused Absences for University Extracurricular Activities:
Students participating in an officially sanctioned,
scheduled University extracurricular activity should be given
the opportunity to make up class assignments or other graded
assignments missed as a result of their participation.
It is the responsibility of the student to make arrangements
with the instructor prior to any missed scheduled examination
or other missed assignment for making up the work.
(University Undergraduate Catalog)
Prepared by Jeff Tian
(tian@lyle.smu.edu).
Posted: Aug. 25, 2009.