Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)

Cyrille Martraire
Cyrille MartraireAssociate at AROLLA en AROLLA
Living
Documentation
cyrille martraire!
@cyriux
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
And could improve
your code too?
a source of frustration
not enough
outdated
CONSUMING DOC
boring task
prefer coding
PRODUCING DOC
we can do better…
much better
Good Documentation also
leads to better Design
Passionate
developer
PARIS
Since 1999
!
@cyriux
Cyrille Martraire
Paris Software
Craftsmanship Community
http://www.meetup.com/paris-software-craftsmanship/
TDD
BDD
DDD
Legacy
Documentation
Documentation
(sorry)
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
USING MS OFFICE
*NOT* CODING
We love executable stuff
Documentation, usually.
Obsolete & Misleading
Not Agile
Documentation
Sucks
22
SO  WHY  U  TALK  
OF  DOC?
I’m happy with my life
I love my job
Back from nice vacations
I’m happy with my life
I love my family
We’ve happy with our little boy
And recently back from nice vacations
WHY MAKE LIFEMISERABLE?
WHY RUINTHIS CONFERENCEWITH THIS TOPIC?
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
If we adopt a new
mindset
What is
documentation?
Question:
What is
documentation?
What is
documentation?the purpose of
Not just Javadoc
Code Comments
MS Office
Passing Knowledge
to other people
Transmission
Passing Knowledge
to other people
Making Accessible
Passing Knowledge
for the future
Memory
Passing Knowledge
for the future
Compliance
KNOWLEDGE
KNOWLEDGE
KNOWLEDGE
KNOWLEDGE
DOCUMENTATION
NEEDED
Long-run
Critical
Large Audience
DOCUMENTATION
NEEDED
No Waste
Imagine
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
WHAT  FOR?
For Sarah
She’s joining
next week
Do  
you  really  need  
it  written?
What  about  
talking  &  answering  
questions?
CONVERSATIONS
High-Bandwidth
Just-In-Time
Interactive
CONVERSATIONS
OVER
DOCUMENTATION
This does not
Sound like working
MISSING
Trust
What about solving
these issues instead?
Documentation is only a symptom
Perhaps we could
pair-program?
or do mob-programming?
!
Working
Collectively
!
!
DOCUMENTATION
CODE
is
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
DDD!
Investing in
domain knowledge
55
Where  do  I  
put  that  stuff?
56
DDD  is  abstract!
Bounded Contexts
Explicitly define the context within which a model
applies. Explicitly set boundaries in terms of team
organization, usage within specific parts of the
application, and physical manifestations such as
code bases and database schemas. Keep the model
strictly consistent within these bounds, but don’t be
distracted or confused by issues outside.
How do I make it real?
Ubiquitous Language
A language structured around the domain model and
used by all team members to connect all the activities
of the team with the software.
How do I make it real?
Domain Model
A system of abstractions that describes selected
aspects of a domain and can be used to solve
problems related to that domain.
How do I make it real?
60
Where  do  I  
put  that  stuff?
Where  do  I  
put  that  stuff?
For  
realz?!
Documentation!
How do we get all this
knowledge about the domain?
Event Storming
workshops
DOMAIN
IMMERSION
Fleet Management for Parcel Delivery
Visit on the field
Conversations
”Live my life”
For new joiners
Domain Immersion
as part of the on-boarding process
DOCUMENTATION
Because we can often do better than
documentation
NO
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
How do I document
my understanding of the domain?
Investigation Wall
(aka Obsession Wall)
Fleet Management for Parcel Delivery
1M km/yr
What about competitors?
Commercial Leaflet
Website
Found docs
Online templates
Stable knowledge?
Easy.
EVERGREEN
DOCUMENT
What about
documenting the
behaviors?
What about
documenting the
behaviors?
Because business people
never change their mind
BDD
Scenarios
Intent
Scenarios
Concrete examples
Redundancy!
Redundancy!
What if one changes and not the other?
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
Living
Documentation
Living documentation
Free comments
Living documentation
Another example
@acceptance-criteria @specs @wip @fixedincome @interests
Living documentation
tags
@acceptance-criteria @specs @wip @fixedincome @interests
Living documentation
tags
@acceptance-criteria @specs @wip @fixedincome @interests
Carefully crafted business knowledge too
Interactive website
search by feature or tag
navigate by tag
navigate by feature / chapter
Living documentation
+ collocated markdown files
thx @aloyer
back to work now
Fraud detection mechanism
NAPKIN
SKETCH
Throw-Away
FueldCardTransaction received into
FuelCardMonitoring
FuelCardMonitoring queries Geocoding
FuelCardMonitoring queries GPSTracking
Geocoding converts address into
AddressCoordinates
GPSTracking provides VehicleCoordinates
VehicleCoordinates between GeoDistance
AddressCoordinates between GeoDistance
GeoDistance compared to DistanceThreshold
DistanceThreshold delivers AnomalyReport
diagrammr.com
FueldCardTransaction received into
FuelCardMonitoring
FuelCardMonitoring queries Geocoding
FuelCardMonitoring queries GPSTracking
Geocoding converts address into
AddressCoordinates
GPSTracking provides VehicleCoordinates
VehicleCoordinates between GeoDistance
AddressCoordinates between GeoDistance
GeoDistance compared to DistanceThreshold
DistanceThreshold delivers AnomalyReport
PLAIN-TEXT
DIAGRAM
In Source Control
Edit in any tool
Easy to diff
Easy to maintain
so what about the code?
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
Any Shameful
Comments?
Refactor!
!
!
DOCUMENTATION
CODE
is
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
Code
WHY U NOT
TALK OF DDD?
How do I materialize
The Bounded Contexts
in my code?
Bounded Contexts
are there
Bounded Contexts
are there
Implicitly
KNOWLEDGE
AUGMENTATION
Annotations
Bounded Contexts
Embedded Learning
Embedded Learning
Embedded Learning
Embedded Learning
Learn on the job
Carefully crafted
Ubiquitous Language
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
How do I represent
the Ubiquitous Language
in practice?
Ubiquitous Language
is there
Annotate domain-relevant classes
Source code as reference
LIVING
GLOSSARY
Living Glossary
Living
Glossary
Processor
Source Code
& Annotations
Living Glossary
always up-to-date
Custom Doclet to export Living Glossary
Bounded Context
comment
Core Concepts
Class comment
ANOTHER EXAMPLE
Sent directly to end customers every week
Design
Example:
Hexagonal Architecture
Domain Model inside
Infrastructure Outside
How do I document
the Design?
Well…
Literature is already
there
Alistair Cockburn
137
Literature is already
there
Ready-Made Documentation
Design is already there
Design is already there
Implicitly
Just rely on documented
naming conventions
*.domain!
*.infra!
NOT *Test
LIVING
DIAGRAM
Living Diagram
Living
Diagram
Processor
Source Code
Living Diagram
always up-to-date
145
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
CONTENT FILTERING
(CURATION)
is KEY
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
No Value
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
1 Diagram
1 Purpose
https://www.structurizr.com/ by Simon Brown
https://www.structurizr.com/
Moar
Living Documentation
Plz!
Runtime exports
Runtime exports
sum_{i=0}^{n}frac{ }{ }
1+rt
(1+r)^{t}
(1+r)^{frac{t_1 - t_0}{360}}
1+r.frac{t_1 - t_0}{365}
Runtime exports
sum_{i=0}^{n}frac{ }{ }
1+rt
(1+r)^{t}
(1+r)^{frac{t_1 - t_0}{360}}
1+r.frac{t_1 - t_0}{365}
etc.
Make tools
”DDD is primarily
about tools”
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
Avoid
Production Work!
(Sounds like MDA)
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
over-complicate documentation tools
over
over-complicate the production code
There’s more
Hard to do the Living
Glossary?
Hard to do the Living
Glossary?
A signal!
What happens to your
Ubiquitous Language
in the code?
Lost Translations Mixed
You may be doing DDD
wrong!
LISTEN TO THE
DOCUMENTATION
FRUSTRATIONS
Beyond Documentation
Listen to the
frustrations
Focus on
documentation
Improve the
product
Reality Check
176
My  code  is  good!
You  do  it  wrong!
These  
comments  suck!
Any Shameful
Comments?
Refactor!
Extract a word cloud
from your code BAD
Extract a word cloud
from your code Better
Hard to do the Living
Diagrams?
A signal!
Programming
by
Coincidence
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
Deliberate
Design
Know what you’re doing
->
Already half-documented
Example:
Hexagonal Architecture
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
OOPS!
Beyond Documentation
Ooops! This
is not what I
expected :(
1st generation
Fix the design
ANYBODY CAN !
APPRECIATE!
IT’S A MESS
PRESSURE TO !
IMPROVE DESIGN
Simpler Design
Less documentation needed
More standard
Less documentation needed
!
fogus
@fogus
Fix your workflow
Write code
Write tests
Write doc
Write tests = write doc
Write code = write doc
From Mikko Ohtamaa
How does it work with TDD?
Refactor until it looks good
Documentation Skills
==
Design Skills
COOL!
In Closing
https://leanpub.com/livingdocumentation
BUY MY BOOK!
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
”The only hope, then, for
producing good documentation
is to convince the programmer
that it will benefit him to do so.”	

@JerryWeinberg
Knowledge is already
there
It just wants to break free
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
Boring Documentation
is dead
Long Live Living
Documentation!
Not about particular
techniques
!
Reconsider dealing
with the knowledge
Share Your Ideas &
Experiments
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)
Follow me @cyriux
!
Slides: slideshare.net/cyriux
Blog: cyrille.martraire.com
!
In Paris? Join !
Merci
1 de 212

