[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [soa-rm] Types of Services (RE: [soa-rm] Definition of"Service Consumer")
Let me suggest the following:
A data resource is a source of content. It accepts a request and returns a value or set of values in response. The return can be an entity (such as a particular schema), an attribute of an entity (such as when the schema was last modified), or any numerical or textual value or set of values. The content can be static objects stored in some repository or dynamically generated through the use of a processing resource. Data about a missile that is stored in a database is content. The weather forecast for tomorrow is content generated from a weather simulation. In a net-centric environment, the requester does not know the format from which the response is retrieved or how it is generated.
A processing resource is one that accepts a task and return a status indicating the extent to which the task was completed and information on how the state of entities changed as a result of the processing. One or more processing resources may be invoked as part of a process of submitting a query and being returned a response. From the standpoint of a user (either human or machine), it is unimportant what combination of data and processing resources are invoked as long as the request is satisfied.
Services interact with (i.e. use, invoke, access, ...) these resources.
On Apr 10, 2005, at 2:00 PM, Chiusano Joseph wrote:
I wonder if the roles a service can play - or, perhaps one can say, thegeneral types of services that can exist - have any bearing on our RM atall, in an indirect way.Put in simple terms, one may say that there are - in general - 3overarching "types" of services. These correspond to 3 of the layers ofthe general "integration stack" (data, application, and process):(1) Data-Oriented Service: Primary role is to accept and process data,or provide data based upon a request.Two general types:(a) Data Processor*: Accepts as input a set of data, processes thatdata, and (optionally) sends a response. The response may simply be anacknowledgement, or another set of data to be processed by the servicerequester**.Ex: Simple form acceptance service, such as a loan application formservice acting on behalf of multiple banks (routes to proper bank andsends back acknowledgement to form submitter)(b) Data Provider: Provides streaming data, or a set of data uponrequest.Ex's: RSS news feed (streaming data), stock quote (set of data uponrequest - given stock ticker symbol)*need better term - using this for illustration purposes only**using term "requester" for now since we have not established ourperferred term(2) Application-Oriented Service (aka "Function-Oriented Service"):Primary role is to accept a command and carry out processing based onthat command, in a singular fashion (i.e. does not invoke otherservices).Ex's: Inventory verification service (accepts item #, responds withwhether or not it is in inventory), shipment cost calculation service(3) Process-Oriented Service: Similar to Application-Oriented Service,but invokes other services in carrying out its processing (i.e. itembodies the definition of an overarching process).Ex: Order processing service (checks customer credit, checks inventory,does shipment cost calculation, etc.)Thoughts?JoeJoseph ChiusanoBooz Allen HamiltonVisit us online@ http://www.boozallen.com
-----Original Message-----From: Christopher Bashioum [mailto:firstname.lastname@example.org]Sent: Thursday, April 07, 2005 12:49 PMTo: email@example.comSubject: RE: [soa-rm] Definition of "Service Consumer"When we talk about service consumer vs. provider in thissense, I think we need to separate the "static" entity fromthe dynamic role that said entity plays. A given entity canbe both service provider (in which case it publishes it'sservice description) and service consumer (in which case itbinds to another service provider in order to accomplish itsown service).So...to re-word your statement a little: An entity that bindswith a service is playing the role of service consumer.-----Original Message-----From: Vikas Deolaliker [mailto:firstname.lastname@example.org]Sent: Thursday, April 07, 2005 12:21 PMTo: 'Frank McCabe'; email@example.comSubject: RE: [soa-rm] Definition of "Service Consumer"Using the publish/find/bind framework of SOA...The entity that publishes is certainly not the consumer. Theentity thatfinds may or may not be the consumer but the entity thatbinds is certainlythe consumer.So an entity that "binds" with a service would be the closestto a serviceconsumer.Vikas-----Original Message-----From: Frank McCabe [mailto:firstname.lastname@example.org]Sent: Thursday, April 07, 2005 9:00 AMTo: email@example.comSubject: Re: [soa-rm] Definition of "Service Consumer"There is a distinction between the software *entity*(agent/component/J2EE bean/.../) that interacts with aservice in orderto achieve some goal, and the person or persons for whom thatinteraction is taking place.The reason that this distinction is important is similar to thedistinction between a service interface and the service itself:accessing your bank account from an ATM or on-line will use differentinterfaces but ultimately all use the same service.Here is an example of why its important: the appropriatebusiness logicto apply to a service request will depend on many factors:the means bywhich the request was delivered, the request itself and theperson (orpersons) for whom the request was made. This last aspect iscompletelyindependent of mode of requesting and is purely business/applicationspecific.Incidentally, the above definition: "an agent that interacts with aservice in order to achieve a goal" seems to be a reasonabledefinitionof a service requester.On Apr 7, 2005, at 7:23 AM, Gregory A. Kohring wrote:
Matthew,OK, here a fewer other choices which might be deemed more"respectful"...Service Consumer:1) End-user of a service.2) An agent which, acting on behalf of its owner, uses a service.3) An entity which utilizes a service4) An entity which consumes the product or information produced by aservice.Note all of these definitions depend upon the definition of theterm "service". Have we agreed on this already? Perhaps we shouldstart there first...-- GregMatthew MacKenzie wrote:I think services deserve respect, lets try not to exploit them :-)Gregory A. Kohring wrote:Thomas,Perhaps one should use a somewhat broader definitionwhich capturesthe human user as well:Service Consumer: An entity which exploits a service.-- GregThomas Erl wrote:
Now that we've decided on the term "service consumer" it may beuseful to formally define it. The term "consumer" is used by theWS-I Basic Profile wherein it is simply defined as"Software thatinvokes an instance."Thomas--======================================================================G.A. KohringC&C Research Laboratories, NEC Europe Ltd.======================================================================
MITRE Corporation, M/S H305 phone: 703-883-7934
7515 Colshire Drive fax: 703-883-1379
McLean VA 22102-7508