Научная статья на тему 'Особенности оценки стоимости разработки и формирования цены арендуемых веб-сервисов'

Особенности оценки стоимости разработки и формирования цены арендуемых веб-сервисов Текст научной статьи по специальности «Экономика и бизнес»

CC BY
807
72
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
SAAS / COCOMO / ВЕБ-СЕРВИС / ДРАЙВЕР ЗАТРАТ / СЕРВИС-ОРИЕНТИРОВАННАЯ АРХИТЕКТУРА

Аннотация научной статьи по экономике и бизнесу, автор научной работы — Стерлягов Сергей Петрович, Калмыкова Евгения Игоревна

В настоящее время в сфере информационных технологий набирают популярность веб-сервисы, или SaaS (Software as a Service), программное обеспечение как услуга. Однако не существует общепринятого стандарта при ценообразовании аренды веб-сервиса. В статье рассматривается модификация методологии COCOMO, которая позволяет проводить оценки затрат на разработку веб-сервисов на основе расширенной модели драйверов затрат. В качестве примера обсуждается разработка веб-сервиса «Scrumban», созданного компанией «Сибирикс». Расширенная модель драйверов затрат позволяет перейти на качественно новый уровень подготовки проектных смет как для заказной разработки, так и для проектов, сдаваемых в аренду.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по экономике и бизнесу , автор научной работы — Стерлягов Сергей Петрович, Калмыкова Евгения Игоревна

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Особенности оценки стоимости разработки и формирования цены арендуемых веб-сервисов»

УДК 004.032:338.51:338.55

Особенности оценки стоимости разработки и формирования цены

арендуемых веб-сервисов Features of valuation of development and formation of prices leased web

services

Стерлягов Сергей Петрович Sterlyagov Sergey Petrovich

К.т.н., доцент кафедры прикладной информатики в экономике, государственном и муниципальном управлении, ФГБОУ ВО Алтайский

государственный университет, г. Барнаул [email protected] Калмыкова Евгения Игоревна Kalmykova Yevgeniya Igorevna Магистрант, ФГБОУ ВО Алтайский государственный университет, г. Барнаул

Аннотация. В настоящее время в сфере информационных технологий набирают популярность веб-сервисы, или SaaS (Software as a Service), программное обеспечение как услуга. Однако не существует общепринятого стандарта при ценообразовании аренды веб-сервиса. В статье рассматривается модификация методологии COCOMO, которая позволяет проводить оценки затрат на разработку веб-сервисов на основе расширенной модели драйверов затрат. В качестве примера обсуждается разработка веб-сервиса «Scrumban», созданного компанией «Сибирикс». Расширенная модель драйверов затрат позволяет перейти на качественно новый уровень подготовки проектных смет как для заказной разработки, так и для проектов, сдаваемых в аренду.

Abstract. Currently, in the field of information technology, web services, or SaaS (Software as a Service), software as a service are gaining popularity. However, there is no generally accepted standard when pricing a web service lease. The article

discusses the modification of the COCOMO methodology, which allows estimating the cost of developing Web services based on an extended model of cost drivers. As an example, the development of the web service "Scrumban", created by the company "Sibirics", is discussed. The expanded model of cost drivers allows you to move to a qualitatively new level of preparation of project estimates for both custom development and for projects leased.

Ключевые слова: SaaS, COCOMO, веб-сервис, драйвер затрат, сервис-ориентированная архитектура.

Keywords: SaaS, COCOMO, web service, driver costs, service-oriented architecture.

Введение

Расширение сфер применения веб-сервисов и повсеместное их использование приводит к тому, что решение проблем их практического применения становится более чем актуальным. До 2018 года применение веб-сервисов в корпоративной среде в России станет массовым, особенно в сфере малого и среднего бизнеса. Рост этого сегмента бизнеса может превысить 80% в год [1]. По прогнозам аналитиков, мировой рынок вычислений на «облаках» (удаленные хранилища) возрастет к 2020 году с 50 млрд. долларов США до 240 млрд. долларов США [2].

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

Кроме того, такой подход сопряжен со множеством проблем: 1. Основания для получения оценки не являются явными.

2. Тяжело находить высококвалифицированных экспертов для каждого нового проекта.

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

4. Политика руководства, направленная на сокращение затрат, может ставить под сомнение реальный опыт предыдущих проектов и вносить долю «слепого оптимизма».

5. Отсутствует возможность расчета цены аренды веб-сервиса для внутренних проектов компании.

Применение методологии COCOMO в оценке затрат на разработку

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

Одним из наиболее эффективных и наиболее распространенных алгоритмических методов оценки затрат на разработку программного обеспечения (ПО) является модель COCOMO (COnstructive COst MOdel — модель издержек разработки).

