$30 off During Our Annual Pro Sale. View Details »

Чем занимается IT-архитектор

Чем занимается IT-архитектор

- Как создается IT-архитектура
- Задачи IT-архитектора
- Подходы к реализации IT-архитектуры

Александр Бындю

November 28, 2018
Tweet

More Decks by Александр Бындю

Other Decks in Technology

Transcript

  1. Чем занимается IT-архитектор
    https://byndyusoft.com

    View Slide

  2. Александр Бындю
    Эксперт в Agile и Lean · IT-архитектор
    CEO в http://byndyusoft.com
    Преподаю в университете
    Веду блог http://blog.byndyu.ru
    В прошлом:
    • Тренер в ScrumTrek
    • Вожатый на AgileCamp
    • IT-директор
    • Программист

    View Slide

  3. Как придумывается IT-
    архитектура?
    1. Бизнес: сроки,
    стоимость, SLA,
    приоритеты, риски
    2. Технологические
    возможности
    3. Потоки данных
    4. Наследие систем и
    бизнес-процессов

    View Slide

  4. IT-архитектор
    Бизнес
    IT
    1. Договариваешься с
    бизнесом:
    a. ослабить или усилить
    ограничения
    b. убрать или добавить
    требования
    2. Договариваешься с IT:
    a. Подстроить процесс
    разработки под нужды
    продукта
    b. Использовать технологии
    под нужды продукта

    View Slide

  5. Чем меньше разработчики читают
    код, тем лучше архитектор
    Разработчики:
    a. Знают где и что искать
    b. Знают куда и что добавлять
    c. Понимают метафору системы
    Качество архитектора:

    View Slide

  6. Баланс ответственности
    ● You are held accountable for the quality of the
    software, but the lower level concerns of others
    dictate what the quality really is
    (ResponsibilityWithoutAuthority)
    ● You can dictate the architecture of the system, but
    you don't have to live with the day-to-day
    consequences. If the architecture falls apart, it's
    because they did it wrong.
    (AuthorityWithoutResponsibility)

    View Slide

  7. IT-архитектор
    нужен не всегда
    https://en.wikipedia.org/wiki/Cynefin_framework
    known knowns
    known unknowns
    unknown unknowns

    View Slide

  8. Будни IT-архитектора

    View Slide

  9. Работа с
    унаследованными
    системами
    https://blog.byndyu.ru/2014/01/blog-post_8.html

    View Slide

  10. Аудит
    https://blog.byndyu.ru/2013/12/it.html

    View Slide

  11. “Продажа” идеи команде
    https://blog.byndyu.ru/2012/03/domain-driven-design.html

    View Slide

  12. Выбор
    направлений
    — Какой язык
    программирования?
    — Какие ОС?
    — Какая архитектура?
    — Какие протоколы
    обмена?
    — ...

    View Slide

  13. Стратегия
    перехода на новую
    архитектуру и
    процессы
    https://blog.byndyu.ru/2016/11/it.html

    View Slide

  14. IT-архитектура

    View Slide

  15. Ценность: постоянная скорость без ускорений и
    замедлений.
    Строят два дома: один из дерева, другой из стали. Вначале скорость
    постройки и вид домов схожи, но после пересечения определённой
    черты деревянный не выдерживает.
    https://blog.byndyu.ru/2013/12/it.html

    View Slide

  16. С ростом системы сложность IT-
    архитектуры растет линейно.
    Качество IT-архитектуры:

    View Slide

  17. Способы интеграции
    1. Integration Patterns: актуальные инструменты и
    решения
    https://blog.byndyu.ru/2013/10/integration-patterns.html
    2. Integration Patterns: Shared DB, state machine и очередь
    сообщений
    https://blog.byndyu.ru/2014/01/intergration-patterns-share
    d-db-state.html
    3. Integration Patterns: Репликация и очередь сообщений
    https://blog.byndyu.ru/2013/12/intergration-patterns.html

    View Slide

  18. View Slide

  19. View Slide

  20. View Slide

  21. View Slide

  22. Потоки данных многое
    решают
    1. Нет API (файлы на диске или FTP)
    2. Нет подходящего API (метод не создан)
    3. API без нужного протокола или способа взаимодействия (не умеют
    отдавать в очередь, отдают только слепок всей таблицы а не
    дельту, только синхронное взаимодействие)
    4. Разные базовые сущности и справочники (КЛАДР и ФИАС)
    5. Данные не актуальны (проверка актуальности на стороне клиента,
    нет способа получить уведомление об изменении)
    6. Поставщики данных меняются и подключаются новые (закрываем
    их API)
    7. Данных нет

    View Slide

  23. Много читают, мало пишут
    https://blog.byndyu.ru/2014/07/command-and-query-resp
    onsibility.html

    View Slide

  24. CQRS

    View Slide

  25. Eventual consistency
    https://en.wikipedia.org/wiki/Eventual_consistency

    View Slide

  26. Переход от монолитной архитектуры к распределенной
    https://blog.byndyu.ru/2014/05/blog-post.html

    View Slide

  27. Микросервисы
    Developing Microservices with Aggregates

    View Slide

  28. Переход Мисс Россия на микросервисы
    Как мы «Мисс Россию» на руках переносили
    https://blog.byndyu.ru/2017/04/blog-post.html
    Microsoft Dev School — Микросервисы, чистый PaaS и конкурс мисс
    Россия https://blog.byndyu.ru/2017/07/microsoft-dev-school-paas.html
    1. Экономия ресурсов
    2. Масштабирование
    3. Готовые инструменты
    платформы:
    разворачивание,
    логирование, мониторинг...

    View Slide

  29. Single Responsibility Principle для
    микросервисов:
    У микросервиса есть только одна
    причина для изменения
    https://blog.byndyu.ru/2009/10/solid.html

    View Slide

  30. История трендов по
    архитектуре
    1. Сначала много разрозненных не связанных
    утилит
    2. Единое, большое, решающее все проблемы аля
    ERP
    3. Много связных маленьких сервисов <мы здесь>
    4. ???

    View Slide

  31. Мой путь в IT-архитекторы

    View Slide

  32. Как я стал IT-архитектором
    1. Блог https://blog.byndyu.ru
    2. Выступления на конференциях, мастер-классы
    3. Организация конференции https://dotnetconf.ru
    6 лет, 12 конференций
    4. Архитектурный аудит
    5. Открытые тренинги http://agilecamp.ru/
    6. Консультации компаний по Agile и архитектуре
    7. Свой компания https://byndyusoft.com
    не пишу код с 2017 года

    View Slide

  33. View Slide