Американские ИТ-директора предпочитают вести дела с офшорными компаниями высокой CMM-классификации. Но аутсорсеры иногда сообщают неверные сведения о своем уровне CMM.

ИТ-директора, заказывающие услуги по разработке программ сторонним организациям, предпочитают вести дела с теми компаниями, которые стоят на высокой ступеньке в CMM-классификации. Но аутсорсеры иногда сообщают неточные сведения о своем уровне сертификации.

В самом начале деловой встречи с директором одной компании Джейн Смит поняла, чего он от нее хочет: завышенной оценки для его департамента разработки программного обеспечения, что дало бы компании право принимать заказы от Министерства обороны США.

Смит (имя вымышленное) — член группы опытных ИТ-профессионалов, ведущих асессоров (экспертов-оценщиков), которые оценивают в компаниях эффективность их процесса разработки программного обеспечения по шкале от 1 (неуправляемая разработка) до 5 (непрерывная оптимизация) по системе качества Capability Maturity Model. Компания, о которой идет речь, претендовала на уровень 2, но, исходя из своих первых наблюдений, Смит понимала, что она заслуживала только уровня 1. На этом уровне находится большинство компаний, специализирующихся на разработке программного обеспечения: никаких стандартных методов написания программ, слабая способность прогнозировать цены или сроки поставки, а управление проектом в основном состоит из очередных заказов на доставку пиццы после полуночи.

Обменявшись любезностями, директор склонился через стол по направлению к Смит и ее коллеге, сопровождающему ее на встрече, и спросил: «Сколько за уровень 2?»

«Я встала и покинула комнату», — вспоминает Смит. — Другой же асессор остался. И компания получила желаемый уровень сертификации».

Суммы, предлагаемые за хорошую оценку по CMM, несравнимо возросли с того первого столкновения Смит с коррупцией, произошедшего лет десять назад. Сегодня многие американские госучреждения, вслед за Пентагоном, настаивают на том, чтобы компании, желающие вступить с ними в деловые отношения, имели по крайней мере уровень 3 — это означает, что разработчик обладает стандартным повторяемым процессом для отделения разработки или для компании в целом. ИТ-руководители все чаще ориентируются на оценки CMM, чтобы вычеркивать дюжины незнакомых офшорных поставщиков услуг из списков компаний, желающих вступить с ними в деловые отношения. Для ведущих ИТ-директоров «пятерка за CMM» — это магическая цифра, и компании-разработчики, а также сервисные компании, ее не имеющие, рискуют потерять заказы на миллиарды долларов от крупнейших американских и европейских корпораций.

Деннис Каллахан, директор информационной службы Guardian Life Insurance, говорит, что аутсорсерам стоит иметь пятый уровень CMM, чтобы вступить в борьбу за его заказ

«Теперь уровень 5 для нас — чуть ли непременное начальное условие, — говорит Деннис Каллахан, директор информационной службы крупной страховой компании Guardian Life Insurance. — Возможно, мы рассмотрим предложения некоторых компаний третьего уровня, но им придется намного дольше убеждать меня, чтобы я согласился вести с ними дела. Тем самым они изначально оказываются в невыгодном положении».

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

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

Что еще хуже, некоторые попросту вводят клиентов в заблуждение и говорят, что прошли оценку CMM, на самом деле не сделав этого.

Проверить достоверность заявлений об оценках CMM практически невозможно. Не существует организации, которая проверяла бы такого рода заявления. Более того, Институт программной инженерии (Software Engineering Institute, SEI) при Университете Карнеги — Меллона, разработавший CMM, не выдает никакой информации об оцененных компаниях, хотя от асессоров и требуется передача Институту записей окончательных оценок.

Раз уж американские и европейские компании решили доверить офшорным коллективам работу по созданию программ, им в первую очередь следует понять, что же означают уровни CMM.

«Менее 10% наших клиентов просят доказательства нашего уровня CMM, — говорит В. Сринивисан, директор по операциям компании ICICI Infotech, индийского разработчика программного обеспечения, обладающего сертификатом уровня 5. — Они не подвергают это сомнению и не спрашивают о деталях».

