Вы находитесь на странице: 1из 11

ÏÐÈÊËÀÄÍÀß ÈÍÔÎÐÌÀÒÈÊÀ

¹ 5(23) 2009

Õ. Ð. Àëèåâ, Ñ. Î. Àíäðæååâñêèé, Ì. Á. Áîðèñîâ

Ìîäåëè îöåíêè ñòîèìîñòè èíôîðìàöèîííûõ ñèñòåì


â ìåòîäîëîãèÿõ ðàçðàáîòêè ïðîãðàììíîãî îáåñïå÷åíèÿ
 ñòàòüå îïèñàíû íàèáîëåå àêòóàëüíûå è âîñòðåáîâàííûå íà ðûíêå IT-óñëóã ìå-
òîäîëîãèè ðàçðàáîòêè ïðîãðàììíîãî îáåñïå÷åíèÿ, íà èõ îñíîâå ïðîâåäåí àíàëèç
ìåòîäèê îïðåäåëåíèÿ òðóäîçàòðàò. Íà áàçå íàèáîëåå ïîïóëÿðíûõ ìàòåìàòè÷å-
ñêèõ ìîäåëåé ðàññìîòðåíû âîïðîñû îöåíêè òðóäîåìêîñòè è ñòîèìîñòè ïðî-
ãðàììíîãî îáåñïå÷åíèÿ.

Ïðîôåññèîíàëüíàÿ ðàçðàáîòêà ïðîãðàìì- íî ïðèâåñòè ìíîæåñòâî. Ïðè÷èíàìè ïîäîá-


íîãî îáåñïå÷åíèÿ, ñîãëàñíî ñòàíäàðòó IEEE íûõ íåãàòèâíûõ ðåçóëüòàòîâ ÿâëÿþòñÿ:
610.12, — ýòî ïðèìåíåíèå ìåòîäè÷íîãî, óïî- l íåäîñòàòî÷íî ïðîäóìàííûé ïëàí ìåíåä-

ðÿäî÷åííîãî, êîëè÷åñòâåííî èçìåðèìîãî æåðà ïðîåêòà (Project Manager), èíûìè ñëîâà-


ïîäõîäà ê ïðîåêòèðîâàíèþ, ñîçäàíèþ, ýêñïëóà- ìè, íåïðàâèëüíîå óïðàâëåíèå ïðîåêòîì;
òàöèè è ïîääåðæêå ïðîãðàììíîãî îáåñïå÷åíèÿ l íåïîëíàÿ èëè íåòî÷íàÿ ñïåöèôèêàöèÿ

(ÏÎ). Èìåííî òàêèìè êà÷åñòâàìè îòëè÷àåòñÿ íà ïðîåêò (Specification), à òàêæå òðåáîâàíèÿ


ïðîôåññèîíàëüíûé èíæåíåðíûé ïîäõîä ê ðàç- çàêàç÷èêà, êîòîðûå ìåíÿþòñÿ â ïðîöåññå ðàç-
ðàáîòêå ÏÎ1. ðàáîòêè;
Îïðåäåëåíèå ïðîôåññèîíàëüíîãî ïîäõîäà l íåêà÷åñòâåííàÿ îöåíêà ïðîåêòà (Estima-

ê ðàçðàáîòêå ÏÎ, äàííîå Èíñòèòóòîì èíæåíå- tion); ñîñòàâëÿþùèå áþäæåòà, íå îãîâîðåííûå


ðîâ ïî ýëåêòðîòåõíèêå è ðàäèîýëåêòðîíèêå íà ïðåäâàðèòåëüíûõ ýòàïàõ ïëàíèðîâàíèÿ ïðî-
(Institute of Electrical and Electronics Engineers, åêòà.
IEEE), ðàñøèðÿåò ðàçðàáîòêó èíôîðìàöèîí- Äëÿ çàêàç÷èêà è èñïîëíèòåëÿ àäåêâàòíàÿ
íûõ ñèñòåì çà ãðàíèöû èçâåñòíîé ìîäåëè óñî- îöåíêà ñòîèìîñòè ïðîåêòà ÿâëÿåòñÿ î÷åíü âàæ-
âåðøåíñòâîâàíèÿ ïðîöåññîâ ðàçðàáîòêè ïðî- íûì ôàêòîðîì, êîòîðûé áóäåò âëèÿòü íà äîãî-
ãðàììíîãî îáåñïå÷åíèÿ SW CMM2, äîáàâëÿÿ âîð ìåæäó íèìè. Äîáèòüñÿ ïðàâèëüíîé îöåíêè
òàêèå ýòàïû, êàê âûÿâëåíèå òðåáîâàíèé, ââîä íà ïðåäâàðèòåëüíûõ ñòàäèÿõ ðàçðàáîòêè îò-
ÏÎ â ýêñïëóàòàöèþ, åãî ýêñïëóàòàöèÿ è ñîïðî- íþäü íå ïðîñòî. Íåïðàâèëüíàÿ îöåíêà — îñî-
âîæäåíèå. áåííî íà ïðåäâàðèòåëüíûõ ýòàïàõ — âëå÷åò
Ðàçðàáîòêà êðóïíûõ èíôîðìàöèîííûõ ñèñ- ñåðüåçíûå ïðîáëåìû íà ïåðåõîäíîé ñòàäèè
òåì (ÈÑ) — ïðîöåññ òðóäîåìêèé, òðåáóþùèé â ïðîåêòèðîâàíèå.
êîìïëåêñíîãî ðåøåíèÿ ïðîáëåì âðåìåíè, Ïî ìíåíèþ àâòîðîâ ñòàòüè, ðåñóðñû ìå-
áþäæåòà è ñàìîé ôóíêöèîíàëüíîñòè ðàçðàáà- íåäæåðà ïðîåêòà íå ïîçâîëÿþò èñïðàâèòü ïî-
òûâàåìîé ñèñòåìû. Çà÷àñòóþ ïðîåêòû çàâåð- ñëåäñòâèÿ îøèáêè â îöåíêå ïðîåêòà, åñëè
øàþòñÿ íå â ñðîê, èõ áþäæåò ïðåâûøàåò ïåð- èõ äîïóñòèëà êîìàíäà àíàëèòèêîâ êîìïàíèè-
âîíà÷àëüíî çàäàííûé è ò. ä. — ïðèìåðîâ ìîæ- ïîñòàâùèêà.

1 Ñòàíäàðòíûé ãëîññàðèé òåðìèíîëîãèè ðàçðàáîòêè ïðîãðàììíîãî îáåñïå÷åíèÿ Èíñòèòóòà èíæåíåðîâ ýëåêòðè÷å-

ñêîé è ýëåêòðîííîé àïïàðàòóðû (IEEE Standart Glossary of Software Engineering Terminology. IEEE Standard 610.12–1990.
New-York: Institute of Electrical and Electronics Engineers, 1990).
2 SW CMM — Capability Maturity Model. Ïåðâàÿ ìîäåëü CMM ñîçäàíà â SEI (íîÿáðü 1986 ã.), ìîäåëü çðåëîñòè ïðîöåñ-

ñîâ, ïðåäíàçíà÷åííàÿ äëÿ òîãî, ÷òîáû îêàçàòü ïîääåðæêó îðãàíèçàöèÿì â óëó÷øåíèè ïðîöåññîâ, ñâÿçàííûõ ñ ðàçðàáîò-
êîé ÈÑ. Ïîëíîñòüþ ðàçðàáîòàííàÿ ìîäåëü (âåðñèè 1.1) âûøëà â ñâåò â 1993 ã.

33
IT-ìåíåäæìåíò R Óïðàâëåíèå ïðîåêòàìè
ÏÐÈÊËÀÄÍÀß ÈÍÔÎÐÌÀÒÈÊÀ
¹ 5(23) 2009
Íà ýòàïå ïëàíèðîâàíèÿ íà îñíîâå çàïðî- ðàáîòêè Ïλ. Ðàçëè÷íûå Agile-òåõíîëîãèè ïîçâî-
øåííûõ ðàáîò îñóùåñòâëÿåòñÿ ïðåäâàðèòåëü- ëÿþò îðãàíèçîâàòü ïðîöåññ ïîñòåïåííîãî
íàÿ îöåíêà, à èìåííî îöåíèâàþòñÿ ìàñøòàá ïðèáëèæåíèÿ ê öåëè ïðîåêòà ïóòåì ïðîâåäå-
è àòðèáóòû ðàáî÷èõ ïðîäóêòîâ è çàäà÷. Äëÿ íèÿ öèêëîâ èñïûòàíèé ñ êîððåêòèðîâêîé ïî-
òîãî ÷òîáû óñòàíîâèòü ãðàíèöû ïëàíèðîâà- ñëåäóþùèõ, îñíîâàííûõ íà àíàëèçå ðåçóëüòà-
íèÿ, ñòðîèòñÿ ìîäåëü æèçíåííîãî öèêëà ïðî- òîâ ïðåäûäóùèõ.
åêòà. Çàòåì ïðîèçâîäÿòñÿ îöåíêè òðóäîçàòðàò Íàèáîëåå èçâåñòíûìè è âîñòðåáîâàííûìè
è ñòîèìîñòè. Ýòè îöåíêè èñïîëüçóþòñÿ â êà÷å- ìåòîäîëîãèÿìè èç ñåìåéñòâà Agile ÿâëÿþòñÿ:
ñòâå îñíîâû äëÿ ðàçðàáîòêè ïðîåêòíûõ ïëà- l ïðàêòèêà ýêñòðåìàëüíîãî ïðîãðàììèðî-

íîâ. Ñ ó÷åòîì ïëàíà óñòàíàâëèâàþòñÿ áþäæåò âàíèÿ (Extreme Programming, XP);


è ãðàôèê ïðîåêòà, âûÿâëÿþòñÿ ïðîåêòíûå ðèñêè l ìåòîäîëîãèÿ Scrum.

è ñîçäàþòñÿ ïëàíû óïðàâëåíèÿ èíôîðìàöèåé Êîìïàíèè-ðàçðàáîò÷èêè ÏÎ ñòîëêíóëèñü


è ðåñóðñàìè, îïðåäåëÿåòñÿ ïîòðåáíîñòü â çíà- ñåãîäíÿ ñ íåîáõîäèìîñòüþ âíîñèòü ìíîãî÷èñ-
íèÿõ è íàâûêàõ, ïëàíèðóåòñÿ ïðèâëå÷åíèå äî- ëåííûå èçìåíåíèÿ â òðåáîâàíèÿ ê ðàçðàáàòû-
ïîëíèòåëüíûõ ó÷àñòíèêîâ. Íà çàêëþ÷èòåëüíîé âàåìîìó ïðîäóêòó óæå â ïðîöåññå ðàçðàáîòêè,
ñòàäèè ïëàíèðîâàíèÿ ïîÿâëÿåòñÿ îñòðàÿ íåîá- à òðàäèöèîííûå ìåòîäîëîãèè ïëîõî ïîääåð-
Ìîäåëè îöåíêè ñòîèìîñòè èíôîðìàöèîííûõ ñèñòåì â ìåòîäîëîãèÿõ ðàçðàáîòêè ïðîãðàììíîãî îáåñïå÷åíèÿ

õîäèìîñòü ïðèâåñòè çàïëàíèðîâàííûå ðåñóðñû æèâàþò èçìåíåíèÿ â ñïåöèôèêàöèÿõ ïîñëå


