Методика CETIN: оценка стоимости разработки информационных систем
Казахстанской Ассоциаций IT-компаний совместно с компанией системных исследований "Фактор" была разработана Методика оценки трудоемкости и стоимости разработки и сопровождения прикладного программного обеспечения при создании информационных систем (Методика CETIN).
Методика CETIN – это новый подход в оценке стоимости разработки информационных систем, который позволяет оценить стоимость создания на ранних стадиях проектирования.
Преимуществами методики CETIN являются: оценка на основании функционального размера и оценка на основании производственных процессов создания ИС.
Методика учитывает государственные стандарты Республики Казахстан в области информационных технологий.
Причины провала ИТ-проектов
Согласно исследованиям StandishGroup количество ИТ-проектов, завершенных удачно в 2008 году, составило всего 32%, хотя значение и выросло по сравнению с данными 1995 года, но все же является довольно малым.
Согласно мнениям экспертов Standish Group среди причин неудач проектов либо выхода проекта за рамки сроков, бюджета и недостижения цели выделяются следующие:
- неполные требования;
- низкая степень вовлечения заказчика и конечных пользователей в процесс разработки;
- недостаточное обеспечение ресурсами;
- недостаток планирования;
и другие.
В тоже время консультанты «Go Pro Management, Inc» считают, что реальными причинами проблем и провалов проектов разработки ПО являются:
- бюджет и сроки проекта назначаются без учёта объёма выполняемой работы;
- сложность описания реальных бизнес требований на старте проекта
и другие.
И те и другие причины напрямую связаны с планированием реализации ИТ-проектов, а именно с проектированием информационной системы и оценкой стоимости разработки. Далее в статье будут рассмотрены подходы по оценке трудоемкости разработки информационных систем[1].
Обзор существующих методик оценки трудоемкости
Исторически сложилось развитие методик оценки трудоемкости и стоимости разработки информационных систем в двух направлениях: измерение строк кода (SLOC) и измерение функционального размера (FPA). На следующем рисунке приведена схема эволюции методик оценки стоимости разработки информационных систем.
Развитие методик оценки стоимости разработки
Из мировых методик наиболее успешными и распространёнными в настоящее время являются COCOMO II и FPA IFPUG. Обе методики базируются на принципе оценки функционального размера:
- FPA IFPUG производит оценку функционального размера в функциональных точках;
- по методике COCOMO II на основе функционального размера с использованием поправочных коэффициентов оцениваются сроки кода, и на основании строк кода оценивается трудоемкость и длительность разработки информационной системы.
Как заявляют разработчики COCOMO и IFPUG, расчеты по методике можно производить на ранних стадиях разработки информационной системы, однако это не совсем так.
Для оценки трудоемкости по методике IFPUG необходимо достаточно детально смоделировать структуру информационной системы, ее функции, количество интерфейсов, структуру данных и атрибуты данных. В идеальном случае, все должно происходить именно так, т.е. должен быть разработан детальный проект информационной системы. Для оценки стоимости разработки информационной системы на стадии формирования бюджета государственного заказа либо при разработке требований при использовании методики FPA IFPUG необходимо иметь техническое задание и спецификации требований к программному обеспечению. Исходя из реалий процесса заказа и разработки информационных систем, данная задача представляется практически невозможной. Наиболее часто встречается практика заказа информационных систем по следующей схеме: формируется бюджет, затем разрабатывается ТЭО, в последствии разрабатывается Техническое задание и ведется разработка информационной системы.TAdviser Security 100: Крупнейшие ИБ-компании в России
Принцип оценки по методике COCOMO заключается в оценке строк кода разрабатываемой системы, и на основании применяемого языка разработки оценка трудоемкости согласно строкам кода. Соответственно оценку понесенных затрат в соответствии с разработанной функциональностью можно сделать на основании реализованной системы.
На следующей схеме приведены два видения процесса разработки:
1. Идеальный вариант – наиболее правильный вариант, где первоначально делается проект системы, а затем оценка разработки ИС. Данный подход имеет место в частных компаниях, где уточнение бюджета возможно на всем протяжении разработки.
2. Часто встречающийся вариант, или реальный вариант процесса разработки – данный подход имеет место и практически всегда встречается при государственном заказе информационных систем. Оценка стоимости разработки информационной системы делается на основании концепции, без детально разработанного проекта информационной системы.
Как показано на рисунке выше, не одна из существующих методик IFPUG и COCOMO не могут сделать оценку стоимости разработки информационной системы на ранних этапах, а именно на этапе определения бюджета разработки и внедрения информационной системы (разработки Технико-экономического обоснования).
В настоящее время в Казахстане в большинстве случаев оценка стоимости разработки информационных систем и формирование бюджета формируется на основании экспертных суждений, по аналогии либо «наугад», что часто не отражает реальную стоимость заказываемых информационных систем. Все это приводит к печальной статистике неудачных проектов.
В Казахстане несколько раз поднимали проблему оценки стоимости разработки информационных систем. Ниже приведен перечень разработанных методов и их недостатки.
Методика Министерства финансов редакции 1994 года. Методика нормирует трудозатраты по проектам (создание очередей систем; разработка и внедрению проекта функционального комплекса задач; привязка проектов; сопровождение проекта; использование ПЭВМ для отладки и ввода в действие). Основным недостатком методики, являются:
a. неясная граница между различными функциями и отдельными единицами аналогичных функций (методика не дает детального определения НИ ОДНОЙ из функций);
b. критерии определения сложности ПС не приемлемы из-за достаточно широкой ориентации, вследствие чего имеется большая вероятность получить не точный результат для оценки стоимости информационных систем
Методика оценки трудоемкости и стоимости разработки информационных систем 2005 года. Разработана АО «Национальные информационные технологии» совместно с Научно-исследовательским институтом экономики и информатизации транспорта, телекоммуникации. Оценка стоимости разработки информационной системы рассчитывается на основе измерения функционального размера, поправок по основным параметрам разработки и оценки сроков. Методику можно применять на ранних стадиях проектирования, т.к. расчет функционального размера делается на основании UML-диаграмм. В настоящее время методика не утверждена. Основным недостатком является то, что применяемые коэффициенты получены экспертным путем, необходимы исследования по сбору статистики ИТ разработок и обоснованию применяемых коэффициентов.
На II Съезде IT-Предприятий Казахстана были заявлены следующие требования к разрабатываемой методике оценки трудоемкости разработки ИС, которые позволять учесть недостатки существующих методик для применения планирования ИТ-проектов в Республике Казахстан:
- соответствие законодательству, стандартам и применяемым методам проектирования и разработки информационных систем в РК;
- принципы методики должны обеспечить ее применение, как на стороне Заказчика, так и на стороне Разработчика;
- Методика должна основываться на процессах жизненного цикла информационных систем;
- Методика должна базироваться на измерении функционального размера функциональных требований пользователя;
- в качестве входных данных должны использоваться требования к информационной системе;
- применение методики для оценки любых информационных систем.
- использование нотации UML, как унифицированного языка для описания требований и структуры информационной системы;
- использование сущностей UMLв качестве входных данных для методики.
За период 2010-2011 годы Казахстанской Ассоциаций IT-компаний совместно с Компанией системных исследований "Фактор" была разработана Методика оценки трудоемкости и стоимости разработки и сопровождения прикладного программного обеспечения при создании информационных систем (Методика CETIN).
Методика CETIN базируется на вышеприведенных принципах оценки и исключает все недостатки ее предшественников. В настоящее время идет обсуждение методики. Текст методики представлен на сайте Казахстанской Ассоциации IT-компаний.
О методике CETIN
Методика предназначена для расчета трудоемкости и стоимости разработки прикладного программного обеспечения информационной системы государственного органа и применяется на этапе технико-экономического обоснования проекта создания информационной системы при планировании бюджета, при осуществлении государственных закупок.
Методика основана на измерении функционального размера информационной системы на основе функциональных требований пользователей к разрабатываемой информационной системе. Функциональный размер информационной системы измеряется пятью функциональными единицами измерения. Методика содержит алгоритмы определения функционального размера информационной системы, расчета трудоемкости и стоимости разработки и сопровождения прикладного программного обеспечения. Методика учитывает также требования качества и технические требования к информационной системе. Методика CETINоснована на следующих принципах:
1. Принцип поддержки жизненного цикла. Данный принцип означает, что Методика должна основываться на процессах жизненного цикла ИС;
2. Принцип измерения функционального размера. Данный принцип означает, что Методика должна базироваться на методе измерения функционального размера функциональных требований пользователя;
3. Принцип универсальности (нелокальности). Данный принцип означает, что Методика должна быть применима для оценки стоимости разработки и сопровождения любого ППО.
4. Принцип улучшающейся оценки. Данный принцип означает, что точность оценки трудоемкости и стоимости разработки ППО должна повышаться с увеличением степени детализации функциональных требований к ИС.
5. Принцип учета технологии производства программного обеспечения. Методика базируется на процессах разработки ППО – методологии RUP, которая обеспечивает реализацию процессов разработки и сопровождения ИС согласно жизненного цикла. Жизненный цикл разработки ППО согласно методологии RUP состоит из шести основных и трех вспомогательных процессов.
Порядок оценки
Порядок оценки трудоемкости разработки ППО представлен следующими этапами:
1) оценка функционального размера разрабатываемой ИС;
2) оценка базовой трудоемкости разработки ППО;
3) определение значений поправочных коэффициентов трудоемкости разработки и сопровождения ППО;
4) расчет трудоемкости разработки ППО с учетом поправочных коэффициентов;
5) оценка срока разработки ППО;
6) корректировка трудоемкости разработки ППО при уменьшении срока разработки;
7) оценка стоимости разработки ППО.
1. Оценка функционального размера
Оценка функционального размера информационной системы производится на основании модели информационной системы и функциональных требований пользователей. Функциональный размер ИС представляет собой пять функциональных единиц измерения
- количество вариантов использования – C;
- количество типов объектов – E;
- количество свойств типов объектов – Т;
- количество взаимодействий между типами объектов – I;
- количество типов узлов – N.
Функциональный размер обозначается как SIZE={C, E, T, I ,N} Для оценки функционального размера рекомендуется использовать модель информационной системы, реализованной на языке моделирования UML. В случае отсутствия модели ИС, оценщику предлагается заполнить анкету, представляющую собой перечень вопросов об информационной системе. Такой подход позволить определить функциональность системы на ранних этапах, оценить границы системы. В методике представлены алгоритмы определения функционального размера.
2. Оценка базовой трудоемкости
При оценке базовой трудоемкости на основании технологии создания информационных систем, с использованием нормативов трудоемкости делается оценка трудоемкости реализации информационной системы характеризующейся ранее определенным функциональным размером. Базовая трудоемкость представляет оценку функционала системы без учета влияния внешних факторов.
3. Определение поправочных коэффициентов
Согласно выявленным характеристикам системы и внешним факторам по отношению к системе определяются значения поправочных коэффициентов. Поправочные коэффициенты основаны на применяемых стандартах.
4. Расчет трудоемкости с учетом поправочных коэффициентов
На основании поправочных коэффициентов делается корректировка базовой трудоемкости и расчет трудоемкости разработки ИС.
5. Оценка срока разработки информационной системы
На основании трудоемкости делается оценка срока разработки информационной системе. Оценка строка разработки основывается на математической модели зависимости срока разработки при командной работе.
6. Корректировка трудоемкости разработки ПО при уменьшении срока разработки.
Довольно часто в практике государственного заказа возникает задача уменьшения срока разработки. Наиболее часто это связана с ограничениями планирования бюджета, либо непосредственно заказа ИС в середине финансового года или позже. В методике предусмотрен механизм расчета трудоемкости при уменьшении срока разработки, который основан на математической модели эластичности трудоемкости.
7. Оценка стоимости разработки ППО
Оценка стоимости разработки ППО рассчитывается как произведение трудоемкости разработки на ППО на стоимость одного человеко-месяца.
Автор: Пустовойтенко Виталий Васильевич / Габбасов Марс Беккалиевич