際際滷

際際滷Share a Scribd company logo
L朝va teinberga
2012. gada 29. oktobr朝
Lekcija LU Datorikas fakulttes kursa
Kvalifikcijas darbs I ietvaros
is darbs izstrdts ar Eiropas Socil fonda atbalstu projekt
束Atbalsts doktora studijm Latvijas Universitt損.
Kvalifikcijas darbam jsatur paskaidrojo邸s
teksts, kur atspogu勅ota konkrt
programmat笛ras projekta organizcija,
kvalittes nodro邸in邸ana, konfigurciju
prvald朝ba un dots darbietilp朝bas novrtjums
saska ar izplat朝tm metodm.
Kvalifikcijas darba ietvaros izstrdt
programmat笛ras produkta apjomam jatbilst
vismaz 3 personmne邸u darbietilp朝bai.
}盾 Kas ir darbietilp朝ba?
}盾 Kpc t jprognoz?
}盾 Kdas prognoz邸anas metodes eksist?
}盾 Piemri
Darbietilpiibas prognozeeshana   liva steinberga - 29 10 2012
}盾 Darbietilp朝bas novrt邸ana ir process, kur
prognoz programmat笛ras produkta izstrdei
nepiecie邸amo darba apjomu.
}盾 Novrtjumi ir vajadz朝gi vis izstrdes laik
 Pirms projekta uzsk邸anas, lai izvrttu vai iecere ir
realizjama, piedal朝tos piedvjumu konkursos un plnotu
bud転etu
 Periodiski prvrtjumi vajadz朝gi, lai nepiecie邸am朝bas
gad朝jum projekta realizcijas laik prdal朝tu resursus
Piegdt:
}盾 Vajadz朝go
funkcionalitti
}盾 Noruntaj laik
}盾 Par norunto cenu
}盾 Pras朝taj kvalitt
Posmi:
≒ Nospraust mr跳us
≒ Censties sasniegt
mr跳us
Ko dar朝t, ja mr跳i nav sasniedzami?
}盾 Programmat笛ra nav taustma
}盾 Programmat笛ru izstrd cilvki
}盾 Programmat笛ras izstrde ir rado邸s process
nevis tikai mehniska darb朝ba
}盾 Katrs projekts ir unikls
}盾 Tehnolo庁ijas strauji mains
}盾 Maz informcijas par l朝dz朝gu projektu
pieredzi
}盾 Parkinsona likums: Lai cik maz darba b笛tu, tas
aizems visu tam atvlto laiku.
Work expands to fill the time available [Parkinson]
}盾 Br笛ka likums: Ja aizkavta darba izpild piesaista
vairk (papildus) cilvku, tad darbs aizkavsies vl
ilgk.
Putting more people on a late job makes it later. [Brook]
}盾 Price to win: Pietiekami zema cena, lai uzvartu
piedvjumu konkurs
Price to win : figure sufficiently low to win contract
Darbietilp朝bas novrtjumi bie転i ir neprec朝zi vai
nemaz netiek veikti.
Statistikas dati:
}盾 Vidji projektiem paredztais bud転ets tika
prtrts par 90%, bet paredztais laiks par
120% [Standish Group pt朝jums par 8380
projektiem 1994. gad]
}盾 International Software Benchmarking Standards
Group repozitorijos glabto vairk k 400 projektu
datu anal朝zes rezultti 2005. gad:
 Darbietilp朝ba prec朝zi apr跳inta ~25% no visiem
projektiem. Vidji rel darbietilp朝ba bijusi 2 reizes lielka
par skotnji prognozto.
 Apmram 60% projektu darbietilp朝ba novrtta vismaz
par 10% mazka nek rel darbietilp朝ba.
 Novrotas nopietnas k勅笛das, piemram, rel
darbietilp朝ba bijusi 20 reizes lielka par prognozto.
Paredzot nkotni ir daudz nezinm
 Pras朝bas  ir neprec朝zas un main朝gas
 Projektjums  var tikt main朝ts laika gait
 Izstrde  atkar朝ba no programm邸anas valodas un
izstrdes vides
 Test邸ana  nepiecie邸amais apjoms da転dm sistmm
