DDD Ciklum Java Saturday 1 November 2014

25
Domain Driven Design

Transcript of DDD Ciklum Java Saturday 1 November 2014

Page 1: DDD Ciklum Java Saturday 1 November 2014

Domain Driven Design

Page 2: DDD Ciklum Java Saturday 1 November 2014

Strategy

Page 3: DDD Ciklum Java Saturday 1 November 2014

Игра без стратегии – первый шаг к проигрышу

Page 4: DDD Ciklum Java Saturday 1 November 2014
Page 5: DDD Ciklum Java Saturday 1 November 2014

Ubiquitous LanguageBefore...

Business AnalystDomain Expert

DevTeam

Page 6: DDD Ciklum Java Saturday 1 November 2014

communication and collaboration

Page 7: DDD Ciklum Java Saturday 1 November 2014
Page 8: DDD Ciklum Java Saturday 1 November 2014
Page 9: DDD Ciklum Java Saturday 1 November 2014

Language for communication

Page 10: DDD Ciklum Java Saturday 1 November 2014
Page 11: DDD Ciklum Java Saturday 1 November 2014

Bounded Context A

Bounded Context B

Bounded Context C

Context Map

Page 12: DDD Ciklum Java Saturday 1 November 2014

Example

Page 13: DDD Ciklum Java Saturday 1 November 2014

Tactics

Page 14: DDD Ciklum Java Saturday 1 November 2014

Architecture solutions

not bad but...

Page 15: DDD Ciklum Java Saturday 1 November 2014
Page 16: DDD Ciklum Java Saturday 1 November 2014

Sequence Diagram

not bad but...

Page 17: DDD Ciklum Java Saturday 1 November 2014

Model Driven Design

Page 18: DDD Ciklum Java Saturday 1 November 2014

Layered architecture

Page 19: DDD Ciklum Java Saturday 1 November 2014

Domain Layer

Page 20: DDD Ciklum Java Saturday 1 November 2014

Domain event

Page 21: DDD Ciklum Java Saturday 1 November 2014

Domain Service

Entity Entity

Aggregate

Domain Service

Page 22: DDD Ciklum Java Saturday 1 November 2014

Avoid bidirectional

@OneToMany

@ManyToOne

Page 23: DDD Ciklum Java Saturday 1 November 2014

Reference Aggregate

Page 24: DDD Ciklum Java Saturday 1 November 2014

Repository

Page 25: DDD Ciklum Java Saturday 1 November 2014

End