Rabb School DL Standards, Syllabus Template Brandeis University

advertisement
Rabb School DL Standards, Syllabus Template
Brandeis University
Division of Graduate Professional Studies
Rabb School of Continuing Studies
Course Syllabus
I. Course Information
1. Course Name: Foundations of Software Quality Assurance
2. Course Number: 162RSEG-125-1DL
3. Course Start & End Dates:
May 25, 2015 -- August 22, 2016
Distance Learning Course Week: Wednesday through Tuesday
4. Instructor’s Name and Contact Information





Name: Yongge Wang
Title: Associate Professor
Email: yonwang@brandeis.edu
Phone:
Office Hours/Availability: available through email M-F
5. Document Overview
This syllabus contains all relevant information about the course: its objectives and outcomes, the
grading criteria, the texts and other materials of instruction, and of weekly topics, outcomes,
assignments, and due dates.
Consider this your roadmap for the course. Please read through the syllabus carefully and feel free to
share any questions that you may have. Please print a copy of this syllabus for reference.
6. Course Description

Catalog Description and Course Outcomes
This course covers a broad range of topics related to software quality assurance (SQA). The course
explores the combined application of a variety of SQA components, including: SQA activities typically
performed by external participants; extension of SQA activities to project schedules and budget
control; SQA implementation issues, SQA risk management considerations; and costs associated with
SQA.
At the end of the course, students will be able to:
Foster the development, adoption and sustained use of standards of excellence for software
engineering practices, communicating the need for comprehensive SQA requirements to senior
management.
Define and employ SQA processes and techniques to ensure that reliable software is delivered to end
users.
Supporting outcomes:
1
Examine the environments for which SQA methods are developed.
Determine SQA objectives.
Illustrate the need for comprehensive SQA requirements.
Outline the considerations guiding construction of an organization's SQA system.
Determine software quality factors.
Explain SQA standards and assessment components.
Illustrate the contract review process and its stages.
Develop quality plans and quality plan objectives.
Describe verification, validation, and qualification.
Determine design review procedures.
Analyze software testing strategies.
Illustrate software testing implementation processes.
Examine SQA tools for assuring the quality of external participant's contributions.
Define corrective and preventative actions.

Additional Description
Testing techniques go as far back as software development itself, and as we will learn from Google,
testing might be inseparable from software development. In this course we will cover the following
topics: Importance of quality software systems, Process, roles, and management aspects of QA,
Software life cycle and quality assurance process, ST&QA plans, problem analysis and reporting
systems, Validation and verification, Team Review techniques (e.g., Fagan inspection), Unit testing
with JUnit, CUnit or CppUnit, Black-box testing, White-box testing, QA cost analysis and risk
assessment, Industry standards (TQM, 6-Sigma, ISO etc), Maintenance testing technologies and tools ,
Release management, and alpha/beta testing

I have tried to make the procedures that we will use clear to everyone through this syllabus and
through the materials posted in LATTE. Please familiarize yourself with these materials and feel free
to ask me any questions that you may have. I will work with you all to help you learn and apply these
new skills, and I encourage you to ask questions when you are unsure and answer questions when
you have the responses; in explaining how to approach problems, we learn more ourselves. We can
all learn from each other, and I hope that we’ll have open and enriching discussions as we move
forward!
Prerequisites: None
7. Materials of Instruction
a. Required Texts
Software Testing and Analysis: Process, Principles and Techniques
by: Mauro Pezzand and Michal Young, John Wiley & Sons 2008 (510 pages),ISBN:9780471455936
b. Required Software

For some class project, we will give links for downloading the required software
c. Recommended Text(s) / Journals

None
d. Online Course Content
2

