Skip to content

Latest commit

 

History

History
89 lines (71 loc) · 5.7 KB

README.md

File metadata and controls

89 lines (71 loc) · 5.7 KB

Detailed Specification

  1. Requirements:

    • Name of system: Hatchi
    • Inspiration: The Pomodoro method is a productivity technique developed by Francesco Cirillo in the 1980s. It involves breaking work into focused, 25-minute intervals known as 'Pomodoros', separated by short breaks. After four Pomodoros, a longer break is taken. The method is designed to help users manage their time more effectively, stay focused and avoid distractions, and maintain a consistent level of productivity throughout the day.
    • Purpose: Help users
      • Users can develop time managment and planing skill to optimize their tasks.
      • Create good habits of planning and organizing work.
      • Improve morale and concentration in study and work.
      • Arange all tasks very scientifically through time limits. The job was quickly completed.
    • User: Everyone, mostly students
    • Features:
      • SignIn: login account with username and password. If user has role as 'US', the web will move to simon page. If user has role as 'AD', the web will move to admin page.
      • SignUp: create new account with username, password and email.
      • Timer page: implement the Pomodoro timer feature - allow users to set a timer for 25 minutes and start a countdown. When the timer ends, pause the timer and display a message to the user to take a break, along with offering rewards. Besides, user can set a timer wit the time they want.
      • Implement the reward system: allow users to select a reward that they would like to earn after completing a task. The rewards could be in the form of points, or virtual items.
      • The virtual shop: Users should be able to make the purchase using the virtual currency they have earned.
      • Analysis time user system: Use this data to provide users with insights and analysis about their productivity. For example, display graphs or charts that show the user's work patterns over time, or provide recommendations for improving their productivity based on their data.
      • Admin page: manage users, items in shop and tags: show the list and edit, delete, add, search items in list.
  2. Wireframe Sitemap diagram

Client wirefram .SignUp signUp

.SignIn signIn

  • User:

.Timer timer

.Simon simon

.Store store01 store02

.Analysis image image image

.Setting setting

  • Admin: .User management admin_userManage01 admin_userManage02 admin_userManage03

    .Item management admin_productManage01 admin_productManage02 admin_productManage03

    .Tags management admin_tagManage01 admin_tagManage02 admin_tagManage03

  1. Database: Untitled
  2. Conclusion:
  • What we learnt:
    • Working in a team when building a web app, dividing tasks to minimize conflicts
    • Working in a team with Agile & Scrum model to achieve the planned progress
    • Understanding how a web app works and its layout.
    • Understanding MVC Model 2 to make web app maintenance easier.
    • Learned additional programming techniques:
      • Pagination to divide a list into smaller lists and navigate between pages
      • Ajax to avoid reloading the page
      • Quartz to create a scheduler for the chart component.
  • What we failed:
    • Haven't implemented password hashing
    • There is no error notification when logging in or creating an account
    • Missing a chart before the reporting date. However, it was completed on March 24th.
    • No restrain when deleting tags