Recomendados

Refactor your specs! Øredev 2013 por
Refactor your specs! Øredev 2013Refactor your specs! Øredev 2013
Refactor your specs! Øredev 2013Cyrille Martraire
1.9K vistas182 diapositivas
Cyrille Martraire: Living Documentation Jumpstart at I T.A.K.E. Unconference ... por
Cyrille Martraire: Living Documentation Jumpstart at I T.A.K.E. Unconference ...Cyrille Martraire: Living Documentation Jumpstart at I T.A.K.E. Unconference ...
Cyrille Martraire: Living Documentation Jumpstart at I T.A.K.E. Unconference ...Mozaic Works
1.4K vistas132 diapositivas
Legacy Code: Evolve or Rewrite? por
Legacy Code: Evolve or Rewrite?Legacy Code: Evolve or Rewrite?
Legacy Code: Evolve or Rewrite?Cyrille Martraire
1.5K vistas103 diapositivas
DDD patterns that were not in the book por
DDD patterns that were not in the bookDDD patterns that were not in the book
DDD patterns that were not in the bookCyrille Martraire
5.3K vistas233 diapositivas
Domain Modeling towards First Principles por
Domain Modeling towards First PrinciplesDomain Modeling towards First Principles
Domain Modeling towards First PrinciplesCyrille Martraire
1.2K vistas282 diapositivas
Sunny Tech 2019 - Craft Forever por
Sunny Tech 2019 - Craft ForeverSunny Tech 2019 - Craft Forever
Sunny Tech 2019 - Craft ForeverCyrille Martraire
417 vistas232 diapositivas

Más contenido relacionado

Destacado

Domain-Driven Design in legacy application por
Domain-Driven Design in legacy applicationDomain-Driven Design in legacy application
Domain-Driven Design in legacy applicationCyrille Martraire
2.9K vistas100 diapositivas
Practical Use of a NoSQL Database por
Practical Use of a NoSQL DatabasePractical Use of a NoSQL Database
Practical Use of a NoSQL DatabaseIBM Cloud Data Services
552 vistas26 diapositivas
MongoDB y bluemix por
MongoDB y bluemixMongoDB y bluemix
MongoDB y bluemixVictor Cuervo
1.1K vistas38 diapositivas
Documentación por
DocumentaciónDocumentación
Documentaciónjmsarmientom
452 vistas17 diapositivas
Phpday - Automated acceptance testing with Behat and Mink por
Phpday - Automated acceptance testing with Behat and MinkPhpday - Automated acceptance testing with Behat and Mink
Phpday - Automated acceptance testing with Behat and MinkRichard Tuin
6.7K vistas66 diapositivas
El proceso de desarrollo con herramientas Open Source por
El proceso de desarrollo con herramientas Open SourceEl proceso de desarrollo con herramientas Open Source
El proceso de desarrollo con herramientas Open SourceJose Juan R. Zuñiga
1.1K vistas29 diapositivas

Destacado(20)

Domain-Driven Design in legacy application por Cyrille Martraire
Domain-Driven Design in legacy applicationDomain-Driven Design in legacy application
Domain-Driven Design in legacy application
Cyrille Martraire2.9K vistas
Phpday - Automated acceptance testing with Behat and Mink por Richard Tuin
Phpday - Automated acceptance testing with Behat and MinkPhpday - Automated acceptance testing with Behat and Mink
Phpday - Automated acceptance testing with Behat and Mink
Richard Tuin6.7K vistas
El proceso de desarrollo con herramientas Open Source por Jose Juan R. Zuñiga
El proceso de desarrollo con herramientas Open SourceEl proceso de desarrollo con herramientas Open Source
El proceso de desarrollo con herramientas Open Source
Jose Juan R. Zuñiga1.1K vistas
Gestión de requisitos y su trazabilidad en la Gestión de Servicios TI por OVERTI
Gestión de requisitos y su trazabilidad en la Gestión de Servicios TIGestión de requisitos y su trazabilidad en la Gestión de Servicios TI
Gestión de requisitos y su trazabilidad en la Gestión de Servicios TI
OVERTI828 vistas
M1 tema 1 deteccion de incendios quimica del fuego por jmsarmientom
M1 tema 1   deteccion de incendios quimica del fuegoM1 tema 1   deteccion de incendios quimica del fuego
M1 tema 1 deteccion de incendios quimica del fuego
jmsarmientom3.8K vistas
BDD + PHP = behat! por Vitor Mattos
BDD + PHP = behat!BDD + PHP = behat!
BDD + PHP = behat!
Vitor Mattos2.4K vistas
ALTKRAFT - a complex platform for marketing and comunication. por ALTKRAFT
ALTKRAFT - a complex platform for marketing and comunication.ALTKRAFT - a complex platform for marketing and comunication.
ALTKRAFT - a complex platform for marketing and comunication.
ALTKRAFT96 vistas
Cam 01 por waly123
Cam   01Cam   01
Cam 01
waly123201 vistas
Allison Ice Silversmithing Portfolio por Allison Ice
Allison Ice Silversmithing PortfolioAllison Ice Silversmithing Portfolio
Allison Ice Silversmithing Portfolio
Allison Ice52 vistas
Calendario 2017 de fechas importantes para tu plan de marketing por Elena Ortiz
Calendario 2017 de fechas importantes para tu plan de marketingCalendario 2017 de fechas importantes para tu plan de marketing
Calendario 2017 de fechas importantes para tu plan de marketing
Elena Ortiz93 vistas
AZUG FR - Meetup Nov 2016 @ Arolla por AZUG FR
AZUG FR - Meetup Nov 2016 @ ArollaAZUG FR - Meetup Nov 2016 @ Arolla
AZUG FR - Meetup Nov 2016 @ Arolla
AZUG FR595 vistas
SEMINARIO WEB - El ABC del Test Automation: ¿Qué, por qué, cuando y cómo? por Belatrix Software
SEMINARIO WEB - El ABC del Test Automation: ¿Qué, por qué, cuando y cómo?SEMINARIO WEB - El ABC del Test Automation: ¿Qué, por qué, cuando y cómo?
SEMINARIO WEB - El ABC del Test Automation: ¿Qué, por qué, cuando y cómo?
Belatrix Software 728 vistas
Instrumentation as a Living Documentation: Teaching Humans About Complex Systems por Brian Troutwine
Instrumentation as a Living Documentation: Teaching Humans About Complex SystemsInstrumentation as a Living Documentation: Teaching Humans About Complex Systems
Instrumentation as a Living Documentation: Teaching Humans About Complex Systems
Brian Troutwine4.5K vistas
About "Apache Cassandra" por Jihyun Ahn
About "Apache Cassandra"About "Apache Cassandra"
About "Apache Cassandra"
Jihyun Ahn4.5K vistas

