В прошлом году корпорация Lockheed Martin взялась за модернизацию системы управления воздушным движением федеральной авиационной администрации США FAA, сообщает издание US Government Computer News. В рамках проекта En Route Automation Modernization System (ERAM) планировалось написать более миллиона строк кода, и инспекторы счетной комиссии США сразу пометили данный проект как высокорискованный в силу большой сложности и трудоемкости программирования, что обычно приводит к немалому количеству ошибок. Однако разработчикам из Lockheed Martin удалось завершить его даже чуть раньше намеченного срока и в рамках бюджета — при этом система ERAM оказалась устойчивой к сбоям, она никогда не теряет данные и легко обновляется. Так произошло потому, полагают менеджеры проекта, что для создания ERAM использовался язык Ада, который был придуман в МО США в 1970-е годы именно для создания сложных и критически важных систем. Например, самолёты Boeing 777/787, в которых все бортовое ПО написано на Аде, в отличие от многих других марок машин никогда не выходили из строя из-за сбоев в софте.

Компании AdaCore, Green Hills Software и IBM, выпускающие средства Ада-программирования, уверены, что интерес к этому языку со стороны военных программистов и разработчиков SCADA-систем будет расти, потому что Ада считается наиболее подходящим прикладным языком программирования на бурно развивающемся рынке систем автоматической генерации и статического анализа исходного кода, нежели массово применяемые С++ и Java. Появляются и “продвинутые” модификации языка Ада — такие, как Spark (свободно доступная для американских учебных заведений), которая использовалась, например, в проекте Tokeneer ID Station агентства национальной безопасности США, подразумевающем автоматизацию доступа персонала в помещения на основе анализа всевозможной биометрической информации. Spark был специально создан для экспериментов с построением систем, исходный код которых можно математически точно верифицировать и доказать отсутствие в нём ошибок. Правда, пока объём созданного в таких экспериментах прикладного и математически “чистого” ПО не превышает 10 тыс. строк кода.

Пресс-релиз

Версия для печати