Todo Application (1 Week) : 2.1 Required Tasks
Todo Application (1 Week) : 2.1 Required Tasks
1. Assignment Goals
1. Development of ToDo application for management ToDo lists;
2. Development of machine usable CLI tool for access to core system functionality.
2. Assignment Description
2.1 Required Tasks
Authentication
Storty 1. As a User I need to be able to log into the ToDo application with my
username and password.If this is the first execution of the application and there are
no users in the database I need to be able to log-in with the following user:Username:
adminPassword: adminpass
Users Management
Story: 7.As a User I need to be able to access the ToDoLists Management View where I
can access all ToDo lists that are created by me or are shared with me -list all ToDo
lists, create, edit and delete a ToDo list.
Story: 8. As a User I need to be able to create a ToDo list and persist the following
information:IdTitleDate of creationId of the creatorDate of last changeId of the user
that did the last change
Story: 9. As a User I need to be able to delete a ToDo list by Id. If the ToDo list is
not created by me (is shared with me by another user) then the delete action removes
the share.
Story: 10. As a User I need to be able to edit a ToDo list by Id by providing the
following information:IdTitle(Date of creation and Id of the creator remain unchanged)
(Date of last change and Id of the user that did the last change are updated
automatically)
Story: 11.As a User I need to be able to share a ToDo list with other users.
Task Management
Story: 12.As a User I need to be able to access the Tasks Management View where I can
access all Tasks from a single ToDo listthat is either created by me or is shared with
me. I should be able to list all Tasks in the ToDo list, create, edit and delete a
Task in the ToDo list.
Story: 13.As a User I need to be able to create a Task in a ToDo list and persist the
following information:IdId of the List (the Id of the ToDo list that the Task belongs
to)TitleDescriptionIsCompleteDate of creationId of the creatorDate of last changeId of
the user that did the last change
Story: 15.As a User I need to be able to edit a Task by Id by providing the following
information:IdTitleDescriptionIsComplete(Date of creation and Id of the creator remain
unchanged)(Date of last change and Id of the user that did the last change are updated
automatically)
Story: 16.As a User I need to be able to assign a Task to one or more Users in the
system that have access to the ToDo list that the Task belongs to.
Story: 17.As a User I need to be able to complete a Task by Id through a fast access
menu in the Task Management View.
3. Assignment Grading
In all the assignments, writing quality code that builds without warnings or errors,
and then testing the resulting application and iterating until it functions properly
is the goal.Here are the most common reasons assignments receive low points:•Project
does not build.
One or more items in the Required functionalities section was not satisfied.
A fundamental concept was not understood.
Project does not build without warnings.
Code Quality -Your solution is difficult (or impossible) for someone reading
the code to understand due to:
Code is visually sloppy and hard to read (e.g. indentation is not
consistent, etc.).
No meaningful variable, method and class namesoNot following Java code
styleguidesoOver/under used methods, classes, variables, data structures
or code comments.
Assignment is not submitted as per Assignment Submission section below.
4. Assignment Submission
Create a GitHub repo that you have to use through all of the working process. Use
branches and create meaningful commits. Add your teacher as collaborator to your repo.
Deadline: 10.09.2022