Bánsághi Anna anna.bansaghi@mamikon.net. 1 of 67



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

Az interakció stílusai

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

Bevezetés a programozásba

Információtartalom vázlata

Szoftverminőségbiztosítás

Szoftver-ergonómiára vonatkozó szabvány, avagy ISO 9241

Czifra Sándor Lőrinczi Konrád. Videó vezérelt kurzusok készítése Moodle keretrendszerben

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

Felhasználói felületek. Felhasználói felületek. Felhasználói felületek

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

Miskolci Egyetem Általános Informatikai Tanszék

A tesztelés feladata. Verifikáció

Kinek szól a könyv? A könyv témája A könyv felépítése Mire van szükség a könyv használatához? A könyvben használt jelölések. 1. Mi a programozás?

OpenCL alapú eszközök verifikációja és validációja a gyakorlatban

A fejlesztési szabványok szerepe a szoftverellenőrzésben

Hatékony iteratív fejlesztési módszertan a gyakorlatban a RUP fejlesztési módszertanra építve

ESZKÖZTÁMOGATÁS A TESZTELÉSBEN

Mentális modell, metaforák és analógiák. A desktop metafora. Xerox Star GUI

Megújult az ARTISJUS Szerzői Információs Rendszere (SZIR) Online adatszolgáltatás szerzőknek bármikor, bárhonnan

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

MIÉRT KELL TESZTELNI?

Tesztelés az XP-ben Tesztelés az XP-ben. A tesztelés kulcsjellemzői:

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

ORVOSTECHNIKAI ESZKÖZÖK GYÁRTMÁNYFEJLESZTÉSE AKTÍV ORVOSI ESZKÖZÖK FEJLESZTÉSE - PEMS V&V

Operációs rendszerek. Tanmenet

Szoftverminőségbiztosítás

30 MB INFORMATIKAI PROJEKTELLENŐR

AZ INTEGRÁLT NYOMONKÖVETŐ RENDSZER BEMUTATÁSA (TÁMOP B) Kern Zoltán Közoktatási szakértő

E-learning tananyagfejlesztő képzés tematika oktatott modulok

Operációs rendszerek. Az X Window rendszer

WebService tesztelés. SOAPui Pro, GreenPepper és Confluence használatával. Verhás & Verhás Szoftver Manufaktúra KNOW-HOW

16. Felhasználói interfészek tervezése

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

01. gyakorlat - Projektalapítás

Orvostechnikai eszközök gyártmányfejlesztése Aktív orvosi eszközök fejlesztése PEMS V&V. Nagy Katinka

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

CitiDirect BE SM Felhasználói útmutató

A szoftverfejlesztés eszközei

Rendszer szekvencia diagram

MŰSZAKI TESZTTERVEZÉSI TECHNIKÁK A TESZT FEJLESZTÉSI FOLYAMATA A TESZTTERVEZÉSI TECHNIKÁK KATEGÓRIÁI

Tartalom. Konfiguráció menedzsment bevezetési tapasztalatok. Bevezetés. Tipikus konfigurációs adatbázis kialakítási projekt. Adatbázis szerkezet

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ó

Felhasználói Kézikönyv

Az ErdaGIS térinformatikai keretrendszer

A TESZTELÉS ALAPJAI A TESZTELÉS ALAPVETŐ FOLYAMATA A TESZTELÉS PSZICHOLÓGIÁJA A TESZTELÉS ETIKAI KÓDEXE

Tartalom A verifikáció és validáció tervezése Szoftver vizsgálatok Automatizált statikus analízis Cleanroom szoftverfejlesztés

IRÁNYÍTÓ RENDSZER IRÁNYÍTANDÓ FOLYAMAT. Biztonsági funkciók Biztonsági integritás. Normál működés. Hibák elleni védettség Saját (belső) biztonság

Alkalmazások fejlesztése A D O K U M E N T Á C I Ó F E L É P Í T É S E

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

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

A BIZTONSÁGINTEGRITÁS ÉS A BIZTONSÁGORIENTÁLT ALKALMAZÁSI FELTÉTELEK TELJESÍTÉSE A VASÚTI BIZTOSÍTÓBERENDEZÉSEK TERVEZÉSE ÉS LÉTREHOZÁSA SORÁN

Operációs rendszerek. Tanmenet

Statikus technikák: A szoftver átvizsgálása. Statikus technikák: A szoftver átvizsgálása

Felhasználói kézikönyv

Intelligens eszközök fejlesztése az ipari automatizálásban Evosoft Hungary kft., Evosoft Hungary Kft.

