Modules of the Agile Project Management Context

SaaSOvation’s current Core Domain (2) is the Agile Project Management Context, so it makes sense to see how its Modules are designed.

The ProjectOvation team chose three top-level Modules: tenant, team, and product. Here’s the first:

com.saasovation.agilepm.domain.model.tenant     <<value object>> TenantId

Its contents are a simple Value Object, TenantId, that holds the unique identity of a specific tenant, which originates in the Identity and Access Context. In the case of this Module, just about all others in the model will depend on it. It’s essential for segregating one tenant’s objects from another’s. Yet, the dependency is acyclic. The tenant Module does not ...

Get Implementing Domain-Driven Design now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.