The blackboard model is a flexible problem-solving approach where the data and knowledge rules are strictly separated. The data generated during a problem resolution, from a problem statement to a solution through various stages of inferences, is centrally stored in many forms of objects. The knowledge rules are divided into independent experts; each expert contributes to the resolution with its knowledge of how to search for a (partial) solution of (parts of) the problem.

A blackboard system is composed of three main components: the blackboard, which is a database containing data and hypotheses; knowledge sources, which examine the state of the blackboard and create new data or hypotheses; and a control mechanism, which regulates the incremental hypothesizing and testing.

A blackboard application is a particular problem-solving system developed on top of a blackboard framework. A blackboard framework is an architecture, or skeleton, embodying a blackboard model. This paper describes the architecture of a blackboard framework (or "pattern"), in order to illustrate advanced object-oriented concepts in Ada 95.