Designing systems around the business domain and events. These approaches help build flexible, scalable systems.