Анализ требований клиента. Зачем нужны анализ и проектирование. Анализ проблемы, страница 6

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

Часто возникает вопрос — насколько законченными должны быть диаграммы последовательностей? На ранней стадии фиксации и анализа требований, которую мы рассматриваем, диаграммы последовательностей, в силу необходимости, относительно просты и могут быть неполными. С переходом к анализу прецедентов диаграммы уточняются и дополняются дальнейшими деталями. Целесообразно, чтобы основной поток событий каждого прецедента был зафиксирован в диаграмме последовательностей, однако фиксация всех возможных потоков, особенно если их много, излишние. Суть в том, чтобы зафиксировать достаточно сценариев, чтобы иметь уверенность в том, что эта информация достаточна для следующей стадии проекта.

Диаграммы деятельности

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

Это нелегко показать на диаграмме последовательностей, поскольку она предназначена для изображения взаимодействия между объектами в контексте одного сценария.

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

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

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

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

На рис. 7.6 показана простая диаграмма деятельности, изображающая разговор по телефону.

С помощью дорожек на диаграмме деятельности можно показать несколько объектов и их совместную работу в прецеденте.

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

Резюме

Правильная фиксация требований обязательна для успешного создания системы и ее продолжительной деятельности. Моделирование прецедентов на языке UML дает простые, но мощные средства для фиксации требований.

В модели прецедентов исполнители — это главные инициаторы прецедентов, представляющие объекты за пределами системы. Прецеденты можно представить себе как последовательность шагов, необходимых для получения чего-то полезного для исполнителя. Иными словами, прецедент должен давать нечто ценное для своего конечного пользователя. В идентификации и изучении поведения прецедента помогают диаграммы последовательностей и диаграммы деятельности.