TriggerWare : Making Wise Decisions in an
Ever-Changing World…


Cs3, Inc.
5777 W Century Blvd.
Suite 1185
Los Angeles, CA 90045-5600

Phone: (310) 337-3013
FAX: (310) 337-3012

Dr. K. Narayanaswamy
Dr. Donald Cohen
Dr. Martin Feather

Abstract:

This white paper describes the basic concepts and business vision underlying TriggerWare - an advanced event monitoring and reasoning infrastructure that can be used in a variety of applications. TriggerWare*provides the most powerful event correlation features in the marketplace, and provides mechanisms to build specific event-based applications for a variety of different end-user products in areas as diverse as collaboration, network security/management, and information management services.

BUSINESS TRENDS

It is a virtual cliché to observe that we live in the "Information Age." More and more organizations are generating and consuming vast quantities of information at dizzying rates. Information -- meaning its availability, its reliability, and the readiness with which it is manipulated -- is now absolutely essential for the welfare of any contemporary individual or organization.

Cs3's product directions are predicated upon the following specific trends in business:

  • Explosive Growth in Reliance Upon Internet Information : The statistics in growth of Internet users, websites, investments in Internet-based infrastructure, and Internet businesses all indicate expanding dependence upon the Internet in both depth and breadth. But, what happens when information changes? There is no technology to help users make decisions in a changing world.

  • Web-Based Marketing and Research : Most companies use the Web to market themselves by indexing their web pages with search engines, business directories or i-malls. Most individuals and organizations conducting research now resort to the Web and its plethora of "Search Engines" to locate important information sources.

  • Web-Based Group Collaboration : The 1980's were the decade of the desktop PC and individual productivity. The 1990's witnessed the advent of networks and the explosion of the Internet as a viable infrastructure. An emerging trend for the next decade is to harness the power of groups to collaborate over the long-term using the Internet. This is evidenced by the interest in "real-time" audio and video conferencing tools, but these are just beginning to scratch the surface of the tools that are sorely needed to support groups of individuals in working together.

  • Ensuring Network Safety : As the Internet takes hold with e-commerce and numerous other applications, network security and administration requires automation - particularly for larger organizations that maintain their corporate assets on the Internet infrastructure or own and/or operate large network infrastructures.

  • Increasing Need to Fuse Information from Multiple Sources : The modern decision making world is distributed, and it is increasingly necessary for individuals and organizations to make sense out what is going on in real time at different locations. This is true in the military and increasingly in the civilian world.

All these trends demonstrate clearly just how reliant everyone is becoming upon the information they get from the Internet.

MARKET OPPORTUNITY

In the business trends we have cited above, there is a profoundly subtle common thread:

Any CHANGE to critical information is itself equally critical!

Amazingly, there is little or no generic technology in the marketplace to ensure that information changes can be conveyed efficiently back to those that were relying upon that information to render key decisions in the first place. This is the essence of the TriggerWare opportunity.

The market pain that provides Cs3 Inc. its current impetus is the lack of mechanisms and technologies that assist consumers of information in reacting immediately to specific changes. This shortcoming is experienced in numerous situations over the Internet:

  • Can you automatically detect the overall health of a complex network by automatically and dynamically synthesizing the pictures you get from various parts of a geographically distributed network? This is the critical requirement to detect and defend against denial of service attacks over the Internet.
  • Do you know how your company's positioning in the search results is changing over time for the critical keywords you care about? Can you track the movement of competitors relative to you or analyze historical trends? In general, can you tell how the research results you obtained at one point by querying a search engine are changing over time - in real time?
  • If you are collaborating with a group of geographically distributed people to, say, develop a joint report, can you tell what others in the group are doing at any particular point in time, and how your work is to be coordinated?

The answer to all the above questions is uniformly "NO!" Today, manual and non-computerized methods are being used to solve the above problems. Such solutions are already annoyingly complex, and are sure to become completely untenable, expensive, and potentially disastrous in lost productivity and opportunity, with the growing dependence on information from the Internet. The key observation is that: a decision rendered with outdated information is as baseless as a decision without information!

TriggerWare provides a technology solution to alleviate this pain in the market.

