metódy odhadu ceny
DESCRIPTION
Metódy odhadu ceny. Lukáš Miňo a Martin Kukolos. O čom to bude. Úvod do problematiky CoCoMo Príklad. Odhad ceny. Náklady na tvorbu softvéru (programovacie prostredia, hardvér, údržba) Náklady na cestovanie a školenia - PowerPoint PPT PresentationTRANSCRIPT
Metódy odhadu ceny Metódy odhadu ceny
Lukáš MiňoLukáš Miňo
aa
Martin KukolosMartin Kukolos
O čom to budeO čom to bude
Úvod do problematikyÚvod do problematiky CoCoMoCoCoMo PríkladPríklad
Odhad cenyOdhad ceny
Náklady na tvorbu softvéru Náklady na tvorbu softvéru (programovacie prostredia, hardvér, (programovacie prostredia, hardvér, údržba)údržba)
Náklady na cestovanie a školeniaNáklady na cestovanie a školenia Náklady spojené s vynaloženým Náklady spojené s vynaloženým
úsilím na vytvorenie výrobku a úsilím na vytvorenie výrobku a zabezpečenie služby (výplaty , réžia)zabezpečenie služby (výplaty , réžia)
Cena = náklady + ziskCena = náklady + zisk
Vplyv na cenuVplyv na cenu
podmienky zmluvypodmienky zmluvy finančná situácia dodávateľa a finančná situácia dodávateľa a
strategické rozhodnutiastrategické rozhodnutia vytvorenie príležitostí na trhuvytvorenie príležitostí na trhu možnosti zákazníkamožnosti zákazníka
Jednoduché modely na odhady Jednoduché modely na odhady nákladovnákladov
Úloha: zistiť , ktoré parametre a ako Úloha: zistiť , ktoré parametre a ako výrazne vplývajú na výšku nákladov výrazne vplývajú na výšku nákladov
Vynaložené úsilie = P*V Vynaložené úsilie = P*V P- koeficient produktivityP- koeficient produktivity V – veľkosť systémuV – veľkosť systému
Model COCOMO Model COCOMO (Constructive cost model)(Constructive cost model)
BarryBarry BoehmBoehm. . Software Software engineeringengineering economicseconomics. . Englewood Cliffs, NJ:Prentice-Hall, 1981. Englewood Cliffs, NJ:Prentice-Hall, 1981. ISBN 0-13-822122-7ISBN 0-13-822122-7
Empirický model na základe známeho odhadnutého Empirický model na základe známeho odhadnutého rozsahu projektu programu (počet riadkov rozsahu projektu programu (počet riadkov v programe)v programe)
Na základe súboru významových veličín (ovplyvňujú Na základe súboru významových veličín (ovplyvňujú cenu a dobu riešenia projektu)cenu a dobu riešenia projektu)
Vyhodnocuje cenu a dobu trvania vývojovej fázy Vyhodnocuje cenu a dobu trvania vývojovej fázy programuprogramu
Riadenia projektu a práce spojené s dokumentáciouRiadenia projektu a práce spojené s dokumentáciou Nepokrýva užívateľské školenie, inštaláciu Nepokrýva užívateľské školenie, inštaláciu
konečného projektukonečného projektu
ÚrovneÚrovne
Základná úroveň (hrubé odhady)Základná úroveň (hrubé odhady) Stredná úroveň (aj atribútyStredná úroveň (aj atribúty projektu)projektu) Podrobná úroveň (úrovne Podrobná úroveň (úrovne
jednotlivých etáp)jednotlivých etáp)
Základná úroveň COCOMO Základná úroveň COCOMO (hrubé odhady)(hrubé odhady)
E = a*(KDL)^bE = a*(KDL)^b T = c*(E)^d T = c*(E)^d
E (effort/úsilie) - práca naE (effort/úsilie) - práca na vývoji vývoji v človekomesiacochv človekomesiacoch
T – doba trvania v mesiacoch (1 T – doba trvania v mesiacoch (1 mesiac=152 hodín)mesiac=152 hodín)
KDL (kilo derivered lines) – tisíce riadkov KDL (kilo derivered lines) – tisíce riadkov strojových inštrukciistrojových inštrukcii
aa, , bb,, cc, , dd – empiricky zistené konštanty – empiricky zistené konštanty
Typ projektu (mód)Typ projektu (mód)
Organický módOrganický mód Prechodný módPrechodný mód Viazaný módViazaný mód
Organický módOrganický mód Relatívne malý tým pracuje na známej Relatívne malý tým pracuje na známej
aplikácii v známom prostredí. aplikácii v známom prostredí. Malé náklady na komunikáciu, stabilní HW, Malé náklady na komunikáciu, stabilní HW,
známe algoritmy a dekompozície známe algoritmy a dekompozície problému na menšie celky problému na menšie celky
do 50 KDLdo 50 KDL
a = a = 2.4 2.4 b = 1.05b = 1.05 c = 2.5c = 2.5 d = 0.38d = 0.38
Prechodný módPrechodný mód Prechod mezi ľahkým organickým a Prechod mezi ľahkým organickým a
náročným viazaným módom. náročným viazaným módom. Projekty obsahujú zložitějšie problémy, Projekty obsahujú zložitějšie problémy,
požiadavky na komunikáciu, čas a veľkosť požiadavky na komunikáciu, čas a veľkosť programu sú vyššie programu sú vyššie
do 300 KDLdo 300 KDL
a = a = 3.03.0 b = 1.b = 1.1212 c = 2.5c = 2.5 d = 0.3d = 0.355
Viazaný módViazaný mód rôzne obmedzenia projektu - krátke termíny, rôzne obmedzenia projektu - krátke termíny,
súčasné oživovanie HW a SW, neustále zmeny súčasné oživovanie HW a SW, neustále zmeny v požiadavkách , zásahy zákazníka, neznáma v požiadavkách , zásahy zákazníka, neznáma problémová oblasť atd. problémová oblasť atd.
Typické aplikácie majú tvrdé požiadavky na Typické aplikácie majú tvrdé požiadavky na časovou odozvu (interaktívne, riadiace a časovou odozvu (interaktívne, riadiace a operačné systémy)operačné systémy)
a = a = 3.63.6 b = 1.b = 1.2020 c = 2.5c = 2.5 d = 0.3d = 0.322
Stredná úroveň COCOMO Stredná úroveň COCOMO (aj atribúty projektu)(aj atribúty projektu)
EE = [a*(KD = [a*(KDLL)^b]*fakt )^b]*fakt ...prác...prácaa na vývoj v človeko na vývoj v človeko
mesiacochmesiacochTT = c*( = c*(EE)^d )^d
...doba trvania vývoj...doba trvania vývojaa v mesiacoch v mesiacochfakt = súčin faktorov ovplyvňujúcich fakt = súčin faktorov ovplyvňujúcich výsledokvýsledok
FaktoryFaktory
Faktory výrobkuFaktory výrobku Faktory počítačového vybaveniaFaktory počítačového vybavenia Faktory riešiteľovFaktory riešiteľov Faktory projektuFaktory projektu
Podrobná úroveň Podrobná úroveň (úrovne jednotlivých etáp)(úrovne jednotlivých etáp)
Rozdelenie úsilia medzi jednotlivé Rozdelenie úsilia medzi jednotlivé etapyetapy
Objem práce v jednotlivých fázach (vObjem práce v jednotlivých fázach (v%)%)
ŠpecifikáciaŠpecifikácia 2020
Návrh a kódovanieNávrh a kódovanie 1515
Testovanie a overovanieTestovanie a overovanie 2020
Modifikácia programuModifikácia programu 2525
Údržba programuÚdržba programu 2020
Riadenie projektuRiadenie projektu 1010
PríkladPríklad
Odhad nákladov na vytvorenie a údržbu IS Odhad nákladov na vytvorenie a údržbu IS (metodou COCOMO)(metodou COCOMO)
Jedná sa "stredne obtiažny projekt" Jedná sa "stredne obtiažny projekt" uvažujeme, že výsledný program bude uvažujeme, že výsledný program bude obsahovať 60 KDL (60 000 riadkov zdrojových obsahovať 60 KDL (60 000 riadkov zdrojových inštrukcii).inštrukcii).
EE = [a*(KD = [a*(KDLL)^b]*fakt)^b]*fakt ...prác...prácaa na vývoj v človeko mesiacoch na vývoj v človeko mesiacoch TT = c*( = c*(EE)^d)^d ...doba trvania vývoje v mesiacoch...doba trvania vývoje v mesiacoch fakt = súčin faktorov ovplyvňujúcich výsledokfakt = súčin faktorov ovplyvňujúcich výsledok
FaktoryFaktory
Faktory výrobku: Faktory výrobku: RELYRELY (spoľahlivosť výrobku) = (spoľahlivosť výrobku) =
0,98 ...vysoká spoľahlivosť0,98 ...vysoká spoľahlivosť DATADATA (rozsah dát) = 1 ...stredná (rozsah dát) = 1 ...stredná
databázadatabáza CPLX CPLX (zložitosť výrobku) = (zložitosť výrobku) =
1 ...normálna zložitosť1 ...normálna zložitosť TIMETIME (rýchlosť programu) = (rýchlosť programu) =
1,1 ...vysoká1,1 ...vysoká
FaktoryFaktory Faktory riešiteľov: Faktory riešiteľov: ACAPACAP (znalosti a skúsenosti analytika) = (znalosti a skúsenosti analytika) =
1,19 ...radšej pesimistickejší odhad1,19 ...radšej pesimistickejší odhad AEXPAEXP(znalosť aplikácie) = 1,13 ...priemerná skôr (znalosť aplikácie) = 1,13 ...priemerná skôr
nižšianižšia PCAPPCAP (skúsenosti programátorov) = (skúsenosti programátorov) =
1 ...predpokladáme čiastočne skúsených 1 ...predpokladáme čiastočne skúsených programátorovprogramátorov
VEXPVEXP (znalosť virtuálneho počítača) = (znalosť virtuálneho počítača) = 0,9 ...vysoká znalosť OS0,9 ...vysoká znalosť OS
LEXPLEXP (znalost prog. jazyka) = 0,95 ...vysoká (znalost prog. jazyka) = 0,95 ...vysoká znalosť programovacieho jazykaznalosť programovacieho jazyka
FaktoryFaktory
Faktory projektu: Faktory projektu: MODPMODP (moderné programovacie (moderné programovacie
metódy) = 1 ...v určitých prípadochmetódy) = 1 ...v určitých prípadoch TOOLTOOL (použitie program. nástrojov ) (použitie program. nástrojov )
= 0,91 ...áno= 0,91 ...áno SCEDSCED (časový plán) = 1,04 ...mierne (časový plán) = 1,04 ...mierne
napätýnapätý
KonKonštantyštanty Výsledné faktorové číslo:Výsledné faktorové číslo: faktfakt = 0,98*1,1*1,19*1,13*0,9*0,95*0,91*1,04 = 0,98*1,1*1,19*1,13*0,9*0,95*0,91*1,04
= 1,17296489= 1,17296489
Empiricky zistené konštanty pre prechodný mód:Empiricky zistené konštanty pre prechodný mód: a = 3,0a = 3,0 (konštanta určená obtiažnosťou (konštanta určená obtiažnosťou
projektu)projektu) b = 1,12b = 1,12 (konštanta určená obtiažnosťou (konštanta určená obtiažnosťou
projektu)projektu) c = 2,5c = 2,5 (konštanta určená obtiažnosťou (konštanta určená obtiažnosťou
projektu)projektu) d = 0,35d = 0,35 (konštanta určená obtiažnosťou (konštanta určená obtiažnosťou
projektu)projektu)
VýsledkyVýsledky
E = [a*(KDL)^b]*faktE = [a*(KDL)^b]*fakt = = [3*(80)^1.12]*1.17296489=345,1 [3*(80)^1.12]*1.17296489=345,1 človeko-mesiacovčloveko-mesiacov
T = 2,5*(345,1)^0.35 = 19,329 mesiacovT = 2,5*(345,1)^0.35 = 19,329 mesiacov Minimálny počet riešiteľov bude: Minimálny počet riešiteľov bude: P = E/TP = E/T = 345,1/19,329 = 17,85 ==> 18 = 345,1/19,329 = 17,85 ==> 18 A A cena produktucena produktu pri priemernom pri priemernom
mesačnom platu 20 000 Sk bude: mesačnom platu 20 000 Sk bude: C = 19,329*18*20000 = C = 19,329*18*20000 = 6 958 440 Sk6 958 440 Sk..
ÚdržbaÚdržba
Náklady na údržbu v človeko-Náklady na údržbu v človeko-mesiacoch:mesiacoch:
M = Z*EM = Z*E = 0,1*345,1 = 34,51 čl-mes = 0,1*345,1 = 34,51 čl-mes Z = 0,1 ...koeficient zmeny programu Z = 0,1 ...koeficient zmeny programu
pri údržbepri údržbe E = 345,1 ...náklady na tvorbu v čl-mesE = 345,1 ...náklady na tvorbu v čl-mes Pri plate "údržbára" systému 10 000 Pri plate "údržbára" systému 10 000
vychádzajú vychádzajú ročné náklad na údržburočné náklad na údržbu:: 34,51/12 = 2,87 ==> 3 ľudia ==> 34,51/12 = 2,87 ==> 3 ľudia ==>
3*10000*12 = 3*10000*12 = 360 000 Sk ročne.360 000 Sk ročne.
LiteratLiteratúraúra
http://en.wikipedia.org/wiki/COCOMOhttp://en.wikipedia.org/wiki/COCOMO http://sunset.usc.edu/csse/research/http://sunset.usc.edu/csse/research/
COCOMOII/cocomo_main.htmlCOCOMOII/cocomo_main.html http://www.cms4site.ru/utility.php?http://www.cms4site.ru/utility.php?
ecur=1.12&eafcur=1&utility=cocomoii&slocecur=1.12&eafcur=1&utility=cocomoii&sloc=5000&pph=100=5000&pph=100
http://cost.jsc.nasa.gov/COCOMO.htmlhttp://cost.jsc.nasa.gov/COCOMO.html http://sunset.usc.edu/research/COCOMOII/http://sunset.usc.edu/research/COCOMOII/
cocomo81_pgm/cocomo81.htmlcocomo81_pgm/cocomo81.html http://www.kasr.elf.stuba.sk/predmety/ppis/http://www.kasr.elf.stuba.sk/predmety/ppis/
Ďakujeme za pozornosťĎakujeme za pozornosť