What counts as Input Data?

When modeling Decisions one of the challenges is deciding what counts as Input Data. The most effective way to think of this is to consider the information requirements for a Decision – what information must be available for the decision to be made. This information can be delivered to the decision either from a precursor or dependent decision (the information is the answer to that Decision’s question) OR from a piece of Input Data.

When it comes to Input Data we don’t make any distinction between information that is likely to be delivered as an input to the decision service that will implement the Decision (an XML packet say), data sources that the service could consult such as a relational database or information that will be typed by a user and passed in directly. All of these are valid Input Data.

From a structural point of view it is best to think of each conceptual “lump” of data as a separate piece of Input Data. Thus an XML packet or relational database might contain several Input Data. Business concepts, business objects, are a better metaphor than physical datastores.