iⁿ spreadsheet testing methodology — Intent
The keystone of every good spreadsheet is a clear intent. If the intent of the spreadsheet is muddled, or if it has drifted over time, then it is likely that the spreadsheet's implementation is confused and the results are prone to error.
Specific questions to consider when testing a spreadsheet's intent:
- Is the spreadsheet fit-for-purpose? Fit-for-purpose means that the spreadsheet fulfils its intended purpose, it has an appropriate scope, the level of detail is sufficient, and it is designed in a way that is appropriate for the stakeholders.
- Is the spreadsheet solving the right problem? The intent of the spreadsheet needs to be clearly articulated and understood by the developers to ensure that it is solving the right problem. There is no point in finding the correct solution to the wrong problem. It is common for requirements to change over time — the intent may need to be updated to remain focussed.
- Do stakeholders understand the intent of the spreadsheet? The users and other stakeholders need to understand the intent of the spreadsheet so that they can use it appropriately, including correctly interpreting the results. This includes understanding what the spreadsheet isn't intended to do.
- Does the spreadsheet answer all necessary questions? The spreadsheet needs to be sufficiently general that it represents all the essential aspects of the problem that it is solving. This will then enable the user to answer all the questions that the spreadsheet is intended to address.
The keystone of every good spreadsheet is a clear intent.
- Is the scope limited to only the required tasks? The scope of a spreadsheet needs to be limited to only those tasks that are required to fulfil its intent. A spreadsheet should be as complex as it needs to be, but no more so. Over time, spreadsheets tend to accumulate peripheral data and calculations that may once have been relevant but aren’t any more — leading to a loss of focus and increased risk of error.
Next we discuss the instructions that accompany the spreadsheet.