DKÜ ZRT. A Portál rendszer felületének általános bemutatása. Felhasználói útmutató. Támogatott böngészők. Felületek felépítése. Információs kártyák

Programfejlesztési Modellek

A felhasználói interakciók alapelvei. Losteiner Dávid

Telepítési útmutató a Solid Edge ST7-es verziójához Solid Edge

Fogalomtár Etikus hackelés tárgyban Azonosító: S2_Fogalomtar_v1 Silent Signal Kft. Web:

Magyar Nemzeti Bank - Elektronikus Rendszer Hitelesített Adatok Fogadásához ERA. Elektronikus aláírás - felhasználói dokumentáció

Szoftver-technológia I.

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)

Designer képzés tematika oktatott modulok

Informatikai projektellenőr szerepe/feladatai Informatika / Az informatika térhódítása Függőség az információtól / informatikától Információs

Szemkamerás vizsgálatok web- és szoftverfejlesztéshez

A dokumentáció felépítése

Modell alapú tesztelés mobil környezetben

Szoftverminőségbiztosítás

5. Témakör TARTALOMJEGYZÉK

MŰSZAKI KÖVETELMÉNYEK, A KÖRKERESŐ SZOFTVER SPECIFIKÁCIÓJA, KÖLTSÉGVETÉS. A) Műszaki követelmények

LETÉTKEZELŐ NYILVÁNTARTÁSI RENDSZER

Kézikönyv. Szelekciós jegyzék 2.

A vezetői jelentésrendszer alapjai. Információs igények, irányítás, informatikai támogatás

Térinformatikai támogatás a kistérségi döntés és erőforrás-gazdálkodásban

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

Image Processor BarCode Service. Felhasználói és üzemeltetői kézikönyv

CabMap hálózat-dokumentáló rendszer

Bánsághi Anna 1 of 67

akadálymentesen i e Tervezés

Tartalommenedzser képzés tematika oktatott modulok

Tartalomjegyzék. Előszó... 10

TERC V.I.P. hardverkulcs regisztráció

Internetes alkalmazásfejlesztő képzés tematika oktatott modulok

Használati útmutató Az online példatárhoz

Bevezetés a programozásba előadás: Alapvető programtervezési elvek

Információs rendszerek Információsrendszer-fejlesztés

Autóipari beágyazott rendszerek Dr. Balogh, András

ContractTray program Leírás

Tisztelettel köszöntöm a RITEK Zrt. Regionális Információtechnológiai Központ bemutatóján.

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

Integrált-HardverSzoftver-Rendszer

V. Félév Információs rendszerek tervezése Komplex információs rendszerek tervezése dr. Illyés László - adjunktus

Felhasználói leírás a DimNAV Server segédprogramhoz ( )

Webes kurzus kezelés folyamata Oktatói felületek

Win 8 változatok. 2. sz. melléklet felnottkepzes@gmail.com. Töltse ki az előzetes tudásszint felmérő dolgozatot!

Önálló labor feladatkiírásaim tavasz

Gyakorlati vizsgatevékenység B

Átírás:

SZOFTVERTECHNOLÓGIA Bánsághi Anna anna.bansaghi@mamikon.net 8. ELŐADÁS - VERIFIKÁCIÓ ÉS VALIDÁCIÓ 1 of 67

TEMATIKA I. SZOFTVERTECHNOLÓGIA ALTERÜLETEI II. KÖVETELMÉNY MENEDZSMENT III. RENDSZERMODELLEK IV. RENDSZERARCHITEKTÚRÁK V. RENDSZERTERVEZÉS VI. VALIDÁCIÓ, VERIFIKÁCIÓ VII. MINŐSÉGBIZTOSÍTÁS VIII. TESZTELÉS 2 of 67

VI. VALIDÁCIÓ, VERIFIKÁCIÓ 1. Felhasználói felületek tervezése 2. Verifikáció és validáció 3 of 67

1. FELHASZNÁLÓI FELÜLETEK TER VEZÉSE felhasználói kezelőfelület felhasználói kezelőfelületek tervezésének alapelvei a felhasználó és a rendszer kapcsolata az információ megjelenítése felhasználói támogatás felhasználói felületek értékelése 4 of 67

FELHASZNÁLÓI KEZELŐFELÜLET a felhasználó a kezelőfelületen keresztül kerül kapcsolatba a rendszerrel, ennek alapján alkot véleményt, csak ezután ismeri meg a rendszer funkcionalitását a rosszul tervezett kezelőfelület gyakran katasztrofális hibákhoz vezet a szegényes vagy következetlen felhasználói kezelőfelület sok rendszer bukásához vezetett már nagy fejlesztő szervezetekben szakértőket alkalmaznak (grafikus, pszichológus, szakterületi szakértő), de kis/közepes cégeknél a kezelőfelület megtervezése is különleges tervezői feladat 5 of 67

