Information Integrity

Any program that accepts user input will need to separate good input from bad, and to make sure little of the latter gets recorded. This pattern language tells how to make these checks without complicating the program and compromising future flexibility.

The language has eleven patterns presented in three sections. The first section describes values as they should be captured by the user-interface and used within the domain model. The second and third sections discuss detecting and correcting mistakes, first during data entry and then after posting or publication.

The patterns draw from the author's experience developing financial software in Smalltalk. They are written as if part of a larger language and therefor may seem sketchy or incomplete. This paper is as much an experiment in the selection and linking of patterns as an attempt to communicate practical knowledge.

See About Checks Pattern Language for more history.

Patterns

Section 1. Specialized Values. Push tangential details into values that handle business or computational conventions.

Section 2. Provide the Illusion. Create an experience that will feel as if one has direct control of the domain.

Section 3. Questionable Information. Support the analysis and disposition of suspect data whatever its source.