var b笛tiski at邸跳irties (piem., dz朝v朝bai kritiskas sistmas,
elementras sples)
 Ievie邸ana  da転di lietotja akcepta kritriji
 Personls  pieredze un kompetence
 Tehnolo庁ijas  viena vai vairkas platformas u.c.
Lai uzlabotu novrtjumu precizitti,
vajadz朝ga sistmtiska pieeja darbietilp朝bas
prognoz邸anas procesam!
}盾 Bottom-up (Dekompoz朝cija)
 Darbu sadala neliels aktivitts (uzdevumos)
 Veic darbietilp朝bas novrtjumu katrai aktivittei
 Sasumm ieg笛tos novrtjumus
 Lieto, kad nav pieejami dati par agrk izstrdtiem
projektiem
}盾 Top-down
 Novrt visu produkta izstrdei nepiecie邸amo darbu
 Zemka l朝mea uzdevumu veik邸anai nepiecie邸amo darbu
apr跳ina k da勅u no kopjs darbietilp朝bas
Darbietilpiibas prognozeeshana   liva steinberga - 29 10 2012
1. Japr跳ina produktivitte jeb darba ra転朝gums
(darbiniekam vai komandai)
2. Ja zinms programmat笛ras apjoms/ izmrs
un darbinieku produktivitte, var izr跳int cik
darba cilvk-stundu / dienu / mne邸u vajadzs,
lai darbu paveiktu jeb kda ir projekta
darbietilp朝ba.
Iedomto produktivitti apr跳ina pc
viendojuma
izmantojot datus par l朝dz朝giem agrk
izstrdtiem projektiem sav uzmum vai
citos uzmumos (benchmark productivity data)
Bie転k lietots mrvien朝bas programmat笛ras
apjoma / izmra noteik邸anai:
}盾 pirmkoda rindiu skaits (LOC jeb SLOC)
source lines of code
}盾 funkcijpunkti
function points
Raksturojums
}盾 Tradicionla metode programmat笛ras fizisk
izmra / apjoma prognoz邸anai
}盾 Apraksta programmat笛ras apjomu no
programmtja skatu punkta
}盾 Koda kvalitte netiek emta vr
}盾 Tiek lietots daudzs darbietilp朝bas novrt邸anas
metods
}盾 Priek邸roc朝bas
 Vienkr邸i un automtiski mrms lielums
 Tie邸a saist朝ba ar gala produktu
 Tie邸a saist朝ba ar programm邸anai patrto laiku
}盾 Tr笛kumi
 Vji defints mrs (Piemram, vai jskaita ar朝 komentru
rindas?)
 Atkar朝gs no programm邸anas valodas
 Atkar朝gs no izstrdtja prasmm
 Nav zinms plno邸anas fz
Nav ieteicams lietot darbietilp朝bas
noteik邸anai
Measuring programming progress by
lines of code is like measuring aircraft
building progress by weight [Bill Gates]
Raksturojums
}盾 Apraksta programmat笛ras nodro邸ints
funkcionalittes apjomu
}盾 Apr跳inms pc programmat笛ras pras朝bu
specifikcij iek勅autajm pras朝bm
}盾 Apraksta programmat笛ras apjomu no lietotja
skatu punkta
}盾 Neatkar朝gi no programm邸anas valodas
}盾 Skaita plnots sistmas atrib笛tus, piem.,
lietojot IFPUG metodi jskaita:
 Ievadi
 Izvadi
 Vaicjumi
 Izmantotie iek邸jie jeb lo庁ikas faili
 rjo saskaru faili
Nepiecie邸amo darba apjomu var ietekmt
da転di izmaksu faktori:
}盾 cilvku skaits komand
}盾 programm邸anas valoda
}盾 organizcijas tips
}盾 uzmjdarb朝bas sfra
}盾 lietotnes tips
}盾 izstrdes platforma u.c.
Darbietilpiibas prognozeeshana   liva steinberga - 29 10 2012
Darbietilpiibas prognozeeshana   liva steinberga - 29 10 2012
}盾 Algoritmiski mode勅i
 Apr跳inos izmanto formulas
 Izmanto citu l朝dz朝gu un pabeigtu projektu datus
 COSMIC, IFPUG, MARK II, NESMA, FISMA, COCOMO,
