Program Structure and Data Flow Diagram
The diagram below details the design of the program. The program is divided in to four main modules that are responsible for specific tasks. Those main modules then contain methods that carry out these specific tasks. The path arrows describe the way data is exchanged between the different methods and modules in the program.