ICS 121 Spring 2004

Instructor: Robbins

Assignment 6

Due: Tuesday, May 18 in Distribution Center

Name: YOUR NAME
Student ID: YOUR ID NUMBER

1. Estimation (1 point)

Effort estimation is the practice of making accurate estimates of how long it will take to complete a piece of work. Software developers are notoriously bad at this. You will practice by estimating how long it takes you to complete a task.

QuestionEstimateActual
2 YOUR ESTIMATE YOUR ACTUAL
3 YOUR ESTIMATE YOUR ACTUAL
4 YOUR ESTIMATE YOUR ACTUAL
5 YOUR ESTIMATE YOUR ACTUAL
Total ESTIMATED TOTAL ACTUAL TOTAL

Calculate the error percentage: ((YOUR ACTUAL) - (YOUR ESTIMATE)) / (YOUR ESTIMATE)

TYPE YOUR ERROR PERCENTAGE HERE

The following questions relate to this description of a wrist watch. (Note: this example is much simpler than real watch instuctions.)

2. Decision table (4 points)

The following decision table uses headings to consider all combinations of the state of each feature of the wrist watch. Fill in each cell with a precise description of the contents of the watch display in the specified situation.

Display Mode Timer state Alarm state Myster Q/A Watch Display Contents
dont care dont care Ringing dont care ENTER DESCRIPTION HERE
TimeDate dont care Enabled dont care ENTER DESCRIPTION HERE
TimeDate dont care Disabled dont care ENTER DESCRIPTION HERE
AlarmSet dont care Enabled dont care ENTER DESCRIPTION HERE
AlarmSet dont care Disabled dont care ENTER DESCRIPTION HERE
Timer Stopped dont care dont care ENTER DESCRIPTION HERE
Timer Running dont care dont care ENTER DESCRIPTION HERE
MysteryAnswer dont care dont care Question ENTER DESCRIPTION HERE
MysteryAnswer dont care dont care Answer ENTER DESCRIPTION HERE

3. UI Design Mockup (6 points)

Follow the HTML mockup method described here to build a mockup of the watch user interface. Perform steps 1, 2, and 3 only. Your result will be one long HTML page with HR tags dividing each logical screen. Define one HTML anchor for each logical screen. Add HTML links for each important event and/or condition that can happen on each logical screen. Each HTML link should go to a suitable destination screen.

HTML links are not visible on a printout. So, to make it possible for the TA to grade your printouts, please number each logical screen and include the number of the destination screen in each link label. E.g., rather than using the label mode button, instead use mode button (5), if it linked to your 5th logical screen.

USE A TEXT EDITOR TO MAKE AN HTML MOCKUP, PRINT IT, AND STAPLE IT TO THESE PAGES.

4. UML State Diagram (6 points)

Draw a UML state diagram for the watch modes. Specifically, model each watch function and the way that a user can navigate between functions. Use concurrent states for aspects of the watch state that can vary indpendently: e.g., the alarm mode states are independent of the timer mode states.

Notes:

USE ArgoUML, Gentleware Poseidon OR Rational Rose TO MAKE A DIAGRAM, PRINT IT, AND STAPLE IT TO THESE PAGES. Note: if you use ArgoUML, you cannot draw concurrent substates, so use fork and join pseudostates instead.

5. Reading: Fowler chapter 4 (3 points)

Which of the following describe UML sequence diagrams. Delete the bullets that are incorrect, leaving only true statements in the list.

sample use case templateexample test plan templateProject plan template