Welcome to Software Testing!

CS 4320 Summer 2003 Home Page
CS 4320 Summer 2003 - Software Testing - 4 Credits 

Instructor: David Yang (Science South 433, dyang@csuhayward.edu)
Time: Tuesdays, Thursdays 10:00AM-11:50AM
Location: Science North 112 

Blackboard -- notes, submitting work and grades: Lecture notes will be posted on Blackboard after each class. You will be submitting your work on Blackboard and will be able to check your grades there. If you have never used Blackboard before, note that you are automatically given an account. To get started, go to the Support Page . You should find the Getting Started page for Students especially helpful. Note that I do sometimes send information to your email address listed on Blackboard. If you should change email addresses, please update it on Blackboard (the FAQ tells you how).

Text: You will be assigned various readings from the Internet.

Goals:

  • to develop an understanding of the concepts and techniques of software testing and quality analysis
  • to further develop habits and methods appropriate to the discipline and to scholarly inquiry in general
  • to further your ability to work with others

Calculation of your grade: 
Individual assignments : 20%.
Group assignments : 30%
The midterm : 20%.
The comprehensive final exam : 30%.

[grading note: Your exams must average (using the relative weights above) out to a C- or better in order to get at least a C- in the course.]

Final grades will be given according to the following scale:

93-100 A, 90-92 A-, 87-89 B+, 83-86 B, 80-82 B-, 77-79 C+, 73-76 C, 70-72 C-,67-69 D+, 60-66 D, 0-59 F 

Attendance:
Remember that standard policy dictates that students who do not attend can be removed in favor of students on the waiting list who do show up. Also, not being prepared for an exam is not an excuse to not show up -- if you do not have a verified excuse, you will be given a zero for the exam. If you find out in advance that you will not be able to be present on the day of the exam, you should (as in all your courses) let me know as soon as possible.

Academic Honesty: This course will follow the University's standard policy on academic dishonesty. In particular, note that regardless of whether you copy work from another student or allow another student to copy your work on an exam, you are both equally guilty and equally penalized. Copying text/files off the internet without properly giving credit is also cheating. Any cheating on an exam results in an F for the course. Cheating twice also results in an automatic F. All instances of cheating will be reported to the Dean's office.

Remember that the University may inflict further penalties than listed here under the provisions of the published Academic Dishonesty Policy. 

Office Hours: My office is in room 433 of the South Science Building. My schedule for office hours this semester is: 

  • Tuesday, Thursday 1:30 PM - 3:30 PM


I will also be available at other times by appointment, and you should feel free to drop by unannounced -- I'll let you know if I'm busy. 

Tentative Schedule All days in red are mandatory. Days in green are holidays

    Week  Tuesday  Thursday 
    Week 1 06/24/2003 
    Intro to Unit Testing
    Statement coverage, Branch coverage, Condition coverage, Basis Path testing

    Reading:
    Bullseye's tutorial on code coverage
    NIST's notes on Basis Path testing

    Notes:
    Code coverage notes

    06/26/2003 
    Structured testing: the software process, including the waterfall and spiral models, why software projects fail, life-cycle testing

    Reading:
    The Software Engineering Institute at Carnegie-Mellon Univ. (intro)
    Summary of the Capability Maturity Model for software
    Standish Group's top 6 reasons for software project failure

    Notes:
    Software process, life cycle testing

    Groups
    Setting up your Blackboard account (by Thursday): forward email address if necessary.
    Using the digital drop box: submit a list of

    • CS courses taken (title, not number)
    • programming languages you feel comfortable with
    via the digital drop box

    Week 2 7/1/2003 
    Testing requirements, test planning

    Reading: SEI article on test plans
    Adapted version of IEEE Standard 829 (Applied Computer Technology) (IEEE standards homepage requires subscription)

    Homework: Individual assignment #1 (due July 8 by 10am (strict) via digital drop box
    testTree.exe (Windows executable for first question)

    Choose groups

    7/3/2003 
    Debuggers, configuration management(SCCS), makefiles + group meeting

    Reading: Software Requirements Specification for your group (check on Blackboard discussion board for your group)

    Week 3 7/8/2003 
    Equivalence partitioning, Blackbox tests -- nongraphical

    Reading:
    JUnit homepage

    End of Add/Drop period

    7/10/2003 
    Scripts -- JUnit

    Reading:

    Week 4 7/15/2003 
    Scripts -- TCL

    Reading:

    7/17/2003 
    Blackbox tests -- GUI's, usability

    Reading: 1st part of 2-part article from Unix Insider by Cameron Laird and Kathryn Soraiz (stored on the ITWordl.com site)
    Part 2

    Week 5 7/22/2003 
    Freestyle testing

    Reading:
    Web site for Whittaker's enjoyable How to Break Software (ISBN 0-201-79619-8). Click on the link for How to Break Software and read the Preface, the Sample Attacks, and the FAQ. The best parts of the book, in my opinion, are the examples of errors found in actual software, but you'll have to buy/borrow the book for those. We'll go through some more examples in class.

    7/24/2003 
    Midterm
    Week 6 7/29/2003 
    Integration testing, System and Acceptance Testing

    Reading:

    7/31/2003 
    Inspections, walk-throughs + group meeting
    Week 7 8/5/2003 
    Testing with special requirements: nondeterministic results, real-time requirements

    Reading:

    8/7/2003 
    Introduction to metrics, reporting results

    Reading: Graphs related to Challenger O-rings

    Last day to withdraw without approval is Monday, Aug. 11

    Week 8 8/12/2003 
    Maintenance testing

    Reading:

    8/14/2003 
    Proving correctness

    Reading:

    Week 9 8/19/2003 
    Benchmarks -- introduction

    Reading:

    8/21/2003 
    Benchmarks -- transaction processing

    Reading:
    TPC home page

    Week 10 8/26/2003 
    The cathedral vs. the bazaar
    8/28/2003 
    Review
    Week 11 09/02/2003 
    Final exam, 10 AM-11:50 AM
     

     
    This webpage's layout is originally from Bill Parkinson, who used to teach in the evening program at St. Joseph's University.