Szofttech 101-137

0.0(0)
studied byStudied by 2 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/36

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

37 Terms

1
New cards

Jellemezze az egység (unit) tesztet!

Az egységtesztelés az egyes komponensek elszigetelt tesztelésének folyamata.

Ez egy hibatesztelési folyamat.

Az egységek lehetnek:

  • Egy objektumon belüli egyes funkciók vagy módszerek

  • Több attribútummal és metódussal rendelkező objektumosztályok

  • Összetett komponensek meghatározott interfészekkel, amelyeket a funkcionalitásuk eléréséhez használnak.

2
New cards

Mit jelent az automatizált tesztelés?

Ahol csak lehetséges, az egységtesztelést (unit test) automatizálni kell, hogy a tesztek kézi beavatkozás nélkül fussanak és ellenőrizhetők legyenek.

Az automatizált egységtesztelés során a programtesztek megírásához és futtatásához egy tesztautomatizálási keretrendszert (például a JUnit-et) használ.

A keretrendszerek általános tesztosztályokat biztosítanak, amelyeket kiterjesztve egyedi tesztesetek hozhatók létre. Ezután képesek lefuttatni az összes implementált tesztet, és - gyakran valamilyen grafikus felületen keresztül - jelentést készíteni a tesztek sikerességéről.

3
New cards

Milyen tesztelési stratégiákat ismer?

  • Partíciós tesztelés, ahol a bemenetek olyan csoportjait azonosítja, amelyek közös jellemzőkkel rendelkeznek, és amelyeket azonos módon kell feldolgozni.
    ○       Mindegyik csoportból érdemes teszteket választani.

  • Irányelv-alapú tesztelés, ahol a tesztelési irányelvek alapján választja ki a teszteseteket.
    ○       Ezek az iránymutatások a korábbi tapasztalatokat tükrözik, hogy a programozók ilyen hibákat követnek el gyakran a komponensek fejlesztése során.

4
New cards

Mit jelent a partíciós tesztelés? Hogyan határozzák meg a partíciókat?

●       Partíciós tesztelés, ahol a bemenetek olyan csoportjait azonosítja, amelyek közös jellemzőkkel rendelkeznek, és amelyeket azonos módon kell feldolgozni.

○       Mindegyik csoportból érdemes teszteket választani.

5
New cards

Mit jelent az irányelv alapú tesztelés? Írjon le 2 irányelvet.

  • Irányelv-alapú tesztelés, ahol a tesztelési irányelvek alapján választja ki a teszteseteket.    

  • Ezek az iránymutatások a korábbi tapasztalatokat tükrözik, hogy a programozók milyen hibákat követnek el gyakran a komponensek fejlesztése során.

6
New cards

Jellemezze a komponens tesztelést!

  • A szoftverkomponensek gyakran összetett komponensek, amelyek több, egymással kölcsönhatásban álló objektumból állnak.
    ○ Például az időjárás-állomás rendszerben az újrakonfigurációs komponens olyan objektumokat tartalmaz, amelyek az újrakonfiguráció minden egyes aspektusával foglalkoznak.

  • Ezeknek az objektumoknak a funkcionalitását a meghatározott komponensinterfészen keresztül lehet elérni.

  • Az összetett komponensek tesztelésének ezért arra kell összpontosítania, hogy megmutassa, hogy a komponens interfésze a specifikációjának megfelelően viselkedik.
    ○Feltételezhető, hogy a komponens egyes objektumainak egységtesztjei elkészültek.

7
New cards

Mit jelent az interfészek tesztelése? Milyen interfész típusokat ismer?

A cél az interfészhibákból vagy az interfészekre vonatkozó érvénytelen feltételezésekből eredő hibák felderítése.

Interfész típusok:

  • Paraméter-interfészek: Az egyik metódusból vagy eljárásból a másikba átadott adatok.

  • Megosztott memória interfészek: A memóriablokkot megosztják az eljárások vagy függvények között.

  • Eljárási interfészek: Az alrendszer más alrendszerek által hívható eljárások halmazát foglalja magába.

  • Üzenetátviteli interfészek: Az alrendszerek szolgáltatásokat kérnek más alrendszerektől.

8
New cards

Milyen interfész hibák lehetségesek?

  • Az interfész helytelen használata

  • Interfész félreértése

  • Időzítési hibák

9
New cards

Jellemezze a rendszertesztelést!

A rendszer tesztelése során a külön fejlesztett, újrafelhasználható komponensek és a megvásárolható rendszerek integrálhatók az újonnan kifejlesztett komponensekkel. Ezt követően a teljes rendszert tesztelik.

