Write a Java program that simulates a meeting reservation system. The program shall allow the user to select from the following options: Create a new meeting Show meetings on the calendar Clear all meetings Each meeting has a subject, start day/time and end day/time Subject is a short text description of the meeting Day is a date that contains month, day, and year Meeting times need only deal with hour and minute When the user wants to create a new meeting, the program asks for the subject, start and end day/times for it and adds it to the calendar For the basic requirements, meetings are not allowed to overlap. If a meeting the user wants to schedule overlaps with an existing meeting, the program presents an error message showing which meeting the one the user wants to schedule overlaps with When the user wants to show all meetings for the week, the report displays all meetings each day as follows Show all meetings in chronological order At the end of the report, show a tally of all meetings scheduled in each day and a count of all the meetings that have been scheduled When the user wants to clear meetings for the week, all meetings scheduled are deleted   Technical requirements: You must have at least one array of objects Assume the user will enter data correctly with valid start and end day/times   The program must support 2 types of meetings Standard meetings have attributes already described in part one of these requirements (title, start date/time, and end date/time) Urgent meetings are meetings that also have a priority level of either 0 or 1 and have the following rules when scheduling them: If the user schedules an urgent meeting level 1 and it overlaps with a standard meeting(s), the program asks the user if they want to remove the standard meeting(s) and if so, the urgent meeting is scheduled and the standard is/are removed If the user schedules an urgent meeting level 0, the same rule applies as well as may take over urgent meetings that are level 1 If the user schedules an urgent meeting that overlaps with another urgent meeting of the same priority level, an error message is displayed following the same rule as described in requirement 3a)   Update your meeting report function to also show counts of standard and urgent meetings in a day and in total   Each meeting now also has a numeric ID automatically assigned with each new meeting scheduled. Each meeting instance must be a different ID number   Allow the user to delete individual meetings from the calendar. When the user wants to do this, the program asks the user for the ID of the meeting. If the meeting is found from the ID, the program shows the meeting to the user and first asks, “Are you sure you want to remove this?” The meeting is removed if the user confirms deleting it   Allow the user to update individual meetings from the calendar. When the user wants to do this, the program asks the user for the ID of the meeting. If the meeting is found from the ID, the program shows the meeting to the user and allows the user to enter new information about the meeting. If the start or end times change, the rules for meetings not overlapping still apply   Incorporate usage of days of the week to identify meetings on Mondays, Tuesdays, etc.   Generate your own set of reporting capabilities such as (and not limited to): Showing meetings for the week Meeting metrics such as longest meeting in a day, week, month, or year Calculate percentage of time spent in meetings Other ideas…   Allow for meeting adjustments such that if a new meeting to be scheduled is overlaps with another, then instead of removing the lower priority or standard meeting, ask the user if they want to change the lesser meeting to start or stop such that it no longer overlaps

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

Write a Java program that simulates a meeting reservation system.

  • The program shall allow the user to select from the following options:
    1. Create a new meeting
    2. Show meetings on the calendar
    3. Clear all meetings
  • Each meeting has a subject, start day/time and end day/time
    1. Subject is a short text description of the meeting
    2. Day is a date that contains month, day, and year
    3. Meeting times need only deal with hour and minute
  • When the user wants to create a new meeting, the program asks for the subject, start and end day/times for it and adds it to the calendar
    1. For the basic requirements, meetings are not allowed to overlap. If a meeting the user wants to schedule overlaps with an existing meeting, the program presents an error message showing which meeting the one the user wants to schedule overlaps with
  • When the user wants to show all meetings for the week, the report displays all meetings each day as follows
    1. Show all meetings in chronological order
    2. At the end of the report, show a tally of all meetings scheduled in each day and a count of all the meetings that have been scheduled
  • When the user wants to clear meetings for the week, all meetings scheduled are deleted

 

Technical requirements:

  1. You must have at least one array of objects
  2. Assume the user will enter data correctly with valid start and end day/times

 

  • The program must support 2 types of meetings
    1. Standard meetings have attributes already described in part one of these requirements (title, start date/time, and end date/time)
    2. Urgent meetings are meetings that also have a priority level of either 0 or 1 and have the following rules when scheduling them:
      1. If the user schedules an urgent meeting level 1 and it overlaps with a standard meeting(s), the program asks the user if they want to remove the standard meeting(s) and if so, the urgent meeting is scheduled and the standard is/are removed
      2. If the user schedules an urgent meeting level 0, the same rule applies as well as may take over urgent meetings that are level 1
  • If the user schedules an urgent meeting that overlaps with another urgent meeting of the same priority level, an error message is displayed following the same rule as described in requirement 3a)

 

  • Update your meeting report function to also show counts of standard and urgent meetings in a day and in total

 

  • Each meeting now also has a numeric ID automatically assigned with each new meeting scheduled. Each meeting instance must be a different ID number

 

  • Allow the user to delete individual meetings from the calendar. When the user wants to do this, the program asks the user for the ID of the meeting. If the meeting is found from the ID, the program shows the meeting to the user and first asks, “Are you sure you want to remove this?” The meeting is removed if the user confirms deleting it

 

  • Allow the user to update individual meetings from the calendar. When the user wants to do this, the program asks the user for the ID of the meeting. If the meeting is found from the ID, the program shows the meeting to the user and allows the user to enter new information about the meeting. If the start or end times change, the rules for meetings not overlapping still apply

 

  • Incorporate usage of days of the week to identify meetings on Mondays, Tuesdays, etc.

 

  • Generate your own set of reporting capabilities such as (and not limited to):
    1. Showing meetings for the week
    2. Meeting metrics such as longest meeting in a day, week, month, or year
    3. Calculate percentage of time spent in meetings
    4. Other ideas…

 

  • Allow for meeting adjustments such that if a new meeting to be scheduled is overlaps with another, then instead of removing the lower priority or standard meeting, ask the user if they want to change the lesser meeting to start or stop such that it no longer overlaps

 

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 4 steps with 5 images

Blurred answer
Knowledge Booster
Random Class and its operations
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education