KONZOL ÉS GRAFIKUS FELÜLETEK konzol rendszerek csak alfanumerikus terminálokat alkalmaznak, a kezelőfelület karakteres parancsokat fogad grafikus nagyfelbontású, színes, grafikus felületet támogat. Az interakcióra nemcsak a klaviatúra, hanem egér vagy más kijelölő eszköz is rendelkezésre áll ALAPVETŐ ELVÁRÁSOK legyen strukturált, következetes, áttekinthető biztosítson segítő szolgáltatásokat a hibákat egyértelműen jelezze 6 of 67

GRAFIKUS FELÜLET JELLEMZŐI ablakok / oldalak több ablakban / oldalon egyszerre többféle információ jeleníthető meg ikonok az ikonokkal az információ fajtái jelölhetők: állományok, folyamatok, stb. menük menütechnikával a parancsok egy strukturált menüből választhatók ki. A felhasználónak nem kell egy parancsnyelvet megtanulnia és parancsokat begépelnie pozícionálás egér, toll, érintés vagy más eszköz alkalmazható egy menüpont kiválasztására, vagy egy ablakban a lényeges elemek meg- vagy kijelölésére grafika / szinek grafikus elemek és színek alkalmazása a szöveg mellett (vagy helyett) áttekinthetőbbé teszik a képernyőt 7 of 67

A GRAFIKUS KEZELŐFELÜLET ELŐNYEI könnyebben megtanulható és használható, akár számítógépes ismeretek nélkül is a felhasználó több képernyőt használhat az interakcióra, gyorsan válthat különböző alkalmazások között, az információ látható maradhat az éppen nem aktív ablakban is a felhasználó a teljes képernyő bármely részét elérheti, ez gyors interakciót tesz lehetővé 8 of 67

FELHASZNÁLÓ-CENTRIKUS TERVEZÉS User Experience Design (UX Design) a felhasználó központú kezelőfelület-tervezés megköveteli, hogy a tervező: alaposan megismerje a felhasználó tevékenységét (a munkafolyamatot, amelyet a rendszernek támogatnia kell) és felkészültségét a felhasználót kezdettől bevonjuk a tervezés folyamatába először papíron, a struktúra felvázolásával, majd prototípusok készítésével tesszük számára megfoghatóvá és érthetővé a tervet 9 of 67

A FELHASZNÁLÓI KEZELŐFELÜLET TERVEZÉSE 10 of 67

A FELHASZNÁLÓI KEZELŐFELÜLETEK TER VEZÉSÉNEK ALAPELVEI a kezelőfelület tervezésekor figyelembe kell venni a felhasználók igényeit, gyakorlatát és képességeit az emberek fizikai és mentális képességei korlátozottak (rövid távú memória), a felhasználói felület tervezésekor ezt is vegyük figyelembe a grafikus felhasználói felületek tervezésének alapelvei minden felhasználói interakció tervezésének alapjául szolgálhatnak 11 of 67

TERVEZÉSI ALAPELVEK 1. felhasználói jártasság figyelembevétele a felületnek olyan kifejezéseket és fogalmakat kell használnia, amelyeket az átlagos felhasználó ismer a felület konzisztenciája a menüknek és parancsoknak ugyanazzal a formátummal kell rendelkezniük, hasonló műveleteket hasonló módon kell jelezni és megvalósítani minimális meglepetés a felhasználóban kialakul egy modell a rendszer működéséről. A hasonló tevékenységeknek hasonló hatást kell kiváltaniuk, különben a rendszer kellemetlen meglepetéseket okoz felhasználó számára 12 of 67

TERVEZÉSI ALAPELVEK 2. visszaállíthatóság minden helyzetben számítsunk arra, hogy a felhasználó hibázhat, ezért gondoskodjunk arról, hogy a hibát kijavíthassa: visszavonási lehetőség (undo), esetleg többszintű veszélyes tevékenységek megerősítése (pl. törlés) puha törlés felhasználó támogatása a felület rendelkezzen könnyen elérhető segítő vagy súgó rendszerrel. A súgót struktúráljuk, nem szabad túl sok információt közölni. Előnyös a helyzetfüggő súgó alkalmazása felhasználók sokfélesége az alkalmi felhasználók több támogatást, a gyakorlott felhasználók egyszerűbb, gyorsabb működést várnak 13 of 67

