Концептуальное, логическое и физическое проектирование подготовка лекции: Д.А.Маленко maldim@gmx.net контроль качества: К.В.Рундуев krun@isd.dp.ua.

Презентация:



Advertisements
Похожие презентации
Проектирование архитектуры ИСО 1. UML 2 Структура определения языка 4.
Advertisements

Таблица умножения на 8. Разработан: Бычкуновой О.В. г.Красноярск год.
Кандидат технических наук, доцент Грекул Владимир Иванович Учебный курс Проектирование информационных систем Лекция 9.
1. Определить последовательность проезда перекрестка
Фрагмент карты градостроительного зонирования территории города Новосибирска Масштаб 1 : 6000 Приложение 7 к решению Совета депутатов города Новосибирска.
1 Знаток математики Тренажер Таблица умножения 2 класс Школа 21 века ®м®м.

Применение генетических алгоритмов для генерации числовых последовательностей, описывающих движение, на примере шага вперед человекоподобного робота Ю.К.
Матемтааки ЕТ СТ 2 класс Шипилова Наталия Викторовна учитель начальных классов, ВКК Шипилова Наталия Викторовна учитель начальных классов, ВКК.
БИТЕК «Бизнес-инжиниринговые технологии» г. Москва, тел.: (495) , Internet: Учебный.
Лекция 1 Раздел 1 Windows Phone Темы раздела 3 Windows Phone Устройство на платформе Windows Phone 4.
Урок-обобщение (7 класс – алгебра) МОУ "СОШ 45 г. Чебоксары" Кабуркина М. Н.1.
1 Знаток математики Тренажер Таблица умножения 3 класс Школа России Масько Любовь Георгиевна Муниципальное общеобразовательное учреждение средняя общеобразовательная.
Работа учащегося 7Б класса Толгского Андрея. Каждое натуральное число, больше единицы, делится, по крайней мере, на два числа: на 1 и на само себя. Если.
Фрагмент карты градостроительного зонирования территории города Новосибирска Масштаб 1 : 4500 к решению Совета депутатов города Новосибирска от
Отделение ПФР по Тамбовской области Проведение кампании по повышению пенсионной грамотности молодежи в Тамбовской области в 2011 году 8 февраля 2012 г.
1 Диаграммы реализации (implementation diagrams).
Фрагмент карты градостроительного зонирования территории города Новосибирска Масштаб 1 : 6000 Приложение 7 к решению Совета депутатов города Новосибирска.
Учебный курс Объектно-ориентированный анализ и программирование Лекция 4 Трансформация логической модели в программный код Лекции читает кандидат технических.
Урок повторения по теме: «Сила». Задание 1 Задание 2.
Транксрипт:

Концептуальное, логическое и физическое проектирование подготовка лекции: Д.А.Маленко контроль качества: К.В.Рундуев

Структура занятия 1) Зачем мы проектируем 2) Фаза планирования MSF 3) Концептуальное проектирование 4) Логическое проектирование 5) Физическое проектирование 6) Проектирование в других процессах

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 3 Вспомним… Нужно ли проектировать? Нужно ли проектировать? Что такое «проектирование»? Что такое «проектирование»? Когда происходит проектирование в MSF? Когда происходит проектирование в MSF? Что такое WBS? Что такое WBS?

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 4 Проектирование «Программная постановка задачи является упражнением в применении абстракции и требует способностей как формального математика, так и компетентного инженера» Э. В. Дейкстра

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 5 Смысл проектирования Создание системы, которая: удовлетворяет заданным (возможно, неформальным) функциональным спецификациям удовлетворяет заданным (возможно, неформальным) функциональным спецификациям удовлетворяет явным и неявным критериям дизайна продукта удовлетворяет явным и неявным критериям дизайна продукта удовлетворяет требованиям к самому процессу разработки, таким, например, как продолжительность и стоимость, а также привлечение дополнительных инструментальных средств удовлетворяет требованиям к самому процессу разработки, таким, например, как продолжительность и стоимость, а также привлечение дополнительных инструментальных средств

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 6 Успешные проекты Общие черты успешных проектов, которые отсутствовали у неудачных: ясное представление об архитектуре создаваемой системы ясное представление об архитектуре создаваемой системы хорошо организованный итеративно развивающийся процесс работы над проектом хорошо организованный итеративно развивающийся процесс работы над проектом

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 7 Хорошая архитектура Многоуровневая система абстракций Многоуровневая система абстракций На каждом уровне интерфейс абстракции строго ограничен и отделен от реализации На каждом уровне интерфейс абстракции строго ограничен и отделен от реализации Архитектура проста, не содержит ничего лишнего Архитектура проста, не содержит ничего лишнего

