Use Case 2: Employee Time Tracker
Project Summary
This application that’ll be used by employees to capture and track their tasks and working hours.
• The application should have the capability to add, edit and delete the task details that the
employee does during the day. Details to capture (but not limited to) are Employee name,
Role, Project, Date, Time duration, Task Category, Description. For example,
o John Doe, 25/04/2022 10-11AM, Meeting, Standup meeting with the team
o John Doe, 25/04/2022 11-01PM, Training, Hands-on training on Python, etc.
• The application should have the capability for RBAC (Role Based Access Control) i.e., Associate
and Admin users
• The application should have the capability to display the total duration (hours) for any of the
selection i.e., Daily, Weekly, and Monthly
• The application, for an Associate, should have the capability to display different charts based
on the following
o Daily tasks/hours of that employee as a Pie chart
o Weekly and monthly charts of that employee as Bar charts
• The application should have the capability for Admins to look at the Charts of a selected
Project/Employee (optional) on a Daily, Weekly, and Monthly basis
Technical Considerations
● User should be allowed to perform actions only based on their role
● User should not be allowed to add duplicate entries for the same date and time
● User should not be allowed to add a duration of more than 8 hours for any task
Instructions
● Create a very high-level design document
● Prepare a BOM (Bill of Materials) i.e., a list of software & hardware to be used
● Design and implement a well-modularized code
● Design a normalized database schema
● Only authenticated users should be allowed to access the application