Skip to content

Latest commit

 

History

History
145 lines (111 loc) · 6.14 KB

course-info.md

File metadata and controls

145 lines (111 loc) · 6.14 KB

CS 1699

Special Topics in Computer Science: Software Testing

Course Information

Taught by: Bill Laboon (bill@billlaboon.com)
Professor's Office Hours: SENSQ 6148, T 5:00-6:00pm, and after class, or by appointment. I am usually available on Tuesdays, but need advance notice to be on campus. Office hours subject to change based on student feedback.

Class Time: T 6:00-8:45pm.
Room: SENSQ 5129

TA: John Felen TA Office Hours: T/TH 3:50 - 5:50 SENSQ 5712

Class GitHub repo: https://www.github.com/laboon/cs1699
"Textbook" repo: https://www.github.com/laboon/ebook
Required Text: None. Recommended Texts:

Test-Driven Development: By Example, Kent Beck ISBN-13: 978-0321146533

Software Testing: A Craftsman's Approach, Paul Jorgensen, ISBN-13: 978-1466560680

I have both of these texts available for you to borrow.

This course provides students with a broad understanding of modern software testing and quality assurance. Although it will cover testing theory, the emphasis is on providing practical skills in software testing currently used in industry. To that end, it will cover: manual and automated tests, test-driven and behavior-driven development, performance testing, and understanding and developing a testing process.

Grading

  • Mid-term Exam - 15%
  • Final Exam - 15%
  • Group Projects:
    • Deliverable 1 - 10%
    • Deliverable 2 - 15%
    • Deliverable 3 - 15%
    • Deliverable 4 - 10%
    • Final Deliverable - 15%
  • Class Participation - 5%

Although you are not required to come to class (as you can see, it's technically possible to get an A without ever showing up except for turning in papers and tests), it is strongly recommended that you do. I also expect students to take an active part in discussions.

The following grading scale will be used.

Score Grade
100-94 A (A+ for extraordinary work)
93-91 A-
90-88 B+
87-84 B
83-81 B-
80-78 C+
77-74 C
73-71 C-
70-68 D+
67-64 D
63-61 D-
60-0 F

All groups are expected to do their own work on the group project, but are more than welcome to collaborate and ask questions with other groups, the Internet, or other colleagues.

However, any student caught collaborating or cheating on an exam will automatically receive a 0 (zero) for that exam, and may be penalized more harshly based on University of Pittsburgh academic policy.

The final exam will be cumulative.

It is recommended you keep all of your graded assignments until final grades are posted and accepted, in order to resolve any discrepancies in grading.

Attendance

Lecture attendance is not required, but is STRONGLY recommended. The instructor will try to ensure that all information on the exams will be available via slides, but simply reading them may be insufficient to understand the concepts thoroughly. The textbook for this class is still being written.

Presence for the mid-term and final exam are REQUIRED. They will be individually re-scheduled only in the event of an emergency. If you are facing an emergency, please contact the instructor IMMEDIATELY (if it is safe to do so, of course). Failure to show up for an exam without clearing it first with the instructor will result in a 0 (zero) for that exam.

Group Project Details

Students will be grouped into groups of 2. For the first four deliverables, groups will be assigned and will be different each time. For the final deliverable, you can choose to work alone, or choose your own partner (who must, of course, also agree to work with you)

Students will perform the role of QA team on a project which can be selected either by themselves, or assigned by the instructor. Although students can select to work on a different project, it must first be cleared with the instructor. Additionally, it should be noted that the instructor and/or TA may not be able to help as much if you use a different project or language! The group should check with the instructor as to the feasibility of the particular project they are working on.

  • Deliverable 1: A test plan and traceability matrix
  • Deliverable 2: Sufficient unit tests for a large subset of the project's functionality.
  • Deliverable 3: Sufficient automated acceptance tests for a web application.
  • Deliverable 4: Performance testing of an application.
  • Final Deliverable: Will vary based on the group. See the Final Deliverable description for details of what is expected.

Deliverables must be handed in by close of class on the day that it is due. Late deliverables will NOT be accepted.

Programming Language Selection

The instructor is open to groups using any programming language or testing framework. However, it is strongly recommended that it be done in Java. All of the tools discussed will be supported by the professor and TA. If your group decides to use another language, the instructor may not be able to help with problems specific to that language.

If you want to use Java but aren't a fan of Eclipse, information on setting up the Gradle build tool with the required packages for this course can be found here.

Disability Services Statement

"The Office of Disability Resources and Services (DRS) provides a broad range of support services to assist students with disabilities. Services include, but are not limited to, tape-recorded textbooks, sign language interpreters, adaptive and transportation. Contact DRS at 412-648-7890 or 412-383-1355 (TTY) in 216 William Pitt Union or see www.drs.pitt.edu for more computer technology, Braille translation, and nonstandard exam arrangements, DRS can also assist students with accessibility to campus housing information."

Academic Integrity Statement

"As members of the University of Pittsburgh community, A&S students are expected to meet the obligation to exhibit honesty and to respect the ethical standards of the University community and of their chosen field of study in carrying out academic assignments. A&S students are therefore expected to familiarize themselves with the published rules and regulations go to http://www.fcas.pitt.edu/academicintegrity.html