The Domain Models in Practice course is designed to teach students how to build semantic yet simple software that correctly serves its purpose.
The course begins by exploring the technical relationship between code, culture, and architecture and learning how to model and implement software from a business perspective. Next, students will learn how to scale applications so that any number of queries can be handled, while also maintaining a behavior rich domain models that can deal with complex scenarios. Students will also discover how EventSourcing enables the building of highly cohesive and decoupled modules and changes the way tests are written and communicated about forever. These patterns will help students put their energy where the business value is, by providing a model that encourages teams to be partitioned by expertise and outsourcing the busy work. Drawing from Domain-Driven Design (DDD) concepts, this course covers writing code with Command Query Response Segregation and how Event Sourcing tells a story in domain terms. The course concludes with students learning how to keep software system designs in line with the organization's needs, improve readability, and strengthen communications with key stakeholders.
Students should have experience in building software. Students will benefit from coming prepared with knowledge of DDD, CQRS, and Event Sourcing, but this is not a prerequisite.
Purpose
|
Learn about the technical relationship between code, culture, and architecture and how to model and implement software from a business perspective. |
Audience
|
This course is designed for junior and senior Architects and Developers with a strong interest in DDD and modern message-driven architectures. |
Role
| Business Analyst - Data Engineer - Data Scientist - Project Manager - Q/A - Software Developer - System Administrator - Technical Manager - Web Developer |
Skill Level
| Intermediate |
Style
| Workshops |
Duration
| 3 Days |
Related Technologies
| Domain-Driven Design |
Productivity Objectives
- Describe DDD and when it applies.
- Model the problem domain and explore multiple solutions to choose from.
- Align design with business needs using CQRS and DDD.
- Build scalable and decoupled applications with Event Sourcing.