Hi everyone !
So after finalising the mockups designs, the task was to understand the relationships between the different fields proposed for the grouping and filtering of projects and programs.
I worked on understanding the current database model and then designed the backend model (to be used mostly for the database design). The discussion and the final backend design is available here.
The backend design has been finalised after getting reviewed from the mentors.
So after finalising the mockups designs, the task was to understand the relationships between the different fields proposed for the grouping and filtering of projects and programs.
I worked on understanding the current database model and then designed the backend model (to be used mostly for the database design). The discussion and the final backend design is available here.
The backend design has been finalised after getting reviewed from the mentors.
Backend Design (mostly for Database) | |||
Relationship | Meaning | ||
Project | Program | 1 - n | A project can have a single program |
Project | Requesting Org | 1 - n | A project can be referenced by multiple requesting orgs |
Programs | Purpose | 1 - n | One to one relationship means that a single program can have multiple different purposes |
Project | Priority | 1 - 1 | A project will have a single priority (high, medium, low) |
Project | Status | 1 - 1 | A project will have a single status (open, draft, archived) |
Relationship | Meaning | ||
Program | Projects | 1 - n | One to n relationship means a single program can have different multiple projects |
Requesting Org | Projects | 1 - n | One to n relationship means a single requesting org can have different multiple projects |
Purpose (Crisis Support, Disaster Preparedness, etc) | Programs | n - 1 | n to one relationship means a single program can have different multiple purposes. |
Priority | Projects | 1 - n | One to n relationship means a single priority (high, medium low) can have different multiple projects |
Status | Projects | 1 - n | One to n relationship means a single status can have different multiple projects |
Now for the implementation part, I need to focus only on the Project - Program, Project - Requesting org, Programs - Purpose as the other two priority and status are implemented in the current homepage design.
Currently, I'm working on writing the model class for Program, and tests cases for testing the correct relationship between the projects and the program. Also working on writing the alembic scripts.
Cheers,
Nitika
No comments:
Post a Comment