â ñîîòâåòñòâèå ñ ôàêòè÷åñêè èìåþùèìèñÿ. èõ ïåðâîíà÷àëüíîãî îïðåäåëåíèÿ. ×åì äëè-
Ïîïûòàåìñÿ âûäåëèòü ôàêòîðû, ïðèâîäÿ- òåëüíåå ïðîåêò, òåì òðóäíåå è îïàñíåå âíî-
ùèå ê íåïðàâèëüíîé îöåíêå ðàçðàáîòêè: ñèòü â íåãî èçìåíåíèÿ. Ñ äðóãîé ñòîðîíû, ñî-
l íåçíàíèå ìåòîäèê èëè îòñóòñòâèå îïûòà âðåìåííûé ïðîãðàììíûé ïðîåêò íåèçáåæíî
îöåíêè ïðîåêòà: ýòî ÷àñòî âñòðå÷àþùàÿñÿ ñîïðîâîæäàåòñÿ ìíîãî÷èñëåííûìè èçìåíå-
â IT-êîìïàíèÿõ è, íàâåðíîå, ñàìàÿ ñóùåñòâåí- íèÿìè ïî õîäó äåëà, è çà÷àñòóþ ñïåöèôèêàöèè
íàÿ ïðîáëåìà; óñïåâàþò óñòàðåòü åùå äî òîãî, êàê îíè ïîëíî-
l íåïðàâèëüíàÿ îöåíêà ðèñêîâ ïðîåêòà (èìå- ñòüþ îïðåäåëåíû. Ìåòîäîëîãèÿ XP — ýòî ïî-
þòñÿ â âèäó íåïðåäâèäåííûå çàòðóäíåíèÿ â èñ- ïûòêà ñôîðìóëèðîâàòü íàáîð ïðàêòèê, êîòî-
ïîëüçóåìûõ ñðåäñòâàõ è êîìïîíåíòàõ); ðûå ìèíèìèçèðóþò ñòîèìîñòü èçìåíåíèé
l îøèáêà àíàëèòèêîâ â îöåíêå òðóäîåìêî- è ïîçâîëÿþò ïðîèçâîäèòü èõ ïî÷òè îäèíàêîâî
ñòè; ëåãêî è áåçîïàñíî êàê â íà÷àëå, òàê è â êîíöå
l íåäîïîíèìàíèå êëþ÷åâûõ òåõíè÷åñêèõ ïðîåêòà.  XP-ïðîåêòå áëàãîäàðÿ òàêèì ïðàâè-
ïðîáëåì (êàê ïðàâèëî, ñâÿçàíî ñ ñæàòûì ãðà- ëàì, êàê «Ìîäóëüíîå òåñòèðîâàíèå», «Ïàðíîå
ôèêîì ðàáîò ïî ïðîåêòó); ïðîãðàììèðîâàíèå», «Íè÷åãî çàðàíåå», «Ïðî-
l íåäîñòàòîê âðåìåíè íà èçó÷åíèå äîêó- ñòåéøèå ðåøåíèÿ» è äð. ñòîèìîñòü èçìåíåíèé
ìåíòàöèè çàêàç÷èêà ÏÎ. çíà÷èòåëüíî íèæå.
Äëÿ êëàññè÷åñêîãî ïðîåêòà èçìåíåíèÿ, Ïðîöåäóðà óïðàâëåíèÿ èçìåíåíèÿìè, êî-
âîçíèêàþùèå ïîñëå ïåðâîíà÷àëüíîãî îïðå- òîðûå âíîñèò çàêàç÷èê, â XP ïîäðîáíî îïðå-
äåëåíèÿ ñïåöèôèêàöèé, ÿâëÿþòñÿ ïîñòîÿííîé äåëåíà. Ïðè ïîëó÷åíèè òðåáîâàíèÿ íà âíåñå-
ãîëîâíîé áîëüþ ðàçðàáîò÷èêîâ. Ñòîèìîñòü íèå èçìåíåíèÿ ìåíåäæåð ïðîåêòà ïðîñèò âå-
èçìåíåíèé ðàñòåò ýêñïîíåíöèàëüíî ïî ìåðå äóùåãî ïðîãðàììèñòà è âåäóùåãî òåñòåðà ñäå-
äëèòåëüíîñòè êëàññè÷åñêîãî ïðîåêòà, íî åñòü ëàòü îöåíêó. Çàòåì îí ñîîáùàåò ñòîèìîñòü
ìåòîäîëîãèè ðàçðàáîòêè ÏÎ, äëÿ êîòîðûõ èç- èçìåíåíèÿ â òåðìèíàõ èäåàëüíûõ ÷àñîâ çàêàç-
ìåíåíèÿ òðåáîâàíèé âî âðåìÿ ïðîöåññà ïðî- ÷èêó, êîòîðûé ìîæåò:
åêòèðîâàíèÿ ñèñòåìû íå ñòîëü êðèòè÷íû. 1) îòêàçàòüñÿ îò èçìåíåíèÿ, ñî÷òÿ åãî íå-
îïðàâäàííî äîðîãîñòîÿùèì;
Ïåðñïåêòèâíûå ìåòîäîëîãèè 2) ïîïðîñèòü âêëþ÷èòü èçìåíåíèå â òåêó-
ðàçðàáîòêè ÏÎ ùèé ïëàí èòåðàöèè (îäíàêî òîëüêî ïåðâîíà-
÷àëüíàÿ ôóíêöèîíàëüíîñòü, ñîãëàñîâàííàÿ
Ðå÷ü èäåò îá Agile-ìåòîäîëîãèÿõ, â ëèòåðà- íà èãðå â ïëàíèðîâàíèå, ÿâëÿåòñÿ îáÿçàòåëü-
òóðå èõ èìåíóþò «ìåòîäîëîãèè áûñòðîé ðàç- ñòâîì, êîòîðîå ðàçðàáîò÷èêè äîëæíû âûïîë-

34
IT-ìåíåäæìåíò R Óïðàâëåíèå ïðîåêòàìè
ÏÐÈÊËÀÄÍÀß ÈÍÔÎÐÌÀÒÈÊÀ
¹ 5(23) 2009

Õ. Ð. Àëèåâ, Ñ. Î. Àíäðæååâñêèé, Ì. Á. Áîðèñîâ


íèòü ê êîíöó èòåðàöèè; êîìàíäà áóäåò ñòà- ðèçîíòàëè». Íàïðèìåð, ñíà÷àëà ðàçðàáàòûâà-
ðàòüñÿ âíåñòè âñå èçìåíåíèÿ, íî íå ãàðàíòè- þò óðîâåíü áàçû äàííûõ, ïîòîì áèçíåñ-êëàññû,
ðóåò ýòîãî); ïîòîì ãðàôè÷åñêèé èíòåðôåéñ. Èç-çà ýòîãî
3) çàìåíèòü ÷àñòü ïåðâîíà÷àëüíûõ òðåáî- ëåãêî ìîæåò âîçíèêíóòü ñèòóàöèÿ, êîãäà, íà-
âàíèé íà äàííîå èçìåíåíèå, ÷òîáû ãàðàíòèðî- ïðèìåð, ê äàòå âûïóñêà âåðñèè 100% áàçû
âàòü åãî âûïîëíåíèå â òå÷åíèå èìåííî ýòîé äàííûõ ñäåëàíî, 100% áèçíåñ-êëàññîâ íàïèñà-
èòåðàöèè (åñëè èçìåíåíèå ÿâëÿåòñÿ âûñîêî- íî, íî óñïåëè çàïðîãðàììèðîâàòü òîëüêî 50%
ïðèîðèòåòíûì); ãðàôè÷åñêîãî èíòåðôåéñà. Ñîîòâåòñòâåííî, çà-
4) ïåðåíåñòè èçìåíåíèå íà ñëåäóþùóþ êàç÷èêó ïðàêòè÷åñêè íå íà ÷òî ñìîòðåòü è íå-
èòåðàöèþ, ïåðåîïðåäåëèâ åãî â ïîëüçîâàòåëü- ÷åì ïîëüçîâàòüñÿ.  XP ôóíêöèîíàëüíîñòü äå-
ñêóþ èñòîðèþ. ëàåòñÿ ïî ïîëüçîâàòåëüñêèì èñòîðèÿì, è äëÿ
Ýòà ïðîöåäóðà ïîçâîëÿåò ÷åòêî êîíòðîëè- êàæäîé èñòîðèè âñå íåîáõîäèìûå óðîâíè
ðîâàòü îáúåì ôóíêöèîíàëüíîñòè â ïðåäåëàõ ðàçðàáàòûâàþòñÿ îäíîâðåìåííî «ïî âåðòèêà-
èòåðàöèè è íå äîïóñêàòü åãî íåïðîãíîçèðóå- ëè», à çàòåì ñðàçó æå òåñòèðóþòñÿ. Òàêèì îáðà-
ìîãî ðîñòà, ÷òî â êîíå÷íîì ñ÷åòå âûãîäíî çîì, çàêàç÷èê èìååò âîçìîæíîñòü ãîðàçäî
è êîìàíäå, è çàêàç÷èêó. Áåç ñòðîãîãî ïîäõîäà ðàíüøå ïðåäîñòàâèòü êîììåíòàðèè ðàçðàáîò-
ê óïðàâëåíèþ èçìåíåíèÿìè çàêàç÷èê ìîæåò ëåã- ÷èêàì è ïîëüçîâàòüñÿ ðàçëè÷íûìè ÷àñòÿìè
êî ïåðåãðóçèòü êîìàíäó. Ýòî, â ñâîþ î÷åðåäü, ïðèëîæåíèÿ.
ïðèâîäèò ê ñíèæåíèþ êà÷åñòâà âñåãî ïðîåêòà XP-ïðîåêò ìîæåò ñòàðòîâàòü ñ î÷åíü ïðî-
èëè äàæå åãî ïîëíîìó ïðîâàëó. ×òîáû èçáå- ñòûì íàáîðîì òðåáîâàíèé çàêàç÷èêà. Èíîãäà
æàòü âîçìîæíûõ íåäîðàçóìåíèé, ìåíåäæåðó îäíîé ñòðàíè÷êè ïåðâîíà÷àëüíûõ ïîëüçîâà-
æåëàòåëüíî ñðàçó ïðåäóïðåäèòü íåîïûòíîãî òåëüñêèõ èñòîðèé äîñòàòî÷íî, ÷òîáû íà÷àòü
â XP çàêàç÷èêà, ÷òî ëþáàÿ íîâàÿ ôóíêöèîíàëü- áîëüøîé è ñëîæíûé ïðîåêò. Çàêàç÷èêó íå îáÿ-
íîñòü, îòñóòñòâóþùàÿ â ïåðâîíà÷àëüíûõ ïîëü- çàòåëüíî ïåðåä íà÷àëîì ðàçðàáîòêè ãîòîâèòü
çîâàòåëüñêèõ èñòîðèÿõ è íåñîãëàñîâàííàÿ â ïðî- ñïåöèôèêàöèè íà âåñü ïåðèîä ïðîåêòà, äîñòà-
öåññå èãðû â ïëàíèðîâàíèå, ÿâëÿåòñÿ èçìåíå- òî÷íî çàðàíåå ïðèãîòîâèòü òðåáîâàíèÿ äëÿ êàæ-
íèåì, âíåñåííûì çàêàç÷èêîì, è òðåáóåò ñîîò- äîé êîíêðåòíîé èòåðàöèè.  öåëîì XP-ïðîåêòû
âåòñòâóþùåé îöåíêè è îáñóæäåíèÿ, äðóãèìè ïðåäëàãàþò áîëåå äðóæåñòâåííóþ è íåôîð-
ñëîâàìè, íå äåëàåòñÿ áåñïëàòíî. ìàëüíóþ îáñòàíîâêó êàê âíóòðè êîìàíäû, òàê
Ñòîèìîñòü èçìåíåíèé, âíîñèìûõ ïî õîäó è â îòíîøåíèÿõ ñ çàêàç÷èêîì. Ýòî äåëàåò ðà-
XP-ïðîåêòà, çíà÷èòåëüíî íèæå ïî ñðàâíåíèþ áîòó áîëåå ïðèÿòíîé è óìåíüøàåò áþðîêðà-
ñ êëàññè÷åñêîé ðàçðàáîòêîé. XP îáåñïå÷èâàåò òèþ. Íåîïûòíûå ïðîãðàììèñòû è òåñòåðû ìî-
ñòàáèëüíî õîðîøèå ðåçóëüòàòû, è åñëè êîìàí- ãóò áûñòðî è ýôôåêòèâíî îáó÷àòüñÿ áëàãîäàðÿ
äà è çàêàç÷èê ãðàìîòíî ïðèìåíÿþò äîñòàòî÷- ïàðíîìó ïðîãðàììèðîâàíèþ è àêöåíòó íà êîì-
íî ïðîñòûå ïðàâèëà XP, òî ñëîæíî ñäåëàòü ìóíèêàöèþ â êîìàíäå, à, êàê èçâåñòíî, ôàêòîð
ïðîåêò íåóäà÷íûì. Åñòåñòâåííî, ïîäðàçóìåâà- êîììóíèêàöèè â îöåíêå òðóäîåìêîñòè ðåàëè-
åòñÿ, ÷òî ïðîôåññèîíàëèçì êîìàíäû äîñòàòî÷- çàöèè ÏÎ èãðàåò î÷åíü ñóùåñòâåííóþ ðîëü.
íî âûñîê — XP ñèëüíî ïîìîãàåò, íî íå ìî- Scrum — îäíà èç ïåðâûõ ìåòîäîëîãèé öèê-
æåò ïîëíîñòüþ çàìåíèòü òåõíè÷åñêèõ çíàíèé ëè÷åñêîãî íàðàùèâàíèÿ ôóíêöèîíàëüíîñòè
è îïûòà ðàçðàáîò÷èêîâ.  XP äàòà îêîí÷àíèÿ è êîððåêòèðîâêè õîäà ïðîåêòà íà îñíîâå àíà-
èòåðàöèè âñåãäà æåñòêî ôèêñèðîâàíà. Â õóä- ëèçà îáðàòíîé ñâÿçè îò ïîëüçîâàòåëåé. Òåð-
øåì ñëó÷àå ê êîíöó èòåðàöèè íåêîòîðûå íèç- ìèí «Scrum» áûë âïåðâûå îçâó÷åí â ðàáîòå
êîïðèîðèòåòíûå ïîëüçîâàòåëüñêèå èñòîðèè Õèðîòàêè Òàêåó÷è è Èêóäæèðî Íîíàêà, îïóá-
ìîãóò áûòü íå çàêîí÷åíû, íî áîëüøèíñòâî èñ- ëèêîâàííîé â «Harvard Business Review», â êî-
òîðèé áóäåò ïîëíîñòüþ çàâåðøåíû, ïðîòåñòè- òîðîé àâòîðû îòìåòèëè óñïåøíîñòü ïðîåêòîâ,
ðîâàíû, è ñîîòâåòñòâóþùàÿ ôóíêöèîíàëü- èñïîëüçóþùèõ íåáîëüøèå êîìàíäû áåç æåñò-
íîñòü áóäåò äîñòóïíà äëÿ çàêàç÷èêà. êîé ñïåöèàëèçàöèè. Òàêèå êîìàíäû ÷åì-òî íà-
 êëàññè÷åñêèõ ïðîåêòàõ ÷àñòî àðõèòåêòóð- ïîìèíàþò êîíñòðóêöèþ ñõâàòêè (scrum) â ðåã-
