a szoftvertechnolÓgia alapjai

67
A SZOFTVERTECHNOLÓGIA ALAPJAI Verifikáció és validáció Felhasználói felületek tervezése 10.előadás PPKE-ITK

Upload: kaden

Post on 07-Jan-2016

33 views

Category:

Documents


1 download

DESCRIPTION

A SZOFTVERTECHNOLÓGIA ALAPJAI. Verifikáció és validáció Felhasználói felületek tervezése 10.előadás PPKE-ITK. Tartalom – verifikáció és validáció. A szoftver verifikációja és validációja 1.1 1.1 A verifikáció és validáció folyamata 1.2 Programtesztelés - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: A SZOFTVERTECHNOLÓGIA ALAPJAI

ASZOFTVERTECHNOLÓGIA

ALAPJAI

Verifikáció és validáció Felhasználói felületek tervezése

10.előadásPPKE-ITK

Page 2: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 2

Tartalom – verifikáció és validáció

1. A szoftver verifikációja és validációja1.1 1.1 A verifikáció és validáció folyamata

1.2 Programtesztelés

2. A verifikáció és validáció tervezése2.1 A szoftverek átvizsgálása

2.2 Programátvizsgálás

2.3 Automatizált statikus elemzés

2.4 Cleanroom szoftverfejlesztés

Page 3: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 3

A szoftver verifikációja és validációja

• 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”)

• A szoftvernek azt kell megvalósítania, amit a felhasználó valóban elvár tőle.

Page 4: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 4

1.1 A verifikáció és validáció folyamata (V&V)

• A verifikáció és validáció (V&V) folyamata a szoftver teljes életciklusára kiterjed, a szoftver 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.

– Meggyőződni arról, hogy a rendszer a megrendelő igényeinek megfelelően készül/készült el.

Page 5: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 5

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ény-specifikáció, tervek, grafikus ábrázolások, forráskód). A forráskód elemzése automatizálható.

– SzoftvertesztelésA szoftver implementációjának tesztadatokkal való futtatása és a viselkedés megfigyelése (dinamikus verifikáció)

Page 6: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 6

Statikus és dinamikus V&V

A szoftverátvizsgálása

Köv.Spec.

Magasszintűterv

Formálisspec.

Részletesterv

Program

Proto-típus

Programtesztelés

Page 7: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 7

1.2 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 kell felfedeznie nem a hiba hiányát.• Az a sikeres teszt, amely legalább egy hibát felfedez.• Az egyetlen módszer a nem-funkcionális

követelmények validálására.• A statikus verifikációval (szemlék) együtt célszerű

alkalmazni.

Page 8: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 8

A tesztek típusai• Hiányosságok tesztelése

– Feladata a rendszer hibáinak és hiányosságainak felfedése.– Fajtái:

• Komponens tesztek: Fekete doboz, ekvivalencia-osztályok, struktúrateszt, útvonal-teszt

• Integrációs tesztek: „fentről lefelé/lentről felfelé”, interfészteszt, stressz-tesztek

• Objektumorientált tesztelés– 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).

Page 9: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 9

A verifikáció és validáció céljai

• A V&V célja: megbizonyosodni arról, hogy a szoftver rendszer 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ő. Ezt befolyásolja:– A szoftver funkciója

(biztonsági rendszer 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)

Page 10: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 10

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.

Page 11: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 11

A belövés folyamata

Teszt-eredmények

Hibalokalizálása

Specifikáció Tesztesetek

Hibajavításmegtervezése

A hibakijavítása

Programújratesztelése

Page 12: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 12

2. A 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 meg kell kezdeni.

• A tervnek meg kell határoznia az arányokat a statikus verifikáció és a tesztelés között.

• A teszt-tervezé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.

Page 13: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 13

A tesztelés és a fejlesztés modellje

Átvételitesztterve

Modul és egység

kód.és teszt.

Rendszer-integrációsteszt terv

Alrendszerintegrációsteszt terv

Követel-mény spec.

Rendszerspec.

Rendszertervezés

Részletestervezés

Működés Átvételiteszt

Rendszerintegr. teszt

Alrendszerintegr. teszt

Page 14: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 14

A szoftver tesztterv struktúrája• A tesztelési folyamat

– 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– A 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).

• 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.

Page 15: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 15

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.

Page 16: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 16

Átvizsgálás é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.

• Mindkettőt alkalmazni kell a V&V folyamatban.• Az inspekció alkalmas eszköz arra, hogy ellenőrizze,

megfelel-e a program a specifikációnak.• A nem-funkcionális rendszerkövetelmények

vizsgálatára azonban a felülvizsgálat nem használható.

Page 17: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 17

2.2 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.

Page 18: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 18

2.3 Automatizált statikus elemzés

• A statikus elemzők a forráskódot vizsgáló szoftver eszkö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

