Szoftver-mérés. Szoftver metrikák. Szoftver mérés

Hasonló dokumentumok
A minőségbiztosítás informatikája Gégény Dávid - KHIWFS

Szoftvermérés:hogyan lehet a szoftvertermék vagy a szoftverfolyamat valamely jellemzőjéből numerikus értéket előállítani.

Szoftver tesztelés a gyakorlatban 2

Teljesítmény Mérés. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Teljesítmény Mérés / 20

Szoftverminőségbiztosítás

A szoftverfejlesztés eszközei

SZOFTVER- MINŐSÉGBIZTOSÍTÁS

Széchenyi István Szakképző Iskola

Programrendszerek tanúsítása szoftverminőség mérése

2. Szoftver minőségbiztosítás

Unit Teszt. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Unit Teszt / 22

Oktatási segédlet 2014

4. Programozási nyelvek osztályozása. Amatőr és professzionális

Szoftver újrafelhasználás

Bonyolultsági. mértékek erlang programokhoz. Király Roland

Szoftverminőségbiztosítás

A TESZTELÉS ALAPJAI MIÉRT SZÜKSÉGES A TESZTELÉS? MI A TESZTELÉS? ÁLTALÁNOS TESZTELÉSI ALAPELVEK

A szoftver-folyamat. Szoftver életciklus modellek. Szoftver-technológia I. Irodalom

Szoftver-technológia II. Szoftver újrafelhasználás. (Software reuse) Irodalom

Funkciópont elemzés: elmélet és gyakorlat

Történeti áttekintés

Szoftver-technológia I.

Formális módszerek GM_IN003_1 Bevezetés

Kód átvizsgálás. Irodalom. (Code review) code review,smart Bear Inc., ! Jason Cohen: Best kept secrets of peer

Információtartalom vázlata

Algoritmizálás és adatmodellezés tanítása 1. előadás

Digitális tananyag, e-learning, különbségek, definíciók

1. Melyik szabvány foglalkozik dokumentumok tulajdonságainak megfogalmazásával? a. RDFS b. FOAF c. Dublin Core d. DBPedia

Szoftvertechnológia ellenőrző kérdések 2005

Szoftver-technológia II. Modulok és OOP. Irodalom

S z á m í t ó g é p e s a l a p i s m e r e t e k

Szoftverminőségbiztosítás

Programfejlesztési Modellek

MŰSZAKI TESZTTERVEZÉSI TECHNIKÁK STRUKTÚRA ALAPÚ, VAGY FEHÉRDOBOZ TECHNIKÁK TAPASZTALAT ALAPÚ TECHNIKÁK

Java programozási nyelv

Informatika E FAKT , = ±

Megoldások a mintavizsga kérdések a VIMIAC04 tárgy ellenőrzési technikák részéhez kapcsolódóan (2017. május)

Miért van szükség fordítóprogramokra? Fordítóprogramok célja és szerkezete. Miért van szükség fordítóprogramokra?

Szoftver min ség és menedzsment -12. Mérési alapfogalmak. Mérés 2002 / Mérési alapfogalmak. Dr. Balla Katalin

Szakmai program 2015

Szoftver min ség és menedzsment

Szoftver architektúra, Architektúrális tervezés

Rendszer-modellezés, modellezési technikák

Miskolci Egyetem Alkalmazott Informatikai Intézeti Tanszék A minőségbiztosítás informatikája. Készítette: Urbán Norbert

Szkriptnyelvek. 1. UNIX shell

Szoftver metrika Eclipse-plugin KÉSZÍTETTE: BARTA JÁNOS (SS4TCD)

Imperatív programozás

Soft. Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem. Software minőség menedzsment. ftware minőség menedzsment

Programtervezés. Dr. Iványi Péter

2.1.A SZOFTVERFEJLESZTÉS STRUKTÚRÁJA

Mechatronika és mikroszámítógépek 2017/2018 I. félév. Bevezetés a C nyelvbe

Szoftver-technológia II. Architektúrák dokumentálása UML-lel. Irodalom. Szoftver-technológia II.

Programozási nyelvek II. JAVA

Digitális technika VIMIAA01 9. hét Fehér Béla BME MIT

Digitális technika VIMIAA01 9. hét

A szoftverfejlesztés eszközei

Web-fejlesztés NGM_IN002_1

II. rész: a rendszer felülvizsgálati stratégia kidolgozását támogató funkciói. Tóth László, Lenkeyné Biró Gyöngyvér, Kuczogi László

