Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка_ОПИ.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
254.46 Кб
Скачать

4 Описание предметной области

Начальным этапом в курсовом проектировании является выбор и описание предметной области на естественном языке. В качестве примера приведем описание предметной области «Система электронного бронирования билетов Ж/Д».

Тема: Объектно-ориентированный анализ и проектирование программного обеспечения системы электронного бронирования билетов Ж/Д.

Билетная касса "railway.ua" представляет собой web-сайт системы бронирования билетов на различные поезда.

Для начала работы с системой клиенту необходимо зарегистрироваться на сайте системы, указав свои данные (ФИО, телефон, адрес электронной почты). Для доступа к системе используется логин (в качестве логина - адрес электронной почты) и пароль, который клиент указывает при регистрации.

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

Заказ билетов осуществляется на маршруты, до отправления которых осталось не более 45 суток и не менее 2 часов.

Клиент может получить информацию обо всех своих забронированных билетах с web-страницы кассы. В каждой заявке указаны: сведения о клиенте, сведения о поезде, количество и тип забронированных билетов с их стоимостью, дата заявки на бронирование, статус (забронирован / бронь аннулирована). По истечении 12 месяцев с момента создания брони данные автоматически удаляются из системы.

Система бронирования предоставляет пользователю исчерпывающую информацию о наличии мест в вагонах с учетом типа требуемых мест. В случае нехватки вагонов, происходит автоматическое добавление вагона требуемого типа (для этого на вокзале пункта отправления содержится информация о количестве запасных вагонов каждого типа).

Для каждого поезда указывается его тип (скорый/обычный), комфортабельность (с повышенной комфортабельностью/обычный), количество и типы вагонов (общий/плацкарт/купе/спальный вагон). Перечень станций маршрута с указанием времени прибытия, стоянки и отправления. Каждое место имеет параметры: номер, расположение (нижнее/верхнее/люкс).

В случае если до отправления поезда остается 2 часа и статус билета остается «забронирован» - происходит безвозвратная смена статуса на «бронь аннулирована» и забронированное место передается в обычную кассу для дальнейшей продажи.

Необходимо предусмотреть управление заявками в ручном режиме работниками администрации системы. В случае непредвиденного аннулирования брони, необходима возможность уведомления клиента об этом действии.

После описания предметной области, необходимо по методу Аббота сформировать словарь предметной области (см. табл. 4.1) и объектно-ориентированный словарь (см. табл. 4.2).

Таблица 4.1 – Пример оформления словаря предметной области

Существительное

Глагол

Прочее

касса

система

билет

клиент

телефон

адрес

маршрут

поезд

место

зарегистрироваться

просмотреть

забронировать

выбирает

получает

предоставляет

начальной

курсирующих

подходящий

необходимый

уникальный

После формирования словаря предметной области, на основе её данных строится объектно-ориентированный словарь предметной области. Следует учесть, что некоторые классы, свойства или методы можно ввести независимо от наличия соответствующих существительных и глаголов в предметной области. Примером может служить добавление в табл. 4.2 класса «Пользователь».

Таблица 4.2 – Пример оформления ОО словаря предметной области

Класс (сущность, актер)

Свойство (состояние)

Метод (функция)

Система бронирования

Время хранения заказов

Количество дней, за сколько разрешено бронирование

Время до отправления поезда для отмены брони

Регистрация клиента

Авторизация клиента

Удаление клиента

Поиск заказов клиента

Новая бронь

Информация о поездах

Выбор поезда

Информация о местах

Выбор места

Добавление вагона

Очистка базы от старых заказов

Сохранение новой брони

Аннулирование брони

Пользователь

Фамилия

Имя

Отчество

Номер телефона

E-mail

Пароль доступа

Продолжение таблицы 4.2

Класс (сущность, актер)

Свойство (состояние)

Метод (функция)

Клиент

Идентификатор

Заказы клиента

Новая бронь

Отмена заказа

Администратор

Идентификатор

Права доступа

Расписание работы

Класс «Пользователь» был введен как базовый для классов «Клиент» и «Администратор». Необходимость в выделении базового класса вызвана тем, что и администратор и клиент имеют общие свойства. Таким образом, оптимальным вариантом является выделение базового класса, содержащего общие методы и свойства, что было и сделано при создании ОО словаря.