Szoftver mértékek Szoftver mérték: –A fejlesztési folyamat mérése –Végtermék mérése (termék mérték) Termék mérték: –Külső mértékek: Megbízhatósági mértékek.

Slides:



Advertisements
Hasonló előadás
Definíciók: Algoritmus: bármely véges sok lépéssel leírható tevékenység. Olyan pontos előírás, amely megmondja, hogy egy adott típushoz tartozó feladat.
Advertisements

Összefoglalás Hardver,szoftver,perifériák Memóriák fajtái
Algoritmusok.
Algoritmusleíró eszközök
Valós idejű tesztlefedettség- monitorozás JEE környezetben Dr. Ferenc Rudolf, Szegedi Tudományegyetem Bakota Tibor, FrontEndART Szoftver Kft.
A szoftver minősége A szoftverfejlesztési folyamat azt igényli, hogy a fejlesztők és felhasználók ugyanazokat a minőségi jellemzőket használják a szoftver.
Partner kiválasztási feladat modellezése Virtuális vállalat 8. gyakorlat Dr. Kulcsár Gyula.
Minőségbiztosítási terv
Szoftverminőség monitorozás forráskód alapján
Determinisztikus programok. Szintaxis: X : Pvalt program változók E : Kifkifejezések B : Lkiflogikai kifejezések C : Utsutasítások.
A szakképzési rendszer modellje. 1. sz.m.2. sz.m.3. sz.m. 4. sz.m.5. sz.m. 6. sz.m. Kötelező szakmai tantárgyak Tantárgyi vizsgák Választható szakmai.
3. előadás (2005. március 1.) Utasítások, tömbök
Illeszkedési mátrix Villamosságtani szempontból legfontosabb mátrixreprezentáció. Legyen G egy irányított gráf, n ponton e éllel. Az n x e –es B(G) mátrixot.
Benczúr Zsolt VBA gyorstalpaló Benczúr Zsolt
Térinformatikai elemzések. Megválaszolható kérdések Pozíció - mi van egy adott helyen Feltétel - hol vannak …? Trendek - mi változott meg? Minta - milyen.
Szoftver minőség és menedzsment Mérés és elemzés Sziládi Zoltán.
Trendek a szoftveriparban: e-business és e-development Csontos Péter IQSOFT Rational e-development szakmai nap 2000 február 16.
Programozás alapjai.
Programozási nyelvek.
Szoftverparadigmák és metrikák
C A C nyelv utasításai. Ismétlés Utasítások csoportosítása.
Szoftver bonyolultsági mértékek alkalmazási területei Király Roland 2011.
Java programozási nyelv 2. rész – Vezérlő szerkezetek
Fordítóprogramok FORD01 Programozó matematikus III. évf. Miskolci Egyetem 1 Fordítóprogramok 1.5 Programozó matematikus szak 2003/2004-es tanév II. félév.
55 kodosszeg FIZETÉS felvitel JUTALOM felvitel 11-es dolgozó kap 200-at 11-es dolgozó kap 50-et SELECT osszeg INTO x FROM d.
IRE 4 /32/ 1 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – I ntelligens R endszerek E lmélete 4.
C++ Alapok, első óra Elemi típusok Vezérlési szerkezetek
Funkciópont elemzés: elmélet és gyakorlat
2. előadás Programegység, fordítási egység, könyvtári egység, beágyazás, blokkszerkezet, alprogramok, csomagok.
Megvalósíthatóság és költségelemzés Készítette: Horváth László Kádár Zsolt.
ISZAM III.évf. részére Bunkóczi László
TÉTELEK Info_tech_2012. Simon Béláné. 1. TÉTEL 1.a. A digitális számítógép és a logikai áramkör kapcsolata (6.4.1.) 1.b. Az ÉS logikai áramkörnek adja.
A website teljesítményének vizsgálata, fejlesztése 1. Forrás: WebTrends Analysis Suite, Advanced Edition White Paper (
Vezérlési szerkezetek: elágazások, ciklusok
Magas szintű hardware szintézis
Programtesztelés. Hibák keletkezésének okai nem egyértelmű vagy hiányos kommunikáció fejlesztés közben maga a szoftver bonyolultsága programozói (kódolási)
Minőségtechnikák I. (Megbízhatóság)
Érzékenységvizsgálat a determinisztikus modell
1 Hernyák Zoltán Web: Magasszintű Programozási Nyelvek I. Eszterházy.
Fák.
Java programozási nyelv Vezérlési szerkezetek
Termelő-fogysztó modell. A probléma absztrakt megfogalmazása: informális leírás. Adott egy N elemű közösen használt tároló, N  1. Adott a folyamatoknak.
Refaktoring projekt az InfoPólus klaszterben GOP Nagy Csaba - Refactoring 2011 Kft.
„Ágazati felkészítés a hazai ELI projekttel összefüggő képzési és K+F feladatokra" Adatbiztonság a méréstechnológiában képzők képzése.
Programozás, programtervezés
Török Katalin és Marosi Nóra 11/c. Pascal: Az es években megjelent magas szintű programozási nyelv, közel áll az emberi gondolkodáshoz. Nevét.
Mintapélda Készítsünk programot, amely beolvas egy egész számot, és eldönti arról, hogy prímszám-e. Készítsünk programot, amely beolvas egy egész számot,
Nat Pedellus Free Pascal Elágazások..
1 Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék P2P protokollok és autonóm számítástechnika: szemelvények.
Algoritmizálás, adatmodellezés
Kiterjesztések szemantikája: Szemantikai tartomány : Adatoknak, vagy értékeknek egy nem üres halmazát szemantikai tartománynak nevezzük. Jelölése: D. Egy.
PIC mikrokontroller.
Reverse Engineering Rendszerfejlesztés II. 2. óra.
TÁMOP /1-2F JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam Utasítás és blokk. Elágazás típusai, alkalmazása Kovács.
Az Erős Perfekt Gráf Tétel
UNIVERSITAS SCIENTIARUM SZEGEDIENSIS SZEGEDI TUDOMÁNYEGYETEM S zoftverfejlesztés Tanszék Programrendszerek tanúsítása – szoftverminőség mérése Dr. Gyimóthy.
A szoftver mint komplex rendszer A fejlesztési módszertanok általános céljai: Összetett problémák kezelhetővé tétele A fejlesztési és megtérülési jellemzők.
Pedagógiai hozzáadott érték „Őrült beszéd, de van benne rendszer” Nahalka István
Script nyelvek előadás
Script nyelvek előadás
Script nyelvek előadás
Java Code Coverage Library
Példa: Dinteger = {..., -1,0,1,...}; Dboolean = {true, false};
Bevezetés a programozásba Algoritmikus gondolkodás
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
Kódduplikációk a forráskódban
Dijkstra algoritmusa: legrövidebb utak
Dijkstra algoritmusa: legrövidebb utak
Informatikai gyakorlatok 11. évfolyam
Strukturált és nem strukturált programok
Előadás másolata:

Szoftver mértékek Szoftver mérték: –A fejlesztési folyamat mérése –Végtermék mérése (termék mérték) Termék mérték: –Külső mértékek: Megbízhatósági mértékek Funkcionalitási mértékek Teljesítmény mértékek –Belső termék mértékek: Méret Bonyolultság Stílus

Projekt metrikák Fejlesztés költsége (cost) Szükséges kifejtendő erőfeszítés (effort) Projekt előrehaladása (advancement) Fejlesztés megbízhatósága (process reliability) A termék újrafelhasználhatósága alapján (reuse)

Méret metrikák Méret metrikák: –Nagyságrendi becslés –LOC –eLOC Derivátumok –Szavak –Utasítások –Alprogramok –Modulok –Forrásfájlok

McCabe Thomas J. McCabe –FORTRAN programok –Tesztelhetőség –Modularizáció –IBM javaslat: Max 50 sor 25 IF THEN 33.5 millió független végrehajtási ág –Kód tesztelési költsége –Független vezérlési utak száma (Basic path)

McCabe II. Control graph A szekvenciákat egyetlen csomópontba fogja V(G) = e – n + 2p ahol n csomópont, e él, p komponens Tétel: erősen összefüggő gráfban a lineárisan független körök száma V(G)

McCabe példák. a b e c d f V(G) = e – n + 2p = = 5

McCabe példák. Szekvencia, v = = 1 Elágazás, v = = 2 While, v = = 2

McCabe III. Additív Összefüggő gráfokra: V(G) = pred + 1 Tulajdonságok: V(G) >= 1 Alprogramhívások hozzá vétele nem befolyásolja V(G) == 1 acsa G-ben 1 út létezik G kiegészítése (csak) egy éllel növeli V(G)-t

Mi predikátum? IF c1>0 AND c2<5 THEN if ( x[f(i)] < 0 ) switch(i) { case 1: aa(); bb(); break; case 2: cc(); dd(); default: ee(); }

McCabe IV. Ajánlás: kódhossz helyett a ciklomatikus bonyolultság <10 Kivétel: case Jó stílusú programozók eleve 3 és 7 között Mások gyakran Strukturált programok: Knuth mellett érvel, a goto esetenként megengedhető

Beágyazás James W. Howatt, Albert L. Baker Rigorous Definition and Analysis of Program Complexity Measures: An Example Using Nesting Beágyazási mélység nem csak strukturált programokra –Elméleti start és végpont (többszöri be és kilépési pont) –Predikátum csomópont hatóköre (scope) –Csomópont predikáló halmaza (predicate set) –ND(G) = a gráf beágyazási mélysége –SN(G) = N + ND(G)

Halstead-mérték. Maurice Halstead Software –science metrics: length and volume Különböző metrikák vektora –Programszótár –Programhossz –Program tárhely mérete –Szükséges erőfeszítés –Fejlesztési idő

Halstead-mérték. N1 operátorok összes száma N2 operandusok összes száma n1 az egyedi operátorok száma n2 az egyedi operandusok száma Programszótár –n = n1 + n2 Programhossz –N = N1 + N2 – n1 log 2 n1 + n2 log 2 n2 –Ezt már előre tudjuk becsülni

Halstead-mérték. Program tárhely mérete (volume) –V = N log 2 n Kapcsolat a program absztrakciós szintje (L) és V között –V * = LV = konstans –L = V * / V Szükséges erőfeszítés (effort) –E = V / L = V 2 / V *

Információ-áramlás metrikák Sallie Henry és Dennis Kafura 1981 Információ-áramlás –A hívja B-t (paraméterátadással) –B visszatér értékkel, amit A felhasznál –B output változót használ Programméret: LOC vagy eLOC Fan-in: belépő információáramlás + érintett adatszerkezet Fan-out: kilépő információáramlás + érintett adatszerkezet C = méret * (fan-in + fan-out) 2

Információ-áramlás metrikák II. Nem csak paraméterek, figyelembe kell venni a globális változókat is Elegendőnek találták a modulok közötti kapcsolatokat Ha nincsen információ-áramlás, akkor c == 0 Javítás: vezérlésátadás, mint implicit információáramlás Alprogram mérete elhagyható lenne…