mirror of
https://github.com/jackyzha0/quartz.git
synced 2025-12-24 13:24:05 -06:00
71 lines
1.8 KiB
Markdown
71 lines
1.8 KiB
Markdown
---
|
|
title: "system-templates"
|
|
aliases:
|
|
tags:
|
|
- info201
|
|
---
|
|
|
|
<% tp.file.cursor(4) %>
|
|
# System templates
|
|
some standard patterns is system design
|
|
|
|
especially with respect to structural requirements
|
|
- database
|
|
- domain classes
|
|
- names of entites/classes may vary but pattern is the same
|
|
|
|
broadly similar structures for similar problem domains
|
|
- e.g., retaiol, scheduling, HR
|
|
- main difference mostly is small details
|
|
|
|
## the heirarchy
|
|

|
|
|
|
represents a chian of "containment" relationships
|
|
|
|
child and parent entities linked by FK (often composite)
|
|
|
|
examples
|
|
- division, department, employee
|
|
- student, programme enrolment, paper enrollment, assessment result
|
|
|
|
## the associative entity
|
|

|
|
|
|
resolution of a many-to-many relationship
|
|
|
|
associative entiteis may or may not have additional attributes.
|
|
|
|
## Headers/lines
|
|

|
|
|
|

|
|
|
|
head is associative with one or more other entities.
|
|
|
|
line is associated with only one thing
|
|
|
|
### parallel header lines
|
|

|
|

|
|
|
|
second example has more direct association between sale and shipment.
|
|
|
|
## general systems
|
|

|
|
dont always need all of the things
|
|

|
|

|
|
|
|
many more e.g., payroll, scheduling/timetabling, tracking
|
|
|
|

|
|
|
|
# summary
|
|
dont always need to create data model from scratch, need to adapt any template to suit your scenario
|
|
|
|
dont deinveltht the wheel
|
|
|
|

|
|
|