Blackboard
Blackboard ist eine Datenstruktur bzw. ein architektonisches Muster, das von einem Software-System zur Bewältigung von Problemlöseprozessen verwendet wird.
Ein Blackboard-Modell basiert auf der Vorstellung einer Gruppe von Experten, die durch Zusammenarbeit ein Problem lösen, das sich aufgrund seiner Komplexität der Lösung durch einen einzelnen Experten entzieht. Auf dem Blackboard werden dabei von einzelnen Teilprozessen Daten in einer hierarchisch organisierten Form abgelegt. Das Blackboard ist nun in der Lage, andere Teilprozesse von der Ablage oder Änderung dieser Daten zu benachrichtigen. Damit unterscheidet sich ein Blackboard insbesondere von einer reinen Datenbank, die nur von Klienten befragt wird, nicht aber umgekehrt die Klienten aktiviert. Andererseits kommunizieren die involvierten Teilprozesse niemals direkt miteinander, sondern immer nur über das Blackboard. Dies ermöglicht eine nahezu parallele Arbeitsweise der Teilprozesse.
Literatur
- H.P. Nii: The Blackboard Model of Problem Solving and the Evolution of Blackboard Architectures. The AI Magazine, Summer 1986, pp. 38–53
- H.P. Nii: Blackboard Application Systems and a Knowledge Engineering Perspective. The AI Magazine, August 1986, pp. 82–107
- Andrew Hunt, David Thomas: Der Pragmatische Programmierer Hanser Fachbuch 2003, ISBN 3-446-22309-6 pp. 155–159