Mini Project - Task Management System

Mini Project: Task Management Application

Project Description:

Develop a simple command-line Task Management Application using Java Collections. The application should allow users to create tasks, assign them to categories, mark them as completed, and view tasks based on different criteria.

Features to Implement:

  1. Task Class:

    • Create a Task class with attributes like title, description, due date, category, and status (completed or pending).

  2. Task Manager:

    • Implement a collection (e.g., ArrayList) to manage tasks.

    • Provide functionalities to add new tasks, mark tasks as completed, and remove tasks from the list.

  3. Categories:

    • Allow users to assign tasks to different categories (e.g., Work, Personal, Shopping, etc.).

    • Provide options to view tasks based on categories.

  4. Task Display:

    • Implement functionality to display all tasks in the list.

    • Allow users to filter tasks based on their status (completed or pending).

  5. Task Details:

    • Provide an option to view detailed information about a specific task, including its description, due date, and category.

Additional Features (Optional):

  • Implement error handling and validation for user inputs.

  • Allow users to edit task details or mark them as incomplete.

  • Implement sorting functionalities based on due date or category.

  • Persist data using file I/O or serialization for future sessions.

Project Evaluation:

Your project will be evaluated based on the following criteria:

  • Correct implementation of classes and methods.

  • Proper use of Java Collections to manage tasks.

  • User-friendly interface with clear instructions and error handling.

  • Efficient filtering and sorting algorithms.

  • Ability to handle edge cases and unexpected inputs.

Last updated