Computer Science 121 - Project 2e

Review & Revision

Fall 2007

$Id: proj_2e.m4 141 2007-11-12 21:47:43Z Mark $

Critical Dates

Project Description

  1. Introduction
  2. Deliverables Table
  3. Assignement Details
  4. Grading
  5. Rules and Submission

1. Introduction

Having prepared detailed design and test plans for your module should leave you ready for the actual implementation. Before we spend the time to build it, however, we must should conduct a review of those designs and plans. Finding mistakes before we start building the product can save us wasted work and rework later. It will also provide us with good feedback on the quality and clarity of our specifications, designs, and plans.

This project complements and builds on the materials presented in the lectures on:

In the previous project, you had spent a few hours preparing notes for an architectural review, another few hours carrying it out and writing up the report, and another few hours integrating the feedback into your architecture. You will find that this one goes much more quickly:

  1. you are reviewing a much simpler design.
  2. the recommended changes will be much simpler.
  3. the process will be less formal, and you will be much more familiar with it.

The primary goals of this project phase are to ensure that you get real feedback on your plans, and to allow you to organize and conduct reviews on your own (not under the prying eyes of your professor).

2. Deliverables

The graded deliverables for this project are summarized in the following table. They are described in greater detail in the assignment descriptions and grading criteria.

Type Basis Description Value
team work product Index of Work Products 1
team work product Review Report 10
team work product Response to Raised Issues 15
team work product Updated Design 5
team work product Updated Test Plan 5
team work product Post Mortem Analysis 8
team methodology Use of Version Control 1
team work product Plan for phase activities 2
team methodology Planning and Management 2
individual work product Prepared Review Notes 10

3. Assignment

For this project you will:

  1. figure out (if you did not already do so in phase 1) how you will organize and divide this effort, and specific due dates for individual activities and work-products.
  2. Get another team to agree to review your design and test plan. This may be a reciprocal arrangement.

  3. Prepare a package containing:
    • the plug-in concept you developed in phase A.
    • the plug-in specifications developed in phase B (but not your notes on the use of GKrellM).
    • the detailed design developed in phase C.
    • the testing strategy and test case specifications developed in phase D.
    • a list of any issues about which you are not yet comfortable.
    • a note introducing those documents and suggesting the order in which they should be read.

  4. Schedule a review session, where the selected team will review that package.

  5. As individuals, study the package you obtain from another team, preparing detailed notes on issues to be discussed during the review meeting.

    NOTE: all members of each team must prepare, and check in, notes on the module to be reviewed.

  6. Conduct a review of the package you have studied.

    The team that designed that product will be present to observe and to answer questions, but will have no other formal role in the process.

  7. Write up a report of that review, carefully enumerating all action items, and return it to the team whose product you reviewed.

  8. Meet with your own team to digest the feedback you got from the review of your product, and figure out how to address all of the must-do and should-do action items.

  9. Update your design and test specifications accordingly.

  10. conduct a post-mortem of this review process, and write up a report.

WARNING

4. Grading

Each phase of this project will receive a team grade. Individual grades (for contribution, quality, and schedule management) will be based on the combined deliverables for all of the phases.

4.1 General Criteria

This project requires the same general project index, plans, subversion use, and post-mortems that are part of every project in this class.

An overall project plan will have been created in the first phase, but (if it has not yet already been prepared) you will also need to prepare a detailed plan for how the sub-tasks of this phase will be done, by whom, and on what dates.

The team will be graded, as a whole, on its ability to

  1. Perform the work according to the plan.
    We will determine when work was done by looking at the dates of the final subversion check-ins.
  2. Monitor progress and detect problems.
    Monitoring plans should be included in your project plan. Problems that come up should be discussed in your post-mortem.
  3. Reasonably adjust the plan in response to problems.
    Detected problems and responses should be discussed in your post-mortem, and reflected in revisions to the plan.

Individuals will be graded on the extent to which they were able to perform their work according to (a) the original plan or (b) the plan of record.

4.2 Project Specific Grade-ables

The project specific grade-ables for this project are:

4.3 Work Product Formats

The standard guidelines for work product formats apply.

5. Rules and Submissions

When you are done, create a message that includes:

And submit all of these things to me in an e-mail with the subject "cs 121 - Project 2e".

If you will be submitting your project late, please let me know (so that I know I haven't lost your submission message).

Collaboration and Citation

This is a team project, but different individuals will have primary responsibility for different processes or work products (or different parts of a single work product or process). Each team will be working on a different type of product. You are free to talk your team members (and for that matter other teams) about the processes you are following. You may review your work products with your own team members, and revise them based on their feedback ... but ...

  1. If you are the primary author of a work-product, you must cite the source of text you did not write (if it is more than a sentence), or any information that did not originate within your team or from your interviews.

    You will be doing research to develop your product definition and requirements. I expect that many of the ideas for your product will come from this research. Cite all of your sources for each work product, and explain how each source contributed to your work products.

  2. You may not share any of your work products (other than as required for reviews) with members of other teams.