COCOMO II
}盾 Ekspertu vrtjums
 DELPHI, PERT, Plno邸anas pokers, Vienas personas
vrtjums
}盾 Analo庁iju bzti vrtjumi
 Vrtjumus veic balstoties uz 勅oti l朝dz朝gu projektu datiem
Algoritmiski mode勅i Ekspertu vrtjumi Analo庁iju bzti
vrtjumi
Pieeja B笛v statistisku modeli Atkar朝ba no
ekspertu viedok勅a
Mra l朝dz朝bas un
pielgo
Vajadz朝ba pc
datiem
Ir Nav Ir
Priek邸roc朝bas Objekt朝vi, atkrtojami,
analizjamas formulas
Relat朝vi lti
Prec朝zi, ja
ekspertiem ir
pieredze ar
l朝dz朝giem
projektiem
Bzta uz relu
projektu pieredzi
Tr笛kumi Nepiemrota
specilgad朝jumiem
Kalibrta uz pagtnes
datiem nevis nkotnes
datiem
Rezultti stipri
akgar朝gi no
vrttjiem
Nepiecie邸ama
detalizta
informcija par
daudziem
projektiem
Darbietilpiibas prognozeeshana   liva steinberga - 29 10 2012
}盾 Atbilst starptautiski atz朝tam standartam
ISO/IEC 19761: 2003
}盾 1999. gad to publicja Common Software
Measurement International Consortium
(COSMIC), pdj versija 3.0.1 publicta 2009.
gad
Der朝ga, lai prognoztu funkcionlos izmrus:
}盾 Dar朝jumlietotnm (bussiness applications)
(piem., banku sistmas, internetveikali)
}盾 Rela-laika programmat笛rai (real-time
software) (piem., automa邸朝nas motora
vad朝bas sistma, telekomunikciju sistmas)
}盾 Hibr朝dm lietotnm (piemram, rela-laika
lidma邸朝nas bi勅e邸u rezervcijas sistmai)
Neder朝ga:
}盾 Programmat笛rai, kas ietver sare転庁朝tas
lo庁isks izteiksmes,sare転庁朝tu matemtiskus
apr跳inu veik邸anu, attlu un skaas apstrdi
utml. (piem., ekspertu sistmas, simulciju
programmat笛ru, laika progno転u sistmas,
datorsples)
[Cigdem Gencel, 2010]
}盾 1 CFP (COSMIC funkcijpunkts) ir defints k
viena datu pl笛sma
}盾 Katra datu pl笛smas instance (Ievads, Izvads,
Las朝邸ana, Rakst朝邸ana), kad dati tiek pievienoti,
main朝ti vai izdzsti ir 1 CFP izmr
}盾 Lietotjs - jebkas, kas darbojas ar ar mrmo
programmat笛ru
}盾 Funkcionlais lietotjs - lietotja tips, kas
funkcionlajs lietotja pras朝bs, var s笛t朝t un var
saemt datus no programmat笛ras
 Dar朝jumlietotns  cilvki un citas lietotnes, ar kurm ts
sadarbojas
 Rela laika lietotns  ier朝ces vai cita programmat笛ra
}盾 Funkcionls lietotju pras朝bas sastv no
funkcionliem procesiem
}盾 Funkcionlais process tiek izsaukts, kad
programmat笛ras lietotjs atpaz朝st notikumu
(trigeri) un s笛ta ziu, lai sktu procesu
}盾 Process ir pabeigts, kad programmat笛ra ir
paveikusi visu kas pras朝ts
Trigeri un tiem atbilsto邸ie funkcionlie procesi
}盾 Dar朝jumlietotns:
 Ir saemts pas笛t朝jums  Ievad朝t pas笛t朝jumu sistm
 Darbinieks ir apprcjies  Atjaunint via personas
datus
 Ir mne邸a beigas  Apr跳int algas
}盾 Rela laika lietotns
 Pilota komanda  Pievilkt lidma邸朝nas ratus un