Не имея детальной информации, очень сложно отличить компанию, использующую CMM как мощную комплексную модель для бесконечного внутреннего усовершенствования, от компании, которая просто проходит оценку, чтобы завоевать авторитет. Доверившись одной только цифре подтвержденного асессорами уровня, ИТ-директора могут получить те же проблемы, которые заставили их изначально искать офшорную компанию: низкое качество и сорванные графики выполнения проектов.

«Если директора информационных служб обладают недостаточными знаниями, чтобы задавать правильные вопросы, они попадут в ловушку», — говорит Уотс Хамфри, в свое время возглавлявший разработку стандарта CMM.

Откуда взялась методика CMM

Можно сказать, что появление методики CMM вызвано неудовлетворенностью ВВС США в результатах процесса закупок программного обеспечения в 80-х годах. Это ведомство и другие подразделения Пентагона начали передавать другим компаниям постоянно растущее количество заказов на технические разработки и затруднялись в выборе подходящих подрядчиков. Университет Корнеги — Меллона выиграл тендер на создание организации, которая занялась бы проблемами улучшения процесса проверки поставщиков. Так был создан SEI. Университет нанял Хамфри, бывшего руководителя подразделения разработки программного обеспечения в корпорации IBM, и поручил ему возглавить этот проект в 1986 году.

Хамфри тут же пришел к выводу, что ВВС преследовали неверные цели.

«Мы были сосредоточены на выявлении компетентных людей, но видели, что у всех проектов ВВС был недостаток — не имело значения, кто выполнял работу, — вспоминает он. — Поэтому мы сказали: «Давайте сосредоточимся на улучшении деятельности».

Первая версия CMM, опубликованная в 1987 году, представляла собой вопросник, составленный для выявления компаний, разрабатывающих качественное программное обеспечение, из числа тех, кто желал вступить в деловые отношения. Но формат вопросника позволял компаниям преуспеть только в заполнении бланков.

«Было несложно наврать в тесте», — говорит Джесси Мартак, бывший руководитель группы разработки защиты контрактов на поставку оружия в компании Westinghouse, теперь принадлежащей корпорации Northrop Grumman.

К 1991 году в SEI существенно усовершенствовали свою методику, превратив ее в детальную модель оптимального способа организации процесса разработки, и добавили группу ведущих асессоров, обученных и уполномоченных SEI контролировать, действительно ли работа компаний соответствуют тому, что они о ней рассказывали. Ведущие асессоры возглавляют команду, состоящую из служащих оцениваемой компании (обычно от трех до семи человек, в зависимости от размера компании). Вместе они ищут доказательства того, что компания следует нормам и использует методы CMM на «репрезентативном» подмножестве (обычно от 10 до 30%) программных проектов компании. Команда также проводит серию конфиденциальных интервью с руководителями проектов и разработчиками — обычно в течение одной-трех недель, опять же в зависимости от размера компании, чтобы выяснить, что происходит на самом деле. Это нелегкая задача для находящихся в команде служащих компании, так как их просили доносить на своих коллег.

«Это может привести к тому, что на внутреннюю оценочную команду будет оказываться значительное давление, — говорит ведущий асессор, пожелавший остаться неназванным. — Им нужно быть объективными, но организация хочет получить высокий уровень оценки».

Дэвид Констант, ведущий асессор и партнер Process, консультационной компании в области программных проектов, вспоминает, как он проводил оценку в организации, где руководство научило всех разработчиков, что говорить.

«Мне пришлось прервать интервью и потребовать встречи с теми, кто перед началом каждого интервью сообщал руководству компании, с кем я собирался поговорить, — вспоминает Констант. — Печально то, что им не нужно было никого учить. Они в любом случае легко получили бы желаемый уровень — их работа была очень качественной».

Новая модель намного сложнее для использования, чем первоначально составленный вопросник. Мартак вспоминает, как в 1991 году он сказал своему руководству: «Теперь все по-другому. Если у вас есть хороший ведущий асессор, вас не смогут одурачить».

