Π Π°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
Ρ Π½ΡΠ»Ρ. ΠΠ½Π΅ Π½ΡΠΆΠ½Π° ΠΏΠΎΠΌΠΎΡΡ Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠΎΠΉ ΠΏΠΎ ΡΡΠ±Π΄. Π§ΡΠΎ Π½ΡΠΆΠ½ΠΎ Π΅ΡΡ: ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΈ ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅. ΠΠ°ΡΠΈΠ°Π½Ρ 7. ΠΠ°Π·Π° Π΄Π°Π½Π½ΡΡ
Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π·Π°Π΄Π°ΡΠ°ΠΌΠΈ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Developers ---------- developer_id SERIAL PRIMARY KEY full_name VARCHAR(100) email VARCHAR(100) position VARCHAR(100) hire_date DATE Projects -------- project_id SERIAL PRIMARY KEY project_name VARCHAR(100) description TEXT start_date DATE end_date DATE created_by INTEGER REFERENCES Developers(developer_id) Tasks ----- task_id SERIAL PRIMARY KEY task_name VARCHAR(255) description TEXT due_date DATE status VARCHAR(20) assigned_to INTEGER REFERENCES Developers(developer_id) project_id INTEGER REFERENCES Projects(project_id) created_at TIMESTAMP Sprints ------- sprint_id SERIAL PRIMARY KEY sprint_name VARCHAR(100) start_date DATE end_date DATE project_id INTEGER REFERENCES Projects(project_id) TaskComments ------------ comment_id SERIAL PRIMARY KEY task_id INTEGER REFERENCES Tasks(task_id) user_id INTEGER REFERENCES Developers(developer_id) comment_text TEXT commented_at TIMESTAMP Users ----- user_id SERIAL PRIMARY KEY username VARCHAR(50) email VARCHAR(100) password VARCHAR(100) role VARCHAR(50) created_at TIMESTAMP TaskAssignees ------------- assignee_id SERIAL PRIMARY KEY task_id INTEGER REFERENCES Tasks(task_id) developer_id INTEGER REFERENCES Developers(developer_id) TaskFollowers ------------- follower_id SERIAL PRIMARY KEY user_id INTEGER REFERENCES Users(user_id) task_id INTEGER REFERENCES Tasks(task_id) Meetings -------- meeting_id SERIAL PRIMARY KEY meeting_name VARCHAR(255) date DATE start_time TIME end_time TIME organizer_id INTEGER REFERENCES Developers(developer_id) ΠΠ±ΡΡΡΠ½Π΅Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡ: Developers: Π₯ΡΠ°Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°Ρ
, ΠΈΡ
Π΄ΠΎΠ»ΠΆΠ½ΠΎΡΡΡΡ
ΠΈ Π΄Π°ΡΠ΅ Π½Π°ΠΉΠΌΠ°. Projects: Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ
ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, Π²ΠΊΠ»ΡΡΠ°Ρ Π΄Π°ΡΡ Π½Π°ΡΠ°Π»Π° ΠΈ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΡ, ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΈ ΡΠΎΠ·Π΄Π°ΡΠ΅Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°. Tasks: Π₯ΡΠ°Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π·Π°Π΄Π°ΡΠ°Ρ
Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅, ΠΈΡ
ΡΡΠ°ΡΡΡΠ΅, Π΄Π°ΡΠ΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΈ Π΄ΡΡΠ³ΠΈΡ
Π΄Π΅ΡΠ°Π»ΡΡ
, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΠΈΡΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Ρ ΠΈ ΠΏΡΠΎΠ΅ΠΊΡ. Sprints: Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΏΡΠΈΠ½ΡΠ°Ρ
ΠΏΡΠΎΠ΅ΠΊΡΠ°. TaskComments: Π₯ΡΠ°Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΊ Π·Π°Π΄Π°ΡΠ°ΠΌ. Users: Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡ
ΡΠΈΡΡΠ΅ΠΌΡ. TaskAssignees: Π‘Π²ΡΠ·ΡΠ²Π°Π΅Ρ Π·Π°Π΄Π°ΡΠΈ Ρ ΠΈΡ
ΠΈΡΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠΌΠΈ. TaskFollowers: ΠΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡ
, ΡΠ»Π΅Π΄ΡΡΠΈΡ
Π·Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ Π·Π°Π΄Π°ΡΠΈ. Meetings: Π₯ΡΠ°Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΠ±ΡΠ°Π½ΠΈΡΡ
Π² ΡΠ°ΠΌΠΊΠ°Ρ
ΠΏΡΠΎΠ΅ΠΊΡΠ°.