используются наиболее дешевые средства автоматизации процесса УК, или, мягко говоря, «условно-бесплатные» версии;
услуги, связанные с технической поддержкой, не приобретаются. Такой вариант решения проблемы может
оказаться не хуже, чем полный отказ от управления конфигурацией, поскольку затраченные усилия вместо пользы могут принести только вред. Но, если в организации реализация краткосрочных проектов поставлена на поток, возможен более продуктивный путь выхода из подобной ситуации. В следующем разделе будут проанализированы особенности каждого из путей решения данной проблемы.
Оптимизация затрат на внедрение процесса управления конфигурацией
Рассмотрим, как можно оптимизировать инвестиции в управление конфигурацией для различных проектов. Начнем с крупных проектов — они, как правило, являются долго срочными, и в них участвует много людей.
Долгосрочность означает, что оптимизацию инвестиций следует осуществлять в первую очередь на основе постоянно действующих факторов. К ним относятся:
сокращение затрат на типовые операции, постоянно выполняемые участниками проекта;
расходы на техническую поддержку.
Наличие большого числа участников оказывает влияние в основном на следующие вели чины:
сокращение затрат на типовые операции, постоянно выполняемые участниками проекта;
расходы на обучение;
расходы на лицензии.
Таким образом, для крупных проектов наибольшую отдачу сулит увеличение доходов от типовых операций, постоянно выполняемых участниками проекта. Это может быть достигнуто только за счет постоянного совершенствования процесса управления конфигурацией. Поэтому в крупных проектах имеет смысл выделить дополнительные ресурсы на постоянно действующую группу специалистов, занятых совершенствованием процесса УК. Наличие такой группы (назовем ее группой совершенствования процесса) позволит также оптимизировать и все расходные статьи, важные для крупного проекта, а именно:
расходы на обучение — наличие постоянно действующей группы совершенствования процесса (ГСП) позволит использовать ее специалистов в качестве тренеров для обучения новых участников проекта, что позволит снизить затраты на обучение начиная со второго года. Первоначальное обучение все же следует проводить силами внешних специалистов;
расходы на лицензии — одной из задач совершенствования процесса УК является оптимизация использования лицензий, которая может осуществляться ГСП на основе постоянного мониторинга применения лицензий в проекте. Обычно первоначальное количество закупаемых лицензий приблизительно рассчитывается исходя из общих данных. Реальная потребность в лицензиях может отличаться от первоначальной оценки на 15-20% в ту или иную сторону;
расходы на техническую поддержку — обычно производители программного обеспечения применяют политику обеспечения не скольких уровней технической поддержки разной стоимости, зависящей от набора ус луг. Наличие ГСП в организации позволит снизить уровень технической поддержки за счет использования опыта специалистов ГСП для решения части технических проблем.
Остальные статьи расходов не столь критичны для крупного проекта. Возможности их снижения будут рассмотрены при описании других типов проектов.
Обсудим теперь противоположный тип проектов — малые проекты. Главной проблемой малых проектов является их кратко срочность, которая не позволяет говорить о реальном возврате инвестиций для одного малого проекта. Как уже отмечалось, в этом случае возникает соблазн максимально срезать все расходы, в первую очередь разовые. Посмотрим, к чему это может привести:
Сокращаем стоимость обучения специалистов проекта разработки ПС, обучив не всех, а лишь одного-двух сотрудников. Затем используем их для обучения других специалистов. С одной стороны — снижение расходов в несколько раз, хотя и не очень значительное по абсолютной величине, поскольку в малых проектах число участников не велико. С другой стороны — опасность того, что обученные специалисты уйдут, окажутся неспособными (или не желающими — для сохранения своей уникальности) передать полученные знания другим. Это может при вести к тому, что такому специалисту придется повысить зарплату, чтобы он не ушел, а это, в свою очередь, снизит эффект от сокращения затрат.
Стоимость внешних консультантов — то, на чем экономят практически во всех малых проектах, да и во многих средних. Вместо них используют собственных «гуру». Это приводит к тем же рискам, что и в случае экономии на обучении. К тому же, отвлекаясь на консультации, «гуру» снижают производительность своей основной работы.
Стоимость лицензий — на этом тоже экономят во всех малых проектах. Результат — доступен только базовый набор функций управления конфигурацией (в случае с простыми и дешевыми продуктами типа CVS и Microsoft SourceSafe). Или же (при использовании нелицензионного продукта более высокого класса) увеличивается стоимость администрирования, но в основном опять же применяются базовые функции — на самостоятельное освоение других нет времени (ведь надо и основной работой заниматься). В такой ситуации лучше использовать более простой легальный продукт.
Стоимость годовой технической поддержки — о ней можно говорить только для легальных продуктов. На этом экономят почти всегда, хотя большой выгоды не получается, так как стоимость технической поддержки зависит от количества используемых лицензий, а в малых проектах оно невелико.
Подводя итог, можно констатировать, что все рассмотренные варианты осуществляются за счет перекладывания работы на своих специалистов. Это приводит к дополнительным затратам при найме дополнительных специалистов или к снижению производительности специалистов, занятых в основном проекте. То есть такой вариант экономии сопряжен с дополни тельными рисками при незначительном снижении расходов. Рентабельность при этом остается неудовлетворительной.
Строго говоря, внедрение дисциплины управления конфигурацией на уровне одного проекта — неоправданно дорогое удовольствие. Разумный подход состоит в поэтапном внедрении УК в организации.
Общие выгоды от внедрения УК
К общим выгодам от внедрения процесса управления конфигурациями можно отнести:
прирост производительности (относительно исходного уровня) со второго проекта — 30% (в зависимости от типов проектов, количества разработчиков и числа заказчиков эффект может быть существенно выше);
планомерное развитие без резких спадов;
обеспечение взаимодействия между участниками проекта;
прозрачное управление проектом;
снижение рисков, связанных с невыполнением проекта в заданный срок с запланированными ресурсами;
четкое понимание текущей загрузки разработчиков;
использование статистической информации по ранее выполненным проектам;
независимость компании от отдельных личностей;
соответствие процессов разработки и со провождения стандартам качества (CMM, ISO 12207).
Заключение
Достижение всех вышеуказанных целей воз можно с использованием любой современной методологии, основанной на международных стандартах. Это же касается и инструментов: IBM Rational является лидером в этой дисциплине, но существуют похожие инструментальные сред ства других компаний: Telelogic Synergy, Borland StarTeam, PVCS, CVS, MS Source Safe.
Если распределить по важности элементы внедрения, то на первом месте должен быть процесс, а на втором — выбор инструментального средства, так как даже очень хороший инструмент не сможет работать в плохом процессе.