КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Идентифицируйте основной и альтернативный потоки событий для всех прецедентов, представленных на диаграмме. ⇐ ПредыдущаяСтр 5 из 5 В зависимости от предполагаемой глубины тестирования сгенерируйте тестовый скрипт для каждого потока, используя предусловия в качестве начального состояния, а постусловия - в качестве критерия успешности. При необходимости сгенерируйте тестовое окружение, в котором представлены все актеры, взаимодействующие с прецедентом. Актеры, которые передают элементу информацию или на которых элемент воздействует, можно имитировать или же подставить вместо них реальные эквиваленты. С помощью инструментальных средств выполняйте эти тесты всякий раз после завершения разработки новой версии элемента, к которому применяется диаграмма. Обратным проектированием называется процесс преобразования кода, написанного на каком-либо языке программирования, в модель. Автоматическое обратное проектирование диаграмм прецедентов на данном этапе развития отрасли практически невыполнимо из-за потери информации при переходе от спецификации поведения элемента к его реализации. Тем не менее можно изучить существующую систему и разобраться в ее поведении самостоятельно, а затем представить результаты анализа в виде диаграммы прецедентов. Фактически это придется делать всякий раз, когда вы столкнетесь с недокументированным программным обеспечением. Диаграммы прецедентов UML в данном случае просто предоставляют в ваше распоряжение стандартный и выразительный язык для описания того, что вы обнаружите. Обратное проектирование диаграмм прецедентов производится так: Идентифицируйте все взаимодействующие с системой актеры. Изучите способы, посредством которых актеры взаимодействуют с системой, изменяют состояние системы или ее окружения, а также реагируют на события. Осуществите трассировку потока событий в исполняемой системе относительно каждого актера. Начинать при этом нужно всегда с главных потоков и только потом рассматривать альтернативные. Сгруппируйте родственные потоки, объявив соответствующий прецедент. Подумайте о моделировании вариаций с помощью отношений расширения и о моделировании общих потоков с помощью отношений включения. Изобразите актеры и прецеденты на диаграмме прецедентов и установите отношения между ними. Рекомендации Создавая диаграммы прецедентов в UML, помните, что каждая из них является всего лишь графическим представлением статического вида системы с точки зрения прецедентов. Это означает, что ни одна диаграмма прецедентов, взятая в отдельности, не может, да и не должна охватывать весь этот вид целиком. В совокупности диаграммы прецедентов дают полное представление о виде системы с точки зрения прецедентов, а каждая из них в отдельности - только об одном из его аспектов. Хорошо структурированная диаграмма прецедентов обладает следующими свойствами: · акцентирует внимание только на одном аспекте статического вида системы с точки зрения прецедентов; · содержит только такие прецеденты и актеров, которые важны для понимания этого аспекта; · содержит только такие Детали, которые соответствуют данному уровню абстракции; следует показывать только те дополнения (например, точки расширения), которые необходимы для понимания системы; · не настолько лаконична, чтобы ввести читателя в заблуждение относительно важной семантики. При изображении диаграммы прецедентов руководствуйтесь следующими принципами: · дайте ей имя, соответствующее назначению; · расположите элементы так, чтобы свести к минимуму число пересечений; · пространственно организуйте элементы так, чтобы семантически близкие сущности физически располагались рядом; · используйте примечания и цвет, чтобы привлечь внимание читателя к важным особенностям диаграммы; · старайтесь не показывать слишком много видов отношений. В общем случае, если есть много сложных отношений включения и расширения, выделите их в отдельную диаграмму.
|