Skip to main content

Projects Data Model

The Project entity serves as a flexible container for organizing customer engagements. It bridges the gap between the business entity (Customer) and the technical entitlements (Subscriptions, Licenses).

Entity Relationship Diagram

Core Entities

Project (com.sureink.cloudmsa.model.project.Project)

The top-level grouping entity.

  • Key Fields:
    • name: The display name of the project.
    • studyTitle: Specific title for clinical or study-based engagements.
    • customerCode: Links the project to a specific Customer.
    • startDate / endDate: Defines the active period of the project.
    • projectBillingId: External reference for billing purposes.

Project Application (com.sureink.cloudmsa.model.project.ProjectApplication)

Represents a specific application or product usage context within a Project.

  • Key Fields:
    • productFamily: The family of products this application belongs to (e.g., SureClinical, SureInk).
    • siteCount / userCount: Metrics defining the scale of the application usage.
  • Relationships:
    • Parent: Belongs to one Project.
    • Licenses: Can be associated with multiple Licenses to enable features.

Relationships

Project to Subscription

  • Type: Many-to-Many
  • Description: A Project can be funded or enabled by multiple Subscriptions. Conversely, a single Subscription (e.g., a bulk license purchase) can apply to multiple Projects.

Project to Project Application

  • Type: One-to-Many
  • Description: A Project is composed of one or more Applications, allowing for granular tracking of different product usages within the same scope of work.