Estimointityökalut Pekka Forselius, Senior Advisor Finnish Software Measurement Association FiSMA ry 1
Työkalujen rooli ohjelmistotyössä A fool with a tool is still a fool! Ohjelmistotyökalujen käyttäminen edellyttää vastaavien menetelmien osaamista. Erityisen hyvin tämä pitää paikkansa estimointivälineiden osalta: helposti ja nopeasti ulos tupsahtavien lukujen järkevyys on osattava kyseenalaistaa. Yleinen suositus on että arviot tehtäisiin aina vähintään kahdella eri menetelmällä. Lähde: Bundschuh, Dekkers,2008 2
Estimointityökalut ohjelmistotyössä Taxonomy of Software Tool Classes (Caper Jones, 1998) Estimointi aloitetaan usein jo ennen projektia ja tarkennetaan toimituksen edetessä läpi koko elinkaaren. 3
Estimointityökalujen vahvuudet Arvoinnissa käytettyjen parametrien aikainen dokumentointi Läpinäkyvyys ja johdonmukaisuus estimoinnissa Standardien hyödyntäminen Monimutkaisuuden hallinta Mahdolliset lähtötiedot projektisuunnittelulle: kokonaislaajuus, elinkaarimallin mukaiset tehtävät ja vaiheet, luokitteluja, resurssitarve, aikatauluehdotus, jne.. Lähde: Bundschuh, Dekkers, 2008 4
Estimointityökalun rakennemalli Skill WBS Sizing Personnel Process Environment Technology PM-System E A f ( x1, x2,...) Project-DB Time Schedule(s) Effort estimate (E) Metrics Source: Marketing materials for SPR s KnowledgePLAN 5
NorthernSCOPE estimointiprosessi Projektikohtainen tilannekerroin (0,5 2,5) Projektikohtainen uudelleenkäyttökerroin (0,7 1,5) Työmäärän arviointi mallina. D voisi olla myös kustannukset, hinta, projektin kesto Ohjelmiston toiminnallinen laajuus (FP) B C Saman tyyppisten projektien tuottoaste (h/fp) A Arviointiprosessi A * B * C * D D syöte Työmääräarvio (h) prosessi tulos 6
Estimointiprosessin parantaminen Goals for PI? -more accurate -faster -easier to upgrade, and so on Estimation process owner? Top management connection? Memberships in UG and SIG? Support and training? etc... Functional size measurement Effort measurement rules Classification rules Situation analysis method etc... Experience Service KnowledgePlan ISBSG tools Charismatek ESP etc... 7
Hyvän estimaatin tunnusmerkit Paras arvio on sellainen, jota niin työn teettäjä kuin tekijäkin pitävät realistisena ja voivat sitoutua siihen. Hyvää arviota pitää pystyä muuttamaan ja täsmentämään toistuvasti, erityisesti ketterässä kehittämisessä. Paras arvio on mieluummin arvoväli (mintod.näk-max), ei yksittäinen, täsmällinen arvo. Hyvän arvion perusteet on dokumentoitu. 8
Case FiSMAn Supernopea toimintopistemittaaminen ja projektien työmäärän arviointi, kesä 2013 22 osallistujaa kolmessa eri ryhmässä, lähes kaikki sertifioituja Scope Managereita, joille laskennassa käytetty Experience Service ensi kertaa käytössä (p.l. kolme pilot-käyttäjää). Viidelle ohjelmistoprojektille ensin toimintopisteiden laskeminen ja sen jälkeen työmääräarvioksi täydentäminen. Erilliset tehtävänannot vaiheisiin. Tarkkuus ja nopeus ovat olleet kiitettävällä tasolla! 9
Lähteitä Bundschuh, Dekkers: The IT Measurement Compendium, s.547-586, Tools for Estimation, Springer, 2008 Capers Jones: Analyzing the Tools of Software Engineering, February 1998 www.isbsg.org www.4sumpartners.com https://sw.thecsiac.com/databases/url/key/4/152 www.fisma.fi 10
Kiitos! Estimointityökalut ovat hyödyllisiä osaavissa käsissä, mutta parhaimmillaankin ne tuottavat vain niin hyvän estimaatin kuin lähtöaineisto sallii. Terve järki mukana niin hyvä tulee! pekka.forselius@fisma.fi 11