10
New cards

Ismertessen néhány alapelvet rendszertesztelésre vonatkozóan!

A fejlesztés során a rendszer tesztelése magában foglalja az összetevők integrálását a rendszer egy verziójának létrehozásához, majd az integrált rendszer tesztelését.

A rendszertesztelés során a komponensek közötti kölcsönhatások tesztelése áll a középpontban.

A rendszer tesztelése azt ellenőrzi, hogy az összetevők kompatibilisek-e, megfelelően működnek-e együtt, és a megfelelő adatokat a megfelelő időben továbbítják-e a kapcsolódási pontjaikon keresztül.

A rendszertesztelés a teljes rendszer viselkedését vizsgálja.

11
New cards

Mit jelent és mi az alapja a tesztvezérelt fejlesztésnek?

A tesztvezérelt fejlesztés (TDD - Test-driven development) a programfejlesztés olyan megközelítése, amelyben a tesztelést és a kódfejlesztést összekapcsoljuk.

A teszteket a kód előtt írják, és a tesztek “sikeressége" a fejlesztés kritikus mozgatórugója.

A kódot inkrementálisan fejleszti, az adott inkrementumhoz tartozó tesztekkel együtt. Addig nem lépnek tovább a következő lépcsőfokra, amíg a kifejlesztett kód át nem megy a tesztelésen.

A TDD-t az olyan agilis módszerek részeként vezették be, mint az Extrém Programozás. Azonban tervvezérelt fejlesztési folyamatokban is alkalmazható.

12
New cards

Mi a TDD?

A tesztvezérelt fejlesztés (TDD - Test-driven development) a programfejlesztés olyan megközelítése, amelyben a tesztelést és a kódfejlesztést összekapcsoljuk.

13
New cards

Mutassa be a tesztvezérelt fejlesztés folyamatának lépéseit!

  • Kezdje a szükséges funkcionalitás meghatározásával. Ennek általában kicsinek és néhány sornyi kóddal megvalósíthatónak kell lennie.

  • Írjon tesztet erre a funkcióra, és valósítsa meg automatizált tesztként.

  • Futtassa a tesztet az összes többi végrehajtott teszttel együtt. Kezdetben nem implementálta a funkciót, így az új teszt sikertelen lesz.

  • Implementálja a funkciót, és futtassa le újra a tesztet.

  • Ha minden teszt sikeresen lefutott, továbbléphet a következő funkcionalitás megvalósításához.

14
New cards

Mi a regressziós tesztelés?

A regressziós tesztelés a rendszer tesztelése annak ellenőrzésére, hogy a változtatások nem “rontották-e el" a korábban működő kódot.

A manuális tesztelési folyamat esetén a regressziós tesztelés költséges, de az automatizált teszteléssel egyszerű és egyértelmű. Minden tesztet újra lefuttatunk minden alkalommal, amikor a programban változás történik.

A teszteknek "sikeresen" kell lefutniuk, mielőtt a változtatás rögzítésre kerül.

15
New cards

Jellemezze a release tesztet!

A release tesztelés a rendszer egy adott kiadásának tesztelése, amelyet a fejlesztőcsapaton kívüli használatra szánnak.

A release tesztelési folyamat elsődleges célja, hogy meggyőzze a rendszer szállítóját arról, hogy a rendszer elég jó a használathoz.
A release tesztelésnek tehát azt kell bizonyítania, hogy a rendszer biztosítja a meghatározott funkcionalitást, teljesítményt és megbízhatóságot, és hogy normál használat során nem hibásodik meg.

A release tesztelés általában egy fekete dobozos tesztelési folyamat, ahol a tesztek csak a rendszerspecifikációból származnak.

16
New cards

Mi a teljesítménytesztelés? Melyik rendszertesztelési folyamatnak lehet a része?

A release tesztelés része lehet a rendszer olyan megjelenő tulajdonságainak tesztelése, mint például a teljesítmény és a megbízhatóság.

A teszteknek tükrözniük kell a rendszer használati profilját.

A teljesítménytesztek általában egy olyan tesztsorozat megtervezését foglalják magukban, amelyben a terhelést folyamatosan növelik, amíg a rendszer teljesítménye elfogadhatatlanná nem válik.

A stressztesztelés a teljesítménytesztelés egy formája, amikor a rendszert szándékosan túlterhelik, hogy teszteljék a hibás viselkedését.

17
New cards

Jellemezze a felhasználói tesztelést!

A felhasználói vagy ügyféltesztelés a tesztelési folyamat egy olyan szakasza, amelyben a felhasználók vagy az ügyfelek tanácsot adnak a rendszer teszteléséhez.