íûå ñëîè äåëàþòñÿ ïîñëåäîâàòåëüíî, «ïî ãî- áè, êîòîðàÿ íàçíà÷àåòñÿ ïðè íàðóøåíèè ïðà-

35
IT-ìåíåäæìåíò R Óïðàâëåíèå ïðîåêòàìè
ÏÐÈÊËÀÄÍÀß ÈÍÔÎÐÌÀÒÈÊÀ
¹ 5(23) 2009
âèë èëè îñòàíîâêå èãðû. Äæåô Ñàçåðëåíä èñ- çè ñ îòñóòñòâèåì íóæíîé èíôîðìàöèè, êàê
ïîëüçîâàë ýòó ðàáîòó ïðè ñîçäàíèè ìåòîäîëîãèè ìíîãî íóæíî çàäàòü âîïðîñîâ, íà êîòîðûå
äëÿ êîðïîðàöèè Easel â 1993 ã., êîòîðóþ ïî óõîäèò äîïîëíèòåëüíîå âðåìÿ, êàê ñèëüíî
àíàëîãèè è íàçâàë Scrum, à Êåí Øâàáåð ôîð- ïðèäåòñÿ èçìåíèòü óæå íàïèñàííóþ ôóíêöèî-
ìàëèçîâàë ïðîöåññ äëÿ èñïîëüçîâàíèÿ â èí- íàëüíîñòü îò èòåðàöèè ê èòåðàöèè è, ñîîòâåò-
äóñòðèè ðàçðàáîòêè ïðîãðàììíîãî îáåñïå÷å- ñòâåííî, ýôôåêòèâíîñòü ðàçðàáîòêè â öåëîì.
íèÿ, ïðåäñòàâèâ â 1995 ã. ðàáîòó íà êîíôåðåí- Îáû÷íî âëàäåëåö ïðîäóêòà ÿâëÿåòñÿ ïðåäñòà-
öèè Object-Oriented Programming Systems, Lan- âèòåëåì èëè äîâåðåííûì ëèöîì çàêàç÷èêà.
guages & Applications. Îò Scrum-ìàñòåðà (Scrum Master) âî ìíî-
Îñíîâà Scrum — èòåðàòèâíàÿ ðàçðàáîòêà. ãîì çàâèñèò ñàìîñòîÿòåëüíîñòü, èíèöèàòèâíîñòü
Scrum îïðåäåëÿåò ïðàâèëà, ïî êîòîðûì äîë- ïðîãðàììèñòîâ, óäîâëåòâîðåííîñòü ñäåëàí-
æåí ïëàíèðîâàòüñÿ è óïðàâëÿòüñÿ ñïèñîê òðå- íîé ðàáîòîé, àòìîñôåðà â êîìàíäå è ðåçóëü-
áîâàíèé ê ïðîäóêòó äëÿ äîñòèæåíèÿ ìàêñè- òàò âñåé ðàáîòû. Ýòîò ÷åëîâåê äîëæåí áûòü
ìàëüíîé ïðèáûëüíîñòè îò ðåàëèçîâàííîé ôóíê- îäíèì èç ÷ëåíîâ êîìàíäû ðàçðàáîòêè è ó÷àñò-
öèîíàëüíîñòè; ïðàâèëà ïëàíèðîâàíèÿ èòåðàöèé âîâàòü â ïðîåêòå êàê ðàçðàáîò÷èê. Îí îòâå÷à-
äëÿ ìàêñèìàëüíîé çàèíòåðåñîâàííîñòè êîìàí- åò çà ñâîåâðåìåííîå ðåøåíèå òåêóùèõ ïðî-
Ìîäåëè îöåíêè ñòîèìîñòè èíôîðìàöèîííûõ ñèñòåì â ìåòîäîëîãèÿõ ðàçðàáîòêè ïðîãðàììíîãî îáåñïå÷åíèÿ

äû â ðåçóëüòàòå; îñíîâíûå ïðàâèëà âçàèìîäåé- áëåì, îò ðåìîíòà ñëîìàííîãî ñòóëà äî îáåñïå-


ñòâèÿ ó÷àñòíèêîâ êîìàíäû äëÿ ìàêñèìàëüíî ÷åíèÿ íåîáõîäèìîé èíôîðìàöèåé ÷ëåíîâ êîìàí-
áûñòðîé ðåàêöèè íà ñóùåñòâóþùóþ ñèòóàöèþ; äû äëÿ ïðîäîëæåíèÿ èõ ðàáîòû è çàãðóæåííîñòè,
ïðàâèëà àíàëèçà è êîððåêòèðîâêè ïðîöåññà çà ïîääåðæàíèå íóæíûõ òåõíè÷åñêèõ ïðàêòèê,
ðàçðàáîòêè äëÿ ñîâåðøåíñòâîâàíèÿ âçàèìîäåé- èñïîëüçóåìûõ íà ïðîåêòå.
ñòâèÿ âíóòðè êîìàíäû. Êàæäóþ èòåðàöèþ ìîæ- Scrum-êîìàíäà (Scrum Team) — ãðóïïà,
íî îïèñàòü òàê: ïëàíèðóåì — ôèêñèðóåì — ðåà- ñîñòîÿùàÿ èç ïÿòè-äåâÿòè ñàìîñòîÿòåëüíûõ,
ëèçóåì — àíàëèçèðóåì. Çà ñ÷åò ôèêñèðîâàíèÿ èíèöèàòèâíûõ ïðîãðàììèñòîâ. Ïåðâàÿ çàäà÷à
òðåáîâàíèé íà âðåìÿ îäíîé èòåðàöèè è èçìå- ýòîé êîìàíäû — ïîñòàâèòü ðåàëüíî äîñòèæè-
íåíèÿ äëèíû èòåðàöèè ìîæíî óïðàâëÿòü áà- ìóþ, ïðîãíîçèðóåìóþ, èíòåðåñíóþ è çíà÷è-
ëàíñîì ìåæäó ãèáêîñòüþ è ïëàíèðóåìîñòüþ ìóþ öåëü äëÿ èòåðàöèè. Âòîðàÿ çàäà÷à — ñäå-
ðàçðàáîòêè. ëàòü âñå äëÿ òîãî, ÷òîáû ýòà öåëü áûëà äîñòèã-
Ìåòîäîëîãèÿ Scrum îðèåíòèðîâàíà íà îïå- íóòà â îòâåäåííûå ñðîêè è ñ çàÿâëåííûì êà÷å-
ðàòèâíîå ïðèñïîñîáëåíèå ê èçìåíåíèÿì òðå- ñòâîì. Öåëü èòåðàöèè ñ÷èòàåòñÿ äîñòèãíóòîé
áîâàíèé, ÷òî ïîçâîëÿåò êîìàíäå áûñòðî àäàï- òîëüêî â òîì ñëó÷àå, åñëè âñå ïîñòàâëåííûå
òèðîâàòü ïðîäóêò ê íóæäàì çàêàç÷èêà. Òàêàÿ çàäà÷è ðåàëèçîâàíû, âåñü êîä íàïèñàí ïî îï-
àäàïòàöèÿ äîñòèãàåòñÿ çà ñ÷åò ïîëó÷åíèÿ îá- ðåäåëåííûì ïðîåêòîì «ñòàíäàðòàì êîäèðîâà-
ðàòíîé ñâÿçè ïî ðåçóëüòàòàì èòåðàöèè: èìåÿ íèÿ» (coding guidelines), ïðîãðàììà ïðîòåñòè-
ïîñëå êàæäîé èòåðàöèè ïðîäóêò, êîòîðûé óæå ðîâàíà ïîëíîñòüþ, à âñå íàéäåííûå äåôåêòû
ìîæíî èñïîëüçîâàòü, ïîêàçûâàòü è îáñóæäàòü, óñòðàíåíû. Ïðîãðàììèñòû ýòîé êîìàíäû äîëæ-
ëåã÷å ñîáèðàòü èíôîðìàöèþ, äåëàòü ïðàâèëü- íû óìåòü îöåíèâàòü è ïëàíèðîâàòü ñâîþ ðàáî-
íûå êîððåêòèðîâêè è èçìåíÿòü ïðèîðèòåòû òó, ðàáîòàòü â êîìàíäå, ïîñòîÿííî àíàëèçèðî-
òðåáîâàíèé. Íàïðèìåð, åñëè ïîêàçàòü êàðêàñ âàòü è óëó÷øàòü êà÷åñòâî âçàèìîäåéñòâèÿ
ñàéòà ïîòåíöèàëüíûì ïîëüçîâàòåëÿì, òî ïîÿ- è ðàáîòû.  îáÿçàííîñòè âñåõ ÷ëåíîâ Scrum-
âèòñÿ ìíîãî âîïðîñîâ, íà îñíîâàíèè êîòîðûõ êîìàíäû âõîäèò ó÷àñòèå â âûáîðå öåëè èòåðà-
ìîæíî ñêîððåêòèðîâàòü òî, ÷òî óæå íàïèñàíî öèè è îïðåäåëåíèå ðåçóëüòàòà ðàáîòû. Îíè
èëè åùå íå ðåàëèçîâàíî, ïîíÿòü, ÷òî áîëåå äîëæíû äåëàòü âñå âîçìîæíîå è íåâîçìîæíîå
âàæíî ïîëüçîâàòåëþ. äëÿ äîñòèæåíèÿ öåëè èòåðàöèè â ðàìêàõ, îï-
Âëàäåëåö ïðîäóêòà (Product Owner) — ðåäåëåííûõ ïðîåêòîì, ýôôåêòèâíî âçàèìî-
÷åëîâåê, ïîñòàâëÿþùèé òðåáîâàíèÿ ïðîãðàì- äåéñòâîâàòü ñî âñåìè ó÷àñòíèêàìè êîìàíäû,
ìèñòàì. Îò òîãî, êàê ÷åòêî íàïèñàíû òðåáîâà- ñàìîñòîÿòåëüíî îðãàíèçîâûâàòü ñâîþ ðàáîòó,
íèÿ, çàâèñèò, íàñêîëüêî ÷àñòî êîìàíäå ïðè- ïðåäîñòàâëÿòü âëàäåëüöó ðàáî÷èé ïðîäóêò
äåòñÿ ïåðåêëþ÷àòüñÿ ñ çàäà÷è íà çàäà÷ó â ñâÿ- â êîíöå êàæäîãî öèêëà.

