Модель прецедентов
В системе управления лифтами есть два актера: один представляет Пользователя Лифта, а второй – Датчик Прибытия. Пользователь Лифта взаимодействует с системой с помощью кнопок лифта и кнопок этажа. Пользователь Лифта инициирует два прецедента (рис.1), указанные в описании задачи: – выбор этажа назначения. Пользователь, находящийся в лифте, нажимает кнопку «вверх» или «вниз» для выбора этажа, на который ему нужно попасть; – вызов лифта. Пользователь, находящийся на этаже, нажимает кнопку «вверх» или «вниз» для вызова лифта. Эти прецеденты рассматриваются ниже.
Рис.1. Актеры и прецеденты в системы управления лифтами
2.1. Прецедент «Выбор Этажа Назначения» Актеры. Пользователь лифта (главный), датчик прибытия. Предусловие. Пользователь находится в лифте. Описание: 1. Пользователь нажимает кнопку лифта «вверх». Датчик кнопки лифта посылает системе запрос, в котором указан выбранный пользователем этаж. 2. Новый запрос добавляется в список этажей, которые должен посетить лифт. Если лифт стоит, то система определяет, куда он должен поехать, чтобы обслужить очередной запрос. Система отдает лифту команду закрыть дверь. Как только дверь закроется, система приказывает мотору привести лифт в движение – вверх или вниз. 3. По мере движения лифта датчики прибытия распознают приближение лифта к этажу и извещают об этом систему. Система проверяет, должен ли лифт остановиться на данном этаже. Если да, то система отдает мотору команду остановиться. После остановки система приказывает открыть дверь. 4. Если есть другие ожидающие вызовы, лифт посещает этажи по пути к тому, на который направляется пользователь. В конце концов лифт приезжает на указанный этаж назначения. Альтернативы: – пользователь нажимает кнопку «вниз». Реакция системы такая же, как в главной последовательности; – если лифт находится на некотором этаже и новых вызовов нет, то он остается в покое с открытой дверью. Постусловие. Лифт прибыл на этаж назначения, выбранный пользователем. 2.2. Прецедент «Вызов Лифта» Актеры. Пользователь лифта (главный), датчик прибытия. Предусловие. Пользователь находится на этаже и ждет лифта. Описание: 1. Пользователь нажимает кнопку этажа «вверх». Датчик кнопки этажа посылает системе запрос, содержащий указание на этаж, где находится пользователь. 2. Система выбирает, какой лифт направить на этаж. Новый запрос добавляется в список этажей, которые должен посетить лифт. Если лифт стоит, система определяет, куда его направить для удовлетворения запроса. Система отдает лифту команду закрыть дверь. Как только дверь закроется, система предписывает мотору привести лифт в движение – вверх или вниз. 3. По мере движения лифта датчики прибытия распознают приближение лифта к этажу и извещают об этом систему. Система проверяет, должен ли лифт остановиться на данном этаже. Если да, то система отдает мотору команду остановиться. После остановки система приказывает открыть дверь. 4. Если есть другие ожидающие вызовы, лифт посещает этажи по пути к тому, куда был вызван. В конечном итоге лифт приезжает на этаж, где его ждет пользователь. Альтернативы: – пользователь нажимает кнопку этажа «вниз». Реакция системы такая же, как в главной последовательности; – если лифт находится на некотором этаже и новых вызовов нет, то он остается в покое с открытой дверью. Постусловие. Лифт прибыл на этаж, на который был вызван пользователем.
|