CSE 7314/5314 (Fall 2013) 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.13f
General Description
Software quality assurance (SQA or simply QA)
includes testing and many other
activities and related techniques aimed at
assuring that appropriate functionality has been
implemented correctly and efficiently in the software system,
product, or service to satisfy the requirements and needs of
its target customers and users.
We will devote slightly more than half of the class
time to various topics related to software testing,
with an emphasis on formal/systematic testing techniques, including:
- black-box or functional testing,
with a focus on covering (or thoroughly testing) external functions
required by target customers and users;
- clear/white-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) "flat" structures such as lists,
partitions and equivalent classes,
and 2) finite-state machines.
These models will help us prepare, perform,
and perfect (manage/improve) testing to achieve functional
or structural coverage or to mimic realistic usage scenarios
in a systematic way.
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 for specific purposes
and/or applicable to different application domains,
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
include and integrate several such alternatives.
-
Quality assessment and improvement, including,
measurement and feedback mechanisms,
quality models and measurements, defect analysis, risk identification,
and software reliability engineering.
These activities will help us monitor, assess, improve
the overall SQE process to achieve our quality goals
effectively and efficiently.
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 be registered with Disability Accommodations
& Success Strategies (DASS) to verify the disability and
to establish eligibility for accommodations.
Students may call 214-768-1470 or visit
http://www.smu.edu/alec/dass.asp to begin the process.
Once registered, students should then schedule an appointment
with the professor to make appropriate arrangements.
* 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 Catalogue)
Prepared by Jeff Tian
(tian@lyle.smu.edu).
Posted: Aug. 26, 2013. Last update: Aug. 26, 2013.