Domain-Driven Design (DDD) is an approach for dealing with highly complex domains using a well thought-out domain model. This article explains DDD concepts using a real example. For a detailed description of the approach please refer to the Domain-Driven Design book by Eric Evans.
The example used in this article is Bullsfirst, a sample trading system built to demonstrate the use of best practices and patterns to solve real world problems. The diagram below shows the Bullsfirst vision. It consists of several system components built using a variety of technologies as a means of learning and evaluating different design approaches and platforms.
At a very high level, users can enter orders to buy and sell securities through a front-end. The orders are managed in an Order Management System (OMS), which is typically owned by a brokerage firm. The OMS places the orders in an Exchange where a matching engine matches them and executes trades. Before continuing, play with the live demo of the system to get a good feel for it.