Page 19: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 19

A 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.

• A Unix és a Linux tartalmazza a LINT statikus elemzőt, amely kimutatja az iniciálatlan változókat, elérhetetlen kódrészleteket, stb.

• A Java nyelvből sok olyan tulajdonság hiányzik, amely hibaforrás lehet (nincs goto, iniciálni kell a változókat, a tárkezelés automatikus, stb.).

Page 20: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 20

2.4 Cleanroom szoftverfejlesztés

• A szoftverhibák elkerülését, nem pedig megtalálását és kijavítását célzó szigorú átvizsgálási folyamat. (A név a félvezető-gyártásból származik)

• A rendszer komponenseinek tesztelését helyettesíti átvizsgálásokkal, megfelelnek-e a specifikációnak.

• Inkrementális fejlesztési módszer, először a kritikus inkrementumokat szállítja le.

• A Cleanroom jellemzői:– Formális specifikáció (állapotátmenet modell, strukturált

programozás, csak néhány vezérlési és adatabsztrakciós konstrukció használható)

– Inkrementális fejlesztés– Statikus verifikáció (szigorú átvizsgálások)– A rendszer statisztikai tesztelése

Page 21: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 21

A Cleanroom folyamat

Rendszerformális

spec.

Működésiprofil

fejlesztése

Inkremen-tumok

definiálása

Strukturáltprogramkészítése

Kódformális

vizsgálata

Inkremen-tum

integrálása

Statisztikaitesztek

tervezése

Integráltrendszer

tesztelése

Hibák kijavítása

Page 22: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 22

A Cleanroom folyamat szervezete

• Specifikációs csapat:A rendszerspecifikáció kidolgozását és karbantartását végzi.

• Fejlesztő csapat:A fejlesztést és verifikálást végzi. A szoftvert nem futtatja.

• Hitelesítő csapat:A formális specifikáción alapuló statisztikai teszteket dolgozza ki (a fejlesztéssel párhuzamosan) és futtatja le.

Page 23: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 23

Szoftver tanúsításTanúsítás:

Egy független szervezet, vagy hatóság igazolja, hogy a szoftver megfelel egy bizonyos célnak, vagy szabványnak.– Célja: leginkább a bizalom erősítése, de gyakran a bizonytalan,

hibás szoftverek kitiltása egy alkalmazási körből(pl. APEH, VPOP, stb. tanúsítványok)

– Egy komponens tanúsításának célja lehet, hogy a komponens felhasználóit meggyőzze egy szabványnak való megfelelőségről,

dea tanúsítvánnyal rendelkező komponens nem jelent garanciát a rendszer megfelelőségére!

• A minőségi tanúsítás legbiztosabb módja, ha a szoftver fejlesztési folyamatot tanúsítják - CMM

Page 24: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 24

Ö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

analizálá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, vagy nem használt kódrészletek.

Page 25: A SZOFTVERTECHNOLÓGIA ALAPJAI

ASZOFTVERTECHNOLÓGIA

ALAPJAI

Felhasználói felületek tervezése

10. – 11. előadás

PPKE-ITK

Page 26: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 26

Tartalom – felhasználói felületek tervezése

1. A felhasználói kezelőfelület2. A felhasználói kezelőfelületek tervezésének alapelvei3. A felhasználó és a rendszer kapcsolata4. Az információk megjelenítése

4.1 Színek alkalmazása

5. Felhasználói támogatás5.1 Hibaüzenetek5.2 A súgó tervezése5.3 Felhasználói dokumentáció

6. A felhasználói felületek értékelése

Page 27: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 27

1. A 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.

• 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 a szoftver tervező feladata.

Page 28: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 28

Grafikus felületek

• A korai rendszerek csak alfanumerikus terminálokat alkalmazhattak, a kezelőfelület karakteres, vagy űrlap jellegű volt. Már ekkor kialakultak a kezelőfelületekkel szembeni alapkövetelmények:– Legyen strukturált, következetes, áttekinthető,– Biztosítson segítő szolgáltatásokat,– A hibákat egyértelműen jelezze.

• Ma csaknem minden rendszer 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.

Page 29: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 29

A grafikus felület jellemzői

Jellemző Leírás

AblakokAz ablaktechnikával több ablakban egyszerre többféle információ jeleníthető meg.

IkonokAz ikonokkal az információ fajtái jelölhetők: állományok, folyamatok, stb.

MenükA 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.

PozicionálásEgér, 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(színek)

Grafikus elemek és színek alkalmazása a szöveg mellett (vagy helyett) áttekinthetőbbé teszi a képernyőt.

Page 30: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 30

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é.

Page 31: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 31

Felhasználó-centrikus tervezés

• A sok egyéb mellett a szoftvertervező feladata a felhasználói kezelőfelület tervezése is.

• 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 tegyük számára megfoghatóvá és érthetővé a tervet.

