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

Тем не менее до недавнего времени ключевые поставщики средств разработки (в первую очередь, это, конечно, IBM и Microsoft) основные усилия по продвижению своих инструментов фокусировали на сегменте ИТ-поставщиков. Но в последнюю пару лет вендоры заметно сместили свой фокус в сторону корпоративных заказчиков. Любопытно, что в этом деле эти два ИТ-лидера действуют совместно, что встречается в нашей ИТ-практике не часто (один из примеров — проведение в прошлом году конференции Enterprise Developers Conference ).

Развивая деятельность в этом направлении, российское отделение IBM провело в середине февраля в Москве семинар, ориентированный в первую очередь на корпоративных клиентов и посвященный средствам IBM Rational для решения задач системного инжиниринга при реализации сложных программных проектов. Речь шла конкретно о продуктах Rational DOORS и Rational Synergy, появившихся в арсенале IBM относительно недавно, но уже применяемых в России.

Как известно, разработка ПО — это уже давно не просто написание кода и его отладка. Это сложный и длительный процесс, который описывается понятием управление жизненного цикла приложений (ALM) и в котором ключевую роль играют задачи управления требованиями и изменениями. Нынешняя платформа разработки IBM базируется на средствах компании Rational, приобретенной ровно восемь лет назад. Разумеется, с тех пор этот набор в совокупности с имевшимися у IBM инструментами постоянно развивался и пополнялся, в том числе за счет новых приобретений. Самое значительное усиление платформы произошло весной 2008 г. в результате покупки шведской компании Telelogic, ведущего мирового поставщика средств разработки ПО для высокотехнологичных отраслей и создания сложных продуктов (телекоммуникации, аэрокосмическая и оборонная промышленность и т. д.). Более того, Telelogic уже тогда позиционировала свои решения не только как средства управления разработкой ПО, а как систему управления жизненным циклом предприятия в целом (Enterprise Lifecycle Management, ELM), подразумевая под этим задачи, связанные с определением целей бизнеса и приведением бизнес-процессов в соответствие с этими целями (подробнее см. www.bytemag.ru/articles/detail.php?ID=12197).

Характерно, что именно тогда, в марте 2008-го, Telelogic предприняла попытку широкого выхода на российский рынок, открыв свое представительство, но вхождение в гигантскую корпорацию явно притормозило этот процесс, и вот сейчас, по-видимому, речь идет о новой волне активности, уже в составе мощной команды IBM Rational. Представляя платформу разработки IBM в целом и местоположение в ней новых средств от Telelogic, руководитель направления по развитию IBM Rational в российском отделении IBM Анатолий Бибиков отметил, что создание сложного ПО без современных ALM-средств сегодня практически невозможно. Во всяком случае, это относится к высокотехнологичным отраслям, которые должны работать на уровне мировых стандартов в условиях растущей конкуренции на глобальном рынке.

Отличный практический пример реализации этого тезиса представил заместитель начальника отдела разработки ПО Ульяновского конструкторского бюро приборостроения (УКБП) Сергей Жаров, который подробно рассказал о проекте по внедрению и применения продуктов Rational DOORS, Synergy и Change на своем предприятии.

УКБП — одно из ведущих предприятий авиаприборостроения в России. Его основная деятельность сосредоточена в области разработки, изготовления и внедрения авиационных систем электронной индикации и сигнализации самолетов и вертолетов, систем управления общесамолетным оборудованием, интегрированных систем измерения и вычисления воздушных параметров и лётных ограничений, а также наземных автоматизированных систем контроля и диагностики авиационного оборудования.

В мире разработка ПО для бортовых авиационных систем ведется в соответствии с международным стандартом RTCA/DO-178B/ED-12, принятым еще в 1994 г. Однако российский авиапром явно не спешил брать на вооружение этот стандарт (ко всему прочему, это недешево и требует серьезной внутренней перестройки), что негативно сказывалось на уровне конкурентоспособности его продукции на мировом рынке.

