Рис.3.4. Пример отношения "использует "
Таким образом, продуктом первой стадии инженерии требований (сбора требований) является модель требований, которая состоит с трех частей:
1) онтология домена;
2) модель сценариев, называемая диаграммой сценариев;
3) описание интерфейсов сценариев.
Модель сценариев сопровождается неформальным описанием каждого из сценариев. Нотация такого описания не регламентируется. Как один из вариантов, описание сценария может быть представлено последовательностью элементов:
– название, которое помечает сценарий на диаграммах модели требований и служит средством ссылки на сценарий;
– аннотация (краткое содержание в неформальном представлении);
– актеры, которые могут запускать сценарий;
– определение всех аспектов взаимодействия системы с актерами (возможные действия актера и их возможные последствия), а также запрещенных действий актера;
– предусловия, которые определяют начальное состояние на момент запуска сценария, необходимое для успешного выполнения;
– функции, которые реализуются при выполнении сценария и определяют порядок, содержание и альтернативу действий, выполняемых в сценарии;
– исключительные или нестандартные ситуации, которые могут появиться при выполнении сценария и потребовать специальных действий для их устранения (например, ошибка в действиях актера, которую способна распознать система);
– реакции на предвиденные нестандартные ситуации;
– условия завершения сценария;
– постусловия, которые определяют конечное состояние сценария при его завершении.
На дальнейших стадиях сценарий трансформируется в сценарий поведения системы, т.е. к приведенным элементам модели добавляются элементы, связанные с конструированием решения проблемы и нефункциональными требованиями:
– механизмы запуска сценария (позиции меню);
– механизмы ввода данных;
– поведение при возникновении чрезвычайных ситуаций.
Следующим шагом процесса проектирования является преобразование сценария в описание компонентов системы и проверка их правильности.
Описание интерфейсов делается неформально, они определяют взгляд пользователя на систему, с которым необходимо согласовать требования, собранные на этапе анализа системы и определения требований. Все вопросы взаимодействия отмечаются на панели экрана для каждого из актеров и их элементы (меню, окна ввода, кнопки - индикаторы и т.п.).
Построение прототипа системы, моделирующего действия актера, помогает отработать детали и устранить недоразумения между заказчиком и разработчиком.