36
IT-ìåíåäæìåíò R Óïðàâëåíèå ïðîåêòàìè
ÏÐÈÊËÀÄÍÀß ÈÍÔÎÐÌÀÒÈÊÀ
¹ 5(23) 2009

Õ. Ð. Àëèåâ, Ñ. Î. Àíäðæååâñêèé, Ì. Á. Áîðèñîâ


 íà÷àëå ïðîåêòà âëàäåëåö ïðîäóêòà ãîòî- Ãðàôèê ñïðèíòà (Burndown Chart) ïîêà-
âèò æóðíàë ïðîäóêòà — ñïèñîê òðåáîâàíèé, çûâàåò åæåäíåâíîå èçìåíåíèå îáùåãî îáúå-
îòñîðòèðîâàííûõ ïî çíà÷èìîñòè, à Scrum-êî- ìà ðàáîò, îñòàâøåãîñÿ äî îêîí÷àíèÿ èòåðà-
ìàíäà äîïîëíÿåò ýòîò æóðíàë îöåíêàìè ñòîè- öèè. Ýòîò ãðàôèê ïîçâîëÿåò êîìàíäå ðàçðà-
ìîñòè ðåàëèçàöèè òðåáîâàíèé. Ñïèñîê äîë- áîò÷èêîâ äåëàòü àíàëèç òåêóùåé ñèòóàöèè
æåí âêëþ÷àòü ôóíêöèîíàëüíûå è òåõíè÷åñêèå è ñâîåâðåìåííî ðåàãèðîâàòü íà îòêëîíåíèÿ.
òðåáîâàíèÿ, íåîáõîäèìûå äëÿ ðåàëèçàöèè Ãðàôèê ñïðèíòà òàêæå ïîçâîëÿåò âëàäåëüöó
ïðîäóêòà. Ñàìûå ïðèîðèòåòíûå èç íèõ äîëæ- ïðîäóêòà íàáëþäàòü çà õîäîì èòåðàöèè — åñ-
íû áûòü äîñòàòî÷íî äåòàëüíî ïðîïèñàíû, ÷òî- ëè îáùèé îáúåì ðàáîò íå óìåíüøàåòñÿ êàæ-
áû èõ ìîæíî áûëî îöåíèòü è ïðîòåñòèðîâàòü. äûé äåíü, çíà÷èò, ÷òî-òî èäåò íå òàê. Âî âðåìÿ
Î ñâîåâðåìåííîé äåòàëèçàöèè òðåáîâàíèé ñåññèè ïëàíèðîâàíèÿ êîìàíäà íàõîäèò è îöå-
äîëæåí çàáîòèòüñÿ âëàäåëåö ïðîäóêòà è ïðå- íèâàåò çàäà÷è, êîòîðûå íàäî âûïîëíèòü äëÿ
äîñòàâëÿòü íåîáõîäèìûé îáúåì â íóæíîå óñïåøíîãî çàâåðøåíèÿ èòåðàöèè. Ñóììà îöå-
âðåìÿ. Â ýòîì ñìûñëå ïðîãðàììèñòû ÿâëÿþòñÿ íîê âñåõ çàäà÷ â æóðíàëå ñïðèíòà ÿâëÿåòñÿ
çàêàç÷èêàìè òðåáîâàíèé äëÿ âëàäåëüöà ïðî- îáùèì îáúåìîì ðàáîòû, êîòîðûé íàäî âûïîë-
äóêòà. È îòíîøåíèå âëàäåëüöà ïðîäóêòà äîëæ- íèòü çà èòåðàöèþ. Ïîñëå çàâåðøåíèÿ êàæäîé
íî áûòü ñîîòâåòñòâóþùåå — êàêîâû òðåáîâà- çàäà÷è Scrum-ìàñòåð ïåðåñ÷èòûâàåò îáúåì îñ-
íèÿ, òàêîâà è èõ ðåàëèçàöèÿ.  äàëüíåéøåì òàâøåéñÿ ðàáîòû è îòìå÷àåò ýòî íà ãðàôèêå
îñòàëüíûå òðåáîâàíèÿ äîëæíû ïîñòåïåííî ñïðèíòà. Òîëüêî â òîì ñëó÷àå, åñëè îáúåì ðà-
óòî÷íÿòüñÿ è äåòàëèçèðîâàòüñÿ äî òàêîãî æå áîò ïî îêîí÷àíèè èòåðàöèè çàêîí÷èëñÿ (â æóð-
óðîâíÿ. Ãëàâíîå, ÷òîáû ó êîìàíäû âñåãäà áûë íàëå ñïðèíòà íå îñòàëîñü íåçàâåðøåííûõ çà-
äîñòàòî÷íûé îáúåì òðåáîâàíèé, ïîäãîòîâëåí- äà÷), èòåðàöèÿ ñ÷èòàåòñÿ óñïåøíîé. Ãðàôèê
íûõ ê ðåàëèçàöèè. ñïðèíòà èñïîëüçóåòñÿ êàê âñïîìîãàòåëüíûé
Ïîñëå òîãî, êàê êîìàíäà âî âðåìÿ ñåññèè èíñòðóìåíò, ïîçâîëÿþùèé êîððåêòèðîâàòü ðà-
ïëàíèðîâàíèÿ âûáðàëà è îáÿçàëàñü ðåàëèçî- áîòó äëÿ çàâåðøåíèÿ èòåðàöèè âîâðåìÿ, ñ ðà-
âàòü íàáîð òðåáîâàíèé èç æóðíàëà ïðîäóêòà, áîòàþùèì êîäîì è òðåáóåìûì êà÷åñòâîì.
ýòè òðåáîâàíèÿ ðàçáèâàþòñÿ íà áîëåå ìåëêèå Âðåìÿ ìåæäó èòåðàöèÿìè — ýòî âðåìÿ
çàäà÷è, ñîñòàâëÿþùèå äåòàëèçèðîâàííûé ñïè- ïðèíÿòèÿ îñíîâîïîëàãàþùèõ ðåøåíèé, âëèÿþ-
ñîê òðåáîâàíèé — æóðíàë ñïðèíòà. Ðàçáèâêó ùèõ íà õîä âñåãî ïðîåêòà. Âî âðåìÿ èòåðàöèè
íóæíî ñäåëàòü òàêèì îáðàçîì, ÷òîáû âûïîë- íåëüçÿ ïðîèçâîäèòü íèêàêèõ èçìåíåíèé èç-
íåíèå îäíîé çàäà÷è çàíèìàëî íå áîëüøå âíå. Ïîñëå òîãî êàê êîìàíäà äàëà îáÿçàòåëüñò-
äâóõ äíåé (ñ÷èòàåòñÿ, ÷òî ìåíåå äåòàëüíàÿ âî ðåàëèçîâàòü æóðíàë ñïðèíòà, îí ôèêñèðó-
ðàçáèâêà, íàïðèìåð, ïîëäíÿ, ïðèâîäèò ê áî- åòñÿ, è èçìåíåíèÿ â íåì ìîãóò áûòü ñäåëàíû
ëåå ãðóáîé îöåíêå, ÷åì òà, ÷òî ïðèåìëåìà òîëüêî ïî ñëåäóþùèì ïðè÷èíàì:
â áîëüøèíñòâå ïðîåêòîâ, èñïîëüçóþùèõ ìå- l Scrum-êîìàíäà â òå÷åíèå èòåðàöèè ïî-

òîäîëîãèþ Scrum). Ðàçáèâêà ïîìîæåò òàê ëó÷èëà ëó÷øåå ïðåäñòàâëåíèå î òðåáîâàíèÿõ


ñïëàíèðîâàòü èòåðàöèþ, ÷òîáû â êîíöå íå îñ- è íóæäàåòñÿ â äîïîëíèòåëüíûõ çàäà÷àõ äëÿ óñ-
òàëîñü íè îäíîé íåâûïîëíåííîé çàäà÷è è, ïåøíîãî çàâåðøåíèÿ èòåðàöèè;
ñîîòâåòñòâåííî, äîñòè÷ü åå öåëè. Ïîñëå çà- l íàéäåíû äåôåêòû, êîòîðûå íóæíî îáÿçà-

âåðøåíèÿ äåòàëèçàöèè îöåíêà æóðíàëà òåëüíî èñïðàâèòü äëÿ óñïåøíîãî çàâåðøåíèÿ


ñïðèíòà ñðàâíèâàåòñÿ ñ ïåðâè÷íîé îöåíêîé èòåðàöèè;
â æóðíàëå ïðîäóêòà. Åñëè ñóùåñòâóåò çíà÷è- l Scrum-ìàñòåð è Scrum-êîìàíäà ðåøàþò,

òåëüíîå ðàñõîæäåíèå, êîìàíäà äîãîâàðèâà- ÷òî íåáîëüøèå èçìåíåíèÿ, íå âëèÿþùèå íà


åòñÿ ñ âëàäåëüöåì ïðîäóêòà îá îáúåìå ðàáîò, îáùèé îáúåì ðàáîò, ìîãóò áûòü ðåàëèçîâàíû
êîòîðûé äîëæåí áûòü âûïîëíåí â òå÷åíèå â ñâÿçè ñ âîçíèêøåé ó âëàäåëüöà ïðîäóêòà íå-
èòåðàöèè, è î òîì, êàêîé îáúåì áóäåò ïåðåíå- îáõîäèìîñòüþ.
ñåí íà ñëåäóþùóþ. Ìåíåå âàæíûå è ìàëî Èñõîäÿ èç òîãî, ÷òî æóðíàë ñïðèíòà íå ìî-
âëèÿþùèå íà öåëü èòåðàöèè çàäà÷è âûíîñÿò- æåò áûòü èçìåíåí èçâíå âî âðåìÿ èòåðàöèè,
ñÿ èç æóðíàëà ñïðèíòà. íóæíî âûáèðàòü åå äëèíó, îñíîâûâàÿñü íà ñòà-

37
IT-ìåíåäæìåíò R Óïðàâëåíèå ïðîåêòàìè
ÏÐÈÊËÀÄÍÀß ÈÍÔÎÐÌÀÒÈÊÀ
¹ 5(23) 2009
áèëüíîñòè òðåáîâàíèé. Åñëè òðåáîâàíèÿ ñòà- ñòâà, äëÿ êîòîðîé õàðàêòåðåí ýêñïîíåíöèàëü-
áèëüíû, ìåíÿþòñÿ èëè äîïîëíÿþòñÿ ðåäêî, íûé ðîñò ñòîèìîñòè èçìåíåíèé ïî ìåðå âû-
òî ìîæíî âûáðàòü øåñòèíåäåëüíûé öèêë. ïîëíåíèÿ ïðîåêòà.
 ýòîì ñëó÷àå ýêîíîìèòñÿ âðåìÿ íà ïåðåêëþ-
