Please log in to watch this conference skillscast.
Strategic design does not stop at defining boundaries around business capabilities" - it should reach out for truly smart endpoints, emphasize autonomy and the need for more coarse-grained and asynchronous APIs. The long-running services behind such APIs feel responsible for their business and sort out most problems without leaking internal troubles and bothering their clients. While long-running services will leverage domain events for decoupling, they will often expose their core functions as commands - in order to minimise coupling! Extracting the customer-facing core processes of companies into dedicated, long-running services allow to keep sight of larger-scale flows, without violating bounded contexts or introducing god services!
In this talk, Martin explores strategic design in the light of understanding the long-running nature of delivering many real-life business capabilities. But he will also show the practical side of the equation: implementing long-running behaviour of services, requiring proper reactions on failures, timeouts and the compensating actions sagas are known for. A new generation of lightweight, embeddable and scalable state machines and process engines assist in this endeavour. Expect real-life experience and many examples!
YOU MAY ALSO LIKE:
Know the Flow! Events, Commands and Long-Running Services
For over a decade Martin has been working in complex domains like energy trading, telecommunication or wind tunnel organization. As a coder, he has had a soft spot for readable and testable APIs and enjoys working with sophisticated but lean state machines and process engines. As a domain coder, he is into Domain-Driven Design and integrates methods which shift his focus from technology to the user value of what he does. Martin is a contributor to several projects on GitHub and speaks at meetups and conferences like ExploreDDD, O'Reilly and KanDDDinsky.