Browse Prior Art Database

Portable System for Management of Object Oriented Software Applications

IP.com Disclosure Number: IPCOM000116558D
Original Publication Date: 1995-Oct-01
Included in the Prior Art Database: 2005-Mar-30
Document File: 2 page(s) / 102K

Publishing Venue

IBM

Related People

Fok, DW: AUTHOR [+5]

Abstract

A strategy is disclosed to operate a system of objects communicating through events sent from object to object, and receiving events from external sources. Such systems are necessary for applications derived from Object Oriented Analysis (OOA). The system contains the following features: 1. The system maintains synchronization of events from external sources. 2. The internal and external events are properly prioritized. 3. A simple method of event processing for state-event transitions and state action invocation. 4. A state action has implicit access to it's corresponding object's data elements or attributes. 5. This system is portable to different application environments and is independent of the application. 6.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 50% of the total text.

Portable System for Management of Object Oriented Software Applications

      A strategy is disclosed to operate a system of objects
communicating through events sent from object to object, and
receiving events from external sources.  Such systems are necessary
for applications derived from Object Oriented Analysis (OOA).  The
system contains the following features:
  1.  The system maintains synchronization of events from external
       sources.
  2.  The internal and external events are properly prioritized.
  3.  A simple method of event processing for state-event transitions
       and state action invocation.
  4.  A state action has implicit access to it's corresponding
object's
       data elements or attributes.
  5.  This system is portable to different application environments
and
       is independent of the application.
  6.  The system applies to hardware interrupt driven applications
       and/or applications designed for hardware polling.

      Event Synchronization and Prioritization - The system
contains 3 event queues to manage event sending, dispatching, and
prioritization.  The 'working' queue contains events that are sent
internally from object to object.  These events have the highest
priority.  The Process I/O (PIO) queue contains events that are
received by the system from external sources.  Events are not
dispatched from this queue unless the Working Queue is empty.  This
synchronizes the events received from external sources, ensuring that
all work associated with an external event is completed before
another external event is processed.  The 'background queue' contains
events of lowest priority, such as events to manage timers, polling,
and other background activities.

      State Transitions and State Action Invocation - The system's
main program is an event dispatcher that monitors these queues for
events.  An event is dispatched by causing a transition of
destination object from the object's current state to the proper next
state, based on the event, and invoking the state action of that next
state.  The dispatcher also invokes an application level defined poll
routine for applications that require hardware polling.  The priority
algorithm is simple:
  Keep loop forever to do the following.
    if working queue is not empty then
      dispatch first event on the working queue
  else if PIO queue is not empty then
    dispatch first event on the PIO queue
  else if background queue is not empty then
    dispatch first event on the background queue
  Call poll routine

      This dispatch routine can run as the sole program or as the
main program of a particular interrupt level in a multi-context
system.

      Each state of the system is represented by a state record
containing the entry point address of the states action routine and
individual pointers to state records representing the new state the
object will enter w...