This section of the course will be conducted completely online using Brandeis’ LATTE site,
available at http://latte.brandeis.edu/. The site contains the course syllabus,
assignments, discussion forums, links/resources to course-related professional
organizations and sites, and weekly checklists, objectives, outcomes, topic notes, selftests, and discussion questions. Access information is emailed to enrolled students
before the start of the course. To begin participating in the course, review the Week 1
Checklist found in the Week 1 block.
8. Overall Course Objectives
The course is intended to provide students with an understanding of:
3
o
Appreciate the importance of producing quality software systems
o
Understand the process, roles, and management aspects of software testing, quality
assurance, and maintenance
o
Understand the relationship between the software life cycle and the quality assurance
process
o
Develop software testing and quality assurance plans, design problem analysis and reporting
systems, and carry out risk analysis
o
Understand the main differences between software validation and verification, and software
quality assurance versus software quality control.
o
Perform document/specification/code reviews with well organized team and techniques
(e.g., Fagan inspection)
o
Carry out unit testing with JUnit, CUnit or CppUnit
o
Carry out Black-box testing (students may use software testing tools such as Holodeck,
combinatorial test case generation tools, etc.)
o
Carry out white-box testing. The student should be able to carry out static and dynamic
analysis of software, and carry out coverage analysis using control flow, data flow, and other
approaches (e.g., cyclomatic complexity), this will normally require students to design
efficient test case suites with appropriate stopping criteria.
o
Evaluate the cost of quality assurance
o
Make use of industry standards such as TQM, Six Sigma, and ISO
o
Learn about maintenance testing technologies and tools
o
Know how to build up releases, and carry out alpha/beta testing
o
Know how to perform final release and package and maintain the software after final release
9. Course Grading Criteria

4
Description of work expectations for assignments
 Initial testing assignment
 White Box testing
 Black box testing
 Junit testing
 Discussion Participation requirements;
Given the lack of the traditional classroom environment, all student participation will be
done online via LATTE. Each weekly has a page that includes "Discussion Topics". These are
a series of questions or points to consider regarding the course materials posted that week.
To earn full credit for the Participation component of the grade, participants will be
expected to complete the following during weeks 1 through 10 of the course:
Respond to (at least) two Discussion Topics each week; respond to one topic by end of
day Saturday (midnight EST) and one by end of day Monday (midnight EST). These
responses should be substantive in length and include your own insights into the topics. Any
relevant sources used within the post should be cited appropriately.
Post (at least) two other substantive messages to the Discussions by end of day Tuesday
(midnight EST) each week. These other posts may be responses to the discussion topic
messages of others, they may be questions or comments about the topics covered during
the week, or they may be responses to the posts of other groups. The assumption is that
you will read through the posts of your classmates to enhance your learning; respond to
those of your choice, based upon your own experiences and insights.
Please make sure to post on at least 3 different days of each course week (Wednesday
through Tuesday).
Discussion Evaluation Criteria: A maximum of 10 points can be earned for discussion
participation each week. Substantive on-time responses to the original discussion questions
and substantive follow-up posts earn 2.5 points each. Additional discussion participation
beyond the required 4 posts is also encouraged.
While all the discussion and assignment due dates in the syllabus and in Latte are stated
to be midnight EST, students in time zones other than EST can submit their work by midnight
in the time zone they reside in.

Percentages earned per assignment; for example:
Percent
Component
30 %
Discussions/On-line participation:

5
Each week respond to at least 2 Discussion Questions, 1 by
Saturday and 1 by Monday and post at least 2 other
substantive messages by Tuesday. Post on at least 3 different
days of each course week (Wednesday through Tuesday).
10%
Initial testing assignment
20%
20%
20%
White Box testing
Black Box testing
Junit testing
II. Weekly Information
Week 1
May 25-31, 2016
Objectives
Overview of testing techniques
Outcomes
At the end of week 1, students will be able to define and employ SQA processes
and techniques to ensure that reliable software is delivered to end users, and
have an understanding of:
Discussions (for DL)
Readings

QA through a continuous improvement process certification,
and quality process standards

Software bugs and the consequences

contract review process and its stages, verification and validation

Undecidability issues related to software testing
two discussion questions

Assignments /
Assessments/
Self-Assessments
Week 2
No
June 1-June 7, 2016
Objectives
Test and Analysis Activities Within a Software Process
Outcomes
At the end of week 2, students will be able to foster the development, adoption
and sustained use of standards of excellence for software engineering practices.
In particular, students will have an understanding of the following standards:
Discussions (for DL)
Readings
Assignments /
Assessments/
Self-Assessments
Week 3

Customers’ viewpoint of QA

ISO9000

CMM/PCMM/CMMI/6Sigma
two discussion questions

Chapters 3 and 4
Simple web app test assignment
June 8-June 14, 2016
Objectives
Software Inspection and Analysis
Outcomes
At the end of week 3, students will be able to develop quality plans and quality
plan objectives, examine the environments for which SQA methods are
developed, and have an understanding of:

