CSC 307 Milestones 0 and 1

CSC 307 Milestones 0 and 1

Revised 30 September



Due first and second weeks of class


Introduction

Your activities for Milestones 0 and 1 involve working on the introduction of your requirements specification document and setting up some administrative files.


Milestone 0 -- Administrative Files and List of Tools to Review

Milestone 0 involves the following activities:

  1. Form your project team. This will happen at the beginning of the first lab meeting. It shouldn't take very long.

  2. Determine team member duties, as outlined in the syllabus. I.e., assign an overall leader, assistant leader, technical leader, librarian/secretary, documentation specialist, and aesthetic specialist. Record these duties in the project administration directory, in the file governance.html. There is a template for the governance file here:
    http://users.csc.calpoly.edu/~gfisher/classes/307/admin/governance-template.html
    
    which contains additional instructions for filling it in.

  3. Have a team brainstorming session to discuss initial ideas for the features your system could have.

  4. Begin the search for tools with functionality comparable to the TestTool your customer wants. Each team member will review a different related tool, for a total of six tool reviews. Record the individual assignments assignments for the related tool reviews in the work-breakdown.html file in the project administration directory. There is a template for this file in 307/admin/work-breakdown-template.html, which contains instructions for filling in the information.

  5. Prepare a list of questions for the customer interviews to be held in labs on Friday of week 1 and Monday of week 2. Record this list in customer-questions.html file in the project administration directory. The only required format for this file is that it is an integer- enumerated list, sorted in order of question priority, with most important question first in the list, and least important question last in the list.

Note: You don't need to have customer questions file checked into the project repository for the Friday lab meeting. For that meeting, you can bring a draft of the question list in whatever form is convenient for your team. As described below, the checked-in deliverable for the question list is due by Friday at 5PM.


Milestone 1 -- Admin Updates, Requirements Introduction

Activities for Milestone 1 are:

  1. Make any necessary refinements or adjustments to the Milestone 0 deliverables. In particular, you will most likely refine and expand your list of customer questions.

  2. Produce a rough draft of Section 1 of the requirements specification document:

    1. Assign writing duties to individual team members for subsections 1.0, 1.1, 1.2, 1.3, 1.4, and 1.5.0.

    2. Assign writing duties for subsections 1.5.1 through 1.5.6

    3. Write the rough drafts for the assigned subsections.

  3. Record the writing duties in Milestone 1 row of administration/work-breakdown.html.

Discussion of Milestone 1, Task 2 (Rough Draft of Section 1)

Section 1 of the requirements document provides a general overview of what the proposed software system will do. The Calendar Tool example illustrates the concrete details. For your projects, Section 1 will have similar information to the Calendar Tool example, but the details will differ appropriately.

Per the specification document outline, the detailed tool reviews address the following points:

  1. What is good about the related system, i.e., what features it has that should be included in the system your team is specifying.

  2. What is bad about the related system, i.e., what features should not be included in your system, or what features should be included but done in a different or better way.

  3. What is missing, i.e., what new features should be in your system that are not found in the related system.
Each detailed review is approximately 100 to 200 words, where 200 words is one double-spaced printed page. The Milestone 2 Calendar Tool example has sample tool reviews. You can use the review format in the example, or come up with one of our own. Whatever the format details, it is required that all reviews for a given team follow precisely the same format.

The general format of the feature comparison matrix is in the attached handout. An example is in Section 1.5 of the Calendar Tool requirements.

Rough drafts for Section 1 are checked into the following files in the project requirements directory:

File Document Section
intro.html 1.0 Introduction
problem.html 1.1 Problem Statement
personnel.html 1.2 System Personal
setting.html 1.3 Operational Setting
impacts.html 1.4 Impact Analysis
related.html 1.5 Related Systems
toolname-review.html 1.5.X Name of Tool Reviewed
features.html 1.5.7 Feature Comparison Matrix


where "toolname-review" is a suitably mnemonic file name for each of the 1.5.X subsections containing the individual tool reviews.

Format of the Feature Comparison Matrix

To help in the comparison of related tools in Milestones 1, you will construct a taxonomic feature comparison matrix, with the following general structure:

Features: Tool 1 . . . Tool N
Feature Category 1      
  Feature Category 1.1      
    Feature 1.1.1 yes/no/?   yes/no/?
        . . .      
    Feature 1.1.m yes/no/?   yes/no/?
  Feature 1.2 yes/no/?   yes/no/?
        . . .      
Feature Category 2:      
       . . .      
Feature Category n      
       . . .      

Notes: (Optional foot notes, referenced from table entries.)



1. ...
2. ...
3. ...
. . .

The left column is the taxonomic feature list (more on taxonomy shortly). The top row lists each tool being compared. The entry for each tool feature is a "yes", "no", or "?". These entries indicate whether or not a particular tool has a particular feature. The "?" entry is used if it cannot be clearly determined from available information if the feature is present or not. Any entry may have a footnote reference for additional explanatory information. For example, suppose the feature is "color support" and the entry for a tool is "yes", but the tool provides color in a more limited fashion than other tools. In this case, the entry for the more limited tool can have a footnote that explains its limitations.

On Feature ``Taxonomy''

The study of taxonomy is pursued significantly in biological sciences, where the goal is to categorize the plant and animal life into a logical hierarchy. For example, biologists start with the largest category of kingdom, which has the two members of plants and animals. From there, the biological taxonomy goes to phyla, classes, orders, etc., down to the smallest category of sub-species.

In a software tool comparison, taxonomy can be used to organize the functionality of the tools. For example, we can consider the function categories found typically in the top-level menubar to be primary candidates for the top-level categories of functionality. Each item in a menu is a subcategory, and items in submenus or dialogs will be subsubcategories. It is likely that most tools will have at most four or five levels of command hierarchy, just by the nature of the user interfaces that modern GUI-based tools use.

Since software tools are not as well organized as the animal kingdom, we will have to look elsewhere than top-level menubars for feature categories. Indeed, some tools have no menubar at all. Overall, the focus of our categorization should be on functions that are accessible anywhere in the tool's user interface, whether through menus, buttons, or typing. We specifically do not care about features that are not directly accessible to the user.

Milestone 0 Deliverables

Commit and release the following items to the project repository by 5PM Friday 20 September:


Milestone 1 Deliverables


Milestone 0 Scoring

Scoring is credit/no-credit for each of the following items (a score value of 1 or 0):

NOTE: any 0 score on Milestone 0 can be fixed for Milestone 1, as long as all the Milestone 1 deliverables are there.


Milestone 1 Scoring

Scoring is on a 100% scale for each team member's submission. The evaluations of Sections 1.0 through 1.5 will be based on the discussions in the lecture notes, handouts, and most particularly on the Milestone 1 example. Each subsection should be a description of the relevant subject matter, in a style similar to the Calendar Tool example, but with content specific to your TestTool project.

As described in the course syllabus , the Milestone 1 submission is eligible for progressive grading. That is, if you receive a score of 60% or higher on your milestone 1 submission, you can elevate the score by responding to all of the comments made by the reviewer. See the syllabus for further details of the progressive grading policy.


Reading






index | lectures | handouts | examples | textbook | doc | grades