Библиотека управления

Фактор времени и экономическая эффективность

Михайловский Николай Эрнестович Генеральный директор ООО "ЛАБОРАТОРИЯ "НТР"

Программа конференции

Введение

Каждый IT-менеджер в ходе своей работы сталкивается со множеством ситуаций выбора между различными подходами к решению проблем предприятия. Среди них:

  • Выбор объема и направления автоматизации
  • Выбор между адаптацией готовой системы и построением системы на заказ
  • Выбор между внедрением системы силами собственной организации и внешними консультантами

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

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

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

Основная идея, хорошо известная в экономике, состоит в том, что доллар (рубль, гривна) потраченный в будущем, дешевле, чем потраченный сейчас. Это выражается в дисконтировании затрат и доходов, что и составляет фактор времени. В общем случае экономический эффект можно выразить по формуле:

                                                                                                                               (1)

где

Э — экономический эффект;

Д — интегральный результат внедрения системы;

З — интегральные затраты на разработку, внедрение и эксплуатацию системы

Интегральные затраты на систему могут быть полностью известны только после завершения проекта. В любой момент до завершения проекта интегральные затраты могут быть только оценены. Соответственно, в любой момент проекта

  приведенные к начальному моменту проекта интегральные затраты могут быть оценены как

                                                                                (2)

где

  — оценка интегральных затрат проекта в момент

;

E — норма дисконтирования;

  — дисконтированная сумма фактических интегральных затрат проекта к моменту

;

T — период жизненного цикла системы;

— оценка интегральных затрат на проект в периоде t;

Аналогично, в любой момент проекта

, приведенный к начальному моменту проекта интегральный результат проекта можно представить как

,                                               (3)

где

  — оценка интегрального результата проекта в момент

;

E — норма дисконтирования;

  — дисконтированная сумма фактического интегрального результата проекта к моменту

;

T — период жизненного цикла системы;

— плановые результаты проекта в периоде t;

— оценка потерь, связанных с эксплуатационными рисками системы в периоде t.

В начальный момент времени в формулах (2) и (3)

, так что (1) вырождается в

                                                                          (4)

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

Пример 1. Как тестировать?

Применим вышеизложенное, например, к выбору способа тестирования программного обеспечения. Этот пример, как и остальные в данном докладе, несколько условен, но одновременно и очень жизненен, поскольку достаточно точно отражает один из проектов, которым доводилось руководить докладчику в 1997-1998 годах. Пусть разрабатывается заказной проект стоимостью С со сроком разработки T=12 месяцев, командой разработчиков N=12 человек со средними затратами на человека S. Перед менеджером проекта стоит вопрос: создать группу тестирования из NT=N/4 человек (с затратами в Q=1,5 раза меньше, чем у программистов) и исправлять ошибки по ходу разработки (вариант А), или поручить тестирование программистам, а не найденные ими ошибки найти и исправить на стадии опытной эксплуатации (вариант Б)? Пусть программисты тратят на дополнительное тестирование ТП=1/5 своего времени, а эффективность их тестирования такая же. Из–за затрат времени на тестирование программистами разработка завершится пропорционально позже. Предположим, что разработка оплачивается заказчиком на f=30% после опытной эксплуатации. При каких нормах дисконтирования какой способ тестирования эффективен?

При дальнейшем рассмотрении исключим затраты и эффекты, не относящиеся непосредственно к нашему предмету.

Интегральные дисконтированные затраты в варианте А составят

Приведенный к начальному моменту проекта интегральный результат в варианте А

В варианте Б во время проекта программистами на тестирование затрачивается доля ТП их времени, поэтому длительность проекта составит Т/(1-ТП).

Интегральные дисконтированные затраты в варианте Б составят

Приведенный к начальному моменту проекта интегральный результат в варианте Б

Разница между эффектами проекта в случаях А и Б составит

Зафиксируем все параметры формулы, кроме чисто экономических – E и

  (отношение стоимости последнего этапа к фонду зарплаты разработчиков), и построим график, разделяющий в этих координатах области эффективности вариантов А и Б:


                                (5)

Рисунок 1 ­– Области предпочтения вариантов А и B, ТП=0.2

Из графика парадоксальный вывод: упорядоченное тестирование (вариант А) выгодно, если норма дисконтирования (часто принимаемая равной ставке рефинансирования Центробанка) меньше (для данного проекта) примерно 87 процентов годовых, почти независимо от фонда зарплаты. Качественно данная картина сохраняется для любого проекта.

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

Например, проект, о котором идет речь, выполнялся с мая 1997 по июнь 1998 года. Посмотрим на таблицу ставок рефинансирования ЦБ РФ:


Таблица 1 – Ставки рефинансирования ЦБ РФ  и НБУ

ЦБ РФ

ЦБ РФ

НБУ

НБУ

Период действия

%

01.01.91 - 09.04.92

20

10.04.92 - 22.05.92

50

23.05.92 - 29.03.93

80

30.03.93 - 01.06.93

100

02.06.93 - 21.06.93

110

22.06.93 - 28.06.93

120

29.06.93 - 14.07.93

140

15.07.93 - 22.09.93

170

23.09.93 - 14.10.93

180

15.10.93 - 28.04.94

210

29.04.94 - 16.05.94

205

17.05.94 - 01.06.94

200

02.06.94 - 21.06.94

185

22.06.94 - 29.06.94

170

30.06.94 - 31.07.94

155

01.08.94 - 22.08.94

150

23.08.94 - 11.10.94

130

12.10.94 - 16.11.94

170

17.11.94  - 05.01.95

180

06.01.95 - 15.05.95

200

16.05.95 - 18.06.95

195

19.06.95 - 23.10.95

180

24.10.95 - 30.11.95

170

01.12.95 - 09.02.96

160

Период действия

%

10.02.96 - 23.07.96

120

24.07.96 - 18.08.96

110

19.08.96 - 20.10.96

80

21.10.96 - 01.12.96

60

02.12.96 - 09.02.97

48

10.02.97 - 27.04.97

42

28.04.97 - 15.06.97

36

16.06.97 - 05.10.97

24

06.10.97 - 10.11.97

21

11.11.97 - 01.02.98

28

02.02.98 -16.02.98

42

17.02.98 - 01.03.98

39

02.03.98 -15.03.98

36

16.03.98 - 18.05.98

30

19.05.98 - 26.05.98

50

27.05.98 - 04.06.98

150

05.06.98 - 28.06.98

60

29.06.98 - 23.07.98

80

24.07.98 - 09.06.99

60

10.06.99 - 23.01.00

55

24.01.00 - 06.03.00

45

07.03.00 - 20.03.00

38

21.03.00 - 09.07.00

33

10.07.00 - 03.11.00

28

04.11.00 - 08.04.02

25

09.04.02 - 06.08.02

23

07.08.02 - 

21



Начало периода

Конец периода

%,

02.07.1996

09.01.1997

40%

07.06.1996

01.07.1996

50%

22.05.1996

06.06.1996

63%

25.04.1996

21.05.1996

70%

08.04.1996

24.04.1996

75%

01.04.1996

07.04.1996

85%

26.03.1996

31.03.1996

90%

04.03.1996

25.03.1996

98%

01.01.1996

03.03.1996

105%

01.12.1995

31.12.1995

110%

10.10.1995

30.11.1995

95%

21.08.1995

09.10.1995

70%

15.07.1995

20.08.1995

60%

07.06.1995

14.07.1995

75%

01.05.1995

06.06.1995

96%

07.04.1995

30.04.1995

150%

29.03.1995

06.04.1995

170%

10.03.1995

28.03.1995

204%

25.12.1994

09.03.1995

252%

25.10.1994

24.12.1994

300%

17.08.1994

24.10.1994

140%

01.08.1994

16.08.1994

175%

01.07.1994

31.07.1994

190%

01.01.1994

30.06.1994

240%

 

1993 год

240%



Начало периода

Конец периода

%,

05.07.2002

 

8.0%

04.04.2002

04.07.2002

10.0%

11.03.2002

03.04.2002

11.5%

10.12.2001

10.03.2002

12.5%

10.09.2001

09.12.2001

15%

09.08.2001

09.09.2001

17%

11.06.2001

08.08.2001

19%

07.04.2001

11.06.2001

21%

10.03.2001

06.04.2001

25%

15.08.2000

09.03.2001

27%

10.04.2000

14.08.2000

29%

24.03.2000

09.04.2000

32%

01.02.2000

23.03.2000

35%

24.05.1999

31.01.2000

45%

28.04.1999

23.05.1999

50%

05.04.1999

27.04.1999

57%

21.12.1998

04.04.1999

60%

07.07.1998

20.12.1998

82%

29.05.1998

06.07.1998

51%

21.05.1998

28.05.1998

45%

18.03.1998

20.05.1998

41%

06.02.1998

17.03.1998

44%

24.11.1997

05.02.1998

35%

15.11.1997

23.11.1997

25%

01.11.1997

14.11.1997

17%

05.08.1997

31.10.1997

16%

08.07.1997

04.08.1997

18%

26.05.1997

07.07.1997

21%

08.03.1997

25.05.1997

25%

10.01.1997

07.03.1997

35%



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

Вывод приложим не только к странам типа России и Украины. Интернет-бум 1998-2000 года также принес с собой относительно высокую реальную цену денег, с приоритетом раннего выхода на рынок.  Результат – невиданное доселе количество сырых продуктов и IT–услуг, выпущенное на рынок в этот период.

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

Построим график зависимости

  от E при ТП = 1/20 (см. Рисунок 2):

Рисунок 2 – Области предпочтения вариантов А и B, ТП=0.05

Обратите внимание на масштаб по оси

! При всех разумных размерах фонда заработной платы необходимо тестирование. Из рисунка следующая мораль:

Мораль 2: тестирование всегда необходимо. Однако, если проект уже убыточен, то нет смысла нанимать новых людей.

Мораль 3: Если за завершение проекта выплачивается лишь малая часть его стоимости, тестировать смысла нет.

Пример 2. Как внедрять?

Рассмотрим аналогичный пример на стороне заказчика. Пусть надо внедрить, например, CRM-систему стоимостью C в банке. Выбор состоит между внедрением системы силами собственной организации (вариант 2) и внедрением системы внешними консультантами (вариант 1). Пусть для внедрения требуется N = 4 человека на TI = 4 месяца. Пусть ожидается, что система будет приносить в среднем Iв течение T = 48 месяцев с момента принятия решения о внедрении. При использовании консультантов придется платить по SK = 4000 US$ за человекомесяц. Предположим, что оплата производится по половине в начале и в конце проекта. Стоимость собственных специалистов, с учетом налогового бремени и накладных расходов, составляет QS = 0.5 стоимости консультантов. Предположим, что эффективность собственных специалистов будет в KE = 1.5 раза меньше, чем у консультантов. При внедрении собственными силами персонал надо нанимать. На это уйдет ТН = 2 месяца, а агентству придется заплатить HF= 1/10 годовой зарплаты нанимаемых специалистов. После того, как проект по внедрению закончен, эти люди еще ТУ = 3 месяца промаются, и уйдут от скуки в другое место.

Опуская общую для обоих вариантов составляющую (в частности, стоимость самой системы), получаем дисконтированные затраты в варианте 1

а в варианте 2

Приведенный к начальному моменту проекта интегральный результат в варианте 1

,

в варианте 2

Разница между эффектами проекта в случаях 1 и 2 составит


Зафиксируем все параметры формулы, кроме чисто экономических – E и

  (отношение ежемесячного экономического эффекта к фонду оплаты консультантов), и выразим одно через другое:


С другой стороны экономический эффект внедрения силами консультантов определяется соотношением

Принимая для простоты

, получаем

,

откуда

Построим оба графика на одном рисунке:

Рисунок 3  – Области предпочтения вариантов 1 и 2 и область эффективности системы

На рисунке квадратиками заштрихована область эффективности внедрения системы, розовым цветом окрашена область предпочтения варианта 2, зеленым – область предпочтения варианта 1. Из анализа графиков получаем следующие выводы:

Мораль 4. Если заказчик и так знает, что и как ему делать, консультанты не нужны. Значимость консультантов – в привнесении знания, что и как следует делать.

Мораль 5. Чем стабильнее экономика, тем выгодней использование консультантов.

Мораль 6. Чем ниже стоимость продукта по отношению к стоимости услуги, тем выгоднее использование консультантов.

Как пример к последней морали приведу себя. Компания «Лаборатория НТР» распространяет ядро CRM-системы для малого и среднего бизнеса NTR Bcom бесплатно, в открытых кодах.


Программа конференции