COCOMO — алгоритмическая модель определения стоимости разработки программного обеспечения. Впервые предложена Барри Боэмом в 1981 году в виде результата анализа 63 проектов компании «TRW Aerospace» [4]. Компания является разработчиком систем активной и пассивной безопасности инженерных систем для баллистических ракетных программ ВВС США [5].

В общем случае формула для вычисления алгоритмической оценки стоимости (трудозатраты измеряются в человеко-месяцах) записывается следующим образом [6]:

РМ = А • КЬОСЕ • ЕАБ(1) где А - постоянный коэффициент, который зависит от организации, выполняющей проект, и типа разрабатываемого программного обеспечения; КЬОС - размерность программной системы, выраженная в количестве строк кода;

показатель степени Е может варьироваться в пределах от 1 до 1,5, он отображает объем работ, требующийся для реализации больших проектов; множитель ЕАБ является произведением пятнадцати драйверов затрат, характеризующих проект и процесс создания ПО (см. таблицу 1).

Таблица 1 - Категории драйверов затрат в промежуточной модели СОСОМО

Программный Компьютер Персонал Проект

продукт

1 2 3 4

Требуемая Ограничения Способности Использование

надежность времени аналитика (АСАР) практики

ПО (RELY) выполнения современного

(TIME) программирования

(MODR)

Размер базы Ограничения Опыт в создании Использование

данных основного приложений инструментов

(DATA) хранилища (АЕХР) разработки ПО

(STOR) (TOOL)

Сложность Изменяемость Способности План требуемой

программного виртуальной программиста разработки

продукта машины (РСАР) (SCED)

(CPLX) (VIRT)

1 2 3 4

Оборотное время компьютера (TURN) Опыт в области виртуальных машин (VEXP)

Опыт в области языков программирования (LEXP)

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

Усовершенствование модели COCOMO для оценки затрат на разработку веб-сервиса

В данной модели есть несколько уровней детализации. Для разработки информационной системы поддержки ценообразования применим модель COCOMO II уровня Post Architecture [7], как наиболее точную.

В своей статье "Valuating Software Service Development: Integrating COCOMO II and Real Options Theory" Брендон Танзей адаптирует модель COCOMO к разработке SOA (Service-Oriented Architecture) [8]. Этот подход основан на использовании распределенных, слабо связанных компонентов (набор веб-служб, которые взаимодействуют по сетевому протоколу). В этом случае оценке помогает использование BPEL (Business Process Execution Language) — язык на основе XML для формального описания бизнес-процессов и протоколов их взаимодействия между собой. Подробнее с SOA можно ознакомиться в книге Биберштейн£, Боуза, Фиамманта и др. [9].

Однако рассмотрим ситуацию, когда веб-сервис построен не на основе

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

В качестве примера приведем веб-сервис «Scmmban» (доска задач для корпоративного портала 1С-Битрикс). Корпоративный портал 1С-Битрикс позволяет организовать интранет для коммерческой организации. В целях управления задачами в коммерческой организации было разработано такое решение, как «Scmmban». Оно позволяет управлять задачами по этапам и визуализировать этот процесс (на доске канбан). Доступ к доске задач предоставляется на определенное время (по принципу аренды) [10].

По классификации режимов модели COCOMO веб-сервис «Scmmban» относится к сблокированному режиму (прикладное ПО). Поэтому коэффициенты А и E алгоритмической модели соответственно равны 3,0 и 1,12 соответственно [6]. Также необходимо определить количество тысяч строк кода (KLOC). В данном примере это количество равняется 15. Помимо данных параметров сервиса необходимо определить значения драйверов затрат для фактора корректировки затрат (EAF). Приведем найденные значения в таблице параметров.

Таблица 2 - Значения драйверов затрат для оценки трудозатрат на разработку веб-сервиса «Scmmban»

Драйвер затрат Значение Драйвер затрат Значение

1 2 3 4

Требуемая надежность ПО (RELY) 0,88 Способности аналитика (АСАР) 0,86

Размер базы данных (DATA) 0,94 Опыт в создании приложений (АЕХР) 0,82

1 2 3 4

Сложность программного продукта (CPLX) 1,00 Способности программиста (РСАР) 0,70

Ограничения времени выполнения (TIME) 1,00 Опыт в области виртуальных машин (VEXP) 0,90

Ограничения главного хранилища (STOR) 1,00 Опыт в области языков программирован ия (LEXP) 0,95

Изменяемость виртуальной машины (VIRT) 1,00 Использование практики современного программирован ия (MODP) 1,00

Оборотное время компьютера (TURN) 0,87 Современные инструменты программирован ия (TOOL) 1,00

Требуемый график разработки (SCED) 1,00

Теперь мы можем рассчитать фактор корректировки затрат (EAF), перемножив значения всех драйверов затрат:

ЕАБ = 0,30 (2)

При помощи фактора корректировки затрат ЕЛБ мы можем рассчитать трудозатраты на разработку веб-сервиса «ЗсгитЬап» в соответствии с

