Python (Microsoft Visual Studio 2019)

Overview

This section should provide a high-level narration of the program(s) purpose.  The requirements should be listed, the scope defined and the intended usage.

PROCESSING LOGIC

The processing should be defined by summarizing the control and data flow within the main program.  Techniques of process specification include Program Design Language, Pseudo Code and Flow Charts.

The main program flow must be supplemented with the flow of subroutines/methods/functions that are called from the main program.

Any specific algorithms to be used should be stated or referenced.

DATA (INPUT/OUTPUT)

The logical and physical data structure of files should be defined in detail. Data structure definitions must include the:

  1. description of each element, e.g. name, type, dimension;
  2. relationships between the elements, i.e. the structure and source;
  3. range of possible values of each element;
  4. initial values of each element.

COMPONENTS (SOURCE CODE NAMES, CLASSES, METHODS)

Describe the software components (names or classes) and purpose that will be used.

Include UML class diagram showing the properties and methods of the class.

Describe the properties of the class and any constraints upon their value.

Indicate where the algorithms defined in processing logic are implemented.

TESTING

Present one or more named scenarios including the input data, expected output and the success criteria desired that will be utilized to test the application.  The testing plan should be repeatable so discuss any ‘clean up’ that might be required to do so.

Example Scenario 1 – divide by zero test

Steps to test

Enter zero in the divisor.

Expected reaction

Expected results is a message saying ‘Zero is not a valid input. Please try

again’.