A felhasználói tesztelés elengedhetetlen, még akkor is, ha már elvégezték az átfogó rendszer- és átadási tesztelést.

Ennek oka, hogy a felhasználó munkakörnyezetéből származó hatások nagyban befolyásolják a rendszer megbízhatóságát, teljesítményét, használhatóságát és robusztusságát. Ezek nem reprodukálhatók tesztelési környezetben.

18
New cards

Mutassa be a felhasználói tesztelés 3 típusát!

  • Alfa tesztelés: A szoftver felhasználói a fejlesztőcsapattal együttműködve tesztelik a szoftvert a fejlesztő telephelyén.

  • Béta tesztelés: A szoftver egy kiadását a felhasználók rendelkezésére bocsátják, hogy kísérletezhessenek, és az általuk felfedezett problémákat felvethessék a rendszer fejlesztőinek.

  • Átvételi tesztelés: Az ügyfelek tesztelik a rendszert, hogy eldöntsék, készen áll-e arra, hogy a rendszerfejlesztőktől átvegyék és az ügyfélkörnyezetben telepítsék. Elsősorban egyedi rendszerek esetében.

19
New cards

Milyen események vezethetnek a meglévő szoftverek megváltoztatásához? Soroljon fel 4-et.

A szoftverek változása elkerülhetetlen:

  • A szoftver használatakor új követelmények merülnek fel;

  • Az üzleti környezet változik;

  • A hibákat ki kell javítani;

  • A rendszer új számítógépekkel és berendezésekkel egészül ki;

  • Előfordulhat, hogy a rendszer teljesítményét vagy megbízhatóságát javítani kell.

20
New cards

Mi az evolúció?

Egy szoftverrendszer életciklusának az a szakasza, amikor a rendszer üzemszerű használatban van, és fejlődik, mivel új követelményeket javasolnak és implementálnak a rendszerbe.

21
New cards

Mi a karbantartás?

Ebben a szakaszban a szoftver továbbra is használható marad, de csak a működés fenntartásához szükséges változtatásokat hajtják végre, azaz a hibajavításokat és a szoftver környezetében bekövetkezett változásokat tükröző változtatásokat. Új funkciókat nem adnak hozzá.

22
New cards

Ismertesse a szoftverfejlődési (evolúciós) folyamat lépéseit!

A szoftverfejlődési folyamatok a következőktől függenek

  • A karbantartott szoftver típusa;

  • Az alkalmazott fejlesztési folyamatok;

  • Az érintettek képességei és tapasztalata.

A változtatási javaslatok a rendszer fejlődésének mozgatórugói.

  • Össze kell kapcsolni a változás által érintett összetevőkkel, lehetővé téve ezáltal a változás költségének és hatásának becslését.

A változások azonosítása és fejlesztése a rendszer teljes élettartama alatt folytatódik.

Lépések:
-Igényfelmérés és tervezés
-Rendszertervezés
-Implementáció és fejlesztés
-Tesztelés és validáció
-Üzemeltetés
-Karbantartás

23
New cards

Miket nevezünk ős (legacy) rendszereknek?

Az ős rendszerek olyan régebbi rendszerek, amelyek olyan nyelvekre és technológiákra támaszkodnak, amelyeket már nem használnak az új rendszerek fejlesztéséhez.

Az ős szoftverek régebbi hardvertől, például nagyszámítógépektől függhetnek, és ehhez kapcsolódóan régebbi folyamatok és eljárások is létezhetnek.

Az ős rendszerek nem csupán szoftverrendszerek, hanem szélesebb körű társadalmi-technikai rendszerek, amelyek magukban foglalják a hardvert, a szoftvereket, a könyvtárakat és más támogató szoftvereket és üzleti folyamatokat.

24
New cards

Sorolja fel a legacy rendszer 6 elemét!

- Hardware – gyakran elavult mainframe hardver
- Support software – gyakran a szolgáltatók már nem léteznek
- Application software – Gyakran elavult programnyelveken íródtak
- Application data – Gyakran hiányos és inkonzisztens
- Business processes – A szoftver struktúrája és funkcionalitása korlátozhatja
- Business policies and rules – A szoftverbe implicit módon beépülhet

25
New cards

Miért költséges az ős rendszerek változtatása? Írjon 4 lehetőséget.

-Komplexitás és nehezen karbantartható struktúra

-Kompatibilitási problémák

-Adatmigráció és adatintegritás

-Részleges vagy teljes átállás költségei

26
New cards

