I. Introduction
 

1.1 Overview

SpeciesChecker is a piece of software that enables users to enter in, save and modify simple compositions and have them automatically tested for technical errors. This is somewhat analogous to a word processor’s spellchecker or a grammar checker. This software is able to analyze compositions for potential problems and generate output for the user that indicates what types of problems were detected and where.
 

1.2 Scope

The types of compositions that can be analyzed are cantus firmi and first through fifth species two-part tonal counterpoint.
 

1.3 Intended Users

This software is meant for use by students studying the rudiments of counterpoint. The software was developed specifically for users writing in the framework of species counterpoint, so it is of limited utility for people wishing to write in more sophistical genres of music.

SpeciesChecker is intended to be used primarily in an educational context. Music students are able to enter their work into the software and have it detect potential problems for them. This gives them immediate feedback on their work so that they can learn from their mistakes, and it allows them to experiment with different ideas and see if they are acceptable. It also helps them by acting as a final proofreading tool to avoid handing in work that contains careless errors.

The software is also able to randomly generate cantus firmi which students can use as a base for writing counterpoint exercises.
 

1.4 Limitations of the Software

Although the music theory relating to species counterpoint is for the most part fairly standardized, there are still several differing perspectives on certain issues. Opinions on what is correct and what is not can vary from one ear to another, and some of the considerations involved depend on period and theoretical perspective. In order to compensate for this, this software implements certain controversial rules, but allows the user to disable them if desired. Despite this, however, there is a possibility that some of the more unusual rules may have been omitted.

A further problem is that many of the rules found in the literature are loose guidelines rather than absolute rules. Considerations of taste and context are often essential, and some rules are more important than others. Although this is certainly understandable and desirable for artistic reasons, it is necessary for all rules to be strictly defined in order for them to be implemented on a computer. The rules implemented by this software are therefore more rigorous in some cases than the literature requires. This helps to guard against problematic areas of compositions being missed because of ambiguities in the rules.

Despite efforts to take overall context into account where possible, some problems may still be detected in compositions even though the overall structure of the compositions may make them acceptable. The user should therefore regard problems that are detected as areas that may need improvement rather than fatal errors that must be corrected. In order to facilitate this, SpeciesChecker qualifies relatively minor problems as warnings and more serious problems as errors.

Finally, it should be understood that the random generation of cantus firmi is fairly rudimentary. Although a resultant cantus firmus will not violate the rules selected by the user in the preferences, this does not necessarily mean that it will be a good line. Also, it may take a few minutes to generate a cantus, depending on the speed of the user’s computer.