ICS 121 Software Engineering - Methods & Tools Spring 2000

Homework Assignment 4

Due: Wednesday, May 17, 2000, 11am

Requirements Specification

Description

The purpose of this assignment is to complete requirements analysis and specification.  In this assignment, in particular, you will develop a semi-formal requirements
specification and an acceptance test plan for part of Virtual Mall OnLine. The document's audience is the client's chief technical officer and the perspective should be
the users' tasks. For this assignment, you will I) provide a semi-formal requirements specification of the system with use case modeling, II) describe the acceptance
test plan, and III) "summary" contract information describing what you will deliver to your customer upon completion of this project.

Remember that the client is going to read this. Don't assume the client is knowledgeable in computer science. Be clear and to-the-point. Avoid jargon. Avoid hype.

NOTE: a complete requirements document would also include your informal requirements document, list of assumptions, glossary, (from assignment 1), mockups
(from assignment 3), and lifecycle considerations (from assignment 2).  YOU SHOULD NOT HAND THESE ARTIFACTS IN AGAIN WITH THIS
ASSIGNMENT.

Part I. Use Cases
The semi-formal requirements will be specified by use case modeling with Argo/UML.

You should model the following three tasks by use case models, along with the appropriate descriptions:

  1. A customer making a purchase on Virtual Mall Online (hint: this task was done for assignment 3)
  2. A customer setting up preferences for their personal shopping page
  3. An employee adding or removing a product from Virtual Mall Online
This should include the following (which you will probably develop in somewhat of an iterative fashion): This should produce 3-5 actors and 10-12 use cases.

You can start up Argo/UML on a sun workstation with the command /home/jrobbins/argo.  Alternatively, you can download Argo/UML onto your PC from
http://www.argouml.org.

Part II: Acceptance Test Plan
For the tasks above, describe how you will test each task, making use of the use case diagram (hint: provide a test case for each task that includes test steps for each
use case in the task).

Part III: Deliverables
List what you are going to give to the customer:
        Software: Executables? In what format/media?
        Dococumentation: Validation? User's manual? On-line help? Web site? What will be in these documents?
        Development artifacts: Source code? Design docs? Test cases?
        Support: Warranty? Rights to bug fixes? Rights to request improvement?

A Complete Homework will include:
A completed assignment should be created using a word processor, look professional, and include the following distinct sections:

       Title page, including name and student id.

       Table of contents (which may appear on the title page, space available).

       Part I: Semi-formal requirements document including use case descriptions and diagrams: one page for each use case diagram plus the textual
       descriptions described above.

       Part II: Acceptance test cases for each of the tasks described by the use case diagrams in part II.

       Part III: List of Deliverables, along with descriptions as required.