В рамках моей школьной программы по информатике, мне нужно создать программу на Java, которая будет взаимодействовать с базой данных MySQL для хранения информации об учителях, их доступности, преподаваемых предметах и расписании занятий. Программа должна обеспечивать эффективное хранение и поиск данных, а также реализовывать механизмы аутентификации и авторизации, чтобы только авторизованные пользователи могли получать доступ и изменять конфиденциальную информацию. Администрация сможет создавать и обновлять профили для каждого учителя, включая их контактную информацию, преподаваемые предметы, доступность и любые предпочтения или ограничения. Также необходимо разработать алгоритм, который будет предлагать замещающих учителей для классов на основе различных критериев, таких как доступность учителей и количество выполненных замен за последние две недели. 1. Система должна точно предлагать подходящих учителей для классов в зависимости от приоритета и доступности. 2. Система должна предлагать смену комнат в зависимости от преподаваемого предмета. 3. Система должна отображать вместимость помещения при каждой смене помещения. 4. Система должна эффективно разрешать конфликты, такие как дублирование заданий или отсутствие учителей, разрешая их автоматически, без ручного вмешательства. 6. Система должна обеспечивать безопасность и конфиденциальность конфиденциальных данных, соблюдая правила защиты данных и предотвращая несанкционированный доступ. 7. Система должна предоставлять четкую и полную документацию, помогающую пользователям выполнить установку, настройку и использование, а при необходимости доступна техническая поддержка. 8. Система должна отображать количество замен и наблюдений, сделанных учителем каждый раз, когда учитель доступен, чтобы избежать переутомления учителей. 9. Система должна исключать учителей предмета при наблюдении за экзаменом по предметам которые они сами ведут. 10. Система должна создавать список отсутствующих учителей 11. Система должна создавать список классов, задействованных в заменах.