Service Classification
Jump to navigation
Jump to search
- There is no a standardized classification (see SoaML)
- The goal of classification is to introduce different SOA layers and stage of expansions
A Fundamental Service Classification
- Basic services
- Composed services
- Process services
Stages of SOA expansion
SOA Expansion
- Fundamental SOA, has only a service layer of basic services
- Federated SOA, which in addition to the basic services has a layer of composed services (this layer might be called an orchestration or composition layer)
- The third stage of expansion is a so-called process-enabled SOA, which has a third layer for process services
Basic Services
- Short-term running and conceptually stateless
- Called synchronously
- There are two types of basic services:
- Basic data services
- Basic logic services
Basic Data Services
Read or write data from or to one backend system
Examples:
- Create a new customer
- Change the address of a customer
- Return the address of a customer
ACID Basic Data Services
- Atomic: the call of the service either succeeds or has no effect.
- Consistent: after the service call, the backend is left in a legal, consistent state.
- Isolated: a service being processed by a backend is not influenced by other service calls running on the same backend at the same time.
- Durable: after a service call succeeds, it is guaranteed that the effect is persistent.
Basic Logic Services
Basic logic services represent fundamental business rules. These services usually process some input data and return corresponding results.
Examples:
- Return whether a year is a leap year
- Calculate the commission for a specific period of a specific user
Fundamental SOA
Composed Services
Composed services may also map or adapt existing services in some way. Also be referred to as “adapter services.”
Examples:
- Transfer money
- Prepare a report containing data from many system
Federated SOA
Security
Composed services reintroduce the danger of inconsistencies appearing across backends
Process Services
- Represent long-term workflows or business processes
- Macro flow, which is a long-running flow of activities (services)
- Is interruptible by human intervention
- They have a process state
Example:
- Shopping cart
Service State vs Backend State
- If the process data becomes “juristic data,” it is probably more appropriate to manage the state in an ordinary backend (e.g. create account)
- If the process data is just some persistent data that has no essential relevance for your business, stateful services are fine (e.g. shopping cart)
Other Service Classifications
- Different Types of Consumers (Public, Private)
- Reading Versus Writing Services
- Business Categorizations (taxonomy)
Other Service Classifications
- Different Types of Consumers (Public, Private)
- Reading Versus Writing Services
- Business Categorizations (taxonomy)
Marketing Point of View
- Commodity: each participant of the business market has to have (can be outsourced or bought)
- Territory: functionality that is essential and central to a specific business (business rules)
- Value-added: reflect the special value an organization brings to the market and differentiate a company from competitors
Technical and Infrastructure Services
- Query deployment information
- Monitor runtime statistics
- Print, log, or trace
- Enable or disable components and systems
- Verify interfaces
- Security related services
Questions
- What are three service layers?
- What are the 3 stages of SOA expansion?
- How can you divide basic services?