3. Requirements

Interscript is a software component intended to assist in the publishing and development of software by providing integrated source code, documentation, testing and project management facilities.

The detailed requirements stem from fundamental design decisions including the choice of python as an implementation language, the decision to restrict the user interface to batch processing of text files, and the embodiment of the principal notions of literate programming.

The sections below discuss the requirements from the point of view of desired functionality, interface, implementation pragmatics, and management.

However, it is not possible to entirely separate discussion of requirements from design, because detailed requirements stem from design decisions, and guide more detailed design. Nor is it possible to separate implementation from design, since implementation details have design consequences -- and also provided unexpected opportunities for functionality not in the original requirements.

In other words you can expect some discussion of design and implementation in the section, although the emphasis is on requirements. See the next major section for a discussion focusing on design, and the following section for a detailed description of the implementation.
3.1. Functionality
3.2. Interface
3.3. Management
3.4. Implementation pragmatics