BT

New Early adopter or innovator? InfoQ has been working on some new features for you. Learn more

Capture - Embed - Protect, Guidelines for Domain-Driven Design

by Jan Stenberg on  Jul 07, 2017

When using the core philosophy and the practices of DDD as guidelines for software design and development, they can be summarized in three principles: Capture – Embed – Protect, Steven A. Lowe claimed in his presentation at this year’s DDD eXchange conference. Capture the domain model. Embed the model in the code. Protect the domain model from corruption from other domains.

Bringing the Domain Back to Software Development

by Jan Stenberg on  Feb 08, 2017

If you read the business press of today, you will find that the business side of the world sees IT as an impediment that holds them back. To overcome this, we need to shift focus from the machines to the domains and start reading and learning about the domains we are working in, David West noted in his presentation at the recent DDD Europe Conference in Amsterdam.

Eric Evans: Is Domain-Driven Design Beneficial for Software Development?

by Jan Stenberg on  Jun 16, 2016 1

The last couple of years the interest in Domain-Driven Design (DDD) has increased, Eric Evans noted in his keynote at the recent DDD eXchange conference in London. He thinks that we are in a time when developers care more about design, partially because we are working more with distributed systems where models have a higher value.

Working with Domain Experts in a DDD World

by Jan Stenberg on  May 31, 2016

Conversations with domain experts and the language used are central in Domain-Driven Design (DDD), but often this is hard because we don’t speak the same language, explained Cyrille Martraire in his presentation at the Domain-Driven Design Europe conference earlier this year when sharing his experiences working with domain experts in DDD-driven environments.

Aggregates, Entities and Value Objects in Domain-Driven Design

by Jan Stenberg on  Jan 31, 2015

Move as much as possible of the behaviour away from the Entities into Value Objects when working with Aggregates, As more behaviour is needed this is added as new value objects, Paul Rayner recommends in a series of blog posts covering aggregates, entities and value objects, all concepts from Domain-Driven Design (DDD).

Domain Modelling Using Event Storming

by Jan Stenberg on  Jun 25, 2014

By gathering all domain experts and developers in a room, provide them with a paper roll, lots of colored post-its and a facilitator they may in hours create the best model ever, Alberto Brandolini suggested at the recent DDD Exchange conference in London.

Using the Domain Driven Design Bounded Context Concept to Shrink a Large Domain Model

by Jan Stenberg on  Feb 26, 2013

Bounded Context concept from Domain Driven Design (DDD) can be used to divide a large model into smaller models using the Database Context (DbContext class) in Entity Framework (EF). Bounded Context creates smaller, more cohesive models with boundaries between models.

Greg Young on using Event Store as a Read Model

by Jan Stenberg on  Jan 29, 2013

Greg Young, the lead architect behind the Event Store, recently talked about the Projections Library in the Event Store and how it can be used as a Read Model. In his presentation Greg explained what the Projections Library is, together with its main use cases. He also presented a number of examples of practical use.

OpenXava 4.5 Supports JPA Inheritance Mapping and Automated Business Logic

by Srini Penchikala on  Aug 22, 2012

The latest version of OpenXava, a Java framework for rapid development of enterprise applications, supports all strategies of JPA inheritance mapping and the Automated Business Logic (ABL) library. OpenXava version 4.5 was released last month.

Interview: Eric Evans on the State of DDD

by dave West on  Jun 03, 2009

At QCon San Francisco, 2008, Eric Evans answers questions about his recent activities and the evolution of DDD. During the interview he responds to questions about the relationship of DDD to usability, to FIT and FITnesse type testing, technology tools, and domain-specific languages. He also speaks about the DDD community as a whole.

SOA and DDD

by Mark Little on  Feb 27, 2009 6

In a recent entry, Phillip Calcado asks the question "What Is A Service?" and then goes on to describe how the answer to this lies with Domain Driven Design and ensuring that all stakeholders in an SOA development share the same understanding.

Interview: Greg Young Discusses State Transitions in Domain-Driven Design and DDD Best Practices

by Srini Penchikala on  Jan 30, 2009 9

In this interview recorded at QCon San Francisco 2008 conference, Greg Young talked about how his team has been using Domain-Driven Design (DDD) concepts in their projects. He discussed how to manage domain state transitions in a Domain-Driven Design project. He also talked about Command Query Separation (CQS) design concept to keep the design cleaner and easier to test and maintain.

Is There a Symbiosis Between SOA and DDD?

by Boris Lublinsky on  Sep 15, 2008 7

As the complexity of the real-life problems grows, it becomes obvious that in order to solve them, it is often necessary to combine multiple techniques. One example of a good symbiotic relationship is that between Service Oriented Architecture (SOA) and Domain Driven Design (DDD).

Object Relational Mapping - User Case Studies

by Steven Robbins on  Jul 24, 2008 6

Roberto Zicari, from ODBMS.org, collected interviews and stories from several users of Object/Relational mapping technologies. The main point of the cases was around "impedance mismatch" between the object technology in the domain model and the relational technology in the data model.

Article: Domain Driven Design and Development In Practice

by Niclas Nilsson on  Jun 16, 2008 53

Domain-Driven Design is a subject where there currently are very few examples of how to actually do it in practice. In this article, Srini Penchikala gives you guidelines, practices, frameworks and tools that technical leads and architects can use in the effort of implementing a system in a Domain-Driven way.

BT