На этом шаге рассмотрим понятие действующего лица.
Действующее лицо представляет собой связанное множество ролей, которые исполняют пользователи вариантов использования во время взаимодействия с ними. Обычно действующее лицо представляет ту роль, которую в данной системе играет человек, аппаратное устройство или даже другая система. Например, если вы работаете в банке, то можете играть роль LoanOfficer (Сотрудник кредитного отдела). Если в этом банке открыт ваш счет, то вы выступаете в качестве Customer (Клиент). Таким образом, экземпляр действующего лица представляет собой конкретную личность, определенным образом взаимодействующую с системой. Хотя вы и используете действующие лица в своих моделях, они не являются частью системы, так как существуют вне ее.
В работающей системе действующие лица не обязаны присутствовать как отдельные сущности. Один объект может играть роль множества действующих лиц. Например, один и тот же человек (Person) может быть и сотрудником кредитного отдела (LoanOfficer), и клиентом (Customer).
Как показано на рис. 1, действующие лица изображаются в виде человеческих фигурок.
Рис.1. Действующие лица
Вы можете вводить общие типы действующих лиц, такие как Customer, и специализировать их (например, создать разновидность CommercialCustomer – коммерческий клиент), определив связи обобщения.
Можно использовать механизм расширения UML, приписав действующему лицу стереотип, чтобы создать другую пиктограмму, больше подходящую для достижения ваших целей.
Действующие лица можно связывать с вариантами использования только при помощи ассоциаций. Ассоциация между действующим лицом и вариантом использования показывает, что они общаются друг с другом, возможно, посылая или принимая сообщения.
На следующем шаге рассмотрим представление потока событий в вариантах использованиия в UML.