Page 32: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 32

A felhasználói kezelőfelület tervezése

Felhasználóitevékenységelemzése ésmegértése

Papír alapútervek

készítése

A tervekkiértékelése afelhasználóval

Dinamikustervezésiprototípuskészítése

A tervekkiértékelése afelhasználóval

A véglegesfelhasználói

felület készítése

Tervezésiprototípus

Végrehajthatóprototípus

Page 33: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 33

2. A felhasználói kezelőfelületek tervezé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 figyelembe kell venni.

• A grafikus felhasználói felületek tervezésének alapelvei minden felhasználói interakció tervezésének alapjául szolgálhatnak.

Page 34: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 34

Tervezési alapelvek – I.

• A 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.

Page 35: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 35

Tervezési alapelvek – II.

• Visszaállíthatóság– Minden helyzetben számítani kel arra, hogy a felhasználó

hibázhat, ezért gondoskodni kell 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”

• A felhasználó támogatása– A felületnek könnyen elérhető segítő, vagy súgó rendszerrel kell

rendelkeznie. A súgót strukturálni kell, nem szabad túl sok információt közölni. Előnyös a helyzetfüggő súgó alkalmazása.

• A 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.

Page 36: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 36

3. A felhasználó és a rendszer kapcsolata

• Az interaktív rendszer tervezésekor két kulcskérdést kell megoldani:– Hogyan jusson el az információ a felhasználótól a rendszerhez,

és– 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.

Page 37: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 37

Az interakciók fajtái – I.

• Közvetlen manipuláció:– A felhasználó közvetlenül a képernyőn látható objektumot kezeli

(pl. törléshez kukába viszi).– Előnyei:

• Könnyen tanulható és gyors,

• A felhasználó azonnal visszajelzést kap, így a tévedés gyorsan visszavonható.

– Hátrányai:• 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 objektumok egyértelműen megkülönböztethető ikonokkal reprezentálhatók.

Page 38: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 38

Az interakciók fajtái – II.

• Menükiválasztás:– A felhasználó a rendszer által felkínált (sokszor helyzet-fü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.

– Alkalmazható az egyszerű (pl. érintőképernyős) terminálokon is.– Előnyei:

• 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ányai:• 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 strukturálni kell a menüket.

• A gyakorlott felhasználó számára lassú.

Page 39: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 39

Az interakciók fajtái – III.

• Űrlapkitöltés:– Az űrlap az aktuális állapothoz alkalmazható, – Olyan rendszerekben alkalmazzák, ahol sok adatot kell bevinni

(pl. adatrögzítés).– Előnyei:

• A felhasználói hibák felfedhetők és jelezhetők, illetve kivédhetők,

• Könnyen megtanulható.

– Hátránya:• Nagy képernyőfelületet foglal

Page 40: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 40

Az interakciók fajtái – IV.

• Parancsnyelv:– A felhasználó parancsokat gépelve utasítja a rendszert (pl.

Unix)– Előnyei:

• 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ányai:• 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

– A parancsnyelveket a gyakorlott felhasználó számára lehet alkalmazni. A menürendszer alternatívájaként célszerű alkalmazni.

Page 41: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 41

Az interakciók fajtái – V.

• 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.

Page 42: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 42

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 (pl. Model-View-Controller, MVC)

Grafikusfelület

kezelője

Operációs rendszer

Parancssorosinterpreter

Grafikusfelhasználói

felület

Parancssorosinterfész

Page 43: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 43

4. 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, vagy más módon (pl. grafikusan, akár hang kíséretében).

• A jól tervezett rendszerekben maga az információ és az azt megjelenítő szoftver különválik.

• A Model-View-Controller (MVC) általánosan alkalmazott architektúra az adatok többféle megjelenítését.

Page 44: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 44

Az információ megjelenítése

• Az MVC paradigmá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.

Megjelenítendőinformáció

Megjelenítőszoftver

A B C

D E F

G H I

Page 45: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 45

Az információk megjelenítése

Az információ lehet:• Statikus információ:

– É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 információ:– 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

A megjelenítés stílusában meg kell különböztetni őket.

Page 46: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 46

A megjelenítés módjának kiválasztása

Szempontok:• 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 kel 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.)

Page 47: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 47

Alternatív megjelenítés

Sok esetben a relatív értékek, vagy tendenciák fontosak, de szükség van a pontos értékre is.

0,0

5,0

10,0

15,0

20,0

25,0

30,0

35,0

Jan Febr Márc Ápr Máj

Budapest

Vidék

Jan Febr Márc Ápr MájBudapest 27 29 29,5 30 31Vidék 25 28 32 35 34

Page 48: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 48

Analóg és digitális megjelenítés

• Digitális megjelenítés:– Pontos értékeket közöl,– Kevés helyet foglal a képernyőn.

