Demarcating business services
|ArchiMate Made Practical|
Zie ook: ArchiMate in de praktijk
In the business layer, one of the concepts is the business service. But how does one distinguish a business service and how is it being demarcated?
If something is tagged as a business service, than that service should in principle be “consumable” by multiple consumers. Services can be grouped by means of aggregation relationships. This implies that it is only sensible to disaggregate a service into partial services if these partial services can also be consumed independently of each other.
Apply the following heuristics to distinguish business services:
- Distinguish a service from the perspective of its consumer. The service should be recognizable and usable for the consumer. The naming convention should be done from the perspective of the service consumer.
- Distinguish services based on the activities that are executed in the business layer, and based on the products that are being delivered.
- Model the services from the outside in: defined by their use.
- Distinguish different services optimized to support different concerns.
- Prevent overlap in offered services: different services offer different behavior. Overlap in behavior is an indicator that you need to define the overlapping behavior as a separate service.
- A service is realized by one or more business functions or processes that represent concrete internal behavior of the organization. A business function can realize multiple business services.
- Always model which business functions or processes a business service realizes and which business processes (in case of internal services) consume the service.
- An internal business service is always used by at least one business function or business process
- Keep services consistent: make sure that comparable behavior is offered as services in a comparable manner
- Use services to hide implementation details. It is sufficient for a service consumer to know that a certain service is being offered and how the consumer must use the service. A service consumer does not need to know how a service is realized.
Relationships with other good practices
Identical criteria and heuristics can also be used for application services in the application layer and for infrastructure services in the infrastructure layer.