Domain Driven Design is gaining traction in our business. Unfortunately the strategic part is often overlooked, even though it is at the heart of the practice, and is what helps forming a better relationship and understanding between Business, Analysts & Development.
This session will highlight some of the strategic aspects:
- Problem & Solution Space
- Context & Bounded Context
- Context Map
- Ubiquitous Language
They will be illustrated using the current HR domain I'm in : Comparative Selections in government. More precisely, the different meanings of Psychometric Test in the different systems will be explored.
2. Why does it matter ?
Itâs developer (mis)understanding, not expert
knowledge that gets released in production
Alberto Brandolini
3. Why does it matter ?
Learning is the bottleneck
Alberto Brandolini
4. Strategic Challenges ?
Local & Global Complexity
Coupling & Bottlenecks
Political constraints
Technical Constraints
Consistency
(Anti)Fragile
âŚ
5.
6.
7. Definitions
â˘Domain
A sphere of knowledge, influence, or activity. The
subject area to which the user applies a program
is the domain of the software.
â˘Model
A system of abstractions that describes selected
aspects of a domain and used to solve problems
related to that domain.
13. Bounded Contexts
ââŚdelimits the applicability of a particular model
so that team members have a clear and shared
understanding of what has to be consistent and
how it relates to other contexts"
14. Bounded Contexts & Context Map
Maps out the CURRENT landscape
Has your team Point of view
Evolves as needed
A trigger for inter-team communication
15.
16.
17.
18. Bounded Contexts
"political relationships between teams often
determine how systems are integrated. A
technically advantageous unification may be
impossible because of reporting structure"
24. Ubiquituous Language
A language structured around
the domain model and used by all team
members within a bounded context to connect all
the activities of the team with the software.