Мартак вывел свою группу на уровень 4 и в итоге сам стал ведущим асессором.

Глубина проработки и «разумность» требований CMM не вызывают сомнений у экспертов в области программной инженерии. Если компании действительно ее принимают и поднимаются по ступенькам уровней, то со временем они станут лучше обслуживать своих клиентов, что подтверждают многие примеры. Но высокий уровень CMM не является гарантией качества или производительности продукта, а оценивает только процесс. Это значит, что компания создала процессы для мониторинга и управления разработкой программного обеспечения, которых нет у компаний, находящихся ниже на шкале CMM. Но не означает, что компания хорошо использует эти процессы.

«То, что вам присвоен высокий уровень развития, еще ничего не гарантирует, — говорит Джей Дуглас, директор по развитию бизнеса SEI. — Вы можете оставаться компанией пятого уровня и производить программы, которые являются просто мусором».

Эти слова подтверждаются недавним исследованием 89 различных приложений, которое провела компания Reasoning, специализирующаяся на средствах автоматизированной инспекции программных продуктов. В целом она не обнаружила никаких отличий в количестве ошибок в коде программ тех компаний, которые имели какой-то уровень CMM, и тех, которые его не имели. Фактически в результате исследования выяснилось, что в среднем компании пятого уровня делали даже больше ошибок, чем кто бы то ни было. Но в Reasoning почувствовали разницу после того, как вернули коды разработчикам для исправления, а по прошествии некоторого времени снова их протестировали. На этот раз код компаний, имеющих сертификацию CMM, улучшился, в то время как в продукции остальных компаний никаких улучшений обнаружить не удалось.

Правда в рекламе

Ложные заявления об уровнях CMM встречаются довольно часто. Рон Радис, ведущий асессор со стажем и бывший сотрудник SEI, работал с компанией из Чикаго, одураченной в 2003 году офшорным поставщиком услуг.

«Они говорили, что были на четвертом уровне, но в действительности вообще никогда не проходили оценку», — говорит Радис, отказавшийся назвать провинившуюся компанию.

При верном исполнении CMM требует немало времени и денег. В среднем на продвижение с уровня 1 до уровня 5 уходит семь лет; и стоимость создания действительно здорового воспроизводимого процесса разработки с отслеживанием проекта и метрики во много превосходит стоимость оценки CMM (которая сама по себе обходится примерно в 100 тыс. долл.). Для маленьких компаний, у которых не хватает денег и персонала, отвлечение от бизнеса во время создания процесса разработки программного обеспечения для получения высокого уровня сертификации может показаться рискованнее, чем «лукавство», особенно, когда клиенты недостаточно компетентны. Да и зрелые компании, уже имеющие высокий уровень CMM, могут не захотеть рисковать, потратить большое количество денег и, возможно, разочароваться в итоге регулярного прохождения оценки.

Однако представители SEI отрицают, что компании завышают свои уровни CMM.

«Не найдется никого, кто бы заявил, что вся их организация имеет уровень 3, — говорит Дуглас из SEI. — Они скажут, что имеют уровень 3 вот в том центре разработки или в группе, которая специализируется вот на этой продукции».

Так или иначе, большинство компаний возвещают о своих уровнях CMM лишь с небольшим количеством объяснений. Действительно, все сервисные компании, опрошенные нами в период подготовки этой статьи, заявили, что их оценки были произведены по всей компании, в то время как на самом деле были оценены только 10-30% их проектов. Частично это происходит потому, что, по словам экспертов, оценка каждого проекта большой компании была бы громоздкой и дорогостоящей.

Тем не менее мало кто из тех же экспертов поддерживает идею о том, что оценка 10-процентной доли проектов — даже если предполагается, что они представляют все разнообразие видов работ, выполняемых компанией, должна вести к заявлениям об общекорпоративном внедрении методики CMM. Поставщики настаивают, что в этих заявлениях есть логика. Высшие уровни CMM, кроме всего прочего, требуют от компании централизованного процесса разработки программного обеспечения и отслеживания хода проектов, так как предполагается, что все служащие компании используют тот же процесс, что был представлен в оцененных, к примеру, на уровень 5 проектах, а следовательно, все проекты компании могут считаться соответствующими уровню 5.

Но если вы копнете поглубже, логика исчезает. Процесс мог коренным образом измениться со времени оценки. Действительно, индийские сервисные компании, а именно среди них было произведено наибольшее количество оценок на уровень 5, растут так быстро (некоторые принимают на работу по 50-60 новых разработчиков в неделю), что избежать перемен практически невозможно. Компании также могли изменить виды выполняемых работ и, возможно, приобрели параллельно другие не оцененные ни на какой уровень компании. И если у компании нет действенной программы тренинга для всех руководителей проектов и разработчиков — чтобы они смогли работать на том же уровне, что и участники оцененных проектов, — оценка мало что значит.

Как говорят в SEI, CMM — это «мгновенный фотоснимок», и он включает только оцененные проекты. Но если снимок был сделан более двух лет назад, то он должен сильно пожелтеть, поскольку компания больше не находится на том же уровне развития.

«Если бы я была директором информационной службы и компания сказала бы мне, что «5» — уровень CMM всей компании, я предложила бы всем, кто задействован в моем проекте, пройти оценку, — говорит Марго Виситасьон, аналитик Forrester Research и бывший менеджер по качеству в компании, разрабатывающей программное обеспечение. — Этот бизнес приносит поставщикам услуг дополнительные миллионы благодаря декларируемым ими уровням CMM. Почему бы им не произвести оценку всех своих разработчиков?»

Сколько за этот сертификат?

В действительности сегодня давление на асессоров выше, чем когда-либо, особенно при оценке офшорных поставщиков, конкурирующих на рынке аутсорсинга. Фрэнк Кох, ведущий асессор Process Strategies, еще одной компании по оказанию консультационных услуг, говорит, что некоторые китайские компании, с которыми он имел дело, обещали клиентам, что предоставят свидетельства наличия у них сертификации в соответствии с требованиями определенного уровня CMM, и рассчитывали, что так или иначе он даст им этот уровень.

Уилл Хайес, менеджер по качеству программы оценки SEI Appraisal Program, признает только один недавний прецедент лишения асессора лицензии за нечестное присуждение компании четвертого уровня. Тем не менее SEI сложно выяснить, как часто мошенничают асессоры, поскольку не отслеживаются заявления, которые компании делают относительно своих уровней CMM.

По мнению Дугласа, существуют организации, которые заявляют, что имеют уровень 5, но на самом деле никогда даже не подавали информацию на рассмотрение в SEI. Это не очень-то обнадеживает ИТ-директоров, которым вряд ли захочется выявлять ложные оценки уровня CMM тяжелым путем — видя провалы своих проектов.

Конечно, от асессоров требуется предоставление SEI и клиентам официальных документов, касающихся оценок. Ведущие асессоры должны написать финальный отчет (так называемый Final Findings Report), включающий «области, которые нужно улучшить». Однако обычно их находят даже в компаниях пятого уровня. Но нет никакого регламента относительно содержания или формата отчетов, который сделал бы их аналогичными для всех асессоров или компаний. Аналогичны только методы получения конечного числа оценки. По словам одного асессора, пожелавшего остаться неизвестным, компании часто просят «свернуть» детальные полученные данные в небольшую презентацию PowerPoint, не дающую целостного представления о компании и ее процессах разработки программного обеспечения.

«Цель отчета — показать компаниям, что им следует улучшить, в этом-то и состоит весь смысл CMM», — говорит этот аноним. — А они пытаются вынудить нас писать эти дутые опусы, которые могут умалчивать о важных деталях».

Final Findings Report — то, что руководители компаний предоставляют высокому начальству и клиентам, знающим достаточно для того, чтобы задавать вопросы. Но компании не обязаны это делать. Они могут объявить свой уровень CMM без предоставления доказательств. Они могут даже нанять своих собственных ведущих асессоров внутри компании и сами оценить возможности своей CMM. Им необязательно нанимать ведущих асессоров извне, на которых, может быть, сложнее воздействовать, чтобы получить хорошую оценку. И они могут охарактеризовать свой уровень CMM так, как они хотят, в своих маркетинговых материалах и пресс-релизах.

