Анализ и проектирование Цель и задачи анализа и проектирования
Цель процесса анализа и проектирования состоит в разработке технических инструкций, предписывающих, как реализовать ПС, удовлетворяющую сформулированным требованиям. Для этого следует хорошо понять требования к ПС и преобразовать их в проект системы, выбрав правильную стратегию реализации. На ранних стадиях процесса должна быть создана устойчивая архитектура, на основе которой можно спроектировать ПС, легкую для понимания, построения и развертывания. Архитектура должна быть согласована со средой реализации с целью удовлетворения требований к производительности, устойчивости, безопасности, расширяемости и тестируемости.
К числу решаемых задач при этом относятся:
- разработка точной архитектуры распределенной программной системы;
- преобразование модели требований в модель проектную разрабатываемой системы;
- адаптация проекта системы к среде реализации с целью повышения производительности разработки;
- выбор механизмов реализации и определение ограничений на реализацию;
- разработка компонентной структуры;
- распределение компонентов по узлам.
Главной задачей анализа является преобразование требований в форму, понятную разработчику, то есть, определение подсистем, компонентов и классов, с помощью которых реализуется требуемое поведение ПС.
В основе такого преобразования лежат ВИ, созданные при определении требований к ПС. При этом рассматриваются только функциональные требования и игнорируются нефункциональные.
Проектирование – это уточнение результатов анализа, направленное на оптимизацию с учетом ограничений, накладываемых нефункциональными требованиями, средой реализации и т. д.
Роли
- Системный архитектор – руководит работами по анализу и проектированию ПС. Он определяет общую структуру каждого архитектурного представления, декомпозицию представлений, группировку элементов и интерфейсы между группами.
- Разработчик – проектирует классы и отношения между ними Он определяет, как согласовывать классы со средой реализации.
- Разработчик БД – отвечает за проектирование базы данных ПС.
Артефакты
В процессе анализа и проектирования создаются следующие документы:
- Модель проектирования – это основная модель ПС. Она описывает подсистемы, пакеты, компоненты, интерфейсы и классы, а также их взаимодействия, обеспечивающие требуемое поведение ПС.
- Документ «Архитектура ПС» , в котором собраны различные архитектурные представления ПС.
- Модель данных – это описание структуры данных, хранимых в БД (например, реляционная модель данных).
Технологический процесс
Упрощенная схема деятельностей, выполняемых в отдельной итерации процесса анализа и проектирования, приведена на рисунке ниже. Выполнение некоторых деятельностей зависит от фазы разработки, что показано в виде комментариев на диаграмме деятельностей.
Определение потенциальной архитектуры.
Данная деятельность включает архитектурный анализ и анализ ВИ. Определяется первоначальный набор архитектурно значимых элементов и механизмов реализации, выполняется начальное разбиение на уровни, определяется структура системы, выбираются ВИ, которые будут реализовываться в первой итерации фазы развития проекта. В результате создается эскиз архитектуры ПС. На основе анализа архитектурно значимых ВИ определяются основные классы, которые включаются в модель анализа. В модель анализа включаются диаграммы, описывающие взаимодействие основных классов.
Уточнение архитектуры
Деятельность включает определение механизмов проектирования, элементов проекта, объединения существующих элементов проекта, описание архитектуры реального времени (если проектируемая ПС относится к этому классу). В результате выполнения этих работ достигаются следующие цели:
- Обеспечивается переход от анализа к проектированию путем определения из элементов и механизмов анализа элементов и механизмов проектирования;
- Поддерживается целостность и непротиворечивость архитектуры путем интеграции новых элементов проекта, определяемых в текущей итерации, с уже существующими и повторного использования доступных элементов проекта.
- Осуществляется плавный переход от проектирования к реализации
Анализ поведения
Эта деятельность включает анализ ВИ, определение элементов проекта и обзор проекта. Эта деятельность имеет целью преобразование описаний поведения в виде ВИ в набор элементов проекта (классы, отношения, операции и др.).
Проектирование компонентов.
Цели данной деятельности состоят в:
- Определении и уточнении элементов проекта путем подробного описания того, как эти элементы реализуют требуемое поведение.
- Определении и уточнении реализации ВИ на основе новых элементов проекта.
- Контроле и рецензировании проекта по мере его развития.
Проектируются ВИ, подсистемы, классы и компоненты ПС. Точно описываются интерфейсы компонентов и их реализация.
Проектирование БД
Данная деятельность выполняется для проектов, использующих базы данных. Она включает:
- Определение персистентных (постоянно хранимых) классов;
- Проектирование структуры БД для хранения таких классов;
- Определение механизмов и стратегий хранения и доступа к хранимым данным, удовлетворяющих требованиям к производительности и надежности ПС.
Анализ и проектирование связывает управление требованиями и реализацию. В этом технологическом процессе создается модель проектирования. Одно из ее представлений – логическая модель – отражает декомпозицию ПС в набор логических элементов (классы, подсистемы, взаимодействия).
Процедурное представление отображает эти элементы в процессы и подпроцессы системы. Представление развертывания отображает эти процессы в набор узлов вычислительного комплекса, на которых они выполняются.