÷åíèå êîìàíäû ñ àêòèâíîé ðàçðàáîòêè íà ïëà- Êëàññè÷åñêèå ìåòîäèêè îöåíêè
íèðîâàíèå è äåìîíñòðàöèîííûå ìèòèíãè. Åñ- ñòîèìîñòè ðàçðàáîòîê
ëè òðåáîâàíèÿ ÷àñòî ìåíÿþòñÿ è äîïîëíÿþò-
ñÿ, íóæíî îòòàëêèâàòüñÿ îò äâóõíåäåëüíîãî Ïðîàíàëèçèðóåì, êàê îñóùåñòâëÿåòñÿ îöåí-
öèêëà.  ëþáîì ñëó÷àå äëèíà èòåðàöèè — ýòî êà òðóäîåìêîñòè ðàçðàáîòêè èíôîðìàöèîí-
âåëè÷èíà ýêñïåðèìåíòàëüíàÿ. íûõ ñèñòåì â îñíîâíûõ ìîäåëÿõ: ìîäåëè ôóíê-
Îñíîâíîé óïîð ìåòîäîëîãèÿ Scrum äåëàåò öèîíàëüíûõ òî÷åê (Functional Points) è ìîäåëè
íà óïðàâëåíèå ïðîåêòàìè è íå çàäàåò íèêàêèõ COCOMO II. Ýòè ìîäåëè èñïîëüçóþò âñå âåäó-
òåõíè÷åñêèõ ïðàêòèê, ÷òî äàåò âîçìîæíîñòü ùèå ôèðìû ïî ðàçðàáîòêå ÏÎ â ìèðå äëÿ
èñïîëüçîâàòü âåñü òåõíè÷åñêèé áàãàæ, íàêîï- ïðåäâàðèòåëüíûõ îöåíîê êàê òðóäîçàòðàò, òàê
ëåííûé êîìïàíèåé. Ïðè âíåäðåíèè Scrum ÷à- è áþäæåòà ïðîåêòà. Îòìåòèì, ÷òî çàêàç÷èêè
ùå âñåãî âîçíèêàþò äâå ïðîáëåìû. Ïåðâàÿ — êðóïíûõ ÈÑ òàêæå èñïîëüçóþò ìîäåëè îöåíè-
Ìîäåëè îöåíêè ñòîèìîñòè èíôîðìàöèîííûõ ñèñòåì â ìåòîäîëîãèÿõ ðàçðàáîòêè ïðîãðàììíîãî îáåñïå÷åíèÿ

äîáèòüñÿ àêòèâíîãî ó÷àñòèÿ îò êàæäîãî ðàçðà- âàíèÿ ñ òåì ëèøü îòëè÷èåì, ÷òî â ìîäåëÿõ
áîò÷èêà è ñëàæåííîé êîëëåêòèâíîé ðàáîòû îöåíèâàíèÿ íå ó÷èòûâàþòñÿ êîíêðåòíûå óñëî-
â êîìàíäå. Ïîõîæóþ çàäà÷ó ðåøàåò òðåíåð âèÿ ðàçðàáîòêè: çàêàç÷èêó èíòåðåñåí ðåçóëü-
ñïîðòèâíîé êîìàíäû. Âòîðàÿ — âîâëå÷ü ïî- òàò è ñòîèìîñòü, â òî âðåìÿ êàê äëÿ èñïîëíèòå-
ñòàâùèêà òðåáîâàíèé â àêòèâíîå ó÷àñòèå ëÿ âàæíû ñîîòâåòñòâåííî óñëîâèÿ è â ìåíü-
â ïðîåêòå, çàèíòåðåñîâàòü åãî äèíàìèêîé ðàç- øåé ñòåïåíè ñòîèìîñòü.
âèòèÿ ïðîäóêòà, äàòü âîçìîæíîñòü áûòü àêòèâ- Â êîíöå 1970-õ ãã. Áàððè Áîýìîì (Barry
íûì áîëåëüùèêîì è ñïîíñîðîì êîìàíäû. Íå- Boehm) áûëà ïðåäëîæåíà ìîäåëü îöåíèâàíèÿ
ñìîòðÿ íà ýòî, èñïîëüçîâàíèå ìåòîäîëîãèè îáúåìîâ ðàáîò ïðè ðàçðàáîòêå èíôîðìàöèîí-
Scrum â ïðîåêòå MediaFACEonline3 ïîçâîëèëî íûõ ñèñòåì. Ýòà ìîäåëü ïîëó÷èëà íàçâàíèå
çà îäèííàäöàòü ìåñÿöåâ ñ âûñîêèì êà÷åñòâîì «êîíñòðóêòèâíàÿ ìîäåëü ñòîèìîñòè» (COnstruc-
è â ðàìêàõ áþäæåòà ðåàëèçîâàòü áîëüøîé tive COst MOdel — COCOMO). Íà ñåãîäíÿøíèé
îáúåì ôóíêöèîíàëüíîñòè, ñïåöèôèêàöèè íà äåíü äàííàÿ ìîäåëü îöåíêè òðóäîåìêîñòè
êîòîðóþ îòñóòñòâîâàëè íà ìîìåíò íà÷àëà ïðî- ðàçðàáîòêè ïðîãðàììíîãî îáåñïå÷åíèÿ ÿâëÿ-
åêòà. Ñîãëàñíî ñòàòèñòèêå èñïîëüçîâàíèÿ ñàé- åòñÿ íàèáîëåå èçâåñòíîé ñðåäè ìíîæåñòâà ïî-
òà MediaFACEonline, íàêîïëåííîé çà íåñêîëü- äîáíûõ. Îíà îñíîâàíà íà àíàëèçå ðÿäà ïðîåê-
êî ìåñÿöåâ ðàáîòû, ïðàêòè÷åñêè âñå ðåàëèçî- òîâ, ðåàëèçîâàííûõ ïî çàêàçó Ìèíèñòåðñòâà
âàííûå ôóíêöèè àêòèâíî èñïîëüçóþòñÿ ïîñå- îáîðîíû ÑØÀ.  îáùèõ ÷åðòàõ äàííàÿ ìîäåëü,
òèòåëÿìè, ÷òî â î÷åðåäíîé ðàç ïîäòâåðæäàåò ñ îäíîé ñòîðîíû, îïðåäåëÿåò ñîîòâåòñòâèå
ýôôåêòèâíîñòü èñïîëüçîâàíèÿ ìåòîäîëîãèè ìåæäó ðàçìåðîì ñèñòåìû â òûñÿ÷àõ óñëîâíûõ
Scrum â îòíîøåíèè îáåñïå÷åíèÿ ìàêñèìàëü- ñòðîê êîäà è «êëàññîì» ïðîåêòà, à ñ äðóãîé —
íîé áèçíåñ-öåííîñòè ïðîèçâîäèìîãî ïðîäóê- òðóäîåìêîñòü ðàçðàáîòêè ñèñòåìû.
òà. Áëàãîäàðÿ Scrum áûëà äîñòèãíóòà âûñîêàÿ Ìîäåëü COCOMO óñëîâíî ðàçäåëÿåò ïðî-
ñîïðîâîæäàåìîñòü êîäà (âîçìîæíîñòü âíåñå- åêòû òîëüêî íà òðè êëàññà: îãðàíè÷åííûå, ïî-
íèÿ èçìåíåíèé ñ ìèíèìàëüíûìè òðóäîçàòðàòà- ëóèíòåãðèðîâàííûå, «âñòðîåííûå ñèñòåìû».
ìè) — ñòîèìîñòü èçìåíåíèé, âíîñèìûõ â ïðî- Îãðàíè÷åííûå ïðîåêòû — îòíîñèòåëüíî
äóêò, ïðàêòè÷åñêè ýêâèâàëåíòíà ñòîèìîñòè íåáîëüøèå ðàçðàáîòêè, âûïîëíÿåìûå êîìàí-
ðàçðàáîòêè àíàëîãè÷íûõ ôóíêöèé ïðîäóêòà äàìè, çíàêîìûìè ñ ïðèêëàäíîé îáëàñòüþ. Ýòè
â íà÷àëå ïðîåêòà, ÷òî ðåäêî äîñòèãàåòñÿ â òàê ïðîåêòû îòëè÷àþòñÿ îòíîñèòåëüíî ìåíåå æåñò-
íàçûâàåìîé «âîäîïàäíîé» ìîäåëè ïðîèçâîä- êèìè òðåáîâàíèÿìè ê ðàçðàáàòûâàåìîìó ÏÎ.

3 Êîììåð÷åñêèé ïðîåêò äëÿ êîìïàíèè Neato, ñèñòåìà äëÿ ñîçäàíèå îáðàçîâ íà DVD,CD-íîñèòåëÿõ. Ññûëêà íà ïðîåêò:

http://www.neato.com/product/MediaFACEonline-Plus-Edition.

38
IT-ìåíåäæìåíò R Óïðàâëåíèå ïðîåêòàìè
ÏÐÈÊËÀÄÍÀß ÈÍÔÎÐÌÀÒÈÊÀ
¹ 5(23) 2009

Õ. Ð. Àëèåâ, Ñ. Î. Àíäðæååâñêèé, Ì. Á. Áîðèñîâ


Ïîëóèíòåãðèðîâàííûå ïðîåêòû õàðàêòåðè- Àëüáðåõò (Alan Albrecht). Ýòî îäíà èç ïåðâûõ
çóþòñÿ ñðåäíèì ðàçìåðîì è ñëîæíîñòüþ è âû- ïîïûòîê ïðîâåñòè îöåíêó ÏÎ áåç ìåòðèê ðàç-
ïîëíÿþòñÿ ãðóïïàìè ðàçðàáîò÷èêîâ ñ ðàçëè÷- ìåðà ñèñòåìû, ò. å. êîëè÷åñòâà èñõîäíîãî êîäà
íûì îïûòîì. Ïðè ýòîì òðåáîâàíèÿ ê ÏÎ ÿâëÿ- ÏÎ, èäåÿ ðàçðàáîòêè ìåõàíèçìà è àëãîðèòìà
þòñÿ áîëåå æåñòêèìè. ïðåäñêàçàíèé óñèëèé, íåïîñðåäñòâåííî ñî-
Ïðîåêòû «âñòðîåííûõ ñèñòåì» âûïîëíÿþò- ïðÿæåííûõ ñ ðàçðàáîòêîé ïðîãðàììíûõ ñèñ-
ñÿ ïðè çíà÷èòåëüíûõ àïïàðàòíûõ, ïðîãðàìì- òåì.
íûõ è îðãàíèçàöèîííûõ îãðàíè÷åíèÿõ; èìåþò- Ðåçóëüòàòû ðàçðàáîòêè áûëè âïåðâûå îïóá-
ñÿ æåñòêèå îãðàíè÷åíèÿ ïî ñïåöèôèêàöèè. ëèêîâàíû â 1979 ã. Àëüáðåõò ðàáîòàë íàä ìî-
 îñíîâå COCOMO âû÷èñëåíèå ñòîèìîñòè äåðíèçàöèåé è óñîâåðøåíñòâîâàíèåì ñâîåãî