A FELHASZNÁLÓ ÉS A RENDSZER KAPCSOLATA egy interaktív rendszer tervezésekor két kulcskérdést kell megoldani 1. hogyan jusson el az információ a felhasználótól a rendszerhez 2. hogyan jusson el az információ a rendszertől a felhasználóhoz a felhasználói beavatkozás és az információ megjelenítése egy összefüggő keretrendszerbe integrálható, amely biztosíthatja a konzisztenciát és a felhasználói támogatást 14 of 67

INTERAKCIÓK FAJTÁK közvetlen manipuláció menükiválasztás űrlapkitöltés parancsnyelv természetes nyelv 15 of 67

KÖZVETLEN MANIPULÁCIÓ lényege a felhasználó közvetlenül a képernyőn látható objektumot kezeli (pl. törléshez kukába viszi) előnyök könnyen tanulható és gyors a felhasználó azonnal visszajelzést kap, így a tévedés gyorsan visszavonható hátrányok bonyolult lehet a felhasználó tevékenységéről (szándékáról) a megfelelő információt begyűjteni a program számára csak akkor használható, ha a feladatok és az objektumok egyértelműen megkülönböztethető ikonokkal reprezentálhatók 16 of 67

MENÜKIVÁLASZTÁS lényege a felhasználó a rendszer által felkínált (sokszor helyzetfüggő) listából választhat, a kijelölést egér vagy kurzormozgatással, rövidített név beírással is végezheti előnyök alkalmazható érintőképernyős terminálokon is a felhasználónak nem kell parancsokat megjegyeznie kevés gépelést igényel, és a hibák könnyen kivédhetők állapotfüggő súgó alkalmazható hátrányok az akciók közötti logikai összefüggések (and, or) nem jeleníthetők meg kevés választási lehetőséget enged meg, a sok lehetőséghez struktúrált menüre van szükség a gyakorlott felhasználó számára lassú 17 of 67

ŰRLAPKITÖLTÉS lényege az űrlap az aktuális állapothoz igazítható. Olyan rendszerekben alkalmazzák, ahol sok adatot kell bevinni (pl. adatrögzítés) előnyök a felhasználói hibák felfedhetők és jelezhetők, illetve kivédhetők könnyen megtanulható hátrányok nagy képernyőfelületet foglal 18 of 67

lényege PARANCSNYELV a felhasználó parancsokat gépelve utasítja a rendszert előnyök egyszerű, olcsó terminálon is alkalmazható egyszerűen feldolgozható (pl. fordító technikával) bonyolult, egymásba ágyazott parancsok is kezelhetők rugalmas hátrányok nehezen tanulható, az átlagos felhasználó számára bonyolult gépelési gyakorlatot kíván a hibakezelést (hibajelzés, visszavonás) nehéz megoldani 19 of 67

TERMÉSZETES NYELV a felhasználó a parancsokat természetes nyelven gépeli be, amelynek szótára korlátozott. Az ilyen rendszerek általában speciális alkalmazási területet szolgálnak ki a természetes nyelv megfelelő az alkalmi felhasználó számára, de a gyakorlott felhasználó nem kedveli a túl sok gépelés miatt 20 of 67

TÖBBSZÖRÖS FELHASZNÁLÓI INTERFÉSZEK az eseti és a gyakorlott felhasználók számára külön felületet célszerű megvalósítani 21 of 67

AZ INFORMÁCIÓ MEGJELENÍTÉSE a rendszer megjeleníti a felhasználó számára közlendő információkat ez az információ megjelenhet közvetlenül szöveges formában, grafikusan, animációval, hang kíséretében a jól tervezett rendszerekben maga az információ és az azt megjelenítő réteg különválik többféle alkalmazásarchitektúra létezik az információ, az alkalmazás logika és a megjelenítés hármasának szétválasztására 22 of 67

MODEL VIEW CONTROLLER (MVC) az MVC alkalmazásarchitektúrát a Smalltalkban dolgozták ki, de azóta általánosan elterjedt az interaktív rendszerek grafikus felhasználói kezelőfelületének tervezésében lényege, hogy különválasztja a az információt (az üzleti logikát), a megjelenítés vezérlését és a megjelenítést 23 of 67

INFORMÁCIÓ TÍPUSOK STATIKUS értéket kap a munkafázis (session) kezdetén, és ez a session ideje alatt nem változik meg lehet numerikus vagy szöveges DINAMIKUS megváltozik a munkafázis alatt, és a megváltozott értéket a felhasználó számára meg kell jeleníteni lehet numerikus vagy szöveges 24 of 67

