
- •ЛЕКЦИЯ 14 АРХИТЕКТУРНОЕ ПРОЕКТИРОВАНИЕ
- •Основные виды деятельности программной инженерии
- •Основные виды деятельности программной инженерии
- •Сложность программных систем
- •Метрики измерения сложности
- •Когда использовать модели архитектуры?
- •Этапы проектирования (Ян Саммервил)
- •Этапы проектирования (Ян Саммервил)-2
- •Этапы проектирования (Ян Саммервил)
- •Этапы проектирования (Ян Саммервил)-3
- •Архитектурное
- •Что такое архитектура? (Show, Garlan)
- •Что такое архитектура? (IEEE 1471)
- •Что такое архитектура? (IEEE 1471)
- •Система (IEEE 1471)
- •Система (IEEE 1471)
- •Миссия (IEEE 1471)
- •Миссия (IEEE 1471)
- •Что такое архитектура? (IEEE 1471)
- •Что такое архитектура? (IEEE 1471)
- •Окружение (IEEE 1471)
- •Что такое архитектура? (Krutchen)
- •Унифицированный процесс Модели программной системы
- •Архитектурное представление прецедентов
- •Логическое представление архитектуры
- •Архитектурное представление реализации (выполнения)
- •Архитектурное представление процесса (управления)
- •Архитектурное представление развертывания
- •Архитектурно-значимые требования проекта
- •Расширяемость
- •Изменение требований
- •Производительность
- •Защищенность от НСД
- •Исключение ошибок
- •Бесперебойная работа
- •Простота
- •Конфликты требований проекта
- •Круг интересов архитектуры
- •Круг интересов архитектуры
- •Структура
- •Круг интересов архитектуры
- •Поведение
- •Круг интересов архитектуры
- •Значимые элементы
- •Круг интересов архитектуры
- •Круг интересов архитектуры
- •Позиции заинтересованных лиц
- •Позиции заинтересованных лиц
- •Круг интересов архитектуры
- •Логическое обоснование
- •Круг интересов архитектуры
- •Окружение
- •Круг интересов архитектуры
- •Команда разработчиков
- •Спасибо за внимание

ЛЕКЦИЯ 14 АРХИТЕКТУРНОЕ ПРОЕКТИРОВАНИЕ
Проектирование
информационных
систем

Основные виды деятельности программной инженерии
Формирование видения Бизнес-анализ Анализ требований
Разработка
архитектуры
Детальное
проектирование
Реализация
Тестирование Управление проектом
Управление
требованиями
Управление средой
Управление
конфигурацией
Усовершенствовани
е
Экспертиза
(испытание)
Документирование
Обучение
Внедрение
Эксплуатация
Сопровождение

Основные виды деятельности программной инженерии
Формирование видения Бизнес-анализ Анализ требований
Разработка
архитектуры
Детальное
проектирование
Реализация
Тестирование Управление проектом
Управление
требованиями
Управление средой
Управление
конфигурацией
Усовершенствовани
е
Экспертиза
(испытание)
Документирование
Обучение
Внедрение
Эксплуатация
Сопровождение

Сложность программных систем
Программа вычисления корней квадратного уравнения
Сайт- «визитка»
Web-приложение B2C
CRM-система для предприятия из 10 человек
ERP-система.

Метрики измерения сложности
Размерно-ориентированные метрики
LOC, KLOC
Человеко-месяцы
Производительность
Функционально-ориентированные метрики
FP, functional points (Альбрехт)
Исходные характеристики
Вводы, выводы, запросы, внутренние и интерфейсные файлы
Системные параметры приложения
Производительность

Когда использовать модели архитектуры?
Крупная программная система
Повторное использование архитектуры
Всегда
Какую архитектуру
использовать?
Требования проекта
Инструментарий и опыт команды

Этапы проектирования (Ян Саммервил)

Этапы проектирования (Ян Саммервил)-2
1.Архитектурное проектирование.
Определяются и документируются подсистемы и связи между ними
2.Обобщенная спецификация.
Разрабатывается для каждой подсистемы, описывает сервисы и ограничения
3.Проектирование интерфейсов.
Спецификации интерфейсов должны
быть точно выраженными и однозначными, чтобы использование подсистем не требовало знаний о том,

Этапы проектирования (Ян Саммервил)

Этапы проектирования (Ян Саммервил)-3
4.Проектирование компонент.
Производится распределение функций (сервисов) системы по различным компонентам и их интерфейсам.
5.Проектирование структур данных. Детально разрабатываются необходимые структуры данных.
6.Проектирование алгоритмов. Детально разрабатываются алгоритмы, предназначенные для реализации системных сервисов.