FormFillLib
To build a form-filling app, we must specify a data structure such as the one in the flight example. To do this, we define two classes: Form
and Field
. As shown in the UML diagram, a Form
has a collection of Fields, and a
Field
has five attributes; a name, a string representing the prompt that the app will use to ask for the piece of data, two strings representing the prompts to be used when the app does not understand the user's response to the initial prompt (nomatch
), or does not hear it (noinput
), and the value that has been understood by the app.
For example, the Field
flight setting could have the following values for its attributes:
name: Destination
prompt: What is your destination?
nomatch: Sorry, I did not understand what you said
noinput: Sorry, I could not hear you
value: Rome (when the user has said Rome in response to the system prompt)
This structure will suffice to build an app of the type we are discussing in this chapter. It is only necessary to create as many objects...