Структура занятия 1) Зачем мы проектируем 2) Фаза планирования MSF 3) Концептуальное проектирование 4) Логическое проектирование 5) Физическое проектирование 6) Проектирование в других процессах

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 9 Вопросы Сколько и какие фазы MSF предшествуют фазе планирования? Сколько и какие фазы MSF предшествуют фазе планирования? Каковы основные результаты фазы выработки концепции? Каковы основные результаты фазы выработки концепции? Как эти результаты помогут в дальнейшем? Как эти результаты помогут в дальнейшем?

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 10 Что у нас есть? Общее описание и рамки проекта Общее описание и рамки проекта Vision/scope document Документ оценки рисков Документ оценки рисков Risk assessment document Описание структуры проекта Описание структуры проекта Project structure document Этого еще недостаточно для начала реализации решения Чего у нас еще нет? Чего у нас еще нет?

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 11 Фаза планирования

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 12 Цели и результаты Цели Цели Создание архитектуры и проекта решенияСоздание архитектуры и проекта решения Создание планов и расписанийСоздание планов и расписаний Результаты Результаты Функциональная спецификацияФункциональная спецификация План управления рискамиПлан управления рисками Сводный план и сводный календарный график проектаСводный план и сводный календарный график проекта

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 13 Проектирование Основные деятельности связанные с проектированием: Сбор и анализ требований Сбор и анализ требований Определение архитектуры Определение архитектуры Концептуальное проектирование Концептуальное проектирование Логическое проектирование Логическое проектирование Физическое проектирование Физическое проектирование

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 14 Сбор и анализ требований Информация собирается всеми возможными способами из всех возможных источников: Информация собирается всеми возможными способами из всех возможных источников: Интервью, фокус-группы, опросы…Интервью, фокус-группы, опросы… Документы, системы, люди…Документы, системы, люди… Категории Категории БизнесБизнес ПриложенияПриложения ПроцессыПроцессы ТехнологииТехнологии

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 15 Виды проектирования Концептуальное (Conceptual design) Система с точки зрения пользователя и бизнеса Логическое (Logical design) Система с точки зрения проектной группы Физическое (Physical design) Система с точки зрения разработчиков

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 16 Место проектирования в процессе Project Plan Approved Project Plan Approved Vision/Scope Approved Vision/Scope Approved Physical Design Logical Design Conceptual Design Baseline

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 17 Связь видов проектирования Начать, чтобы начать (Start-to-start) Начать, чтобы начать (Start-to-start) Закончить, чтобы закончить (Finish-to finish) Закончить, чтобы закончить (Finish-to finish)

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 18 Основные роли в проектировании Концептуальное Управление продуктом Логическое Управление программой ФизическоеРазработка

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 19 Вопросы Откуда берется информация для проектирования? Откуда берется информация для проектирования? Какой основной результат фазы планирования с точки зрения проектирования? Какой основной результат фазы планирования с точки зрения проектирования? Какие бывают виды проектирования? Какие бывают виды проектирования?

Структура занятия 1) Зачем мы проектируем 2) Фаза планирования MSF 3) Концептуальное проектирование 4) Логическое проектирование 5) Физическое проектирование 6) Проектирование в других процессах

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 21 Концептуальное проектирование Описывает систему с точки зрения пользователей Описывает систему с точки зрения пользователей Определяет проблему и решение с помощью сценариев использования (usage scenarios) Определяет проблему и решение с помощью сценариев использования (usage scenarios) Уточняет первоначальные сценарии использования, определенные на фазе выработки концепцииУточняет первоначальные сценарии использования, определенные на фазе выработки концепции Создает функциональную спецификацию Создает функциональную спецификацию

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 22 Шаги концептуального проектирования Conceptual Design Baseline Research Baseline Analysis Baseline Optimization Baseline

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 23 Шаги концептуального проектирования Исследование (Research) Исследование (Research) Уточнение информации, полученной в ходе выработки концепцииУточнение информации, полученной в ходе выработки концепции Сбор дополнительной информацииСбор дополнительной информации Анализ (Analysis) Анализ (Analysis) Выбор архитектурыВыбор архитектуры Создание концептуальной моделиСоздание концептуальной модели Оптимизация (Optimization) Оптимизация (Optimization) Оценка и проверкаОценка и проверка

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 24 Функциональная спецификация Проект решения Проект решения Артефакты процесса проектирования Артефакты процесса проектирования Диаграммы, сценарии, требования…Диаграммы, сценарии, требования… Описывает область текущей версии решения Описывает область текущей версии решения Документирует решение для разработчиков Документирует решение для разработчиков

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 25 Цели функциональной спецификации Дают общее видение требований пользователей Дают общее видение требований пользователей Позволяет разбить проблему на части, логически организовать решение Позволяет разбить проблему на части, логически организовать решение Дает основу для планирования Дает основу для планирования Служит контрактом между проектной группой и заказчиком Служит контрактом между проектной группой и заказчиком

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 26 Функциональная спецификация Это «живой документ» Это «живой документ» Хотя и является «контрактом» между проектной группой и разработчиками, он может быть изменен по согласию сторон Хотя и является «контрактом» между проектной группой и разработчиками, он может быть изменен по согласию сторон Шаблон помещен на студенческий CD-1, а также доступен для загрузки с ctinfo/enterprise/msf/ Шаблон помещен на студенческий CD-1, а также доступен для загрузки с ctinfo/enterprise/msf/

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 27 Важность функциональной спецификации

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 28 Концептуальное проектирование Помогает уяснить проблему, которую надо решить Помогает уяснить проблему, которую надо решить Описывает будущее состояние организации и бизнес-процессов Описывает будущее состояние организации и бизнес-процессов

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 29 Что происходит? Уточнение пользовательских требований Уточнение пользовательских требований Построение и уточнение диаграмм вариантов использования Построение и уточнение диаграмм вариантов использования Документирование сценариев Документирование сценариев

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 30 Пример: e-Магазин Один из сценариев использования Пользователь (U) просматривает товары: Сайт содержит каталоги (группы товаров). U выбирает каталог для просмотра. Отображаются категории и товары из выбранной категории. U может выбрать подкатегорию или товар для просмотра Сайт содержит каталоги (группы товаров). U выбирает каталог для просмотра. Отображаются категории и товары из выбранной категории. U может выбрать подкатегорию или товар для просмотра При просмотре товара отображается его фотография и текстовое описание. U может увидеть список схожих товаров При просмотре товара отображается его фотография и текстовое описание. U может увидеть список схожих товаров U может вернуться в каталог для продолжения просмотра или перейти к описанию следующему/предыдущему товару U может вернуться в каталог для продолжения просмотра или перейти к описанию следующему/предыдущему товару

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 31 Пример: e-Магазин Use case diagram User ConsolidateRetail.com Browse Catalog View Product «uses»

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 32 Выбор архитектуры решения Основывается на на возможностях, которые должен получить пользователь Основывается на на возможностях, которые должен получить пользователь Виды архитектур: Виды архитектур: Client/server architectureClient/server architecture Layered architecture (n-tier)Layered architecture (n-tier) Stateless architectureStateless architecture Caching architectureCaching architecture Другие виды архитектурДругие виды архитектур

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 33 Вопросы Каковы основные результаты концептуального проектирования? Каковы основные результаты концептуального проектирования? Что такое функциональная спецификация? Что такое функциональная спецификация? Приведите примеры архитектур решения Приведите примеры архитектур решения