A MEGJELENÍTÉS MÓDJÁNAK KIVÁLASZTÁSA A felhasználónak pontos információra van-e szüksége (numerikus), vagy különböző adatok közti kapcsolatok, arányok érdeklik (grafikus)? Milyen gyorsan változik az információ? Azonnal szükség van-e rá? (A gyorsan változó információt grafikusan, vagy többféle módon kell megjeleníteni?) Egy változást követően be kell-e avatkoznia a felhasználónak valamilyen akcióval? (Ha igen, a megváltozott információt ki kell emelni.) Szükség van-e közvetlen beavatkozási felületre? (Ha igen, az információ közelében kell erre lehetőséget adni.) Szöveges vagy numerikus a megjelenítendő információ? Fontosak-e a relatív értékek? (Ha igen, grafikus.) 25 of 67

SZÖVEGES MEGJELENÍTÉS 26 of 67

GRAFIKUS MEGJELENÍTÉS 27 of 67

ANALÓG ÉS DIGITÁLIS MEGJELENÍTÉS DIGITÁLIS ANALÓG pontos értékeket közöl kevés helyet foglal a képernyőn egy pillantással áttekinthető relatív értékeket is képes közölni, pl. egy állandó értékhez képest (egy határhoz közeli értéket színnel még külön ki lehet emelni), vagy korábbi minimális-maximális értékhez képest 28 of 67

FIGYELMEZTETŐ SZÖVEG MEGJELENÍTÉSE a figyelmeztetés megjelenítésekor a grafika kiemeli a fontos szöveget, az információ jellegére ikonnal is utalhatunk a szöveg és grafika mellett hang is használható a figyelem felkeltésére, amennyiben feltételezhető, hogy a felhasználók nagy része rendelkezik hangkártyával 29 of 67

NAGY MENNYISÉGŰ ADAT MEGJELENÍTÉSE a megjelenítés felhívhatja a figyelmet a több forrásból származó adatok közti összefüggésekre, amelyek tendenciákra utalnak a tervezőnek ismernie kell a szakterületet, az ott alkalmazott jelölés- és ábrázolásmódokat 30 of 67

ADATMEGJELENÍTÉSI MÓDOK időjárási információt célszerű térképen ábrázolni egy hálózat állapota a központokkal és kapcsolataikkal ábrázolható egy vegyi üzem állapota a csövek és tartályok hálózatán tehető jól áttekinthetővé a térbeli modellezésre (pl. molekula modellje) jól kezelhető grafikus eszközök állnak rendelkezésre 31 of 67

SZÍNEK ALKALMAZÁSA a színek külön dimenziót kölcsönöznek a felületnek, segíthetnek a bonyolult összefüggések megértésében a különleges esetekre, értékekre felhívhatják a figyelmet ODA KELL FIGYELNI, HOGY a sokféle, rikító szín alkalmazása taszító lehet, fárasztja a szemet a rossz színkompozíció hibalehetőségeket okozhat a tervezőnek gondolnia kell arra, hogy sok ember színtévesztő vagy színvak 32 of 67

SZABÁLYOK A SZÍNEK ALKALMAZÁSÁRA ne használjunk túl sok színt (egy felületen 4-5, egy rendszerben 7-8 az átlag) először tervezzünk monokróm felületeket, utána adjuk hozzá a színeket az állapotváltozásokat jelezzük színváltással a végrehajtandó feladatokat jelöljük színkóddal, a különböző feladatokat különböztessük meg színekkel is a színkódolást alkalmazzuk következetesen a teljes rendszerben egyes színkombinációk zavaróak vagy fárasztják a szemet 33 of 67

FELHASZNÁLÓI TÁMOGATÁS a felhasználó támogatása kiterjed a rendszer minden megjelenési formájára: súgó, hibaüzenetek, kézikönyvek a felhasználó tájékoztatását be kell építeni a felhasználói felületekbe, hogy minden helyzetben kérhessen támogatást vagy kapjon információt, ha hibát vétett célszerű a súgó és az üzenő rendszert összeépíteni, hogy minden üzenetről magyarázatot kérhessen a felhasználó 34 of 67

SÚGÓ ÉS ÜZENŐ RENDSZER 35 of 67

HIBAÜZENETEK a hibaüzenetek tervezése különösen fontos: a kezdő felhasználó ezekkel találkozik a leggyakrabban. A rossz vagy számára érthetetlen hibaüzenetek miatt elutasíthatja a rendszert az üzeneteknek udvariasnak, előrevivőnek és következetesnek kell lennie a felhasználó háttere, gyakorlata a hibaüzenetek tervezésének meghatározó tényezője 36 of 67

