->Homepage
->Schedule
->Courses
-->CS182
-->CS183
-->CS285
-->Tentative Schedule
-->Objectives
-->Homework
-->Quiz 1
-->Lab 1
-->Lab 2
-->Lab 3
-->Lab 4
-->Lab 5
-->Lab 6
->STL Help
->Book Errata
->Course Policies
->Electronic Submission
->Documentation Standards
->Old Exams
->C++ Examples
->MSVC++ Info
->Software
->Support Forum
->Unix Info
->Nature Photos

[Home]
[Rich][Home][Rich]
[Author]
CS285 -- Lab 2: Testing and Verification

Winter 2003-2004
Overview

In this lab, you verify the implementation of the vector class you developed in lab 1.

Procedure

Your group should do the following:

  • Code review -- The author of the code should listen to their partner talk through what the author's code does. The author should be listening and should only speak to answer direct and specific questions. Be sure to make specific notes in the XML report as you go. (These need not be in complete sentences.) Switch roles and repeat the process.
  • Comparison and analysis of substative differences in approaches -- what did you do differently, what are the advantages/disadvantages of each approach, etc...
  • Test plan -- You should develop a plan to test the operation of the entire implementation of the vector class. I will be making a special effort to check that you are fully testing the constructors, destructor, push_back and pop_back member functions.
  • Testing -- Implement the test plan and test both implementations
  • Result analysis -- what broke
  • Defect fixes -- Pick one of the two and fix any defects found. The other implementation does not need to be fixed.

Throughout the project you should log all errors found using the log table given in the XML template file.

Lab report (due 11:00pm, the day prior to week 4 lab)

Here is a template file to use as a starting point for this report.

You should submit one report for the group. When submitting chose one MSOE login name to use (include both names in the report). Your report should include:

  • Code review -- list specific observations from each code review. You should also discuss your overall reaction to the activity (e.g., was it a useful activity, how could you have done it better, etc...).
  • Comparison of the two implementations
  • A detailed test plan (written before you actually test)
  • Test results (program output from the testing code)
  • Description of fixes -- This will be boring if you did the first lab correctly.
  • Overall reactions to the assignment (e.g., did you learning anything? Were you able to function effectively as a team? etc...)
  • An activity log indicating how much time you spent on each phase of the assignment. You should use the format found in the template XML file and report the time in the following categories:
    • Code review
    • Test plan
    • Coding
    • Testing
    • Fixing
    • Writing Report
    • Other
  • Defect logs indicating the errors discovered while working on this assignment. You should use the format found in the template XML file and indicate which implementation the defect was found and during which of the following phases:
    • Code review
    • Testing
    • Fixing
    • Other
  • Documented source code for your test program, both original vector implementations, and the fixed vector implementation.

As with any report you submit, correct spelling and grammar are required. In addition, your report should be submitted electronically following the Electronic submission guidelines. (You may wish to consult the XML help video and/or sample report before submitting your report.) Be sure to keep copies of all your files, in case something gets lost. It may be wise to keep a diskette backup as well.

Your grade on this assignment will be based on the following weightings: 10% code review, 20% test plan, 15% testing code, 10% fixed code, 10% activity/defect logs, 5% team functioning, and 30% narrative report. If you have any questions, consult your instructor.

Acknowledgment

This laboratory assignment was developed by Dr. Chris Taylor.

Last Updated: Wednesday, 17-Dec-2003 09:09:12 CST