[БЕЗ_ЗВУКА] Итак, еще один сложный объект, с которым мы сталкиваемся, это сервис. Сервис — это поведение / функция системы. Мы понимаем, что любая система оказывает какой-то сервис вовне. Единственное что, что этот сервис оказывается по какому-то каналу. Например, кликер по радиоканалу оказывает свой сервис. Его поведение в основном по радиоканалу. Но есть еще один канал, потому что у этого кликера есть канал механический, по которому я нажимаю кнопочку. А легче всего представлять, что сервис оказывается как бы через окошко. То есть есть участок границы системы, и как бы вылезает такая рука и осуществляет изменения во внешней среде. Вот это поведение / функция, назначенное изменение во внешней среде, когда я что-то меняю, вот это вот и есть сервис системы. Вот сервис так и определяется. Есть система, и она что-то такое делает. Вот есть парикмахерская, вы видите. Итак, система парикмахерской. Сервис какой? Сервис стрижет. Итак, парикмахерская стрижет, делает какую-то прическу. Можно представить так, что вылезает из парикмахерской через окошко такая рука, делает прическу и залезает назад, выполнило какое-то изменение. При этом взаимодействует с чьей-то головой, с чьими-то волосами. Вы видите, в реальности все совершенно не так. Что ровно наоборот, чья-то голова попадает в парикмахерскую, парикмахерская окружает эту голову. Но все равно происходят события на границе парикмахерской и внешнего окружения, в котором происходят вот эти вот изменения. Итак, когда мы говорим о сервисе, то мы всегда думаем об оказывающей его системе и результате этого поведения, то есть о функции, о назначении вот этих вот изменений, которые делает система через вот это вот окошечко, через вот этот канал. То есть нас всегда в системах интересуют изменения в других системах. Система всегда оказывает сервис, всегда наносит какую-то непоправимую пользу внешнему окружению. Ну, или какой-то вред, это сильно зависит от рассмотрения. Сервисы могут быть, конечно, и отрицательные тоже. А также разные люди могут один и тот же сервис описывать одни как сугубо положительный, другие — как сугубо отрицательный. Но это предмет другого рассмотрения, когда мы будем рассматривать людей и их разное отношение к системам. А пока давайте рассмотрим еще один важный случай, это компьютерные программы. Компьютерная программа — это что? Компьютерная программа, вы будете удивляться, это физический объект. Это 4D-индивид. По компьютерной программе можно вот так же, как по кликеру постучать, так же, как на меня показать пальцем, компьютерная программа материальна. Надо всегда помнить, что компьютерная программа, помните, мы говорим, что систему мы рассматриваем исключительно в тот момент, когда она ведет себя как-то, она оказывает сервис, выполняет свое назначение в момент работы, когда она полностью готова, полностью работает, это означает, что компьютерную программу мы должны рассматривать в тот момент, когда она работает. А на самом деле это означает, что есть кусок компьютера, где представлена эта программа и она представляет собой какие-то фрагменты вещества, у которых есть определенные уровни напряжения по отношению друг к другу (вы видите, вот диаграмма этих напряжений), то есть оказывается, вычисление программы — это просто проведение какого-то физического эксперимента, развернутого во времени. Обычно, чтобы программа считалась, вам нужно подождать некоторое время, состояние вещества, состояние физических полей, то есть вполне реализована программа в мире, она воплощена как-то. Эта программа в физическом мире имеет абсолютно определенные места, вы можете показать прямо пальцем, где находится эта оперативная память, где находятся регистры процессора. У этой программы есть определенные состояния, которые меняются во времени. А что ж тогда исходный код? А исходный код — это описание программы. Исходный код — это какая-то информация, которую вы можете копировать, делать что угодно с ней. Но это все равно как карта, которая будет описывать территорию, все равно как меню, которое будет описывать какой-то обед. Вот это важно понимать, что если вы написали исходный код программы, это все равно, что вы не создали эту систему. Это все равно, как я сделал чертеж самолета и говорю: «Всё, самолет есть, он летает, я уже закончил свою работу». Нет, самолет когда полетит, когда он будет лететь, вот в этот момент он будет работать. Программа будет программой, когда она работает на компьютере. Но тогда она материальна, это и есть часть вот этого работающего компьютера. И надо при этом помнить, что движение DevOps, Developer Operators, оно появилось ровно из-за этого. Пока программисты считали, что если они написали исходный код, далее кинули каким-то системным администраторам, системные администраторы начали эксплуатировать эту потом программу, развернули ее на компьютерах, она у них заработала, что-то там не так пошло с клиентами — было все плохо. Потом, в какой-то момент программисты сообразили, что да, действительно, все плохо, потому что исходный код — это не более, чем чертежи, по которым будет сделана программа, которая будет работать. Скорее всего, не будет работать. Потому что чертежи никогда не работают в той среде, для которых ни на тестовом компьютере, не то что я глазами смотрю или отлаживаю себя, а в реальной среде работают с клиентами. Вот тогда они поняли, что программу тоже изготавливают, тем, что, например, она начинает находиться на серверах или начинает работать на каких-то мобильных устройствах. И вот только после того, как она там заработала, можно считать, что их работа выполнена. Вот это вот движение Developers Operators, DevOps, оно работает ровно с этим. Наконец, начали программисты (некоторые, не все пока) воспринимать программу как физический объект, который где-то находится, и с этого момента мы можем компьютерную программу считать системой. Программа тоже имеет воплощение, программа — это 4D-индивид, программа материальна. Но программа чаще всего только подсистема, в которой работают также еще и люди. Подсистема полной системы. Потому что обычно с программой работают какие-то другие люди в компаниях, и поэтому проекты по разработке программ — это обычно подпроекты разработки более крупных систем деятельности, в которых программа, как материальный объект, это только один из материальных объектов. А другие материальные объекты — это люди, это те самые компьютеры, которые поддерживают те кусочки компьютера, которые представляют собой эту программу. Там же много разных программ в компьютере, в оперативной памяти, много разного вещества поддерживают разные программы. И поэтому аккуратней будьте с пониманием того, что у вас за система: компьютерная программа или какая-то система деятельности, в которой эта компьютерная программа, или какой-то робот, в которой программа является только материальной частью. Всегда помните, что компьютерная программа — это нормальная, полноценная система, но, скорее всего, только небольшая часть того, что вам реально нужно.