AZ ÜZENETEK SZÖVEGEZÉSE szövegkörnyezet a rendszer a felhasználó tevékenységéhez és a rendszer aktuális állapotához igazodó üzenetet adjon tapasztalat a tapasztalt felhasználót már idegesíti az a kifejtő magyarázat, amit a kezdő felhasználó még hasznosnak tart és igényel. A rendszer mindkét üzenettípust kínálja fel képzettség igazítsuk az üzeneteket a felhasználó képzettségéhez és gyakorlatához. A különböző felhasználók számára szánt üzeneteket különböző módon, a számukra érthető terminológiával fogalmazzuk meg stílus az üzenetek legyenek pozitívak. Egy üzenet soha ne legyen sértő, gúnyolódó kultúra hasznos, ha az üzenetek tervezője tisztában van azzal a kultúrával, ahol a rendszert használni fogják. Az egyik országban megfelelő üzenetek a kulturális különbségek miatt egy másik országban elfogadhatatlanok 37 of 67

ROSSZ ÜZENETEK negatív szemléletű rendszerorientált, fejlesztőknek szóló hibáztat, nem javasol megoldást JÓ ÜZENETEK pozitív szemléletű felhasználó-orientált megoldást javasol 38 of 67

SÚGÓ TERVEZÉSE a felhasználó segítségért vagy információért fordul a súgóhoz a súgó tervezésekor mindkét igényt figyelembe kell venni többféle lehetőséget kell biztosítani, ehhez több belépési pontra van szükség a jó súgórendszer hierarchikus szerkezetű, de bonyolult hálós struktúrájú, ahol az információs egységek között sokféle kapcsolat van több ablak alkalmazásával érthetővé tehető a bonyolult hierarchia 39 of 67

A SÚGÓ INFORMÁCIÓTARTALMA a súgó nem lehet egy on-line kézikönyv a képernyő nem felel meg a papírlapoknak. Az emberek másként olvassák a képernyőt, mint a papírt a megjelenítés dinamikus természete segíti az információ megjelenítését a súgórendszer szövegeit az alkalmazást és a szakterületet jól ismerő embereknek kell megfogalmaznia 40 of 67

A SÚGÓRENDSZER HASZNÁLATA több belépési pontra van szükség, hogy a felhasználó a rendszer különböző állapotaiból léphessen be ugyanakkor hasznos azt jelezni, hogy éppen hol jár a súgó hierarchiájában célszerű a korábban bejárt útvonalat is megjeleníteni, mert a bonyolult hálóban könnyen elvész a felhasználó. Ez a visszalépéseket is támogathatja 41 of 67

SÚGÓRENDSZER BELÉPÉSI PONTJAI 42 of 67

FELHASZNÁLÓI DOKUMENTÁCIÓ az on-line súgó mellett papíralapú dokumentációt is kell készíteni a rendszerhez a dokumentációnak a kezdőtől a gyakorlott felhasználóig mindenkit figyelembe kell vennie a különböző csoportba tartozó felhasználók számára legalább ötféle dokumentumot kell készíteni 43 of 67

funkcionális leírás bevezető kézikönyv sok példával DOKUMENTUMTÍPUSOK a rendszer funkcióinak rövid leírása a rendszer helyes használatának leírása, referencia kézikönyv a rendszer lehetőségei, hibaüzenetek és teendők hiba esetén, minden esetre kiterjedően telepítési dokumentum beállítások ismertetése a telepítés menete, a teendők listája, a üzemeltetési-, adminisztrátori kézikönyv a rendszer működtetésének, a hibák kijavításának leírása 44 of 67

FELHASZNÁLÓI FELÜLETEK ÉRTÉKELÉSE a szoftverrendszer ellenőrzésének, jóváhagyásának része a felhasználói felület elemzése a használhatóság ellenőrzésére szolgál (a használhatóság specifikációja alapján kellene végrehajtani, de ilyen dokumentum ritkán készül) az alapos értékelés nagyon sokba kerül, mert sok valódi felhasználót kell bevonni, laboratóriumi körülmények között megfigyelni, és véleményüket kiértékelni 45 of 67

kérdőívek etnográfia ÉRTÉKELÉSI MÓDSZEREK a jellegzetes rendszerhasználat felvétele videóra felhasználói szemmozgások rögzítése felhasználói egérhasználat, billentyűhasználat rögzítése kódrészletek beépítése a gyakori hibák gyűjtésére 46 of 67

A HASZNÁLHATÓSÁG JELLEMZŐI tanulhatóság mennyi idő alatt tudja egy új felhasználó produktív módon megtanulni a rendszer használatát műveleti sebesség mennyire felel meg a rendszer válaszideje a felhasználó munkatempójának robusztusság mennyire toleráns a rendszer a felhasználói hibákkal szemben visszaállíthatóság hibák után adaptálhatóság munkamodellhez milyen jól áll helyre a rendszer a felhasználói mennyire van kötve a rendszer egy egyedi 47 of 67