формулой оценки трудозатрат в промежуточной модели COCOMO:

PM = 3,0 • 15112 • 0,30 = 18,7. (3)

Расчеты проведены для разработки на языке PHP (скриптовый язык общего назначения, применяемый для разработки веб-приложений). Однако веб-сервис «Scrumban» можно было бы написать и на других языках, в частности Java, Python, Ruby. Каждый из приведенных языков обладает преимуществами и недостатками применения. Соответственно можно предположить, что трудозатраты на разработку на различных языках будут отличаться. В таблице приведены оценки тысяч строк кода при разработке сервиса на других языках.

Таблица 3 - Количество тысяч строк кода при разработке веб-сервиса «Scrumban» на различных языках веб-программирования

Язык программирования KLOC

Java 21

Python 15

Ruby 17

При изменении языка программирования значения драйверов затрат изменятся незначительно, поэтому их оценки в модели COCOMO останутся неизменными. Необходимо рассчитать предположительные трудозатраты на разработку сервиса в зависимости от используемого языка программирования:

РМ^т = 3,0 • 21112 . 0,30 = 27,2 (4) РМРу,„оп = 3,0 • 15112 • 0,30 = 18,7 (5) РМКиЬу = 3,0 •171,12 . 0,30 = 21,5 (6)

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

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

С целью проведения более точного расчета трудозатрат в модель COCOMO следует ввести новый коэффициент - сложность разработки. Для этого рассмотрим относительные коэффициенты, определяющие сложность программирования (см. таблицу 4). За единицу сложности программирования (самый простой язык) примем язык PHP, т.к. этот язык давно стал стандартом де-факто для веб-программирования. Отметим, что при увеличении коэффициента сложности программирования увеличивается необходимое время на программирование одной тысячи строк кода.

Таблица 4 - Сложность программирования на распространенных языках веб-

программирования

Язык программирования Сложность программирования

(коэффициент)

Php 1

Java 1,4

Python 1,2

Ruby 1

В соответствии с логикой работы модели имеет смысл добавить соответствующий коэффициент в имеющийся список драйверов затрат (SPED). В этом случае формула расчета трудозатрат на разработку веб-сервиса «Scrumban» будет выглядеть следующим образом:

PMphp = 3,0 •151,12 • 0,30 .1,0 = 18,7 (7) PMjava = 3,0 • 21112 • 0,30 • 1,4 = 38,1 (8) PMPython = 3,0 • 151,12 • 0,30 • 1,2 = 22,4 (9) PMRuby = 3,0 • 171,12 • 0,30 • 1,0 = 21,5 (10)

9

Наглядно видно, что оценки трудозатрат в некоторых случаях возросли значительно. Это связано, в первую очередь, с тем, что количество тысяч строк кода и опыт программирования (LEXP) не отражают в полной мере влияние выбора языка программирования. Именно поэтому приведенная модификация модели COCOMO является более точным инструментом оценки трудозатрат на проект.

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

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

При расчете цены веб-сервиса, сдаваемого в аренду, следует руководствоваться следующим порядком выполнения работ:

1. Расчет трудоемкости этапов аналитики и дизайна.

2. Расчет трудоемкости этапов верстки и сборки при помощи усовершенствованной модели COCOMO.

3. Уточнение оценки трудоемкости при помощи выбора вариации архитектуры веб-сервиса.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

4. Расчет первоначальных инвестиций на разработку веб-сервиса.

5. Расчет абонентской платы арендуемого веб-сервиса.

Расчет трудоемкости этапов аналитики и дизайна (РМ{) не предусмотрен в модели COCOMO и традиционно происходит при помощи оценки планируемых работ в человеко-месяцах. При этом этап проектирования делится на этап разработки прототипа (постранично) и написания технического задания:

п

РМ1 = тя + Х (7Р, + Щ) (11)

I=1

где ТЯ — трудоемкость написания технического задания; ТР1 — трудоемкость разработки прототипа ьой страницы; ТБ, — трудоемкость разработки дизайна ьой страниц; п — количество страниц.

Трудоемкость верстки (РМ2) и сборки (РМ3) рассчитываются при помощи модели COCOMO и имеющихся в ней параметров. Причем этап сборки зависит от языка программирования и сложности его использования, как было отмечено ранее:

РИ2 = А • (К1вСНШ1) • ЕАЕ, а2)

РМ3 = А • (КЮСВЕГ) • ЕЛЕ, (13)

где КЬОСНТМъ — размер системы на этапе верстки;

КЬОСБЕу — размер системы на этапе сборки (программирования).

Далее необходимо уточнить оценку трудоемкости при помощи выбора вариации архитектуры. Коэффициент вариации архитектуры применяется к РМ3 (трудоемкость этапа сборки) путем умножения на его значение. Ниже приведены значения коэффициента в зависимости от архитектуры веб-сервиса (КЛ):