pacelties gais
 Zia par sastd朝tu telefona numuru  Izveidot
savienojumu
}盾 4 tipu datu pl笛smu tipi:
 Ievads (Entry)  kontroles vai biznesa informcija, kas nk no
lietotja un 邸跳rso lietotnes robe転u (lietotja ievaddati,
sensoru informcija)
 Izvads (Exit)  apstrdti dati, kas tiek virz朝ti r no lietotnes
(grafiki, atskaites) lietotjam, kas tos piepras朝jis
 Las朝邸ana (Read)  prvieto datus no atmias procesam, kas
tos piepras朝jis
 Rakst朝邸ana (Write)  prvieto datus no procesa uz atmiu
[Cigdem Gencel, 2010]
Izmrs CFP (funkcionlais processi) =
裡 izmrs(Ievadsi) + 裡 izmrs(Izvadsi) + 裡 size
(Las朝邸anai) + 裡 size(Rakst朝邸anai)
}盾 Pas笛t朝jumu apstrdes lietotne glab datus par
klientiem  klienta ID, vrds, uzvrds, adrese,
telefona numurs, kred朝ta limits, klienta tipa kods
}盾 Ar klientu informciju darbojas pas笛t朝jumu
apstrdes operatori
}盾 Process Jauna klienta izveide sistm ietver
 1 Ievads (saist朝ts ar klienta objektu)
 1 Rakst朝邸ana (saist朝ts ar klienta objektu)
 1 Izvads (apstiprinjums vai k勅笛das paziojums)
}盾 Procesa izmrs: 3 CFP (COSMIC Function Point)
Functional
Process
User Exch.
rate
Financia
l trans.
User
prof.
Sys.
config.
Entry Exit Read Write CFP
Login
validation
R 1 1 1 0 3
User
profile
loading
R 1 1 1 0 3
Exchange
rates
loading
R/W 1 1 1 1 4
Buying or
Selling
currencies
R/W R R 1 1 3 1 6
Detailed
exchange
rate
information
loading
R 1 1 1 0 3
.. 
TOTAL 37
}盾 The International Software Benchmarking
Standards Group uztur divus repozitorijus ar
vsturiskiem projektu datiem
}盾 Pa邸laik pieejama informcija par ~5600
projektiem
}盾 Projektu dati pieejami par maksu
CFP Planning (h) Analysis (h) Building (h) Testing (h) Deploying (h)
44 9 7 88 50 52
CFP Planning (h) Analysis (h) Building (h) Testing (h) Deploying(h)
37 7 6 74 42 44
Benchmarking jeb industrijas dati par projektu ar
l朝dz朝gu CFP skaitu:
Apr跳ina darbietilp朝bu savam projektam:
Tlk, emot vr projekta uniklitti un izmaksu
faktorus, preciz darbietilp朝bu. Piemram, par 20%
palielina izstrdes (building) darbu, jo darbinieki ir
iescji darb ar konkrto programm邸anas valodu.
}盾 The COSMIC Functional Size Measurement
Method Version 3.0.1 Measurement Manual
(The COSMIC Implementation Guide for ISO/
IEC 19761: 2003), May 2009
VAI
}盾 The COSMIC Functional Size Measurement
Method Version 3.0 Method Overview,
September 2007
Darbietilpiibas prognozeeshana   liva steinberga - 29 10 2012
}盾 Spja (agile) pieeja darbietilp朝bas plno邸anai
}盾 Darbietilp朝bas novrtjuma mrvien朝ba 
sare転庁朝t朝bas punkts
}盾 Izmanto krtis uz kurm rakst朝ts punktu
skaits
}盾 Bie転k lietots skalas:
 Fibonai skait勅i - 0, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89
 0, 遜, 1, 2, 3, 5, 8, 13, 20, 40, 100
}盾 Komandas biedri sapulcjas un balso par
katras funkcionls pras朝bas izteiktas
lietotju ststa (user story) form relat朝vo
sare転庁朝t朝bas pakpi, izmantojot krtis
}盾 Katrs balso individuli (izvlas krti), bet
visi balso vienlaic朝gi (atklj krti). Ja
vrtjumi at邸跳iras, tad diskut un vienojas
vai prbalso
trums	
 (velocity)	
 =	
 vien	
 itercij	
 realizto	
 punktu	
 skaits	
 	
 
Darbietilp朝ba	
 lietotju	
 ststam	
 =	
 vidj	
 sare転g朝t朝bas	
 punkta	
 
darbietilp朝ba	
 *	
 punktu	
 skaits
Paldies par uzman朝bu!
Darbietilpiibas prognozeeshana   liva steinberga - 29 10 2012
[Cigdem Gencel, 2010]
Darbietilpiibas prognozeeshana   liva steinberga - 29 10 2012

More Related Content

Darbietilpiibas prognozeeshana liva steinberga - 29 10 2012

  • 1. L朝va teinberga 2012. gada 29. oktobr朝 Lekcija LU Datorikas fakulttes kursa Kvalifikcijas darbs I ietvaros is darbs izstrdts ar Eiropas Socil fonda atbalstu projekt 束Atbalsts doktora studijm Latvijas Universitt損.
  • 2. Kvalifikcijas darbam jsatur paskaidrojo邸s teksts, kur atspogu勅ota konkrt programmat笛ras projekta organizcija, kvalittes nodro邸in邸ana, konfigurciju prvald朝ba un dots darbietilp朝bas novrtjums saska ar izplat朝tm metodm.
  • 3. Kvalifikcijas darba ietvaros izstrdt programmat笛ras produkta apjomam jatbilst vismaz 3 personmne邸u darbietilp朝bai.
  • 4. }盾 Kas ir darbietilp朝ba? }盾 Kpc t jprognoz? }盾 Kdas prognoz邸anas metodes eksist? }盾 Piemri
  • 6. }盾 Darbietilp朝bas novrt邸ana ir process, kur prognoz programmat笛ras produkta izstrdei nepiecie邸amo darba apjomu. }盾 Novrtjumi ir vajadz朝gi vis izstrdes laik Pirms projekta uzsk邸anas, lai izvrttu vai iecere ir realizjama, piedal朝tos piedvjumu konkursos un plnotu bud転etu Periodiski prvrtjumi vajadz朝gi, lai nepiecie邸am朝bas gad朝jum projekta realizcijas laik prdal朝tu resursus
  • 7. Piegdt: }盾 Vajadz朝go funkcionalitti }盾 Noruntaj laik }盾 Par norunto cenu }盾 Pras朝taj kvalitt Posmi: ≒ Nospraust mr跳us ≒ Censties sasniegt mr跳us Ko dar朝t, ja mr跳i nav sasniedzami?
  • 8. }盾 Programmat笛ra nav taustma }盾 Programmat笛ru izstrd cilvki }盾 Programmat笛ras izstrde ir rado邸s process nevis tikai mehniska darb朝ba }盾 Katrs projekts ir unikls }盾 Tehnolo庁ijas strauji mains }盾 Maz informcijas par l朝dz朝gu projektu pieredzi
  • 9. }盾 Parkinsona likums: Lai cik maz darba b笛tu, tas aizems visu tam atvlto laiku. Work expands to fill the time available [Parkinson] }盾 Br笛ka likums: Ja aizkavta darba izpild piesaista vairk (papildus) cilvku, tad darbs aizkavsies vl ilgk. Putting more people on a late job makes it later. [Brook] }盾 Price to win: Pietiekami zema cena, lai uzvartu piedvjumu konkurs Price to win : figure sufficiently low to win contract
  • 10. Darbietilp朝bas novrtjumi bie転i ir neprec朝zi vai nemaz netiek veikti. Statistikas dati: }盾 Vidji projektiem paredztais bud転ets tika prtrts par 90%, bet paredztais laiks par 120% [Standish Group pt朝jums par 8380 projektiem 1994. gad]
  • 11. }盾 International Software Benchmarking Standards Group repozitorijos glabto vairk k 400 projektu datu anal朝zes rezultti 2005. gad: Darbietilp朝ba prec朝zi apr跳inta ~25% no visiem projektiem. Vidji rel darbietilp朝ba bijusi 2 reizes lielka par skotnji prognozto. Apmram 60% projektu darbietilp朝ba novrtta vismaz par 10% mazka nek rel darbietilp朝ba. Novrotas nopietnas k勅笛das, piemram, rel darbietilp朝ba bijusi 20 reizes lielka par prognozto.
  • 12. Paredzot nkotni ir daudz nezinm Pras朝bas ir neprec朝zas un main朝gas Projektjums var tikt main朝ts laika gait Izstrde atkar朝ba no programm邸anas valodas un izstrdes vides Test邸ana nepiecie邸amais apjoms da転dm sistmm var b笛tiski at邸跳irties (piem., dz朝v朝bai kritiskas sistmas, elementras sples) Ievie邸ana da転di lietotja akcepta kritriji Personls pieredze un kompetence Tehnolo庁ijas viena vai vairkas platformas u.c.
  • 13. Lai uzlabotu novrtjumu precizitti, vajadz朝ga sistmtiska pieeja darbietilp朝bas prognoz邸anas procesam!
  • 14. }盾 Bottom-up (Dekompoz朝cija) Darbu sadala neliels aktivitts (uzdevumos) Veic darbietilp朝bas novrtjumu katrai aktivittei Sasumm ieg笛tos novrtjumus Lieto, kad nav pieejami dati par agrk izstrdtiem projektiem }盾 Top-down Novrt visu produkta izstrdei nepiecie邸amo darbu Zemka l朝mea uzdevumu veik邸anai nepiecie邸amo darbu apr跳ina k da勅u no kopjs darbietilp朝bas
  • 16. 1. Japr跳ina produktivitte jeb darba ra転朝gums (darbiniekam vai komandai)
  • 17. 2. Ja zinms programmat笛ras apjoms/ izmrs un darbinieku produktivitte, var izr跳int cik darba cilvk-stundu / dienu / mne邸u vajadzs, lai darbu paveiktu jeb kda ir projekta darbietilp朝ba.
  • 18. Iedomto produktivitti apr跳ina pc viendojuma izmantojot datus par l朝dz朝giem agrk izstrdtiem projektiem sav uzmum vai citos uzmumos (benchmark productivity data)
  • 19. Bie転k lietots mrvien朝bas programmat笛ras apjoma / izmra noteik邸anai: }盾 pirmkoda rindiu skaits (LOC jeb SLOC) source lines of code }盾 funkcijpunkti function points
  • 20. Raksturojums }盾 Tradicionla metode programmat笛ras fizisk izmra / apjoma prognoz邸anai }盾 Apraksta programmat笛ras apjomu no programmtja skatu punkta }盾 Koda kvalitte netiek emta vr }盾 Tiek lietots daudzs darbietilp朝bas novrt邸anas metods
  • 21. }盾 Priek邸roc朝bas Vienkr邸i un automtiski mrms lielums Tie邸a saist朝ba ar gala produktu Tie邸a saist朝ba ar programm邸anai patrto laiku }盾 Tr笛kumi Vji defints mrs (Piemram, vai jskaita ar朝 komentru rindas?) Atkar朝gs no programm邸anas valodas Atkar朝gs no izstrdtja prasmm Nav zinms plno邸anas fz
  • 22. Nav ieteicams lietot darbietilp朝bas noteik邸anai Measuring programming progress by lines of code is like measuring aircraft building progress by weight [Bill Gates]
  • 23. Raksturojums }盾 Apraksta programmat笛ras nodro邸ints funkcionalittes apjomu }盾 Apr跳inms pc programmat笛ras pras朝bu specifikcij iek勅autajm pras朝bm }盾 Apraksta programmat笛ras apjomu no lietotja skatu punkta }盾 Neatkar朝gi no programm邸anas valodas
  • 24. }盾 Skaita plnots sistmas atrib笛tus, piem., lietojot IFPUG metodi jskaita: Ievadi Izvadi Vaicjumi Izmantotie iek邸jie jeb lo庁ikas faili rjo saskaru faili
  • 25. Nepiecie邸amo darba apjomu var ietekmt da転di izmaksu faktori: }盾 cilvku skaits komand }盾 programm邸anas valoda }盾 organizcijas tips }盾 uzmjdarb朝bas sfra }盾 lietotnes tips }盾 izstrdes platforma u.c.
  • 28. }盾 Algoritmiski mode勅i Apr跳inos izmanto formulas Izmanto citu l朝dz朝gu un pabeigtu projektu datus COSMIC, IFPUG, MARK II, NESMA, FISMA, COCOMO, COCOMO II }盾 Ekspertu vrtjums DELPHI, PERT, Plno邸anas pokers, Vienas personas vrtjums }盾 Analo庁iju bzti vrtjumi Vrtjumus veic balstoties uz 勅oti l朝dz朝gu projektu datiem
  • 29. Algoritmiski mode勅i Ekspertu vrtjumi Analo庁iju bzti vrtjumi Pieeja B笛v statistisku modeli Atkar朝ba no ekspertu viedok勅a Mra l朝dz朝bas un pielgo Vajadz朝ba pc datiem Ir Nav Ir Priek邸roc朝bas Objekt朝vi, atkrtojami, analizjamas formulas Relat朝vi lti Prec朝zi, ja ekspertiem ir pieredze ar l朝dz朝giem projektiem Bzta uz relu projektu pieredzi Tr笛kumi Nepiemrota specilgad朝jumiem Kalibrta uz pagtnes datiem nevis nkotnes datiem Rezultti stipri akgar朝gi no vrttjiem Nepiecie邸ama detalizta informcija par daudziem projektiem
  • 31. }盾 Atbilst starptautiski atz朝tam standartam ISO/IEC 19761: 2003 }盾 1999. gad to publicja Common Software Measurement International Consortium (COSMIC), pdj versija 3.0.1 publicta 2009. gad
  • 32. Der朝ga, lai prognoztu funkcionlos izmrus: }盾 Dar朝jumlietotnm (bussiness applications) (piem., banku sistmas, internetveikali) }盾 Rela-laika programmat笛rai (real-time software) (piem., automa邸朝nas motora vad朝bas sistma, telekomunikciju sistmas) }盾 Hibr朝dm lietotnm (piemram, rela-laika lidma邸朝nas bi勅e邸u rezervcijas sistmai)
  • 33. Neder朝ga: }盾 Programmat笛rai, kas ietver sare転庁朝tas lo庁isks izteiksmes,sare転庁朝tu matemtiskus apr跳inu veik邸anu, attlu un skaas apstrdi utml. (piem., ekspertu sistmas, simulciju programmat笛ru, laika progno転u sistmas, datorsples)
  • 35. }盾 1 CFP (COSMIC funkcijpunkts) ir defints k viena datu pl笛sma }盾 Katra datu pl笛smas instance (Ievads, Izvads, Las朝邸ana, Rakst朝邸ana), kad dati tiek pievienoti, main朝ti vai izdzsti ir 1 CFP izmr
  • 36. }盾 Lietotjs - jebkas, kas darbojas ar ar mrmo programmat笛ru }盾 Funkcionlais lietotjs - lietotja tips, kas funkcionlajs lietotja pras朝bs, var s笛t朝t un var saemt datus no programmat笛ras Dar朝jumlietotns cilvki un citas lietotnes, ar kurm ts sadarbojas Rela laika lietotns ier朝ces vai cita programmat笛ra
  • 37. }盾 Funkcionls lietotju pras朝bas sastv no funkcionliem procesiem }盾 Funkcionlais process tiek izsaukts, kad programmat笛ras lietotjs atpaz朝st notikumu (trigeri) un s笛ta ziu, lai sktu procesu }盾 Process ir pabeigts, kad programmat笛ra ir paveikusi visu kas pras朝ts
  • 38. Trigeri un tiem atbilsto邸ie funkcionlie procesi }盾 Dar朝jumlietotns: Ir saemts pas笛t朝jums Ievad朝t pas笛t朝jumu sistm Darbinieks ir apprcjies Atjaunint via personas datus Ir mne邸a beigas Apr跳int algas }盾 Rela laika lietotns Pilota komanda Pievilkt lidma邸朝nas ratus un pacelties gais Zia par sastd朝tu telefona numuru Izveidot savienojumu
  • 39. }盾 4 tipu datu pl笛smu tipi: Ievads (Entry) kontroles vai biznesa informcija, kas nk no lietotja un 邸跳rso lietotnes robe転u (lietotja ievaddati, sensoru informcija) Izvads (Exit) apstrdti dati, kas tiek virz朝ti r no lietotnes (grafiki, atskaites) lietotjam, kas tos piepras朝jis Las朝邸ana (Read) prvieto datus no atmias procesam, kas tos piepras朝jis Rakst朝邸ana (Write) prvieto datus no procesa uz atmiu
  • 41. Izmrs CFP (funkcionlais processi) = 裡 izmrs(Ievadsi) + 裡 izmrs(Izvadsi) + 裡 size (Las朝邸anai) + 裡 size(Rakst朝邸anai)
  • 42. }盾 Pas笛t朝jumu apstrdes lietotne glab datus par klientiem klienta ID, vrds, uzvrds, adrese, telefona numurs, kred朝ta limits, klienta tipa kods }盾 Ar klientu informciju darbojas pas笛t朝jumu apstrdes operatori }盾 Process Jauna klienta izveide sistm ietver 1 Ievads (saist朝ts ar klienta objektu) 1 Rakst朝邸ana (saist朝ts ar klienta objektu) 1 Izvads (apstiprinjums vai k勅笛das paziojums) }盾 Procesa izmrs: 3 CFP (COSMIC Function Point)
  • 43. Functional Process User Exch. rate Financia l trans. User prof. Sys. config. Entry Exit Read Write CFP Login validation R 1 1 1 0 3 User profile loading R 1 1 1 0 3 Exchange rates loading R/W 1 1 1 1 4 Buying or Selling currencies R/W R R 1 1 3 1 6 Detailed exchange rate information loading R 1 1 1 0 3 .. TOTAL 37
  • 44. }盾 The International Software Benchmarking Standards Group uztur divus repozitorijus ar vsturiskiem projektu datiem }盾 Pa邸laik pieejama informcija par ~5600 projektiem }盾 Projektu dati pieejami par maksu
  • 45. CFP Planning (h) Analysis (h) Building (h) Testing (h) Deploying (h) 44 9 7 88 50 52 CFP Planning (h) Analysis (h) Building (h) Testing (h) Deploying(h) 37 7 6 74 42 44 Benchmarking jeb industrijas dati par projektu ar l朝dz朝gu CFP skaitu: Apr跳ina darbietilp朝bu savam projektam: Tlk, emot vr projekta uniklitti un izmaksu faktorus, preciz darbietilp朝bu. Piemram, par 20% palielina izstrdes (building) darbu, jo darbinieki ir iescji darb ar konkrto programm邸anas valodu.
  • 46. }盾 The COSMIC Functional Size Measurement Method Version 3.0.1 Measurement Manual (The COSMIC Implementation Guide for ISO/ IEC 19761: 2003), May 2009 VAI }盾 The COSMIC Functional Size Measurement Method Version 3.0 Method Overview, September 2007
  • 48. }盾 Spja (agile) pieeja darbietilp朝bas plno邸anai }盾 Darbietilp朝bas novrtjuma mrvien朝ba sare転庁朝t朝bas punkts }盾 Izmanto krtis uz kurm rakst朝ts punktu skaits }盾 Bie転k lietots skalas: Fibonai skait勅i - 0, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89 0, 遜, 1, 2, 3, 5, 8, 13, 20, 40, 100
  • 49. }盾 Komandas biedri sapulcjas un balso par katras funkcionls pras朝bas izteiktas lietotju ststa (user story) form relat朝vo sare転庁朝t朝bas pakpi, izmantojot krtis }盾 Katrs balso individuli (izvlas krti), bet visi balso vienlaic朝gi (atklj krti). Ja vrtjumi at邸跳iras, tad diskut un vienojas vai prbalso
  • 50. trums (velocity) = vien itercij realizto punktu skaits Darbietilp朝ba lietotju ststam = vidj sare転g朝t朝bas punkta darbietilp朝ba * punktu skaits