LinkedIn: What is a Service?

<question group="Service Oriented Architecture Special Interest Group">

What is a Service?
I'd like to discuss the differences between concepts such as business services with Real World Effect, interfaces as an implementation of a service, etc.
i think I see thre levels of "service". The high level is the service in terms of what it provides to the business consumer.
the second is the interface design to implement it. The third is the method design within the interfaces.
Unfortunately, the term "service" can be used to describe each of these, making "context" very important.
Also, where does statelessness fit into these?
Is it ok to use state at the interface or method layer to handle complex service calls, provided the business service is stateless?


From my terminology...

SOA, noun

architectural approach for constructing software-intensive systems from a set of universally interconnected and interdependent services

service, noun
explicitly-defined and operationally-independent unit of functionality

Remark 1: Explicit definition means that a formal description of the service (i.e. the input, the output and other contractual information such as the duration of the contract) exists. This explicit definition should be the subject of agreement between the service provider and the consumer.

Remark 2: Operational independence means that problems in one service do not affect the functioning of another service if the latter does not use the former, i.e. some services are autonomous with respect to other services. For example, a garage may provide both a repair and a sales service. Even if the repair shop is on vacation the sales shop can still function; the services are thus operationally independent.

process, noun
explicitly-defined coordination of services to create a particular result

Remark 1: Services and processes can be considered to be intimately related since in real terms
• all processes are services,
• some operations of a service can be implemented as a process, and
• a process includes services in its implementation.


No comments: