Cyrille Martraire (@cyriux on Twitter) is a partner at Arolla (60 consultants), the founder of the Paris Software Craftsmanship community and a regular speaker in international conferences. With 15+ years of experience in startups, software vendors and banks, Cyrille still calls himself a developer. He's passionate about design in every aspect: TDD, BDD and in particular DDD. Cyrille also has an extensive knowledge of capital market finance developed at SG (twice), Engie, CACIB, Sungard and CME. He's also the author of the book Living Documentation on Leanpub.
As developers, we are often explained the business domain in a way that is corrupted by implementation concerns or past constraints. This is harmful. To achieve better domain models, we often have to reverse-engineer. Alternatively, we can also explore the domain from its first principles, which are the main concepts or assumptions that cannot be deduced from anything else.
Dependencies come in many forms, from binary libraries to JSON contracts for example. While they are necessary to build complex systems, dependencies are also the cause of a lot of headaches, and learning how to better deal with them makes your life less miserable in the long run.
Through this talk you'll explore the universe of dependencies in the light of Domain-Driven Design. From the good old Hexagonal Architecture and its variants, the dependencies between Tactical Patterns at small scale to Cohesive Mechanisms or the Levels of Responsibility at a larger scale, you'll discover guiding principles that you can use to improve your design taste for great good.
Full day workshop with Cyrille Martraire
If you prefer coding over writing documentation, then you’ll love Living Documentation! A Living Documentation changes at the same pace as software design and development, from establishment of business goals to capturing domain knowledge, creating architecture, designing software and coding. It builds on top of BDD and DDD, but it also has its own key principles and novels ways to dramatically improve your documentation at minimal extra cost by using well-crafted artifacts and judicious automation.
This workshop from Cyrille Martraire, the author of the book “Living Documentation” (Addison-Wesley Professional), will guide you on how to implement the approach in your projects. Even if you haven't read the book, this workshop is the right place to learn the main elements of a Living Documentation, step by step through a provided sample Java code base.
You will learn:
What you will need
A working Java 8 environment with Maven for two attendees The sample project (only using basic Java) will be available from github or from a USB key
Everyone has their own perspective on design, and I'm no exception. In this talk I will explore simple stuff explained in a complicated way, or the other way round, whichever is worse. For example I will talk about congruence as an essential quality of design, and salience as a life-saving approach for testing. Intimidating words indeed, but for real benefits!
Deep conversations with domain experts and careful attention to the language are central in software development and in particular in Domain-Driven Design (DDD). However it takes many years and many failures to get better at this game. Still, over time it is possible to extract a growing set of techniques and heuristics that can boost the effectiveness of the interviews with domain experts, to learn faster and converge quickly to better models. There are techniques and heuristics for asking better questions, listening carefully to words and other signals, and for managing credibility as a developer facing business experts. If you think all the above is important, then these interviewing techniques will improve your skills, step up the quality of your collaboration with your domain experts, and will provide benefits for better domain models. And if you find all that boring, then perhaps you could focus your career on Java EE instead.
Our conference is dedicated to providing a harassment-free conference experience for everyone, regardless of gender, gender identity and expression, age, sexual orientation, disability, physical appearance, body size, race, or religion (or lack thereof). We do not tolerate harassment of conference participants in any form. Sexual language and imagery is not appropriate for any conference venue, including talks, workshops, parties, Twitter and other online media. Conference participants violating these rules may be sanctioned or expelled from the conference without a refund at the discretion of the conference organisers.