Domain-driven Design puts a focus on domain logic, the heart of business software. It is in this layer of the software that business concepts are represented in code together with their respective business rules. The state that reflects the business situation is controlled and used here. Business rules can be represented in code using state machines. These can be implemented effectively and with ease by applying the State design pattern. Join Sebastian Bergmann on a whirlwind journey through areas of software engineering such as design patterns, static code analysis, software visualization, code generation, and test generation.