Spreadsheet Engineering
Advanced planning in any sort of design can speed up implementation Spreadsheets are no different from other arenas of design
Spreadsheet Design
Spreadsheet Errors
Designing
Building Testing
Designing a Spreadsheet
Plan
Modularize
Start Small
Sketch full design but do not build all at once Isolate one module then build and test that module Local mistakes much easier to detect than when part of the global model
Parameterize
Place parameters in a single location away from calculations Formulas should only contain cell references, not numerical values Assists in:
Keep It Simple
Complex spreadsheets:
Require more time and effort to build Are much more difficult to debug
Spreadsheets lives are often longer than expected Use visual cues that reinforce models logic
Use informative labels Use blank spaces Use outlines, color, bold fonts, as appropriate
Record source for important parameters Explain important formulas Use Cell Comments to describe cell contents Consider a separate module to list assumptions
Cell Comments
WORKBOOK DESIGN
Use separate sheets to group similar kinds of information Design workbooks for ease of navigation Protect workbooks from unwanted changes during use
Makes model easier for outsider to use Isolate technical details of model Bring assumptions and results to the fore Users should only interact with a few, easily recognized, sheets
Any form of structural help for users is beneficial Use revealing names for individual sheets
PROTECTION HELPS!!!
Protecting Worksheets
Data Validation
Follow a plan Build one module at a time Predict the outcome of each formula Copy and paste formulas carefully
Copying (rather than retyping) reduces the potential for typographical errors Copying can also be a source of bugs
Function Wizard
The button fx brings up the function wizard Contains a complete list of all Excel functions
Range Names
Require extra work to enter and maintain Pull-down window at top left of spreadsheet
Shows all named cells for workbook Can be used to enter individual cell names
Testing a Spreadsheet
Check that numerical results look plausible Check that formulas are correct Test that model performance is plausible
Check manually Display individual cell references Display all formulas Use the auditing tools Use error checking
Visually audit formula each cell at a time Most effective when range names used Tends to be tedious
Press F2 or double-click on cell of interest Reveals formula with color-coded cell references Stronger visual clues than manual checking
Trace Dependents
Error Checking
Model should react in a plausible manner to a range of inputs The user should be content with trends in output based on varying inputs Sensitivity testing (Chapter 6) is an important tool to test plausibility