This training is the perfect match for those who attended the “Implementing Modern Architecture” training and would like to know more about how Domain-Driven Design works in real life.
Kursdatoer er ikke helt avklart ennå, men kontakt [email protected] for påmelding!
This extended version of the existing two-day training program focuses on allocating more time to workshops, practical assignments, and additional topics. These include Core Domain Charts and Context Maps, providing a deeper and more comprehensive learning experience.
During 3 days, we will primarily focus on Domain-Driven Design (DDD) and EventStorming. Those tools help to align software architecture with business needs and increase the chances of an architecture being successful.
By being a part of the series of hands-on workshops, participants will learn how to understand business needs, discover bounded contexts, and design working models using EventStorming. The training covers strategic and tactical DDD, including designing aggregates and value objects, ensuring invariants, working with domain events, accessing entities using repositories, and more. It’s ideal for IT specialists who would like to build software systems that solve business problems and are well-designed from a technical perspective.
Audience:
Architects, Team Leads, Developers
Duration: 3 days
- Day 1: Domain-Driven Design, Big Picture EventStorming workshop, Process Modeling with EventStorming workshop
- Day 2: Discovering Bounded Contexts workshop, Core Domain Charts workshop, Building a Context Map workshop, Essentials of Tactical DDD, Discovering Aggregates workshop
- Day 3: Applying Tactical DDD in real code
Format: 50% workshop / 50% lecture
Training program
1. Domain-Driven Design
a. What is DDD and why use it?
b. Strategic DDD
c. How to discover a Bounded Context?
2. Introduction to EventStorming
a. What is EventStorming and why use it?
b. Preparation for an EventStorming workshop
3. Big Picture EventStorming workshop
a. Discovering events, systems, and actors
4. Process Modeling with EventStorming workshop
a. Discovering Commands, Policies, and Read Models
5. Discovering Bounded Contexts workshop
6. Core Domain Charts workshop
a. Introduction to Core Domain Charts
b. Discovering the strategic importance of subdomains
7. Building a Context Map workshop
8. Essentials of Tactical DDD
a. Value Objects
b. Entities
c. Aggregates
9. Discovering Aggregates workshop
10. Applying Tactical DDD in real code
a. Designing Aggregates and Value Objects
b. Ensuring Invariants in a Domain Model
c. References in Object Graphs
d. Choosing ID type
e. Application, Domain, Infrastructure, and Presentation layers
f. Implementing complex scenarios using Domain Services
g. State transitions in Aggregates
h. Working with Events in a Domain Model
i. Managing Aggregates using Factory, Repository, and Memento
j. Implementing Concurrency
PS: BRING YOUR OWN COMPUTER
Kursdatoer er ikke helt avklart ennå, men kontakt [email protected] for påmelding!
Marek Dominiak is a software developer and architect with 15 years of experience (10 years in Norwegian market) mainly in Java World. Has experience in mentoring developers and with leading teams. His main focus is on creating sustainable solutions, learning about software craftsmanship, domain-driven design, and code quality.
During his career, Marek has completed many smaller and bigger projects that work in production, interviewed developers, handled communication with customers, helped to design architecture for whole systems and delivered them, and introduced many technologies proven in production. Occasionally Marek is a speaker at conferences related to software development (JDD conference, Warszawskie Dni Informatyki).
Vadzim Prudnikau is a senior Java Developer, Team Lead, and Architect with 17 years experience (4 years in Norwegian market) who believes that technical skills, self-education, being a good team player, and knowledge sharing are the keys to success.
Completed 10+ projects which work in production, led 5 development teams, mentored 20+ developers, interviewed over 100 developers for 10+ positions, created a Java department. An Expert in Java and has also experience with Kotlin, Scala, Groovy, JavaScript programming languages.
Finner du ikke det helt optimale kurset eller kombinasjonen av kurs? Da ordner vi det - sammen. Vi kan tilrettelegge kurs slik at de inneholder akkurat det dere har behov for. Vi kan sette opp et helt nytt kurs, eller tilpasse eksisterende kurs og materiell. Flere medarbeidere kan selvfølgelig også samles til et eget felles kurs, for maksimal effektivitet. Ta kontakt med meg for et forslag til gjennomføring og et tilbud basert på deres behov.