ðàçðàáîòêè ïðîãðàììíîãî îáåñïå÷åíèÿ â çà- ìåòîäà, è âïîñëåäñòâèè áûëè îïóáëèêîâà-
âèñèìîñòè îò îöåíîê ðàçìåðà êîäà ïðîãðàì- íû íåñêîëüêî ðåâèçèé. À â ñåðåäèíå 1980-õ ãã.
ìû è êîìïëåêñà «èçäåðæåê», êîòîðûå âêëþ÷à- áûëà ñôîðìèðîâàíà Ìåæäóíàðîäíàÿ Àññî-
þò ñóáúåêòèâíóþ îöåíêó òîâàðà, îáîðóäîâà- öèàöèÿ Ïîëüçîâàòåëåé Ôóíêöèîíàëüíûõ Òî-
íèÿ, ïåðñîíàëà è ïðîåêòíûõ õàðàêòåðèñòèê. ÷åê (International Function Point User Group —
Åñòü ðàçëè÷íûå âàðèàíòû ìîäåëè COCOMO, êî- IFPUG).
òîðûå âêëþ÷àþò âñå õàðàêòåðèñòèêè, ñ îöåí-  êà÷åñòâå íàöèîíàëüíîãî ñòàíäàðòà Âåëè-
êîé ñòîèìîñòè óïðàâëÿþùèõ âîçäåéñòâèé íà êîáðèòàíèè ïðèíÿò ìåòîä ôóíêöèîíàëüíûõ
êàæäûé øàã (àíàëèç, ïðîåêòèðîâàíèå è ò. ä.) òî÷åê Mark II FPA. Åãî àâòîðîì ÿâëÿåòñÿ ×àðëüç
â ïðîöåññå ðàçðàáîòêè ïðîãðàììíîãî îáåñïå- Ñàéìîí (Charles Symon). Ýòîò ìåòîä ïîõîæ
÷åíèÿ. íà ïðåäûäóùèé, íî îí áîëåå ëîãè÷åí è èñ-
Ìîäåëü ââîäèò 15 ïîïðàâî÷íûõ ôàêòîðîâ, ïîëüçóåò ñîâðåìåííóþ òåðìèíîëîãèþ.  îòëè-
ïðèíàäëåæàùèõ ê îäíîé èç ÷åòûðåõ êàòåãî- ÷èå îò FPA IFPUG çäåñü ïðèìåíÿåòñÿ åäèíîå
ðèé, êîòîðûå â ñâîþ î÷åðåäü ïîëó÷àþò îöåí- ïîíÿòèå òðàíçàêöèè, èìåþùåé âõîä, îáðàáîò-
êó ïî øåñòèáàëëüíîé øêàëå: êó è âûõîä.
l àòðèáóòû ïðîäóêòà, òàêèå êàê åãî ñëîæ- Òàêæå íåîáõîäèìî óêàçàòü â öåëîì àíàëî-
íîñòü è òðåáîâàíèÿ ê åãî íàäåæíîñòè, ðàçìåð ãè÷íûå, íî áîëåå ñïåöèàëèçèðîâàííûå ìå-
áàçû äàííûõ, ñëîæíîñòü àðõèòåêòóðû ïðèëî- òîäû:
æåíèÿ; l Feature Points, ðàçðàáîòàííûé Êýéïåð-
l àòðèáóòû ñèñòåìû, òàêèå êàê îãðàíè÷å- ñîì Äæîíñîì (Capers Jones);
íèÿ íà îïåðàòèâíóþ ïàìÿòü è âðåìÿ âûïîëíå- l 3D Points, ðàçðàáîòàííûé â êîìïàíèè

íèÿ, âðåìÿ êîìïèëÿöèè (ñáîðêà ïðèëîæåíèÿ), «Áîèíã» (Boeing).


íàäåæíîñòü èñïîëüçóåìûõ âèðòóàëüíûõ ìà- Ñ òå÷åíèåì âðåìåíè è ðîñòîì òðåáîâàíèé
øèí; ê ñèñòåìàì ìîäåëü ÑÎÑÎÌÎ îêàçàëàñü óñòà-
l àòðèáóòû êîìàíäû ðàçðàáîò÷èêîâ, òà- ðåâøåé â çíà÷èòåëüíîé ñâîåé ÷àñòè. Íåïî-
êèå êàê çíàíèÿ ïðèêëàäíîé îáëàñòè, àíàëèòè- ñðåäñòâåííî ïî ýòîé è ðÿäó äðóãèõ íåìàëî-
÷åñêèå ñïîñîáíîñòè, îïûò ðàçðàáîòêè, îïûò âàæíûõ ïðè÷èí áûëà ðàçðàáîòàíà ìîäåëü
â äàííîì ÿçûêå ïðîãðàììèðîâàíèÿ; ÑÎÑÎÌÎ II (ðåçóëüòàòû ñîîòâåòñòâóþùèõ ðàç-
l àòðèáóòû ïðîåêòà, òàêèå êàê èñïîëü- ðàáîòîê áûëè îáíàðîäîâàíû â 1999 ã.) Îíà óñî-
çóåìûå ñðåäñòâà ðàçðàáîòêè, ïðèìåíåíèå ìå- âåðøåíñòâóåò îðèãèíàëüíóþ ìîäåëü ïî ñëå-
òîäîâ ðàçðàáîòêè ïðîãðàììíîãî îáåñïå÷å- äóþùèì ïóíêòàì:
íèÿ, ñèñòåìû êîíòðîëÿ ðàçðàáîòêè ïðèëîæå- l èñïîëüçîâàíèå âõîäíûõ äàííûõ, äîñòóï-

íèÿ. íûõ íà ðàííèõ ýòàïàõ æèçíåííîãî öèêëà ñèñ-


Ó ìîäåëè åñòü ðÿä íåäîñòàòêîâ. Íàïðèìåð, òåìû äëÿ îöåíêè åå ñëîæíîñòè (â ÷àñòíîñòè,
íåäîñòàòêîì ÿâëÿåòñÿ òî, ÷òî îíà îñíîâàíà ôóíêöèîíàëüíûõ òî÷åê);
íà òûñÿ÷àõ óñëîâíûõ ñòðîê êîäà, ò. å. íà ðàçìå- l ïîäõîäû, îñíîâàííûå íà ïîâòîðíîì èñ-

ðå ñàìîãî êîäà ïðîãðàììíîãî êîìïëåêñà.  ñå- ïîëüçîâàíèè, âêëþ÷àÿ èíòåãðàöèþ êîììåð÷å-


ðåäèíå 1970-õ ãã. áûë ðàçðàáîòàí ìåòîä ôóíê- ñêèõ ïðîäóêòîâ, ðåèíæèíèðèíã, ãåíåðàöèþ ïðè-
öèîíàëüíûõ òî÷åê. Åãî àâòîðîì ÿâëÿåòñÿ Àëàí ëîæåíèé;

39
IT-ìåíåäæìåíò R Óïðàâëåíèå ïðîåêòàìè
ÏÐÈÊËÀÄÍÀß ÈÍÔÎÐÌÀÒÈÊÀ
¹ 5(23) 2009
l îáúåêòíî-îðèåíòèðîâàííûå ïîäõîäû, ïîä- ÷èíîé çàòðàò íà óâåëè÷åíèå ÷èñëà ôóíêöèî-
äåðæèâàåìûå ðàñïðåäåëåííûì ÏÎ ïðîìåæó- íàëüíûõ òî÷åê íà åäèíèöó.
òî÷íîãî ñëîÿ; Ìàðãèíàëüíûå èçäåðæêè óâåëè÷èâàþòñÿ â ñâÿçè
l íîâûå — öèêëè÷åñêèå è îáîáùåííûå — ñ òåì, ÷òî ïî ìåðå óâåëè÷åíèÿ ðàçìåðà ïðîåêòà:
ìîäåëè ïðîöåññîâ ðàçðàáîòêè [1]; 1) óâåëè÷èâàåòñÿ ñëîæíîñòü;
l âëèÿíèå çðåëîñòè ïðîöåññîâ ðàçðàáîòêè. 2) ðàñòåò êîëè÷åñòâî çàäàíèé, òðåáóþùèõ
çàâåðøåíèÿ;
Ìåòîäîëîãèÿ ôóíêöèîíàëüíûõ òî÷åê 3) áîëüøèé ðàçìåð êîìàíäû ïðîãðàììè-
â îöåíêå ðàçðàáîòêè ïðîãðàììíîãî ñòîâ çàòðóäíÿåò óïðàâëåíèå.
îáåñïå÷åíèÿ Ôóíêöèîíàëüíûå òî÷êè — ýòî åäèíèöû èç-
ìåðåíèÿ ïðîåêòà. Îíè îñòàþòñÿ ïîñòîÿííûìè
Çàäà÷à ìåòîäà — ðàçáèòü ñèñòåìó íà ìåë- â íåçàâèñèìîñòè îò ïðîãðàììèñòîâ èëè ÿçûêà
êèå ÷àñòè. Ýòî ïîçâîëèò èõ ëó÷øå ïîíÿòü è ðåàëèçàöèè ïðîåêòà.
ïðîàíàëèçèðîâàòü, ÷òî îáåñïå÷èò áîëåå ñòðóê- Îöåíêà ïî ôóíêöèîíàëüíûì òî÷êàì îïðå-
òóðèðîâàííûé ïîäõîä ê ðåøåíèþ ïðîáëåìû. äåëÿåòñÿ ñóììèðîâàíèåì ïî âñåì èíôîðìàöè-
Ôóíêöèîíàëüíûå òî÷êè — ýòî òî æå, ÷òî ÷àñû îííûì îáúåêòàì è ýëåìåíòàðíûì îïåðàöèÿì,
Ìîäåëè îöåíêè ñòîèìîñòè èíôîðìàöèîííûõ ñèñòåì â ìåòîäîëîãèÿõ ðàçðàáîòêè ïðîãðàììíîãî îáåñïå÷åíèÿ

â êà÷åñòâå èçìåðåíèÿ âðåìåíè èëè êèëîìåò- îòíîñèòåëüíàÿ ïîãðåøíîñòü ëåæèò â ïðåäåëàõ


ðû â êà÷åñòâå èçìåðåíèÿ ðàññòîÿíèÿ. Ýòî ïîä- 35% (0,35). Äëÿ âûðàâíèâàíèÿ ðàññ÷èòàííûõ
õîä ê èçìåðåíèþ. îáúåìîâ ôóíêöèîíàëüíûõ òî÷åê íåîáõîäèì
Ïðîãðàììíîå ïðèëîæåíèå â ñóùíîñòè îï- êîýôôèöèåíò ïîäñòðîéêè.
ðåäåëÿåòñÿ íàáîðîì ýëåìåíòàðíûõ ïðîöåñ- Óðàâíåíèå êîýôôèöèåíòà ïîäñòðîéêè5:
ñîâ. Ñóùåñòâóåò äâà îñíîâíûõ òèïà ýëåìåí-
é 14 ù
òàðíûõ ïðîöåññîâ — äàííûå â äâèæåíèè êå C i ú
è äàííûå â ïîêîå. Äàííûå â äâèæåíèè îïèñû- VAF = 0,65 + êêi =1 úú ,
âàþò ïîòîêè äàííûõ èç ïðèëîæåíèÿ âîâíå ë 100 û
è èçâíå â ïðèëîæåíèå. Íà êîíöåïòóàëüíîì ãäå Ñi — âëèÿíèå êàæäîé õàðàêòåðèñòèêè ñèñ-
óðîâíå àíàëèç ôóíêöèîíàëüíûõ òî÷åê ïîìîãà- òåìû.
åò îïðåäåëèòü äâà àáñòðàêòíûõ óðîâíÿ äàí-
íûõ — â ïîêîå è â äâèæåíèè. Âñåãî ñóùåñòâóåò 14 õàðàêòåðèñòèê:
Ôîðìóëà, îïðåäåëÿþùàÿ ïðîäóêòèâíîñòü 1) ñâÿçè äàííûõ — êàê ìíîãî ñâÿçåé èñïîëü-
ïðîãðàììíîãî îáåñïå÷åíèÿ: çóåòñÿ äëÿ ïåðåäà÷è äàííûõ âíóòðè ñèñòåìû;
2) ðàñïðåäåëåííàÿ îáðàáîòêà äàííûõ —
Êîëè÷åñòâî
êàê îáðàáàòûâàþòñÿ ðàñïðåäåëåííûå äàííûå;
ôóíêöèîíàëüíûõ
3) òðåáîâàíèÿ ïî ïðîèçâîäèòåëüíîñòè;
òî÷åê
Ïðîäóêòèâíîñòü = .4 4) òðåáîâàíèÿ ïî àïïàðàòíîé ÷àñòè;
Êîëè÷åñòâî èíïóòîâ 5) êàê ÷àñòî âûïîëíÿþòñÿ òðàíçàêöèè (åæå-
(çà ïåðèîä âðåìåíè, äíåâíî, åæåíåäåëüíî...);
ñ ó÷åòîì êà÷åñòâà 4 ) 6) êàêîé ïðîöåíò èíôîðìàöèè ââîäèòñÿ
Äàííàÿ ìåòîäèêà ïîçâîëÿåò ðàññ÷èòûâàòü îíëàéí;
òàêîé ýêîíîìè÷åñêèé ïàðàìåòð, êàê ìàðãè- 7) ýôôåêòèâíîñòü äëÿ êîíå÷íîãî ïîëüçî-
íàëüíûå èçäåðæêè. Îíè îïðåäåëÿþòñÿ âåëè- âàòåëÿ;

