CS 501: Software Engineering
Fall 1999

Assignment 5. UML Modeling with Rational Rose

Due: November 16, 1:25
Note change of due date

The purpose of this assignment is to give you practice at using Rational Rose to build a UML model of a software system.

The system to be modeled is the distributed information system known as Dienst that has been developed by the Cornell Digital Library Research Group under the direction of Carl Lagoze. Over the years, Dienst has gone through several versions with documentation and specification of mixed quality. This documentation is scattered across the NCSTRL web site http://www.ncstrl.org/. The latest (unreleased) specification is at http://www.cs.cornell.edu/lagoze/dienst/protocol5.htm.

Recently, plans have emerged for the Dienst protocols and service to be used to link several very large document repositories. The purpose of your assignment is to provide a model of Dienst that is suitable for three purposes:

  1. To provide an overview of Dienst so that managers of distributed repositories can appreciate the services that it provides.

  2. To provide documentation that can be used by the computing staff at existing repositories who wish to re-engineer their systems to support the Dienst protocols and services.

  3. To be a definitive description of Dienst that can be used as a basis for re-implementation of selected components of the current implementation.

Your model will include UML diagrams and supporting specifications. You must decide at what level of abstraction to present the model. Remember that this is a model, not a detailed specification. Currently, the Dienst implementation is written in Perl, but your model should be independent of the current implementation and should be suitable for implementation in any modern computing environment

Do not spend more than 12 hours on this assignment.

Submission instructions

Create a directory containing the file(s) you wish us to grade. Call this directory xxxxx0, where xxxxx is your Cornell network id. Copy this directory to the following folder:

\\goose.csuglab.cornell.edu\course\cs501-fall99\assignment5

Do not be disturbed by warnings informing you that the file cannot be accessed after it has been copied. Should you wish to revise your submission after you have copied it to our folder, then simply correct the files and re-copy the entire directory---but this time use the name xxxxx1. Further revisions should be named xxxxx2, and so on. We will grade the largest-numbered file of a series.

This is an individual assignment. Everybody must submit an individual solution.

[ CS 501 Home Page ]

William Y. Arms
Last revised: November 1, 1999