НовостиСобытияКонференцииФорумыIT@Work
Идеи и практики автоматизации:

Блог

Тренды ИТ-архитектур -- будет супер!

Сергей Бобровский
15.01.2013 11:29:08

Сериал, посвященный развитию современных ИТ-архитектур с акцентом на прикладной стороне процесса, стартует этим постом. На каких технологиях, платформах, инструментах, фреймворках и языках программирования будут основываться крупные проекты сегодняшнего и завтрашнего дня? Свое видение представляет группа из двух десятков экспертов (включая например agile-гуру Мартина Фаулера, который в пух и прах раскритиковал SEMAT), объединившихся в хорошо известной в мире программной инженерии консалтинговой фирме thoughtworks.com.

Раз в полгода ThoughtWorks публикует Technology Radar --анализ и прогноз развития наиболее важных ИТ-трендов. Давайте познакомимся с последним отчетом.

Главная пятерка трендов:
Мобильность -- появление нового поколения инструментов создания и тестирования надежных мобильных систем;
Общедоступная аналитика -- Большие данные не означают "Большие бюджеты";
Упрощение архитектур -- универсальные методы для создания ИТ-систем, развертывания, организации надежной работы и восстановления при сбоях;
Воспроизводимые среды -- стандартизация, автоматизация и скоординированное управление процессами создания, тестирования и промышленной эксплуатации систем;
Персистенсность данных (хранение состояния процесса) -- важность этого придется понять всем разработчикам, использующим NoSQL-системы.

Третий и четвертый тренды на первый взгляд можно было озвучить и десять лет назад, настолько они смотрятся условными и обтекаемыми, словно взяты из бессмысленных пресс-релизов. Эксперты ThoughtWorks не могут этого не понимать, но копают они весьма и весьма глубоко, приводя в подтверждение своих мнений конкретные решения.

Теперь познакомимся с каждой из четырех анализируемых сфер поподробнее.

Прикладные технологии.

Микросервисы -- зафиксирован всплеск интереса к этой технике проектирования распределенных систем. Причина этому в зрелости инструментария (например, Dropwizard -- Java-среда для создания мощных RESTful веб-сервисов) и соответствующих практик (например, декларативного описания), позволяющих отказаться от монолитных систем в пользу легких распределенных решений, которые характеризуются невысокой стоимостью владения. Микросервисы особо актуальны для долгосрочных (по меркам ИТ) проектов (жизненный цикл 3-5 лет). Соответственно, вырастет интерес к инструментам диспетчеризации и оркестровки.
Рекомендуется использовать язык разметки Edge Side Includes, созданный специально для сильно масштабируемых веб-архитектур (http://www.w3.org/TR/esi-lang) и в частности упрощающий кэширование, а также Varnish (http-акселератор), позволяющий неограниченно масштабировать архитектуру горизонтально.
Или например закрытые решения типа Content Delivery Networks.

Развертывание приложений часто связано с необходимостью множества ручных настроек. Одно из возможных решений -- конфигурирование DNS, о чем PC Week/RE недавно писал.

Шаблоны агрегирования хорошо помогают в организации модульности и структурности системы, однако они плохо раскладываются в таблицах реляционных СУБД. А вот NoSQL-системы типа документоориентированной MongoDB позволяют визуализировать агрегаты как документы, фактически мэппинг получается 1:1.

Развивается концепция непрерывной поставки (Continuous Delivery) программного продукта -- за счет автоматизации все больших частей этого процесса, в первую очередь работы каналов доставки. Именно на наличие автоматизированных pipelines в приобретаемых средствах разработки и сопровождения ПО, а также на их качественный суппорт эксперты рекомендуют обратить особое внимание.

В очередной раз упоминаются аджайлы, и хотя говорено на эту тему множество раз, современные ИТ-коллективы ставят очередные рекорды по объемам "незавершенки". В борьбе с ней, напоминают гуру из ThoughtWorks, хорошо помогают уже ставшие традиционными подходы типа канбана.

Комментариев: 0

Только зарегистрированные и авторизованные пользователи могут добавлять комментарии