4 Êà÷åñòâî — ýòî ñîâîêóïíîñòü ñâîéñòâ ïðîãðàììíîé ñèñòåìû, îáåñïå÷èâàþùèõ åå ñïîñîáíîñòü óäîâëåòâîðÿòü óñ-

òàíîâëåííûå èëè ïðåäïîëàãàåìûå ïîòðåáíîñòè â ñîîòâåòñòâèè ñ íàçíà÷åíèåì. Êîíòðîëåì è îáåñïå÷åíèåì ãàðàíòèè êà-
÷åñòâà çàíèìàåòñÿ îòäåë SQA (Software Quality Assurance), êîòîðûé îïðåäåëÿåò ïàðàìåòðû ñîîòâåòñòâèÿ òåõíè÷åñêîìó çà-
äàíèþ è âåäåò ðàñ÷åò êîëè÷åñòâà äåôåêòîâ â ñèñòåìå äëÿ äàëüíåéøåãî ðåãóëèðîâàíèÿ óðîâíÿ êà÷åñòâà.
5 Êîýôôèöèåíò ïîëó÷åí ïóòåì ñòàòè÷åñêîãî àíàëèçà ôàêòè÷åñêèõ äàííûõ ïî èíôîðìàöèîííûì ïðîåêòàì. Ìåæäóíà-

ðîäíàÿ Àññîöèàöèÿ Ïîëüçîâàòåëåé Ôóíêöèîíàëüíûõ Òî÷åê (International Function Point User Group — IFPUG). URL:
http://www.ifpug.com.

40
IT-ìåíåäæìåíò R Óïðàâëåíèå ïðîåêòàìè
ÏÐÈÊËÀÄÍÀß ÈÍÔÎÐÌÀÒÈÊÀ
¹ 5(23) 2009

Õ. Ð. Àëèåâ, Ñ. Î. Àíäðæååâñêèé, Ì. Á. Áîðèñîâ


8) êàê ìíîãî ILF îáíîâëÿþòñÿ îíëàéí; Ó÷åò äîïîëíèòåëüíûõ òðåáîâàíèé:
9) èñïîëüçóåòñÿ ëè ñëîæíàÿ ëîãè÷åñêàÿ
EFP =[(ADD + CHGA + CFP) ×VAFA] + (DEL ×VAFB),
èëè ìàòåìàòè÷åñêàÿ îáðàáîòêà;
10) áûëà ëè ñïðîåêòèðîâàíà ïðîãðàììà äëÿ ãäå ÅFP — êîëè÷åñòâî äîïîëíèòåëüíûõ ôóíê-
îäíîãî èëè ìíîãèõ ïîëüçîâàòåëåé; öèîíàëüíûõ òî÷åê;
11) íàñêîëüêî ñëîæíà èíñòàëëÿöèÿ; ADD — êîëè÷åñòâî ôóíêöèîíàëüíûõ òî÷åê
12) íàñêîëüêî ýôôåêòèâíû èëè àâòîìàòè- áåç ïîäñòðîéêè, êîòîðûå áûëè äîáàâëåíû
çèðîâàíû ñòàðò, ðåçåðâíîå êîïèðîâàíèå è âîñ- ïî äîïîëíèòåëüíûì òðåáîâàíèÿì;
ñòàíîâëåíèå; CHGA — êîëè÷åñòâî ôóíêöèîíàëüíûõ òî-
13) áûëî ëè ïðèëîæåíèå ñïðîåêòèðîâàíî, ÷åê áåç ïîäñòðîéêè, êîòîðûå áûëè èçìå-
ðàçðàáîòàíî äëÿ ìíîæåñòâà ñîòðóäíèêîâ ìíî- íåíû ïî äîïîëíèòåëüíûì òðåáîâàíèÿì;
æåñòâà îðãàíèçàöèé; CFP — êîëè÷åñòâî ôóíêöèîíàëüíûõ òî÷åê
14) áûëî ëè ïðèëîæåíèå ñïðîåêòèðîâà- áåç ïîäñòðîéêè, êîòîðûå áûëè äîáàâëåíû
íî äëÿ óïðîùåíèÿ äàëüíåéøèõ èçìåíåíèé ïîñëå ïðåîáðàçîâàíèé (îáû÷íî CFP = 0);
â íåì. VAFA — êîýôôèöèåíò ïîäñòðîéêè ïîñëå
Ïî êàæäîìó ïóíêòó èñïîëüçóåòñÿ ïÿòèáàëëü- äîïîëíèòåëüíûõ òðåáîâàíèé;
íàÿ ñèñòåìà îöåíêè. VAFB — êîýôôèöèåíò ïîäñòðîéêè äî äî-
ïîëíèòåëüíûõ òðåáîâàíèé;
FP = UAF ×VAF,
DEL — êîëè÷åñòâî ôóíêöèîíàëüíûõ òî÷åê
ãäå FP — êîíå÷íîå êîëè÷åñòâî ôóíêöèîíàëü- áåç ïîäñòðîéêè, êîòîðûå áûëè óäàëåíû
íûõ òî÷åê; ïîñëå ïðåîáðàçîâàíèé.
UAF — êîëè÷åñòâî ôóíêöèîíàëüíûõ òî÷åê
áåç ïîäñòðîéêè; Îïèñàíèå ìåòîäèêè COCOMO II
VAF — êîýôôèöèåíò ïîäñòðîéêè
Êà÷åñòâî ïîäñ÷åòà áþäæåòà ïî îòíîøåíèþ
è ê ìîäåëè COCOMO II çàâèñèò îò àäåêâàòíîñòè
êîëè÷åñòâåííûõ ïîêàçàòåëåé åå ôàêòîðîâ, ñî-
UAF = EI + EO + EQ + ILF + EIF,
îòâåòñòâåííî, îò îïûòà è èíôîðìèðîâàííîñòè
ãäå EI — âíåøíèå âõîäÿùèå ïîòîêè; îòâåòñòâåííîãî çà ðàñ÷åò. Ðîëü ëè÷íîñòè èëè
EO — âíåøíèå èñõîäÿùèå ïîòîêè; ãðóïïû îòâåòñòâåííûõ çà ïðîñ÷åò áþäæåòîâ
EQ — âíåøíèå çàïðîñû; êðóïíûõ ïðîåêòîâ íå ìîæåò áûòü íåäîîöåíå-
ILF — âíóòðåííèå ëîãè÷åñêèå ôàéëû; íà, îíà òðåáóåò êâàëèôèêàöèè àíàëèòèêà ñèñ-
EIF — âíåøíèå ôàéëû èíòåðôåéñà. òåìû.
Áàçîâàÿ ôîðìóëà îïðåäåëåíèÿ îáúåìîâ ðà-
Ó÷åò ðàçðàáîòêè ñ ïðåäâàðèòåëüíîé îáðà- áîò íà ðàçðàáîòêó ïðîãðàììíîãî îáåñïå÷åíèÿ:
áîòêîé äàííûõ:
Effort = A × Size6.
DFP = (UFP + CFP) ×VAF,
Size ïðåäñòàâëÿåò ñîáîé îöåíêó ðàçìåðà
ãäå DFP — êîëè÷åñòâî ôóíêöèîíàëüíûõ òî÷åê ýêðàíîâ, ôîðì, îò÷åòîâ, êîìïîíåíòîâ è ìîäó-
ðàçðàáîòêè; ëåé áóäóùåé ñèñòåìû. Êàæäûé ýëåìåíò îöåíè-
UFP — êîëè÷åñòâî ôóíêöèîíàëüíûõ òî÷åê âàåòñÿ êîýôôèöèåíòîì îò 1 äî 10 â çàâèñèìî-
áåç ïîäñòðîéêè; ñòè îò ñëîæíîñòè.
CFP — êîëè÷åñòâî ôóíêöèîíàëüíûõ òî÷åê, Êîýôôèöèåíò A ó÷èòûâàåò âîçìîæíîå ïî-
äîáàâëåííûõ äëÿ îáðàáîòêè ïðî÷èõ ôóíê- âòîðíîå èñïîëüçîâàíèå ÷àñòè êîìïîíåíòîâ
öèîíàëüíûõ òî÷åê; è ïðîèçâîäèòåëüíîñòü ðàçðàáîòêè, çàâèñÿùóþ
VAF — êîýôôèöèåíò ïîäñòðîéêè. îò îïûòà êîìàíäû ðàçðàáîò÷èêîâ è ïðèìåíÿå-

6 Äàííàÿ ôîðìóëà èíòåãðèðóåòñÿ ñ äðóãèìè ñîñòàâëÿþùèìè ìîäåëè COCOMO II äëÿ îöåíêè òðóäîåìêîñòè íà ðàçëè÷-

íûõ ýòàïàõ ðàçðàáîòêè ïðîãðàììíîé ñèñòåìû.

41
IT-ìåíåäæìåíò R Óïðàâëåíèå ïðîåêòàìè
ÏÐÈÊËÀÄÍÀß ÈÍÔÎÐÌÀÒÈÊÀ
¹ 5(23) 2009
ìûõ èíñòðóìåíòîâ, è îöåíèâàåòñÿ ÷èñëîì îò 4 q âîçìîæíîñòè ïåðñîíàëà;
äî 50. q íàäåæíîñòü è ñëîæíîñòü ïðîäóêòà;
q òðåáóåìûé óðîâåíü ïîâòîðíîãî èñïîëü-
æç Ïðîöåíò ö÷ çîâàíèÿ;
ç100 - ïîâòîðíîãî ÷÷ ñëîæíîñòü ïëàòôîðìû;
ç ÷
q
çè èñïîëüçîâàíèÿ÷ø q îïûòíîñòü ïåðñîíàëà;
A= .
Ïðîèçâîäèòåëüíîñòü q èñïîëüçîâàíèå èíñòðóìåíòîâ;
q ïëîòíîñòü ãðàôèêà ïðîåêòà.
Êîãäà òðåáîâàíèÿ ê ñèñòåìå óæå îïðåäåëå-
íû è íà÷èíàåòñÿ ïðîöåññ ðàçðàáîòêè àðõèòåê- Äëÿ âðåìåíè (â ìåñÿöàõ):
òóðû ÏÎ, èñïîëüçóåòñÿ ìîäåëü ýòàïà ïðåäâàðè-
Time = T × Effort (S0 ,28 + 0 ,2×( B-1, 01)) × Sced.
òåëüíîãî ïðîåêòèðîâàíèÿ (Early Design Model)
è ïðèìåíÿþòñÿ ñëåäóþùèå ôîðìóëû. ãäå EffortS — îöåíêà òðóäîåìêîñòè áåç ó÷åòà
ïëîòíîñòè ãðàôèêà;
Äëÿ òðóäîåìêîñòè (â ÷åëîâåêî-ìåñÿöàõ): Sced — òðåáóåìîå ñæàòèå âðåìåíè âûïîë-
íåíèÿ ïðîåêòà.
Ìîäåëè îöåíêè ñòîèìîñòè èíôîðìàöèîííûõ ñèñòåì â ìåòîäîëîãèÿõ ðàçðàáîòêè ïðîãðàììíîãî îáåñïå÷åíèÿ

