Tim Bass recently challenged [*1] the assertion that Complex Event Processing provides “situation awareness” and quoted a Wikipedia article covering this topic from the usual human element. The article interestingly includes a generalized diagram of situation awareness [reference Endsley, M. R. (1995b). Toward a theory of situation awareness in dynamic systems. Human Factors 37(1), 32-64] that maps quite nicely to CEP (although it is obviously targeted at a more human-oriented system).
So lets review the Wikipedia definition of Situation Awareness (SA) and compare to CEP:
The most common theoretical framework of SA is provided by Dr. Mica Endsley (1995b). Endsley’s model illustrates three stages or steps of SA formation: perception, comprehension, and projection.
Perception (Level 1 SA): The first step in achieving SA is to perceive the status, attributes, and dynamics of relevant elements in the environment. Thus, Level 1 SA, the most basic level of SA, involves the processes of monitoring, cue detection, and simple recognition, which lead to an awareness of multiple situational elements (objects, events, people, systems, environmental factors) and their current states (locations, conditions, modes, actions).
- CEP comparison: this is about monitoring events and the states of entities – basic CEP functionality. For example, TIBCO BusinessEvents uses events from various channels that can be monitored, and a state model / engine to represent any spatial or temporal aspect of the elements being monitored.
Comprehension (Level 2 SA): The next step in SA formation involves a synthesis of disjointed Level 1 SA elements through the processes of pattern recognition, interpretation, and evaluation. Level 2 SA requires integrating this information to understand how it will impact upon the individual’s goals and objectives. This includes developing a comprehensive picture of the world, or of that portion of the world of concern to the individual.
- CEP comparison: this is about recognizing patterns of events and using reasoning tools (such as inference rules) to interpret and evaluate these patterns. Goals and objectives are usually represented as end states in a CEP system. For example, TIBCO BusinessEvents uses rules and (optionally continuous) queries to define patterns, and an inference engine and state model for reasoning to goals and objectives.
Projection (Level 3 SA): The third and highest level of SA involves the ability to project the future actions of the elements in the environment. Level 3 SA is achieved through knowledge of the status and dynamics of the elements and comprehension of the situation (Levels 1 and 2 SA), and then extrapolating this information forward in time to determine how it will affect future states of the operational environment.
- CEP comparison: this is about associating certain complex events with predictions about likely future states and reporting or making decisions based on them. For example, TIBCO BusinessEvents uses rules and managed decisions to take certain actions based on the detection of these complex events.
SA also involves both a temporal and a spatial component. Time is an important concept in SA, as SA is a dynamic construct, changing at a tempo dictated by the actions of individuals, task characteristics, and the surrounding environment. As new inputs enter the system, the individual incorporates them into this mental representation, making changes as necessary in plans and actions in order to achieve the desired goals. SA also involves spatial knowledge about the activities and events occurring in a specific location of interest to the individual. Thus, the concept of SA includes perception, comprehension, and projection of situational information, as well as temporal and spatial components.
- CEP comparison: this is about the importance of time and location. Indeed, you could substitute CEP for SA and still have a meaningful paragraph above. For example, TIBCO BusinessEvents uses time events and rules as well as states to manage the temporal aspect of reasoning.
* * *
To conclude, it seems there is a close association between CEP and situational awareness. Although automated tools may never have the perspective or detailed semantics of human awareness, CEP technologies can certainly provide a lot of the functionality required to assist operations. Indeed there are a few BusinessEvents applications that do just this – provide oversight of operational systems such as BPM and SOA. Are all possible situations detected? Probably not; however many are and that provides good business value to our customers.
 Tim clarified in the comments that he was claiming that “CEP software”, not the “concept of CEP”, didn’t “much” support Situation Awareness. As there is no common-use checklist as to what “support for SA” implies for software, we’ll just have to agree to differ on that point!