Структура занятия 1) Зачем мы проектируем 2) Фаза планирования MSF 3) Концептуальное проектирование 4) Логическое проектирование 5) Физическое проектирование 6) Проектирование в других процессах

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 35 Логическое проектирование Описывает систему с точки зрения проектной группы Описывает систему с точки зрения проектной группы Определяет составные части решения Определяет составные части решения Создает основу для объединения этих частей в единое целое Создает основу для объединения этих частей в единое целое

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 36 Логическое проектирование Logical Design Baseline Analysis Baseline Analysis Optimization Refine candidate technologies Identify business objects & services Identify attributes & relationships Refine the logical design Validate the logical design

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 37 Шаги логического проектирования Анализ Анализ Уточняется список возможных инструментов и технологийУточняется список возможных инструментов и технологий Выделяются объекты и службыВыделяются объекты и службы Выделяются основные атрибуты и ключевые отношенияВыделяются основные атрибуты и ключевые отношения Оптимизация Оптимизация Уточнение логического проектаУточнение логического проекта Оценка логического проектаОценка логического проекта

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 38 Роли Управление продуктом Проект соответствует нуждам заказчика Управление программой Основная роль в логическом проектировании Разработка Помогает уточнить службы и выделить объекты Тестирование Проверяет логический проект Управление выпуском Оценивает приемлемость реализации решения Удовлетворение потребителя Пользовательские требования в продуктивности

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 39 Результаты логического проектирования Логическая объектная модель Логическая объектная модель Эскизный проект пользовательского интерфейса Эскизный проект пользовательского интерфейса Логическая модель данных Логическая модель данных

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 40 Что происходит? Уточняется список возможных технологий Уточняется список возможных технологий Определяются возможные бизнес- объекты Определяются возможные бизнес- объекты Определяются службы Определяются службы Определяются атрибуты Определяются атрибуты Определяются связи Определяются связи

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 41 Как это делать? Сценарий Люди и предметы Действия Бизнес- объекты Службы

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 42 Виды связей (отношений) Зависимость (Dependency) Зависимость (Dependency) Операция обмена валют зависит от текущего курсаОперация обмена валют зависит от текущего курса Ассоциация (Association) Ассоциация (Association) Поставка содержит товарыПоставка содержит товары Обобщение (Generalization) Обобщение (Generalization) Фигура обобщает Круг, КвадратФигура обобщает Круг, Квадрат Реализация (Implementation) Реализация (Implementation) Инструкции, уставы реализуют предписанияИнструкции, уставы реализуют предписания

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 43 Моделирование Объекты и их отношения могут моделироваться с помощью: Объекты и их отношения могут моделироваться с помощью: CRC-карточек (Class-Responsibilities- Collaborations)CRC-карточек (Class-Responsibilities- Collaborations) Диаграмм последовательности действий (Sequence diagrams)Диаграмм последовательности действий (Sequence diagrams) Объектная модель Объектная модель Модель данных Модель данных ER диаграммы (Entity-relationship diagrams)ER диаграммы (Entity-relationship diagrams)

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 44 CRC-карточки

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 45 Логическое проектирование Определяет решение как набор объектов и служб, связанных между собой Определяет решение как набор объектов и служб, связанных между собой Основывается на информации, полученной в ходе концептуального проектирования Основывается на информации, полученной в ходе концептуального проектирования

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 46 Пример: e-Магазин Выделение объектов U выбирает каталог для просмотра. Отображаются категории и товары из выбранной категории. U может выбрать подкатегорию или товар для просмотра Catalog Categories ProductProductsUser

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 47 Пример: e-Магазин Выделение поведения (служб) U выбирает каталог для просмотра. Отображаются категории и товары из выбранной категории. U может выбрать подкатегорию или товар для просмотра +Select Catalog() User

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 48 Пример: e-Магазин Выделение атрибутов Анализ сценариев позволяет выделить элементы, которые сохраняются или отслеживаются Анализ сценариев позволяет выделить элементы, которые сохраняются или отслеживаются Например: Элементы, которые отображаются при просмотре пользователем товаров, являются атрибутами товара (название, описание, цена и т.п.) Например: Элементы, которые отображаются при просмотре пользователем товаров, являются атрибутами товара (название, описание, цена и т.п.)

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 49 Пример: e-Магазин Выделение отношений Сценарии анализируются для поиска взаимодействия между объектами Сценарии анализируются для поиска взаимодействия между объектами Например: Категории содержат товары Например: Категории содержат товары

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 50 Пример: Логическая модель объектов +Search for Product() +Set Filters() +Get Details() +Set Details() -Catalog ID -Start Date -Expiration Date -Season -Items -Promotional Matter Product Catalog +List Products() +List SubCategories() -Category ID -Category Name Category +Print Product Specs() +View Product Specs() +Get Details() +Set Details() -In Stock Flag -Promotional Description -Promotional Discount -Name -Stock Unit ID -Photo -ReOrder Point -Weight -Dimensions -Category Product 1 0..* 1..* 1 0..*

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 51 Вопросы Что такое логическое проектирование? Что такое логическое проектирование? Когда оно начинается? Когда оно начинается? Когда оно заканчивается? Когда оно заканчивается?