1. Bevezetés A C++ nem objektumorientált újdonságai 3

Projectvezetők képességei

A Python programozási nyelv

ESZKÖZTÁMOGATÁS A TESZTELÉSBEN

Programozási nyelvek (ADA)

Verifikáció és validáció Általános bevezető

A szoftver-folyamat. Szoftver életciklus modellek. Szoftver-technológia I. Irodalom

Szoftverminőségbiztosítás

Bevezetés az SPSS program használatába

BASH script programozás II. Vezérlési szerkezetek

Általános információk

Univerzális szekrénybe szerelhet eszközök

C programozás. 1 óra Bevezetés

Bánsághi Anna 2014 Bánsághi Anna 1 of 31

Matematika. Specializáció évfolyam

Rendszer-modellezés, modellezési technikák

Soft. Tartalom. A software minőség menedzsment

Függvények. Programozás I. Hatwágner F. Miklós november 16. Széchenyi István Egyetem, Gy r

Irányítástechnika Elıadás. PLC-k programozása

Funkcionális és logikai programozás. { Márton Gyöngyvér, 2012} { Sapientia, Erdélyi Magyar Tudományegyetem }

1. Alapok. Programozás II

Dinamikus terhelés hatására létrejövő deformáció mérése. Dr. Siki Zoltán Moka Dániel BME Általános- és Felsőgeodézia tanszék

Kompetens szoftvertesztelés a gyakorlatban II. zárthelyi dolgozat

Tesztelés fázisai. Passed Informatikai Kft december 4

Alkalmazások biztonsága

Mintavétel fogalmai STATISZTIKA, BIOMETRIA. Mintavételi hiba. Statisztikai adatgyűjtés. Nem véletlenen alapuló kiválasztás

Mérnöki Optimálás Példatár

DW 9. előadás DW tervezése, DW-projekt

2011. ÓE BGK Galla Jánosné,

Funkciópont elemzés: elmélet és gyakorlat. Információrendszer fejlesztés módszertana, Dr. Molnár Bálint egyetemi docens

INFORMATIKAI RENDSZEREK MEGBÍZHATÓSÁGÁNAK MATEMATIKAI MODELLEZÉSE. Kun István

TESZTMENEDZSMENT TESZTELŐ SZERVEZET TESZTTERVEZÉS ÉS BECSLÉS

Az iskolai rendszerű képzésben az összefüggő szakmai gyakorlat időtartama. 10. évfolyam Adatbázis- és szoftverfejlesztés gyakorlat 50 óra

Webprogramozás szakkör

Az ökoturisztikai létesítmények fejlesztési lehetőségei. Budapest, június 12. Bozzay Andrásné szakmai főtanácsadó

Komponens alapú fejlesztés

A félév során előkerülő témakörök

Funkciópont elemzés: elmélet és gyakorlat. Információrendszer fejlesztés módszertana, Dr. Molnár Bálint egyetemi docens

Planning and Design of Information Systems. André Blokdijk, Paul Blokdijk ACADEMIC PRESS, 1987.

Struktúra alapú teszttervezési módszerek

Megszületett a digitális minőségügyi szakember? XXIV. Nemzeti Minőségügyi Konferencia

8.3. AZ ASIC TESZTELÉSE

Átírás:

Szoftver-mérés Szoftver metrikák Szoftver mérés Szoftver jellemz! megadása numerikus értékkel Technikák, termékek, folyamatok objektív összehasonlítása Mér! szoftverek, programok CASE eszközök Kevés szabványos megoldás 2

Mértékek Mérési folyamat objektumok, tulajdonságok, értékek, relációk Mérési skálák névleges sorrendi intervallum arány 3 Szoftver metrika (mérték) Szoftver és szoftver-folyamat számszer"sítése Felhasználás Termék jellemz!k el!rejelzése Szoftver-folyamat szabályozása Általános el!rejelzések vagy anomáliák azonosítása 4

Prediktor és ellen!rz! metrikák Szoftverfolyamat Szoftver termék Ellen!rz! mérések Predikciós mérések Menedzsment döntések 5 Feltételezések A szoftver egy adott tulajdonsága mérhet! Összefüggések vannak a mérhet! és a szoftver folyamat számára érdekes dolgok között Küls! jellemz!k mérhet!k, de bels! jellemz! érdekes Ezek az összefüggések formalizálhatók 6

