BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Methodologies Content on InfoQ

  • Introducing DDD in a Project at “Which?”

    After failing with two proof of concept, mainly with scalability issues, when trying to renew their main website the business decided to take a more agile and incremental approach and in a restart of the project inspired by Domain-Driven Design (DDD) having developers talk with domain experts, Chris Patuzzo explains describing the principles of DDD in the context of a real project.

  • Six Ways of Improving Behaviour-Driven Development

    Remembering that automation is a side benefit and not the reason for BDD is one improvement to more closely follow the recommendations of BDD thought leaders, Joe Colantonio explains noticing six ways of improving work with a BDD mindset.

  • 10 Common DDD Mistakes to Avoid

    Not interacting with domain experts is one of a common set of mistakes done when using Domain-Driven Design (DDD), finding and correcting them early on may save a team time, Daniel Whittaker claims describing ten mistakes he regularly see developers do.

  • Udi Dahan on Reuse in Business Logic and Microservices

    Reuse has been a watch word for almost everything that has happened in system development during the last thirty years, but reuse is like cyanide; in really small portions it can be healthy, using it too much it starts doing a lot of damage, Udi Dahan claimed in his presentation giving a different perspective on business logic at this year’s DDD Exchange conference in London.

  • DDD, Events and Microservices

    To make microservices awesome Domain-Driven Design (DDD) is needed, the same mistakes made 5-10 years ago and solved by DDD are made again in the context of microservices, David Dawson claimed in his presentation at this year’s DDD Exchange conference in London.

  • Protocol-Oriented Programming in Swift

    At WWDC 2015, Dave Abrahams, of C++/Boost fame and now lead of the Swift Standard Library group at Apple, introduced Swift as a Protocol-oriented language, and showed how protocols can be used to improve your code.

  • DDD and Living Documentation

    Creating documentation is boring, it's often obsolete and misleading but with a new mindset both your documentation and code can improve, Cyrille Martraire explained in a presentation showing how to create living documentation when working with Domain-Driven Design (DDD) at this year’s DDD Exchange conference in London.

  • Eric Evans on DDD, Microservices and Boundaries

    There is tremendous value in microservices, probably giving us the best environment we have ever had for doing Domain-Driven Design (DDD), Eric Evans stated in his keynote at this year’s DDD Exchange conference in London. Iteration is the most important key to good design and microservices is the second attempt, after SOA, to get things right.

  • Domain-Driven Design the Wrong Way

    Applications claimed to have been built using Domain-Driven Design (DDD) in reality often consists of entities or DTOs separating data and logic together with services containing a mix of business and infrastructure logic, Gabriel Schenker states, noting that this also often applies early on to projects building new applications. Lack of knowledge is one major reason for this, Schenker believes.

  • Avoid a Canonical Data Model

    Standardizing on common models for business objects that are exchanged within an enterprise, e.g. Customer, Order and Product together with the attributes and associations they have, might seem compelling but for Stefan Tilkov this creation of Canonical Data Models (CDMs) is a horrible idea which he strongly advices against.

  • Clarifying Domain-Driven Design Using a Trading Application Example

    Domain-Driven Design (DDD) is an approach to building software emphasizing collaboration between domain experts, developers and others involved in order to meet business objectives, Naresh Bhatia explains introducing the DDD base concepts exemplifying with Bullsfirst, an example system of medium complexity from the financial trading domain.

  • Adoption of Agile in Eastern Europe

    The gap in agile adoption between Eastern Europe and the US and Western Europe is becoming smaller. Scrum is the most widespread framework, Kanban adoption is growing and SAFe, LeSS, DAD are trending. The way that companies are transitioning to agile is significantly different in Eastern Europe.

  • The Benefits of Microservices

    Gene Kim (moderator), Gary Gruver, Andrew Phillips and Randy Shoup have discussed some of the benefits of microservices in a recent online panel.

  • Behaviour-Driven Development Combined with Domain-Driven Design

    Behaviour-Driven Development (BDD) is very much about conversations and examples but there is a software design part that can be used to bring BDD and Domain-Driven Design (DDD) practices together, combining the conversional bits with a domain-focused design activity, Konstantin Kudryashov explains in a presentation.

  • Exploring the Causes of Problems with the Analysis of Competing Hypothesis Method

    The analysis of competing hypotheses (ACH) method can be used to evaluate multiple competing hypotheses when investigating problems. The method mitigates cognitive biases that humans experience when exploring the causes of problems.

BT