szoftver min ség és menedzsment
TRANSCRIPT
Szoftver min ség és menedzsment -14. Funkciópont számolás
2001 / 2002 1
Szoftver min ség ésmenedzsment
14. Mérési módszerek
Dr. Balla Katalin
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 2
Tartalom
✔ Konkrét mérési módszerek– A Nasa SEL által alkalmazott metrikák
– A RUP mérésekre vonatkozó ajánlásai
✔ A termék komplexitásának egy mérési módja:funkciópont számolás– A funkciópont-számolás története
– A COSMIC módszer• a módszer lényege
• példa
• a módszer bevezetésének lehetsége egy szoftvercégnél
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 3
Példák: a NASA SEL mérésimódszere✔Mérési módszer:
– QIP, GQM, EF
– saját adatgyjtési formok, mechanizmusok
Szoftver min ség és menedzsment -14. Funkciópont számolás
2001 / 2002 2
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 4
Pl: A NASA SEL általalkalmazott alapmetrikák✔ Költség
– Jelentések száma
– teljes ráfordítás (effort)
– fejlesztési és karbantartási tevékenységenkénti ráfordítás
✔ Hibák– hibabejelentés és a hiba kijavításának dátuma
– a hiba megtalálására és kijavítására fordított energia (effort)
– a hibák forrás és típusa
✔ Folyamatok jellemz i– programozási nyelv
– a fontos folyamatok alkalmazása
– a mérési kísérletek céljai
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 5
Pl: A NASA SEL általalkalmazott alapmetrikák
✔ Projektek dinamikája– a követelmények változásának száma
– a kód változása
– a kód növekedése
– megjósolt jellemzk alakulása
✔ Projektek jellemz i– fejlesztéssel kapcsolatos dátumok
– teljes ráfordítás
– termék mérete
– a komponensekkel kapcsolatos információk
– a szoftver milyen típusba sorolható(Software Measurement Guidebook, NASA, Software Engineering Laboratories, NASA-GB-001-94)
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 6
A RUP mérésekre vonatkozóajánlásai
✔Hangsúlyos mérési eljárások
✔Módszertani leírás
✔Metrika-gy jtemény
✔Eszköz-támogatás
Szoftver min ség és menedzsment -14. Funkciópont számolás
2001 / 2002 3
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 7
A RUP mérésekre vonatkozóajánlásai
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 8
A RUP mérésekre vonatkozóajánlásai
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 9
A RUP mérésekre vonatkozóajánlásai
Szoftver min ség és menedzsment -14. Funkciópont számolás
2001 / 2002 4
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 10
A RUP mérésekre vonatkozóajánlásai
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 11
A RUP mérésekre vonatkozóajánlásai
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 12
A RUP mérésekre vonatkozóajánlásai
Szoftver min ség és menedzsment -14. Funkciópont számolás
2001 / 2002 5
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 13
A RUP mérésekre vonatkozóajánlásai
✔Eszközök
✔ClearQuest
✔ClearCase
✔RequisitePro
✔Project Console✔ http://www.rational.com/products/projectconsole/index.jsp
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 14
A termék mérésének egy módja
✔Funkciópont számolás
✔„Régi” ötlet, különböz „ruhákban”
✔A Cosmic módszer
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 15
Funkciópont számolás✔ Kifejlesztésének célja: különböz technológiákkal történ
szoftverfejlesztések hatékonyságának összehasonlítása
✔ Albrecht céljai a funkciópont számolással:– a szoftver méretének következetes mértéke legyen
– legyen független a fejlesztésben alkalmazott technológiától
– alkalmazása legyen egyszer, eredménye sokatmondó avégfelhasználónak (is)
✔ Kés bb rájöttek, hogy a módszer jól alkalmazható aspecifikáció alapján történ becsléskor
(Forrás: Charles Symons: Come back Function Point Analysis (Modernised)- all is Forgiven!Software Measurement Services10th May 2001, FESMA Conference )
Szoftver min ség és menedzsment -14. Funkciópont számolás
2001 / 2002 6
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 16
Albrecht funkciópont modellje
✔1970-b l
Bizonyos jellemz ket figyelünk, és 0-5 között súlyozzuk jelenlétüket, jelentségüket.
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 17
A funkciópont-számolás„hullámzása”
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 18
A funkciópont számolásalkalmazásának problémái
✔ A funkciópont számolásra vonatkozó mérési program kidolgozása ésfenntartása nehezebbnek bizonyult a tervezettnél– az adatgyjtési ráfordítás „belefolyik” a projektekbe
– az adatok elemzése nehéz, kevés a jó eredmény
– a mérési programokat folyamatosan átszervezik, csökkentik a költségeiket, egyrekevesebb idben, külssökkel próbálják megoldani
✔ A számolási szabályok egyre bonyolódnak
✔ Egyre kevesebbet mond a számolás eredménye
✔ Kritikák az akadémiai szférából
✔ Sokfajta funkciópont számolási modell-változat
✔ A számolások eredményei túlságosan felduzzadnak, irrelevánssá válnak
✔ Új típusú technológiák megjelenése, amelyeknél nehéz a módszertalkalmazni
✔ ...
Szoftver min ség és menedzsment -14. Funkciópont számolás
2001 / 2002 7
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 19
Különböz típusú szoftverek
MIS: Management információs rendszerek
MIS Beépített vagy valós idej szoftver
Rendszerszoftver
Utility Felh.i eszközök
Fejleszt -eszközök
Felhasználók
„Alkalmazások”
Infrastruktúra{
… mindegyiket „meg kell számolni”!
•A funkciópont számolásban rendelkezésre álló tapasztalat99%-a üzleti alkalmazásokból származik
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 20
A funkciópont számolás✔ … lehet ségként fennmaradt
✔ A mérés minden „divatos „ modellben fontos!
✔ A szoftveriparnak szüksége van valamilyenmódszerre, amely a szoftvertermék funkcionálisméretét határozza meg
✔ Ilyen módszert használhatnának…– a követelményelemzést végzk
– a becslést végzk
– projektvezetk
– befektetk
– a szoftverfolyamat javításával foglalkozók
– ...
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 21
Hogyan használható a funkciópontszámolás?
Szoftver min ség és menedzsment -14. Funkciópont számolás
2001 / 2002 8
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 22
A funkciópont számolás
✔… legyen egyszer
✔… kapcsolódjék a cégek egyéb formábanmért adataihoz
✔… legyen nemzetközi
✔… kapcsolódjék jobban a (többi) szoftvermetrikához
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 23
A funkciópont számolásmódszerei
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 24
A funkciópont számolásmódszerei
✔ IFPUG: Albrecht módszere✔ Néha nehéz a komponenseket
meghatározni, nincsenek pontosdefiníciók
– pl. mit jelent „logikai file” az OOkörnyezetben?
– Hogyan kezeljük azokat a képernyket,amelyek inputot és outputot istartalmaznak?
– Bels komplexitás meghatározása nemdefiniált (u. az a komplexitása egyegyszer transzformációnak és egynagyon bonyolult folyamatnak is, mertcsak az I / O-t veszi figyelembe http://www.uksma.co.uk/html/ifpug.html
Szoftver min ség és menedzsment -14. Funkciópont számolás
2001 / 2002 9
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 25
A funkciópont számolásmódszerei
✔IFPUGJ legtöbbet használták, sok a tapasztalat, esettanulmány
Jnagy nemzetközi szervezeti háttér (képzés, konzultáció,certificate…)
Jadatfeldolgozó rendszerekben jól használható
Lvalós idej rendszereknél nem használható
Lcsak alkalmazás - típusú szoftverekre használható
La módszer struktúrája és a benne használt súlyozások(fontossági sorrendek) kérdéses
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 26
A funkciópont számolásmódszerei
✔A MKII módszer(http://www.uksma.co.uk/public/mkIIr131.pdf)
✔ A számolás (mérés) lépései a következk:
• .A számolási nézpont, cél és típus meghatározása
» Meg kell határozni, hogy mit fogunk számolni / mérni.
• .A számolás korlátainak meghatározása
» Meghatározzuk, hogy mi képezi a számolás tárgyát, és mi nem tartozik bele.
• .A logikai tranzakciók azonosítása
» A logikai tranzakciók a rendszer legalacsonyabb szint folyamatai (processzei),amelyek még beletartoznak a számolás területébe.
• Az entitások típusának meghatározása és besorolása
» Jó, ha van egy entity-relationship modell, amelynek alapján ezt azazonosítást és besorolást el lehet végezni.
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 27
A MKII módszer
✔ A számolás (mérés) lépései (folytatás):
• A bemen adat-elemek típusának, a meghivatkozott entitás típusoknakés a kimen adat-elemek típusának megszámolása
» Minden logikai tranzakció esetében meg kell határozni a bemen adat típusokat(Ni), a meghivatkozott entitás típusokat (Ne) és a kimen adat típusokat (No).
• A funkcionális méret kiszámolása
– A következ képlettel történik:
– FPI = Wi x ΣNi + We x ΣNe + Wo x ΣNo, ahol
– FPI = Function Point Index
– Wi, We és Wo az Ni, Ne és No értékek súlyozott átlaga, éspedig: Wi = 0.58, We =1.66 és Wo = 0.26.
Szoftver min ség és menedzsment -14. Funkciópont számolás
2001 / 2002 10
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 28
A MKII módszer
✔ A számolás (mérés) lépései (folytatás):
• A projekt ráfordításának meghatározása
» Határozzuk meg a teljes ráfordítást és az eltelt idt.
• A termelékenység és egyéb mutatók kiszámolása
» Példa: Termelékenység = FPI / projekt ráfordítás
✔ A módszer további opcionális lépésekkel folytatható.
✔ A leírás a különböz lépéseket tovább részletezi.
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 29
A funkciópont számolásmódszerei
✔MkIIJMenedzsment rendszerekre találták kis, és sokat is használták,
jól lehet becslésben alkalmazni
JAz IFPUG továbbfejlesztése, több adatot tartalmazórendszerre
JA struktúrált elemzési módszerekkel konzisztens
JAz életciklus korai fázisában alkalmazható
JNagy támogatottság, képzés, certificate…( de kevesebb azIFPUG-nál)
Lhasználták már valós idej rendszereknél, de ilyenkor át kellértelmezni
Lcsak alkalmazás - típusú szoftverekre használható
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 30
A funkciópont számolásmódszerei
✔A COSMIC módszer– 1998-tól indult a projekt
– jelenleg: kísérleti fázis és alkalmazás
– Nemzetközi projekt csapat (Kanada, UK, Japán,Németország, Vietnam, Olaszország, Ausztrália,Hollandia, Irország, Finnország)
– „full function points”
– http://www.cosmicon.com/
Szoftver min ség és menedzsment -14. Funkciópont számolás
2001 / 2002 11
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 31
A Cosmic módszer
✔A szoftver funkcionalitásának egyszermodelljén alapszik
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 32
A Cosmic módszer
✔Funkcionális processz (folyamat)– adatmozgások egyedi halmaza (unique set of data
movements: entry, exit, read, write)
– közvetlenül vagy közvetve egy aktor váltja ki, amely egy,a specifikáció szempontjait figyelembe véve továbboszthatatlan esemény-típus
– a funkcionális processz akkor befejezett, amikor mindentelvégzett, amit a kiváltó eseményre válaszként el kellettvégeznie
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 33
A Cosmic módszer
✔Méretezési szabályok– Egy funkcionális processz mérete
• az adatmozgások számának aritmetikai összege(bemenet, kimenet, írás, olvasás)
• minimális méret: 2
• maximális méret: nincs fels korlát
– Egy szoftverelem mérete a funkcionálisprocesszei méretének összege
Szoftver min ség és menedzsment -14. Funkciópont számolás
2001 / 2002 12
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 34
A Cosmic módszer
JEgyszer és egyértelm
JMinden típusú szoftverre alkalmazható (MIS és valósidej )
JTöbbréteg architektúrák bármely komponensénekesetében is alkalmazható
JHasználták már: az IBM-nél, OO fejlesztési projektekbecslésében, távközlésben, repülgép-iparban...
LKevesebb a tapasztalat, kevesebb esettanulmány
LKevésbé részletes számolási útmutatók
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 35
Cosmic, példa 1.Egyszer adatbázis-lekérdezés
Követelmény: meg kell tudni adni egy felhasználóazonosítóját, és a képernyn meg kell jelentetni az ahhoz afelhasználóhoz tartozó összes információt
Egy Entry a Felhasználói ID-re
Egy Read a Felhasználó -rekord megtalálására
Egy Exit a Felhasználó adatainak megjelenítésére
Egy Exit az összes lehetséges hiba- és jóváhagyási üzenetre
7HOMHV�PpUHW�����&IVX�gVV]HKDVRQOtWiV�,)38*���6LPSOH�(4�RI���8)3¶V��SOXV�DOORZDQFH�IRU�ILOHV0N,,�)3$�����[�LQSXW�'(7����[�(5��DVVXPH����RXWSXW�'(7¶V� �����)3�
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 36
Cosmic, példa 1.
✔Konvenciók:✔ A hiba- és jóváhagyási üzeneteknél:
– nem számolunk Read-et (az özenetek „a szoftverben” vannak)
– Egyetlen Exit-et számolunk az összes hiba- és jóváhagyó üzenetre
✔ A képerny n megjelen mez k heading-jéhez tartozóminden funkcionalitást az Exit adatmozgáshoz rendelünk
Szoftver min ség és menedzsment -14. Funkciópont számolás
2001 / 2002 13
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 37
Cosmic példa, 2.'DWD� ZDUHKRXVH� The software is required to hold data about allOrders which• have been sold and paid for• for every individual Product• over long a period of time.Each Order (for a single Product) has as attributes – Customer ID,Product ordered, quantity sold, date of the sale, ID of salesmanresponsible and actual sale price.
Each Product has a unique identifier, the first three characters ofwhich indicate the Product-Group to which the product-type belongs.
An example of a ‘Product’ would be an individual model (type) oftelevision set or videocassette recorder which a customer can order.An examples of a ‘Product-Group’ would be ‘all TV’s, or ‘all VCR’s’.
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 38
Cosmic példa, 23URGXFW5DQJH
3URGXFW�*URXS
3URGXFW
2UGHU
([DPSOH�,'���µ&79¶
$�XQLTXH�79�PRGHO�W\SH([DPSOH�,'��µ&79���¶
$�XQLTXH�RUGHU�IRU�DUWLFOHV�RI�D�VLQJOH�SURGXFW�W\SH
$WWULEXWHV��3URGXFW��TXDQWLW\�VROG��GDWH�RI�WKH�VDOH��,'�RIVDOHVPDQ�UHVSRQVLEOH��DFWXDO�VDOH�SULFH
Legel ször is készítsük el az adattárház adatmodelljét
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 39
Cosmic példa, 2
� (a) A functional process is required to produce a report whichwill show for each product its sales value (quantity x price) for allorders sold in a given period (specified by a start and end date,which must be entered).
The report should also show sub-totals of sales value for eachproduct group and the sales total for the overall product range.
Lekérdezés:
Szoftver min ség és menedzsment -14. Funkciópont számolás
2001 / 2002 14
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 40
Cosmic példa, 2:
4XHVWLRQ� How many ‘Data Movement (-types)’ arerepresented on this report?
6DOHV�5HSRUW��3HULRG�� 1 Jan 2000 – 30 Sept 2000
3URGXFW�*URXS���������������������3URGXFW �����������6DOHV�9DOXH����
CTV 123 5000
CTV 456 1000
CTV 789 2000
7RWDO &79 ����
VCR1 500
VCR2 300
7RWDO 9&5 ���
7RWDO�6DOHV�IRU�ZKROH�3URGXFW�5DQJH �����
the report layout
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 41
Cosmic példa, 2
One (QWU\ (start and end dates)
One 5HDG (Order object)
Three ([LWV (sales values of product, product group and forthe whole product range)
One ([LW (error/confirmation message, if specified)
7RWDO�6L]H����&IVX¶V
�&RPSDUH�,)38*���$YHUDJH�(2�RI���8)3¶V��SOXV�DOORZDQFH�IRU�ILOHV��"�0N,,�)3$�����[�LQSXW�'(7¶V����[�(5¶V����RXWSXW�'(7¶V� ������)3�
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 42
Cosmic- általános következtetések
•Ha a Cosmic módszerrel számolunk, nem kell ismernünk arészletes felhasználói dialógusokat
•A számolás menete:
•Határozzuk meg az egyedi Eseményt, ebbl pedig a funkcionális processztípusokat
•Minden funkcionális processz-típusra:
•határozzuk meg a sajátos objektum-típusokat, amelyekkelkapcsolatban az adatok a felhasználótól jönnek vagy a felhasználóhozkimennek (ezek lesznek az Entry-k és Exit-ek alapjai)
•határozzuk meg azokat az objektumokat, amelyekkel kapcsolatban azadatokat perzisztenssé kell tenni (Write-ok), vagy amelyekkelkapcsolatban az adatokat perzisztens tárból kell kinyerni (Read-ek)
Szoftver min ség és menedzsment -14. Funkciópont számolás
2001 / 2002 15
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 43
Mérési program egy cégnél
✔ Stratégiai döntés, ers vezeti támogatás
✔ Szervezet
✔ Képzés
✔ Célok (pl. GQM-mel meghatározva)- váltohatnak
✔ Mérési eljárások kialakítása
✔ Mérési eszközök, technikák
✔ Mérési adatok adatbázisa
✔ Folyamatos visszacsatolás, fejldés
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 44
Egy mérési program felhasználói
Mérési adatbázis
Eljárások & szabványok
felülvizsgálat
Mérési funkció
Ügyfelek
Fels vezetés
ProjektekAdatok
Információ
Információ
Információ
Adatok
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 45
Mérési adatok tárolása
,QLWLDOHVWLPDWLRQ
5H�HVWLPDWLRQ
3URMHFWFRPSOHWLRQ
6L]H &KDQJH&RQWURO
3URMHFWFRPSOHWLRQ
First effortEstimate
Revised effortEstimate
Actual effort
InitialSize
RevisedSize
FinalSize
0HWULFV�'DWDEDVH
Szoftver min ség és menedzsment -14. Funkciópont számolás
2001 / 2002 16
Dr. Balla Katalin Szoftver min ség és menedzsment - 14. 46
Mir l volt szó?
PMfolyamat
Term
ék
Definíció
Min ségi attribútum
Mér szám
Mszaki
folyamat