Bels! és küls! jellemz!k eljárás paramétereinek száma Karbantarthatóság ciklomatikus komplexitás Megbízhatóság program méret kódsorokban Hordozhatóság hibaüzenetek száma Használhatóság kézikönyv hossza 7 A mérési eljárás A mérési eljárás a min!ségbiztosítási folyamat része Az adatok szervezési er!forrásnak tekintend!k Mérési adatbázisok -> összehasonlítások végezhet!k 8

Termék mérési folyamat Mérési eljárás kiválasztása Értékelend! komponens kiválasztása A komponens jellemz!jének mérése Mérési anomáliák azonosítása Eltérések elemzése 9 Adatgy"jtés Adatok közvetlen, automatikus meghatározása Három adatgy"jtési technika statikus elemzés forráskód dinamikus termék tesztelés folyamat adatok elemzése 10

Termék metrikák Statikus metrikák komplexitás, érthet!ség, karbantarthatóság indirekt kapcsolat Dinamikus metrikák hatékonyság (teljesítmény), megbízhatóság közvetlen kapcsolat 11 Szoftver metrikák Méret Kód hosszúság Újrafelhasználás Funkcionalitás (funkc. pontok, objektumok száma) Szerkezet Vezérlésfolyam McCabe ciklomatikus komplexitás Csomó mérték Adatfolyam Vegyes Információ áramlási komplexitás (Kafura & Henry) Adat szerkezetek 12

Kódsorok száma Mennyi kód van egy sorban? Melyik programok tartoznak a vizsgált a rendszerhez? Alternatívák tárgykód utasítások száma 13 Funkciópontok Több típus alkalmazás, fejlesztési, tovább fejlesztési Lehatárolás Tranzakciós funkciók azonosítása Funkciók értékelése VAF-ok meghatározása Funkciópont meghatározása 14

Funkciópontok Meghatározó komponensek Rekord elemek File típus referenciák Adatelem típusok Értékelés komplexitás alapján FP=UAF*VAF Kidolgozott rendszer GUI szoftverekre és webalkalmazásokra is 15 Funkciópontok és programozási nyelvek Prog. nyelv Assembly C COBOL FORTRAN Pascal C++ Ada VB SQL Sor/FP 320 128 106 106 90 64 53 32 12 16

Fan-in/ fan-out Fan-in hívó modulok száma csatolás foka Fan-out modul általhívott más modulok száma vezérlési komplexitás 17 Henry és Kafura mérték Complexity = Length x (Fan-in x Fan-out) 2 Vegyes csatolási metrika vezérlés és adatcsatolás 18

Card és Glass metrikák Structural Complexity: S(i) = f 2 out (i) Data Complexity: D(i) = v(i) / ( f out (i) + 1 ) v(i) i/o paraméterek száma System Complexity: C(i) = S(i) + D(i) 19 Ciklomatikus komplexitás Vezérlés folyam bonyolultsága elágazások, ciklusok lineárisan független utak száma egy program modulban V(G)=e-n+p e élek n csomópontok p komponensek V(G)=P+1 P predikátum csomópont két lehetséges kimenettel 20

Ciklomatikus komplexitás (pl.) A A 1 2 B 5 6 D B D 3 4 E 7 8 E C F C F 9 10 G G 21 Ciklomatikus komplexitás (folyt.) er!s korreláció a metrika és a hibák gyakorisága között kockázat (risk) becslés program érthet!sége karbantartás, módosítás tesztelhet!ség 22

Ciklomatikus komplexitás (folyt.) Ciklomatikus komplexitás Kockázat 1-10 Egyszer! program 11-20 Komplex program, mérsékelt kockázat 21-50 Komplex, magas kockázat 50- Tesztelhetetlen program 23 Esszenciális komplexitás kondenzációs gráf komplexitása struktúrált programozás szekvencia if-then if-then-else case el!l tesztel! ciklus hátul tesztel! ciklus 24

Halstead metrikák n1 - különböz! operátorok száma n2 - különböz! operandusok száma N1 - összes operátor el!fordulás N2 - összes operandus el!fordulás Hossz N = n1 log 2 n1 + n2 log 2 n2 Térfogat V = N log 2 (n1 + n2 ) Térfogat arány L = 2 / n1 * n2 / N2 25 Metrikák gy"jtése fejleszt! környezetekben Szoftver-folyamat adatok (fejlesztési id!k) Kód méret adatok Modul hívási gráf 26