One way to create a detailed Design Specification is simply to make a table for each state that has been defined (that is, each box in the call flow diagram). By including the elements listed below (along with any other pertinent development-specific information) for any given state, the designer can make things much easier for the programmer.
Figure 5.5 shows what a typical state might look like (along with some call-out boxes, explaining the elements of the state). Figure 5.5. Sample State Table
This diagram illustrates a state called "2100_Finance_Forex_Menu," which a caller can only enter from states called "2000_Finance_Menu." The list of potential prompts that can be played to the caller is in the prompts type section (for example, initial prompts are played when a caller first enters the state, while a timeout prompt is played only if the system doesn't hear any information), the name of the prompt (in this case the names are numbers in which the first four digits are the same as the number of the state and the last digit is unique). Next to the name of the prompt, the actual words of the prompt are written, as in prompt 21001, "For which currency would you like to hear the exchange rate?" Below the Prompts section is the section that describes what the recognizer is listening for, either the currency amount or a command. The currency amount is written in brackets to indicate that a complete definition can be found in an appendix; this term would be too complex to define in this one section and may be used in several places in the application. In addition to the command, any synonyms for that command are included, as in "List all currencies" and "List them." The touchtone equivalents are written in corresponding cells that can be used in place of spoken commands. Next to those cells is the action that should be taken when the caller responds with an appropriate response. There is also a section for notes on the bottom (in this example it's called "Module Settings") that can be used to describe any other settings, such as those that are unique to the technology used. |