Saturday, June 19, 2010

Пресметка на цена на изработка на IT проект

Како да се пресмета колку чини изработката на проект за имплементација на ERP софтвер?
Варијабли и фактори кои влијаат на пресметката има многу, од директни трошоци, преку трошоци за работната сила, и на крај, она најтешкото -- колку чини вложениот интелектуален труд? И тоа, не само во проектот, туку како да се пресмета вистинската вредност на целото 25-годишно искуство, квалитетот, сеопфатноста и длабочината на сѐ она што се вградува во апликацијата?
Модерно едуцираните MBA стручњаци ќе ви опишат, дијаграмираат и образложат сто разни техники за пресметка, а јас велам само едно: „зависи“.

Зависи од тоа дали се работи за локално опфаќање на (на пример) „обична“ трговска фирма, или некоја посериозна апликација. Колку сериозна? За колкава фирма? Што сѐ опфаќа? Колку корисници ќе ја употребуваат? Како стои купувачот со пари (колку реално сака да плати)? Како стојат работите кај нас, во Македонија?

Методологија
Многу важно е дали нешто прв пат развиваш, доработуваш или „штанцаш“.
Во развојот се вложува, па оди со пониска цена, за полесно да најдеш купувач кој практично ќе ти го финансира развојот.
Доработката е најскапа, им даваш производ кој е веќе тестиран (нема многу багови, се надеваш), што значи дека побрзо и полесно ќе биде имплементиран.
„Штанцањето“, барем во мојата компанија, ретко се случува, затоа што работиме за поголеми клиенти и enterprise-level апликации. Но, по цена би требало да биде нешто пониско од доработката.

Како се калкулира? Вообичаена „тарифа“ е 80 - 100 евра на ден по (просечен) програмер. Тука не се само платите, туку и целиот трошок на компанијата, давачки, даноци, кока-коли, одсуства, годишни одмори, и -- особено важно -- вкалкулиран гарантен рок (од 6 - 9 месеци, за кое време не заработуваш, а „трошиш“ програмери). На ова треба да се додаде и 20-30% за непредвидени трошоци, погрешна пресметка, подолг рок на изведба, и слично.
Потоа, треба да се пресмета и трошокот за проектот и останатите пред-изведувачки активности. Просечен проект е околу 3000 евра, плус уште 2-3000 евра за проектни задачи, листи, договори и преговори.

Остана да се вкалкулира и обуката и пробната работа. Тоа бара ангажман „на терен“, но обично не трошиш добри програмери на ова. Но, од друга страна, има трошоци за пат, евентуално и престој (ако е во друг град). Како и да е, додади околу 70 евра/ден по обучувач/надгледувач.

Совет: Користете слободен софтвер кога можете, така делот од „заштедата“ во лиценци можете да си ја земете за себе, а купувачот повторно да помине поевтино. Ова е и добар selling point -- ќе му пресметате колку поевтино ќе помине со вас, одошто кај конкуренцијата да мора да ги купува сите Microsoft/Oracle/Што-знам-кои лиценци.
Задолжителна е и web-платформа, така уште повеќе се намалува трошокот за купувачот (за нови работни станици, нпр.), па можете и од таму да земете делче за себе.

Пробна пресметка

Хипотетичен купувач: средно-голема фирма, 150 вработени, 40-50 работни места, со производна хала, набавка, продажба, извоз, плата, сметководство, reporting ...
Просечен enterprise проект трае 6-7 месеци: 1 месец подготовка, 4 месеци програмирање, 1-2 месеци обука и пробна работа (дебагирање). Ова важи ако почнувате од некаква полу-готова платформа.
За проектот и програмските задачи: 5000 евра.
Програмирање (4 програмери, 4 месеци, 80/90 евра дневно по програмер, 30% overhead): cca. 50.000 евра.
Пробна работа/обука/подготовка (3 вработени, 1.5 месеци, 70 евра/ден): cca. 9000 евра
Да не заборавиме, систем-инжинерски трошоци, cca. 2000 евра

Од ова излегува дека трошоците за посериозен проект се околу 66.000 евра.
Додадете на ова профит (барем 10%, инаку е подобро парите да ги чувате во банка), доаѓаме до заокружена цифра од 75.000 евра за ERP проект за фирма од средна големина.
Плаќањето е обично на следниов начин: аванс 20%, останатото на 12 рати, без камата. Така полесно се убедува клиентот да ја направи инвестицијата, а реално, може да се извлече и повисока цена.

