Не далее как две недели назад прошла небольшой курс по UML. Курс был достаточно интересным, не все, правда, осело в голове, требуется еще время и переосмысление. Многие моменты стали понятны. Незаменимая штука при строительстве сложных сайтов. Здесь я приведу только небольшую аннотацию по диаграммам использования (use cases). Понимание их делает легким понимание в принципе подхода к созданию информационной архитектуры сайта. У меня лично с этим были определенные проблемы — особенно при создании сайтов, использующих платежные системы: было неясно, как ведет себя весь сайт с наличием или отсутствием денег у того или другого пользователя, при добавлении денежных средств и списании. Одним словом, не было видно «сверху» картины того, как функционирует сайт. UML помог мне внести ясность.
UML (сокр. от англ. Unified Modeling Language — унифицированный язык моделирования) — язык графического описания для объектного моделирования в области разработки программного обеспечения. UML является языком широкого профиля, это открытый стандарт, использующий графические обозначения для создания абстрактной модели системы, называемой UML моделью. UML был создан для определения, визуализации, проектирования и документирования в основном программных систем.
В UML используются следующие типы диаграмм:
1) Диаграмма классов — class diagram
2) Диаграмма компонентов — component diagram
3) Диаграмма составной структуры — composite structure diagram
4) Диаграмма развертывания — deployment diagram
5) Диаграмма объектов — object diagram
6) Диаграмма пакетов — package diagram
7) Диаграмма деятельности — activity diagram
8) Диаграмма автомата — state machine diagram
9) Диаграмма прецедентов — use case diagram
10) Диаграмма последовательности — sequence diagram (+ comunication diagram)
11) Диаграмма взаимодействия — interaction overview diagram
12) Диаграмма синхронизации — timing diagram
Рассмотрим подробнее самую необходимую нам диаграмму — диаграмму прецедентов:
Действующее лицо (actor) – любой объект, субъект или система, взаимодействующая с данной системой извне и использующая ее функциональные возможности для достижения определенных целей или решения частных задач. Служат для обозначения множества ролей, которые могут играть пользователи по отношению к системе.
Сценарий представляет собой последовательность шагов, описывающих взаимодействие между пользователем и системой.
Вариант использования (use-case) — представляет собой множество сценариев, объединенных вместе некоторой общей целью пользователя.
Диаграмма вариантов использования — описывает взаимоотношения и зависимости между группами вариантов использования и действующих лиц. Диаграмма вариантов использования говорит о том, что система должна делать, не указывая сами применяемые методы.
Действующие лица связаны с вариантами использования. Одно действующее лицо может выполнять несколько вариантов использования. В свою очередь, у варианта использования может быть несколько действующих лиц, которые его выполняют.
Пример диаграммы, которую, в принципе, нет смысла комментировать: