Common Understanding Wiki

Common Understanding Wiki

A Common Knowledge Source of Terms and Definitions

Services

Service Terminology

Wiki: Taxonomy

This page only discusses services in general. For Service-oriented architecture (SOA) refer to this page.

Service Terminology #

(Remote) Service #

A service is a software entity providing a dedicated functionality through a Service Interface and realised through a Service Implementation. In order to fulfill its task, a Service Implementation may rely on further services that it accesses.

Usually, services do have some persistent state that is most commonly captured in a database backend.

Service Interface #

The service interface mainly describes how to access a service. In particular, it defines the possible operations, their input and output parameters. The interface also defines the protocol for accessing the service (file system service: open file first, then read from it; Internet-based service: authenticate first, then access content).

For remote services it also captures the network protocols over which the interface is accessible.

Service Implementation #

A Service Implementation realises the functionality of service on a technical level. The implementation is available as one or more software bundles and that are installed over one or more physical or virtual hosts. 

Service Types #

Cloud Service #

A cloud service is a remote service providing the main cloud characteristics broad network access, on-demand self-service, and rapid elasticity.

Web Service #

Originally (90s and early 2000s), a service offered over the Internet and based on Internet technology such as HTTP. Still used in this manner, for instance by Amazon Web Services. In our terminology, this is a special form of Remote Service.

With the evolvment of Web Service technology, mostly SOAP and WSDL the defintion of Web service has become much more narrow. W3C requires that "[a Web service] has an interface described in a machine-processable format (specifically WSDL). Other systems interact with the Web service in a manner prescribed by its description using SOAP (Simple Object Access Protocol) messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards."

REST Service #

A REST service is a service following the idea of REST (Representational State Transfer). Rest services provide a simplified interface that matches with the HTTP operations (e.g. PUT, GET, POST, DELETE for CRUD operations). REST is generally considered to be simpler that full-blown web services. Also, when designed properly, REST integrates neatless with scaling mechanisms already built-in the Web such as caching.

On the down-side, interfaces to REST services are often much less machine-readable than for Web services. 

Basic Service #

A Basic Service is a service whose implementation does not rely on any other service.

Composite Service #

A Composite service is a service whose implementation makes use of further services and accesses them over their service interface. These other services may be run by a different service provider.

Service Properties #

Multi-tenancy #

The concept of cloud consumers sharing both virtualized infrastructure and application servers. In multi-tenant cloud architectures, database and application servers are typically shared to reduce the cost to consumers, but with sharing resources and co-location of data come risks to data that must be mitigated.

Service Interoperability #

The capability to communicate, to execute programs, or to transfer data among various functional units under specified conditions.

Service Portability #

The ability of a service to run on more than one type or size of hardware/platform/operating system/cloud. This includes the abiility to connect the service to different external services such as data sources.

0 Attachments
46292 Views
Average (1 Vote)
Comments
Add Comment
James colleen
Posted on 8/13/21 5:25 PM.