Выделение building block в архитектуре
Введение
Так получилось, что я попал в очередной проект глобальной ИТ‑трансформации, и времени на блог просто не осталось. Но в этой гонке как нельзя лучше проявилась цитата Марка Твена и пришла идея этого поста, который для удобства я разбил на несколько частей.
Требуется более трёх недель, чтобы подготовить хорошую речь экспромтом.
Полученные мной ранее знания, в том числе вопреки моим желаниям (почему — тема отдельного поста), помогли мне быстро ориентироваться в новом проекте. И это навеяло мне мысль о довольно избитом, но крайне правильном понятии в ИТ — building block.
Сейчас, в мире agile и микросервисной архитектуры, это понятие почти не используется, что, на мой личный взгляд, и приводит к различным казусам и проблемам. Проанализировав свой опыт в поисках ярких иллюстраций выделения правильных building block, я вспомнил начало своей карьеры в телекоме и ИТ в целом.
Это было в середине 2000‑х, когда не то что ИТ, сам телеком ещё находился в зачаточном состоянии. Этот пример хорош тем, что позволяет провести очень чёткие границы между старыми элементами системы, подлежащими замене, и новыми, которые и обеспечивают процесс ИТ‑трансформации.
Но это не означает, что в современном ИТ‑мире нельзя также провести границы между старыми и новыми элементами системы, просто этот процесс стал сложнее и требует большей квалификации как у ИТ‑команды, которая должна разумно обосновывать технологическую сторону вопроса, так и у бизнес‑команды, которая должна быть достаточно погружена в мир ИТ и технологий, чтобы понять, какие барьеры и проблемы для развития деятельности создают устаревшие элементы системы.
Получился long read, поэтому для удобства разбил его на две части: