CS 7314 (Spring 2020) Syllabus

Software Testing and Quality Assurance


Prof. Jeff Tian, CS Dept., SMU, Dallas, TX 75275
Phone: (214)768-2861
E-mail: tian@smu.edu
Webpage: lyle.smu.edu/~tian/class/7314.20s

General Description

Software quality assurance (SQA or simply QA) includes testing and various other activities aimed at ensuring that appropriate functionalities have been implemented correctly and efficiently in the software systems or software-related products or services to satisfy the requirements, needs and wants, and expectations of its target customers and users. We will devote slightly more than half of the class time to topics related to software testing, with an emphasis on formal/systematic testing techniques and their applications, including: 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 and related variations. 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 to ensure overall product/system reliability.

Specific testing techniques to be covered include: checklists, equivalent class/partition testing, input domain boundary testing, finite state machine testing, control flow testing, data dependency analysis and data flow testing, basic operational profiles (or Musa OP) and Markov chains (or Markov OP) for usage-based statistical testing, fault injection and mutation testing, as well as specialized testing techniques for specific purposes and/or applicable to different application domains, such as Web testing, Cloud testing, usability testing, etc.

Test activities, management, automation, and related issues, such as team organization, testing process, people's roles and responsibilities, test automation tools, test integration, etc., will be briefly discussed. Applicability and effectiveness of specific testing techniques in different sub-phases and for different purposes will also be briefly discussed.

The rest of the class time, beyond various testing-related topics mentioned above, will be devoted to the following topics:

Workload, Grading, and Notices

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 and participation
Midterm Exam
Final Exam
Project

15%
25%
25%
35%

Notices and relevant SMU policies:

Textbook and Other Information


Prepared by Jeff Tian (tian@smu.edu).
Posted: March 18, 2020. Last update: March 18, 2020.

Back to CS 7314 Webpage