Skip to content

Latest commit

 

History

History

model

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

Model

The business data model of the whiteboard consists of the following entities:

  • A room: Contains whiteboards and widgets.
  • A widget: Displays a single whiteboard at a time, but users can switch between which whiteboard is displayed.
  • A whiteboard: A collection of slides that belong to each other.
  • A slide: A canvas that the user draws multiple elements on.
  • An element: A shape that has properties like position, color, … that is placed on a slide.
┌────────────────────┐
│                    │
│  Room              ├────────────┐
│                    │   1:n      │
└───┬────────────────┘            │
    │                             │
    │ 1:n                         │
    ▼                             ▼
┌────────────────────┐        ┌─────────────────────┐
│                    │        │                     │
│  Widget            ├───────►│  Whiteboard         │
│                    │ n:0..1 │                     │
└────────────────────┘        └───┬─────────────────┘
                                  │
                                  │  1:n
                                  ▼
                              ┌─────────────────────┐
                              │                     │
                              │  Slide              │
                              │                     │
                              └───┬─────────────────┘
                                  │
                                  │  1:n
                                  ▼
                              ┌─────────────────────┐
                              │                     │
                              │  Element            │
                              │                     │
                              └─────────────────────┘

Due to the architecture of the whiteboard, we have different communication and storage protocols. Each of these protocols uses its own set of models: