Domain Driven Design
DDD is a set of principles and schemas aimed at creating optimal systems of objects. The development process boild down to creating abstractions called domain models. These models include business logic that links the actual conditions of a product’s application to code.
The DDD approach is especially useful when the developer is not an expert in the product being developed. Through a domain-specific approach, a developer can easily design an application based on key-points and knowledge of the work area.