THE Cs3 SOLUTION

Given the trends above, Cs3 has built up a platform called TriggerWare -- a generic event reasoning platform that is a patented product of Cs3 Inc. TriggerWare provides event reasoning as a separate capability that can be easily integrated into a variety of end-user applications. By keeping this functionality separate, we are able to use the same powerful event correlation features of TriggerWare in a multitude of applications, and to integrate events from different sub-domains in the same applications.

TriggerWare PRODUCT ARCHITECTURE

Our approach to building TriggerWare was to build a common event monitoring, fusion and reasoning framework that integrates horizontally into many different application domain areas. We achieve this with the following innovative idea: let TriggerWare do for events what relational databases do for stored data in different domains. Once data is recorded as relations, one can dynamically formulate queries in a standard language, such as SQL, regardless of what the relation means in domain terms.

Similarly, once events are recorded in TriggerWare, recognition of many kinds of events patterns will come down to querying the event database. The TriggerWare database is superior to databases in the marketplace in areas such as supporting triggered computations and constraint enforcement. With the TriggerWare event compiler compiling new event patterns into new "defined" relations in the TriggerWare database, we can automatically trigger responses when specific patterns of events are stored in the database. This greatly simplifies the programming of reactive applications, eliminating the need for polling and other awkward control regimes.

TriggerWare is a monitoring infrastructure that can be customized to watch any fielded software system to log, flag, even respond automatically to those run-time conditions in which you express interest. Specifically, the TriggerWare technology features the following:

  • Dynamic Event Definition: New events and event patterns can be specified as the application is running without any need for re-programming. TriggerWare will automatically detect occurrences of the new event!
  • Full Power of First-order Logic: most commercial event handling systems provide limited ability to detect patterns. TriggerWare can handle the full gamut of first-order logic (FoL) as a pattern language.
  • Distributed Event Gathering: Events of interest can involve many different external systems, and events distributed around a LAN or even the Internet.

TriggerWare is a client/server (2-tier or 3-tier architecture) system (see Figure 1 for details) with the following important architectural roles:

  • Monitored systems: These are the sources of primitive events. They are monitored by the TriggerWare infrastructure. Primitive event occurrences are gathered by the Monitor - the TriggerWare server.
  • Event Definers: Composite events are defined in a language called Flea (Formal Language for Expressing Assumptions), a language for specifying event patterns. Flea is essentially equivalent to First Order Logic.
  • Event Receivers: These are clients interested in occurrences of specific events. In the figure they are shown together with event definers.
  • FLEA Compiler: processes FLEA event definitions and generates the additional software necessary for the monitor to notice when those events have actually occurred.
  • Monitor: receives reports of occurrences of primitive events, and executes the code provided by the FLEA compiler to detect whether composite events have occurred, and notifies interested clients about all event occurrences.
Within the standard TriggerWare architecture of Figure 1, note that there is a single TriggerWare server (i.e., Flea monitor and compiler), but there may be multiple event definers, monitored systems and receiver clients interested in notifications about events. In short, TriggerWare supports reasoning about distributed events across any kind of network.

TriggerWare can be architected to operate over the Web. In this variation of the Figure 1 architecture, the TriggerWare server is housed behind an organization's Web Server, in the now standard 3-tier architecture for Web-based applications. We have done this with several existing TriggerWare applications.

Flea EVENT PATTERN LANGUAGE

Flea is the event pattern language underlying TriggerWare. Once events are defined, people are likely to be interested in different patterns of events that are not known ahead of time. Flea is the language in which one can define new types of events. As we mentioned, Flea is essentially equivalent to First Order Logic. Over a universe of events, Flea can be used to define new events using the following primitives and patterns:

  • Universal and existential quantification
  • Boolean connectives such as not, and, or
  • Then(e1,e2) occurs when event e2 follows event e1
  • Then_excluding(e1, e2, e3) occurs when event e2 follows e1 but without any intervening occurrence of event e3
  • In_time(e1, e2, interval) event e2 occurred within "interval" of event e1
  • Too_late(e1, e2, interval, actual) event e2 did not occur within "interval" of event e1, and occurred "actual"
    time later
    More details about the Flea event specification language are available via the World Wide Web:
    www.cs3-inc.com/flea.html

