SlideShare a Scribd company logo
Domain Driven Design:
Panagiotis Papaioannou
p.papaioannou@gmail.com
Made Easy employing Systemic Approach
DISCLAIMER
This presentation is not a complete scientific work. It contains extracts from third-party
works, some of which, though, make no explicit reference to the original source.
It is provided as an information resource only and not for further use.
3
Software for Domain Experts (SFDE)
Purpose and Structure of the Presentation
Topics:
• Software for Domain Experts (SFDE) - Low Code development
• Domain Driven Design basics
• Systemic Approach basics
Proposition:
Domain Driven Design
based on simple Systemic principles
helps developing high value Software for Domain Experts
4
Software for Domain Experts (SFDE)
SFDE for small projects
Domain Expert
S/W Expert
Low Code Dev
A
Niche Market
Product
Domain expert: A person with special knowledge or skills in a particular area
(different than s/w development)
Software expert: A technical expert or a “Business – IT Liaison”
Low Code Dev: Developing applications with minimal coding requirement
SFDE concept can be applied to:
 External customers
 Internal customers
5
Software for Domain Experts (SFDE)
Why Software for Domain Experts
Empathetic Software
I want s/w that works the way I think
Specifics of my job are not covered by our ERP
ERP is not friendly regarding my work
Bridge the gap between
Business and IT
Specific business processes are not covered by the ERP
Business Differentiation
Competitive advantage
I do not work the same way with my competitors
I need functionality that serves my competitive advantage
Process/Business Agility
Need for rapid response to market change
Monolithic and ERP systems are not change-friendly
6
Software for Domain Experts (SFDE)
Domain Driven Design
Introduced by Eric Evans (2004) as an approach to
the development of complex software
The idea:
• Start focusing on the core domain and domain
logic
• Base the design on model(s) of the domain
• Initiate a creative collaboration between technical
and domain experts
• Iteratively refine a conceptual model of the
domain and the related problems
7
Software for Domain Experts (SFDE)
Domain Driven Design :: Key Concepts
* Eric Evans, Domain-Driven Design Reference - Definitions and Pattern Summaries (2015)
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
can be used to solve problems related to that domain.
Ubiquitous
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.
Context The setting in which a word or statement appears that determines its
meaning. Statements about a model can only be understood in a
context.
Bounded
Context
A description of a boundary (typically a subsystem, or the work of a
particular team) within which a particular model is defined and
applicable.
*
8
Software for Domain Experts (SFDE)
Ubiquitous
Language
Model-Driven
Design
Bounded
Context
Model gives
structure to
Define model within
Names enter
Domain Driven Design :: Overview *
* Eric Evans, Domain-Driven Design Reference - Definitions and Pattern Summaries (2015)
Express model with:
• Entities
• Value Objects
• Services
• Domain Events
Isolate Domain(s) with:
• Layered Architectures
Keep model unified with:
• Continuous Integration
Assess/Overview
Relationships with:
• Context Map
9
Software for Domain Experts (SFDE)
Domain Driven Design :: Model Driven Design
* Eric Evans, Domain-Driven Design Reference - Definitions and Pattern Summaries (2015)
*
10
Software for Domain Experts (SFDE)
Domain Driven Design :: Bounded Context
* Eric Evans, Domain-Driven Design Reference - Definitions and Pattern Summaries (2015)
*
11
Software for Domain Experts (SFDE)
Domain Driven Design :: Summary
1) Focus on the core domain.
2) Explore models in a creative collaboration of
domain practitioners and software practitioners.
3) Speak a ubiquitous language
within an explicitly bounded context.
*
* Eric Evans, Domain-Driven Design Reference - Definitions and Pattern Summaries (2015)
12
Software for Domain Experts (SFDE)
Why Domain Driven Design
Is it worth for small projects?
DDD was intended for complex projects.
DDD is (said to be) too complex for a simple (CRUD) app.
BUT
• How do we know it’s a simple app, without having a domain model?
• DDD is a way of thinking - not a technology or a methodology
• Focuses on the value of the application.
• Domain driven design is all about understanding the problem that the
customer is trying to solve.
• Models – models - models
Where is the scale of the project ?
13
Software for Domain Experts (SFDE)
Domain Driven Design :: Sharing Knowledge
Ba as shared context in motion (Nonaka and Konno, 1998)
Domain Expert
S/W Expert
Models Models
Models
14
Software for Domain Experts (SFDE)
The System of the Organization
Raw Materials
Capital
Information
(…)
Inputs
Work Activities
Management Activities
Methods
(…)
Transformation
Products
Services
Financial Results
Information
(…)
Outputs
Feedback
The Organization as an Open System
15
Software for Domain Experts (SFDE)
Systemic Approach
• Organization is a system of interacting components
• There is a system-subsystem structure of the organization
• The system has boundaries that have to be defined
• A system has inputs/outputs and performs a transformation
Benefits: Understand and model the domain – Define context
Reduce complexity formulating domains - subdomains
Establish the ubiquitous language
16
Software for Domain Experts (SFDE)
Systemic Approach
• What matters is the interaction between the parts, not the parts themselves
• The whole is greater than the sum of its parts (the big picture!)
• The system (the organization) serves a purpose
Benefits: Understand the internal function of the domain
Understand what customer wants – strategic goals – satisfaction criteria
Focus on outcomes
17
Software for Domain Experts (SFDE)
Systemic Approach
There are feedback loops in the causality paths.
These feedback loops produce complex system behaviors.
Benefits: Deeply understand the domain (structure  behavior)
Dynamics of the domain (behavior  events)
Uncover the big pic of the domain
18
Software for Domain Experts (SFDE)
Systemic Approach
• What matters are reoccurring patterns
rather than individual events.
Patterns of behavior lead to structure
discovery.
• Small interventions in a part of the
organization may have effects on other
sections or on the organization as a
whole.
Benefits: Understand the domain events  behavior  structure
Intervention risks
Sustainable solutions
19
Software for Domain Experts (SFDE)
How Systemic Approach helps in Domain Driven Designing
• Understand the Domain (purpose, boundaries)
• Model the Domain (System – subsystem structure, relations)
• Uncover the big picture of the domain
• Stay focused on outcomes
• Discover dynamics that are taking place in the domain
• Explore intervention risks
• Deal with Complexity - bring Order out of chaos
• A stable background for learning
• A good way to integrate new ideas within the organization’s context
• Model the Context of the Domain and Subdomains
• Establish a common language (the ubiquitous language)
• Sustainable solutions
• Effectively management of organizational changes
Summary
20
Software for Domain Experts (SFDE)
What we try to avoid
businessballs.com Original drawing: J Oakland, 1989
21
Software for Domain Experts (SFDE)
Domain Driven Design concepts
Focus on the core domain
Explore models
Collaborate with domain practitioners
Create and use a common language
Systemic Approach principles
Model and understand the domain
and the context / Reduce complexity
Establishes the common language
Sustainable solutions
Empathetic Software
Process/Business Agility
Bridge the gap between Business and IT
Business Differentiation, Competitive advantage
SFDE
22
Software for Domain Experts (SFDE)
Thank You
Panagiotis Papaioannou
p.papaioannou@gmail.com
DISCLAIMER
This presentation is not a complete scientific work. It contains extracts from third-party
works, some of which, though, make no explicit reference to the original source.
It is provided as an information resource only and not for further use.

