Software messaging system

Electrical computers and digital processing systems: multicomput – Computer-to-computer data routing – Least weight routing

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C709S238000

Reexamination Certificate

active

06668284

ABSTRACT:

FIELD OF THE INVENTION
The present invention relates to software programs that comprise software compliant, inter alia, with the Microsoft Component Object Model (COM) specification (and improved versions thereof, including but not limited to COM+), and in particular, to a system for minimizing modifications to modules in a software system when new functionality is added to the system, and for exchanging messages between software modules.
BACKGROUND OF THE INVENTION
A software system is generally comprised of multiple modules which communicate among each other by passing messages. For a message to be passed, the programmer must designate a format for the message, and write software to allow: (a) the sending program to encode the message in that format; and (b) the receiving program to decode the message in that format. The “encoding” comprises, in essence, determining the number, data types and sequence of the parameters for the message.
It is often desirable to modify software to add new functionality. In many instances, the new functionality does not add any new data, but merely uses data that is defined elsewhere in the system. Often, this existing data exists in the messages that are passed among the pre-existing modules. Nevertheless, to add the new functionality, it is usually necessary to modify the pre-existing modules that reference the data upon which the new functionality is based, and add references to the newly written modules that implement the new functionality.
For example, consider a simple system comprising a control module and a reader module. The existing functionality of the control module is to send a “read request” message to the reader module requesting the reader module to obtain a data reading from an attached (physical) reader, and the reader module sends a message back to the control module containing the reading. Suppose the system needs to be improved to add a module for logging every command or reading generated by each module of the system. In this example, the control and reader modules would both need to be modified so they by copy the command and reading data to a log file. For such a simple system, this may not require much work. However, most real systems would include hundreds of modules and objects, and each one would require modification. This would be a significant undertaking.
OBJECTS OF THE IVENTION
One object of the invention is to provide a software architecture that allows new functionality to be added to a pre-existing software system with few, if any, changes to the pre-existing software modules, by creating a new software module that merely accesses previously defined messages exchanged among the pre-existing software modules.
Another object of the invention is to provide a technique for encoding software messages according to a common format, so that any software module may receive a message sent by any other software module and extract from it the data it needs, regardless of how much other, unnecessary data may be included in the software message.
Another object of the invention is to provide a technique for changing the way messages are routed without changing software and without re-compiling.
Another object of the invention is to provide a technique for defining types of messages that are exchanged among software modules so that a programmer can specify characteristics of a message to be sent or received using a small number of lines of code.
Another object of the invention is to provide a software system in which software modules that send and receive messages according to a common format may use a single control for encoding and decoding messages in the common format, so that a programmer needs to write a small amount of code to send or receive messages in the common format.


REFERENCES:
patent: 5367681 (1994-11-01), Foss et al.
patent: 5404529 (1995-04-01), Chernikoff et al.
patent: 5511199 (1996-04-01), Anthias et al.
patent: 5522071 (1996-05-01), Guillen et al.
patent: 5563878 (1996-10-01), Blakeley et al.
patent: 5590334 (1996-12-01), Saulpaugh et al.
patent: 5634127 (1997-05-01), Cloud et al.
patent: 5710924 (1998-01-01), Ayoub et al.
patent: 5727214 (1998-03-01), Allen
patent: 5734903 (1998-03-01), Saulpaugh et al.
patent: 5742848 (1998-04-01), Burgess
patent: 5758159 (1998-05-01), Collet
patent: 6347342 (2002-02-01), Marcos et al.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Software messaging system does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Software messaging system, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Software messaging system will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3102682

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.