Индустриальный подход к организации разработки программного обеспечения

Борис Позин: «В мире лишь немногие организации достигли высшей степени зрелости связанных с программным обеспечением технологических процессов»

Проблемам индустриальной разработки конкурентоспособного ПО посвятили прошедшую в середине апреля конференцию ее устроители — «АйТи», Rational Software и Market-Visio (последняя представляет интересы аналитической компании GartnerGroup в Финляндии, России и странах Балтии). Организаторы, собравшие в одном зале и представителей разработчиков, и специалистов предприятий-заказчиков, рассказали о современных тенденциях, методологиях, и особенно подробно — об инструментарии для создания ПО, созданном компанией Rational. Лейтмотивом конференции стал вопрос о том, как разрабатывать ПО быстрее и с более высоким качеством, чем раньше.

Мика Янтунен, аналитик компании Market-Visio, подчеркнул, что ключевой в данном контексте является проблема оптимизации процесса разработки и имеющихся для этого ресурсов. Если начинать крупный ИТ-проект «с нуля», не опираясь на ранее созданные модули, то от момента появления идеи до завершения разработки обычно проходит три — пять лет. Но за это время наверняка произойдут существенные изменения и в бизнесе, и в технологиях, и в команде проекта. Понятно, что столь длительный цикл не может устраивать современных разработчиков. Несмотря на все возрастающую сложность программ, сейчас необходимо создавать ПО быстро.

В качестве эффективного и перспективного подхода Янтунен особо выделил использование компонентной архитектуры. Согласно оценкам GartnerGroup, к 2004 году она будет доминировать в разработке ПО, позволяя достичь быстроты и высокого качества разработки за счет повторного использования программных модулей и их интеграции. Компонентная архитектура позволяет обеспечивать гибкость, высокую модифицируемость разработок, возможность совместной работы различных программно-аппаратных платформ и архитектур. С помощью этой архитектуры доставку ПО на рабочие места пользователей можно производить более гибко в соответствии с различными системными требованиями и запросами пользователей.

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

Впрочем, на разработку можно взглянуть с точки зрения более высокого уровня абстракции. Мало создать или купить ПО, нужно суметь организовать его эффективное применение, сопровождение и развитие. Многие аспекты технологических процессов, так или иначе связанных с ПО, рассмотрены в рамках подхода CMM (Capability Maturity Model), на котором подробно остановился Борис Позин, директор департамента консалтинга и методологии создания ПО информационных систем компании «АйТи». Этот подход позволяет определить и анализировать модель технологической зрелости предприятия. Модель CMM описывает процессы, которые организация (поставщик или заказчик ПО) может осуществлять для приобретения, поставки, разработки, использования, развития и сопровождения ПО, а также общие виды деятельности, характеризующие зрелость этих процессов. Наиболее полно методология CMM содержится в стандартах ISO/IEC TR 15504 и 12207.