Òðóäîçàòðàòû
Effort = A ×(Size) × M E + íà àâòîìàòè÷åñêè
B
Ïîñëå òîãî êàê ðàçðàáîòàíà àðõèòåêòóðà ÏÎ,
ãåíåðèðóåìûé êîä.
îöåíêè äîëæíû âûïîëíÿòüñÿ ñ èñïîëüçîâàíè-
Êîýôôèöèåíò A ñ÷èòàåòñÿ ðàâíûì 2,45, à T — åì ïîñòàðõèòåêòóðíîé ìîäåëè (Post-Architec-
3,67. ture Model).
Size — îöåíêà ðàçìåðà ÏÎ â òûñÿ÷àõ ñòðîê
êîäà (SLOC). Ôîðìóëà äëÿ òðóäîåìêîñòè (â ÷åëîâåêî-
B — ôàêòîð ïðîöåññà ðàçðàáîòêè, êîòîðûé ìåñÿöàõ):
âû÷èñëÿåòñÿ ïî ôîðìóëå: Òðóäîçàòðàòû
Effort = A ×(K req × Size) × M P + íà àâòîìàòè÷åñêè
B
B = 0,91+ 0,01× å i =1K5 Wi ,
ãåíåðèðóåìûé êîä.
ãäå ôàêòîðû Wi ïðèíèìàþò çíà÷åíèÿ îò 0 äî 5:
W1 — ïðåäñêàçóåìîñòü ïðîåêòà äëÿ äàí- Äëÿ âðåìåíè èñïîëüçóåòñÿ òà æå ôîð-
íîé îðãàíèçàöèè, îò ïîëíîñòüþ çíàêîìîãî ìóëà, ÷òî è â ïðåäûäóùåé ìîäåëè (â ìåñÿ-
(0) äî ñîâñåì íåïðåäñêàçóåìîãî (5); öàõ):
W2 — ãèáêîñòü ïðîöåññà ðàçðàáîòêè, îò
Time = T × Effort (S0 ,28 + 0 ,2×( B-1, 01)) × Sced ;
ïîëíîñòüþ îïðåäåëÿåìîãî êîìàíäîé ïðè
âûïîëíåíèè îáùèõ öåëåé ïðîåêòà (0) äî Ðàçìåð
ïîëíîñòüþ ôèêñèðîâàííîãî è ñòðîãîãî (5); Size = íîâîãî êîäà + RSize,
W3 — ñòåïåíü óäàëåíèÿ ðèñêîâ, îò ïîëíîé (â òûñ. ñòðîê)
(0) äî íåáîëüøîé (5) — îñòàâëÿþùåé îêî-
ëî 80% ðèñêîâ; æç Ðàçìåð ÷ö
÷ 100 - AT
ãäå RSize = çç ïîâòîðíî ÷
ç èñïîëüçóåìîãî ÷÷ × 100 ´
W4 — ñïëî÷åííîñòü êîìàíäû ïðîåêòà, îò áåç-
óêîðèçíåííîãî âçàèìîäåéñòâèÿ (0) äî áîëü- çç ÷
øèõ òðóäíîñòåé ïðè âçàèìîäåéñòâèè (5); èêîäà (â òûñ. còðîê)÷ø
AA + 0,4 × DM + 0,3 ×CM + 0,3 × IM + SU
W5 — çðåëîñòü ïðîöåññîâ â îðãàíèçàöèè, ´ ,
îò 0 äî 5 â âèäå âçâåøåííîãî êîëè÷åñòâà 100
ïîëîæèòåëüíûõ îòâåòîâ íà âîïðîñû î ïîä- AT — ïðîöåíò àâòîìàòè÷åñêè ãåíåðèðóå-
äåðæêå êëþ÷åâûõ îáëàñòåé ïðîöåññà â ìî- ìîãî êîäà;
äåëè CMM. AA — ôàêòîð òðóäîåìêîñòè ïåðåâîäà êîìïî-
ME — ïðîèçâåäåíèå ñåìè êîýôôèöèåíòîâ íåíòîâ â ïîâòîðíî èñïîëüçóåìûå, îò 0 äî 8;
çàòðàò, êàæäûé èç êîòîðûõ ëåæèò â èíòåð- DM — ïðîöåíò ìîäèôèöèðóåìûõ äëÿ ïîâòîð-
âàëå îò 1 äî 6: íîãî èñïîëüçîâàíèÿ ïðîåêòíûõ ìîäåëåé;

42
IT-ìåíåäæìåíò R Óïðàâëåíèå ïðîåêòàìè
ÏÐÈÊËÀÄÍÀß ÈÍÔÎÐÌÀÒÈÊÀ
¹ 5(23) 2009

Õ. Ð. Àëèåâ, Ñ. Î. Àíäðæååâñêèé, Ì. Á. Áîðèñîâ


CM — ïðîöåíò ìîäèôèöèðóåìîãî äëÿ ïî- ïîâûõ «êëàññè÷åñêèõ» àðõèòåêòóð ðàçðàáîòêè
âòîðíîãî èñïîëüçîâàíèÿ êîäà; ïðîãðàììíîãî îáåñïå÷åíèÿ.
IM — ïðîöåíò çàòðàò íà èíòåãðàöèþ è òåñ- Ïîëåçíîñòü ìîäåëåé îöåíêè òðóäîåìêîñòè
òèðîâàíèå ïîâòîðíî èñïîëüçóåìûõ êîì- ðàçðàáîòêè ïðîãðàììíûõ ñèñòåì çàêëþ÷àåòñÿ
ïîíåíòîâ; â íàëè÷èè íå èíòóèòèâíîãî, à ñîáèðàòåëüíîãî
SU — ôàêòîð ïîíÿòíîñòè ïîâòîðíîãî èñ- âû÷èñëèòåëüíîãî èíñòðóìåíòàðèÿ, îñíîâàí-
ïîëüçîâàíèÿ êîäà, îò 10 äëÿ ïðîñòîãî, õîðî- íîãî íà àíàëèçå îïûòà ðàçðàáîòêè ìíîæåñòâà
øî ñòðóêòóðèðîâàííîãî, äî 50 äëÿ ñëîæíîãî ïðîåêòîâ è âûäåëåíèÿ çàêîíîìåðíîñòåé ïî-
è íåïîíÿòíîãî; ðàâåí 0, åñëè CM = DM = 0. âåäåíèÿ çàòðàò â çàâèñèìîñòè îò ìíîæåñòâà
ôàêòîðîâ. Ýòà ìîäåëü, êàê è ëþáàÿ äðóãàÿ, —
Âñå êîýôôèöèåíòû, êðîìå Kreq è MP, èìåþò ëèøü óïðîùåííîå îòðàæåíèå ðåàëüíîñòè.
òå æå çíà÷åíèÿ, ÷òî è â ïðåäûäóùåé ìîäåëè. Îíà íå ïðåòåíäóåò íà ñòîïðîöåíòíóþ òî÷-
Êîýôôèöèåíò Kreq âû÷èñëÿåòñÿ êàê: íîñòü. Ýòî è åñòü êîìïðîìèññ ìåæäó îïûòîì
ïðîãðàììèñòñêîé îáùåñòâåííîñòè è èíäèâè-
Ïðîöåíò êîäà, äóóìîì èëè ãðóïïîé àíàëèòèêîâ, êîòîðûì
âûáðîøåííîãî èç-çà ïðåäñòîèò îöåíèòü òðóäîåìêîñòü ðàçðàáîòêè
èçìåíåíèé â òðåáîâàíèõ è, ñëåäîâàòåëüíî, åå áþäæåò.
K req = 1+ .
100

Êîýôôèöèåíò MP ÿâëÿåòñÿ ïðîèçâåäåíèåì ÑÏÈÑÎÊ ËÈÒÅÐÀÒÓÐÛ


17 êîýôôèöèåíòîâ çàòðàò, èìåþùèõ çíà÷åíèÿ
îò 1 äî 6: 1. Ìèõàéëîâñêèé Í. Ìåòîäû îöåíêè ñòîèìîñòè
l íàäåæíîñòü ïðîäóêòà; ïðîåêòîâ ïî ðàçðàáîòêå èíôîðìàöèîííûõ ñèñòåì //
l ñëîæíîñòü ïðîäóêòà; Ëàáîðàòîðèÿ ÍÈÐ. 2008. URL: http://www.ntrlab.ru/
l ðàçìåð áàçû äàííûõ ðàçðàáàòûâàåìîãî publications/190.
ïðèëîæåíèÿ; 2. Àëèåâ Õ. Ð. Ýôôåêòèâíàÿ ìîäåëü îöåíêè ðàç-
l òðåáóåìûé óðîâåíü ïîâòîðíîãî èñïîëü- ðàáîòêè ïðîãðàììíîãî îáåñïå÷åíèÿ // Èññëåäîâàíî
çîâàíèÿ; â Ðîññèè. 2008. ¹ 2.
l òðåáóåìûé óðîâåíü äîêóìåíòèðîâàííîñòè; 3. Áîðèñîâ Ì. Á. Scrum: ãèáêîå óïðàâëåíèå ðàç-
l óðîâåíü ïðîèçâîäèòåëüíîñòè ïî âðåìåíè; ðàáîòêîé // Îòêðûòûå ñèñòåìû. 2007. ¹ 5. URL: http://
l óðîâåíü òðåáîâàíèé ê çàíèìàåìîé îïå- www.osp.ru.
ðàòèâíîé ïàìÿòè; 4. Àíäðæååâñêèé Ñ. Î. Ïðàêòèêè XP: Ãèáêîå óïðàâ-
l èçìåí÷èâîñòü ïëàòôîðìû; ëåíèå ðàçðàáîòêîé // Îòêðûòûå ñèñòåìû, 2008. ¹ 3.
l âîçìîæíîñòè àíàëèòèêà ïðîåêòà; URL: http://www.osp.ru/os/2008/os/2007/04/4220063.
l âîçìîæíîñòè ïðîãðàììèñòîâ; 5. Morris P. M. and Desharnais J. M. Function Point
l îïûò ðàáîòû êîìàíäû â äàííîé ïðåä- Analysis Vlidating The Result // New-York. 2001. July 19.
ìåòíîé îáëàñòè; 6. Barry W. Boehm Software Cost Estimation with
l îïûò ðàáîòû êîìàíäû ñ èñïîëüçóåìûìè Cocomo II // Prentice Hall PTR. 2000. August 11.
ïëàòôîðìàìè; 7. Dennis M. A., Clouse A., Turner R. CMMI Distilled
l îïûò ðàáîòû êîìàíäû ñ èñïîëüçóåìûìè (A Practical Introduction to Integrated Process Improve-
ÿçûêàìè è èíñòðóìåíòàìè; ment). Second Edition. New York: Addison Wesley, 2005.
l óðîâåíü òåêó÷åñòè ïåðñîíàëà â êîìàíäå; 8. Nonaka I., Takeuchi H. The New Product Devel-
l âîçìîæíîñòè èñïîëüçóåìûõ èíñòðóìåíòîâ; opment Game // Harvard Business Review. 1986.
l âîçìîæíîñòè îáùåíèÿ ìåæäó ÷ëåíàìè January-February.
êîìàíäû; 9. Schwaber K., Sutherland J., Scrum Development
l ôàêòîð ñæàòèÿ ãðàôèêà ïðîåêòà. Process in OOPSLA Business Object Design and Imple-
Ðàñ÷åòíûå ìåòîäèêè, ïðèâåäåííûå âûøå, mentation Workshop. London: Springer, 1997.
ïðåäíàçíà÷åíû, ïðåæäå âñåãî, äëÿ îöåíêè 10. Schwaber K. Agile Project Management with
ñòîèìîñòè ïðîãðàììíûõ ñèñòåì íà îñíîâå òè- Scrum // Microsoft Press. 2004.

43
IT-ìåíåäæìåíò R Óïðàâëåíèå ïðîåêòàìè

Вам также может понравиться