Írja le a szoftver karbantartás 3 típusát!

  • Adaptív karbantartás

  • Preventív karbantartás

  • Hibajavítás

27
New cards

Mivel foglalkozik a szoftverprojekt-menedzsment?

A szoftver időben és pontosan történő leszállítása:

  • Az ütemtervnek megfelelően

  • A fejlesztő szervezetek követelményeinek megfelelően

  • A szoftvert beszerző szervezetek követelményeinek megfelelően.

28
New cards

Mikor nevezhető egy szoftverprojekt sikeresnek?

  • A szoftver átadása az ügyfélnek a megbeszélt időpontban.

  • Összköltségek a költségvetési kereteken belül.

  • Az ügyfél elvárásainak megfelelő szoftver szállítása.

  • Koherens és jól működő fejlesztői csapat fenntartása.

29
New cards

Miért különbözik egy szoftverprojekt más projektektől?

  • A termék megfoghatatlan.

  • Sok szoftverprojekt "egyszeri" projekt.

  • A szoftverfolyamatok változóak és szervezetspecifikusak.

30
New cards

Milyen feladati vannak egy szoftverprojekt menedzsernek? Soroljon fel legalább 4-et!

  • Projekttervezés

  • Kockázatkezelés

  • Emberek menedzselése

  • Jelentés

  • Javaslatleírás

31
New cards

Mi a kockázatkezelés, miért fontos és mi a szerepe a projektmenedzsernek a kockázatok kezelésében?

A kockázatkezelés a kockázatok azonosításával és a projektre gyakorolt hatásuk minimalizálására irányuló tervek kidolgozásával foglalkozik.

A szoftverkockázatkezelés a szoftverfejlesztésben rejlő bizonytalanságok miatt fontos.

A projektmenedzsernek előre kell látnia a kockázatokat, meg kell értenie, hogy ezek a kockázatok milyen hatással vannak a projektre, a termékre és az üzletre, és lépéseket kell tennie a kockázatok elkerülése érdekében.

32
New cards

Írja le a kockázatkezelési folyamat 4 lépését!

  • Kockázat azonosítása

  • Kockázatelemzés

  • Kockázattervezés

  • Kockázatfigyelés

33
New cards

Mi a kockázatelemzés? Milyen jellemzői vannak egy kockázatnak?

Az egyes kockázatok valószínűségének és súlyosságának elemzése.

A valószínűség lehet nagyon alacsony, alacsony, közepes, magas vagy nagyon magas.

A kockázati következmények lehetnek katasztrofálisak, súlyosak, elviselhetőek vagy jelentéktelenek.

34
New cards

Mit jelent a kockázat azonosítása? Nevezzen meg 2 db kockázattípust!

Az egyes kockázatok valószínűségének és súlyosságának elemzése.

Példa:

  • A hibajavítási arányt alábecsülik.

  • A szoftver méretét alábecsülik.

35
New cards

Milyen kockázatkezelési stratégiák kerülnek kidolgozásra a kockázattervezés során? Mutassa be őket!

  • Szervezet pénzügyi problémái: A vezetőség számára egy jelentés írása arról, hogy a projekt milyen fontos az üzleti célok sikeres végrehajtása érdekében.

  • Munkaerő toborzási gondok: A megrendelő értesítése a potenciális nehézségekről és késés lehetőségéről.

  • Komponens-vásárlás lehetőségének felmérése.

  • Munkaerő megbetegedése: A csoportok átszervezése oly módon, hogy nagyobb átfedés legyen a csoportok elvégzendő munkájában. Így könnyebb más munkájának megértése.

  • Hibás komponensek: A valószínűleg hibás komponensek kiváltása vásárolt, ismert minőségű komponensekkel.

36
New cards

Miért fontos a projekten dolgozó emberek motiválása?

  • A menedzser fontos szerepe, hogy motiválja a projektben dolgozó embereket.

  • A motiváció a munka és a munkakörnyezet olyan megszervezését jelenti, amely az embereket hatékony munkavégzésre ösztönzi.

  • Ha az emberek nem motiváltak, nem fogják érdekelni őket a munka, amit végeznek. Lassan fognak dolgozni, nagyobb valószínűséggel fognak hibázni, és nem fognak hozzájárulni a csapat vagy a szervezet tágabb céljaihoz.

37
New cards

Milyen elemeken múlik egy projektcsapat hatékonysága?

  • Megfelelő ütemterv

  • A munka megfelelő felosztása

  • Helyes kockázatelemzés

  • Megfelelő hardver-, szoftver- és eszközigények

  • Műszaki és vezetői kommunikáció