История о том, как большая контора поверила маленькому программисту
В те далекие времена, когда компьютеры и деревья были очень большие, одна организация «выбила» в министерстве фонды и купила себе персональный компьютер. Очень маленький и очень дорогой. Организация рассчитывала, что как только она включит компьютер в розетку, он тут же самостоятельно рассчитает зарплату ее сотрудникам. Увы, через некоторое время стало понятно, что компьютер без нужной программы позволяет только играть в компьютерные игры. И тогда организация нашла программиста. Он рядом сидел, в подвале, в конторке с гордым названием «Кооператив». Заказала организация этому программисту программу расчета заработной платы. Тот подумал и сказал, что такая программа будет очень дорогой, поскольку станет самой первой, уникальной для такого маленького компьютера. И создать ее сможет только коллектив разработчиков. Ну и назвал свою цену. Очень удивилось руководство организации такой цене, и попросило ее обосновать.
Программист чувствовал, что он не ошибается, и что времени и усилий уйдет много. Но чувства к делу не пришьешь. Подходило время давать организации обоснование, а у программиста в голове не было ни одной идеи.
Тогда он решил с горя выпить со своим другом — строителем. Когда они выпили по одной, рассказал программист строителю свою горестную историю. Но вместо выражения сочувствия и поддержки его друг задал простой вопрос: «А что, смет у вас нет на написание программ?» На этом простом вопросе разговор и закончился, поскольку программист тут же побежал в ближайшую техническую библиотеку. Он раздобыл там нужную книжицу: «Типовые нормы времени на программирование задач для ЭВМ», которая была выпущена «Центральным бюро нормативов по труду» в 1989 году — совсем еще свежая, пахнущая типографской краской.
Программист внимательно прочитал книжку, потом сходил в организацию, потребовавшую от него обоснования стоимости написания программы, собрал нужную информацию, и у него получилась сумма даже больше той, что он назвал прежде.
Когда организация получила обоснование, подтвержденное обязательным к применению государственным документом, она была вынуждена согласиться на выставленную цену. А ведь это была примерная стоимость двух новых престижных автомобилей «Волга ГАЗ-24».
Благодаря полноценному финансированию, программист смог собрать коллектив талантливых исполнителей, и всего за полгода была разработана программа, исправно служившая организации более 15 лет.
Почему же случилось такое? Как большая и богатая организация смогла поверить никому не известному кооперативу и заплатить ему такие огромные деньги?
Секрет успеха
Во-первых, в советские времена было принято рассчитывать стоимость работ по нормативным документам. В некоторых отраслях, в частности, в машиностроении и строительстве те нормы успешно применяются до сих пор.
Во-вторых, в этих нормах содержались физические показатели, которые можно было измерить. В частности, нормы, о которых шла речь выше, содержали такие показатели, как количество входных и выходных документов. И организация могла убедиться, что это действительно так.
Важность быстрой оценки стоимости проектов
Давайте разберемся с причинами, зачем необходимо быстро оценивать стоимость проекта? Таких причин несколько.
Во-первых, естественное желание заказчика понять, сколько такие проекты вообще могут стоить? Заказчик использует эти знания для того, чтобы сориентироваться в рыночных ценах и определить, хватить ли у него вообще денег на проект. Кроме того, быстрая оценка проектов требуется заказчикам, чтобы заложить примерные параметры в бюджет следующего года. Да и сравнение подрядчиков по цене позволяет отобрать подходящие предприятия для дальнейшего, более подробного анализа.
Во-вторых, быстрая оценка проекта нужна самим подрядчикам. Известно, что далеко не каждое их коммерческое предложение превращается в договор. Обычно приходится делать 5-6 таких предложений разным потенциальным заказчикам, пока дело дойдет до стадии заключения договора. И чем меньше подрядчик тратит усилий и времени на подготовку коммерческих предложений, тем лучше. Тем меньше трудозатрат будет потрачено впустую.
В-третьих, здесь действует известный принцип: «Кто первым встал, того и тапки». Чем быстрее подрядчик сумеет оценить стоимость проекта, тем больше вероятность того, что договорятся именно с ним. Особенно когда убедятся, что у конкурентов получается примерно столько же.
Идеальный вариант и реальная практика
Самым лучшим вариантом для описанной выше ситуации был бы, например, готовый прайс-лист, такой же, как на коробочные продукты фирмы «1С». Посмотрев в него, сразу можно сказать, сколько будет стоить проект.
Представим себе примерно такой разговор. Звонит заказчик и спрашивает:
— Сколько будет стоить автоматизация завода на продуктах «1С»?
— Одну минутку. Сейчас открою прайс и посмотрю. Так, автоматизация аэропорта, автоматизация банка, автоматизация забоя - нет, это не то. А, вот, нашел - автоматизация завода - 2 миллиона.
— Долларов?
— Нет, рублей, конечно. Это же отечественное программное обеспечение!
Но, увы! В отличие от коробочного программного продукта, создать прайс-лист полной номенклатуры проектов невозможно. Слишком разные эти проекты, и их реальная стоимость может отличаться в десятки, а то и в сотни раз.
Пример строителей
Строительство зданий и сооружений очень похоже на разработку и внедрение программ в области информационных технологий (ИТ). Так, в ИТ проходит предпроектное обследование деятельности организации. В строительстве аналогичные работы называются изыскательскими. Разрабатываются строительные проекты, а в ИТ составляется техническое задание. В строительстве распространены типовые проекты, которым в ИТ соответствует коробочное программное обеспечение (ПО). Строители привязывают готовый объект к сетям и коммуникациям, а ИТ-шники свои программы интегрируют с другими в общее информационное пространство.
Однако, в отличие от совсем молодой отрасли информационных технологий, опыт строительной отрасли насчитывает несколько тысячелетий. Еще в древнем Египте успешно строили такие грандиозные сооружения, как пирамиды. И раз строители используют нормативы (рис.1), значит, и в области информационных технологий также можно применять нормативы.
Рис. 1. Пример строительных норм
Нормы в строительстве — это серьезные документы, которые вызывают уважение и доверие и заказчиков, и подрядчиков. Если же заглянуть внутрь строительных норм, то можно увидеть, что они весьма просты. По сути, это таблицы, в которых перечислен ряд физических показателей и указаны нормы времени для выполнения работ. А также описан состав бригад, которыми эти работы могут выполняться, и требуемый состав работ.
В частности, если строители хотят рассчитать, сколько будет стоить укладка трех балок, то сметчик по соответствующей строке (балки с пролетом 18 метров) берет нормы — 25 часов на укладку каждой балки, умножает этот показатель на количество, например, 3 балки. В итоге получает 75 часов. То есть 1 бригада из 3-х человек за 3 дня уложит эти 3 балки.
Новое — это хорошо забытое старое
Если еще раз совершить небольшой экскурс в историю, то оказывается, что в советские времена не только строительная, но и ИТ-отрасль применяла нормы (рис. 2). Это еще раз подтверждает истину, что новое — это хорошо забытое старое.
Рис. 2. Пример ИТ-норм
Именно эти нормы помогли программисту, который с их помощью обосновал своему заказчику серьезную стоимость разработки новой программы.
Кроме типовых норм времени на программирование задач для ЭВМ от 1987 года, существуют укрупненные нормы времени на разработку программных средств и вычислительной техники от 1986 года, укрупненные нормы времени на изготовление и сопровождение программных средств вычислительной техники от 1986 года. Они отличались между собой, во-первых, стадиями проекта, для которых предназначались. Во-вторых, если типовые нормы оценивали проект в целом — от начала до конца, то нормы, ориентированные на разработку, были нацелены на разработку программ, а нормы на изготовление и сопровождение — на тиражирование программ. В-третьих, физические показатели, которые были положены в основу норм, тоже разные.
Если заглянуть внутрь старых норм, опять же, видно, что они представляют собой простые и понятные, удобные в использовании таблички. В частности, одна из таблиц показывает, сколько времени требуется для программирования задач бухгалтерского учета. Допустим, разработчику ПО нужно запрограммировать 4 входные формы и 10 выходных форм. Из таблицы следует, что эти работы потребуют 37 человеко-дней.
Укрупненные нормы времени на внедрение ПО
Наша компания взялась за разработку укрупненных норм времени на внедрение программного обеспечения. В качестве основного показателя, характеризующего такой проект, было решено взять количество автоматизированных рабочих мест (АРМ).
Это сделано по следующим причинам.
-
Корпоративные заказчики программного обеспечения давно привыкли, что стоимость лицензий на использование ПО рассчитывается от количества пользователей. Таким образом, ценность программного обеспечения в сознании наших потребителей жестко привязана к количеству пользователей. Но чтобы автоматизировать эти рабочие места, нужно не только купить ПО, но и потратить усилия внедренцев. Очевидно, что чем дороже ПО, тем дороже и внедрение.
-
В среде ИТ-специалистов масштабы проекта, в первую очередь, измеряются количеством автоматизируемых рабочих мест. Нет другого аналогичного показателя проекта, который был бы так же легко измерим, понятен и принят всеми - и заказчиками, и подрядчиками — как количество АРМ.
Наша компания провела исследование и собрала статистику по корпоративным проектам внедрения информационной системы на базе «1С:Предприятие 8», которые выполняли наши специалисты. На основе статистических данных удалось вычислить среднюю трудоемкость автоматизации одного рабочего места. Однако при более детальном рассмотрении каждого проекта обнаружилось, что трудоемкость автоматизации одного рабочего места колеблется в весьма широком диапазоне. Следовательно, для разработки норм необходимо было оценивать не только количество АРМ, а еще ряд других факторов, которые влияют на трудоемкость. В частности, были приняты во внимание:
- виды автоматизированных бизнес-процессов;
- типы применяемых программных продуктов;
- объем изменения типового функционала программ;
- объем работ по переносу данных;
- необходимость интеграции с другими программами.
Для всех этих факторов пришлось разработать ряд коэффициентов, на которые умножается базовая трудоемкость.
Сколько же нужно времени и денег?
Статистика помогла нам разработать укрупненные нормы времени, и теперь они активно используются в компании (табл.). Допустим, звонит заказчик и спрашивает: «Сколько же будет стоить автоматизация завода?» Ему тут же задают 5 простых вопросов, на которые заказчик может ответить, как правило, сразу. Получается примерно такой диалог:
— Сколько рабочих мест планируется автоматизировать?
— 30.
— Какую программу планируется внедрять?
— «1С:УПП 8».
— Планируется ли дорабатывать программу?
— Немного.
— Требуется ли переносить данные из других систем?
— Да, только справочники и остатки.
— Требуется ли интегрировать внедряемую программу с другим ПО?
— Нет, не нужно.
Получив ответы на свои вопросы, мы буквально через 1 минуту можем сказать: «Стоимость проекта будет стоить от 1 млн 800 тыс. до 4 млн рублей».
Алгоритм расчета прост. Минимальная стоимость проекта — количество АРМ, умноженное на минимальную трудоемкость автоматизации одного рабочего места и на тариф. Получается 1млн 800 тыс. руб. Далее на основе ответов заказчика вычисляются, так называемые «поправочные» коэффициенты и суммарные коэффициенты, на которые умножают стоимость проекта, полученную в самом начале. Так формируется верхняя граница в 4 млн руб.
Если заказчик просит уточнить стоимость, то можно провести небольшое обследование, в результате которого выясняется, какие должности будут автоматизированы. Должности связываются с автоматизируемыми подсистемами. И для каждого рабочего места определяется, необходим ли перенос данных, доработка программы и т. д. По сути, это экспресс-обследование, оно проводится в течение одного-двух дней. По его результатам заказчик получает уточненную цифру стоимости проекта, которая будет стоять в коммерческом предложении и договоре. Для рассматриваемого примера - это 3 млн. 849 тыс. руб.
Таблица. Местные нормы небольшой компании
Рабочее место | Кол-во АРМ | Виды автоматиз. бизнес процессов | Виды программных продуктов | Объем изменения типового функционала | Перенос данных | Интеграция |
Сумма K |
Норма времени чел.час. | ||||||||||
1 | 2 | 3 | 1 | 2 | 3 | 1 | 2 | 3 | 1 | 2 | 3 | 1 | 2 | 3 | ||||
ОМТС | 2 | 1.0 | 1.0 | 1.4 | 1.0 | 1.0 | 1,4 | 140 | ||||||||||
Отдел сбыта | 3 | 1.0 | 1.0 | 1.4 | 1.0 | 1.0 | 1,4 | 210 | ||||||||||
Мастер цеха | 3 | 2.0 | 1.0 | 1.4 | 1.0 | 1.0 | 2,8 | 420 | ||||||||||
Кладовщики | 5 | 1.0 | 1.0 | 1.4 | 1.0 | 1.0 | 1,4 | 350 | ||||||||||
ОТ и З | 2 | 1.5 | 1.0 | 1.4 | 1.0 | 1.0 | 2,1 | 210 | ||||||||||
ПЭО | 2 | 2.0 | 1.0 | 1.4 | 1.0 | 1.0 | 2,8 | 280 | ||||||||||
Отдел кадров | 2 | 1.0 | 1.0 | 1.0 | 1.4 | 1.0 | 1,4 | 140 | ||||||||||
Бухгалтерия, общий отдел | 4 | 1.0 | 1.0 | 1.0 | 1.2 | 1.0 | 1,2 | 240 | ||||||||||
Бухгалтерия, учет затрат на автотранспорт | 1 | 1.0 | 1.2 | 1.4 | 1.0 | 1.0 | 1,68 | 84 | ||||||||||
Бухгалтерия, расчетчик зарплаты | 2 | 1.5 | 1.0 | 1.4 | 1.4 | 1.0 | 2,94 | 294 | ||||||||||
Автотранспортный цех | 5 | 2.0 | 1.2 | 1.4 | 1.0 | 1.0 | 3,36 | 840 | ||||||||||
Итого | 31 | 3208 |
Уточненная стоимость проекта =
Норма времени * Тариф = 3208 * 1200 = 3 849 600 руб.
Опишем, как выполняется расчет по таблице. Во-первых, по названию и содержанию функций рабочего места определятся вид автоматизируемого бизнес-процесса и соответствующий уточняющий коэффициент для каждого АРМ. Во-вторых, уточняется тип ПО (1С, 1С:Совместно и др.) и назначается соответствующий коэффициент от 1,0 до 1,4. Таким же образом анализируется объем доработок, требования о переносе денных и требования к интеграции для каждого рабочего места. После чего вычисляется трудоемкость автоматизации по каждой строке как произведение базовой трудоемкости (50 чел.-часов) на количество рабочих мест и на произведение всех коэффициентов. Например, для первой строки таблицы эта формула выглядит так:
50 * 2 * 1,0 * 1,0 * 1,4 * 1,0 * 1,0 = 140 чел.часов.
Нормы являются тем прочным фундаментом, на котором строится весь ИТ-дом. Они позволяют:
- обосновать расчет стоимости проекта в глазах заказчика (нормы должны быть доступны заказчику);
- учесть значимые факторы, влияющие на цену проекта;
- оперативно выполнить примерный расчет стоимости проекта за несколько минут;
- выполнить уточненный расчет стоимости проекта, включая сбор необходимых данных, за несколько часов.
Подход к расчету стоимости проекта внедрения информационной системы, основанный на применении норм, повышает взаимопонимание и доверие между заказчиком и исполнителем проекта. Кроме того, использование норм при расчете стоимости проекта снижает его риски и позволяет подрядчику более уверенно чувствовать себя в различных тендерах и конкурсах на выполнение ИТ-работ, поскольку нормы создаются на основе статистики по предыдущим проектам.
Однако, каждая ИТ-компания, которая выполняет проекты внедрения программного обеспечения у своих заказчиков, должна побеспокоиться о том, чтобы иметь свои нормы на выполнение всех работ. Именно свои, разработанные на основе своей статистики. Только собственная статистика может гарантировать, что рассчитанная по нормам трудоемкость учтет все «скрытые» работы и обеспечит выполнение проекта и требуемую рентабельность.
Чтобы оставить комментарий пожалуйста Авторизуйтесь