
CSci 131 -- Data Structures
Project #3
Due Date: October 5, 1999
The purpose of this project and Project 4 is to give you some practice in dealing with generic packages, and illustrate the advantages of a clearly-specified generic interface in supporting multiple implementations and multiple clients. This project uses material from Chaps. 2, 3, 4, and 5.
In Project 2 you completed a simple package to handle a table of employee records. This package is limited in a number of important ways.
In this project, you will complete the development of a new version of the table package which will remove these limitations.
Program 5.19 presents a generic version of a table package, Tables_Generic; Program 5.21 presents a child package containing backup and restore operations. The body of Tables_Generic uses an ordered array implementation of the table objects, and so instantiates Binary_Search_Generic (Programs 5.12 and 5.14) to provide a table-searching operation. The package operations are "stubbed out", containing only some calls to Debugging_Support to display an "under construction" message. Your tasks in this project are:
You should be able to reuse much of your Project 2 work without too much change.
Regarding test plans and user guides: write test plans for everything you change; write user guides for any package(s) that don't have them yet.