ÖSSZEFOGLALÁS a felhasználói felületek tervezésekor mindenekelőtt a felhasználót tartsuk szem előtt. A felület legyen logikus, konzisztens és támogassa a felhasználót a hibák kijavításában grafikus megjelenítést akkor használjunk, ha megközelítő értékeket, trendeket szeretnénk bemutatni a színeket visszafogottan és következetesen alkalmazzuk a felület szolgáltasson on-line súgót is a hibaüzenetek legyenek pozitívak a felhasználói dokumentációkat különböző felkészültségű felhasználók számára készítsük 48 of 67

2. VERIFIKÁCIÓ ÉS VALIDÁCIÓ A SZOFTVER VERIFIKÁCIÓJA ÉS VALIDÁCIÓJA a verifikáció és validáció folyamata programtesztelés A VERIFIKÁCIÓ ÉS VALIDÁCIÓ TERVEZÉSE szoftverek átvizsgálása programátvizsgálás automatizált statikus elemzés 49 of 67

A SZOFTVER VERIFIKÁCIÓJA ÉS VALIDÁCIÓJA a szoftvernek azt kell megvalósítania, amit a felhasználó elvár tőle verifikáció annak ellenőrzése, hogy valóban a megfelelő terméket készítjük el, vagyis hogy a szoftver megfelel a specifikációnak ( The product was built right ) validáció annak bizonyítása, hogy a terméket jól készítjük el, vagyis hogy a szoftver valóban a megrendelő elvárásainak megfelelően működik (esetleg a specifikációval ellentétesen) ( The right product was built ) 50 of 67

A VERIFIKÁCIÓ ÉS VALIDÁCIÓ FOLYAMATA (V&V) a verifikáció és validáció folyamata a szoftver teljes életciklusára kiterjed, a szoftverfejlesztési folyamat minden fázisában szerepet kap alapvető céljai felfedni a rendszerben rejlő hibákat meggyőződni arról, hogy a rendszer egy-egy konkrét működési szituációban használhatóan működik-e meggyőződni arról, hogy a rendszer a megrendelő igényeinek megfelelően készül-e/készült-e el 51 of 67

STATIKUS ÉS DINAMIKUS VERIFIKÁCIÓ a V&V folyamatban kétféle technika alkalmazható szoftver-átvizsgálás (inspekció) a rendszer reprezentációjának elemzése (követelményspecifikáció, tervek, grafikus ábrázolások, forráskód). A forráskód elemzése automatizálható szoftvertesztelés a szoftver implementációjának tesztadatokkal való futtatása, és a viselkedés megfigyelése (dinamikus verifikáció) 52 of 67

STATIKUS ÉS DINAMIKUS V&V 53 of 67

PROGRAMTESZTELÉS még ma is a legelterjedtebb V&V technika (bár a szoftverfolyamat végén helyezkedik el) a hiba meglétét felfedezi fel, nem pedig a hiba hiányát az a sikeres teszt, amely legalább egy hibát felfedez az egyetlen módszer a nemfunkcionális követelmények validálására a statikus verifikációval (inspekció) együtt célszerű alkalmazni 54 of 67

A TESZTEK TÍPUSAI hiányosságok tesztelése feladata a rendszer hibáinak és hiányosságainak felfedése, például egy interaktív rendszer esetén tesztelni kell a menükön elérhető összes funkciót egyazon menüponton elérhető valamennyi rendszerfunkciót a felhasználói inputok által használt összes függvényt, helyes és helytelen input adatokkal egyaránt statisztikai tesztelés a rendszer teljesítményének és megbízhatóságának tesztelése, valós helyzetekben (valós felhasználói inputtal és gyakorisággal) 55 of 67

A VERIFIKÁCIÓ ÉS VALIDÁCIÓ CÉLJAI megbizonyosodni arról, hogy a szoftverrendszer megfelel a céljának (vagyis nem arról, hogy hibamentes!) az elfogadás szintje különböző célú rendszereknél különböző az elfogadást befolyásoló tényezők a szoftver funkciója (biztonsági rendszer vs. prototípus) a felhasználó elvárásai (olcsó szoftver több hiba) piaci környezet (árak, versenytársak) kritikus rendszerek (ne okozzon tragikus eseményeket) 56 of 67

TESZTELÉS ÉS BELÖVÉS a hiányosságok tesztelése és a belövés különböző folyamatok: a verifikáció és validáció feladata a hibák, hiányosságok létezésének felfedezése a belövés ezen hibák helyének lokalizálása és kijavítása a belövés a program viselkedésére vonatkozó feltételezések felállításával kezdődik, majd ezen feltételezések vizsgálatával próbálja megtalálni a hibákat a belövés során felfedezett hibák javítása után újra kell tesztelni a programot 57 of 67

