0% found this document useful (0 votes)
261 views4 pages

Task Management System

The task management system allows users to create projects and tasks, assign team members, and track task status. It includes user authentication and authorization with admin, manager, and member roles. Projects have deadlines and milestones, and tasks have types, priorities, and due dates. The system uses multiple database tables with foreign keys to define relationships between users, projects, and tasks.

Uploaded by

shahzenk771
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
261 views4 pages

Task Management System

The task management system allows users to create projects and tasks, assign team members, and track task status. It includes user authentication and authorization with admin, manager, and member roles. Projects have deadlines and milestones, and tasks have types, priorities, and due dates. The system uses multiple database tables with foreign keys to define relationships between users, projects, and tasks.

Uploaded by

shahzenk771
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

Task Management System

Task Management System that goes beyond basic CRUD operations


and includes advanced features to manage tasks, projects, and user
roles. The system should be designed to handle complex
relationships between users, tasks, and projects.

User Management:
 Implement user authentication and authorization using Spring
Security.
 Define roles such as Admin, Project Manager, and Team
Member.
 Admins can manage user roles and permissions.

Project Management:
 Users can create projects and assign project managers.
 Project managers can add team members to projects.
 Define project deadlines and milestones.

Task Management:
 Tasks can be categorized into different types (e.g., feature, bug,
enhancement).
 Each task has a priority level, due date, and status.
 Implement a task assignment system, allowing project
managers to assign tasks to team members.
User Table:
 user_id (Primary Key)
 username
 password (hashed and salted)
 email
 role_id (Foreign Key Referencing Role Table)

Role Table:
 role_id (Primary Key)
 role_name (e.g., Admin, Project Manager, Team Member)

Project Table:
 project_id (Primary Key)
 project_name
 project_manager_id (Foreign Key referencing User Table)
 deadline
 milestones

Project Team Table:


 project_id (Foreign Key referencing Project Table)
 user_id (Foreign Key referencing User Table)

Task Table:
 task_id (Primary Key)
 task_name
 task_type (e.g., feature, bug, enhancement)
 priority (e.g., high, medium, low)
 due_date
 status
 project_id (Foreign Key referencing Project Table)

Task Assignment Table:


 task_id (Foreign Key referencing Task Table)
 assignee_id (Foreign Key referencing User Table)

Relationships are defined as:

 A User can have one Role, but a Role can be associated with
multiple Users. (One-to-Many relationship between Role and
User)

 A Project can have one Project Manager, but a Project Manager


can manage multiple Projects. (One-to-Many relationship
between User and Project)

 A Project can have multiple Team Members, and a Team


Member can be part of multiple Projects. (Many-to-Many
relationship between User and Project using the ProjectTeam
table)

 A Task is associated with one Project, but a Project can have


multiple Tasks. (One-to-Many relationship between Project and
Task)
 A Task can be assigned to one User, but a User can be assigned
multiple Tasks. (One-to-Many relationship between User and
Task using the TaskAssignment table)

You might also like