ИНСТРУМЕНТЫ

Алексей Сапегин

Информационные технологии - это та область деятельности, в которой изменения происходят постоянно и с такой скоростью, что новые технологии, еще даже не успев набрать полную силу, вытесняются новейшими. Тем удивительнее, что столь очевидный прогресс в развитии информационных технологий сосуществует с "вечными проблемами" их эффективного использования в бизнес-процессах для большинства компаний. Так, например, по результатам исследований Gartner Group, около 70% проектов, реализуемых в области информационных технологий, не оправдывают ожиданий бизнеса ни с точки зрения достижения поставленных бизнес-целей, ни с точки зрения финансовой отдачи от вложенных средств. И это состояние дел сохраняется уже на протяжении нескольких лет.

Почему так происходит? Одной из причин - может быть, даже основной - является комплекс задач, который необходимо решить в процессе формирования дисциплины программного инжиниринга как промышленной индустрии (обсуждению этой темы посвящена, например, книга Steve McConnell "Professional Software Development", выход русского перевода которой ожидается до конца нынешнего года).

Однако есть и другие причины, по которым уже найденные решения по преодолению проблем в реализации проектов с трудом пробивают себе дорогу к практическому применению. В первую очередь это наличие множества частных решений и в то же время отсутствие комплексного, поддержанного соответствующим программным инструментарием. Часто проблемы интеграции уже реализованных систем порождают новые проекты разработки и т. д. Например, чтобы обеспечить комплексную поддержку проектов разработки программного обеспечения на основе единой методологии Rational Unified Process (RUP), компания Rational Software еще до вхождения в состав IBM приложила немало усилий, чтобы интегрировать средства управления требованиями (RequisitePro), анализа и проектирования (Rose), тестирования (Robot, Performance Tester), конфигурационного управления (ClearCase) и управления изменениями (ClearQuest) в составе программного продукта Rational Suite.

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

Такая цель, например, сформулирована в концепции IBM "Разработка по требованию бизнеса" (рис. 1). Следуя этой схеме, можно реализовать, скажем, такой сценарий "разработки по требованию".

Рис. 1. Инструментальные средства IBM Rational для поддержки процесса

разработки программного обеспечения

1. Бизнес-руководитель исходя из потребностей бизнес-процесса:

- формирует заявку на разработку необходимого программного продукта;

- ранжирует новую заявку по отношению к уже имеющимся;

- выбирает наиболее предпочтительную с точки зрения потребностей бизнеса, инвестиционной привлекательности, бюджета и рисков заявку для реализации (рис. 2); 

Рис. 2. IBM Rational Portfolio Manager: ранжирование заявок на разработку.В раскрывающемся списке фильтров на рисунке

выбрано ранжирование по отношению к потребностям бизнеса. По вертикальной и горизонтальной осям

отложены показатели инвестиционной привлекательности (возврата инвестиций) и потребностей бизнеса

 соответственно, рассчитанные по методике сбалансированных показателей. Размер “пузырька” указывает на

размер (бюджет) проекта, цвет - на степень риска (увеличение риска - от зеленого цвета к красному)

- проверяет доступность ресурсов и в случае необходимости перераспределяет их загрузку для оптимизации портфеля проектов по данному бизнес-направлению (рис. 3);

Рис. 3. IBM Rational Portfolio Manager: анализ доступности ресурсов. Красным цветом со знаком минус отмечено количество часов,

не обеспеченных соответствующим ресурсом. В каких проектах участвует выбранный ресурс, можно узнать из раскрывающегося

 списка проектов (Project Name). Чтобы высвободить ресурс, нужно убрать

отметку его участия в данном проекте

- назначает менеджера для реализации проекта по выбранной заявке на разработку.

2. Менеджер проекта на основании описания заявки:

- определяет тип проекта и, используя соответствующий шаблон, формирует план управления проектом;

- назначает исполнителей проекта, определяя доступные ресурсы путем поиска специалистов с необходимой компетенцией и уровнем загрузки;

- публикует план управления проектом для начала его выполнения;

- управляет ходом выполнения работ (рис. 4).

Рис. 4. IBM Rational Portfolio Manager: управление работами. На диаграмме Ганта одновременно представлены портфели: заявок

 на разработку (портфель Proposals), проектов (портфель Projects) и текущих работ по поддержке и сопровождению

инфраструктуры организации (портфель Organization). Цвет индикаторов указывает на состояние работ по проекту; необходимый

состав полей и степень детализации описания работ и календарного графика выбирается в соответствии с решаемой задачей

Для поддержки выполнения всех действий менеджера проекта в IBM Rational Portfolio Manager реализованы все необходимые для этого функции инициализации, планирования, выполнения и завершения проектов.

3. Проектная команда в соответствии со своими ролевыми обязанностями приступает к выполнению проекта:

- аналитик - выполняет функции, связанные с разработкой и управлением требованиями к программному продукту;

- архитектор - разрабатывает архитектуру приложения;

- разработчики - создают программные модули приложения;

- инженер по сборке - выполняет сборку приложения;

- тестер - тестирует приложение.

В процессе выполнения работ все члены проектной команды и заинтересованные лица используют IBM Rational Portfolio Manager для обмена информацией, получения заданий, а также для отслеживания состояний и содержания проектной документации и т. д. Учет затрат рабочего времени ведется с помощью контрольных отметок.

4. Ход выполнения проекта и общее состояние портфеля проектов отслеживается бизнес-руководителем с помощью средств динамического анализа данных (OLAP), реализованных в IBM Rational Portfolio Manager.

5. После завершения проекта разработки мониторинг использования созданного программного обеспечения осуществляется менеджером по внедрению ПО с применением средств IBM Rational Tivoli Manager.

6. Результаты мониторинга использования разработанных программных продуктов позволяют бизнес-руководителю принимать решения, связанные с управлением портфелем проектов:

- ранжированием проектов (аналогично заявкам, см. рис. 1);

- оптимизацией использования ресурсов (рис. 5).

Рис. 5. IBM Rational Portfolio Manager: распределение ресурсов. Представлены общие данные по всем

 портфелям: коричневый цвет - доступные ресурсы, желтый - ресурсы,

 включенные в план, синий - ресурсы, включенные в заявку

На этом примере легко обнаружить, что концепция "разработки по требованию бизнеса" выводит реализацию данного решения на уровень бизнес-процессов организации, не ограничиваясь поддержкой выполнения проекта только на уровне проектной команды, как это было в случае с Rational Suite.

Ключевую роль "интегратора" процесса разработки программного обеспечения с бизнес-процессами компании играет IBM Rational Portfolio Manager, обеспечивающий на корпоративном уровне поддержку таких дисциплин, как:

- управление портфелями проектов;

- управление задачами;

- управление работами;

- управление ресурсами;

- управление финансами;

- управление документами.

Этот инструмент обеспечивает также интеграцию со средствами поддержки совместной работы проектной команды, входящими в состав IBM Rational Team Unified Platform (TUP). В свою очередь, средства TUP (уже знакомый по Rational Suite набор инструментов по управлению требованиями - ReqiusitePro, управлению изменениями - ClearQuest и конфигурационному управлению - ClearCase) на основе платформы Eclipse интегрируются со средствами проектирования, разработки и тестирования, образующими платформу разработки SDP (Software Development Platform). На рис. 1 эти средства представлены в самом верхнем слое архитектуры общего комплексного решения. Краткое описание назначения и возможностей этих средств можно найти на сайте http://rational. aplana.ru/tools/default.asp.

Итак, пришло время исполнения желаний? Есть долгожданное комплексное решение для поддержки разработки ПО на корпоративном уровне, обеспеченное необходимым набором интегрированных в общую среду инструментов, и дальше нас ждет стремительный прогресс в преодолении "вечных проблем"? Наверное, это было бы так, если бы не трудности, связанные с подготовкой к внедрению подобных решений. Но первый шаг сделан - решение уже есть.

С автором, сертифицированным специалистом по информационным технологиям IBM Rational компании "Аплана", можно связаться по адресу: Alexey.Sapegin@aplana.com.

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