More Related Content

Similar to Domain Driven Design: Made Easy employing Systemic Approach

Domain-Driven Design (Artur Trosin Product Stream)
Domain-Driven Design (Artur Trosin Product Stream)Domain-Driven Design (Artur Trosin Product Stream)
Domain-Driven Design (Artur Trosin Product Stream)
IT Arena
 
Code & Cannoli - Domain Driven Design
Code & Cannoli - Domain Driven DesignCode & Cannoli - Domain Driven Design
Code & Cannoli - Domain Driven Design
Frank Levering
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
Harsh Jegadeesan
 
The Role of the Software Architect
The Role of the Software ArchitectThe Role of the Software Architect
The Role of the Software Architect
Hayim Makabee
 
EricEvans_StrategicDesign.ppt
EricEvans_StrategicDesign.pptEricEvans_StrategicDesign.ppt
EricEvans_StrategicDesign.ppt
Nisha819927
 
Introduction to Domain-Driven Design
Introduction to Domain-Driven DesignIntroduction to Domain-Driven Design
Introduction to Domain-Driven Design
R-P-Azevedo
 
DOMAIN DRIVER DESIGN
DOMAIN DRIVER DESIGNDOMAIN DRIVER DESIGN
DOMAIN DRIVER DESIGN
Mohammed Fazuluddin
 
Introduction to software engineering
Introduction to software engineeringIntroduction to software engineering
Introduction to software engineering
Hitesh Mohapatra
 
Domain Driven Design Introduction
Domain Driven Design IntroductionDomain Driven Design Introduction
Domain Driven Design Introduction
wojtek_s
 
Usability evaluation of Domain-Specific Languages
Usability evaluation of Domain-Specific LanguagesUsability evaluation of Domain-Specific Languages
Usability evaluation of Domain-Specific Languages
Ankica Barisic
 
10 Things You Should Know About MDD
10 Things You Should Know About MDD10 Things You Should Know About MDD
10 Things You Should Know About MDD
Johan den Haan
 
Domain driven design simplified
Domain driven design simplifiedDomain driven design simplified
Domain driven design simplified
Vinod Wilson
 
SOAT Agile Day 2017 DDD
SOAT Agile Day 2017 DDDSOAT Agile Day 2017 DDD
SOAT Agile Day 2017 DDD
Gregory Boissinot
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
Mojammel Haque
 
Case Study: Practical tools and strategies for tackling legacy practices and ...
Case Study: Practical tools and strategies for tackling legacy practices and ...Case Study: Practical tools and strategies for tackling legacy practices and ...
Case Study: Practical tools and strategies for tackling legacy practices and ...
Alejandro S.
 
Feedback on DDD Europe - short -event storming.pptx
Feedback on DDD Europe - short -event storming.pptxFeedback on DDD Europe - short -event storming.pptx
Feedback on DDD Europe - short -event storming.pptx
Guillaume Saint Etienne
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
Up2 Technology
 
softwareengineeringpractice-141002214920-phpapp02 (1).pdf
softwareengineeringpractice-141002214920-phpapp02 (1).pdfsoftwareengineeringpractice-141002214920-phpapp02 (1).pdf
softwareengineeringpractice-141002214920-phpapp02 (1).pdf
SanRock2
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
Muhammad Ali
 
