Skip to content
This repository was archived by the owner on Feb 17, 2025. It is now read-only.

Domain Model

Bhalachandra Malghan edited this page Aug 20, 2019 · 1 revision

Models

  • User
  • Profile
  • ProfileSkill (join table)
  • Project
  • ProjectProfile (join table)
  • ProjectSkill (join table)
  • ProjectChangeRecord
  • Skill

Relationships

User

  • 1 - 1 Profile
  • 1 - * ProjectChangeRecord

Profile

  • 1 - 1 User
  • 1 - * ProjectProfile
  • 1 - * ProfileSkill

ProfileSkill

  • * - 1 Profile
  • * - 1 Skill

Project

  • 1 - * ProjectProfile
  • 1 - * ProjectSkill
  • 1 - * ProjectChangeRecord

ProjectProfile

  • * - 1 Profile
  • * - 1 Project

ProjectSkill

  • * - 1 Project
  • * - 1 Skill

ProjectChangeRecord

  • * - 1 Project
  • * - 1 User

Skill

  • 1 - * ProfileSkill
  • 1 - * ProjectSkill

Attributes

User

  • id
  • email
  • password

Profile

  • id
  • user_id
  • name
  • primary_role
  • contact_email
  • phone
  • slack_handle
  • rocketchat_handle

ProfileSkill

  • id
  • profile_id
  • skill_id
  • is_highly_skilled

Project

  • id
  • name
  • description
  • last_active [used by Scraping Service whenever Jira/Bitbucket/etc info changes]

ProjectProfile

  • id
  • profile_id
  • project_id
  • role

ProjectSkill

  • id
  • project_id
  • skill_id

ProjectChangeRecord

  • id
  • project_id
  • user_id
  • changed_attribute
  • old_value
  • new_value

Skill

  • id
  • name

Diagram

DomainModel_updated_2.png

Clone this wiki locally