To define a new event, you simply state the event specification in Flea, and install the definition in the TriggerWare Server. At that point, TriggerWare compiles the event definition, and will now be capable of automatically detecting all occurrences of the new event in the event streams being monitored.

The Flea language has recently been extended to include some of the modeling complexities of distributed sets of monitors - essentially incorporating partial orders of events arriving at separate TriggerWare servers.

BUILDING TriggerWare APPLICATIONS

TriggerWare has been used to build reactive applications over a single computer, network of computers, the Internet, and the World Wide Web. In all cases, the event correlation component is common, and must be combined with the specific event types and event sources for the specific application. Application Program Interfaces (APIs) have been created so that it is possible for any program to play the different roles of event definer, event source, or event subscriber (notification receiver) within the TriggerWare architecture. The APIs are usable with any programming language - Visual Basic, Java, C++, etc. In particular, it is possible to have notifications and other services integrated into Web applications.

Every TriggerWare application has a custom component related to instrumentation. This is used to detect external events that need to be sent to the TriggerWare server by the event emitters or sources in the TriggerWare architecture. The instrumentation component varies from application to application, but the analysis component remains the same. We have approaches to building instrumentations for generic Windows applications, relational databases, computer networks, Internet, etc. These instrumentations generate the event streams that are raw material for event correlation services provided by TriggerWare.

We have also built several visual tools to help non-technical people in writing new event specifications in Flea. There is both a Java applet (usable over the Web) and a Visual Basic tool that can provide this functionality.

BACKGROUND

Cs3 Inc., based in Los Angeles, California, develops and markets state-of-the-art software products and services that empower customers to make wise decisions in an ever-changing world of information around them.

Cs3 is now trying to leverage and exploit its technology advantages in TriggerWare by developing vertically integrated applications in different product markets.

  • TriggerWare is already a proven revenue producer for Cs3 as a generic, horizontal, server platform.
  • Cs3 Inc. intends to focus upon vertical integration of TriggerWare into explosively lucrative new applications in the following areas:
    • Network administration and security
    • New architectures and paradigms for Internet search
    • Supporting long-term, group collaboration over the Internet
  • Cs3 Inc. has patents pending that protect its competitive interests in TriggerWare and the applications of TriggerWare in the areas indicated above
  • Cs3 Inc.'s core strength and competency is building the event correlation aspect of any application. In each of the above application areas, the company has formed, and will continue to form, strategic relationships with established entities (either content providers or other technology product/service companies) that complement Cs3's strengths to penetrate specific markets.

BUSINESS STRATEGY

Cs3 Inc is now poised to leverage its technology advantages in TriggerWare to exploit specific application areas in which the company has acquired some domain expertise:

  • Network administration and security - with markets consisting of infrastructure and network owners
  • New paradigms and architectures for Internet search - with wide ranging markets
  • Long-term group collaboration - with markets in distance education and group work in general

Products developed in each of these areas focus upon the unique capabilities of TriggerWare - the ability to react automatically to changing information in the world.

As a result of the above developments, Cs3 Inc. is in the process of evolving from its exclusively service-oriented origins into a vibrant technology company that has a suite of potentially explosive, vertically integrated products and services in specific markets based upon TriggerWare. Over time, it is expected that the Services Division, which has historically operated independently in its pursuit of technology contracts, will become subservient to the new Products Division - as TriggerWare and its offshoots generate new service opportunities in building customized solutions.

Cs3 Inc. has core competencies in the intimate knowledge of the technologies incorporated into TriggerWare and its emerging applications. That is likely to be Cs3's unique and most profitable contribution to the value chain. Cs3 will team with other complementary entities (e.g., content providers, technology service and product sellers) to complete the delivery of these new features to the marketplace. In short, the company is actively seeking mutually beneficial partnerships with companies whose products/services have an event-driven component to them.

In the mean-time, Cs3 has developed products such as Collabrium, SearchAndNotify, and ReagentNet to generate revenue streams to continue operating the company and to showcase its capabilities and their viability in the marketplace.