CS 8317 (Spring 2020): Software Reliability and Safety
Prof. Jeff Tian, CS Dept., SMU, Dallas, TX 75275
Phone: (214)768-2861
tian@lyle.smu.edu; lyle.smu.edu/~tian/class/8317.20f
1. General Information
With the pervasive use of and reliance on software
in computing devices, networks, infrastructure, services and systems
in modern society,
ensuring software quality and dependability has become increasingly important.
In this so-called connected world, software is an
important building block, or an integral slice of the "building" itself.
This advanced course will cover two most important aspects of quality
and dependability for such systems in depth: reliability, the ability
of a software to operate without failures, and safety,
the property of the system to be accident-free.
Contrary to some commonly held misconceptions,
safety is related to but not the same as security,
probably due to the interchangeable use of
the two terms in some circumstances.
After covering the fundamentals of software reliability engineering (SRE)
and software safety engineering (SSE),
we will focus on recent development in research and applications
in the subject areas that may have a great practical impact and
that may lead to subsequent innovative research.
CS 8317 will be organized as a research seminar,
with active student participation,
both as participating audience as well as presenters and
discussion leaders of selected topics.
This participatory nature is reflected in all the course elements
and discussions/presentations topics.
2. Course Contents
After a brief introduction to SRE and SSE
and their relationship to software quality and dependability,
we will have in-depth discussions about several important
topics concerning the measurement,
analysis and improvement activities aimed at ensuring
software reliability and safety for many kinds of systems
and application domains.
The major focus will be on three areas:
-
SRE: Software reliability engineering:
reliability concepts in general and their application to the software domain;
models and analysis methods for software reliability
assessment, prediction and improvement;
data definition, collection, treatment, and analysis;
related tools and applications in different industries
and application domains (both traditional domains such as
commercial systems, telecommunications and other infrastructures,
software embedded in mechanical/electrical/etc./hybrid systems,
and some of new/emerging application domains, such as cloud computing,
service computing, open source development and products, ubiquitous systems,
integrated human-machine systems, etc.);
and emerging techniques for reliability improvement and optimization.
-
SSE: Software safety engineering:
safety concepts in natural and man-made systems
and their applications to computer-related and/or
software-intensive systems;
system characterization and application domains;
safety and hazard analysis using fault trees, event trees,
and other analysis techniques;
integration of safety assurance into the software processes,
including some of the new approaches based on system theory;
formal verification for safety;
and general techniques to deal with safety issues.
-
Common analysis techniques
to support SRE and SSE above will also be covered near the beginning of
of our semester:
general quality and dependability framework and related analysis,
including,
defect analysis, risk identification,
defect classification and analysis frameworks such as orthogonal defect
classification (ODC) and related analysis,
as well as general issues
with software measurement and analysis.
Some of these techniques may be applicable beyond SRE and SSE
to other quality/dependability aspects of software and systems.
For each of the above topics,
after introducing the fundamental ideas and basic models and techniques,
we will focus on
recent development,
and particularly relevant research done at SMU, including,
adapting ODC from applicable to commercial software only
to other application domains and for other purposes,
tree-based reliability modeling,
data clustering and censoring techniques,
prescriptive specification checking for hazard prevention,
early estimate and risk management techniques for reliability
and safety improvement,
extension of SRE/SSE ideas to other quality/dependability
aspects such as in usability evaluation and improvement,
and new applications of SRE/SSE to
web-based, cloud computing, and service-oriented systems.
3. Textbooks and Class Material
4. Workload and Grading
The course grade each student receives will reflect the weighted
average of homework, a major project, a final quiz, and other assignments:
- Project:
See the online project information for more details.
- Homework:
See the online homework assignments.
- Student presentation:
See the online student presentation information
for more details.
- Final Quiz:
There will be a comprehensive final quiz to cover
the breadth of the students' knowledge
in SRE and SSE
(as the students' depth of knowledge is demonstrated in their projects already).
The approximate weight assignment is as follows:
-
Project (proposal, report, and presentation): 40%
-
Final quiz: 25%
-
Homework: 15%
-
Presentation/participation: 20%
No late assignments will be accepted nor graded
unless prior approval was granted by the instructor
or a valid (acceptable to the instructor) reason is
given in case of an emergency.
Notice
(Relevant SMU policies):
-
Disability Accommodations:
Students needing academic accommodations for a disability must first
register with Disability Accommodations & Success Strategies (DASS).
Students can call 214-768-1470 or visit
http://www.smu.edu/Provost/SASP/DASS to begin the process.
Once approved and registered, students will submit a DASS
Accommodation Letter to faculty through the electronic portal
DASS Link and then communicate directly with each instructor
to make appropriate arrangements.
Please note that accommodations are not retroactive and require
advance notice to implement.
-
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.
(https://www.smu.edu/StudentAffairs/Chaplain/ReligiousHolidays).
-
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.
(See 2020-2021 SMU Undergraduate Catalog, under
"Enrollment and Academic Records/Excused Absences.")
Prepared by Jeff Tian
(tian@lyle.smu.edu).
Initially posted: Aug. 24, 2020.
Last update: Aug. 24, 2020.