Home-->Assignments-->Assignment-4
 | Specification | Download | Extensions | Submission | Assessment |

Specification

Deadline for Assignment 4: 4:00pm Thursday 19th January 2012

Overview

The Reference program is an application that enables users to consult several reference sources (glossaries) at the same time. Interaction with the program should allow users to search and find the definition of phrases according to some or all of the comprised glossaries. Definitions will indicate their (glossary) source. If a term appears in more than one glossary all its definitions should be displayed. In a typical session with the program the user would search for the definition of a phrase. If the definition exists all its possible meanings are displayed (each indicating its source). If the phrase doesn't exist in any of the sources similar terms from any of the glossaries are presented as alternatives, they user might select one of these and the program would display the respective definition (or definitions if there are more than one). The assignment is split into three separate levels. The first level requires you to implement a text mode of the program. The second level can be reached by implementing a graphical mode (see examples of program screen shots for my text and graphical modes). The third level requires the implementation of extra-features. These extra-features have to be implemented in both the text and graphical modes (you have to make sure that these extra-features work in both modes. This should be straightforward. If you spend a lot of time modifying the code so the extensions work for both modes it might mean you are doing unnecessary code duplication.

Please note that you are supposed to submit only one version of the program, regardless of the level you reached (a common misunderstanding is to submit two programs, one for the text mode and another for the graphical mode). Your program should typically consist of a class for the textual interface, a class or set of classes for the graphical interface, and a group of classes that do the actual processing and whose methods are used by both the textual and graphical interface classes (another common mistake is, for each function, to have two methods, one used by the textual interface class and another used by the graphical interface classes). The idea behind this requirement is that you show that through a clean separation of interface and processing classes several interface modes can call basically the same processing code.

Requirements

The following is a list of the program requirements.


Last updated at 4:32pm, Wednesday December 7th 2011
Dr Natalia Beloff (N.Beloff@sussex.ac.uk)