Domain Driven Design - Distillation - Chapter 15
Domain Driven Design - Distillation - Chapter 15Domain Driven Design - Distillation - Chapter 15
Domain Driven Design - Distillation - Chapter 15
Mark Windholtz
 

Similar to Domain Driven Design: Made Easy employing Systemic Approach (20)

Domain-Driven Design (Artur Trosin Product Stream)
Domain-Driven Design (Artur Trosin Product Stream)Domain-Driven Design (Artur Trosin Product Stream)
Domain-Driven Design (Artur Trosin Product Stream)
 
Code & Cannoli - Domain Driven Design
Code & Cannoli - Domain Driven DesignCode & Cannoli - Domain Driven Design
Code & Cannoli - Domain Driven Design
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
 
The Role of the Software Architect
The Role of the Software ArchitectThe Role of the Software Architect
The Role of the Software Architect
 
EricEvans_StrategicDesign.ppt
EricEvans_StrategicDesign.pptEricEvans_StrategicDesign.ppt
EricEvans_StrategicDesign.ppt
 
Introduction to Domain-Driven Design
Introduction to Domain-Driven DesignIntroduction to Domain-Driven Design
Introduction to Domain-Driven Design
 
DOMAIN DRIVER DESIGN
DOMAIN DRIVER DESIGNDOMAIN DRIVER DESIGN
DOMAIN DRIVER DESIGN
 
Introduction to software engineering
Introduction to software engineeringIntroduction to software engineering
Introduction to software engineering
 
Domain Driven Design Introduction
Domain Driven Design IntroductionDomain Driven Design Introduction
Domain Driven Design Introduction
 
Usability evaluation of Domain-Specific Languages
Usability evaluation of Domain-Specific LanguagesUsability evaluation of Domain-Specific Languages
Usability evaluation of Domain-Specific Languages
 
10 Things You Should Know About MDD
10 Things You Should Know About MDD10 Things You Should Know About MDD
10 Things You Should Know About MDD
 
Domain driven design simplified
Domain driven design simplifiedDomain driven design simplified
Domain driven design simplified
 
SOAT Agile Day 2017 DDD
SOAT Agile Day 2017 DDDSOAT Agile Day 2017 DDD
SOAT Agile Day 2017 DDD
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
 
Case Study: Practical tools and strategies for tackling legacy practices and ...
Case Study: Practical tools and strategies for tackling legacy practices and ...Case Study: Practical tools and strategies for tackling legacy practices and ...
Case Study: Practical tools and strategies for tackling legacy practices and ...
 
Feedback on DDD Europe - short -event storming.pptx
Feedback on DDD Europe - short -event storming.pptxFeedback on DDD Europe - short -event storming.pptx
Feedback on DDD Europe - short -event storming.pptx
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
 
softwareengineeringpractice-141002214920-phpapp02 (1).pdf
softwareengineeringpractice-141002214920-phpapp02 (1).pdfsoftwareengineeringpractice-141002214920-phpapp02 (1).pdf
softwareengineeringpractice-141002214920-phpapp02 (1).pdf
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
 
Domain Driven Design - Distillation - Chapter 15
Domain Driven Design - Distillation - Chapter 15Domain Driven Design - Distillation - Chapter 15
Domain Driven Design - Distillation - Chapter 15
 

More from Panagiotis Papaioannou

A systemic approach to the operations of the Education Department of large or...
A systemic approach to the operations of the Education Department of large or...A systemic approach to the operations of the Education Department of large or...
A systemic approach to the operations of the Education Department of large or...
Panagiotis Papaioannou
 
Using the Design and Control Systemic Methodology to calculate Systems Comple...
Using the Design and Control Systemic Methodology to calculate Systems Comple...Using the Design and Control Systemic Methodology to calculate Systems Comple...
Using the Design and Control Systemic Methodology to calculate Systems Comple...
Panagiotis Papaioannou
 
Applying systemic methodologies to bridge the gap between a process-oriented ...
Applying systemic methodologies to bridge the gap between a process-oriented ...Applying systemic methodologies to bridge the gap between a process-oriented ...
Applying systemic methodologies to bridge the gap between a process-oriented ...
Panagiotis Papaioannou
 