Similar a Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)

A sweet taste of clean code and software design por
A sweet taste of clean code and software designA sweet taste of clean code and software design
A sweet taste of clean code and software designKfir Bloch
509 vistas46 diapositivas
DITA and Localization: Bringing the Best Together por
DITA and Localization: Bringing the Best TogetherDITA and Localization: Bringing the Best Together
DITA and Localization: Bringing the Best TogetherLavaCon
346 vistas34 diapositivas
Generative Design 101 for Architecture, Engineering & Construction by Jad Del... por
Generative Design 101 for Architecture, Engineering & Construction by Jad Del...Generative Design 101 for Architecture, Engineering & Construction by Jad Del...
Generative Design 101 for Architecture, Engineering & Construction by Jad Del...Jad DELLEL
2.4K vistas68 diapositivas
Brownfield Domain Driven Design por
Brownfield Domain Driven DesignBrownfield Domain Driven Design
Brownfield Domain Driven DesignNicolò Pignatelli
3.5K vistas42 diapositivas
BA and Beyond 20 - Elke Steegmans and David Vandenbroeck - Behaviour-driven d... por
BA and Beyond 20 - Elke Steegmans and David Vandenbroeck - Behaviour-driven d...BA and Beyond 20 - Elke Steegmans and David Vandenbroeck - Behaviour-driven d...
BA and Beyond 20 - Elke Steegmans and David Vandenbroeck - Behaviour-driven d...BA and Beyond
2.3K vistas49 diapositivas
Introduction to Azure DocumentDB por
Introduction to Azure DocumentDBIntroduction to Azure DocumentDB
Introduction to Azure DocumentDBDenny Lee
563 vistas57 diapositivas

Similar a Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)(20)

