Service (systems architecture)
In the contexts of software architecture, service-orientation and service-oriented architecture, the term service refers to a software functionality or a set of software functionalities (such as the retrieval of specified information or the execution of a set of operations) with a purpose that different clients can reuse for different purposes, together with the policies that should control its usage (based on the identity of the client requesting the service, for example).
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".
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 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.