6
Chapters 1 and 2 of textbooks
Software inspection and analysis, Fagan review methods

Discussions (for DL)
Readings
Assignments /
Assessments/
Self-Assessments
Week 4
Two discussion questions
Chapters 18 and 19 of textbook
No
June 15-June 21, 2016
Objectives
JUnit testing and cyclomatic complexity
Outcomes
At the end of week 4, students will be able to examine SQA tools for assuring
the quality of external participant's contributions, and have an understanding of
and be able to carry out:
Discussions (for DL)
Readings
Assignments /
Assessments/
Self-Assessments
Week 5

White-box testing

JUnit/CUnit/CppUnit frameworks
Two discussion questions
Cyclomatic complexity website, Junit testing lecture notes
Junit testing assignment (due at the end of week 5)
June 22-June 28, 2016
Objectives
Unit testing
Outcomes
At the end of week 5, students will have an understanding of:
Discussions (for DL)
Readings
Assignments /
Assessments/
Self-Assessments
Week 6

Unit testing

test case design and coverage analysis (e.g., control flow, data flow,
and complexity based approaches)

Test case design for unit testing
Two discussion questions
Chapters 9, 12,13 of the textbook
Junit testing assignment due
June 29-July 5, 2016
Objectives
Black-box testing
Outcomes
At the end of week 6, students will have an understanding of:

7
IEEE 829 Standard for Software Test Documentation methodologies
and frameworks
Functional Testing and Black Box Testing
Discussions (for DL)
Readings
Assignments /
Assessments/
Self-Assessments
Week 7
Fault model for black-box testing

software environments and capabilities

software security testing

software testing tools such as Holodeck

fault-based testing
Two discussion questions
Chapters 10 and 16
Black box testing assignment (due in week 7)
July 6-July 12, 2012
Objectives
Combinatorial testing and pair-wise testing
Outcomes
At the end of week 7, students will have an understanding of:
Discussions (for DL)
Readings
Assignments /
Assessments/
Self-Assessments
Week 8

combinatorial testing

pair-wise testing

category based testing
Two discussion questions
Chapter 11
Black-box testing project due
July 13-July July 19, 2016
Objectives
Web application testing
Outcomes
At the end of week 8, students will have an understanding of:
Discussions (for DL)
Readings
Assignments /
Assessments/
Self-Assessments
8


web functionality, usability, accessibility, printability, and security
testing

web unit testing based on htmlUnit and urlUnit frameworks

web application security testing.
Two discussion questions
Lecture notes and slides
White box testing project (due in week 10)
Week 9
July 20-July 26, 2016
Objectives
Project management and risk assessment
Outcomes
At the end of week 9, students will have an understanding of:
Discussions (for DL)
Readings
Assignments /
Assessments/
Self-Assessments
Week 10

basic project management principles

contrast general project management and test management

steps for integrating the testing activities into the development
methodology
Two discussion questions
Chapters 20, 21, 22
White box testing project (due in week 10)
July 27-August 2, 2016
Objectives
OO testing
Outcomes
At the end of week 10, students will have an understanding of:
 object-oriented testing techniques
 formulation of a systematic approach to testing object-oriented
software, considering both process and technical issues
Two discussion questions
Discussions (for DL)
Readings
Assignments /
Assessments/
Self-Assessments
Chapter 15
White box testing project (due this week)
III. Course Policies and Procedures
1.
Orientation
From the Home Page of the course site, participants are expected to read
all of the Orientation Materials available. These are located within the
GPS Resources block.
Asynchronous Work
All required work for the course may be done asynchronously; i.e.,
participants can login to the course, read/download materials, post to the
Discussions, and submit assignments throughout the course week. Please
carefully follow syllabus and the weekly checklists to help manage your
time throughout the course week; once we enter week 2, participants
typically become much more comfortable with the pace and flow of the
course.
9
At one or more points throughout the semester, I will make myself available
for synchronous Chat sessions using the course site’s Chat Room. These
sessions will be open Q&A, and they are optional. I will post a log of each
chat session so that those participants who did not participate can view the
recorded synchronous discussions.
Late Policies
Participants are encouraged to respond to all posts and to complete all
assignments by the due dates provided. This will help ensure that all stay in
synch with the pace of the course and realize the anticipated outcomes of
the course. For discussion questions and participation, late submissions will
not be accepted. Students who fail in submitting their individual projects by
the specified deadlines will receive a reduced mark, on the basis of a 33%
reduction for every day after the deadline (regardless of whether it is a
working day or not). Projects submitted three days after the deadline will
not be graded and the students will receive a 0 mark. If you find that you
cannot complete the assignments or posts for a given week, please contact
me in sufficient advance and an extension of the deadline for individual
projects may be granted based on the justification.
Work Expectations
Students are responsible to explore each week's materials and submit
required work by their due dates. On average, a student can expect to
spend approximately 10 - 14 hours per week reading, participating in
discussions and completing assignments. The Assignment Tool/Dropbox
within LATTE will be used for assignment distributions and submissions.
Grading and Feedback
Grades are not given but are earned. Students are graded on demonstration of
knowledge or competence, rather than on effort alone. Each student is
expected to maintain high standards of honesty and ethical behavior.