A BELÖVÉS FOLYAMATA 58 of 67

VERIFIKÁCIÓ ÉS VALIDÁCIÓ TERVEZÉSE alapos tervezésre van szükség, hogy a legtöbb eredményt kapjuk az egyébként igen költséges tesztelésből és felülvizsgálatból a V&V tervezését a fejlesztési folyamat elején érdemes megkezdeni a tervn határozza meg az arányokat a statikus verifikáció és a tesztelés között a teszttervezésre a nagyobb cégeknél általános szabványokat, szabályokat dolgoznak ki. Ennek alapján kell megtervezni és végrehajtani a termék konkrét tesztelését, és a tesztek dokumentálását 59 of 67

A TESZTELÉS ÉS A FEJLESZTÉS MODELLJE 60 of 67

A SZOFTVER TESZTTERV STRUKTÚRÁJA a tesztelési folyamat, azaz a fő tesztfázisok leírása a követelmények nyomon követhetősége (minden követelményt külön kell tesztelni) a tesztelt elemek ( tesztelendő szoftver termékek listája) a tesztelés ütemezése (a szoftverfejlesztési projekt részeként) a tesztek dokumentálása (a tesztelés utólagos ellenőrzésére, minőségbiztosítására) a tesztek hardver és szoftver követelményei (a teszteléshez szükséges erőforrások) megszorítások (a tesztelést gátló tényezők) 61 of 67

A SZOFTVER ÁTVIZSGÁLÁSA a szoftver átvizsgálás célja a hiányosságok felderítése, a költséges tesztelés helyett a hibák kb. 60 %-a felfedhető az átvizsgálás során a fejlesztési folyamat kezdetétől alkalmazható, a dokumentumok (követelmények, tervek) átvizsgálásával egy átvizsgálás során több hiányosság felfedezhető, amíg egy teszt többnyire egy hibát fed fel a tapasztalt vizsgálók (inspektorok) már ismerik és könnyen megtalálják a típushibákat 62 of 67

ÁTVIZSGÁLÁS (INSPEKCIÓ) ÉS TESZTELÉS az inspekció és a tesztelés nem helyettesítik egymást, de a korai fázistól rendszeresen végzett átvizsgálás sok költséges tesztet előzhet meg érdemes mindkettőt alkalmaznia V&V folyamatban az inspekció alkalmas eszköz arra, hogy ellenőrizze azt, hogy a program megfelel-e a specifikációnak a nemfunkcionális rendszerkövetelmények vizsgálatára azonban a felülvizsgálat nem használható 63 of 67

PROGRAMÁTVIZSGÁLÁS a dokumentumok átvizsgálásának formalizált eszköze: tapasztalt szakemberek nézik át a dokumentumokat és a kódot, ellenőrző lista alapján célja a hiányosságok felderítése a forráskódban (logikai hibák, kezdőérték nélküli változók, szabványoknak való meg nem felelés, stb.) az átvizsgálást követően a programozó módosítja a programot, az új verziót nem kell feltétlenül újravizsgálni 64 of 67

AUTOMATIZÁLT STATIKUS ELEMZÉS a statikus elemzők a forráskódot vizsgáló szoftvereszközök nem futtatják a programot, hanem elemzik a program szövegét FÁZISAI a vezérlés folyamatának elemzése az adatok használatának elemzése interfész-elemzés az információáramlás elemzése a végrehajtási útvonalak elemzése 65 of 67

STATIKUS ELEMZŐK HASZNÁLATA a statikus elemzés különösen az olyan nyelveknél hasznos, mint a C, amelyek nem tartalmaznak szigorú szabályokat a típusokra, így a fordító sok hibát nem vesz észre elemző eszközök: SonarQube, FxCop, NDepend, Lint, Checkstyle, PMD 66 of 67

ÖSSZEFOGLALÁS a verifikáció és a validáció két különböző tevékenység a verifikáció a specifikációnak való megfelelést vizsgálja a validáció bizonyítja, hogy a rendszer megfelel a felhasználó igényeinek a tesztelési folyamatot tervezni kell a statikus verifikációs technikák a szoftver vizsgálatát és elemzését is tartalmazzák a felülvizsgálat hatékony eszköz a hibák felderítésére a statikus elemző eszközök a forráskódban olyan rejtett hibákat keresnek, mint a nem iniciált változók, nem használt kódrészletek, kódklónok 67 of 67