скачать книгу бесплатно
Архитектура цифрового мира
Андрей Николаевич Трушкин
Настоящая книга посвящена становлению и совершенствованию цифрового мира, отражает связь развития экономики, разделения и углубления труда и сферы ИТ. Автор дает прямые ответы на ключевые вопросы. Как должна развиваться архитектура цифрового мира? Как должен быть выстроен процесс цифровой трансформации, чтобы развитие организации носило перманентно интенсивный характер? Как значимо повысить эффективность инвестиций в ИТ? Книга будет полезна как ИТ-специалистам, так и руководителям организаций.
Архитектура цифрового мира
Андрей Николаевич Трушкин
«Архитектура – это создание порядка света».
Антонио Гауди
© Андрей Николаевич Трушкин, 2022
ISBN 978-5-0056-0843-7
Создано в интеллектуальной издательской системе Ridero
Введение
Идеи, положенные в основу настоящей работы, возникли у автора достаточно давно, и связаны они были с его непосредственной деятельностью как архитектора-практика в области информационных технологий. И первый вопрос, возникший у него при начале работы над книгой, звучал крайне просто: «Какое название должна книга получить?»
Первым сформулированным предложением было «ИТ-архитектура в цифровом мире». Читатель может подумать, что мы недалеко ушли от него, приняв то название, которым поименована книга, которую он держит в руках или открыл на экране своего электронного устройства. Смеем возразить, что между этими двумя названиями лежит целая эпоха.
Фактически с самого начала активного внедрения информационных технологий в нашу жизнь, а прошло уже почти 40 лет с момента, как они стали уделом не только ученых, но и стали массово применяться в самых различных областях человеческой деятельности, был выделен в качестве обязательного этап проектирования программного обеспечения, сформировано понятие «ИТ-архитектура» в качестве одного из базовых, а многие квалифицированные сотрудники, задействованные в выполнении проектов, стали называться ИТ-архитекторами. Конечно, ИТ-архитектура далеко не во всем соответствовала афоризму Шеллинга («Архитектура – это музыка, застывшая в камне»), но она предоставляла общий взгляд на создававшиеся информационные системы, позволяла понять как сложность их реализации, так и перспективы, открывавшиеся по итогам внедрения.
Информационные технологии не только активным образом внедрялись во все сферы мировой экономики (сначала стран Западного мира, а потом и бывшего социалистического блока), но и изменяли мир. Безусловно, подобные изменения требовали времени и не всегда соответствовали зачастую завышенным ожиданиям. На рубеже XX—XXI веков ряд консалтинговых компаний представил доклады, которые фиксировали факт отсутствия существенного роста производительности труда в компаниях, активно внедрявших автоматизацию в производственную деятельность, от средней по экономике в общем или конкретной ее отрасли. Например, в октябре 2001-го года был опубликован доклад компании McKinsey «Рост производительности труда в США в 1995—2000», в котором констатировался факт, что на рассмотренном историческом периоде рост производительности труда в компаниях, внедрявших информационные технологии (далее ИТ), не превышал среднего значения по рынку. Исключением являлись случаи, когда ИТ сами по себе являлись новыми средствами производства. На тот момент исследования столь уважаемых консалтинговых компаний заставляли с опаской относиться к внедрению в проверенные рыночные сегменты новых направлений. И тем не менее, изменения продолжались – всё новые и новые компании самых разных областей деятельности активно переходили к автоматизации своих производственных и бизнес-процессов. Наряду с автоматизацией компаний, представляющих традиционные отрасли экономики, в начале XXI века произошел стремительный рост технологических и финтех-компаний (FinTech), создавались социальные платформы, приобретшие международный характер, что вносило коренные изменения в структуру экономики как развитых, так и развивающихся стран. В 2010-е годы изменения приобрели драматический характер.
Чем же обусловлено подобное изменение? В 2001-ом году говорилось об отсутствии значительного влияния ИТ-технологий на производительность труда и изменение структуры экономики. Спустя 20 лет (не такой большой срок по меркам истории человечества, даже если акцентировать внимание на периоде интенсивного развития, обычно отсчитываемого от Славной революции в Англии – 1688 года), когда автор приступил к созданию настоящей книги, рынок цифровых технологий является самым быстро растущим в мире, более того, в нем открываются все новые и новые возможности для инвестирования, участники традиционных секторов экономики стремительно трансформируются в соответствии с новыми реалиями. Мы видим, что совершенно различные компании декларируют собственную трансформацию в ИТ-компании, предоставляющие финансовые, коммуникационные, логистические и иные услуги. Как правило, сложные процессы развития и внедрения технологий (не только ИТ) описываются так называемой S-кривой. Пример S-кривой приведен на Рисунке 1.
Рисунок 1. Пример S-кривой
Традиционно закон S-кривой отражает изменения ключевых показателей происходящих в сложных системах изменений, при этом количественный характер изменений носит описательный характер вспомогательного свойства. Упор данного закона делается на качественные изменения. В соответствии с законом S-кривой, развитие технологий проходит три ключевые стадии:
• Рабочий подготовительный этап, характеризующийся значительными инвестициями финансовых, временных и трудовых ресурсов с относительно невысокими результатами, часто его так и называют – этапом подготовки. Примером работ, выполняемых на данном этапе, могут служить научно-исследовательские и опытно-конструкторские работы.
• Этап интенсивного внедрения технологий, на котором происходит захват рынка, сопровождаемый резким ростом популярности технологии, при этом принципиально меняется характер отдачи инвестиций, вкладываемых в соответствующее направление, в зависимости от эффективности технологии именно на данном этапе происходит отдача инвестиций и получение прибыли.
• Этап стагнации, при наступлении которого технология уже не дает серьезной отдачи, а потому на смену ей приходят новые направления, в свою очередь характеризующиеся рассматриваемым законом.
Необходимо отметить, что далеко не все технологии и направления развития проходили все указанные этапы (в том числе, последовательно) – многие либо не оправдывали ожиданий, «сваливаясь» с кривой развития и уходя в небытие, к некоторым возвращались на новом историческом, научно-техническом и технологическом уровне.
На значимых исторических периодах можно увидеть актуальность данного закона для самых различных сфер деятельности, для частных решений и глобальных технологических тенденций. В качестве наглядного примера можно привести энергетический сектор экономики.
Если говорить об энергетике, следует привести в пример уголь, бывший ключевым ресурсом в течение XIX – начала XX века, сменившую его в данном качестве нефть, а также возобновляемые источники энергии (ВИЭ), качественное положение которых на соответствующей S-кривой представлено на Рисунке 2.
Рисунок 2. S-кривая источников энергии
Угольная генерация прошла этап активного внедрения и рассматривается современными гигантами мировой экономики в качестве во многом устаревшего направления приложения усилий. Соответствующая отрасль не генерирует значимой прибыли, но по-прежнему может использоваться для балансировки энергетических потоков, представляя собой технологически надежное и проверенное временем решение. Нефтяная генерация крайне бурно развивалась в течение XX века, но в последнее время вошла в стадию, когда многие ключевые игроки соответствующего рынка направляют свои усилия в смежные области, диверсифицируя направления деятельности. Капитальные инвестиции в данном секторе уже не показывают того бурного роста, который был характерным для ушедшего века. Что же касается ВИЭ, то данному направлению еще предстоит доказать свою актуальность и перспективность, перейдя в фазу роста. Речь при этом идет как о направлении в целом, так и о конкретных технологиях, входящих на сегодня в сам термин ВИЭ, носящий комплексный характер.
Если вернуться к ИТ, то можно утверждать, что для данного направления также характерно развитие, описываемое S-кривой. На основании приведенных выше исследований, а также актуальных тенденций рынка, выскажем мнение, что для сегмента ИТ характерна точка перелома – переход от подготовительного этапа к этапу интенсивного внедрения технологий, при этом указанный переход еще нельзя считать свершившимся. Текущее положение ИТ показано на Рисунке 3.
Рисунок 3. S-кривая ИТ
Упомянутые выше доклады рубежа веков вполне корректно описывали подготовительный этап – компании самых различных секторов экономики активно инвестировали в ИТ, внедряли соответствующие технологии в повседневную работу, но эффективность их производственных и бизнес-процессов не показывала качественных изменений по сравнению с партнерами и конкурентами, пренебрегавшими указанными инвестициями. Отметим, что непосредственно сами консалтинговые агентства на тот момент не использовали собранную фактическую базу для построения долгосрочных прогнозов относительно глобальных перспектив всего сектора ИТ. Время подтвердило правомерность такой позиции.
Спустя двадцать лет сложно представить жизнь без ИТ. И речь в данном случае пойдет не о легкомысленных занятиях, которые предпочитают приводить в пример некоторые консерваторы. Проведем мысленный исторический эксперимент: представим себе пандемию коронавирусной инфекции SARS-CoV-2 и связанный с ее начальным периодом практически общемировой локдаун в 2001-ом году с соответствующим уровнем развития ИТ. Нетрудно, проведя соответствующую экстраполяцию, прийти к выводу, что если сегодня спад экономики той или иной страны, вызванный противоэпидемическими мероприятиями, является предметом дискуссии, то в предложенном эксперименте мировая экономика попросту не пережила бы соответствующих мер. Возможности удаленной работы, новый технологический уровень медицинской, финансовой, промышленной сфер, принципиально иной коммуникационный уровень качественно изменили и возможности ответа даже на столь серьезные вызовы, одним из которых и стала пандемия. На фоне приведенного примера изменения, произошедшие в конкретных сферах общественной жизни, можно считать частными:
• Переход финансового сектора к формату дистанционного обслуживания в качестве приоритетного, что привело к качественно новому предоставлению услуг и нагрузочной способности.
• Моделирование сельскохозяйственной деятельности, позволяющее на порядки повысить эффективность расходования удобрений и аналогично снизить число людей, занятых в соответствующем секторе экономики.
• Переход к безлюдному производству с новым уровнем эффективности.
• Новые коммуникационные возможности, включающие, например, вытеснение традиционных голосовых звонков звонками через мессенджеры.
Приведенный перечень специализированных отраслевых изменений является далеко не полным – его исчерпывающее перечисление не является задачей настоящей работы.
С учетом вышеизложенного мы можем с полным правом сказать, что за последние 20 лет мир стал действительно цифровым.
Но если мир стал цифровым, то следует вернуться к вопросу, которым был открыт текущий раздел: почему было принято решение отказаться в названии книги от приставки «ИТ» применительно к архитектуре. Как уже отмечалось выше, понятие ИТ-архитектуры было введено практически одновременно с началом активного внедрения ИТ в различные сегменты человеческой деятельности, введен в качестве обязательного при создании новых информационных систем этап проектирования, сформулированы требования к роли ИТ-архитектора. Всё это произошло еще в первой половине 80-х годов XX века. Но с тех пор происходили колоссальные изменения не только в части влияния ИТ на мир, рассмотренного выше, но и влияния мира на ИТ. Концептуально это взаимовлияние представлено на Рисунке 4.
Рисунок 4. Взаимовлияние ИТ и мира
ИТ активным образом внедрялись в самые различные отрасли экономики, качественно изменяя их, но и сами изменялись в рамках этого внедрения. В условиях трансформации лидеров экономических секторов в ИТ-компании неверно продолжать утверждать, что ИТ является уделом избранных – по сути, все сотрудники этих компаний начинают работать в ИТ, в том самом цифровом мире, который уже построен, очертания которого сформированы на наших глазах. Таким образом, нам кажется в корне неверным продолжать употреблять термины «ИТ-архитектура», «архитектура информационных систем» и т. д. Правильным будет говорить об архитектуре обсуждаемого цифрового мира. Именно данный термин и будет использоваться в книге в дальнейшем. Более того, архитектура становится образом мыслей, к ней может применяться термин mindset, имеющий зачастую более широкое значение. Указанный аспект мы подробно рассмотрим в соответствующей главе.
Данное терминологическое уточнение исключительно важно в части подчеркивания направленности настоящей книги. Возвращаясь к обсуждению проблематики S-кривой ИТ, необходимо задать себе следующий вопрос: «Если мир уже можно назвать цифровым, если неправильно говорить об ИТ, предполагая соответствующее направление уделом избранных, то почему при обсуждении S-кривой мы говорим лишь о точке перелома, но не о полноценной фазе интенсивного внедрения?»
Говоря о структуре и закономерностях самой S-кривой, можно отметить, что те секторы (технологии, направления), которые успешно преодолели (преодолевают) фазу интенсивного развития, отличались на соответствующем этапе исключительно высокой с точки зрения актуального временного периода наукоемкостью. Формировались самостоятельные научные дисциплины, посвященные соответствующим направлениям, создавалось единое концептуальное и смысловое пространство. К сожалению, на сегодня нельзя констатировать подобное формирование в случае ИТ и архитектуры. Само понимание архитектуры зачастую носит принципиально разный характер, определяемый спецификой деятельности конкретного специалиста. Иногда, говоря об архитектуре, подразумевают сетевую схему информационной системы. В некоторых случаях речь идет о наборе технологий, применяемых в конкретном решении. Иногда об инфраструктуре, обеспечивающей функционирование организации.
В настоящей книге не рассматриваются вопросы составления сетевых схем, организации межсетевого экранирования, инфраструктурного обеспечения подобных процессов. Автор оставляет данные вопросы специалистам, ни в коем случае не отрицая, тем не менее, их важность. Указанный круг проблем напрямую связан с аспектом информационной безопасности, который не может игнорироваться с учетом той структуры современного мира, которая была выстроена в последние десятилетия. Тем не менее, это может считаться лишь частным вопросом архитектуры. Мы рассмотрим вопросы связи архитектуры и информационной безопасности в соответствующем разделе.
Подробное рассмотрение проблем использования тех или иных технологий является исключительно обширным и глубоким вопросом. В качестве примера на Рисунке 5 приведен список технологий, которые могут использоваться в рамках комплексного проекта по автоматизации. Список не является полным или исчерпывающим и приводится исключительно в качестве наглядного примера сложности вопроса. Современные решения, позволяющие автоматизировать целые отрасли экономики, не ограничиваются одной из технологий – они требуют достаточно широкого технологического спектра, при этом правила и границы применимости соответствующих частных технологических компонентов могут отличаться от случая к случаю. Отметим также, что технологический набор, представленный на Рисунке 5, не является рекламой конкретных продуктов, а лишь иллюстрирует сложности состава современных решений, актуальных для цифрового мира.
Подробное рассмотрение структуры и особенностей каждой технологии, применимой для использования в комплексном проекте автоматизации, выйдет за пределы любой книги. Отметим, что для ИТ характерна исключительно высокая скорость развития, поэтому подробное рассмотрение каждой технологии сопряжено с неизбежным устареванием подобного исследования. Автор не претендует на пальму первенства в части проведения подобных исследований, оставляя ее представителям сообществ, непосредственно занимающихся развитием соответствующих технологий.
Рисунок 5. Пример списка технологий для комплексного проекта автоматизации
Вместе с тем, необходимо отметить, что комплексные исследования, ставящие в центре рассмотрения основную проблематику ИТ в целом, рассмотрение ИТ в качестве научной дисциплины, на данный момент крайне немногочисленны. Данный факт не позволяет утверждать, что для ИТ уже актуальна фаза интенсивного развития. Большинство работ посвящены частным вопросам, как в случае с обеспечением информационной безопасности, либо направлены на обеспечение глубокого понимания конкретных технологий. Автор стремился восполнить данный пробел, направляя свои усилия именно на интенсификацию развития ИТ. Соответствующим образом и построена настоящая книга. Частные случаи и конкретные технологические решения будут упоминаться в качестве примеров, иллюстрирующих комплексное рассмотрение.
Тенденции и ключевые направления развития
Ключевые тренды развития
Переход от стадии подготовки (Рисунок 3) к стадии интенсивного развития ИТ сопряжен с формированием ключевых трендов, оказывающих влияние на развитие как отрасли, так и всего цифрового мира. Точка перелома сопряжена именно с качественным формированием соответствующих тенденций, при этом характеризуется недостаточным следованием им: не все участники цифрового мира принимают важность той или иной тенденции, многие из которых незаслуженно игнорируются, внедряются хаотично, зачастую и вовсе объявляются не значимыми с точки зрения архитектуры. По ходу настоящей главы в соответствующих разделах будут рассмотрены ключевые тенденции, предпосылки их возникновения и оформления, а также последующие перспективы. Настоящий раздел посвящен общему рассмотрению данных тенденций.
Во введении говорилось о том, что в течение последних двадцати лет рынок ИТ пережил качественные изменения, при этом подчеркивалась значимость с точки зрения изменений 2010-х годов. Что же стало драйвером произошедших изменений?
В 2001-ом году из знаковых для ИТ событий следует отметить не только выход упоминавшегося выше доклада компании McKinsey, не только кризис доткомов (Dot-com bubble), завершение которого традиционно датируется именно 2001-ым годом, показавший избыточность инвестиций в акции Интернет-компаний и перегрев соответствующего рынка, но и публикацию манифеста гибкой разработки программного обеспечения (Agile Manifesto), называемого также манифестом Agile. Связь приведенных событий не следует недооценивать и сводить лишь к хронологической близости. Кризис доткомов породил неуверенность в эффективности внедрения ИТ и перспективах соответствующего рынка. Данная неуверенность стала основой вопросов, отмеченных консалтинговыми компаниями, в том числе McKinsey. Манифест Agile же был попыткой ответа со стороны профессионального сообщества на возникавшие вопросы и претензии к отрасли, ответа, предлагающего варианты повышения производительности труда и эффективности ИТ в целом. Отметим важность данного манифеста не столько в методологическом смысле, а именно таким образом иногда пытаются сузить его обсуждение, сколько в мировоззренческом. Вопросы методологии в разработке программного обеспечения стали подниматься намного раньше, уходя корнями еще в тот период, когда ИТ были уделом в большей степени ученых, не находя широкого применения в различных отраслях человеческой деятельности. Рассмотрение применимости различных методологий для современной на тот момент разработки программного обеспечения стало одной из составных частей дипломной работы автора настоящей книги. При этом манифест Agile декларировал мировоззренческое изменение ИТ.
В задачи настоящей книги не входит обсуждение пунктов манифеста. Отметим следующие значимые эффекты следования ему. Создание новых информационных систем, внедрение ИТ в производственные и бизнес-процессы предлагалось вести с учетом максимальной автономности команд профессионалов, максимально быстрой готовности минимального жизнеспособного продукта (MVP), постоянного циклического улучшения собственной работы. Манифест стал декларацией открытости ИТ миру, готовности к изменениям. От него можно отсчитывать старт взаимовлияния ИТ и мира, построение цифрового мира.
Изначально новые подходы к ИТ были востребованы не крупными корпорациями с их устоявшимися подходами, характеризующимися развитой бюрократической составляющей, а стартапами, нацеленными на получение быстрых результатов в новых областях ИТ. Результаты работы ряда стартапов стали качественным изменением взгляда на ИТ. На основе некоторых стартапов, успешно применявших гибкие методологии разработки и изменявших свое мировоззрение, были созданы глобальные технологические компании, деятельность которых на сегодняшний день вышла за рамки строго рынка ИТ: в их обсуждении участвуют ученые, политики, бизнесмены, военные, философы, социологи и люди самых разных профессий. В качестве примеров таковых компаний можно отметить Meta Platforms (ранее Facebook) и Google. Было бы значительным упрощением утверждать, что подобное качественное изменение было достигнуто исключительно следованием манифесту Agile, но последний запустил ряд тенденций, которые и являются предметом рассмотрения настоящей главы.
Внимание стартапов к работе по новым принципам вывело на новый уровень интерес к решениям с открытым исходным кодом и распространяемым на свободной основе. По мере роста стартапов, обусловленного этим повышения интереса к гибким методологиям, решения, бывшие ранее узкоспециализированными, вышли на новые рынки и стали использоваться в глобальном масштабе. Сами стартапы, становившиеся технологическими компаниями мирового масштаба, сохраняли исходную свободную культуру, в рамках которой создававшиеся технологические решения становились достоянием сообщества разработчиков. В качестве примера можно привести Apache Cassandra – одно из наиболее популярных решений в части распределенных систем управления базами данных, применяемое при создании высоконадежных хранилищ данных. Проект был разработан в компании Facebook, а в 2009 году передан фонду Apache Software Foundation. На сегодня данное решение (с открытым исходным кодом) применяется в крупнейших компаниях различных сфер деятельности по всему миру (IBM, Huawei, Netflix, Apple, Spotify и др.). Отметим, что все технологии, представленные ранее на Рисунке 5, основаны на открытом исходном коде.
Изменения в подходе к использованию технологий требуют и изменения подхода к архитектуре, самих архитектурных концепций. Если при использовании программного обеспечения, предоставляемого поставщиком в «закрытом» (vendor-lock) формате, возможным было учитывать наличие экспертизы компании-поставщика, то в случае использования программного обеспечения, основанного на открытом исходном коде, предполагающего внимание к деталям внедрения, необходим совершенно иной уровень компетенции архитектора, глубины проработки архитектуры, изменение самой культуры последней. Поэтому использование решений, основанных на открытом исходном коде, и стало первой ключевой тенденцией развития архитектуры.
Активное использование гибких методологий стартапами, формирование на их основе ряда технологических гигантов, создание последними на базе решений с открытым исходным кодом технологических продуктов, используемых для автоматизации гигантских информационных систем мирового масштаба, заставляют учитывать в качестве одного из ключевых трендов развития архитектуры фактор распределенности. Распределенность может рассматриваться в двух смысловых плоскостях. Во-первых, речь идет о территориально распределенной структуре команд разработки (в данном случае речь идет не только о программистах, но о всех специалистах, участвующих в процессе создания решений). Во-вторых, современные ИТ-решения должны активным образом масштабироваться, не снижать качество предоставления услуг при высокой нагрузке, допускать выполнение в различных часовых поясах, странах и континентах. Оба указанных аспекта оказывают ключевое влияние на архитектуру, ее развитие, на процессы проектирования новых решений. В качестве примера можно привести социальные платформы, например, Facebook. Технологические решения Meta Platforms (ранее Facebook) обрабатывают запросы на предоставление услуг миллиардов пользователей со всех континентов, при этом качество предоставления этих услуг регулярно находится на высшем уровне. По мере становления цифрового мира данные требования стали всеобщими. Если рассмотреть временной период 10 лет от характеризующегося значительным количеством знаковых для ИТ событий 2001-го года, то можно отметить, что, например, для финансовых организаций ключевым каналом взаимодействия с клиентами было отделение, а нагрузочная способность внедрявшихся ИТ-решений рассчитывалась на основании числа отделений, среднего потока клиентов через них, при этом делалась поправка на распределение отделений по часовым поясам. Спустя еще 10 лет – в настоящее время – вводятся понятия Bank as a Service (BaaS), Bank as a Platform (BaaP), которые сами по себе свидетельствуют о коренном изменении самой модели предоставления финансовых услуг – все ключевые каналы на сегодня дистанционные, при этом характер продвижения продуктов посредством данных каналов во многом соответствует модели социальных платформ. Приведенный пример характерен не только для финансового сектора экономики, но и практически для всех остальных, что и позволило еще во введении говорить о цифровом мире. При этом над созданием соответствующих решений трудятся команды, распределенные по всему миру. Работая в соответствии с гибкими методологиями, они создают актуальные продукты в итеративном и инкрементном режиме, регулярно представляя результаты своего труда клиентам и партнерам. Таким образом, архитектура должна обеспечивать возможность эффективной работы соответствующих команд, возможность достижения ими результата независимо друг от друга, при этом создаваемые решения должны обеспечивать нагрузочную способность качественно нового порядка, географически распределенный режим функционирования. Распределенность можно определить второй ключевой тенденцией развития архитектуры.
В современных организациях определяются сотни и тысячи бизнес-процессов, эффективное исполнение которых формирует пульс жизни самой организации. Традиционным архитектурным решением для автоматизации выполнения бизнес-процессов было включение в структуру ИТ-ландшафта организации компонента, обычно именуемого Business Process Manager (BPM), который позволяет последовательно выполнять шаги всех бизнес-процессов, требующих автоматизации. Отметим, что современные бизнес-процессы состоят из сотен автоматизируемых действий, при этом в организациях, следующих в своей работе гибким методологиям, в бизнес-процессы постоянно вносятся изменения, применение которых в режиме промышленной эксплуатации востребовано в реальном времени. Традиционное централизованное исполнение бизнес-процессов общим компонентом BPM ограничивает возможности независимой работы команд разработчиков, а также вызывает вопросы к собственной нагрузочной способности. Современная архитектура должна обеспечивать гибкую автоматизацию бизнес-процессов, при которой управление бизнес-процессом децентрализовано, отдельные компоненты бизнес-процесса автоматизируются независимыми командами разработчиков, немедленно внедряющими вносимые ими изменения в промышленную эксплуатацию. Соответственно, определяется третья ключевая тенденция развития архитектуры, связанная с автоматизацией бизнес-процессов.
Одним из краеугольных камней современного цифрового мира являются данные. При этом за последние годы (можно сказать, что даже за последние 10 лет) существенным образом изменился сам подход к данным. Во многом основой изменений стала деятельность технологических гигантов, выросших из вчерашних стартапов. Еще десять лет назад многие компании традиционных секторов экономики в течение длительного периода времени накапливали данные о своих клиентах, продуктах, технологических процессах структурированным образом, предполагавшим сбор информации из анкет, данных органов государственной власти, кредитных бюро, истории взаимодействия с организацией и/или ее несколькими партнерами (с которыми были заключены договоры, предусматривавшие возможность передачи соответствующих данных). Затем на основе собранных данных строились аналитические витрины, позволявшие не только формировать обязательную отчетность, но и определять показатели эффективности и их достижение, планировать разработку новых продуктов организации и т. д. При этом построение аналитических витрин занимало продолжительное время, сами же витрины и выводы на их основе носили статистический характер. В последние 10 лет под влиянием технологических гигантов в части работы с данными произошли существенные изменения. Созданы социальные платформы международного характера, пользователи которых предоставляют сведения о себе, носящие как структурированный, так и неструктурированный (информация о хобби, фотографии, видео и т.д.) характер. В результате автоматизации промышленности собирается колоссальное количество данных о состоянии оборудования, его составных частей, необходимости ремонта, параметрах помещений, где располагается оборудование и т. д. Такое количество данных оказалось фактически невозможно обработать за приемлемый промежуток времени – поломки оборудования происходили за более короткий промежуток времени, нежели требовался для расчета вероятности поломки.
На основании изменившегося характера и количества данных требовались и новые подходы к их обработке. Пионерами здесь также стали технологические гиганты. Новые средства автоматизации работы с данными позволяли обрабатывать качественно новые объемы информации, носящей как структурированный, так и неструктурированный характер, в режиме, приближенном к реальному времени. Более того, результаты обработки зачастую могут носить не статистический, а таргетированный характер. Примерами такой обработки являются лента новостей в социальных сетях и контекстная реклама. Новые возможности, открывавшиеся в результате сбора данных и их обработки современными технологическими средствами, привлекли внимание и представителей традиционных отраслей человеческой деятельности. Сегодня уже не является удивительным, например, формирование комбинированных финансовых продуктов банковскими организациями и их таргетированное предложение клиентам, при этом основанием для формирования и предложения являются предпочтения клиента, представленные им в социальных сетях. Таким образом, данные, их обработка, анализ результатов последней являются исключительно важными аспектами проектирования информационных систем нового поколения во всех областях цифрового мира. Соответственно, следует выделить четвертую ключевую тенденцию развития архитектуры – данные. Отметим также, что большинство современных технологических средств, обеспечивающих качественно новый уровень работы с данными, основаны на принципах открытого кода. Таким образом, можно отметить синергию ключевых тенденций развития архитектуры.
Сбор данных и аналитика, осуществляемая на их основе, дают основание проводить экстраполяцию соответствующей тенденции на принятие решений, выполняемое в автоматическом режиме. Логическим продолжением соответствующих тенденций становится внедрение в различные области человеческой деятельности технологий искусственного интеллекта, позволяющего принимать решения, осуществлять действия, в том числе требующие творческой составляющей и традиционно считающиеся прерогативой человека. Автоматизация соответствующих областей также стала реальностью. Отметим, что на сегодня применение искусственного интеллекта ограничивается решением узкоспециализированных задач: выявление мошенничества, диагностика заболеваний, формирование стратегии интеллектуальных игр (шахматы, го), принятие решений в области рисков, промышленная роботизация. При этом комплексные интеллектуальные технологические решения, объединяющие различные отрасли и сферы деятельности, на сегодня недостаточно развиты, невзирая на имеющийся спрос. Таким образом, следует выделить еще одну (пятую) ключевую тенденцию развития архитектуры, заключающуюся в опоре на искусственный интеллект, позволяющую давать ответ на спрос в части соответствующих решений. Внедрение искусственного интеллекта может кратно (а возможно, и на порядки) повысить эффективность и качество производственных и бизнес-процессов.
Выделенные пять тенденций являются ключевыми современными тенденциями в развитии архитектуры вследствие кратного увеличения качества внедрения ИТ, повышения эффективности соответствующих внедрений и их последующего влияния на сферы, где эти внедрения осуществляются. Отметим также, что данные тенденции не следует рассматривать изолированно друг от друга, по ходу настоящего раздела уже приводились примеры их взаимовлияния. В рамках следующих разделов выявленные тенденции будут рассматриваться более подробно, их синергия также будет подробно рассмотрена.
Необходимо отметить, что многие современные тенденции в архитектуре, считающиеся на сегодняшний день уже стандартом де-факто, такие как микросервисная архитектура, событийно-ориентированная архитектура, потоковая передача данных, машинное обучение, продуктовый подход и ряд других, были сформулированы в качестве ответов на те вызовы, которые предъявляются в рамках отмеченных в настоящем разделе тенденций развития. Данная связь также будет проиллюстрирована по ходу дальнейшего изложения.
Отдельно будут рассмотрены вопросы эволюционного и революционного развития архитектуры. Надо отметить, что вопросы соотношения экстенсивного и интенсивного развития характерны для многих отраслей человеческой деятельности. Не избежали их ИТ и цифровой мир. Рассмотрению вопроса соотношения интенсивного и экстенсивного развития в архитектуре цифрового мира будет посвящен следующий параграф.
Эволюционное и революционное развитие архитектуры
Вопросы развития любого направления всегда затрагивают аспекты интенсивного и экстенсивного развития. Первое обычно сравнивают с революцией, второе с эволюцией. Нельзя избежать рассмотрения соответствующих аспектов и в случае архитектуры.
Следует отметить, что сравнение интенсивного и экстенсивного развития носит качественный и обобщающий характер. Если же говорить о частностях, углубляться в детали, то возможны ошибки. Одна и та же тенденция в развитии, следование ей может на определенном этапе носить интенсивный (революционный) характер, с течением времени же интенсивность снижается, развитие осуществляется строго экстенсивно (эволюционно), в дальнейшем переходя к застою и неся в себе риски деградации. В то же время, строго интенсивное развитие в силу своего революционного характера использует в качестве ресурсного обеспечения мощности своей базовой технологии. Таким образом, может произойти разрушение как конкретной технологии, так и всего сектора экономики, при этом высвобождающиеся мощности становятся ресурсным обеспечением революционного рывка. Например, на базе потери интереса к большим машинам, затраты на содержание которых зачастую превышали прибыли от автоматизации, произошел стремительный рост рынка персональных компьютеров и соответствующего программного обеспечения, что в свою очередь привлекло потребителей и последующие инвестиции в данное направление. Не всякое разрушение в таком случае может создать достаточное ресурсное обеспечение революционного перехода, что чревато разрушением с последующей деградацией всего сектора экономики, технологического направления.
Рассмотрим примеры эволюционного и революционного развития архитектуры и выделим их основные характеристики. В качестве наглядного примера рассмотрения возьмем такую ключевую тенденцию развития архитектуры, как распределенность.
Как уже отмечалось, распределенность характеризуется в двух различных смысловых плоскостях: команды разработчиков, создающие конечную ценность для заказчиков и партнеров, распределены географически и работают автономно друг от друга, сами же создаваемые технологические решения функционируют в распределенной конфигурации, сохраняя высокое качество услуг.
Если взять за отправную точку рассмотрения уже упоминавшийся столь значимый для ИТ 2001-й год, можно отметить, что на тот момент ИТ-решения для большинства направлений человеческой деятельности имели «монолитный» характер, представляли собой целостную единицу развертывания (либо весьма ограниченный набор таких единиц). Создание и развитие таких решений велось обширной командой развития, включавшей представителей разных направлений деятельности.
Возьмем в качестве наглядного примера финансовую сферу. Основой финансовой сферы являлась (и является) учетная платформа (в России традиционное название – автоматизированная банковская система, АБС). Эта система (при исходном проектировании) выполняла следующие функции:
• Учет финансовых/хозяйственных операций;
• Ведение счетов;
• Ведение плана счетов;
• Бухгалтерский документооборот;
• Валютный учет;
• Многофилиальный учет;
• Налоговый учет;
• Формирование учетной документации для проведения проверок;
• Формирование оперативной и аналитической бухгалтерской отчетности (операционный день и т. п.).
По мере автоматизации производственных и бизнес-процессов финансовой организации в состав учетной платформы включались исходно несвойственные ей функции:
• Ведение данных клиентов;
• Управление бизнес-процессами;
• Автоматизированные рабочие места сотрудников, ведущих обслуживание клиентов;
• Продуктовые операции (не только учетного характера, но и, например, продуктовые конвейеры);
• И т. д.
При этом учетная платформа представляла собой «закрытое» (vendor-lock) программное обеспечение, основанное на «закрытом» же технологическом стеке, предоставляемом независимыми поставщиками, требовавшая значительных инфраструктурных мощностей для обеспечения корректного функционирования.
Если подходить к указанному примеру (как частному случаю) с точки зрения эволюционного и революционного развития, то следует отметить, что создание первых учетных платформ было развитием революционным (сам факт создания систем и автоматизации соответствующей области деятельности), сменившимся эволюцией (монотонное наращивание целевого функционала учетной платформы, например, основанное на появлении новых регуляторных требований), также чреватое застоем и деградацией (дополнение системы несвойственным ей с точки зрения потребностей бизнеса функционалом).
Пример указанного функционала монолитной системы в формате учетной платформы приведен на Рисунке 6.
На Рисунке 6 представлено разделение учетной платформы на следующие составные блоки:
• Целевой функционал, который направлен на автоматизацию собственно учетной функции;
• Вмененный функционал, который не связан непосредственно с целями учета;
• Автоматизированные рабочие места, к которым можно отнести целевые (АРМ бухгалтерии) и вмененные (АРМ специалиста по обслуживанию клиентов).
Отметим, что Рисунок 6 не претендует на детальное отображение функционала учетных платформ, внедрявшихся и разрабатывавшихся в финансовых учреждениях. Также следует отметить, что далеко не все финансовые организации современности смогли исключить вмененный функционал из используемых ими учетных платформ, что существенно влияет на возможность применения гибких практик разработки при внедрении ИТ в них (финансовых организациях) в негативном ключе.
Рисунок 6. Пример монолитной системы в формате учетной платформы
Развитие учетных платформ осуществлялось в соответствии с длительными производственными процессами, предполагавшими последовательное прохождение ряда стадий, таких как анализ, проектирование, разработка, тестирование и отладка, при этом релизные циклы решений занимали по нескольку месяцев. Различные компоненты решений оказывали взаимовлияние друг на друга и не могли разрабатываться параллельно, либо же их параллельная разработка была крайне затруднена.
К эволюционному переходу в те годы можно отнести создание новых информационных систем, автоматизировавших часть вмененного функционала учетных платформ, и их точечную интеграцию с последними. Таким образом удавалось несколько упростить функционирование отдельных программных комплексов за счет усложнения интеграционных взаимодействий. Указанные изменения не обеспечивали существенного роста эффективности.
Революционным переходом можно было считать переход финансовых организаций того времени (речь идет о передовых организациях соответствующего сектора) к модели сервис-ориентированной архитектуры (service-oriented architecture, SOA), предполагавшей разнесение различных блоков функционала по отдельным автоматизированным системам, каждая из которых предоставляла доступный контрагентам функциональный набор в формате групп сервисов, при этом интеграционные взаимодействия между системами, как предполагалось, должны были осуществляться унифицированным образом. Пример организации SOA представлен на Рисунке 7.
Рисунок 7. Пример организации SOA
Рассмотрим структуру SOA, пример которой представлен на Рисунке 7, более подробно. При внедрении соответствующих архитектурных практик ИТ-ландшафт организации (в нашем примере финансовой) распределялся по функциональному назначению: выполнение учетных функций (учетная платформа), управление взаимодействием с клиентом (система Customer Relationship Management, CRM), системы дистанционного банковского обслуживания (ДБО), продуктовые конвейеры (на Рисунке 7 в качестве примера приведен кредитный конвейер).
Создатели архитектурных практик SOA стремились выставить акценты при разработке и развитии информационных систем в соответствии с функциональными границами областей, ими автоматизировавшимися. При этом унификация интеграционного взаимодействия осуществлялась посредством реализации шаблона проектирования «Корпоративная сервисная шина» (Enterprise Service Bus, ESB), подробное описание которого приведено в книге Gregor Hohpe, Bobby Woolf «Enterprise Integration Patterns» (2003, ISBN 978—0321200686). Для реализации указанного шаблона применялись, как правило, отдельные информационные системы (было выпущено немало как «закрытых» решений, таких как IBM WebSphere ESB, так и основанных на принципах открытого кода, как Apache ServiceMix). Ключевыми задачами, решавшимися при реализации шаблона ESB, были следующие:
• Обеспечение прозрачной маршрутизации взаимодействий между интегрируемыми информационными системами с избавлением последних от необходимости детального знания о месторасположении контрагентов.