A sweet taste of clean code and software design por Kfir Bloch
A sweet taste of clean code and software designA sweet taste of clean code and software design
A sweet taste of clean code and software design
Kfir Bloch509 vistas
DITA and Localization: Bringing the Best Together por LavaCon
DITA and Localization: Bringing the Best TogetherDITA and Localization: Bringing the Best Together
DITA and Localization: Bringing the Best Together
LavaCon346 vistas
Generative Design 101 for Architecture, Engineering & Construction by Jad Del... por Jad DELLEL
Generative Design 101 for Architecture, Engineering & Construction by Jad Del...Generative Design 101 for Architecture, Engineering & Construction by Jad Del...
Generative Design 101 for Architecture, Engineering & Construction by Jad Del...
Jad DELLEL2.4K vistas
BA and Beyond 20 - Elke Steegmans and David Vandenbroeck - Behaviour-driven d... por BA and Beyond
BA and Beyond 20 - Elke Steegmans and David Vandenbroeck - Behaviour-driven d...BA and Beyond 20 - Elke Steegmans and David Vandenbroeck - Behaviour-driven d...
BA and Beyond 20 - Elke Steegmans and David Vandenbroeck - Behaviour-driven d...
BA and Beyond2.3K vistas
Introduction to Azure DocumentDB por Denny Lee
Introduction to Azure DocumentDBIntroduction to Azure DocumentDB
Introduction to Azure DocumentDB
Denny Lee563 vistas
Clean code is not the goal - working software is por Edorian
Clean code is not the goal - working software isClean code is not the goal - working software is
Clean code is not the goal - working software is
Edorian1.4K vistas
GDG Helwan Introduction to python por Mohamed Hegazy
GDG Helwan Introduction to pythonGDG Helwan Introduction to python
GDG Helwan Introduction to python
Mohamed Hegazy182 vistas
Serverless is a win for businesses, not just developers por Yan Cui
Serverless is a win for businesses, not just developersServerless is a win for businesses, not just developers
Serverless is a win for businesses, not just developers
Yan Cui993 vistas
Prashant technical practices-tdd for xebia event por Xebia India
Prashant   technical practices-tdd for xebia eventPrashant   technical practices-tdd for xebia event
Prashant technical practices-tdd for xebia event
Xebia India110 vistas
Achieving Technical Excellence in Your Software Teams - from Devternity por Peter Gfader
Achieving Technical Excellence in Your Software Teams - from Devternity Achieving Technical Excellence in Your Software Teams - from Devternity
Achieving Technical Excellence in Your Software Teams - from Devternity
Peter Gfader660 vistas
By Thoughtworks | Reviving the art of software design with Andy Marks and Pam... por IngridBuenaventura
By Thoughtworks | Reviving the art of software design with Andy Marks and Pam...By Thoughtworks | Reviving the art of software design with Andy Marks and Pam...
By Thoughtworks | Reviving the art of software design with Andy Marks and Pam...
IngridBuenaventura35 vistas
Building Business Success from Buzz Words por Chris Jackson
Building Business Success from Buzz WordsBuilding Business Success from Buzz Words
Building Business Success from Buzz Words
Chris Jackson758 vistas
Keeping Your DevOps Transformation From Crushing Your Ops Capacity por Rundeck
Keeping Your DevOps Transformation From Crushing Your Ops Capacity Keeping Your DevOps Transformation From Crushing Your Ops Capacity
Keeping Your DevOps Transformation From Crushing Your Ops Capacity
Rundeck1.7K vistas
Finding balance of DDD while your application grows por Carolina Karklis
Finding balance of DDD while your application growsFinding balance of DDD while your application grows
Finding balance of DDD while your application grows
Carolina Karklis357 vistas
.NET Architecture for Enterprises por Wade Wegner
.NET Architecture for Enterprises.NET Architecture for Enterprises
.NET Architecture for Enterprises
Wade Wegner1.7K vistas
DevOpsDays Jakarta Igites por DevOpsDaysJKT
DevOpsDays Jakarta IgitesDevOpsDays Jakarta Igites
DevOpsDays Jakarta Igites
DevOpsDaysJKT159 vistas
Modernizing i5 Applications por ZendCon
Modernizing i5 ApplicationsModernizing i5 Applications
Modernizing i5 Applications
ZendCon1.9K vistas

Más de Cyrille Martraire

Domain modeling for Digital Transformations (FlowCon Paris 2019 edition) por
Domain modeling for Digital Transformations (FlowCon Paris 2019 edition)Domain modeling for Digital Transformations (FlowCon Paris 2019 edition)
Domain modeling for Digital Transformations (FlowCon Paris 2019 edition)Cyrille Martraire
316 vistas212 diapositivas
Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2... por
Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...
Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...Cyrille Martraire
488 vistas238 diapositivas
Bounded Context - DDD Europe Foundation Track por
Bounded Context - DDD Europe Foundation TrackBounded Context - DDD Europe Foundation Track
Bounded Context - DDD Europe Foundation TrackCyrille Martraire
958 vistas123 diapositivas
DDD for real por
DDD for realDDD for real
DDD for realCyrille Martraire
1.9K vistas161 diapositivas
Les effets inattendus du passage en Features Teams à grande échelle -ScrumDay... por
Les effets inattendus du passage en Features Teams à grande échelle -ScrumDay...Les effets inattendus du passage en Features Teams à grande échelle -ScrumDay...
Les effets inattendus du passage en Features Teams à grande échelle -ScrumDay...Cyrille Martraire
189 vistas151 diapositivas
Refactor your Specs - 2017 Edition por
Refactor your Specs - 2017 EditionRefactor your Specs - 2017 Edition
Refactor your Specs - 2017 EditionCyrille Martraire
780 vistas192 diapositivas

