The Program Specification Tool SoftSpec


Table of Contents


Ruth Thomas
Cambridge

Other applications or tools of this site: SEEPAGE

To the list of Colos tools


1. Global Description

SoftSpec is a tool designed to improve communication in a group working cooperatively and perhaps remotely from one another. It is a tool to allow all those interested in the outcome of a software project to specify their requirements in a clear and logical way. The requirements specification document is upgradeable throughout the project and is available in a simple easily readable form to all members of the project.

SoftSpec can also be used to monitor progress on upgrades or maintenance to software. It runs on HP workstations under X windows and Motif.

2. Scope of Programming Work

The work made easier by this product is the work that takes place before programming begins, i.e the production of the requirements specification.

During the requirements specification stage, information must be acquired from the various clients to define the final software product. Frequently there are incompatible requirements in a specification, which often do not become apparent until too late in the project to do much about them. SoftSpec provides clear evidence of conflicting requirements at the start of the project enabling misunderstandings and conflicts to be resolved before programming begins.

The requirements of a software project (tool or application) can be specified as a series of demands and wishes. Demands are requirements which must be met and wishes are requirements which, under ideal circumstances, should be met. Wishes are weighted according to their importance, thus aiding in trade-off between incompatible requirements and in the evaluation of potential solutions.

The requirements are grouped in various category headings such as "Timescales", "Educational objectives" - these categories can be altered to suit the requirements of individual projects. Many users can contribute to a project specification, and the software keeps track of who specifies a requirement as well as the status of that requirement (pending, complete or obsolete)

The requirements document can be output as a .tex or .dvi file (easily convertible to postscript) and requirements can be sorted by category or in order of importance.

3. Target group

Any member of a project team can use SoftSpec to specify software requirements. No programming expertise is required.

4. Available help

Help on the use of SoftSpec is available on-line within SoftSpec.

5. Status

The tool is currently functional, but a number of modifications are planned to enhance its overall usability.

6. Evaluation

SoftSpec is used by students at Cambridge University Engineering Department as part of collaborative design projects where teams of engineering students work to build robots capable of performing a given task. (At least 24 students a year use SoftSpec). It will be used by the INTERACT TLTP project as a project management tool where it will undergo formative evaluation.