10
How points and percentages equate to grades
100-94 A
76-73 C
93-90 A72-70 C89-87 B+
69-67 D+
86-83 B
66-63 D
82-80 B62-60 D79-77 C+
59 or < F
Confidentiality
We can draw on the wealth of examples from our organizations in class discussions
and in our written work. However, it is imperative that we not share information that
is confidential, privileged, or proprietary in nature. We must be mindful of any
contracts we have agreed to with our companies. In addition, we should be respect
our fellow classmates and work under the assumption that what is discussed here (as
it pertains to working of a particular organizations) stays within the confines of the
classroom.
For your awareness, members of the University's technical staff have access to all
course sites to aid in course setup and technical troubleshooting. Program Chairs
and a small number of Graduate Professional Studies (GPS) staff have access to all
GPS courses for oversight purposes. Students enrolled in GPS courses can expect
that individuals other than their fellow classmates and the course instructor(s) may
visit their course for various purposes. Their intentions are to aid in technical
troubleshooting and to ensure that quality course delivery standards are met. Strict
confidentiality of student information is maintained.
IV. University and Division of Graduate Professional Studies Standards
Please review the policies and procedures of Graduate Professional Studies, found at
http://www.brandeis.edu/gps/students/studentresources/policiesprocedures/index.html. We would like to
highlight the following.
Learning Disabilities
If you are a student with a documented disability on record at Brandeis University and wish to have a
reasonable accommodation made for you in this course, please contact me immediately.
Academic Honesty and Student Integrity
Academic honesty and student integrity are of fundamental importance at Brandeis University and we want
students to understand this clearly at the start of the term. As stated in the Brandeis Rights and
Responsibilities handbook, “Every member of the University Community is expected to maintain the highest
standards of academic honesty. A student shall not receive credit for work that is not the product of the
student’s own effort. A student's name on any written exercise constitutes a statement that the work is the
result of the student's own thought and study, stated in the students own words, and produced without the
assistance of others, except in quotes, footnotes or references with appropriate acknowledgement of the
source." In particular, students must be aware that material (including ideas, phrases, sentences, etc.) taken
from the Internet and other sources MUST be appropriately cited if quoted, and footnoted in any written work
turned in for this, or any, Brandeis class. Also, students will not be allowed to collaborate on work except by
the specific permission of the instructor. Failure to cite resources properly may result in a referral being made
11
to the Office of Student Development and Judicial Education. The outcome of this action may involve
academic and disciplinary sanctions, which could include (but are not limited to) such penalties as receiving no
credit for the assignment in question, receiving no credit for the related course, or suspension or dismissal
from the University.
Further information regarding academic integrity may be found in the following publications: "In Pursuit of
Excellence - A Guide to Academic Integrity for the Brandeis Community", "(Students') Rights and
Responsibilities Handbook", AND " Graduate Professional Studies Student Handbook". You should read these
publications, which all can be accessed from the Graduate Professional Studies Web site. A student that is in
doubt about standards of academic honesty (regarding plagiarism, multiple submissions of written work,
unacknowledged or unauthorized collaborative effort, false citation or false data) should consult either the
course instructor or other staff of the Rabb School Graduate Professional Studies.
University Caveat
The above schedule, content, and procedures in this course are subject to change in the event of extenuating
circumstances.
12
Download