Введение
Детализация варианта использования - это методика определения функциональных требований к элементам анализа, а затем и
проекта. При этом достигаются следующие результаты:
-
обзор операций подсистем
-
обзор операций подсистемы в участке
-
обзор операций подсистемы для процессов
-
варианты использования подсистемы (необязательно)
В этой методике используется стандартный подход RUP к выбору архитектурно значимого набора вариантов использования. Для
каждого варианта использования разрабатывается поток событий. Это описание взаимодействия между субъектами системы и
системой. Ответы системы изображаются в виде черного ящика, описания никак не ссылаются на архитектурные элементы.
Далее черный ящик (выполняемый как системная операция) детализируется в виде одного или нескольких этапов,
каждый из которой выполняется подсистемой. Эти этапы связываются с участками, где они локализованы, и
выполняющими их процессами. Каждый этап, который охватывает несколько участков или процессов (более одного),
детализируется далее, пока не будет приведен к одному участку и одному процессу. Этап может выполняться в нескольких
участках, но это - независимые экземпляры. Такие этапы становятся кандидатами в операции подсистем, аналоги
операций системы на этом уровне структуризации.
Участвующие в операциях системы уникальные последовательности операций подсистемы составляют варианты использования
подсистемы.
Схема связей подсистем и участков
На первом этапе детализации варианта использования система может охватывать несколько участков. Глубина разбиения на
подсистемы - это вопрос выбора аналитика, который помимо всего прочего также решается с учетом области применения и
сложности системы. Однако анализ производительности должен учитывать нагрузку, приходящуюся на участок, и это возможно
сделать при анализе операций, выполняющихся в участке. Поэтому структуризация дает наилучшие результаты при выполнении
следующих принципов: разбиение должно дать набор подсистем, которые локализованы в участках, чтобы операции подсистемы
не захватывали несколько участков. Если же операция подсистемы A требует ресурсов другого участка, то обращение
к этим ресурсам должно выполняться отдельной операцией, либо самой подсистемы A в этом участке, либо другой
подсистемы.
Это условие очевидно выполняется, если подсистема локализована в участке, но подсистема может располагаться в
нескольких участках, если ее операции можно структурировать, как указано выше. В противном случае подсистема должны
быть разделена на более мелкие единицы. Эти замечания касаются отдельных экземпляров подсистемы, расположенной в разных
участках. Подсистема может дублироваться в нескольких участках, но это будут разные экземпляры.
|