7 comments:

  1. Би додал уште едно „зависи“: може да се преговара за благо намалување на цената за сметка на добар договор за одржување во следните години (т.е. повисок паушал).

    ReplyDelete
  2. Од тие 50000 евра за 4 програмери, за 4 месеци(!), колку проценти оди за фирмата?

    ReplyDelete
  3. 4 програмери, плус двајца водечки (јас и мојот партнер), плус проектант, плус управувач со проектот, плус систем инженер ...

    Генерално, 1000 - 1200 евра месечно е „статичната“ цена по високообразуван вработен (програмер, проектант и сл.). Ова е вкупна цена на чинење: плата, придонеси, работно место, ладење, греење, превоз, интернет, струја, итн.

    Отприлика, околу 9 - 10.000 евра месечно е работната сила.

    За фирмата остануваат околу 7.000 евра, кога ќе се доодбијат и другите трошоци за самиот проект.

    ReplyDelete
  4. Инаку, во принцип, не одговарам на анонимни коментари (без линк), но направив отстапка -- добро прашање.

    ReplyDelete
  5. Програмери со плата 200,350,500 евра (според вашиот пост), а месечно за него требале по 1200 евра. Интересно.....
    Па дури и со таква математика (1200 од вработен), ќе треба дури 10 луѓе да работат САМО на тој проект во периодот од 4 месеци, за да дојдеме некако до цифрата од 50000 евра.

    Е ако навистина за секој проект имаше 10 луѓе кои се посветени само на него и земаа по 700 евра плата, оваа земја ќе беше многу поубава за живеење. За жал работите се така само на хартија, реалноста е многу поинаква.

    ReplyDelete
  6. Интересна анализа и добро срочена. Дали верувате дека со статистички техники може да се амортизира проблемот со непредвидливост на продуктивноста на еден програмер? Дали примената на такви техники е финансиски неоправдана со оглед на тоа што за примена би требало да се располага со историски подацоти за продуктивност на мали разглобени сегменти(пр. слични прогамерски проблеми би требало да одземат слично време). Понтаму варијабилноста на историската продуктивност треба да е добар хинт за можни кочници и менувачи на распоред..
    Дали е ова прескапо и неоправдано да се документира на такво ниво (мали сегменти од проекти и нивна споредба наспорти како што спомнавте споредбата на цели проекти)? Мислам сето би зависело од длабочината на класификација на проблемит/сегментите на проектите. Колку подетално - толку попрецизна анализа на трошоци на крајот. Колку попрецизно - толку повеќе време/пари треба да се одредад сите видови проблеми, документираат и споредат со претходни појавувања.

    ReplyDelete
  7. @tomsaso:

    Сигурен сум дека постојат подобри (на крајот на краиштата, „понаучни“) методи од мојата.
    Ова што го напишав се базира на моето долгогодишно искуство на „паталец“ во професијата.

    Апсолутно сметам дека во поголеми проекти треба да се факторираат колку е можно повеќе варијабли за да се добие поточна проценка на времето и трошоците. Мојата, по малку (признавам) „пиљарска“ метода на лупнување на одреден процент за „непредвидени непредвидливости“ веројатно функционира само во помал обем.

    Е, сега, откако го кажав ова, и на сите ни е јасно дека има подобри методи, треба малку да ја погледнеме и природата на софтверскиот продукт. Сепак, се работи за виртуелен производ, во кој најголем инпут во трошокот е работната сила, додека најголемата вредност е во инвентивноста и способноста.
    Значи, продажната цена може да биде многу поголема од производната -- практично, онолку колку што купувачот е подготвен да плати, или колку што мисли дека софтверот ќе му помогне во работењето и ќе ја зголеми неговата ефикасност. Методата „колку кој може да плати“ е широко применувана, не само кај нас, туку насекаде. Доказ за ова се бесплатните лиценци на Слободниот софтвер на едната страна на скалата, и огромните суми кои -- на пример -- Oracle ги наплаќа за своите производи.

    Но, ова можеби заслужува посебен пост.

    ReplyDelete