Саме програмне забезпечення, а не застарілі бойові платформи, контролює швидкість та ефективність сучасного ланцюжка ураження. Це очевидно в реальних військових ситуаціях, починаючи з імпровізованих бойових мереж в Україні і закінчуючи планами створення майбутніх винищувачів, в яких будуть задіяні як люди, так і безпілотні системи.
Книга "The Bomber Mafia" розповідає про спроби офіцерів розробити ефективну тактику для бомбардувальників, для якої особливе значення має зворотний зв'язок між оперативними результатами та розробкою нових бомбових прицілів та літаків.
Ця історія непідвладна часу: великі воєнні успіхи, такі як тактика бліцкригу, якій приписують швидкі успіхи Німеччини на початку Другої світової війни, значною мірою пов'язані з новаторською тактикою, яка була б неможлива без новітніх технологій (на той момент представлених у вигляді літаків, радіостанцій). та бронетехніки). Хоча здатність американських військових та їх промислової бази розширювати межі фізики під час проєктування літаків різко знизилася з розвитком технологій і бюрократичних процесів, попереду все ще видно горизонти майбутніх інновацій.
Фокус переклав новий текст Джейсона Вайса та Дена Патта, присвячений важливості програмного забезпечення.
У наш час конкурентні переваги у військово-технічній сфері більшою мірою визначаються програмним забезпеченням, даними, штучним інтелектом та новими тактичними прийомами, які вони дозволяють застосовувати, ніж способами обробки металу та фізичними процесами. Це очевидно в реальних віськових ситуаціях, починаючи з імпровізованих бойових мереж в Україні і закінчуючи планами створення майбутніх винищувачів, в яких будуть задіяні як люди, так і безпілотні системи.
Нові аналітичні інструменти та алгоритми обробки можуть практично реальному часі осмислити дані, що надходять від тисяч датчиків, розосереджених у просторі. Автоматизовані системи керування керують транспортом, дають завдання датчикам та іноді знаходять непередбачені помилки. Інструменти планування дозволяють операторам впроваджувати інновації в нові комплекси та тактичні системи, а також сотні разів відпрацьовувати та репетирувати сценарії. Програмне забезпечення — це сполучна ланка між нашими військовими фахівцями та системами, і все частіше зв'язок між технічною розробкою та операціями визначається цифровими даними.
Менеджери в галузі закупівель можуть досягти найкращих результатів і створити динамічне середовище навчання і вдосконалення, дотримуючись шести принципів створення інфраструктури, що дозволяє швидко і безпечно змінювати код, розділивши складні програмні комплекси на керовані частини, які можуть взаємодіяти, і впроваджуючи в проєкт талановитих програмістів, відгуки користувачів та методи забезпечення безпеки.
Спільнота Міністерства оборони із закупівель поринула у бурхливе море програмного забезпечення та технологічних змін, які не відповідають теперішнім бюрократичним процесам, динаміці розвитку промислової бази та зовнішнім викликам. Органи, які відповідають за закупівлю, повинні переглянути пріоритети розподілу коштів до прийняття річного бюджету.
Спільнота фахівців із закупівель визнає перспективну роль програмного забезпечення для військової переваги і може запропонувати достатньо інструментів та повноважень, щоб досягти такої переваги вже сьогодні. Найкориснішим був би простий набір принципів, здатних допомогти керівникам та менеджерам програм у їхньому складному виборі. Нещодавно ми написали звіт, продовжуючий розпочате Радою з оборонних інновацій дослідження "Software is Never Done".
Зокрема, наш звіт показав, що немає універсальної найкращої практики придбання програмного забезпечення. Кожен випадок індивідуальний. Як фахівці з логістики організують обмін даними між кораблями, літаками та вантажівками для своєчасної доставки товарів, так і фахівці з придбання повинні навчитися організовувати взаємодію між вебдодатками, вбудованими системами та системами проміжного програмного забезпечення. Вони повинні вибирати між програмним забезпеченням як послугою, постачанням вихідного коду та відкритими інтерфейсами, щоб забезпечити найкращий цифровий потенціал для своїх завдань.
Існує перевірений набір принципів, які можуть допомогти керівникам вміло керувати своїми придбаннями, начебто вони були компанією-розробником програмного забезпечення, яка прагне поставити систему озброєння. Подібно керівництво Amazon, Netflix, Airbnb та Uber використовувало програмне забезпечення, дані та машинне навчання для забезпечення ринкової переваги у різних галузях роздрібної торгівлі, розваг, готельного бізнесу та транспорту.
Шлях до штучного інтелекту починається з можливості розвитку ПЗ
Дані, штучний інтелект і машинне навчання є найважливішими складовими для майбутнього армії. Достатньо розглянути приклад створеного минулого року Головного управління цифрових технологій та ШІ — нової організації, яка підпорядковується безпосередньо заступнику міністра. Але чиновники мають визнати, що джерелом усіх цифрових даних є програмне забезпечення. Чим свіжішими та якіснішими дані, тим краще фахівці з обробки даних можуть сформувати моделі штучного інтелекту/машинного навчання.
Для перевірки та вдосконалення кожної конкретної моделі необхідні цикли зворотного зв'язку. Прямий та безпосередній доступ до ПЗ, розробленого для прийняття та розгортання моделей штучного інтелекту/машинного навчання, створює замкнутий цикл. Простіше кажучи, ПЗ породжує дані, дані породжують моделі штучного інтелекту/машинного навчання, і ці моделі повинні бути інтегровані в програмне забезпечення, щоб актуалізувати його. Такі гучні комерційні розробки ШІ 2022 року, як ChatGPT або Midjourney, створені шляхом обробки даних практично в масштабах усього інтернету, але засновані та реалізовані на надійній програмній основі. Ігнорування ролі ПЗ у цьому замкнутому циклі задля погоні за даними чи стратегіями штучного інтелекту/машинного навчання дає надто незначну віддачу. Кожна частина цієї цифрової тріади має розвиватися одночасно, щоб реалізувати переваги на полі бою.
Програмне забезпечення має купуватися з урахуванням майбутніх змін — не тільки для забезпечення штучного інтелекту, але й для забезпечення безпеки у світлі постійно мінливих загроз. Найкращий спосіб врахувати ці постійні зміни — фабрика або конвеєр ПЗ, що є набором інструментів і процесів, які беруть сирі інгредієнти робочого програмного забезпечення, включаючи вихідний код, і забезпечують оперативні можливості.
Основна мета компетенції у сфері закупівель програмного забезпечення наказує виконавчим директорам програм використовувати фабрику ПЗ, відповідну потребам конкретного проєкту, але визнає істотну витратність і складність створення фабрики ПЗ. Натомість керівництво має спочатку оцінити та вивчити набір наявних фабрик програмного забезпечення Міністерства оборони, що розширюється, щоб визначити, чи близька одна з них до задоволення потреб їх програми. Інвестиції в усунення невеликої прогалини, найімовірніше, будуть економічно ефективними і швидше призведуть до доступу до екосистеми програмного забезпечення, що функціонує, ніж якщо починати з нуля.
Ми також визнаємо основне значення безпеки в оборонному програмному забезпеченні. Це настільки важливо, що перевірка безпеки має бути вбудована у процес постачання із самого початку. Мета компетентності в галузі придбання програмного забезпечення № 2 визнає, що це може статися лише за тісної співпраці з уповноваженою посадовою особою для спільного партнерства та інвестування у компоненти, необхідні для досягнення безперервної експлуатації. Раннє партнерство фігурує тут тому, що надто багато уповноважених посадовців все ще не знають, що означає "перенесення кібербезпеки на ранній етап виробництва", чого він досягає і чому вони повинні підтримувати цю діяльність.
ДНК найкращих об'єднаних сил народжується з об'єднаних систем
Від концепції Mosaic Warfare Агентства передових оборонних дослідницьких проєктів до нової концепції Joint Warfighting Concept, оперативні концепції збройних сил США дедалі частіше будуються ідеї можливості гнучкого об'єднання систем. Але механічно це досягається шляхом поєднання програмних систем. Насправді цей процес ближчий до пересадки органів, ніж до гри в тетріс. Однак є кілька ключових принципів, які дозволяють це зробити, і починаються вони з визначення та розкриття інтерфейсів, які часто називають інтерфейсами прикладного програмування.
Інтерфейси прикладного програмування — це квінтесенція механізму взаємодії із програмним забезпеченням. Добре визначені інтерфейси можуть знизити ризик доступу до даних для програм. Цільова компетенція із закупівель програмного забезпечення №3 підкреслює цей момент, встановлюючи необхідність володіння інтерфейсами прикладного програмування, навіть більшою мірою, ніж вихідним кодом або файлом, що виконується. Зрештою, саме інтерфейси прикладного програмування є передумовою створення можливостей підказок і сигналів між розрізненими платформами, а чи не дані чи моделі штучного інтелекту/машинного навчання. Крім того, архітектура підприємства змінюватиметься з часом, а надійні інтерфейси прикладного програмування зменшують вплив виведення з експлуатації старих архітектур на користь нових архітектур у програмах, термін служби яких вимірюється роками.
Як в уряді, так і в корпораціях приватного сектору завжди звучить тема про те, що люди, а не технології, є найважливішими активами. Необхідність залучати, наймати та утримувати висококласних технологів означає, що програмні директори повинні навчитися поводитися як рекрутери у сфері ПЗ. Керівництво Kessel Run усвідомило марність набору персоналу за допомогою державних сайтів та звернулося для цієї мети до соціальних мереж. У них компанія представлена як ексклюзивний клуб, до якого люди повинні прагнути потрапити, навіть якщо для цього потрібно кинути софтверний стартап, щоб зайняти державну посаду з меншою компенсацією. Цільова компетенція закупівель програмного забезпечення №4 нагадує керівникам програм, що вони мають поводитися як рекрутери у сфері ПЗ, тому що цифрова модернізація потребує технологічних талантів.
Використання сучасних інструментів, концепцій та підходів до укладання контрактів
У венчурних колах Кремнієвої долини вже понад десять років популярне надання програмного забезпечення як послуги, зазвичай шляхом стягування щомісячної плати за вебдодаток, що постачається через хмару. Концепцією, що лежить в основі успіху, є ідея контракту (угоди про рівень обслуговування), побудованого на показниках, які визначають та кількісно вимірюють такі абстрактні поняття, як доступність системи.
Команди розробників використовують ці показники рівня обслуговування розробки та експлуатації системи певному рівні — наприклад, 99,9 % часу безвідмовної роботи. Коли одна організація співпрацює з іншою для надання послуг, вони укладають угоду про рівень обслуговування, в якій юридично обумовлюються очікування та фінансові санкції за невиконання певного рівня обслуговування, наприклад гарантії безвідмовної роботи. Цільова компетенція придбання ПЗ №5 полягає в тому, щоб визнати, що все, що можна легко виміряти в рівнях обслуговування, слід передавати на аутсорсинг замість того, щоб інвестувати час та гроші у власну розробку. Цей принцип дуже важливий і на ньому варто зупинитися докладніше.
Бухгалтери мислять у концепціях електронних таблиць, графічні художники — у концепціях верстки сторінок, а менеджери проєктів — у концепції старовинної діаграми Ганта, яка зображує результати робіт як ромби, які розташовані залежно від ймовірного часу їх завершення, щоб допомогти у плануванні виробництва. Діаграма Ганта відмінно підходить для складання списку завдань, залежностей та основних етапів та візуалізації прогресу на сьогоднішні. Цей інструмент управління проєктами виявився незамінним для координації виробничої діяльності на ділянці. У промислових умовах найскладніше — це не поєднати частини, а домогтися того, щоб усі частини прибутку на завод у потрібний момент.
Сама суть програмного забезпечення, і зокрема DevOps, полягає у зворотному. Якщо говорити узагальнено, то передове комерційне програмне забезпечення для роботи сучасного підприємства доступне як послуга на першу вимогу. Підприємства можуть отримати доступ до всього — від сучасного планування ресурсів до програмного забезпечення управління життєвим циклом продукту, від систем управління навчанням до систем управління людськими ресурсами. Складність полягає не в тому, щоб за допомогою програмного забезпечення доставити всі частини до певних віх у календарі, а в тому, щоб з'єднати їх для надійної та швидкої взаємодії.
Інтеграція між різними архітектурами та стилями інтерфейсів прикладного програмування, у поєднанні з десятками конкуруючих стандартів програмування, призводить до затримок у поставках та впливає на надійність та швидкість роботи системи. Інтеграція програмного забезпечення не є аналогом промислової інтеграції 20-го століття, а діаграма Ганта виявилася не найкращим методом управління діяльністю з інтеграції програмного забезпечення.
Якщо менеджмент може чітко висловити свою потребу у показниках рівня обслуговування, а відомі постачальники можуть задовольнити чи перевершити ці показники, необхідно передати реалізацію цих можливостей комерційному постачальнику чи постачальнику подвійного призначення. Це дозволить керівництву зосередитися на створенні нових рішень для трудновизначених вимог, які існуючі постачальники не можуть так легко виконати. Коли процес виробництва утруднений, виконавчі офіси програм повинні хотіти бачити блоки діаграми Ганта, а коли складність полягає у швидкості та надійності даних, їм варто орієнтуватися на рівні обслуговування.
Останній основний принцип в епоху, коли "програмне забезпечення пожирає світ", — це визначення результатів нульової довіри щодо застосування ПЗ. Це означає розбиття програмних систем на частини, придатні для захисту, щоб перевести обговорення кібербезпеки з виявлення вразливості, що передбачає повну компрометацію, на ситуацію, в якій дії зловмисників викликають активну реакцію реального часу. Розробники намагаються "ізолювати" найважливіші мережі, прибираючи з'єднання з інтернетом або зовнішніми системами, через які можна впровадити вразливості, але навіть ці рови з крокодилами зловмисники можуть взяти штурмом. Хоча це не привід для того, щоб не створювати потужний захист, але ПЗ настільки широко і динамічно, що вразливості та атаки неминучі.
Визнаючи це, Міністерство оборони США опублікувало свою стратегію "Нульової довіри", але керівники окремих програм також створюють стимули для реалізації стійкого ПЗ. Коли стійкість вбудована в структуру коду та конвеєра поставки, зловмисники не можуть визначити, чи проникли вони в систему захисту програми та чи попередила система про їхні дії команду безпеки, показавши недостовірні та нелогічні дані.
Стратегічну перевагу покращеного постачання програмного забезпечення
Якщо Міністерство оборони почне набувати та розробляти ПЗ відповідно до цих шести принципів та із застосуванням високошвидкісних механізмів доставки, здатних швидко вносити зміни, таке ПЗ забезпечить чудову адаптивність збройних сил США в порівнянні з їх стратегічними конкурентами. Адаптивність не є невіддільною властивістю програмно-визначуваних систем. Після розгортання програмного забезпечення зміна його дизайну та поведінки стає надзвичайно дорогою. Після компіляції та розгортання коду та від'єднання від ланцюжка складання, який його створив, він стає жорстким та несприйнятливим до змін. Наші шість цільових показників компетенції придбання програмного забезпечення пропонують противагу.
- Стійка робота фабрики програмного забезпечення (мета №1) на основі системи, що прийняла принцип безперервної авторизації (мета №2), забезпечує безперервне покращення програмного забезпечення, даних, а також розгортання та зворотного зв'язку, необхідних для успішної діяльності штучного інтелекту/машинного навчання.
- Коли оборонна програма володіє власними інтерфейсами прикладного програмування (мета №3), вона має можливість експериментувати з новими постачальниками, від дрібних новачків до великих компаній, постійно адаптуючись до нових загроз без накладних витрат на масштабну інтеграцію.
- Для створення цих інтерфейсів прикладного програмування, а також для правильного проектування та створення програмних додатків з нульовою довірою (мета № 4) потрібні талановиті програмісти (мета № 6).
- Нарешті, ті аспекти архітектури програмного забезпечення, які легко вимірюються та надаються на чітко визначених рівнях обслуговування існуючими постачальниками (мета №5), дозволяють максимізувати інвестиції у нові дослідження та розробки, а не в рутинні ІТ-операції.
Постачання програмного забезпечення — це доставка потрібних бітів у потрібне місце у потрібний час. Чітке визначення цілей компетенції в галузі придбання програмного забезпечення — ще один крок уперед, який допоможе спільноті фахівців із закупівель ефективніше орієнтуватися у світі програмного забезпечення. Ми повинні визнати та вивчити цінність неоднорідності та різноманітності програмного забезпечення, а також той факт, що універсальний підхід не відповідає програмно-визначеному світу, в якому має боротися боєць. Міністерство оборони США має засвоїти, що саме програмне забезпечення, а не застарілі бойові платформи, контролює швидкість та ефективність сучасного ланцюжка поразки.
Зрештою, Міністерству оборони варто офіційно визнати цифрову тріаду — програмне забезпечення, дані та штучний інтелект/машинне навчання — як рівних собі. Це допоможе Міністерству оборони знайти точку опори за доби, коли програмне забезпечення визначає тактику.
Про авторів:
Джейсон Вайс — запрошений вчений Гудзоновського інституту, колишній головний спеціаліст із програмного забезпечення Міністерства оборони, займає керівну посаду в компанії Conquest Cyber.
Ден Патт — старший науковий співробітник Гудзонівського інституту, колишній співробітник Агентства перспективних оборонних дослідницьких проектів та колишній генеральний директор компанії Vecna Robotics.