CMU CS 15-675 Architectures for Software Systems Spring 1997


Blackboard Systems

Garlan & Shaw Questions on Readings for Lecture 19

Due: Wednesday, March 19, 1997


The papers:

[SG95]: Shaw & Garlan: Software Architectures book, Sections 2.6-2.7, 3.5

[Nii86]: Blackboard Systems, Parts 1 and 2

[Wolf97]: Second International Software Architecture Workshop (ISAW-2)

Hints:

Section 2.6 and 2.7 introduce two more architectural styles. Section 3.5 uses the model of 2.7 to explain Nii's elaboration of 2.6.

Read the Nii paper first and foremost to understand the blackboard model and the kinds of problems for which it is appropriate. Study Hearsay and Hasp to see how the model is realized in two rather different settings, but don't get embroiled in fine details. Look at the other examples to see the range of variability available within the basic framework. Concentrate on the computational relations between the knowledge sources and the blackboard data structures. Notice the differences in control strategies, but -- again -- don't get bogged down in the details.

Revisit Wolf to note the difference between the scratchboard and a blackboard. Early discussions at that workshop called that component a blackboard. Think about why that might not be appropriate.

Questions:

  1. In a few lines, describe the essential blackboard framework.

  2. What are three major differences between the nature of the processing required by the Hearsay-II and the nature of the processing required by the HASP system? (Note: this is a question about the processing requirements, not about the application domains.)

  3. Section 3.5 examines the Hearsay-II blackboard architecture and shows how to separate abstract design concerns (the blackboard) from implementation concerns (the interpreter). Do the same for the HASP architecture (the other major example in the reading on blackboards[Nii86]).

Email the Current Maintainer

Modified: 03/13/97