Process Mining applications and a correlation with the Systemic Approach (app...
Process Mining applications and a correlation with the Systemic Approach (app...Process Mining applications and a correlation with the Systemic Approach (app...
Process Mining applications and a correlation with the Systemic Approach (app...
Panagiotis Papaioannou
 
Systemic approach to the Business-IT alignment issue
Systemic approach to the Business-IT alignment issueSystemic approach to the Business-IT alignment issue
Systemic approach to the Business-IT alignment issue
Panagiotis Papaioannou
 
Electronic registry for the management of childhood obesity in Greece
Electronic registry for the management of childhood obesity in GreeceElectronic registry for the management of childhood obesity in Greece
Electronic registry for the management of childhood obesity in Greece
Panagiotis Papaioannou
 
Domain Driven Design and Soft Systems Methodology for Information Systems in ...
Domain Driven Design and Soft Systems Methodology for Information Systems in ...Domain Driven Design and Soft Systems Methodology for Information Systems in ...
Domain Driven Design and Soft Systems Methodology for Information Systems in ...
Panagiotis Papaioannou
 
DOMAIN-DRIVEN DESIGN AND SOFT SYSTEMS METHODOLOGY AS A FRAMEWORK TO AVOID SOF...
DOMAIN-DRIVEN DESIGN AND SOFT SYSTEMS METHODOLOGY AS A FRAMEWORK TO AVOID SOF...DOMAIN-DRIVEN DESIGN AND SOFT SYSTEMS METHODOLOGY AS A FRAMEWORK TO AVOID SOF...
DOMAIN-DRIVEN DESIGN AND SOFT SYSTEMS METHODOLOGY AS A FRAMEWORK TO AVOID SOF...
Panagiotis Papaioannou
 
Digital Transformation Mapmaking - DCSYM for value modelling
Digital Transformation Mapmaking - DCSYM for value modellingDigital Transformation Mapmaking - DCSYM for value modelling
Digital Transformation Mapmaking - DCSYM for value modelling
Panagiotis Papaioannou
 
Business Process Management and Business Intelligence
Business Process Management and Business IntelligenceBusiness Process Management and Business Intelligence
Business Process Management and Business Intelligence
Panagiotis Papaioannou
 
Business Process Management as an enabling factor for Digital Transformation
Business Process Management as an enabling factor for Digital TransformationBusiness Process Management as an enabling factor for Digital Transformation
Business Process Management as an enabling factor for Digital Transformation
Panagiotis Papaioannou
 
Business Process Management as the basis for Digital Transformation
Business Process Management as the basis for Digital TransformationBusiness Process Management as the basis for Digital Transformation
Business Process Management as the basis for Digital Transformation
Panagiotis Papaioannou
 
Reengineering of the Process of a Call Center Using Systemic Methodologies, H...
Reengineering of the Process of a Call Center Using Systemic Methodologies, H...Reengineering of the Process of a Call Center Using Systemic Methodologies, H...
Reengineering of the Process of a Call Center Using Systemic Methodologies, H...
Panagiotis Papaioannou
 
Systemic Modeling and Relations Thinking for Risk Assessment and IT Resources...
Systemic Modeling and Relations Thinking for Risk Assessment and IT Resources...Systemic Modeling and Relations Thinking for Risk Assessment and IT Resources...
Systemic Modeling and Relations Thinking for Risk Assessment and IT Resources...
Panagiotis Papaioannou
 
Applied Process Mining in a Blood Bank and correlation with the Systemic Appr...
Applied Process Mining in a Blood Bank and correlation with the Systemic Appr...Applied Process Mining in a Blood Bank and correlation with the Systemic Appr...
Applied Process Mining in a Blood Bank and correlation with the Systemic Appr...
Panagiotis Papaioannou
 
SW ecosystems for Business-IT alignment
SW ecosystems for Business-IT alignmentSW ecosystems for Business-IT alignment
SW ecosystems for Business-IT alignment
Panagiotis Papaioannou
 

More from Panagiotis Papaioannou (16)

A systemic approach to the operations of the Education Department of large or...
A systemic approach to the operations of the Education Department of large or...A systemic approach to the operations of the Education Department of large or...
A systemic approach to the operations of the Education Department of large or...
 
Using the Design and Control Systemic Methodology to calculate Systems Comple...
Using the Design and Control Systemic Methodology to calculate Systems Comple...Using the Design and Control Systemic Methodology to calculate Systems Comple...
Using the Design and Control Systemic Methodology to calculate Systems Comple...
 
Applying systemic methodologies to bridge the gap between a process-oriented ...
Applying systemic methodologies to bridge the gap between a process-oriented ...Applying systemic methodologies to bridge the gap between a process-oriented ...
Applying systemic methodologies to bridge the gap between a process-oriented ...
 
Process Mining applications and a correlation with the Systemic Approach (app...
Process Mining applications and a correlation with the Systemic Approach (app...Process Mining applications and a correlation with the Systemic Approach (app...
Process Mining applications and a correlation with the Systemic Approach (app...
 
Systemic approach to the Business-IT alignment issue
Systemic approach to the Business-IT alignment issueSystemic approach to the Business-IT alignment issue
Systemic approach to the Business-IT alignment issue
 
Electronic registry for the management of childhood obesity in Greece
Electronic registry for the management of childhood obesity in GreeceElectronic registry for the management of childhood obesity in Greece
Electronic registry for the management of childhood obesity in Greece
 
Domain Driven Design and Soft Systems Methodology for Information Systems in ...
Domain Driven Design and Soft Systems Methodology for Information Systems in ...Domain Driven Design and Soft Systems Methodology for Information Systems in ...
Domain Driven Design and Soft Systems Methodology for Information Systems in ...
 
DOMAIN-DRIVEN DESIGN AND SOFT SYSTEMS METHODOLOGY AS A FRAMEWORK TO AVOID SOF...
DOMAIN-DRIVEN DESIGN AND SOFT SYSTEMS METHODOLOGY AS A FRAMEWORK TO AVOID SOF...DOMAIN-DRIVEN DESIGN AND SOFT SYSTEMS METHODOLOGY AS A FRAMEWORK TO AVOID SOF...
DOMAIN-DRIVEN DESIGN AND SOFT SYSTEMS METHODOLOGY AS A FRAMEWORK TO AVOID SOF...
 
Digital Transformation Mapmaking - DCSYM for value modelling
Digital Transformation Mapmaking - DCSYM for value modellingDigital Transformation Mapmaking - DCSYM for value modelling
Digital Transformation Mapmaking - DCSYM for value modelling
 
Business Process Management and Business Intelligence
Business Process Management and Business IntelligenceBusiness Process Management and Business Intelligence
Business Process Management and Business Intelligence
 
Business Process Management as an enabling factor for Digital Transformation
Business Process Management as an enabling factor for Digital TransformationBusiness Process Management as an enabling factor for Digital Transformation
Business Process Management as an enabling factor for Digital Transformation
 
Business Process Management as the basis for Digital Transformation
Business Process Management as the basis for Digital TransformationBusiness Process Management as the basis for Digital Transformation
Business Process Management as the basis for Digital Transformation
 
Reengineering of the Process of a Call Center Using Systemic Methodologies, H...
Reengineering of the Process of a Call Center Using Systemic Methodologies, H...Reengineering of the Process of a Call Center Using Systemic Methodologies, H...
Reengineering of the Process of a Call Center Using Systemic Methodologies, H...
 
Systemic Modeling and Relations Thinking for Risk Assessment and IT Resources...
Systemic Modeling and Relations Thinking for Risk Assessment and IT Resources...Systemic Modeling and Relations Thinking for Risk Assessment and IT Resources...
Systemic Modeling and Relations Thinking for Risk Assessment and IT Resources...
 
Applied Process Mining in a Blood Bank and correlation with the Systemic Appr...
Applied Process Mining in a Blood Bank and correlation with the Systemic Appr...Applied Process Mining in a Blood Bank and correlation with the Systemic Appr...
Applied Process Mining in a Blood Bank and correlation with the Systemic Appr...
 
SW ecosystems for Business-IT alignment
SW ecosystems for Business-IT alignmentSW ecosystems for Business-IT alignment
SW ecosystems for Business-IT alignment
 

Recently uploaded

The Heart of Leadership_ How Emotional Intelligence Drives Business Success B...
The Heart of Leadership_ How Emotional Intelligence Drives Business Success B...The Heart of Leadership_ How Emotional Intelligence Drives Business Success B...
The Heart of Leadership_ How Emotional Intelligence Drives Business Success B...
Stephen Cashman
 
Taurus Zodiac Sign: Unveiling the Traits, Dates, and Horoscope Insights of th...
Taurus Zodiac Sign: Unveiling the Traits, Dates, and Horoscope Insights of th...Taurus Zodiac Sign: Unveiling the Traits, Dates, and Horoscope Insights of th...
Taurus Zodiac Sign: Unveiling the Traits, Dates, and Horoscope Insights of th...
my Pandit
 
Lundin Gold Corporate Presentation - June 2024
Lundin Gold Corporate Presentation - June 2024Lundin Gold Corporate Presentation - June 2024
Lundin Gold Corporate Presentation - June 2024
Adnet Communications
 
How MJ Global Leads the Packaging Industry.pdf
How MJ Global Leads the Packaging Industry.pdfHow MJ Global Leads the Packaging Industry.pdf
How MJ Global Leads the Packaging Industry.pdf
MJ Global
 
2022 Vintage Roman Numerals Men Rings
2022 Vintage Roman  Numerals  Men  Rings2022 Vintage Roman  Numerals  Men  Rings
2022 Vintage Roman Numerals Men Rings
aragme
 
一比一原版新西兰奥塔哥大学毕业证(otago毕业证)如何办理
一比一原版新西兰奥塔哥大学毕业证(otago毕业证)如何办理一比一原版新西兰奥塔哥大学毕业证(otago毕业证)如何办理
一比一原版新西兰奥塔哥大学毕业证(otago毕业证)如何办理
taqyea
 
3 Simple Steps To Buy Verified Payoneer Account In 2024
3 Simple Steps To Buy Verified Payoneer Account In 20243 Simple Steps To Buy Verified Payoneer Account In 2024
3 Simple Steps To Buy Verified Payoneer Account In 2024
SEOSMMEARTH
 
Best practices for project execution and delivery
Best practices for project execution and deliveryBest practices for project execution and delivery
Best practices for project execution and delivery
CLIVE MINCHIN
 
The Genesis of BriansClub.cm Famous Dark WEb Platform
The Genesis of BriansClub.cm Famous Dark WEb PlatformThe Genesis of BriansClub.cm Famous Dark WEb Platform
The Genesis of BriansClub.cm Famous Dark WEb Platform
SabaaSudozai
 
Zodiac Signs and Food Preferences_ What Your Sign Says About Your Taste
Zodiac Signs and Food Preferences_ What Your Sign Says About Your TasteZodiac Signs and Food Preferences_ What Your Sign Says About Your Taste
Zodiac Signs and Food Preferences_ What Your Sign Says About Your Taste
my Pandit
 
Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...
Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...
Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...
SOFTTECHHUB
 
How are Lilac French Bulldogs Beauty Charming the World and Capturing Hearts....
How are Lilac French Bulldogs Beauty Charming the World and Capturing Hearts....How are Lilac French Bulldogs Beauty Charming the World and Capturing Hearts....
How are Lilac French Bulldogs Beauty Charming the World and Capturing Hearts....
Lacey Max
 
Business storytelling: key ingredients to a story
Business storytelling: key ingredients to a storyBusiness storytelling: key ingredients to a story
Business storytelling: key ingredients to a story
Alexandra Fulford
 
Income Tax exemption for Start up : Section 80 IAC
Income Tax  exemption for Start up : Section 80 IACIncome Tax  exemption for Start up : Section 80 IAC
Income Tax exemption for Start up : Section 80 IAC
CA Dr. Prithvi Ranjan Parhi
 
The 10 Most Influential Leaders Guiding Corporate Evolution, 2024.pdf
The 10 Most Influential Leaders Guiding Corporate Evolution, 2024.pdfThe 10 Most Influential Leaders Guiding Corporate Evolution, 2024.pdf
The 10 Most Influential Leaders Guiding Corporate Evolution, 2024.pdf
thesiliconleaders
 
❼❷⓿❺❻❷❽❷❼❽ Dpboss Matka Result Satta Matka Guessing Satta Fix jodi Kalyan Fin...
❼❷⓿❺❻❷❽❷❼❽ Dpboss Matka Result Satta Matka Guessing Satta Fix jodi Kalyan Fin...❼❷⓿❺❻❷❽❷❼❽ Dpboss Matka Result Satta Matka Guessing Satta Fix jodi Kalyan Fin...
❼❷⓿❺❻❷❽❷❼❽ Dpboss Matka Result Satta Matka Guessing Satta Fix jodi Kalyan Fin...
❼❷⓿❺❻❷❽❷❼❽ Dpboss Kalyan Satta Matka Guessing Matka Result Main Bazar chart
 
Anny Serafina Love - Letter of Recommendation by Kellen Harkins, MS.
Anny Serafina Love - Letter of Recommendation by Kellen Harkins, MS.Anny Serafina Love - Letter of Recommendation by Kellen Harkins, MS.
Anny Serafina Love - Letter of Recommendation by Kellen Harkins, MS.
AnnySerafinaLove
 
Observation Lab PowerPoint Assignment for TEM 431
Observation Lab PowerPoint Assignment for TEM 431Observation Lab PowerPoint Assignment for TEM 431
Observation Lab PowerPoint Assignment for TEM 431
ecamare2
 
HOW TO START UP A COMPANY A STEP-BY-STEP GUIDE.pdf
HOW TO START UP A COMPANY A STEP-BY-STEP GUIDE.pdfHOW TO START UP A COMPANY A STEP-BY-STEP GUIDE.pdf
HOW TO START UP A COMPANY A STEP-BY-STEP GUIDE.pdf
46adnanshahzad
 
Easily Verify Compliance and Security with Binance KYC
Easily Verify Compliance and Security with Binance KYCEasily Verify Compliance and Security with Binance KYC
Easily Verify Compliance and Security with Binance KYC
Any kyc Account
 

Recently uploaded (20)

The Heart of Leadership_ How Emotional Intelligence Drives Business Success B...
The Heart of Leadership_ How Emotional Intelligence Drives Business Success B...The Heart of Leadership_ How Emotional Intelligence Drives Business Success B...
The Heart of Leadership_ How Emotional Intelligence Drives Business Success B...
 
Taurus Zodiac Sign: Unveiling the Traits, Dates, and Horoscope Insights of th...
Taurus Zodiac Sign: Unveiling the Traits, Dates, and Horoscope Insights of th...Taurus Zodiac Sign: Unveiling the Traits, Dates, and Horoscope Insights of th...
Taurus Zodiac Sign: Unveiling the Traits, Dates, and Horoscope Insights of th...
 
Lundin Gold Corporate Presentation - June 2024
Lundin Gold Corporate Presentation - June 2024Lundin Gold Corporate Presentation - June 2024
Lundin Gold Corporate Presentation - June 2024
 
How MJ Global Leads the Packaging Industry.pdf
How MJ Global Leads the Packaging Industry.pdfHow MJ Global Leads the Packaging Industry.pdf
How MJ Global Leads the Packaging Industry.pdf
 
2022 Vintage Roman Numerals Men Rings
2022 Vintage Roman  Numerals  Men  Rings2022 Vintage Roman  Numerals  Men  Rings
2022 Vintage Roman Numerals Men Rings
 
一比一原版新西兰奥塔哥大学毕业证(otago毕业证)如何办理
一比一原版新西兰奥塔哥大学毕业证(otago毕业证)如何办理一比一原版新西兰奥塔哥大学毕业证(otago毕业证)如何办理
一比一原版新西兰奥塔哥大学毕业证(otago毕业证)如何办理
 
3 Simple Steps To Buy Verified Payoneer Account In 2024
3 Simple Steps To Buy Verified Payoneer Account In 20243 Simple Steps To Buy Verified Payoneer Account In 2024
3 Simple Steps To Buy Verified Payoneer Account In 2024
 
Best practices for project execution and delivery
Best practices for project execution and deliveryBest practices for project execution and delivery
Best practices for project execution and delivery
 
The Genesis of BriansClub.cm Famous Dark WEb Platform
The Genesis of BriansClub.cm Famous Dark WEb PlatformThe Genesis of BriansClub.cm Famous Dark WEb Platform
The Genesis of BriansClub.cm Famous Dark WEb Platform
 
Zodiac Signs and Food Preferences_ What Your Sign Says About Your Taste
Zodiac Signs and Food Preferences_ What Your Sign Says About Your TasteZodiac Signs and Food Preferences_ What Your Sign Says About Your Taste
Zodiac Signs and Food Preferences_ What Your Sign Says About Your Taste
 
Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...
Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...
Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...
 
How are Lilac French Bulldogs Beauty Charming the World and Capturing Hearts....
How are Lilac French Bulldogs Beauty Charming the World and Capturing Hearts....How are Lilac French Bulldogs Beauty Charming the World and Capturing Hearts....
How are Lilac French Bulldogs Beauty Charming the World and Capturing Hearts....
 
Business storytelling: key ingredients to a story
Business storytelling: key ingredients to a storyBusiness storytelling: key ingredients to a story
Business storytelling: key ingredients to a story
 
Income Tax exemption for Start up : Section 80 IAC
Income Tax  exemption for Start up : Section 80 IACIncome Tax  exemption for Start up : Section 80 IAC
Income Tax exemption for Start up : Section 80 IAC
 
The 10 Most Influential Leaders Guiding Corporate Evolution, 2024.pdf
The 10 Most Influential Leaders Guiding Corporate Evolution, 2024.pdfThe 10 Most Influential Leaders Guiding Corporate Evolution, 2024.pdf
The 10 Most Influential Leaders Guiding Corporate Evolution, 2024.pdf
 
❼❷⓿❺❻❷❽❷❼❽ Dpboss Matka Result Satta Matka Guessing Satta Fix jodi Kalyan Fin...
❼❷⓿❺❻❷❽❷❼❽ Dpboss Matka Result Satta Matka Guessing Satta Fix jodi Kalyan Fin...❼❷⓿❺❻❷❽❷❼❽ Dpboss Matka Result Satta Matka Guessing Satta Fix jodi Kalyan Fin...
❼❷⓿❺❻❷❽❷❼❽ Dpboss Matka Result Satta Matka Guessing Satta Fix jodi Kalyan Fin...
 
Anny Serafina Love - Letter of Recommendation by Kellen Harkins, MS.
Anny Serafina Love - Letter of Recommendation by Kellen Harkins, MS.Anny Serafina Love - Letter of Recommendation by Kellen Harkins, MS.
Anny Serafina Love - Letter of Recommendation by Kellen Harkins, MS.
 
Observation Lab PowerPoint Assignment for TEM 431
Observation Lab PowerPoint Assignment for TEM 431Observation Lab PowerPoint Assignment for TEM 431
Observation Lab PowerPoint Assignment for TEM 431
 
HOW TO START UP A COMPANY A STEP-BY-STEP GUIDE.pdf
HOW TO START UP A COMPANY A STEP-BY-STEP GUIDE.pdfHOW TO START UP A COMPANY A STEP-BY-STEP GUIDE.pdf
HOW TO START UP A COMPANY A STEP-BY-STEP GUIDE.pdf
 
Easily Verify Compliance and Security with Binance KYC
Easily Verify Compliance and Security with Binance KYCEasily Verify Compliance and Security with Binance KYC
Easily Verify Compliance and Security with Binance KYC
 

Domain Driven Design: Made Easy employing Systemic Approach

  • 1. Domain Driven Design: Panagiotis Papaioannou p.papaioannou@gmail.com Made Easy employing Systemic Approach
  • 2. DISCLAIMER This presentation is not a complete scientific work. It contains extracts from third-party works, some of which, though, make no explicit reference to the original source. It is provided as an information resource only and not for further use.
  • 3. 3 Software for Domain Experts (SFDE) Purpose and Structure of the Presentation Topics: • Software for Domain Experts (SFDE) - Low Code development • Domain Driven Design basics • Systemic Approach basics Proposition: Domain Driven Design based on simple Systemic principles helps developing high value Software for Domain Experts
  • 4. 4 Software for Domain Experts (SFDE) SFDE for small projects Domain Expert S/W Expert Low Code Dev A Niche Market Product Domain expert: A person with special knowledge or skills in a particular area (different than s/w development) Software expert: A technical expert or a “Business – IT Liaison” Low Code Dev: Developing applications with minimal coding requirement SFDE concept can be applied to:  External customers  Internal customers
  • 5. 5 Software for Domain Experts (SFDE) Why Software for Domain Experts Empathetic Software I want s/w that works the way I think Specifics of my job are not covered by our ERP ERP is not friendly regarding my work Bridge the gap between Business and IT Specific business processes are not covered by the ERP Business Differentiation Competitive advantage I do not work the same way with my competitors I need functionality that serves my competitive advantage Process/Business Agility Need for rapid response to market change Monolithic and ERP systems are not change-friendly
  • 6. 6 Software for Domain Experts (SFDE) Domain Driven Design Introduced by Eric Evans (2004) as an approach to the development of complex software The idea: • Start focusing on the core domain and domain logic • Base the design on model(s) of the domain • Initiate a creative collaboration between technical and domain experts • Iteratively refine a conceptual model of the domain and the related problems
  • 7. 7 Software for Domain Experts (SFDE) Domain Driven Design :: Key Concepts * Eric Evans, Domain-Driven Design Reference - Definitions and Pattern Summaries (2015) 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 can be used to solve problems related to that domain. Ubiquitous 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. Context The setting in which a word or statement appears that determines its meaning. Statements about a model can only be understood in a context. Bounded Context A description of a boundary (typically a subsystem, or the work of a particular team) within which a particular model is defined and applicable. *
  • 8. 8 Software for Domain Experts (SFDE) Ubiquitous Language Model-Driven Design Bounded Context Model gives structure to Define model within Names enter Domain Driven Design :: Overview * * Eric Evans, Domain-Driven Design Reference - Definitions and Pattern Summaries (2015) Express model with: • Entities • Value Objects • Services • Domain Events Isolate Domain(s) with: • Layered Architectures Keep model unified with: • Continuous Integration Assess/Overview Relationships with: • Context Map
  • 9. 9 Software for Domain Experts (SFDE) Domain Driven Design :: Model Driven Design * Eric Evans, Domain-Driven Design Reference - Definitions and Pattern Summaries (2015) *
  • 10. 10 Software for Domain Experts (SFDE) Domain Driven Design :: Bounded Context * Eric Evans, Domain-Driven Design Reference - Definitions and Pattern Summaries (2015) *
  • 11. 11 Software for Domain Experts (SFDE) Domain Driven Design :: Summary 1) Focus on the core domain. 2) Explore models in a creative collaboration of domain practitioners and software practitioners. 3) Speak a ubiquitous language within an explicitly bounded context. * * Eric Evans, Domain-Driven Design Reference - Definitions and Pattern Summaries (2015)
  • 12. 12 Software for Domain Experts (SFDE) Why Domain Driven Design Is it worth for small projects? DDD was intended for complex projects. DDD is (said to be) too complex for a simple (CRUD) app. BUT • How do we know it’s a simple app, without having a domain model? • DDD is a way of thinking - not a technology or a methodology • Focuses on the value of the application. • Domain driven design is all about understanding the problem that the customer is trying to solve. • Models – models - models Where is the scale of the project ?
  • 13. 13 Software for Domain Experts (SFDE) Domain Driven Design :: Sharing Knowledge Ba as shared context in motion (Nonaka and Konno, 1998) Domain Expert S/W Expert Models Models Models
  • 14. 14 Software for Domain Experts (SFDE) The System of the Organization Raw Materials Capital Information (…) Inputs Work Activities Management Activities Methods (…) Transformation Products Services Financial Results Information (…) Outputs Feedback The Organization as an Open System
  • 15. 15 Software for Domain Experts (SFDE) Systemic Approach • Organization is a system of interacting components • There is a system-subsystem structure of the organization • The system has boundaries that have to be defined • A system has inputs/outputs and performs a transformation Benefits: Understand and model the domain – Define context Reduce complexity formulating domains - subdomains Establish the ubiquitous language
  • 16. 16 Software for Domain Experts (SFDE) Systemic Approach • What matters is the interaction between the parts, not the parts themselves • The whole is greater than the sum of its parts (the big picture!) • The system (the organization) serves a purpose Benefits: Understand the internal function of the domain Understand what customer wants – strategic goals – satisfaction criteria Focus on outcomes
  • 17. 17 Software for Domain Experts (SFDE) Systemic Approach There are feedback loops in the causality paths. These feedback loops produce complex system behaviors. Benefits: Deeply understand the domain (structure  behavior) Dynamics of the domain (behavior  events) Uncover the big pic of the domain
  • 18. 18 Software for Domain Experts (SFDE) Systemic Approach • What matters are reoccurring patterns rather than individual events. Patterns of behavior lead to structure discovery. • Small interventions in a part of the organization may have effects on other sections or on the organization as a whole. Benefits: Understand the domain events  behavior  structure Intervention risks Sustainable solutions
  • 19. 19 Software for Domain Experts (SFDE) How Systemic Approach helps in Domain Driven Designing • Understand the Domain (purpose, boundaries) • Model the Domain (System – subsystem structure, relations) • Uncover the big picture of the domain • Stay focused on outcomes • Discover dynamics that are taking place in the domain • Explore intervention risks • Deal with Complexity - bring Order out of chaos • A stable background for learning • A good way to integrate new ideas within the organization’s context • Model the Context of the Domain and Subdomains • Establish a common language (the ubiquitous language) • Sustainable solutions • Effectively management of organizational changes Summary
  • 20. 20 Software for Domain Experts (SFDE) What we try to avoid businessballs.com Original drawing: J Oakland, 1989
  • 21. 21 Software for Domain Experts (SFDE) Domain Driven Design concepts Focus on the core domain Explore models Collaborate with domain practitioners Create and use a common language Systemic Approach principles Model and understand the domain and the context / Reduce complexity Establishes the common language Sustainable solutions Empathetic Software Process/Business Agility Bridge the gap between Business and IT Business Differentiation, Competitive advantage SFDE
  • 22. 22 Software for Domain Experts (SFDE) Thank You Panagiotis Papaioannou p.papaioannou@gmail.com
  • 23. DISCLAIMER This presentation is not a complete scientific work. It contains extracts from third-party works, some of which, though, make no explicit reference to the original source. It is provided as an information resource only and not for further use.