Domain-driven Design - Software Tools To Support Domain-driven Design

Software Tools To Support Domain-driven Design

Practicing DDD does not depend upon the use of any particular software tool or framework. Nonetheless, there is a growing number of open-source tools and frameworks that provide support to the specific patterns advocated in Evans' book or the general approach of DDD. Among these are:

  • Actifsource is a plug-in for Eclipse which enables software development combining DDD with model-driven engineering and code generation.
  • Apache Isis is a Java framework for developing domain-driven and RESTful applications using the Naked Objects pattern.
  • ECO (Domain Driven Design): Framework with database, class, code and state machine generation from UML diagrams by CapableObjects.
  • ManyDesigns Portofino is an open source, model-driven web-application framework for high productivity and maintainability. It provides CRUD forms, relationships, workflow management, dashboards, breadcrumbs, searches, single sign-on, permissions, and reporting.
  • OpenMDX: Open source, Java based, MDA Framework supporting Java SE, Java EE, and .NET. OpenMDX differs from typical MDA frameworks in that "use models to directly drive the runtime behavior of operational systems".
  • OpenXava: Generates an AJAX application from JPA entities. You only need to write the domain classes to obtain a ready to use application.
  • Restful Objects is a standard for a Restful API onto a domain object model (where the domain objects may represent entities, view models, or services). Two open source frameworks (one for Java, one for .NET) can create a Restful Objects API from a domain model automatically, using reflection.

Read more about this topic:  Domain-driven Design

Famous quotes containing the words tools, support and/or design:

    Man is a tool-using animal.... Without tools he is nothing, with tools he is all.
    Thomas Carlyle (1795–1881)

    All experience teaches that, whenever there is a great national establishment, employing large numbers of officials, the public must be reconciled to support many incompetent men; for such is the favoritism and nepotism always prevailing in the purlieus of these establishments, that some incompetent persons are always admitted, to the exclusion of many of the worthy.
    Herman Melville (1819–1891)

    Joe ... you remember I said you wouldn’t be cheated?... Nobody is really. Eventually all things work out. There’s a design in everything.
    Sidney Buchman (1902–1975)