Más de Cyrille Martraire(12)

Domain modeling for Digital Transformations (FlowCon Paris 2019 edition) por Cyrille Martraire
Domain modeling for Digital Transformations (FlowCon Paris 2019 edition)Domain modeling for Digital Transformations (FlowCon Paris 2019 edition)
Domain modeling for Digital Transformations (FlowCon Paris 2019 edition)
Cyrille Martraire316 vistas
Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2... por Cyrille Martraire
Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...
Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...
Cyrille Martraire488 vistas
Bounded Context - DDD Europe Foundation Track por Cyrille Martraire
Bounded Context - DDD Europe Foundation TrackBounded Context - DDD Europe Foundation Track
Bounded Context - DDD Europe Foundation Track
Cyrille Martraire958 vistas
Les effets inattendus du passage en Features Teams à grande échelle -ScrumDay... por Cyrille Martraire
Les effets inattendus du passage en Features Teams à grande échelle -ScrumDay...Les effets inattendus du passage en Features Teams à grande échelle -ScrumDay...
Les effets inattendus du passage en Features Teams à grande échelle -ScrumDay...
Cyrille Martraire189 vistas
Interviewing Domain Experts - Heuristics From the Trenches (DDD Europe 2016 M... por Cyrille Martraire
Interviewing Domain Experts - Heuristics From the Trenches (DDD Europe 2016 M...Interviewing Domain Experts - Heuristics From the Trenches (DDD Europe 2016 M...
Interviewing Domain Experts - Heuristics From the Trenches (DDD Europe 2016 M...
Cyrille Martraire868 vistas
I T.A.K.E. talk: "When DDD meets FP, good things happen" por Cyrille Martraire
I T.A.K.E. talk: "When DDD meets FP, good things happen"I T.A.K.E. talk: "When DDD meets FP, good things happen"
I T.A.K.E. talk: "When DDD meets FP, good things happen"
Cyrille Martraire8.3K vistas
Tour d'horizon de Domain-Driven Design Avril 2012 autour d'un retour d'expéri... por Cyrille Martraire
Tour d'horizon de Domain-Driven Design Avril 2012 autour d'un retour d'expéri...Tour d'horizon de Domain-Driven Design Avril 2012 autour d'un retour d'expéri...
Tour d'horizon de Domain-Driven Design Avril 2012 autour d'un retour d'expéri...
Cyrille Martraire1.4K vistas

Último

Fleet Management Software in India por
Fleet Management Software in India Fleet Management Software in India
Fleet Management Software in India Fleetable
11 vistas1 diapositiva
Generic or specific? Making sensible software design decisions por
Generic or specific? Making sensible software design decisionsGeneric or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisionsBert Jan Schrijver
6 vistas60 diapositivas
What Can Employee Monitoring Software Do?​ por
What Can Employee Monitoring Software Do?​What Can Employee Monitoring Software Do?​
What Can Employee Monitoring Software Do?​wAnywhere
21 vistas11 diapositivas
SAP FOR CONTRACT MANUFACTURING.pdf por
SAP FOR CONTRACT MANUFACTURING.pdfSAP FOR CONTRACT MANUFACTURING.pdf
SAP FOR CONTRACT MANUFACTURING.pdfVirendra Rai, PMP
11 vistas2 diapositivas
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx por
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptxanimuscrm
13 vistas19 diapositivas
WebAssembly por
WebAssemblyWebAssembly
WebAssemblyJens Siebert
33 vistas18 diapositivas

Último(20)

Fleet Management Software in India por Fleetable
Fleet Management Software in India Fleet Management Software in India
Fleet Management Software in India
Fleetable11 vistas
Generic or specific? Making sensible software design decisions por Bert Jan Schrijver
Generic or specific? Making sensible software design decisionsGeneric or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisions
What Can Employee Monitoring Software Do?​ por wAnywhere
What Can Employee Monitoring Software Do?​What Can Employee Monitoring Software Do?​
What Can Employee Monitoring Software Do?​
wAnywhere21 vistas
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx por animuscrm
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
animuscrm13 vistas
DSD-INT 2023 FloodAdapt - A decision-support tool for compound flood risk mit... por Deltares
DSD-INT 2023 FloodAdapt - A decision-support tool for compound flood risk mit...DSD-INT 2023 FloodAdapt - A decision-support tool for compound flood risk mit...
DSD-INT 2023 FloodAdapt - A decision-support tool for compound flood risk mit...
Deltares13 vistas
Cycleops - Automate deployments on top of bare metal.pptx por Thanassis Parathyras
Cycleops - Automate deployments on top of bare metal.pptxCycleops - Automate deployments on top of bare metal.pptx
Cycleops - Automate deployments on top of bare metal.pptx
DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ... por Deltares
DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ...DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ...
DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ...
Deltares9 vistas
Software evolution understanding: Automatic extraction of software identifier... por Ra'Fat Al-Msie'deen
Software evolution understanding: Automatic extraction of software identifier...Software evolution understanding: Automatic extraction of software identifier...
Software evolution understanding: Automatic extraction of software identifier...
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra... por Marc Müller
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra....NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
Marc Müller38 vistas
MariaDB stored procedures and why they should be improved por Federico Razzoli
MariaDB stored procedures and why they should be improvedMariaDB stored procedures and why they should be improved
MariaDB stored procedures and why they should be improved
Federico Razzoli8 vistas
A first look at MariaDB 11.x features and ideas on how to use them por Federico Razzoli
A first look at MariaDB 11.x features and ideas on how to use themA first look at MariaDB 11.x features and ideas on how to use them
A first look at MariaDB 11.x features and ideas on how to use them
Federico Razzoli45 vistas
Navigating container technology for enhanced security by Niklas Saari por Metosin Oy
Navigating container technology for enhanced security by Niklas SaariNavigating container technology for enhanced security by Niklas Saari
Navigating container technology for enhanced security by Niklas Saari
Metosin Oy8 vistas
Copilot Prompting Toolkit_All Resources.pdf por Riccardo Zamana
Copilot Prompting Toolkit_All Resources.pdfCopilot Prompting Toolkit_All Resources.pdf
Copilot Prompting Toolkit_All Resources.pdf
Riccardo Zamana6 vistas
DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge... por Deltares
DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge...DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge...
DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge...
Deltares16 vistas
DSD-INT 2023 - Delft3D User Days - Welcome - Day 3 - Afternoon por Deltares
DSD-INT 2023 - Delft3D User Days - Welcome - Day 3 - AfternoonDSD-INT 2023 - Delft3D User Days - Welcome - Day 3 - Afternoon
DSD-INT 2023 - Delft3D User Days - Welcome - Day 3 - Afternoon
Deltares13 vistas
DSD-INT 2023 European Digital Twin Ocean and Delft3D FM - Dols por Deltares
DSD-INT 2023 European Digital Twin Ocean and Delft3D FM - DolsDSD-INT 2023 European Digital Twin Ocean and Delft3D FM - Dols
DSD-INT 2023 European Digital Twin Ocean and Delft3D FM - Dols
Deltares7 vistas
Headless JS UG Presentation.pptx por Jack Spektor
Headless JS UG Presentation.pptxHeadless JS UG Presentation.pptx
Headless JS UG Presentation.pptx
Jack Spektor7 vistas
Software testing company in India.pptx por SakshiPatel82
Software testing company in India.pptxSoftware testing company in India.pptx
Software testing company in India.pptx
SakshiPatel827 vistas

Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Codeurs en Seine 2015)