• Analóg megjelenítés:– Egy pillantással áttekinthető,– Relatív értékeket is képes közölni:

• 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

25 %

75 %

2

3

4

1

0 10 20

Page 49: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 49

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.

Page 50: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 50

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.

• Lehetséges adatmegjelenítési módok:– Időjárási információt célszerű térképen ábrázolni.– Egy telefonhá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.

Page 51: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 51

4.1 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.

• Veszélyei vannak:– 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.

Page 52: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 52

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 a maximum

• 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.

Page 53: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 53

5. 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, stb.

• 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ó.

Page 54: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 54

A súgó és üzenő rendszer

Alkalmazásirendszer

HibaüzenetekSúgó

ablakok

Súgóinterfész

Hibaüzenőinterfész

Üzenetmegjelenítő

rendszer

Page 55: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 55

5.1 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.

Page 56: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 56

Az üzenetek szövegezése

Szövegkör-nyezet

A tájékoztató rendszernek mindig a felhasználó tevékenységéhez és a rendszer aktuális állapotához igazodó üzenetet kell adnia.

TapasztalatA 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 tájékoztató rendszernek mindkét üzenettípust fel kell kínálnia.

Képzettség

Az üzeneteket a felhasználó képzettségéhez és gyakorlatához kell igazítani. A különböző felhasználók számára szánt üzeneteket különböző módon, a számára érthető terminológiával kell megfogalmazni.

Stílus Az üzeneteket pozitív módon építő jelleggel kell megfogalmazni. Egy üzenet soha nem lehet sértő és nem gúnyolódhat.

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.

Page 57: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 57

Példa rossz és jó üzenetekre I.

Kérem, adja meg a beteg nevét,utána kattintson az OK gombra

Kiss Aranka

A beteg neve:

OK Mégse

Page 58: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 58

Példa rossz és jó üzenetekre II.

# 27-es hibaÉrvénytelen

betegazonosítótadott meg!

OK Mégse

?Kiss Arankanevű beteg nincs a nyilvántartásban

- Kattintson a Betegek gombra a betegek listájához.- Kattintson az Ismét gombra a név ismételt beírásához.- A Súgó gombra kattintva további segítséget kaphat.

Betegek IsmétSúgó Mégse

A rossz példa:Negatív szemléletű,rendszerorientált,nem javasol megoldást

A jó példa:Pozitív szemléletű,felhasználó-orientált,megoldást javasol

Page 59: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 59

5.2 A súgó tervezése

• A felhasználó segítségért, 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.

Page 60: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 60

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.

Page 61: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 61

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.

Page 62: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 62

Egy súgórendszer belépési pontjai

Legfelsőszintűbelépés

Belépés ahibaüzenetrendszerből

Belépésazalkalmazásból

Page 63: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 63

5.3 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.

Page 64: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 64

Dokumentumtípusok• Funkcionális leírás:

– A rendszer funkcióinak rövid leírása.

• Bevezető kézikönyv:– A rendszer helyes használatának leírása, sok példával.

• 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:– A telepítés menete, a teendők listája, a beállítások ismertetése.

• Üzemeltetési-, adminisztrátori kézikönyv:– A rendszer működtetésének, a hibák kijavításának leírása.

Page 65: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 65

6. A 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.

• Egyszerűbb módszerek:– Kérdőívek,– A felhasználók megfigyelése munka közben,– A jellegzetes rendszerhasználat felvétele videóra– Kódrészletek beépítése a gyakori hibák gyűjtésére.,

Page 66: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 66

A használhatóság jellemzői

TanulhatóságMennyi idő alatt tudja egy új felhasználó produktív módon megtanulni a rendszer használatát.

Műveleti sebességMennyire felel meg a rendszer válaszideje a felhasználó munkatempójának.

RobusztusságMennyire toleráns a rendszer a felhasználói hibákkal szemben.

VisszaállíthatóságMilyen jól áll helyre a rendszer a felhasználói hibák után.

AdaptálhatóságMennyire van kötve a rendszer egy egyedi munkamodellhez.

Page 67: A SZOFTVERTECHNOLÓGIA ALAPJAI

PPKE-ITK Szoftvertechnológia-2011 10 / 67

Összefoglalás

• A felhasználói felületek tervezésekor mindenekelőtt a felhasználót kell szem előtt tartani. A felületnek logikusnak, konzisztensnek kell lennie és támogatnia kell a felhasználót a hibák kijavításában.

• Grafikus megjelenítést akkor kell használni, ha megközelítő értékeket, trendeket kell bemutatni.

• A színeket visszafogottan és következetesen kell alkalmazni.

• A felületnek on-line súgót kell szolgáltatnia.• A hibaüzeneteknek pozitívnak kell lenniük.• A felhasználói dokumentációkat különböző felkészültségű

felhasználók számára kell elkészíteni.