В SEI утверждают, что не обязаны контролировать то, что компании говорят о своих оценках. Также они отказываются раскрыть названия оцененных компаний или предоставить информацию о том, что включено в оценки.

«Мы не полиция; мы — организация, которая занимается исследованиями и разработкой методических материалов», — говорит Хайес.

Так или иначе, эксперты SEI контролируют относительно маленькую группу ведущих асессоров (приблизительно 220 человек), которые наделены правом производить сертификацию CMM. SEI всегда имел право наказывать или даже увольнять тех асессоров, которые мошенничают или плохо справляются со своими обязанностями, но на картинке редко пользовался этим правом.

В последнее время в SEI усовершенствовали саму методику CMM и планируют окончательно заменить ее (как ожидается, это произойдет примерно в декабре 2005 года) более широкой и детализированной моделью CMMI. Кроме того, повышены требования к тренингу и контролю асессоров. По словам Хайеса, в CMMI на SEI возложена проверка поступающих оценок. И в соответствии с этой моделью асессоры должны составлять отчет Appraisal Disclosure Statement, в котором четко указано, какие части организации и проектов были оценены, а также названы все люди, принявшие участие в оценке (хотя от компаний не требуется публичной демонстрации и этого отчета). SEI вместе с группой ведущих асессоров также разрабатывает своеобразный «кодекс чести асессора».

И SEI вовсе не собирается становиться неким административным органом, подобно Американскому национальному институту стандартов (American National Standards Institute, ANSI), который контролирует сертификат ISO 9000 в Соединенных Штатах. ANSI требует, чтобы компании проходили оценку каждые шесть месяцев, если они хотят сохранить свой сертификат ISO 9000, и каждый год проверяет всех своих асессоров.

«Никто не просил нас становиться надзирающей организацией. И если бы мы ею стали, что бы это дало? — спрашивает Хамфри. — Это никого бы не избавило от выполнения своей «домашней работы».

Рик Харрис, директор по развитию приложений компании OnStar, считает, что директорам информационных служб не стоит рассчитывать на получение каких-то гарантий от самого факта сертификации подрядчика в соответствии с требованиями CMM

Действительно, директора информационных служб, рассчитывающие получить от CMM какие-то гарантии, их не получат, — говорит Рик Харрис, директор по развитию приложений OnStar, телекоммуникационного подразделения корпорации General Motors. Он вспоминает менеджера одной из офшорных аутсорсинговых компаний, имеющей уровень 5, который не знал, как составить план тестирования программного обеспечения. «Моим людям пришлось объяснять ему, как это делается», — говорит он. В другой раз служащие Харриса обнаружили, что этот поставщик сильно просрочил один из своих проектов, но умолчал об этом. «Я-то рассчитывал, что такая компания предупредит меня за несколько месяцев, что она выбивалется из графика и нам надо что-то делать», — говорит он.

Такого рода проблемы могут поколебать доверие директоров информационных служб, особенно если они полагались на оценки CMM при переводе разработок в офшорные зоны или обращении к конкретной организации. Харрис понял, что имеет значение только то, что скрывается за впечатляющей цифрой. Есть ли контролируемые обязательства относительно качества, процессов и обучения? Могут ли компании продемонстрировать улучшения, достигнутые в соблюдении сроков поставки, производительности и вероятности появления ошибок? Будут ли участвовать в вашем проекте руководители проектов, прошедшие оценку? Если ответ на любой из этих вопросов отрицательный, то уровень 5 CMM что значит.

До сих пор ничто не может заменить глубокой и тщательной проверки. «Настоящая проверка — это когда вы докопаетесь до самых глубин и увидите, могут ли эти компании продемонстрировать свои способности, — говорит Харрис. — Находятся ли их люди и процессы под давлением? Согласно моему опыту, иногда да, иногда нет».

