ICS 121 Spring 2004

Instructor: Robbins

Assignment 3

Due: Tuesday, April 27 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

2. Specification (4 points)

A. Which of the following describe differences between a user needs document and a software requirements specification (SRS) document. Delete the bullets that are incorrect, leaving only correct statements in the list.

B. Which of the following describe differences between an SRS and a design document. Delete the bullets that are incorrect, leaving only correct statements in the list.

3. UML Class Diagrams (5 points)

This diagram contains several errors in the use of the UML notation. List 5 mistakes and explain why each one is wrong.

TYPE YOUR ANSWER HERE: 5 SHORT PARAGRAPHS

4. UML Class Diagrams (5 points)

Describe in your own words the meaning of this UML class diagram. Be a precise as possible: describe each class and it's attributes, operations, and associations including multiplicity and aggregation.

TYPE YOUR ANSWER HERE: 1-3 PARAGRAPHS

5. UML Class Diagrams (5 points)

Consider the following description of credit card processing. (Note: this example is much simpler than real credit card processing.)

A credit card account is opened on a specific date with a 16-digit account number and a credit limit. Each credit card account belongs to a party. A party may be a corporation, a person, or a joint account between two people. A party has a billing address and telephone number. Several plastic cards may be issued for one account, but some corporate accounts do not have cards. Each account has a set of current transactions, with each transaction consisting of a date, dollar amount, and merchant name.

A. Draw a UML class diagram that represents the situation as precisely and completely as possible. Include, classes and/or interfaces, attributes, operations, associations, and generalizations and/or realizations. Specify association multiplicity and aggregation, but not navigability. Do not include visibilities. This is a design diagram that will be used by a programmer to guide implementation of the system.

USE ArgoUML OR Rational Rose TO MAKE A DIAGRAM, PRINT IT, AND STAPLE IT TO THESE PAGES.

sample use case templateexample test plan templateProject plan template