Структура занятия 1) Зачем мы проектируем 2) Фаза планирования MSF 3) Концептуальное проектирование 4) Логическое проектирование 5) Физическое проектирование 6) Проектирование в других процессах

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 53 Физическое проектирование Описывает систему с точки зрения разработчиков Описывает систему с точки зрения разработчиков Определяет решение как набор служб и технологий, которые будут доступны пользователю Определяет решение как набор служб и технологий, которые будут доступны пользователю

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 54 Физическое проектирование Physical Design Baseline Analysis Baseline Research Implementation Research Baseline Rationalization Baseline Implementation Baseline Analysis Rationalization

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 55 Шаги физического проектирования Исследование Исследование Определение физических ограничений и требованийОпределение физических ограничений и требований Анализ Анализ Предварительная модель развертыванияПредварительная модель развертывания Определение используемых технологийОпределение используемых технологий Рационализация Рационализация Выбор стратегии распространения и развертыванияВыбор стратегии распространения и развертывания Упаковка компонентов и службУпаковка компонентов и служб Распределение компонентов по узлам сетиРаспределение компонентов по узлам сети Реализация Реализация Определение программной моделиОпределение программной модели Спецификация компонентовСпецификация компонентов

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 56 Пример: база данных Имеется логическая модель данных Имеется логическая модель данных Проводится анализ необходимых запросов для выбора наиболее эффективных ключей Проводится анализ необходимых запросов для выбора наиболее эффективных ключей Возможно, выполняется вертикальное или горизонтальное разбиение данных Возможно, выполняется вертикальное или горизонтальное разбиение данных Возможно, выполняется денормализация для увеличения производительности (при этом логическая модель остается нормализованной) Возможно, выполняется денормализация для увеличения производительности (при этом логическая модель остается нормализованной)

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 57 Роли Управление продуктом Управление ожиданиями заказчика. План взаимодействия Управление программой Ответственность за процесс. Функциональная спецификация Разработка Создает модели, планы и расписания разработки Тестирование Проверяет и оценивает функциональность и соответствие физического проекта сценариям использования Управление выпуском Оценивает влияние физического проекта на инфрастуктуру Удовлетворение потребителя Оценивает соответствие физического проекта требованиям пользователя

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 58 Результаты физического проектирования Спецификации отдельных компонентов Спецификации отдельных компонентов Пользовательский интерфейс Пользовательский интерфейс Физическая модель данных Физическая модель данных

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 59 Артефакты Диаграмма классов Диаграмма классов Диаграммы компонентов, деятельностей Диаграммы компонентов, деятельностей Схема базы данных Схема базы данных Спецификации компонентов Спецификации компонентов Предварительные планы развертывания (Deployment plans) Предварительные планы развертывания (Deployment plans) Программная модель Программная модель

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 60 Факторы Глобализация (Globalization) Глобализация (Globalization) Производительность (Performance) Производительность (Performance) Масштабируемость (Scalability) Масштабируемость (Scalability) Доступность (Availability) Доступность (Availability) Управляемость (Manageability) Управляемость (Manageability) Безопасность (Security) Безопасность (Security) Эргономичность (Accessibility) Эргономичность (Accessibility)

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 61 Службы отображаются в компоненты Службы выделенные при логическом проектировании преобразуются в компоненты Службы выделенные при логическом проектировании преобразуются в компоненты Один компонент может отвечать за несколько служб Один компонент может отвечать за несколько служб

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 62 Cohesion and coupling Cohesion (зацепление) – уровень связи между элементами компонента Cohesion (зацепление) – уровень связи между элементами компонента ФункциональноеФункциональное Последовательная связьПоследовательная связь ВзаимодействиеВзаимодействие Временнáя связьВременнáя связь Coupling (связанность) – зависимость компонента от внешних компонент Coupling (связанность) – зависимость компонента от внешних компонент Tight (сильная) – компонент сильно зависит от внешних компонентTight (сильная) – компонент сильно зависит от внешних компонент Loose (слабая) – компонент максимально независим от окруженияLoose (слабая) – компонент максимально независим от окружения

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 63 Уровни компонентов в трехслойной (3-tier) архитектуре Уровень данных Уровень данных Компоненты доступа к даннымКомпоненты доступа к данным Уровень бизнес-процессов Уровень бизнес-процессов Компоненты, которые поддерживают бизнес-процессы и управляют ограничениямиКомпоненты, которые поддерживают бизнес-процессы и управляют ограничениями Уровень представления Уровень представления Компоненты, взаимодействующие с пользователемКомпоненты, взаимодействующие с пользователем

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 64 Выработка стратегий распространения и развертывания Компоненты разных уровней должны распространяться отдельно Компоненты разных уровней должны распространяться отдельно Слабо связанные компоненты по возможности должны распространяться отдельно Слабо связанные компоненты по возможности должны распространяться отдельно Порядок развертывания играет важную роль Порядок развертывания играет важную роль Соответствие между узлами среды развертывания и компонентами Соответствие между узлами среды развертывания и компонентами

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 65 Программная модель Однообразный подход к реализации компонентов Однообразный подход к реализации компонентов Факторы Факторы АрхитектураАрхитектура Обработка ошибокОбработка ошибок БезопасностьБезопасность РазвертываниеРазвертывание......

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 66 Программная модель Может быть выражена в виде: Может быть выражена в виде: Coding Standards or GuidelinesCoding Standards or Guidelines Microsoft Visual Studio.NET Enterprise TemplatesMicrosoft Visual Studio.NET Enterprise Templates Возможны и другие формыВозможны и другие формы Design Guidelines for Microsoft.NET Design Guidelines for Microsoft.NET us/cpgenref/html/cpconnetframeworkde signguidelines.asphttp://msdn.microsoft.com/library/en- us/cpgenref/html/cpconnetframeworkde signguidelines.asp

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 67 Пример: физическая модель объектов +createOrder() : Boolean +deleteOrder(in OrderNumber : Integer) : Boolean +addOrderDetail(in ProductID : Integer, in Quantity : Integer) : Boolean +removeOrderDetail(in ProductID : Integer) : Boolean +CalculateTotalDue(in OrderNumber : Integer) : Currency +ValidatePayment() : Boolean +ShowOrderStatus(in OrderNumber : Integer) : oOrder +OrderNumber : Integer +OrderDate : Date +ProposedDeliveryDate : Date +ShippingAddress +TotalDue : Currency oOrder +New() : Boolean +Delete() : Boolean +isDuplicate ??() : Boolean +edit() : Boolean +ProductID : Integer oCatalogItem * 1 +getCatalogItems(in Category : String, in currentPage : Integer) : +addCatalogItem() : Boolean +removeCatalogItem() : Boolean +GetProductInfo(in ProductID : Integer) : oProductSpec +GetCustomerReviews(in ProductID : Integer) : oCatalog

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 68 Пример: Физическая модель данных CatalogItems PKGUID ItemID Description Specification Picture FK1CategoryID Categories PKGUID CategoryID CategoryText Orders PKGUID OrderDate ShippedDate ShipName ShipAddress ShipCity ShipRegion ShipPostalCode ShipCountry Order Details PK,FK3OrderGUID PKDetailLineID UnitPrice Quantity FK2CatalogItemGUID Discount

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 69 Пример: диаграмма развертывания ClientXYZ ChampsionZone Server Database Broker Referee Application RetrieveStore

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 70 Пример: топология решения MAIL ROUTER INTERNET Contact Storage SHAREPTFS File and Print services OLAPPRODCATINTRANET Internet Information Server EXTRANET Internet Information Server Internal Firewall External Firewall Search Customer Catalog and Orders Analysis Services Internal Windows Clients Internal Web Clients

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 71 Вопросы Когда начинается физическое проектирование? Когда начинается физическое проектирование? Как используются результаты логического проектирования? Как используются результаты логического проектирования? Что такое cohesion? Что такое cohesion? Компоненты какого уровня не должны взаимодействовать с уровнем данных? Компоненты какого уровня не должны взаимодействовать с уровнем данных? В чем важность программной модели? В чем важность программной модели?

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 72 Полезные ссылки Case study: FoodMovers Case study: FoodMovers ult.asp?url=/library/en- us/dnvsent/html/FoodMovers0.asphttp://msdn.microsoft.com/library/defa ult.asp?url=/library/en- us/dnvsent/html/FoodMovers0.asphttp://msdn.microsoft.com/library/defa ult.asp?url=/library/en- us/dnvsent/html/FoodMovers0.asphttp://msdn.microsoft.com/library/defa ult.asp?url=/library/en- us/dnvsent/html/FoodMovers0.asp Microsoft Reference Architecture for Commerce: Version 2 Microsoft Reference Architecture for Commerce: Version 2 ult.asp?url=/library/en- us/dnrac/html/mracv2_ch00.asphttp://msdn.microsoft.com/library/defa ult.asp?url=/library/en- us/dnrac/html/mracv2_ch00.asphttp://msdn.microsoft.com/library/defa ult.asp?url=/library/en- us/dnrac/html/mracv2_ch00.asphttp://msdn.microsoft.com/library/defa ult.asp?url=/library/en- us/dnrac/html/mracv2_ch00.asp

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 73 Структура занятия 1) Зачем мы проектируем 2) Фаза планирования MSF 3) Концептуальное проектирование 4) Логическое проектирование 5) Физическое проектирование 6) Проектирование в других процессах

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 74 Проектирование в RUP Имеется 3 фазы связанные с проектированием: Имеется 3 фазы связанные с проектированием: Business ModelingBusiness Modeling Концептуальное проектирование Концептуальное проектирование Описание системы с точки зрения бизнеса Описание системы с точки зрения бизнеса RequirementsRequirements Сбор и анализ требований к системе Сбор и анализ требований к системе Analysis & DesignAnalysis & Design Анализ информации Анализ информации Логическое и физическое проектирование Логическое и физическое проектирование

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 75 Шаги проектирования Проектирование проходит те же этапы, которые называются по- другому: Проектирование проходит те же этапы, которые называются по- другому: Бизнес-модель – описание текущего состояния системыБизнес-модель – описание текущего состояния системы Логическая модельЛогическая модель Спецификация компонентов, проектирование БДСпецификация компонентов, проектирование БД

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 76 Use cases Варианты использования документируют функциональные требования к системе Варианты использования документируют функциональные требования к системе Use case driven approach Use case driven approach Выделенные варианты использования служат основой для всего процесса разработкиВыделенные варианты использования служат основой для всего процесса разработки

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 77 Применение вариантов использования Управление проектом Управление проектом Вариант использования – единица планированияВариант использования – единица планирования Тестирование Тестирование Варианты использования описывают сценарии для тестированияВарианты использования описывают сценарии для тестирования Развертывание Развертывание Варианты использования служат основой для пользовательской документацииВарианты использования служат основой для пользовательской документации

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 78 Архитектура системы Представляется набором видов системы с разных точек зрения: Представляется набором видов системы с разных точек зрения: Use-case viewUse-case view Logical viewLogical view Implementation viewImplementation view Process viewProcess view Deployment viewDeployment view

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 79 Проектирование во времени Фаза принятия Фаза принятия Синтез архитектурыСинтез архитектуры Проверка концепции (Proof-of- concept)Проверка концепции (Proof-of- concept) Фаза уточнения Фаза уточнения Разработка архитектуры-кандидатаРазработка архитектуры-кандидата Уточнение архитектурыУточнение архитектуры

Курс SE MSF.NET Концептуальное, логическое и физическое проектирование 80 В качестве фона использовано изображение космического аппарата Океан-О. Такие спутники изготавливает расположенный в Днепропетровске завод ЮМЗ