- обычный клиент-сервер (КА = 1)

- один сервис - много серверов (КА = 1,1)

- технология подключения через прокси-сервер (КА = 1,1)

- тонкий клиент (КА = 1,2)

Чтобы определить сумму всех первоначальных инвестиций в разработку проекта, необходимо трудоемкость каждого этапа умножить на соответствующую стоимость этого этапа (аналитики и дизайна, верстки и программирования). Для этого соответствующие показатели РМ, умножим на цену соответствующего человеко-месяца (Р,):

I, = РМ, • Р, (14)

Таким образом, первоначальные инвестиции в проект (I) рассчитываются по формуле:

3

1 = 14 (15)

I=1

В экономике веб-сервиса существуют общепринятые показатели деятельности (МЯК — месячный доход, АКРИ — выручка от одного абонента) [11]. Ценой аренды в данном случае и является величина АКРИ.

Для первоначального расчета АРРИ при запуске сервиса в эксплуатацию следует оценить количество пользователей, которые подключат сервис в первом месяце величиной п}. Месячный доход в таком случае составит:

ЫЩ = АКРи • щ (16)

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

к

к • ытх = I + ^ своз,, (17)

I=1

где МЯК} — искомый месячный доход, гарантирующий окупаемость; I — первоначальные инвестиции на разработку веб-сервиса; СООБ1 — месячные затраты в ¡-ом месяце на поддержку веб-сервиса.

Из уравнения (17) и формулы (16) получаем первоначальную оценку значения АКРИ. Затем следует учесть, что численность абонентов, использующих сервис, может изменяться от месяца к месяцу. Обозначим величиной ОЯ, коэффициент прироста, либо убыли числа пользователей в ¡-ом месяце.

В таком случае доход текущего и предшествующего месяцев будут связаны следующей формулой:

ЫШ, _ _1 • GRl (18)

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

Для расчета уточненного значения интересующего нас показателя минимально допустимой арендной платы, а именно — среднемесячной выручки от одного абонента в текущем месяце (АКРи), необходимо воспользоваться следующей формулой:

Ui (19)

где п — количество пользователей веб-сервиса в /-ом месяце.

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

Заключение

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

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

Библиографический список

1. Об утверждении стратегии развития отрасли информационных технологий в Российской Федерации на 2014-2020 годы и на перспективу до 2025 года: распоряжение Правительства РФ от 01.11.2013 №2036-р // Собрание законодательства. — 2013. — № 46. — Ст. 5954

2. Харитонова Л. SaaS-сервисы: договорные конструкции и закрепление прав на интеллектуальную собственность [Электронный ресурс] / SaaS.ru — Портал об облачных технологиях. М., 2013-2015. Режим доступа: http://saas.ru/articles/~saas-siervisy-doghovornyie-konstruktsii-i-zakrieplieniie-prav-na-intielliektual-nuiu-sobstviennost (дата обращения 31.05.2017).

3. Васюхин О.В. Основы ценообразования. Учебное пособие - СПб: СПбГУ ИТМО, 2010

4. Barry Boehm. «Software engineering economics». Englewood Cliffs, NJ:Prentice-Hall, 1981

5. TRW Automotive [Электронный ресурс]. ZF TRW. 2015. Режим доступа: http://trw.com/ (дата обращения 20.05.2017).

6. Barry Boehm. "Software cost estimation with COCOMO II". Englewood Cliffs, NJ: Prentice-Hall. 2000.

7. COCOMO® II - Constructive Cost Model [Электронный ресурс]. -Режим доступа: http://csse.usc.edu/tools/COCOMOII.php, свободный. - Загл. с экрана (дата обращения: 27.03.2017).

8. Tansey, Brendan and Stroulia, Eleni "Valuating Software Service Development: Integrating COCOMO II and Real Options Theory" Department of Computing Science, University of Alberta, Edmonton, AB, T6G 2E8, Canada, 2009.

9. Норберт Биберштейн, Сенджей Боуз, Марк Фиаммант и др. Компас в мире сервис-ориентированной архитектуры (SOA). М.: КУДИЦ-Пресс, 2007. 256 с.

10. Scrumban Доска задач для корпоративного портала 1С-Битрикс [Электронный ресурс]. Сибирикс. 2015. Режим доступа: http://scrumban.ru/ (дата обращения 30.05.2017).

11. Что такое MRR (Monthly Recurring Revenue) в SaaS-бизнесе [Электронный ресурс] / LPGenerator. — Режим доступа: http://lpgenerator.ru/blog/2015/04/30/chto-takoe-mrr-monthly-recurring-revenue-v-saas-biznese/ (дата обращения 28.05.2017).

i Надоели баннеры? Вы всегда можете отключить рекламу.