Можете ли вы поделиться какими-нибудь историями о CMM? Напишите нам на cio@osp.ru.


Christopher Koch, Bursting the CMM Hype. CIO, March 1, 2004


Пять уровней CMM

Первый уровень

У компании нет стандартного процесса разработки программного обеспечения. Отсутствует система мониторинга проектов, позволяющая разработчикам с какой-либо точностью прогнозировать стоимость или конечные сроки.

Второй уровень

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

Третий уровень

Компания объединила стандартный набор процессов и средств управления для всей организации, так что разработчикам становится проще переходить от проекта к проекту, и клиенты получают заданное качество от различных групп.

Четвертый уровень

Вдобавок к стандартным процессам компания установила системы для измерения качества этих процессов во всех проектах.

Пятый уровень

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


Двенадцать ключевых вопросов

Задавая определенные вопросы, ИТ-директора смогут отличить компании, преувеличивающие свои уровни сертификации, от тех компаний, которые сосредоточены на действительном усовершенствовании.

1. Кто проводил оценку? Если асессор никогда до этого не присваивал компаниям уровень 5, то он не обладает достаточной квалификацией, чтобы знать, как на самом деле выглядит компания этого уровня.

2. Какая часть компании была проверена? Компании, прошедшие сертификацию «целиком», могут оказаться проверенными на 10%, а то и менее тщательно.

3. Как давно проводилась оценка? Если более двух лет назад, скорее всего, уровень не имеет теперь почти никакого значения, так как компания должна была измениться и, в случае офшорных компаний, могла во много раз превысить свой собственный размер с момента оценки.

4. Сколько времени потребовалось компании на переход с одного уровня на другой? Если менее двух лет в промежутке между уровнями 1 и 4 или менее года между уровнями 4 и 5, то это далеко не соответствует средним показателям. Изучите такую компанию тщательнее.

5. Где доказательства постоянного улучшения? Высший уровень CMM означает постоянное развитие — попросите потенциального подрядчика продемонстрировать вам историю своего совершенствования.

6. Кто входит в группу по контролю за качеством? Попросите о встрече с группой, которая контролирует и проводит аудиты бизнес-процессов, и удостоверьтесь в ее влиятельности. Это должны быть люди, которые обладают в организации правом вносить изменения. Они должны отчитываться непосредственно перед генеральным директором, и компания должна связывать систему качества с ответственностью и материальной заинтересованностью администрации.

7. Был ли асессор сотрудником проверяемой организации или приглашен со стороны? Внутренние асессоры не могут быть столь же объективны, как ведущие внешние асессоры, у которых нет никаких связей с компанией.

8. Где отчеты? Попросите представить вам документы, которые асессор должен был оставить компании. Особенно важны итоговый отчет Final Findings Report, выделяющий сильные и слабые места компании, а для CMMI — официальный отчет о результате проведенной проверки Appraisal Disclosure Statement, в котором четко указывается где, когда, как и кем была проведена оценка. Если формулировки в этих документы нечеткие или расплывчатые, попросите предоставить более детальные. Они должны быть в компании. Если же отказываются показать вам отчеты, продолжайте задавать вопросы. Возможно, вы имеете дело с мошенниками.

9. Какие виды проектов были оценены? Если, например, ваша компания занимается финансовыми услугами, то нужно удостовериться, что, по крайней мере, один из оцененных проектов был как-то связан с финансовой сферой.

10. Консультировал ли асессор компанию по оцениваемому проекту? Предполагается, что асессоры независимы и объективны. Оказание ими помощи компании в разработке процесса, который они оценивают, можно рассматривать как злоупотребление служебным положением, поскольку асессор может быть заинтересован в завышении рейтинга, чтобы получить свое вознаграждение за консультационные услуги.

11. Сколько менеджеров проектов, оцененных на уровень 5, будет непосредственно участвовать в основной команде, работающей над проектом, который выполняется по заказу вашей компании?

12. Как в компании проводится обучение новых сотрудников на их соответствие требованиям того или иного уровня CMM? Если обучение ведется плохо, то компания не долго будет соответствовать своему уровню.