3. Обо мне
>10 лет в компании
Участвовал
в существенной части
проектов компании
в качестве руководителя
и архитектора
Работаю в одной из групп
развития бизнеса
3/60(65)
4. Понятно ли вам, что такое архитектура?
Конечно, понятно, это 100500 раз описано в стандартах
Мне все понятно, но я замечаю, что некоторые имеют
в виду что-то другое
В теории понятно, а на практике есть проблемы
Это Buzzword (как ERP, SOA и т. д.).
Все про него говорят, но никто точно не знает, что это
У меня есть свое истинное определение
Не думал об этом
Свой вариант
Вопросы слушателям
4/60(65)
5. Архитектура как Buzzword
Разговоры с упоминанием архитектуры ведутся
постоянно и повсеместно
Каждый понимает под этим словом что-то свое
Известно несколько сотен формальных
определений архитектуры
Многие формулировки носят характер скорее
эмоциональных высказываний, чем определений
Многие определения существенно неполны
(описывают только один из аспектов)
Существующие стандарты описывают, что такое
архитектура, слишком абстрактно и интуитивно
5/60(65)
6. 6/60(65)
Когда у нас слишком абстрактное
и интуитивное представление
об объекте, мы не можем с ним
реально ничего сделать.
А если этот объект критически
влияет на успех проекта, то мы
становимся заложниками случая
и стечения обстоятельств.
Мы не можем существенно влиять
на результат.
!
7. Конфуций:
Первейшей задачей управления является выбор правильных
названий...
Если названия неверны, то язык не будет соответствовать правде.
Если язык не будет соответствовать правде, тогда вещи не достигнут
совершенства.
Если вещи не достигнут совершенства, то церемонии и музыка
не будут процветать.
Если церемонии и музыка не будут процветать, то наказания не будут
справедливыми.
Если наказания не будут справедливыми, люди не будут знать,
что нужно делать.
Поэтому начальник должен давать только такие названия,
которые могут быть выражены словами, а приказывать
только то, что может быть выполнено на практике.
11. Наша попытка сформулировать
понятие об архитектуре
как об объекте более строго
В какой системе находится
С чем взаимодействует
Как устроена внутри
Какие функции выполняет
Каковы последствия от ее отсутствия
11/60(65)
12. Система,
в которой находится архитектура
Большая часть терминов
заимствована из стандарта
ISO/IEC/IEEE 42010
12/60(65)
i
13. Архитектура приложения
и архитектура предприятия
(Enterprise Architecture)
TOGAF
Захман
FEAF
Over 9000
ISO/IEC/IEEE 42010
IEEE 1471:2000
13/60(65)
20. Система представлений
о внутреннем устройстве приложения
Состоит из решений
(мы используем термин утверждение)
о внутреннем устройстве (конструкции)
приложения
Решения находятся в отношении
зависимости
20/60(65)
21. Решение B зависит от решения A
Изменение A неизбежно влечет за собой
пересмотр B
Бывают ситуации когда не очевидно какое
решение базовое
21/60(65)
A
B
Базовое
Зависимое (детализирующее)
34. Стандарты по архитектуре
(предприятия)
Таксономия и образцы моделей
Zachman Framework
FEAF
TEAF
Методы разработки архитектуры
TOGAF (ADM)
FEAF
EAP
34/60(65)
35. Функции архитектуры
в процессе производства
35/60(65)
Изменение системы
производства
Запрос
на изменение
Δ изменения
продукта
36. Функции архитектуры
1. Используется как модель приложения
2. Нормирование и технологизация работ
по проектированию
3. Минимизация рисков
4. Используется как контракт в части SCOPE
36/60(65)
37. 1. Архитектура как модель приложения
Модель объекта – это что-то,
что позволяет отвечать
на вопросы об объекте
37/60(65)
38. Декомпозиция работ по изменению
Разделение работы на независимые части
Запуск параллельных потоков работ
Интеграция результатов работ
Подзадача 1
Подзадача 2
Подзадача 3
Результат
38/60(65)
Исходная
задача
44. 44/60(65)
Определение с сайта SEI (какой-то индус ):
A good architecture is that which is totally secured,
which can accommodate future changes without
affecting the software as a whole, and which has no
redundant functionalities.
45. Возможность посмотреть вперед и представить,
как будет выглядеть изделие в целом
Минимизация пересмотра принятых
ранее решений
Continuous Refactoring
45/60(65)
57. 57/60(65)
В результате мы получили
модель, которая позволяет
вести более содержательные
разговоры об архитектуре
Например, задавать вопросы по конкретным
функциям и диагностировать проблемы
более точно
«С архитектурой все плохо»
58. Типичные проблемы с архитектурой
Не отражает актуальное внутреннее устройство
приложения
Не работает как модель приложения
Структура модулей – «поперек» возникающих задач
Не помогает декомпозировать большие задачи
Внесение изменений приводит к непредсказуемым
последствиям
Не помогает локализовать изменения
Необходимые изменения в системе требуют
постоянного пересмотра базовых решений
Не обеспечивает минимизацию пересмотра решений
«Разношерстные» решения типовых задач
Не выполняет функцию координации 58/60(65)
59. Типичные проблемы
с управлением архитектурой
Случайные решения становятся базовыми
Решение приняли походя, а от него теперь многое зависит.
Нет осознанного управления архитектурой
Проектировщики нижнего уровня
не руководствуются базовыми решениями
Не выполняется функция нормирования. Теряется
целостное представление об устройстве приложения
Базовые решения не пересматриваются вовремя
Воспринимаются как жесткие ограничения. Несмотря
на очевидные проблемы при принятии решений на более
детальном уровне
59/60(65)
64. Связь технологии и архитектуры
Деятельность архитектора направлена
на изготовление конкретного (одного)
изделия. Архитектура описывает именно его
Деятельность технолога направлена
на повышение эффективности и качества
процесса изготовления изделия (обычно
для массовых операций)
Технология предоставляет архитектору
кирпичи (материал), из которого архитектор
может делать все более сложную
архитектуру
64/60(65)