Distributed Memory in Blackboard Systems
Paul Vincent, ex-colleague at TIBCO, kindly responds to A Brief Introduction to Blackboard Architectures with Blackboards for Complex Event Processing. Paul correctly mentions that TIBCO’s BusinessEvents software is an excellent scheduling component in a blackboard systems architecture.
However, I should briefly clarify Paul’s note that “blackboard systems historically used a single memory model (i.e. multiple threads or processes using a single machine’s memory model)“.
In fact, there were many blackboard systems, some more than a decade old, that used a distributed memory data-model. What I think Paul meant to say, and my apologies to Paul for being so literal, is that “blackboard systems originally used a single memory model (i.e. multiple threads or processes using a single machine’s memory model)”
John McManus, former CTO of NASA, wrote an excellent PhD dissertation in 1992, Design and Analysis Techniques for Concurrent Blackboard Systems. John’s thesis, now more than 16 years old, examined many details of concurrent blackboards where memory is distributed. For example, refer to Figure 2.3. Distributed Blackboard System with Distributed Blackboard Data Structure, page 36 of John’s dissertation.
Quoting directly from page 37 of John’s disseration;
Rice, Aiello and Nii  present several options for gaining speedups in a distributed blackboard system.
- 1) Eliminate the centralized scheduling mechanism
- 2) Optimize system design for a distributed memory, message-passing hardware
- 3) Distribute the data across the blackboard to reduce hotspots
Quoting further from the same page;
Poligon  is based on a distributed memory hardware model when each processor is viewed as a blackboard node. They define a blackboard node as follows: “a blackboard node is a process on a processor, surrounded by a collection of processors able to service its requests to execute rules.”  The implicit assumption in this definition is that all knowledge sources are rule–based systems. This assumption may severely limit the performance of systems implemented using Poligon, and limits the types of problems it is suited to address.
In Blackboards for Complex Event Processing, Paul concludes,
“One suspects the blackboard systems domain and terminology is overdue some updates thanks to developments in the Complex Event Processing space.”
If you look at the historical literature, I would say that the following restatement is more accurate:
“The CEP domain and terminology is overdue some updates because folks working in CEP did not reference or incorporate the advanced event processing prior art in a number of very important areas, blackboard systems being only one.”
On the other hand, commercial off-the-shelf rule-processing technology such as TIBCO’s BusinessEvents (BE), advances the ability to economically implement myriad complex problems that blackboard systems are designed to address.