4ad2d287326365fd11eec4d010091fa2.ppt
- Количество слайдов: 44
A szoftver minőségéről… 2017 szeptember 4. Dr. Balla Katalin BME-IIT
Bemutatkozás Végzettség § § § § 1984: Matematika / Informatika, informatikus; Babeş-Bolyai Tudományegyetem (Kolozsvár) informatikus 2001: Ph. D. fokozat, Eindhoven-i Műszaki Egyetem fokozat 2007 -2013: Szakképzett CMMI, ISO, SPICE és Bootstrap auditor, „Certified SCAMPI LA for DEV auditor and SVC” 2013: CTFL 2014: TMMI Professional 2015: CTAL-Test Manager 2017: TMMI Accredited Lead Assessor Szakmai tapasztalat § 2004 -Budapesti Műszaki Egyetem, Irányítástechnika és Informatika Tanszék / www. iit. bme. hu jelenleg: docens § 2004 -SQI – Magyar Szoftverminőség Tanácsadó Intézet / www. sqi. hu / ügyvezető igazgató § 2007 - Magyar Szoftvertesztelői Tanács Egyesület / www. hstqb. com/ alapító tag, az Au. WG munkacsoport tagja az ISTQB-ben. 2007 - NAT- szakértő 1995 -2004 IQSOFT Rt. / IQSYS Rt: minőségirányítási igazgató 1995 - 2001 Eindhoven-i Műszaki Egyetem, Hollandia. Ph. D. kutató 1992 -1995 Budapesti Műszaki Egyetem, Ph. D. hallgató és IQSOFt Rt: részmunkaidős minőségügyi szakértő 1990 -1992: Bukarest, „A Hét” és Bukaresti Magyar Rádió – újságíró, szerkesztő, tudományos rovatvezető, 1984 -1990: Aranyosgyéresi Számítóközpont, programozó, szoftveres rendszermérnök 2 § § § A szoftver minősége
Hallgatóság A szoftver minősége 3
Miről lesz szó… § Bevezetés, történeti áttekintés § A szoftver minősége – Alapfogalmak, a minőség fogalmának időbeli változása § A szoftverminőség lehetséges megközelítései § Tesztelés és minőség kapcsolata § A minőség költsége § Lehetséges témák, elmélyítésre… Dr. Balla Katalin A szoftver minősége 44
A kezdetek és a múlt § „Szoftverfejlesztés” : megszületett Garmisch-ban, 1968 -ban. § § Report on a conference sponsored by the NATO SCIENCE COMMITTEE Garmisch, Germany, 7 th to 11 th October 1968 – 48 éves. § Az elmúlt 40 -50 évben a „szoftver” életünk igen fontos eleme lett § Nagyon gyors fejlődésen ment át! § A szoftver(fejlesztés) fejlődése erőteljesen befolyásolta az informatikától különböző tudományágakat, a művészetet … az egész életet! A szoftver minősége
A szoftverfejlesztés modellezése § Már korán elkezdődött § Többféleképpen is próbálkoztunk… §. . . aktuális tudásunkat tükrözve §. . . az aktuális eszközkészletet használva §. . . testre szabva §. . . teljességében §. . . részleteiben §. . . az aktuális pillanatban fontosnak vélt elemekre figyelve §. . . bizonyos elemeket részletezve §. . . és még tovább részletezve… §… A szoftver minősége
A szoftverfejlesztés modellezése A szoftver jó minősége mindig is fontos volt – ám nem egyértelműen meghatározható! § Talán ezért is… § „Mindent” modelleztek az elmúlt ~ 50 év során, ami szoftverfejlesztéssel kapcsolatos: § – – Terméket Folyamatokat Erőforrásokat Leírtak definíciókat, metrikákat…és még sok mást Forrás: A View of 20 th and 21 st Century Software Engineering Barry Boehm, ICSE 2006 Keynote Address, May 25, 2006 , http: //sunset. usc. edu © USC-CSE A szoftver minősége
A szoftverfejlesztés modellezése „Mindent” modelleztek az elmúlt 50 év során, folyamatokat nagy előszeretettel § § PM folyamatok Támogató folyamatok Szervezeti folyamatok Fejlesztési folyamatok ª Életciklus modellek A szoftver minősége
A szoftverfejlesztés modellezése (2) Boehm, B. (2006). A view of 20 th and 21 st century software engineering International conference on Software engineering (ICSE). http: //isr. uci. edu/icse-06/program/keynotes/boehm. html A szoftver minősége
A folyamatfejlesztési modellek folyamatai § Folyamatfejlesztési modellek § „Mindent” modelleznek – – PM folyamatok Támogató folyamatok Szervezeti folyamatok Fejlesztési folyamatok • Életciklus modellek – Követelményelemzés, tervezés, kódolás, tesztelés – VER, VAL, PI A szoftver minősége
A jelen § A szoftverfejlesztés modellezése folytatódik… – …újabb és újabb elemeket részletezve § A szoftverfejlesztési folyamat „eleje” és „veleje” egyre fontosabbá válik – Követelményfejlesztés - IREB – Tesztelés -ISTQB A szoftver minősége
A szoftver minősége § Változik a „korral” § Mindenkinek mást jelent… § Foglalkozni kell a szoftver minőséggel , mert a tapasztalat azt mutatja, hogy a szoftverben hibák vannak Dr. Balla Katalin A szoftver minősége 12
Miért vannak hibák a szoftverben? § Komplex feladatok elvégzésénél az emberek követnek el hibákat, ez elkerülhetetlen § Tapasztalt programozók átlagban minden 7 -10 forrássorban vétenek 1 hibát § Ezen hibák felét a gépnyelvre történő fordításkor kijavítják § A tesztelés során további hibák is kijavulnak, de a hibák 15%-a bent marad az ügyfélnek való átadáskor (Watts Humphrey: „What if your life depended on software? ”Előadás a 2000 -s Euro. SPI konferemcián, Koppenhága, 2000. április) Dr. Balla Katalin A szoftver minősége 13 13
Hibák a szoftverben § És mi van, ha a szoftver kritikus? Hány hiba lehet benne? • Attól függ… – – Dr. Balla Katalin … hogy milyen rendszerről van szó …hogy éppen ki „nézi” … hogy mennyi ideig kell a hibát keresni … hogy milyen gyorsan lehet a hibát kijavítani A szoftver minősége 14 14
Hibák a szoftverben Dr. Balla Katalin A szoftver minősége 15 15
Hibák a szoftverben § 1 hiba / KLOC: 1 hiba kb 30 db. A 4 oldalon (C++) § 100 hiba / MLOC: 1 hiba 300 oldalon § 10 hiba / MLOC: 1 hiba 3000 oldalon § 1 hiba / MLOC: 1 hiba 30 000 oldalon § … de tudjuk: a kezdet mindig kb. 1 hiba minden 7 - 10 forrássorban! § Nem elég a tesztelésre hagyatkozni! § Új hibaelkerülési módszerek, technikák Dr. Balla Katalin kellenek a megváltozott körülmények miatt! A szoftver minősége 16 16
Definíciók § Hogyan kezeljük ezeket a hibákat? § Hogyan közelítsünk a szoftverminőséghez? § Mi a szoftverminőség ? ? ? Dr. Balla Katalin A szoftver minősége 17 17
Minőség Q = Dr. Balla Katalin Átadandók Elvárások A szoftver minősége 18 18
Minőség Forrás: http: //online-behavior. com/cartoons/quality Dr. Balla Katalin A szoftver minősége 19
Mi a „szoftverminőség”? § A szoftver jó, ha … … időben elkészül … olcsó … azt csinálja, amit a felhasználó szeretne …a nap 24 órájában rendelkezésre áll … barátságos, könnyen tanulható … maximum 5 sec alatt mindig válaszol …kódja érthető, könnyen karbantartható …új környezetben könnyen telepíthető … Dr. Balla Katalin A szoftver minősége 20 20
Miért nehéz a szoftver minőségét meghatározni? – Nem egy és nem egyetemes… – Nem állandó, egy adott termék esetében sem… – Függ a konkrét helyzettől… Dr. Balla Katalin A szoftver minősége 21 21
Hogyan kezeljük a szoftverminőséget? § Minőségi profilt kell meghatározni minden esetben! – A minőségi profil kialakításakor ismerni kell a szoftverminőség fontos elemeit és a létező megközelítéseket – A szoftverminőségben érdekelt fél konkrét igényeinek megfelelő elemeket és megközelítéseket kell kiválasztani Dr. Balla Katalin A szoftver minősége 22 22
A szoftverfejlesztés modellezése GQM Jellemzők Mérőszám ISO 9001: 2015 CMM / CMMI SPICE (ISO 15504) Minőségi attribútum ASPICE, Medi. SPICE… Definíció Erőforrás Folyamat Termék A szoftver minősége ISO 12207 TSP, PSP Cobit, ITIL AQAP Objektumok So. X BS 7799 PM módszertanok Fejlesztési módszertanok Tesztelés 23 People CMM Weinberg. . .
A lényeges minőségi jellemzők kiválasztása Minőségi jellemzők Üzleti folyamat Vevő / felhasználó Lefordítási folyamat Minőségi profil Szoftver termék Dr. Balla Katalin A szoftver minősége 24
ISO-9126 / Termék functionality accuracy suitability interoperability compliance security reliability quality in use usability availability understandability learnability operability efficiency effectiveness productivity safety satisfaction time behaviour resource utilisation maintainability analysability changeability stability testability portability adaptability installability co-existence conformance replaceability A szoftver minősége 25
Minőségirányítási folyamat modell (ISO 9001) Minőségirányítási rendszer Folyamatos fejlesztés Vezetés felelőssége Vevő Mérés, elemzés, fejlesztés Erőforrás gazdálkodás Követelmények bemenet Termék, szolgáltatás előállítás kimenet A szoftver minősége Termék Elégedettség
Modell alapú szoftverfolyamat fejlesztés § A szoftvergyártás folyamatának bizonyos elemeire koncentrál, fejlődési irányt mutat, sok korábbi tapasztalatot használ fel. . . § Elvek: Crosby 1979, Juran 1988, Deming 1986, Humphrey 1989 § Már az 1980 -as években rájöttek, hogy vannak „érettebb” és „kevésbé érett” folyamatok. § Bizonyos kritériumok alapján vizsgálják a szervezetet és / vagy annak bizonyos vonatkozásait § A vizsgált területek jellemzői szerint a szervezetet / vizsgált folyamatot bizonyos érettségi szintre sorolják A szoftver minősége 27
5 Javításra felhasznált mennyiségi visszacsatolás Folyamat változás menedzsment Technológia változás menedzsment Hibamegelőzés 4 A hatékonyság, hatásosság, termelékenység és minőség mennyiségi biztosítása Termelékeny-ellenőrzés ség és ciklus idő javítása Szoftver minőség menedzsment Mennyiségi folyamat menedzsment Termelékenység és a ciklusidő javulása 3 2 1 A leghatékonyabb módszerek dokumentáltak és minden projektben használtak Kölcsönös szemlék Csoportok közötti koordináció Szoftver termék fejlesztés Integrált szoftver menedzsment Képzési terv Szervezeti szintű folyamatok meghatározása Odafigyelés a folyamatokra Hatékony módszerek léte Szoftver konfigurációkezelés Szoftver minőségbiztosítás Szoftver alvállalkozók kezelése Szoftver projekt követés & felügyelet Szoftver projekt tervezés Követelmények menedzsmentje A termékminőség lényeges javulása A projekt tervezés és vezetés megfelelő A projektek tipikusan átlépik az idő- és A szoftver minősége költségkeretet kockázat
SPICE modell / ISO 15504 Folyamatok képessége Processes Process capability levels 5. Optimizing 4. Predictable 3. Established • Customer-supplier 2. Managed • Engineering 1. Performed • Project • Support 0. Incomplete • Organization A szoftver minősége 29 /72
Variációk SPICE-ra http: //medispice. ning. com/ A szoftver minősége 30
A CMMI® modell § Capability Maturity Model Integration § http: //www. sei. cmu. edu/cmmi/ – Capability Maturity Model Integration, Version 1. 1. Continuous representation. Staged representation. December 2001. – Internet: http: //www. sei. cmu. edu/cmmi/products/ippd/modelcomponents-word. html – CMMI v 1. 3 – 2011. CMMI® for Development, Version 1. 3, CMMI-DEV, V 1. 3 Improving processes for developing better products and services November 2010, TECHNICAL REPORT A szoftver minősége 31
Érettségi szintek Maturity Level Lépcsős megjelenítés A folyamatok fejlesztése kap 5 – hangsúlyt. Optimalizáló A folyamatok mérésekkel 4 – alátámasztottak, Mennyiségileg A folyamatok aés szabályozottak. szervezethez menedzselt vannak 3 – Meghatározott A folyamatokésprojektekhez igazítva, a eredményesek. vannak igazítva, gyakran 2 – Menedzselt eredményesek. A folyamat ad hoc, kaotikus, rosszul irányított, 1 – Kezdeti eredménytelen. 0 – nincs Az érettségi szint a szervezet egészére vonatkozik. A szoftver minősége 32
A tesztelés § … minden esetben hibakeresést jelent § Cél, hogy a rendszerbe már bevitt hibákat minél előbb megtaláljuk és kijavítsuk § Ez költséges folyamat – a költséget fel kell vállalni! § De: – Segít a hibamegelőzés. Dr. Balla Katalin A szoftver minősége 33
Tesztelés és minőség kapcsolata § A szoftver minőségéről gyakran teszteléssel győződünk meg § De – A szoftver minőségét nem elég teszteléssel ellenőrízni! Dr. Balla Katalin A szoftver minősége 34
Tesztelés és minőség kapcsolata § A fontosnak ítélt minőségi attribútumok értékéről méréssel meg kell győződnünk – A mérés általában teszteléssel történik • …de mérhetjük az eltelt időt, a kifizetett pénzt, a felhasznált erőforrást, a hibák számát stb. is – Ezeket a méréseket nem tekintjük a klasszikus értelemben vett „tesztelésnek” – ezért az „általában” szó Dr. Balla Katalin A szoftver minősége 35
Hogyan biztosítható a szoftver minősége? § Folyamatos odafigyeléssel – Teszteléssel – Megfelelően kialakított, bevezetett és alkalmazott irányítási, fejlesztési, támogató folyamatokkal • A szoftverminőségi modellek, szabványok, módszertanok ezt támogatják • Tulajdonképpen a tesztelés is egy folyamat a szoftverfejlesztésben – – Megfelelő számú és megfelelően képzett emberekkel Megfelelő egyéb erőforrásokkal Folyamatos szemlékkel, ellenőrzéssel … Dr. Balla Katalin A szoftver minősége 36
A minőség költsége „ECL (economic conformance level): obtained where prevention and appraisal costs are equal to external and internal failure costs. ” Forrás: http: //maaw. info/Quality. Cost. Conformance. Model. htm Dr. Balla Katalin A szoftver minősége 37
A minőség költsége The Iceberg Model of Cost of Quality. Forrás: http: //www. isixsigma. com/implementation/financial-analysis/cost-quality-notonly-failure-costs/ Dr. Balla Katalin A szoftver minősége 38
Forrás: Reo, D. : The Balanced IT Scorecard. Quality of Strategy Vs. Strategy. Execution. In: Proceedings of Business Information Technology Management Conference, BITWorld 2001, Cairo, Egypt Reo, D. : Balanced IT Scorecard. ESI Commercial Network presentation. 2000. A szoftver minősége
Miért éri meg ez az egész? Dr. Balla Katalin A szoftver minősége 40
Miért éri meg ez az egész? Dr. Balla Katalin A szoftver minősége 41
Lehetséges témák, elmélyítésre § https: //www. iit. bme. hu/oktatas/onallo-laboratorium § Minőségi profilok kialakítása – Biztonságkritikus szoftverek – Orvosi szoftverek – Felhő alapú rendszerek § PSP, TSP § Új megközelítések, modellek értelmezése – ISO 25000 – ISO/IEC 33001: 2015 Information technology -- Process assessment § Tesztelés, tesztelési folyamat fejlesztése – TMMi, TPI Next… § Agilitás Dr. Balla Katalin A szoftver minősége 42
Miről volt szó… § Bevezetés, történeti áttekintés § A szoftver minősége – Alapfogalmak, a minőség fogalmának időbeli változása § A szoftverminőség lehetséges megközelítései § Tesztelés és minőség kapcsolata § A minőség költsége § Lehetséges témák, elmélyítésre… Dr. Balla Katalin A szoftver minősége 43
Köszönöm a figyelmet! balla@iit. bme. hu Dr. Balla Katalin A szoftver minősége 44
4ad2d287326365fd11eec4d010091fa2.ppt