
- •Изучение объектно-ориентированного подхода к проектированию информационных систем
- •1.1 Методологии разработки и проектирования ис
- •1.3 Основы языка uml
- •1.3.1 Диаграмма вариантов использования
- •1.3.2 Диаграмма классов
- •1.3.3 Диаграммы кооперации и последовательности
- •1.3.4 Диаграммы состояний и деятельности
- •1.3.5 Диаграммы компонентов и развертывания
- •2.1 Глоссарий
- •2.2 Концептуальная модель системы
- •2.2.1 Диаграмма вариантов использования
- •2.2.2 Диаграмма классов
- •2.3 Анализ поведения системы
- •2.3.1 Диаграммы кооперации и последовательности
- •2.3.2 Диаграммы состояний и деятельности
- •2.4 Физическая модель
2.3 Анализ поведения системы
Проведем анализ поведения созданной нами информационной системы: построим диаграммы кооперации, последовательности для варианта использования «Проход через турникет», а также диаграммы состояний и деятельности для модели турникета.
2.3.1 Диаграммы кооперации и последовательности
На диаграммах кооперации и последовательности нам необходимо отобразить объекты классов, которые обмениваются сообщениями между собой во время работы турникета, а также главное действующее лицо - пассажира.
Добавим на диаграмму актера «Пассажир» и объекты классов «Устройство чтения карточки», «Устройство индикации прохода», «Устройство подачи звуковых сигналов», «Датчики движения», «Устройство перекрывания доступа», «Таймер», «Транзакция турникета».
Также сразу определим сообщения, которыми обмениваются объекты, их направление и очередность:
прочитать идентификатор карточки (пассажир, вставляя карточку в приемник отправляет сообщение на устройство чтения);
проверить идентификатор карточки (контроллер турникета передает сообщение на контроллер метро для проверки действительности карты);
создать новую транзакцию;
проверить количество единиц (контроллер турникета передает сообщение на контроллер метро для проверки баланса пассажира);
проверить срок годности (контроллер турникета передает сообщение на контроллер метро для проверки срока годности карты);
списать единицу со счета пассажира (контроллер турникета передает сообщение на контроллер метро для списания единицы с баланса);
вернуть карточку (контроллер турникета передает сообщение на устройство чтения карточки для возврата ее владельцу);
отсчитывать 5 секунд (контроллер турникета посылает сообщение на таймер для отсчета времени);
зажечь индикатор «Проход» (контроллер турникета посылает сообщение на устройство индикации);
подать звуковой сигнал (контроллер турникета посылает сообщение на устройство подачи звуковых сигналов);
открыть доступ (контроллер турникета посылает сообщение на устройство перекрывания доступа);
пройти через турникет (пассажир, пройдя через турникет, посылает сообщение о проходе на датчики движения);
определить проход пассажира (контроллер турникета посылает сообщение на датчики для регистрации прохода пассажира);
фиксировать время прохода (контроллер турникета посылает сообщение на таймер для фиксации времени прохода);
зажечь индикатор «Стоп» (контроллер турникета посылает сообщение на устройство индикации);
перекрыть доступ (контроллер турникета посылает сообщение на устройство перекрывания доступа);
закрыть транзакцию.
Конечный вид диаграмм кооперации и последовательности представлены на рисунках 3 и 4.
Рисунок 3 - Диаграмма кооперации для модели управления турникетом
Рисунок 4 - Диаграмма последовательности для модели управления турникетом
2.3.2 Диаграммы состояний и деятельности
Опишем возможные последовательности состояний и переходов, которые в совокупности характеризуют поведение турникета в течение всего периода его работы.
В своем обычном состоянии турникет ожидает карточку метрополитена. Когда ее вставляют в приемник, турникет начинает ее проверку, если карточка проверку не проходит, то приемник возвращает ее владельцу, иначе начинает обработку запроса на проход и открывает доступ пассажиру в метрополитен, затем возвращает карту.
Представим описанный принцип действия в виде диаграммы состояний (Рисунок 5).
Рисунок 5 - Диаграмма состояний модели турникета
Для построения диаграммы деятельности мы должны определить все действия, которые выполняет Пассажир, взаимодействуя с турникетом.
Пассажир, подойдя к банкомату, вставляет в приемник карточку метрополитена, турникет проверяет карту, и возвращает ее пассажиру. Если карта действительна, турникет открывает доступ в метро, в обратном случае остается в своем обычном состоянии.
Представим описанный принцип действия в виде диаграммы деятельности (Рисунок 6).
Рисунок 6 - Диаграмма деятельности модели турникета