Прецеденты

Прецеденты - это технология определения функциональных требова­ний к системе. Работа прецедентов заключается в описании типичных взаимодействий между пользователями системы и самой системой и предоставлении описания процесса ее функционирования. Вместо того чтобы описывать прецеденты в лоб, я предпочитаю подкрасться к ним сзади и начать с описания сценариев. Сценарий (scenario) - это последовательность шагов, описывающих взаимодействие пользовате­ля и системы. Поэтому при наличии онлайнового магазина, основан­ного на веб-сайте, мы можем использовать сценарий «Покупка това­ра» (Buy a Product), в котором происходит следующее.

Покупатель просматривает каталог и помещает выбранные то­вары в корзину. При желании оплатить покупку он вводит инфор­мацию о кредитной карте и производит платеж. Система проверя­ет авторизацию кредитной карты и подтверждает оплату това­ра тотчас же и по электронной почте.

Подобный сценарий описывает только одну ситуацию, которая может иметь место. Однако если авторизация кредитной карты окажется не­удачной, то подобная ситуация может послужить предметом уже дру­гого сценария. В другом случае у вас может быть постоянный клиент, для которого проверка информации о покупке и кредитной карте не обязательна, и это будет третий сценарий.

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

В терминах прецедента пользователи называются актерами. Актер (actor) представляет собой некую роль, которую пользователь играет по отношению к системе. Актерами могут быть пользователь, торго­вый представитель пользователя, менеджер по продажам и товаровед


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

На самом деле актер ~ не совсем верный термин; возможно, термин роль (role) подошел бы лучше. Очевидно, имел место неправильный пе­ревод со шведского языка, и в результате сообщество пользователей прецедентов теперь употребляет термин актер.

Прецеденты считаются важной частью языка UML. Однако удивитель­но то, что определение прецедентов в UML довольно скудное. В UML ничего не говорится о том, как определять содержимое прецедента. Все, что описано в UML, - это диаграмма прецедентов, которая пока­зывает, как прецеденты связаны друг с другом. Но почти вся ценность прецедентов как раз в их содержании, а диаграмма имеет ограничен­ное значение.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: