|
|
Service-Oriented Computing Environment: from Object Space to Cyberspace The structured computing paradigm is a strategy based on a concept that a system has data and functionality (behavior) separated into two distinct parts. The object-oriented (OO) paradigm, on the other hand, defines a system as a collection of interacting active objects via message exchange. These objects do things and know things; Or, stated equivalently, they have functions and data that complement each other as constituent parts of each active object. The combined functions and data, called methods, can be activated by received messages from other objects. Usually an OO system creates its own object space instead of accessing a data repository. This object space constitutes an OO program. Building on the OO paradigm is the service object oriented (SOO) paradigm in which the objects are distributed, or more precisely they are remote (network) objects that play predefined roles. A service provider is an object that accepts remote messages from service requestors to execute an item of work. These messages in SORCER are called service exertions. An exertion is a network request that encapsulates data, operations, and control strategy. These objects do things, know things, and dynamically federate for execution of their control strategies. Or, stated equivalently, they are metaprograms executed by dynamically federating providers. A task exertion is an elementary service request–a kind of elementary network instruction (statement)–executed by a service provider or a group of federating providers. A composite exertion called a job exertion is defined in terms of tasks and other jobs–a kind of network procedure–executed by federating providers. The executing exertion is an SOO program that dynamically bounds to all relevant and currently available service providers on the network. These providers, identified in runtime, form an exertion federation. This federation is also called an exertion space. While this sounds similar to the OO paradigm, it really isn’t. In the OO paradigm the object space is a program itself; here the exertion space is the execution environment for the exertion being a metaprogram. This changes the game completely. In the former case the object space is hosted by a single computer, but in the latter case the service providers are hosted by the network of computers. The overlay network of service providers forms the service grid and an exertion federation forms a virtual metacomputer. The metainstruction set of metacomputer consists of the method set defined by all service providers in the grid. Do you remember the eight fallacies of network computing? Creating and executing a SOO program in terms of metainstructions requires completely different approach than creating a regular OO program. In other words, we apply the OO concepts directly to the service provider grid. SOO programs are exertions, domain-specific service providers execute service tasks and metacomputer operating systems executes service jobs to make solving complex user problems easier. Network objects hosting service providers are called cybernodes, and the overlay network of cybernodes is the cyberspace. The SORCER environment provides the means to create interactive SOO programs and execute them without writing a line of source code. Service exertions can be created using interactive user interfaces downloaded directly from providers. Also via interactive interfaces the user can execute and monitor the execution of exertions in the SOO cyberspace. The exertions can be persisted for later reuse. This feature allows the user quickly to create new applications or programs on the fly in terms of existing service tasks and jobs. Exertions created this way might be used later with their own custom user interfaces that collect input from the user and update an exertion accordingly before its execution as the metaprogram in the cyberspace.
The FIPER (Federated Intelligent
Product Environment) project founded by
NIST is the precursor of the SORCER.
| ||||||||||||||||||||||||||||||||||||||||||