CSCI 331 - Software Systems Spring 2018

Sequence Set Group Project

This project is the first in a multi-component, multi-phase, project.

Objective

sequence set

Requirements

Your data set will be: From this XLSX file which can be saved as this TXT file as fixed-size fields and records. For final testing, use about half, or half of any system-dependent size limit you may have, so that you have a reserve for adding records. Your records will be sorted by your key field.

Your sequence set file will start with a header record followed by the fixed-size sequence set blocks.

(See Figure 10.1 on page 427 of Folk)

will start with a followed by the sequence set blocks. (See Figure 10.1 on page 427 of Folk) Your header record should include the following components: sequence set file type block size maximum count of records per block (minimum capacity 50%) record name and size count of fields per record field names and sizes block avail list pointer sequence set used list pointer block count record count stale flag

Each used block should include the following components: count of records pointer to succeeding used block set of records ordered by key

Each unused block should include the following components: count of records pointer to succeeding unused block

Your program's command line options should include: source file destination file all other information necessary for the header file



build the sequence set

given a block pointer and a key: display a record display a specific field in a record modify a field in a record insert records delete records

verify that the sequence set file is consistent

rebuild the sequence set

any other useful operations you think of that you can implement and test

WHAT TO TURN IN:

Design document for the classes .

(Consider using facilities in, e.g. Jgrasp or Doxygen) ( 25% of your grade ) The test data used ,

along with an explanation of why you chose it ,

and what were the results of the tests .

This should include a script file from the test runs.

Each test should be annotated on the script file.

( 25% of your grade ) The source file of the program .

Also, leave a copy of the source file in your account until the graded program is returned to you.

( 25% of your grade ) The users manual .

This should be typed and have a section for each of the following:

( 25% of your grade ) The name of the program. What the program is supposed to do. Where it is located on the computer.

( pwd will answer this for you) How to compile and run the program. (use a makefile ) A sample execution of the program.

(this is not the test data) What the known errors in the program are.

Generate aas a file composed of linked blocks of records.Teams will each implement a sequence set having the following attributes:At a minimum your program should be able to:You should have a method of printing (dumping) the intermediate contents of the sequence set so that you can determine whether your implementations for building, insertion and deletion are functioning properly. This dump should be sufficiently readable to help facilitate debugging. Write a test driver that demonstrates that your sequence set works.