pre-dev-data-model

Define abstract data models with entities, relationships, and ownership before technology selection.

205|26|Updated Oct 30, 2025
One-click install
npx skills add https://github.com/LerianStudio/ring --skill pre-dev-data-model
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: pre-dev-data-model
Source: https://github.com/LerianStudio/ring/tree/main/skills/pre-dev-data-model
Command: npx skills add https://github.com/LerianStudio/ring --skill pre-dev-data-model

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Jumping to database-specific schemas without conceptual data modeling leads to inconsistent structures, unclear ownership, schema conflicts, and migration nightmares. This skill enforces abstract data design.

Core Features & Use Cases

  • Entity Definition: Defines conceptual data objects, their attributes, types, and constraints.
  • Relationship Modeling: Models how entities connect (one-to-one, one-to-many, many-to-many) without using database-specific foreign keys.
  • Data Ownership: Explicitly assigns which component owns which data, preventing shared database anti-patterns.

Quick Start

The API Design is approved. Use the pre-dev-data-model skill to define our data structures.

Frequently Asked Questions about pre-dev-data-model

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I define a data model before choosing a database?

Data modeling starts with abstract entity and relationship definition independent of database technology. Define entities, their attributes with types, constraints, and how they connect (one-to-one, one-to-many, many-to-many) to capture functional requirements while deferring implementation choices.

What's the difference between conceptual data modeling and database schema design?

Conceptual data modeling captures entities, relationships, and ownership at an abstract level without database-specific constructs like foreign keys or table syntax. Schema design follows later, translating that model into a chosen database technology's specific structure.

How do I assign data ownership to prevent shared database problems?

Explicitly map which component owns which entity or data set during modeling. Clear ownership prevents anti-patterns like shared databases and ensures consistent data governance, lifecycle rules, and access patterns before technology selection.

When should I use data modeling for large initiatives?

Apply data modeling to initiatives with persistent data and interrelated entities where schema conflicts and migration risks are high. Early conceptual work guides data analysis, lifecycle rules, and access patterns, avoiding costly redesigns later.

Can I use data modeling without committing to a specific database technology?

Yes. Data modeling remains technology-agnostic by design, using abstract relationships and entity definitions. This approach lets you analyze requirements, model ownership, and validate structure before selecting a database platform.

What information should I capture in a data model?

Capture entities, attributes with types, constraints, relationships between entities, data quality rules, lifecycle requirements, data ownership boundaries, and access patterns. This complete specification satisfies functional requirements while remaining independent of implementation.