In the current software design world, we already have time-tested software solutions for specific recurring problems. Best practices and the way that software design solves the repeatable problems in a quick and cost-effective manner creates reusable patterns over time, and it is a rule of thumb that we should be able to pick up and use the right ones for our design problems.
SOA deals with a number of design patterns, and numerous materials discuss each one in depth. We would like to touch upon a few of the most important ones that real-time software solutions often require.
We will deal with the following patterns in this chapter:
- Service messaging
- Message screening
- Agnostic services
- Atomic service transaction
- Authentication broker
- Message origin authentication
- Service façade
- Multiple service contracts
- Service callback
- Event-driven messaging
- Service...