3.9 CASE STUDY - THE BEAMCAD PROGRAM
3.9.1 Objectives:
The program is expected to aid the design of beams by taking basic information about beam geometry and material, and then providing immediate feedback. The beam will be simply supported, and be under a single point load. The program should also provide a printed report on the beam.
3.9.2 Problem Definition:
The basic theory for beam design is available in any good mechanical design textbook. In this example it will not be given.
The inputs were determined to be few in number: Beam Type, Beam Material, Beam Thickness, Beam Width, Beam Height, Beam Length, Load Position, Load Force.
The possible outputs are Cross Section Area, Weight, Axial Stiffness, Bending Stiffness, and Beam Deflection, a visual display of Beam Geometry, a display of Beam Deflection.
3.9.3 User Interface:
3.9.3.1 - Screen Layout (also see figure):
The small number of inputs and outputs could all be displayed, and updated, on a single screen.
The left side of the screen was for inputs, the right side for outputs.
The screen is divided into regions for input(2), input display and prompts(1), Beam Cross section(3), Numerical Results(4), and Beam Deflection(5).
3.9.3.2 - Input:
Current Inputs were indicated by placing a box around the item on the display(1).
In a separate Prompt Box(2), this input could be made.
The cursor keys could be used to cursor the input selector up or down.
Keys required: UP/DOWN Cursors, F1, F2, F4, numbers from `0' to `9', `.', `-', and <RETURN>. In the spirit of robustness it was decided to screen all other keys.
3.9.3.3 - Output:
Equations, calculations, material types, and other relevant information were obtained from a text.
Proper textual descriptions were used to ensure clarity for the user.
For a printed report, screen information would be printed to a printer, with the prompt area replaced with the date and time.
3.9.3.4 - Help:
A special set of help information was needed. It was decided to ensure that the screen always displays all information necessary(2).
3.9.3.5 - Error Checking:
Reject any input which violates the input limits.
A default design was given, which the user could modify.
An error checking program was created, which gives error messages.
3.9.3.6 - Miscellaneous:
The screen was expressed in normalized coordinates by most sub-routines.
Colors were used to draw attention, and highlight areas.
3.9.4 Flow Program:
Figure 3.17 - A Sample Executive Program
3.9.5 Expand Program:
The routines were written in a top down fashion, in a time of about 30 hours. These routines are listed below.
Condition and error flags were used to skip unnecessary operations, and thus speed up response. A response of more than 0.5 seconds will result in loss of attention by the user.
Figure X - Function Hierarchies
3.9.6 Testing and Debugging:
The testing and debugging was very fast, with only realignment of graphics being required. This took a couple of hours.
3.9.7 Documentation
3.9.7.1 - Users Manual:
The documentation included an Executive Summary of what the Program does.
The Objectives of the program were described.
The theory for beam design was given for the reference of any program user, who wanted to verify the theory, and possible use it.
A manual was given which described key layouts, screen layout, basic sequence of operations, inputs and outputs.
Program Specifications were also given.
A walk through manual was given. This allowed the user to follow an example which displayed all aspects of the program.
3.9.7.2 - Programmers Manual:
Design Strategy was outlined and given.
A complete program listing was given (with complete comments).
Complete production of this Documentation took about 6 hours.
3.9.8 Listing of BeamCAD Program.