Тем не менее в последние годы с внедрением в России западных авиационных стандартов существенно изменились требования к технологии создания авиационных систем и разработке их программного обеспечения. Так, в 2004 г. в нашей стране был введен стандарт “Квалификационные требования КТ 178В. Требования к программному обеспечению бортовой аппаратуры и систем при сертификации авиационной техники” (аналог RTCA/DO-178B/ED-12). Однако переход на КТ-178В потребовал от предприятий коренного изменения существующей на предприятии технологии разработки программного обеспечения и прежде всего решения проблемы управления конфигурацией данных жизненного цикла. Наш авиапром до сих пор не очень спешил перестраиваться с учетом новых требования.

Но сейчас отступать уже некуда: с 1 января 2011 г. в России введено в действие руководство Р-4754 (аналог международного ARP-4754), которое содержит рекомендации по разработке высокоинтегрированных сложных бортовых систем воздушных судов гражданской авиации. Там, в частности, сказано, что разработчик бортовой системы должен установить трассируемость системных требований на высокого и низкого уровня к ПО, исходный код, а также на требования к аппаратуре и результаты тестирования и поддерживать эту трассируемость в течение жизненного цикла изделия. И еще — разработчик должен управлять изменениями требований.

Впрочем, дело не приказах: без наличия современных инструментов, позволяющих эффективно решать такие задачи, разрабатывать авиационные системы будет просто невозможно. По мнению Сергея Жарова, российской авиапромышленности еще только предстоит приступить к претворению этого руководства в жизнь, в то время как УКБП начал эту работу четыре года назад, уже реализовав ряд проектов.

“Вплоть до 2007 г. в силу ряда причин мы не решались приобрести специализированные решения для разработки ПО и управления данными жизненного цикла системных процессов, — отметил представитель УКБП. — Но как раз тогда появились проекты, которые было уже нельзя реализовать без учета новых требований”.

Выбор нужного ПО не вызвал проблем: простой анализ рынка показал, что 80% подобных предприятий используют продукты Telelogic. Официально проект стартовал в 2007 г. Тогда предприятие закупило 10 лицензий Rational DOORS для управления требованиями, 6 лицензий Rational Change для управления изменениями данных жизненного цикла и 10 лицензий Rational Synergy для управления версиями исходного и исполняемого кодов ПО разрабатываемых систем и приборов. В последующем по мере применения инструментов Rational в новых проектах приобретались дополнительные лицензии. Внедрение системы выполнялось силами самого заказчика при консультационной помощи IBM и ее московского партнера.

По признанию Сергея Жарова, первые полтора года внедрение шло ни шатко ни валко, специалисты примерялись к использованию новых средств. Но в 2008-м был получен реальный заказ, и работа развернулась “на полную”, хотя конкретная подготовка к применению заняла еще полгода. Адаптация сотрудников-пользователей к работе в новой полностью электронной среде заняла не более одного месяца.

Одним из первых проектов, выполненных с помощью новых технологий, стало создание блока-концентратора данных для нового пассажирского самолета Сухой Superjet 100. В DOORS были сформулированы требования всех уровней, от требований заказчика до требований низкого уровня к ПО, и установлена их трассируемость. В DOORS также размещались другие данные системных процессов и процессов разработки ПО. Средствами Synergy был обеспечен версионный контроль исходного и исполняемого кодов создаваемых версий программного обеспечения. С помощью Change производились регистрация сообщений о проблемах и управление изменениями данных, находящихся в DOORS и Synergy. Инструменты Rational позволили обеспечить конфигурационное управление данных жизненного цикла системных процессов и процессов разработки ПО в соответствии с требованиями КТ-178В и других стандартов, применяемых при создании блока-концентратора данных.

В настоящее время DOORS, Change и Synergy широко применяются для разработки требований и управления данными жизненного цикла при проектировании авиационных систем новых самолетов ТУ-204СМ, МС-21, а также систем и оборудования для перспективных вертолетов, разрабатываемых к МВЗ им. М. Л. Миля, ОАО “Камов” и Казанским вертолетным заводом.

“Сегодня без наличия соответствующих инструментов международные конкурсные комиссии даже не принимают заявки к рассмотрению, — подчеркнул Сергей Жаров. — В то же время сам факт использования таких продуктов, как DOORS, уже не требует проведения соответствующих сертификаций по управлению качеством. Если вы работаете в его среде, то уровень качества обеспечивается автоматически”. Он также отметил, что внедрение этого ПО позволило перейти в новых проектах на полностью безбумажный документооборот.