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
Licensesto enable features.
- Parent: Belongs to one
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.