Skip to content

Latest commit

 

History

History
52 lines (39 loc) · 5.65 KB

File metadata and controls

52 lines (39 loc) · 5.65 KB

avia

На странице представлена информация по заданию SummaryTask4.

Задание

Задача сформулирована следующим образом.

Разработать WEB-приложение, которое поддерживает заданную функциональность. Требования к реализации следующие:

  1. На основе сущностей предметной области создать классы которые им соответствуют.
  2. Классы и методы должны иметь именования, которые отражают их функциональность, и должны быть грамотно разнесены по пакетам.
  3. Оформление кода должно соответствовать Java Code Convention.
  4. Информацию о предметной области хранить в базе данных (в качестве СУБД рекомендуется использовать MYSQL).
  5. Для доступа к данным использовать API JDBC с использованием пула соединений (не допускается использование ORM Hibernate. Toplink и т.д.).
  6. Приложение должно поддерживать работу с кириллицей (быть мноrоязычным), в том числе при харнение информации в БД:
  • должна быть возможность переключения языка интерфейса;
  • должна быть поддержка ввода, вывода и хранения информации (в БД), записанной на разных языках(см. ниже);
  • в качестве поддерживаемых языков выбрать минимум два: один на основе кириллицы, другой на основе латиницы.
  1. Архитектура приложения должна соответствовать шаблону MVC.
  2. При реализации алгоритмов Бизнес-погики использовать шаблоны.
  3. Используя сервлеты и JSP, реализовать функциональность, приведенную в постановке задачи.
  4. B качестве контейнера сервлетов использовать Apache Tomcat.
  5. На страницах JSP применять теги из библиотеки JSTL и разработанные собственные теги (минимум один сustom tag library тег и минимум один tag file тег).
  6. При разработке использовать сессии, фильтры, слушатели.
  7. Использовать журналирование событий с использованием библиотеки Log4j или Logback.
  8. Код должен содержать комментарии документатора (все классы верхнего уровня, нетривиальные методы и конструкторы).
  9. Написать модульные тесты которые по максимуму покрывают функциональность.
  10. Самостоятельное расширение постановки задачи по функциональности приветствуется.

Дополнительно, к требованиям изложенным выше, более чем желательно обеспечить выполнение следующих требований.

  1. Реализовать разграничение прав доступа пользователей системы к компонентам приложения.
  2. Реализовать защиту от повторной отправки данных на сервер при обновлении страницы.
  3. Все поля ввода должны быть с валидацией данных.

Далее идет словесное описание бизнес области (у каждого своя область).

Авиакомпания

Авиакомпания имеет перечень Рейсов, для которого необходимо реализовать:

  • поиск рейса по номеру;
  • выборку рейса по параметрам 'Откуда', 'Куда', 'Дата вылета';
  • сортировку рейсов по номеру, названию.

Диспетчер формирует летную Бригаду на рейс (пилоты, штурман, радист, стюардессы) и управляет статусом рейса. В случае проблем с формированием бригады на рейс диспетчер может отправить Заявку Администратору.

Администратор управляет (должна быть возможность добавления, удаления, редактирования):

  • списком рейсов (может добавить/удалить рейс, редактировать информацию о нем);
  • списком персонала (может добавить/удалить работника, редактировать информацию о нем).

Также администратор рассматривает заявки диспетчера и закрывает их с одним из статусов (выполнена, отклонена).