Reference articles on history, science, culture and more
Encyclopedia

Service (systems architecture)

Set of related software functionalities that can be reused for different purposes

In the contexts of software architecture, service is a set of software functionality (such as the retrieval of specified information or the execution of a set of operations) that different clients can reuse, together with the policies that should control its usage (based on the identity of the client requesting the service, for example). service-orientation and service-oriented architecture, OASIS defines a service as "a mechanism to enable access to one or more capabilities, where the access is provided using a prescribed interface and is exercised consistent with constraints and policies as specified by the service description".

SOMF (Service-Oriented Modelling Framework) defines a service as "a cohesive entity that encapsulates business requirements and can be technologically defined as a software component".

Typical examples include web services, which provide third parties with access to specific functions over the Internet, network or system services, and telecommunications services. Also, application services that help, for example, track schedules, book appointments, accelerate order processing, and manage resources via a web interface.

01Service engineering

A business analyst, domain expert, and/or enterprise architecture team will develop the organization's service model first by defining the top level business functions. Once the business functions are defined, they are further partitioned and refined into services that represent the processes and activities needed to manage the assets of the organization in their various states. One example is the separation of the business function "Manage Orders" into services such as "Create Order", "Fulfill Order", "Ship Order", "Invoice Order" and "Cancel/Update Order". These business functions have to have a granularity that is adequate in the given project and domain context.

Many analysis and design methods can be used for service engineering, both general purpose ones such as OpenUP and Domain-Driven Design as well as those discussed under Service-oriented modeling.

Watch videos about Service (systems architecture)Explainers and documentaries on YouTube (opens in a new tab)

Sources and credits

This article is adapted from the Wikipedia article Service (systems architecture), written by its contributors and licensed under CC BY-SA 4.0. Fathomly has changed the layout, removed citation markers, navigation and maintenance notices, and adjusted punctuation. This adapted version is shared under the same license. For references, see the original article.

Fathomly is not affiliated with or endorsed by the Wikimedia Foundation. Spotted a problem? Tell us.