<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="hu">
	<id>https://vik.wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Lov%C3%A1sz+Botond</id>
	<title>VIK Wiki - Felhasználó közreműködései [hu]</title>
	<link rel="self" type="application/atom+xml" href="https://vik.wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Lov%C3%A1sz+Botond"/>
	<link rel="alternate" type="text/html" href="https://vik.wiki/Speci%C3%A1lis:Szerkeszt%C5%91_k%C3%B6zrem%C5%B1k%C3%B6d%C3%A9sei/Lov%C3%A1sz_Botond"/>
	<updated>2026-05-20T11:19:02Z</updated>
	<subtitle>Felhasználó közreműködései</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://vik.wiki/index.php?title=Adatb%C3%A1zisok&amp;diff=206806</id>
		<title>Adatbázisok</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=Adatb%C3%A1zisok&amp;diff=206806"/>
		<updated>2026-01-03T22:51:07Z</updated>

		<summary type="html">&lt;p&gt;Lovász Botond: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tantárgy&lt;br /&gt;
|tárgykód=VITMAB04&lt;br /&gt;
|régitárgykód=VITMAB00&lt;br /&gt;
|nev=Adatbázisok&lt;br /&gt;
|szak=info&lt;br /&gt;
|kredit=5&lt;br /&gt;
|felev=3&lt;br /&gt;
|kereszt=nincs&lt;br /&gt;
|tanszék=TMIT&lt;br /&gt;
|labor=5-6 db&lt;br /&gt;
|kiszh=(5-6 db laborbeugró)&lt;br /&gt;
|nagyzh=1 db&lt;br /&gt;
|hf=nincs&lt;br /&gt;
|vizsga=írásbeli beugró majd szóbeli&lt;br /&gt;
|tad=https://www.vik.bme.hu/kepzes/targyak/VITMAB04/&lt;br /&gt;
|targyhonlap=https://www.db.bme.hu/adatbazisok/&lt;br /&gt;
|levlista=konzi.adatlabor{{Kukac}}db.bme.hu&lt;br /&gt;
}}&lt;br /&gt;
{{Új tárgy|Adatbázisok (régi)}}&lt;br /&gt;
&lt;br /&gt;
== Követelmények ==&lt;br /&gt;
&lt;br /&gt;
=== Előtanulmányi rend ===&lt;br /&gt;
* A tárgy felvételéhez [[Bevezetés a számításelméletbe II. | Bevezetés a számításelméletbe 2]] tárgyból aláírás megszerzése szükséges.&lt;br /&gt;
&lt;br /&gt;
=== A szorgalmi időszakban ===&lt;br /&gt;
* Az &#039;&#039;&#039;aláírás&#039;&#039;&#039; feltételei:&lt;br /&gt;
** A &#039;&#039;&#039;gyakorlatok&#039;&#039;&#039;on való részvétel, max. egyről lehet hiányozni. A gyakorlatok elején &#039;&#039;&#039;kisZH&#039;&#039;&#039;-t kell írni, ezek eredménye csak visszajelzés, hogy felkészültél-e, nem számít bele a félévvégi jegybe.&lt;br /&gt;
** A &#039;&#039;&#039;nagyZH&#039;&#039;&#039; sikeres (min. 40%) megírása.&lt;br /&gt;
** A &#039;&#039;&#039;laborok&#039;&#039;&#039; sikeres teljesítése. A laborokra otthon az előzetesen kiadott segédanyagokból fel kell készülni, ezt a laborvezetők &#039;&#039;&#039;beugró&#039;&#039;&#039; formájában ellenőrzik, és elégtelen felkészülés esetén megtagadhatják a részvételt.&lt;br /&gt;
*** A laborfeladatokat mindenki egyénileg kapja a labor elején, ezeket el kell készíteni, majd a kért forrásfájlokat és a jegyzőkönyvet a labor kezdőidőpontjától számított 48 órán belül fel kell tölteni [https://fecske.db.bme.hu/ a portálra]. Többféle témájú feladatsor van, mindenki egyfélét dolgoz ki a félév során.&lt;br /&gt;
*** Ha a zárthelyit nem sikerült teljesíteni, de a laborokat igen, nincs lehetőség arra, hogy a következő tárgyfelvételnél teljesítettnek tekintsd a laborokat, mindenképp újra kell csinálni, függetlenül attól milyen jeggyel végezted el őket.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Pótlási lehetőségek:&#039;&#039;&#039;&lt;br /&gt;
** A gyakorlatok és a kisZH-k nem pótolhatók.&lt;br /&gt;
** A nagyZH egyszer, a félév közben pótolható.&lt;br /&gt;
** Egy labor pótolható az utolsó vagy pótlási héten (változó). Ennek során újra meg kell írni egy beugrót, majd a pótolandó laborhoz tartozó, a hallgató témájától eltérő témájú feladatsort kell megoldani és feltölteni, szintén 48 órás határidővel.&lt;br /&gt;
&lt;br /&gt;
===A vizsgaidőszakban===&lt;br /&gt;
* &#039;&#039;&#039;Elővizsga:&#039;&#039;&#039; nincs.&lt;br /&gt;
* &#039;&#039;&#039;Vizsga:&#039;&#039;&#039; szóbeli. A vizsgák írásbeli beugróval kezdődnek, ennek során egyetlen feladatot kell kb. 15 perc alatt súlyos hiba nélkül megoldani ahhoz, hogy a vizsga a szóbelivel folytatható legyen. Sikeres beugrót követően, a szóbeli vizsgán tételt kell húzni (ez általában két témakört fed le), aminek kidolgozására kb. 15 perc áll rendelkezésre. A húzott tétel csak kiindulási alap, a szóbeli vizsga nem kizárólag erre fókuszál. Lehetőség szerint a hallgatók a gyakorlatvezetőiknél szóbeliznek, akik a teljes tananyagból tetszőleges sorrendben is tesznek fel kérdéseket, hogy a hallgató felkészültségéről meggyőződjenek.&lt;br /&gt;
** Akik félév közben legalább 4-es (70% feletti) ZH-t írtak és a tárgyat (régi kódút ideértve) első alkalommal veszik fel, azok a beugró alól mentesülnek. A pótZH-ra ez az ajánlat nem vonatkozik.&lt;br /&gt;
&lt;br /&gt;
=== Félévvégi jegy ===&lt;br /&gt;
* A laboreredmények átlaga és a vizsgán szerzett osztályzat 40%-60% arányban számít bele a félévvégi jegybe.&lt;br /&gt;
&lt;br /&gt;
== Segédanyagok ==&lt;br /&gt;
=== Gyakorlatok ===&lt;br /&gt;
&lt;br /&gt;
* Feladatlapok (korábbi évekből, de más évben is ezt szokták végigvenni):&lt;br /&gt;
# [[Média:Adatb gyak 2017 1.pdf|ER-modellezés]]&lt;br /&gt;
# [[Média:Adatb gyak 2017 2.pdf|Relációs lekérdezések]]&lt;br /&gt;
# [[Média:Adatb gyak 2017 3.pdf|Fizikai adatszervezés]]&lt;br /&gt;
# [[Média:Adatb gyak 2017 4.pdf|Lekérdezések optimalizálása]]&lt;br /&gt;
# [[Média:Adatb gyak 2017 5.pdf|Tranzakciókezelés]]&lt;br /&gt;
# [[Média:Adatb gyak 2018 6.pdf|Normálformák]]&lt;br /&gt;
* (Rész)megoldások:&lt;br /&gt;
** [[Adatbázisok_-_EK_modellezés_gyakorlat|ER modellezés]]&lt;br /&gt;
** [[Adatbázisok_-_Relációs_lekérdezések_gyakorlat|Relációs lekérdezések]]&lt;br /&gt;
** [[Adatbázisok_-_Fizikai_szervezés_gyakorlat|Fizikai szervezés]]&lt;br /&gt;
** [[Média:Tranzakciokezeles gyakorlat-vegleges.pdf| Tranzakciókezelés]]&lt;br /&gt;
** [[Adatbázisok_-_Normalizálás_gyakorlat|Normalizálás]] (a régi tárgy tematikájára illeszkedő [[Média:Adatb gyak 2017 6.pdf|feladatlaphoz]] készült, részben még használható az új tárgyhoz)&lt;br /&gt;
* &#039;&#039;A gyakorlatok feladatlapjain vannak gondolkodtató kérdések, további feladatok. ZH-ra készülés közben ezeket mindenképp érdemes megpróbálni megoldani, mert a ZH-n is lesznek gondolkodtató feladatok.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Segédanyagok különböző témakörökben ===&lt;br /&gt;
&lt;br /&gt;
* Relációs lekérdezések&lt;br /&gt;
** [[Média:Adatb kalkulus feladatok.pdf|Feladatok és megoldások]]&lt;br /&gt;
* Relációs tervezés&lt;br /&gt;
** [[Média:Adatb relacios tervezes.pdf|Fogalmak és algoritmusok]]&lt;br /&gt;
** [http://pts.szit.bme.hu/ Szabó Péter] 2001-ben készített egy segédanyagot a relációs tervezés témakörébe tartozó feladatokkal és megoldásaikkal. A dokumentum apróbb javításokkal letölthető innen: [[Média:Adatb relacios peldak.pdf|adatb_relacios_peldak.pdf]].&lt;br /&gt;
** [[Média:Adatb relacios konyvtaros feladat.doc|adatb_relacios_konyvtaros_feladat.doc]]: Szama-féle könyvtáras példa explained&lt;br /&gt;
* Lekérdezés optimalizálás&lt;br /&gt;
** [[Média:Adatb lekerdezesopt.pdf|Segédanyag a lekérdezések optimalizálásához]]&lt;br /&gt;
** [[Média:Adatb dia opt 2014.pdf|2014-es diasor]]&lt;br /&gt;
** [[Média:Adatb dia opt 2016.pdf|2016-os diasor]]&lt;br /&gt;
* Tóth Kristóf 2016-ban készített jegyzetei:&lt;br /&gt;
** [[Média:Adatb jegyzet Toth-Kristof 2016 eloadas part1.pdf|Előadások 1. rész]] (26 MB)&lt;br /&gt;
** [[Média:Adatb jegyzet Toth-Kristof 2016 eloadas part2.pdf|Előadások 2. rész]] (15 MB)&lt;br /&gt;
** [[Média:Adatb jegyzet Toth-Kristof 2016 gyakorlat.pdf|Gyakorlatok]] (16 MB)&lt;br /&gt;
* [[Média:Tomor adatb 2020.PDF| Tömör adatb összefoglaló - 2020]]&lt;br /&gt;
* [[Média:Tomor adatb labor 2020.PDF| Tömör adatb labor összefoglaló - 2020]]&lt;br /&gt;
* &#039;&#039;&#039;[[Média:Adatbazisok jegyzet 2022 v2.pdf| Teljes adatb jegyzet/ZH-ra/vizsgára - 2022]]&#039;&#039;&#039; (Tartalmaz hibákat, főleg a képleteken)&lt;br /&gt;
&lt;br /&gt;
=== Laborok ===&lt;br /&gt;
* [[Média:Adatb sql segedlet.pdf|Oracle és SQL laborok segédanyagai]]&lt;br /&gt;
* Az első labort kezd az 5. feladat megoldásával. Ehhez egy labortársaddal kellene együtt dolgozni, ami az óra ideje alatt könnyebb.&lt;br /&gt;
* [https://db.bme.hu/lists/info/konzi.adatlabor Levlista archívum]&lt;br /&gt;
** A levlistára a beadó portálon keresztül is fel lehet iratkozni.&lt;br /&gt;
** Kérdés feltétele előtt érdemes az archívumban keresni. A laborfeladatokhoz sok kérdést már feltettek korábbi években is.&lt;br /&gt;
** Az archívum megtekintéséhez be kell jelentkezni. Ehhez kérj egy jelszó emlékeztetést a beadó portálon használt (alapesetben Neptunban megadott) címedre, hogy megkapd a jelszót, amiben a levlist-portálra be tudsz lépni.&lt;br /&gt;
** Erre a levlistára nem csak laborokkal kapcsolatos, hanem egyéb, ZH/vizsgához kapcsolódó kérdést is írhatsz! A listát sok gyak- és laborvezető és a többi hallgató olvassa, hamar választ kaphatsz.&lt;br /&gt;
&lt;br /&gt;
=== Külső linkek ===&lt;br /&gt;
* [http://www.agt.bme.hu/szakm/adatb/adatb.htm BME Általános és Felsőgeodézia Tanszék &amp;amp;ndash; Adatbáziskezelés és szervezés] (nem mindig precíz definíciókkal, de sok példával magyaráz)&lt;br /&gt;
* [http://www.inf.u-szeged.hu/sites/default/files/db-ea1.pdf Szegedi Tudományegyetem &amp;amp;ndash; Adatbázisok előadási jegyzet]&lt;br /&gt;
* [http://web.cecs.pdx.edu/~maier/TheoryBook/TRD.html David Maier: The Theory of Relational Databases] a mélyebb ismeretekre vágyóknak ajánlott :)&lt;br /&gt;
* [http://phlonx.com/resources/nf3/ Normalizálás érthetően elmagyarázva]&lt;br /&gt;
* [https://oberstar.eu.org/share/Documents/The-Manga-guide-to-databases.pdf The manga guide to databases] - Adatbázisok elmagyarázva animében&lt;br /&gt;
&lt;br /&gt;
== ZH ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;A tanári gárda kérésére zárthelyiket ne töltsünk fel a wikire.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* A zárthelyi sikeres teljesítéséhez szükséges a használt definíciók és elvek pontos ismerete és gyakorlott használata, ennek megfelelően rendszeres tanulás nélkül 1-2 nap intenzív felkészülés nem szokott elég lenni rá. A 10. heti zárthelyi jellemzően szorosan követi más tárgyak számonkéréseit, házi feladat leadásait, ezért érdemes időben nekilátni a felkészülésnek.&lt;br /&gt;
* A zárthelyi hasonló a Bevezetés a számításelméletbe 1-2. tárgyak írásbeli számonkéréseihez.&lt;br /&gt;
* 4-es vagy 5-ös zárthelyi beugrómentességet garantál a vizsgán, ekkor elég a szóbeli vizsga időpontjában megjelenni. Ez a kedvezmény a pótlási alkalmakra nem vonatkozik, azokon osztályzat helyett csak GO/NO GO eredmény érhető el.&lt;br /&gt;
* A pótZH-n számon kért anyag megegyezik a ZH anyagával.&lt;br /&gt;
&lt;br /&gt;
A tárgyhonlapon is elérhető minta zh [[Média:Adatb mintazh 2013-11-21 feladatlap.pdf|feladatlapja]] és [[Média:Adatb mintazh 2013-11-21 megoldas.pdf|megoldása]].&lt;br /&gt;
&lt;br /&gt;
[[Adatbázisok/ZH feladatok|Korábbi kódú tárgyak ZH feladatsora alapján készült válogatás az új tárgy ZH előtti részeihez.]]&lt;br /&gt;
&lt;br /&gt;
== Vizsga ==&lt;br /&gt;
* [[Média:Adatb mintabeugro.docx|Mintabeugró]]&lt;br /&gt;
* [[Adatbázisok BSc záróvizsga|BSc záróvizsga]]&lt;br /&gt;
* [[Adatbázisok/Vizsga feladatok|Korábbi kódú tárgyak ZH feladatsora alapján készült válogatás az új tárgy ZH utáni részéhez.]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;A tanári gárda kérésére beugrókat ne töltsünk fel a wikire.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Média:Adatb vizsga temakorok 2017.pdf|Témakörök listája]]&lt;br /&gt;
&lt;br /&gt;
A témakörök listája nem egyenértékű a tételsorral, kicsit eltérnek ettől, egy tétel több/kevesebb témakört is lefedhet. Ebből a listából tudhatod, mit tanultunk a félévben.&lt;br /&gt;
&lt;br /&gt;
A tárgyból hetente több vizsgaalkalom van, mindegyikhez van várólista Neptunban. Az utolsó vizsgák mindig teltházasak. Ezért érdemes a vizsgáidat jó előre, megfelelően ütemezni. A vizsga a Bevezetés a számításelméletbe 1-2. tantárgyak vizsgáihoz hasonló felkészülést igényel, az anyag mennyisége azonban – ez nyilván szubjektív – nagyobb egy BSz tárgynál, és beugró is van. Jellemzően ugyan a beugró okozza a bukásokat, de a szóbelin is meg lehet bukni, ugyanakkor ritka a közepesnél rosszabb osztályzat.&lt;br /&gt;
&lt;br /&gt;
== Tippek ==&lt;br /&gt;
Az Adatbázisok  oktatásának filozófiájáról bővebben a levelezőlista archívumában olvashattok:&lt;br /&gt;
&lt;br /&gt;
* https://lists.sch.bme.hu/wws/arc/info99/2003-03/msg00029.html&lt;br /&gt;
* https://lists.sch.bme.hu/wws/arc/info99/2003-03/msg00060.html&lt;br /&gt;
* https://lists.sch.bme.hu/wws/arc/info2008/2010-11/msg00319.html&lt;br /&gt;
* https://lists.sch.bme.hu/wws/arc/info2008/2010-11/msg00333.html&lt;br /&gt;
&lt;br /&gt;
=== Miből érdemes tanulni? ===&lt;br /&gt;
* Bejárni az előadásokra és a gyakorlatokra, óráról-órára megérteni az ott elhangzottakat&lt;br /&gt;
* Gajdos Sándor: Adatbázisok. Félév elején szokta hirdetni a vásárlás feltételeit, külön nyomtatnak a tárgyhoz jegyzetet.&lt;br /&gt;
* A téma iránt mélyebben érdeklődők számára hasznosak lehetnek az alábbi könyvek. A tárgy teljesítéséhez nem szükségesek.&lt;br /&gt;
** Ullman&amp;amp;ndash;Widom: Adatbázisrendszerek &amp;amp;ndash; alapvetés, 2. kiadás, Panem, 2008.&lt;br /&gt;
** Garcia-Molina&amp;amp;ndash;Ullman&amp;amp;ndash;Widom: Adatbázisrendszerek megvalósítása, Panem, 2001.&lt;br /&gt;
* [http://www.cs.bme.hu/~kiskat/adatbazis/dbea.html Katona Gyula diasorai (2005)], [[Média:Adatbazisok 2005 Katona Gyula eloadasok.pdf| Katona Gyula előadásai (4 dia/oldal)]] , [[Média:Adatbazisok 2005 Katona Gyula eloadasok 1 per oldal.pdf| Katona Gyula előadásai (1 dia/oldal)]]&lt;br /&gt;
&lt;br /&gt;
== Kedvcsináló ==&lt;br /&gt;
&lt;br /&gt;
Interjú Gajdos Sándorral: Az Impulzus [https://issuu.com/impulzus/docs/impulzus_42_02/66 42. évfolyamának 2. számában, a 66. oldaltól], illetve folytatása az [http://www.impulzus.com/blog/2014/11/27/gajdos-sandor/ Impulzus blogon]&lt;br /&gt;
&lt;br /&gt;
=== TMIT, Gajdos Sándor (Ötéves és BSc képzés) ===&lt;br /&gt;
&lt;br /&gt;
==== Tóth Márton ====&lt;br /&gt;
Nekunk beharangoztak, hogy huuuu de neheeeeeez ez a targy, es ehhez meg Gajdos is hozzatesz egy lapattal. Hat ezt annyira tem tapasztaltam, de az ellenkezojet se mondanam. Ebben az volt a jo, hogy mindenki besz@rt tole, es tanult mint a guzu, ugyhogy azt kell, hogy mondjam, hogy &amp;quot;Ez a felev legnehezebb targya&amp;quot; :-)&lt;br /&gt;
Lenyegeben csak a konyvet kell tudni, de azt nagyon, illetve meg azt a nehany felmondatot, ami nincs benne a konyvben, de oran elmondjak (Gajdos szerette ezeket kerdezni a vizsgan).&lt;br /&gt;
&lt;br /&gt;
==== Percze Dániel ====&lt;br /&gt;
Gajdoshoz érdemes bejárni, szerintem jó előadásokat tart. Szerintem nehéz zh, húzós vizsga. Pszichikailag. Mottó: never give up. Azért egy sikeres Gajdos-vizsga után érzi az ember, hogy azért itt letett valamit az asztalra:))&lt;br /&gt;
&lt;br /&gt;
==== Boromissza Gergely ====&lt;br /&gt;
Óralátogatás véleményem szerint kötelező. Élvezhetőek az órák, és sokkal részletesebben mondják el, mint ami a jegyzetben benne van, és persze számon is kérik. Jegyzetből önmagában megérteni szerintem az anyagot ZH-ra nehéz. ZH példamegoldás. Az anyagot érteni kell, Gajdos tanár úr nem csinál 2 egyforma ZH-t, úgyhogy előző ZH-kat érdemes átnézni, de bemagolni kár, mert úgyis totál más feladatok lesznek...  Vizsga tételszerűségekből áll, de nincs előre tételsor, minden kell, persze szóbeli! (Megéri első alkalommal menni, mert rendesebbek akkor)&lt;br /&gt;
&lt;br /&gt;
==== Szabó Csaba (2012) ====&lt;br /&gt;
A tárgyat sokan a BSc legnehezebb tárgyának tulajdonítják, nagyrészt igazuk is van, de azért nem lehetetlen. 2012-ben új jegyzetet adtak ki, melyből jól lehet tanulni, de érdemes előadásra bejárni, mert sokkal jobban meg lehet úgy érteni az anyagot. Gyakorlat kéthetente van, azokra érdemes felkészülve menni, mert csak akkor van értelme rászánni azt a 2 órát.&lt;br /&gt;
ZH-ra úgy érdemes felkészülni, hogy témakörönként átolvasod az előadás jegyzetedet (ha van...), majd a könyvet olvasva meg is érted (!!!) az anyagot. Ezután még egyszer végigcsinálod a gyakorlat anyagát (a plusz feladatokat is), addig csinálod amíg meg nem tudod oldani, majd a könyv végén lévő példákat is megoldod magadtól és nem egyből a megoldást nézed meg. Néha sokkal többet ér fél óra gondolkodás egy feladaton, mint 5 példa átnézése megoldással együtt. Vizsgán a beugrót könnyen elronthatja az is aki biztos a tudásában, előfordul hogy elnézünk valamit.&lt;br /&gt;
&lt;br /&gt;
{{Lábléc_-_Mérnök_informatikus_alapszak_2022}}&lt;/div&gt;</summary>
		<author><name>Lovász Botond</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Sznik%C3%A1k&amp;diff=206805</id>
		<title>Záróvizsga kvíz - Sznikák</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Sznik%C3%A1k&amp;diff=206805"/>
		<updated>2026-01-03T18:25:45Z</updated>

		<summary type="html">&lt;p&gt;Lovász Botond: Elválasztás javítása&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Kvízoldal&lt;br /&gt;
|cím=ZVSznikák|pontozás=-&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a C# property, delegate és attribute vonatkozásában. Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2023 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# C# nyelven nincs lehetőség arra, hogy egy delegate objektumot függvényeknek paraméterként adjunk át.&lt;br /&gt;
# Egy C# property (tulajdonság) bevezetésekor a beállító szakasz megírása során a set kulcsszót kell használni, és a set kulcsszót követően &amp;quot;(&amp;quot; &amp;quot;)&amp;quot; zárójelek között be kell vezetni egy paramétert, melyben a tulajdonság új értékét megkapjuk.&lt;br /&gt;
# C# nyelven a readonly kulcsszó alkalmazásával van lehetőségünk csak olvasható tulajdonságok (property-k) bevezetésére.&lt;br /&gt;
# A C# eseményekről leiratkozás a -= operátorral lehetséges.&lt;br /&gt;
&lt;br /&gt;
== A feladat egy DocumentRepository (dokumentum tár) osztály elkészítése C# nyelven, mely egy eseménnyel jelzi, ha egy dokumentumot töröltek belőle, és az esemény paramétereiben megadja a törölt dokumentum nevét (docName, string típusú)! Adja meg, mely sorok alkalmazásával oldható meg az esemény megvalósítása és biztonságos elsütése! (2023 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,5,6,9}}&lt;br /&gt;
# public DocumentDeletedHandler DocumentDeleted;&lt;br /&gt;
# DocumentDeleted(docName);&lt;br /&gt;
# public DocumentDeletedHandler DocumentDeleted(string docName);&lt;br /&gt;
# event void DocumentDeleted(string docName);&lt;br /&gt;
# delegate void DocumentDeletedHandler(string docName);&lt;br /&gt;
# if (DocumentDeleted != null)&lt;br /&gt;
# DocumentDeletedHandler(docName);&lt;br /&gt;
# public event DocumentDeletedHandler DocumentDeleted(string docName);&lt;br /&gt;
# public event DocumentDeletedHandler DocumentDeleted;&lt;br /&gt;
# public delegate DocumentDeletedHandler DocumentDeleted;&lt;br /&gt;
# if (DocumentDeletedHandler != null)&lt;br /&gt;
&lt;br /&gt;
== Az alábbi állítások a .NET Framework platformra vonatkoznak! Jelölje meg, mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2023 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# Amikor egy .NET alapú projektet - speciálisabb beállítások alkalmazása nélkül - lefordítunk (pl. Visual Studioban), olyan .NET szerelvény (exe, dll) születik, mely natív utasításokat tartalmaz&lt;br /&gt;
# .NET környezetben az objektumok azonnal felszabadulnak, amint az utolsó hivatkozás is megszűnik rájuk&lt;br /&gt;
# A C# JIT compiler feladata, hogy a C# kódot köztes kódra fordítsa le&lt;br /&gt;
# A .NET futtatókörnyezet rövid neve: CLR (Common Language Runtime)&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, mely állítások igazak .NET környezetben szálkezelés vonatkozásában! FIGYELEM, akárhány helyes válasz létezhet! (2023 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A .NET szál létrehozásakor egy szálfüggvényt kell a Thread osztály konstruktorának megadni (egy delegate formájában).&lt;br /&gt;
# A Thread osztály Join műveletével lehet egy szál futásának a végét bevárni.&lt;br /&gt;
# Amikor egy .NET AutoResetEvent objektum jelzett állapotba kerül, minden rá várakozó szál tovább futhat.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a Factory Method tervezési mintával kapcsolatban! Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A Factory Method tervezési minta megvalósításában egy osztály a leszármazott osztályára bízza egy másik osztály egy objektumának létrehozását.&lt;br /&gt;
# A Factory Method tervezési minta segítségével egy osztály akkor is létre tudja hozni egy másik osztály egy példányát, ha annak típusát nem ismeri.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, mely állítások igazak! (A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.) (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A háromrétegű architektúra egyik rétege az üzleti logikai réteg (Business Logic Layer).&lt;br /&gt;
# A Document-View architektúra az Observer tervezési minta elveire épül.&lt;br /&gt;
&lt;br /&gt;
== A Composite tervezési minta fontosabb osztályai a következők: Client, Component, Composite (összetett) és Leaf (levél). Jelölje meg a helyes választ! (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A Component osztálynak van egy közös gyűjteménye Composite és Leaf objektumokból.&lt;br /&gt;
# A Composite osztálynak van egy művelete, mely egy ciklusban meghívja a tartalmazott objektumok ugyanolyan nevű műveletetét.&lt;br /&gt;
# A Composite osztálynak van egy gyűjteménye Component, valamint egy másik gyűjteménye Leaf objektumokból.&lt;br /&gt;
# A Client osztálynak van egy gyűjteménye Composite, valamint egy másik gyűjteménye Leaf objektumokból.&lt;br /&gt;
# A Component osztálynak van egy gyűjteménye Composite, valamint egy másik gyűjteménye Leaf objektumokból.&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi osztály: (2023 jun) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
class DataProcessor&lt;br /&gt;
{&lt;br /&gt;
    static object syncRoot = new object(); // *1&lt;br /&gt;
    bool exit = false; // *2&lt;br /&gt;
    List&amp;lt;int&amp;gt; data = new List&amp;lt;int&amp;gt;(); // *3&lt;br /&gt;
    public void AddData(int n)&lt;br /&gt;
    {&lt;br /&gt;
        data.Add(n); // *4&lt;br /&gt;
    }&lt;br /&gt;
    public void SignalExit()&lt;br /&gt;
    {&lt;br /&gt;
        lock (syncRoot)&lt;br /&gt;
        {&lt;br /&gt;
            exit = true; // *5&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    public void ProcessData()&lt;br /&gt;
    {&lt;br /&gt;
        while (!exit)&lt;br /&gt;
        {&lt;br /&gt;
            lock (syncRoot) // *6&lt;br /&gt;
            {&lt;br /&gt;
                if (data.Count &amp;gt; 0) // *7&lt;br /&gt;
                {&lt;br /&gt;
                    int n = data[0];&lt;br /&gt;
                    data.RemoveAt(0);&lt;br /&gt;
                    Console.WriteLine(n);&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            Thread.Sleep(10);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jelölje meg mely állítások igazak a kódrészlet vonatkozásában többszálú környezetben! Célunk, hogy a DataProcessor osztály szálbiztos&lt;br /&gt;
(thread-safe) legyen.&lt;br /&gt;
FIGYELEM, akárhány helyes válasz létezhet!&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2,3}}&lt;br /&gt;
# A SignalExit() függvényben a *5 sor körüli lock utasítás eltávolítható.&lt;br /&gt;
# A *1 sor elejéről a static kulcsszó eltávolítható, és célszerű is eltávolítani.&lt;br /&gt;
# A helyes működés érdekében a *4 sor köré egy lock blokkot kell tenni.&lt;br /&gt;
# A DataProcessor osztály jelen formájában szálbiztos (thread safe).&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a Proxy tervezési minta vonatkozásában! Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2,3}}&lt;br /&gt;
# A Proxy mintában van egy interfész/ősosztály, mely elrejti a kliens számára, hogy nem az eredeti, hanem egy proxy objektummal kommunikál.&lt;br /&gt;
# A Proxy tervezési minta lehetővé teheti, hogy egy objektumhoz más objektumok szabályozott módon férhessenek hozzá.&lt;br /&gt;
# A Proxy mintában a kliens objektum kéréseit az alkalmazás futása közben egy proxy objektum fogadja (vagyis a kliens egy proxy objektummal van közvetlen kapcsolatban).&lt;br /&gt;
# A Proxy tervezési minta lehetővé teszi objektumok fastruktúrába szervezését.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások különböző tervezési mintákkal kapcsolatban! Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# Az Adapter tervezési mintában az Adapter osztály a Target osztályból származik (vagy a Target interfészt implementálja).&lt;br /&gt;
# Az Adapter tervezési mintában (legalábbis annak object adapter változatában) az Adaptee (adaptálandó) osztály - amennyibe lehetősége van rá - továbbítja (delegálja) a kéréseket az Adapter (adapter) osztálynak.&lt;br /&gt;
# Az Adapter tervezési mintában a Client osztálynak van egy Target típusú mutatója vagy hivatkozása az Adapter osztály egy példányára.&lt;br /&gt;
# Az Adapter minta Object Adapter változatában a Target osztály az Adaptee osztályból származik&lt;br /&gt;
&lt;br /&gt;
== A feladat fájlrendszerbeli mappák és bennük levő fájlok nyilvántartása egy adott objektumstrukturában. Az egyes fájlokról a nevüket és a méretüket, valamint a mappákra a nevüket kell nyilvántartani (memóriában). (2023 jan) ==&lt;br /&gt;
Elegáns megoldást szeretnénk a következőre:&lt;br /&gt;
* Mappa tartalmának listázásakor a mappában levő fájlok és a közvetlen benne levő mappák nevét és méretét kell kiírni a konzolra.&lt;br /&gt;
* Az előző pontban, amikor egy mappa méretét írjuk ki a konzolra, akkor a mappa összméretét kell kiírni, melybe valamennyi - a hierarchiában tetszőlegesen mélységben levő - almappájában levő fájlok mérete is beleszámolódik.&lt;br /&gt;
Mely tervezési minta biztosít a fentiekre elegáns megoldást?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=9}}&lt;br /&gt;
# Aggregate&lt;br /&gt;
# Singleton&lt;br /&gt;
# Observer&lt;br /&gt;
# Memento&lt;br /&gt;
# FileSystemWatcher&lt;br /&gt;
# Container&lt;br /&gt;
# Proxy&lt;br /&gt;
# Strategy&lt;br /&gt;
# Composite&lt;br /&gt;
# Adapter&lt;br /&gt;
&lt;br /&gt;
== Adja meg, mely tervezési mintát valósítja meg az alábbi C# nyelvű kódrészlet! (2023 jan) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
interface IDatabase&lt;br /&gt;
{&lt;br /&gt;
    Data1 GetData1(int id);&lt;br /&gt;
    Data2 GetData2(int id);&lt;br /&gt;
}&lt;br /&gt;
class Database: IDatabase&lt;br /&gt;
{&lt;br /&gt;
    public Data1 GetData1(int id) { ... }&lt;br /&gt;
    public Data2 GetData2(int id) { ... }&lt;br /&gt;
}&lt;br /&gt;
class DatabaseWithCache: IDatabase&lt;br /&gt;
{&lt;br /&gt;
    Database database = new Database();&lt;br /&gt;
    Cache cache = new Cache();&lt;br /&gt;
    public Data1 GetData1(int id)&lt;br /&gt;
    {&lt;br /&gt;
        Data1 data = cache.Lookup(id);&lt;br /&gt;
        // Ha megtaláltuk a cache-ben, visszatérünk azzal, ha nem, akkor lekérdezzük adatbázisból&lt;br /&gt;
        if (data != null) return data;&lt;br /&gt;
        else return database.GetData1(id);&lt;br /&gt;
    }&lt;br /&gt;
    public Data2 GetData2(int id)&lt;br /&gt;
    {&lt;br /&gt;
        Data2 data = cache.Lookup(id);&lt;br /&gt;
        // Ha megtaláltuk a cache-ben, visszatérünk azzal, ha nem, akkor lekérdezzük adatbázisból&lt;br /&gt;
        if (data != null) return data;&lt;br /&gt;
            else return database.GetData2(id);&lt;br /&gt;
    }&lt;br /&gt;
    ...&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
class Client&lt;br /&gt;
{&lt;br /&gt;
    void DoSomething(IDatabase db)&lt;br /&gt;
    {&lt;br /&gt;
        Data1 d = db.GetData1();&lt;br /&gt;
        // ...&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=8}}&lt;br /&gt;
# Adapter&lt;br /&gt;
# Abstract factory&lt;br /&gt;
# Factory method&lt;br /&gt;
# Strategy&lt;br /&gt;
# Observer&lt;br /&gt;
# Singleton&lt;br /&gt;
# Composite&lt;br /&gt;
# Proxy&lt;br /&gt;
# Memento&lt;br /&gt;
&lt;br /&gt;
== A feladat egy Warrior (harcos) osztály elkészítése C# nyelven, mely egy eseménnyel jelzi, ha a harcost sérülés (injury) érte, és az esemény paramétereiben megadja a sérüléspontok számát (points, egész szám)! Adja meg, mely sorok alkalmazásával oldható meg az esemény megvalósítása és biztonságos elsütése! (2023 jan) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=5,7,10,11}}&lt;br /&gt;
# public InjuredDelegate Injured;&lt;br /&gt;
# public InjuredDelegate Injured(int points);&lt;br /&gt;
# event void Injured(int points);&lt;br /&gt;
# public delegate InjuredDelegate Injured;&lt;br /&gt;
# public event InjuredDelegate Injured;&lt;br /&gt;
# public event InjuredDelegate Injured(int points);&lt;br /&gt;
# delegate void InjuredDelegate(int points);&lt;br /&gt;
# InjuredDelegate(points);&lt;br /&gt;
# if (InjuredDelegate != null)&lt;br /&gt;
# if (Injured != null)&lt;br /&gt;
# Injured(points);&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, mely állítások igazak .NET környezetben szálkezelés vonatkozásában! FIGYELEM, akárhány helyes válasz létezhet! (2023 jan) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3}}&lt;br /&gt;
# Amikor egy AutoResetEvent objektum jelzett állapotba kerül, valamennyi rá várakozó szál tovább futhat.&lt;br /&gt;
# .NET környezetben egy folyamat (processz) akkor áll le, ha az összes előtérszála leáll.&lt;br /&gt;
# Egy változó növelése a ++ operátorral nem szálbiztos (nem thread safe).&lt;br /&gt;
&lt;br /&gt;
== Az alábbi állítások a .NET Framework platformra vonatkoznak! Jelölje meg, mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2023 jan) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3,4}}&lt;br /&gt;
# A JIT compiler feladata, hogy a szerelvények IL kódját jellemzően azok futtatásakor gépi kódra fordítsa&lt;br /&gt;
# Az azonosított .NET szerelvényeket csak egy alkalmazás használhatja&lt;br /&gt;
# Egy alkalmazás több szerelvényből is állhat&lt;br /&gt;
# Amikor egy .NET alapú projektet - speciálisabb beállítások alkalmazása nélkül - lefordítunk, olyan .NET szerelvény (exe, dll) születik, mely IL (Intermediate Language) kódú utasításokat tartalmaz&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi Pipes and filters (csővezeték) architektúra filter megvalósítás pszeudokód: (2023 jan) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;void Run()&lt;br /&gt;
{&lt;br /&gt;
    Data data;&lt;br /&gt;
    while (data = inputPipe.Read())&lt;br /&gt;
    {&lt;br /&gt;
        Data processedData = ProcessData(data);&lt;br /&gt;
        outputPipe.Write(processedData);&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Melyik forgatókönyvnek felel meg a fenti kód?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Csővezeték által vezérelt&lt;br /&gt;
# Aktív szűrő által vezérelt&lt;br /&gt;
# Passzív szűrő által vezérelt&lt;br /&gt;
# Adatforrás által vezérelt&lt;br /&gt;
# Adatnyelő által vezérelt&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a C# property, delegate és attribute vonatkozásában. Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2023 jan) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# Feltéve, hogy adott egy Circle osztály és annak egy int típusú Radius tulajdonsága (property), valamint a Circle osztály egy circle nevű példánya/objektuma, akkor a tulajdonság lekérdezése pl. az int n = circle.Radius; formában lehetséges.&lt;br /&gt;
# Egy C# attribútum alkalmazásakor az attribútum neve elé a @ karaktert kell tenni.&lt;br /&gt;
# A C# attribútumok segítségével deklaratív módon tudunk információt csatolni többek között tagváltozókhoz, metódusokhoz és osztályokhoz.&lt;br /&gt;
# Egy C# property (tulajdonság) bevezetésekor mindig be kell vezetni egy tagváltozót is az osztályban, melyben a property értéke tárolásra kerül.&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi osztály: (2023 jan) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;class Game&lt;br /&gt;
{&lt;br /&gt;
    object syncRoot = new object(); // *1&lt;br /&gt;
    bool hasWon = false; // *2&lt;br /&gt;
&lt;br /&gt;
    public void PrintWinner() // *3&lt;br /&gt;
    {&lt;br /&gt;
        // ...&lt;br /&gt;
        lock (syncRoot) // *4&lt;br /&gt;
        {&lt;br /&gt;
            if (!hasWon) // *5&lt;br /&gt;
            {&lt;br /&gt;
                hasWon = true;&lt;br /&gt;
                Console.WriteLine(&amp;quot;Winner!&amp;quot;);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
A Game osztályal objektumaival szemben elvárás, hogy objektumonként a &amp;quot;Winner!&amp;quot; szöveget csak egyszer írhatja ki a PrintWinner() művelet, akárhányszor is kerül meghívásra.&lt;br /&gt;
Mely állítások igazak? A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl. Csak olyan megoldás fogadható el, mely nem jár az osztály használatakor szükségtelen teljesítményromlással (pl. nagy számú párhuzamos hozzáférés esetén sem).&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A Game osztály jelen formájában szálbiztos (thread safe), de nem maradna az, ha a teljesítmény javítása érdekében a *5 sorban a &amp;quot;if (!hasWon)&amp;quot; feltételvizsgálatot a lock blokkon kívülre (az elé) helyeznénk.&lt;br /&gt;
# A Game osztály jelen formájában szálbiztos (thread safe).&lt;br /&gt;
# A Game osztály jelen formájában nem szálbiztos (thread safe), de azzá tehető, ha *3 sorban a public kulcsszó után kiírjuk a synchronized kulcsszót.&lt;br /&gt;
# A Game osztály jelen formájában nem szálbiztos (thread safe), de azzá tehető, ha a *1 sorban a syncRoot és a *2 sorban a hasWon változót statikussá tesszük.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a Document-View (Dokumentum-Nézet) architektúra vonatkozásában. Jelölje meg, mely állítások igazak! (2023 jan) ==&lt;br /&gt;
FIGYELEM, akárhány helyes válasz létezhet!&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A nézetnek van egy hivatkozása a dokumentumára.&lt;br /&gt;
# Amikor egy nézetnek valamilyen adatra van szüksége (pl. a megjelenítéshez), akkor azt lekérdezi a dokumentumától.&lt;br /&gt;
# Amikor egy új nézet típust kell bevezetni, akkor szükség van a dokumentum osztály módosítására.&lt;br /&gt;
# A nézet ősosztályban van egy UpdateAllViews művelet, mely a többi nézetet is értesíti a változásról.&lt;br /&gt;
# A dokumentumnak minden nézet típusra van egy külön listája, melyben az adott típusú nézeteket tárolja.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, mely állitások igazak .NET környezetben szálkezelés vonatkozásában! FIGYELEM, akárhány helyes válasz létezhet! (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3}}&lt;br /&gt;
# .NET környezetben egy folyamat (processz) a kilépéskor bevárja az összes háttérszálat.&lt;br /&gt;
# A lock utasítás eltérő folyamatok (processzek) szálai között is használható kölcsönös kizárás megvalósítására.&lt;br /&gt;
# Amikor egy ManualResetEvent objektum jelzett állapotba kerül, valamennyi rá várakozó szál tovább futhat.&lt;br /&gt;
&lt;br /&gt;
== Egy alkalmazásban a több helyről is használt UserRepository osztály a publikus műveleteiben relációs adatbázisból olvas fel felhasználókra vonatkozó adatokat a hívó számára. A kliens osztályok a UserRepository-t már egy az általa implementált IUserRepository interfészen keresztül érik el. Mely tervezési minta segítségével tudjuk a UserRepository osztály és a klienseinek módosítása nélkül megoldani, hogy az egyes kérések kiszolgálása nemrég lekérdezett friss adatok esetén cache-ből, egyébként az eredeti módon, az adatbázisból történhessen meg? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=10}}&lt;br /&gt;
# Singleton&lt;br /&gt;
# Observer&lt;br /&gt;
# Memento&lt;br /&gt;
# Adapter&lt;br /&gt;
# Abstract factory&lt;br /&gt;
# Factory method&lt;br /&gt;
# Adapter factory&lt;br /&gt;
# CacheAdapter&lt;br /&gt;
# Composite&lt;br /&gt;
# Proxy&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a C# property, delegate és attribute vonatkozásában. Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2,3}}&lt;br /&gt;
# Egy C# attribútum alkalmazásakor az attribútum nevét [ ] közé kell tenni.&lt;br /&gt;
# Feltéve, hogy adott egy Rectangle osztály és annak egy Width tulajdonsága (property), valamint a Rectangle osztály egy rect nevú példánya/objektuma, akkor a tulajdonság beállítása pl. a rect.Width = 10; formában lehetséges.&lt;br /&gt;
# C# nyelven delegate típusokat a delegate kulcsszó segítségével lehet definiálni.&lt;br /&gt;
# A C# tulajdonságok (property) segítségével deklaratív módon tudunk információt csatolni többek között tagváltozókhoz, metódusokhoz és osztályokhoz.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állitások a Document-View (Dokumentum-Nézet) architektúra vonatkozásában. Jelölje meg, mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,4}}&lt;br /&gt;
# Az architektúra az Observer tervezési minta koncepcióira épül.&lt;br /&gt;
# A nézetek másolatot tartanak fent a dokumentum adataiból.&lt;br /&gt;
# Amikor egy új nézet típust kell bevezetni, akkor szükség van a dokumentum osztály módosítására.&lt;br /&gt;
# A nézeteknek nincs közvetlen kapcsolatuk egymással (nincs egymásra hivatkozás)&lt;br /&gt;
# Egy nézet több dokumentumhoz is kapcsolódik (ezeket egy dokumentum listában tárolja a nézet).&lt;br /&gt;
&lt;br /&gt;
== A feladat egy KeyboardHandler osztály elkészítése C# nyelven, mely egy eseménnyel jelzi, ha a felhasználó lenyomott egy billentyűt, és az esemény paramétereiben megadja a lenyomott billenytủ ASCII kódját! Adja meg, mely sorok alkalmazásával oldható meg az esemény megvalósítása és biztonságos elsütése! (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,5,9,10}}&lt;br /&gt;
# public KeyPressedDelegate KeyPressed;&lt;br /&gt;
# delegate void KeyPressedDelegate(char key);&lt;br /&gt;
# event void KeyPressed(char key);&lt;br /&gt;
# public delegate KeyPressedDelegate KeyPressed;&lt;br /&gt;
# public event KeyPressedDelegate KeyPressed;&lt;br /&gt;
# public KeyPressedDelegate KeyPressed(char key);&lt;br /&gt;
# public event KeyPressedDelegate KeyPressed(char key);&lt;br /&gt;
# if (KeyPressedDelegate != null)&lt;br /&gt;
# if (KeyPressed != null)&lt;br /&gt;
# KeyPressed(key);&lt;br /&gt;
# KeyPressedDelegate(key);&lt;br /&gt;
&lt;br /&gt;
== Egy rendszermonitorozó alkalmazásba TCP/IP kapcsolaton másodpercenként érkeznek különböző mérési adatok. Az alkalmazásban a Monitor osztály feladata ezen adatok értelmezése, és az adatok bizonyos tartományokból való kiesése esetén riasztási értesítések küldése. Az alkalmazásnak különböző riasztási módokat kell támogatnia, pl. SMS és e-mail alapú riasztatást, de könnyen bővíthetőnek kell lennie újabb értesítési módokkal. Egy adott időpontban mindig csak egy riasztási módot lehet beállítani (ez a feltétel a későbbiekben sem változik). A riasztási adatokat auditálni is kell, melyre vonatkozóan a fájlba és relációs adatbázisba való naplózás közül egyet kell tudni beállítani. Melyik tervezési mintát célszerű a megvalósítás során választani? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# Memento&lt;br /&gt;
# Factory method&lt;br /&gt;
# Strategy&lt;br /&gt;
# Adapter&lt;br /&gt;
# Composite&lt;br /&gt;
# Proxy&lt;br /&gt;
# Abstract factory&lt;br /&gt;
# Singleton&lt;br /&gt;
# AlertHandler&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a Memento tervezési mintával kapcsolatban! Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz letezhet! (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A Memento mintában az Originator osztálynak van olyan múvelete, melynek egy Memento objektumot lehet átadni. Ez a múvelet a Mementoban levő adatok alapján az Originator állapotát állítja.&lt;br /&gt;
# A Memento mintában a Memento osztálynak van olyan múvelete, mely egy Originator objektumot ad vissza.&lt;br /&gt;
# A Memento mintában az Originator osztálynak van olyan múvelete, mellyel egy Memento objektumot lehet kérni. Ez a Memento objektum az Originator állapotának másolatát tárolja.&lt;br /&gt;
# A Memento mintában a Memento osztálynak van olyan múvelete, melynek egy Originator objektumot lehet átadni. Ez a múvelet az Originatorban levő adatok alapján az Memento állapotát állítja.&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi osztály: (2022 jun) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
class LongValue&lt;br /&gt;
{&lt;br /&gt;
    long val = 0; // 64 bites érték, *1&lt;br /&gt;
    object syncRoot1 = new object() ; // * 2$&lt;br /&gt;
    object syncRoot2 = new object() ; // * 3$&lt;br /&gt;
    public long GetValue() // *4&lt;br /&gt;
    {&lt;br /&gt;
        lock (syncRoot1) //*5&lt;br /&gt;
            { return val; }&lt;br /&gt;
    }&lt;br /&gt;
    public void SetValue(long v) // *6&lt;br /&gt;
    {&lt;br /&gt;
        lock (syncRoot2) // *7&lt;br /&gt;
            { val = v; }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Mely állítás igaz? Csak olyan megoldás fogadható el, mely nem jár az osztály használatakor szükségtelen teljesítményromlással (pl. nagy számú párhuzamos hozzáférés esetén sem).&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# A LongValue osztály jelen formájában is szálbiztos (thread safe).&lt;br /&gt;
# A LongValue osztály akkor lesz szálbiztos (thread safe), ha a *2 sorban a syncRoot1 és a *3 sorban a syncRoot2 változót statikussá tesszük.&lt;br /&gt;
# A LongValue osztály akkor lesz szálbiztos (thread safe), ha a *7 sorban a syncRoot2-t syncRoot1-re cseréljük.&lt;br /&gt;
# A LongValue osztály akkor lesz szálbiztos (thread safe), ha a *7 sorban a syncRoot2-t syncRoot1-re cseréljük, valamint a *2 sorban a syncRoot1 változót statikussá tesszük.&lt;br /&gt;
# A LongValue osztály akkor lesz szálbiztos (thread safe), ha *4 és *6 sorokban a public kulcsszó után kiírjuk a synchronized kulcsszót.&lt;br /&gt;
&lt;br /&gt;
== Az alábbi álítások a .NET Framework platformra vonatkoznak! Jelölje meg, mely állitások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3,4}}&lt;br /&gt;
# A .NET szerelvények (exe, dll) natív gépi kódú utasításokat tartalmaznak&lt;br /&gt;
# Egy alkalmazás több szerelvényböl is állhat&lt;br /&gt;
# Az IL kódot a JIT compiler fordítja gépi kódra&lt;br /&gt;
# Azonosított .NET szerelvényekből lehet két ugyanolyan nevǔ (fájlnév) telepítve egy számítógépre&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, mely állitások igazak a Pipes and filters (csővezetékek és szürök) architektúra vonatkozásában! (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# Az architektúrában a csővezetékek és a szủrők mellett van egy adatforrás és egy adatnyelő is.&lt;br /&gt;
# Előnye, hogy a filterek rugalmasan kombinálhatók és lecserélhetők.&lt;br /&gt;
# Egyik előnye az egyszerű hibakezelés.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a Proxy tervezési minta vonatkozásában! Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A Proxy mintában van egy interfész/ősosztály, mely elrejti a kliens számára, hogy nem az eredeti, hanem egy proxy objektummal kommunikál.&lt;br /&gt;
# A Proxy tervezési minta lehetővé teszi objektumok fastruktúrába szervezését.&lt;br /&gt;
# A Proxy mintában a kliens objektum kéréseit az alkalmazás futása közben egy proxy objektum fogadja (vagyis a kliens egy proxy objektummal van közvetlen kapcsolatban).&lt;br /&gt;
# A Proxy tervezési minta lehetővé teszi elemi és összetett objektumok egységes kezelését&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a C# property, delegate és attribute vonatkozásában. Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3}}&lt;br /&gt;
# Egy C# attribútum alkalmazásakor az attribútum neve elé a @ karaktert kell tenni.&lt;br /&gt;
# Egy C# delegate objektumot át lehet adni függvényparaméterként is.&lt;br /&gt;
# A C# attribútumok segítségével deklaratív módon tudunk információt csatolni többek között tagváltozókhoz, metódusokhoz és osztályokhoz.&lt;br /&gt;
# Feltéve, hogy adott egy Rectangle osztály és annak egy Width tulajdonsága (property), valamint a Rectangle osztály egy rect nevű példánya/objektuma, akkor a tulajdonság beállítása a rect.SetWidth(10) formában lehetséges.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a .NET AutoResetEvent osztályával kapcsolatban. Jelölje meg mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2022 jan) =={{Kvízkérdés|típus=több|válasz=2,4}}&lt;br /&gt;
# Eseményére feliratkozni a += operátorral lehet.&lt;br /&gt;
# Alapvetően a többszálú környezetben történő hatékony jelzés és jelzésre várakozás probléma megoldásának egy eszköze.&lt;br /&gt;
# Egy objektuma automatikusan jelzett állapotba kerül, amikor egy szál várakozni kezd rá.&lt;br /&gt;
# Amikor több szál is várakozik egy objektumára, és az objektum jelzett állapotba kerül, csak egy szál futhat tovább.&lt;br /&gt;
&lt;br /&gt;
== Egy alkalmazásban egy osztályt működését minél egyszerűbben bővíthetővé, kiterjeszthetővé szeretnénk tenni, akár a működésének/viselkedésének különböző aspektusai (szempontjai) szerint is. Mely tervezési mintát választaná ehhez? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=9}}&lt;br /&gt;
# Singleton&lt;br /&gt;
# Factory method&lt;br /&gt;
# Abstract factory&lt;br /&gt;
# Adapter&lt;br /&gt;
# Memento&lt;br /&gt;
# Proxy&lt;br /&gt;
# Template Method&lt;br /&gt;
# Composite&lt;br /&gt;
# Strategy&lt;br /&gt;
# Observer&lt;br /&gt;
&lt;br /&gt;
== Az alábbi állítások a .NET Framework platformra vonatkoznak! Jelölje meg, mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,4}}&lt;br /&gt;
# C# kódot a JIT compiler fordítja köztes (IL) kódra&lt;br /&gt;
# A .NET IL kód processzor és architektúra független&lt;br /&gt;
# .NET környezetben az objektumok azonnal felszabadulnak, amint az utolsó hivatkozás is megszűnik rájuk&lt;br /&gt;
# Egy alkalmazás több szerelvényből is állhat&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi Pipes and filters (csővezeték) architektúra filter megvalósítás pszeudokód: (2022 jan) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;Data Read()&lt;br /&gt;
{&lt;br /&gt;
    Data data = prevFilter.Read();&lt;br /&gt;
    Data processedData = ProcessData(data);&lt;br /&gt;
    return processedData;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Melyik forgatókönyvnek felel meg a fenti kód?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Passzív szűrő által vezérelt&lt;br /&gt;
# Csővezeték által vezérelt&lt;br /&gt;
# Adatforrás által vezérelt&lt;br /&gt;
# Adatnyelő által vezérelt&lt;br /&gt;
# Aktív szűrő által vezérelt&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, mely állítások igazak .NET környezetben szálkezelés vonatkozásában! FIGYELEM, akárhány helyes válasz létezhet! (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,4}}&lt;br /&gt;
# A szálbizosság (thread safety) fogalma azt jelenti, hogy az adott osztály többszálú környezetben is biztonságosan használható.&lt;br /&gt;
# A .NET Framework List osztálya szálbiztos (thread safe).&lt;br /&gt;
# Szálak kiléptetésére a Thread osztály Abort művelete javasolt.&lt;br /&gt;
# A Thread osztály Join műveletével lehet egy szál futásának a végét bevárni.&lt;br /&gt;
&lt;br /&gt;
== A feladat egy Collection (gyűjtemény) osztály elkészítése C# nyelven, mely egy eseménnyel jelzi, ha az elemszáma megváltozott, és az esemény paramétereiben megadja a régi és az új elemszámot! Adja meg, mely sorok alkalmazásával oldható meg az esemény megvalósítása és biztonságos elsütése! (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3,7,9,11}}&lt;br /&gt;
# public LengthChangedDelegate LengthChanged;&lt;br /&gt;
# event void LengthChanged(int oldValue, int newValue);&lt;br /&gt;
# delegate void LengthChangedDelegate(int oldValue, int newValue);&lt;br /&gt;
# public delegate LengthChangedDelegate LengthChanged;&lt;br /&gt;
# public event LengthChangedDelegate LengthChanged(int oldValue, int newValue);&lt;br /&gt;
# public LengthChangedDelegate LengthChanged(int oldValue, int newValue);&lt;br /&gt;
# public event LengthChangedDelegate LengthChanged;&lt;br /&gt;
# if (LengthChangedDelegate != null)&lt;br /&gt;
# if (LengthChanged != null)&lt;br /&gt;
# LengthChangedDelegate(oldValue, newValue);&lt;br /&gt;
# LengthChanged(oldValue, newValue);&lt;br /&gt;
&lt;br /&gt;
== Adott egy osztály. Az objektumainak állapotát úgy szeretnénk elmenteni és visszaállítani egy másik osztályból, hogy nem tesszük publikussá a tagváltozóit. Mely tervezési mintát célszerű használni a megoldás során? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Memento&lt;br /&gt;
# Strategy&lt;br /&gt;
# Observer&lt;br /&gt;
# Proxy&lt;br /&gt;
# Singleton&lt;br /&gt;
# Composite&lt;br /&gt;
# Adapter&lt;br /&gt;
# Factory method&lt;br /&gt;
# Snapshot&lt;br /&gt;
# UndoStore&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a Document-View (Dokumentum-Nézet) architektúra vonatkozásában. Jelölje meg, mely állítások igazak! (2021 jan) ==&lt;br /&gt;
FIGYELEM, akárhány helyes válasz létezhet!&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3,4}}&lt;br /&gt;
# A Document-View architektúrában a Controller osztály feladata a felhasználói interakciók kezelése.&lt;br /&gt;
# A Document-View architektúrában a dokumentumban külön tagváltozót vezetünk be minden egyes nézetre.&lt;br /&gt;
# A Document-View architektúrában a dokumentumnak van egy vagy több olyan művelete, mellyel az állapotát a nézetek bármikor le tudják kérdezni.&lt;br /&gt;
# A Document-View architektúrában a nézetnek van egy hivatkozása a dokumentumára.&lt;br /&gt;
&lt;br /&gt;
== Az alábbi állítások a .NET Framework platformra vonatkoznak! Jelölje meg, mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# .NET platformra lehet C++nyelven is fejleszteni&lt;br /&gt;
# .NET környezetben az objektumok azonnal felszabadulnak, amint az utolsó hivatkozás is megszűnik rájuk&lt;br /&gt;
# A .NET futtatókörnyezet rövid neve: CLR&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi C# nyelvű .NET alkalmazás kódrészlet. (2021 jan) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
class Counter&lt;br /&gt;
{&lt;br /&gt;
    int counter = 0; // *1&lt;br /&gt;
    object syncRoot = new object(); // *2&lt;br /&gt;
    public int GetValue() // *3&lt;br /&gt;
    {&lt;br /&gt;
        lock (syncRoot)&lt;br /&gt;
            { return counter; }&lt;br /&gt;
    }&lt;br /&gt;
    public void IncreaseCounter(int delta) // *4&lt;br /&gt;
    {&lt;br /&gt;
        lock (syncRoot)&lt;br /&gt;
            { counter += delta; }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Jelölje meg mely állítások igazak a kódrészlet vonatkozásában többszálú környezetben! FIGYELEM, akárhány helyes válasz létezhet!&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2,3}}&lt;br /&gt;
# A *2 sor elejére nem kell plusszban beírni a static kulcsszót, anélkül is helyes a működés&lt;br /&gt;
# A kód nem működne megfelelően, ha a *2 sorban a syncRoot típusát int-re cserélnénk&lt;br /&gt;
# A *3 GetValue() függvényben a lock utasítás eltávolítható (ha legalább 32 bites környezetről van szó)&lt;br /&gt;
# A *4 IncreaseCounter() függvényben a lock utasítás eltávolítható&lt;br /&gt;
# A *4 IncreaseCounter() függvényben a lock utasítás eltávolítható, de akkor ki kell írni a függvény elé a synchronized kulcsszót.&lt;br /&gt;
&lt;br /&gt;
== A feladat egy Car osztály elkészítése C# nyelven, mely egy eseménnyel jelzi, ha az autó sebessége meghalad egy adott sebességkorlátot! (2021 jan) ==&lt;br /&gt;
Adja meg, mely sorok alkalmazására van szükség a megoldásban, ha nem használhatja a ?. operátort!&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,4,9,12}}&lt;br /&gt;
# event void SpeedLimitExceededDelegate(int speed, double percent);&lt;br /&gt;
# delegate void SpeedLimitExceededDelegate(int speed, double percent);&lt;br /&gt;
# public SpeedLimitExceededDelegate SpeedLimitExceeded;&lt;br /&gt;
# public event SpeedLimitExceededDelegate SpeedLimitExceeded;&lt;br /&gt;
# public delegate SpeedLimitExceededDelegate SpeedLimitExceeded;&lt;br /&gt;
# public event SpeedLimitExceededDelegate SpeedLimitExceeded(int speed, double percent);&lt;br /&gt;
# public SpeedLimitExceededDelegate SpeedLimitExceeded(int speed, double percent);&lt;br /&gt;
# public delegate SpeedLimitExceededDelegate SpeedLimitExceeded(int speed, double percent);&lt;br /&gt;
# if (SpeedLimitExceeded != null)&lt;br /&gt;
# if (SpeedLimitExceededDelegate != null)&lt;br /&gt;
# SpeedLimitExceededDelegate(speed, percent);&lt;br /&gt;
# SpeedLimitExceeded(speed, percent);&lt;br /&gt;
&lt;br /&gt;
== Adott egy Car nevű C# nyelven megírt osztály, mely már rendelkezik egy int típusú speed nevű tagváltozóval. Ezt kell egy olyan tulajdonsággal (property) kiegészíteni, mellyel a jármű sebessége lekérdezhető, beállítható, de a beállításra csak az osztályon belül van lehetőség. Melyik a helyes és legcélravezetőbb megoldás? (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# &amp;lt;pre&amp;gt;public int Speed { get { return speed; }; set { speed = value; } }&amp;lt;/pre&amp;gt;&lt;br /&gt;
# &amp;lt;pre&amp;gt;public int Speed { get { return length; }; set { } }&amp;lt;/pre&amp;gt;&lt;br /&gt;
# &amp;lt;pre&amp;gt;public int Speed { get { return speed; }; }&amp;lt;/pre&amp;gt;&lt;br /&gt;
# &amp;lt;pre&amp;gt;public int Speed { get { return speed; }; private set { speed = value; } }&amp;lt;/pre&amp;gt;&lt;br /&gt;
# &amp;lt;pre&amp;gt;public int Speed { get { return speed; }; set; }&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások különböző tervezési mintákkal kapcsolatban! Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2,4}}&lt;br /&gt;
# Az Adapter tervezési mintában a Client osztálynak van egy Target típusú mutatója vagy hivatkozása az Adapter osztály egy példányára.&lt;br /&gt;
# Az Adapter tervezési mintában az Adapter osztály a Target osztályból származik (vagy a Target interfészt implementálja).&lt;br /&gt;
# Az Adapter minta Object Adapter változatában a Adaptee implementálja a Target interfészt (vagy a Target osztályból származik).&lt;br /&gt;
# Az Adapter tervezési mintában (legalábbis annak object adapter változatában) az Adapter (adaptáló) osztály - amennyibe lehetősége van rá - továbbítja (delegálja) a kéréseket az Adaptee (adaptálandó) osztálynak.&lt;br /&gt;
&lt;br /&gt;
== Egy online bolt alkalmazásban a feladata egy a bevásárlókosár lezárását (szállítási cím kezelése, megerősítés, fizetés) kezelő osztály megvalósítása. Az osztálynak több fizetési módot (pl. bankkártya, átutalás) kell támogatnia, és könnyen kiterjeszthetőnek kell lennie újabb fizetési módokkal. Mely tervezési mintát alkalmazná a megvalósítás során? (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Composite&lt;br /&gt;
# Memento&lt;br /&gt;
# Observer&lt;br /&gt;
# Strategy&lt;br /&gt;
# Singleton&lt;br /&gt;
# Proxy&lt;br /&gt;
# Factory method&lt;br /&gt;
# Adapter&lt;br /&gt;
# Abstract factory&lt;br /&gt;
&lt;br /&gt;
== Az alábbi állítások a .NET Framework platformra vonatkoznak! Jelölje meg, mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2}}&lt;br /&gt;
# A C# kódot a JIT compiler fordítja gépi (IL) kódra&lt;br /&gt;
# A dinamikusan lefoglalt memória felszabadítása nem a fejlesztő feladata&lt;br /&gt;
# Az elterjedtebb processzorok képesek a köztes (IL) kódot közvetlenül futtatni&lt;br /&gt;
# A C# kódot a JIT compiler fordítja köztes (IL) kódra&lt;br /&gt;
&lt;br /&gt;
== Ön egy alkalmazást fejleszt .NET platformra. Az alkalmazást a felhasználók a saját gépeiken több példányban is mepróbálhatják elindítani (akár teljesen egyidőben). Az ön feladata annak megoldása, hogy az alkalmazás csak egy példányban fusson: vagyis, ha az alkalmazásból úgy indít új példányt a felhasználó, hogy már fut, akkor az újabb példány ezt detektálja, és azonnal lépjen ki (fejezze be a futását). Mit használna az alábbiak közül ennek megvalósításához? (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# lock&lt;br /&gt;
# synchronized&lt;br /&gt;
# StartCoordinator&lt;br /&gt;
# AutoResetEvent&lt;br /&gt;
# Mutex&lt;br /&gt;
# Singleton&lt;br /&gt;
# ThreadPool&lt;br /&gt;
&lt;br /&gt;
== Adja meg, mely tervezési mintát valósítja meg az alábbi C# nyelvű kódrészlet! (2021 jan) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;interface Item&lt;br /&gt;
{&lt;br /&gt;
    void Method1();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
class SimpleItem: Item&lt;br /&gt;
{&lt;br /&gt;
    public void Method1() { … }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
class SeveralItems: Item&lt;br /&gt;
{&lt;br /&gt;
    Item[] items;&lt;br /&gt;
…&lt;br /&gt;
    public void Method1()&lt;br /&gt;
    {&lt;br /&gt;
        foreach (var item in items)&lt;br /&gt;
        item.Method1();&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
class Client&lt;br /&gt;
{&lt;br /&gt;
    Item[] items;&lt;br /&gt;
    …&lt;br /&gt;
    void PorcessAllItems() // [sic.]&lt;br /&gt;
    {&lt;br /&gt;
        …&lt;br /&gt;
        foreach (var item in items)&lt;br /&gt;
        item.Method1();&lt;br /&gt;
        …&lt;br /&gt;
}&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Composite&lt;br /&gt;
# Adapter&lt;br /&gt;
# Memento&lt;br /&gt;
# Observer&lt;br /&gt;
# Proxy&lt;br /&gt;
# Abstract factory&lt;br /&gt;
# Singleton&lt;br /&gt;
# Strategy&lt;br /&gt;
# Factory method&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a C# nyelvi eszközökről (property, delegate, event és attribute). Jelölje meg, mely állítások igazak. FIGYELEM, több helyes válasz is létezhet! (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# A C# property-k segítségével deklaratív módon tudunk információt csatolni többek között tagváltozókhoz, metódusokhoz és osztályokhoz.&lt;br /&gt;
# C# event-re feliratkozni az &amp;quot;=&amp;quot; operátorral lehet.&lt;br /&gt;
# C# event tagváltozóra helyes példa a következő: &amp;lt;pre&amp;gt;event int CompareDelegate(object a, object b);&amp;lt;/pre&amp;gt;&lt;br /&gt;
# C# event tag értéke null abban az esetben, ha nincs az eseményre feliratkozó.&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi C# nyelvü .NET alkalmazás kódrészlet, melyben a .NET beépített List&amp;lt;T&amp;gt; osztályát használjuk (és nem lehet helyette más osztályt használni). (2020 jan) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
class DataProcessor&lt;br /&gt;
{&lt;br /&gt;
    static List&amp;lt;int&amp;gt; items = new List&amp;lt;int&amp;gt;();&lt;br /&gt;
    object syncObject = new object();&lt;br /&gt;
&lt;br /&gt;
    public int GetItem(int index) {&lt;br /&gt;
        lock (syncObject)  { return items[index]; }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    public void AddItem(int n) {&lt;br /&gt;
        lock syncObject  { items.Add(n); }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Jelölje meg a helyes állítást!&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A megoldás jelen formájában nem szálbiztos (thread safe), de azzá tehető, ha GetItem és az AddItem müveletek fejlécsorát - a public kulcsszót követően - kiegészítjük a synchronized kulcsszóval.&lt;br /&gt;
# A megoldás jelen formájában nem szálbiztos (thread safe), de azzá tehető, ha a syncObject tagváltozó elé a static kulcsszót beírjuk.&lt;br /&gt;
# A megoldás szálbiztos (thread safe), és nem tehető triviális módon hatékonyabbá.&lt;br /&gt;
# A megoldás szálbiztos (thread safe), és a GetItem müveletben a lock eltávolításával hatékonyabbá tehető (hiszen a GetItem nem módosít állapotot).&lt;br /&gt;
# A megoldás szálbiztos (thread safe), és a lock utasítások eltávolításával hatékonyabbá tehető.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, hogy a .NET Framework esetében mely állítások igazak! FIGYELEM, több helyes válasz is létezhet! (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3,4}}&lt;br /&gt;
# Az alábbi forgatókönyv a klasszikus DLL hell probléma legjellemzőbb esetének jó definíciója: egy alkalmazás telepítésekor hiányzik egy vagy több DLL a célkörnyezetben, mely szükséges lenne az alkalmazás futásához, így az alkalmazás nem müködik megfelelően (mert a szükséges DLL-ek telepítéséről a felhasználó nem gondoskodott).&lt;br /&gt;
# A .NET IL kód nagyon hatékony, mert a processzorok közvetlenül tudják futtatni.&lt;br /&gt;
# Az azonosított (erős névvel aláírt) szerelvények lehetővé teszik, hogy több kiadó/fejlesztőcég azonos (fájl)névvel és azonos verzióval telepítsen .NET szerelvényeket.&lt;br /&gt;
# A privát szerelvényeket egyszerúbb telepíteni, mint az azonosított szerelvényeket.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, mely állítások igazak a szálkezelésre .NET környezetben! FIGYELEM, több helyes válasz is létezhet! (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2}}&lt;br /&gt;
# A ManualResetEvent osztályt jellemzően arra használjuk, hogy adott erőforrás elérésére vonatkozó kölcsönös kizárást valósítsunk meg a segítségével.&lt;br /&gt;
# A Mutex előnye a lock utasítással szemben, hogy különböző folyamatok szálai között is használható.&lt;br /&gt;
# Az x++ müvelet .NET környezetben atomi (és így szálbiztos), ha az x típusa int (32 bites).&lt;br /&gt;
# A ReaderWriterLock használata akkor célszerủ a lock utasítással szemben, ha egy olyan erőforrást védünk vele, melyet gyakran írunk és ritkán olvasunk.&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi Pipes and filters (csővezeték) architektúra filter megvalósítás pszeudokód: (2020 jan) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
void Run()&lt;br /&gt;
{&lt;br /&gt;
    Data data;&lt;br /&gt;
    while(data = inputPipe.Read())&lt;br /&gt;
    {&lt;br /&gt;
        Data processedData = ProcessData(data);&lt;br /&gt;
        outputPipe.Write(processedData);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Melyik forgatókönyvnek felel meg a fenti kód? Jelölje meg a helyes választ!&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Adatforrás által vezérelt&lt;br /&gt;
# Adatnyelő által vezérelt&lt;br /&gt;
# Csővezeték által vezérelt&lt;br /&gt;
# Aktív szürő által vezérelt&lt;br /&gt;
# Passzív szưrő által vezérelt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a kétrétegű, valamint a háromrétegü architektúrával kapcsolatban! Jelölje meg, mely állítások igazak! (2020 jan) ==&lt;br /&gt;
FIGYELEM, több helyes válasz is létezhet!&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3,4}}&lt;br /&gt;
# A kétrétegü architektúrát ma már soha nem használjuk a háromrétegü architektúra előnyei miatt.&lt;br /&gt;
# A kétrétegü architektúra lehetővé teszi, hogy ugyanahhoz az adatbázishoz több kliensalkalmazást készítsünk.&lt;br /&gt;
# A háromrétegü architektúra lehetővé teszi, hogy adott üzleti logikához egyszerűen készítsünk különböző frontend alkalmazásokat, úgymint desktop, web, mobil.&lt;br /&gt;
# A háromrétegü architektúra előnye a kétrétegüvel szemben, hogy az adatbázis sémája a kliensalkalmazástól függetlenül egyszerübben átszervezhető.&lt;br /&gt;
&lt;br /&gt;
== Melyek a Singleton tervezési minta megvalósításának kellékei? Jelölje meg a helyes válaszokat! FIGYELEM, több helyes válasz is létezhet! (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3,6}}&lt;br /&gt;
# Globális változó&lt;br /&gt;
# Statikus tagváltozó&lt;br /&gt;
# Statikus metódus vagy statikus property&lt;br /&gt;
# Virtuális metódus&lt;br /&gt;
# Absztrakt metódus&lt;br /&gt;
# Védett konstruktor&lt;br /&gt;
# Védett destruktor&lt;br /&gt;
# Globális pointer vagy referencia&lt;br /&gt;
&lt;br /&gt;
== Egy alkalmazásban a CommHandler osztály felelős egy külső rendszer adott szolgáltatásainak eléréséért. A CommHandler osztályt a felhasználói/kliensei egy interfész típusként (ICommHandler) kapják meg és használják. Egy új, jogosultság hozzáférést ellenőrző objektumot szeretnénk beékelni az osztály és a felhasználói közé olyan módon, hogy az osztályt és a felhasználóit a lehető legkevésbé érintse a változtatás. Mely tervezési mintát a legcélszerübb választani a probléma megoldására? Jelölje meg a helyes választ! (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Factory method&lt;br /&gt;
# Abstract factory&lt;br /&gt;
# Composite&lt;br /&gt;
# Proxy&lt;br /&gt;
# Observer&lt;br /&gt;
# Adapter&lt;br /&gt;
# Singleton&lt;br /&gt;
# Strategy&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a Memento tervezési mintával kapcsolatban. Jelölje meg a helyes válaszokat! FIGYELEM, több helyes válasz is létezhet! (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3,6}}&lt;br /&gt;
# A mintában a Memento osztálynak van olyan művelete, melynek egy Originator objektumot lehet átadni. Ez a müvelet az Originatorban levő adatok alapján a Memento állapotát állítja.&lt;br /&gt;
# A mintában az Originator osztálynak van olyan müvelete, mellyel egy Memento objektumot lehet kérni. Ez a Memento objektum az Originator állapotának másolatát tárolja.&lt;br /&gt;
# A mintában az Originator osztálynak van olyan művelete, melynek egy Memento objektumot lehet átadni. Ez a művelet a Mementoban levő adatok alapján az Originator állapotát állítja.&lt;br /&gt;
# A mintában a CareTaker Originator objektumokat tárol.&lt;br /&gt;
# A mintában az Originator osztályt becsomagoljuk egy Memento objektummal, a Memento tárolja az Originator állapotát.&lt;br /&gt;
# A minta elérhetővé teszi a külvilág számára az objektum belső állapotát az egységbezárás megsértése nélkül (vagyis anélkül, hogy publikussá tennénk az állapotát).&lt;br /&gt;
&lt;br /&gt;
== A Composite tervezési minta fontosabb osztályai a következők: Client, Component, Composite (összetett) és Leaf (levél). Jelölje meg a helyes választ! (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# A Composite osztálynak van egy Component gyüjteménye.&lt;br /&gt;
# A Component osztálynak van egy gyüjteménye Composite, valamint egy másik gyüjteménye Leaf objektumokból.&lt;br /&gt;
# A Component osztálynak van egy közös gyüjteménye (heterogén kollekció) Composite és Leaf objektumokból.&lt;br /&gt;
# A Composite osztálynak van egy gyüjteménye Component, valamint egy másik gyưjjteménye Leaf objektumokból.&lt;br /&gt;
# A Client osztálynak van egy gyűjteménye Composite, valamint egy másik gyüjteménye Leaf objektumokból.&lt;br /&gt;
&lt;br /&gt;
== A feladata egy taxi járművek riasztáskezelő szoftver moduljának elkészítése. Amikor a modul valamilyen riasztási esemény bekövetkezését detektálja, azt többféleképpen is kezelni kell. Egyrészt naplózni kell, másrészt hálózati kapcsolaton keresztül értesíteni kell a központot, harmadrészt értesíteni kell a jármű bizonyos harver komponenseit (pl. vészvillogó). Ezen felül fontos, hogy a későbbiekben könnyen lehessen hasonló kezelési technikákat bevezetni. Melyik tervezési mintát célszerű alkalmazni a megvalósítás során? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=8}}&lt;br /&gt;
# Singleton&lt;br /&gt;
# Adapter&lt;br /&gt;
# Proxy&lt;br /&gt;
# Strategy&lt;br /&gt;
# Abstract factory&lt;br /&gt;
# Memento&lt;br /&gt;
# Composite&lt;br /&gt;
# Observer&lt;br /&gt;
# Factory method&lt;br /&gt;
&lt;br /&gt;
== Az alábbi állítások a .NET platformra vonatkoznak! Jelölje meg, mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.) (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3}}&lt;br /&gt;
# A DLL hell lényege: egy alkalmazás telepítésekor felülírásra kerül egy már korábban telepített alkalmazás által használt DLL, emiatt az újonnan telepített alkalmazás esetleg nem indul el.&lt;br /&gt;
# .NET környezetben lehetőség van a nem felügyelt erőforrások azonnali felszabadítására.&lt;br /&gt;
# A C# JIT compiler feladata, hogy az IL (köztes) kódot natív gépi kódra fordítsa le.&lt;br /&gt;
# .NET platformra csak C# nyelven lehet fejleszteni&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a C# property, delegate és attribute vonatkozásában. Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.) (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3}}&lt;br /&gt;
# Egy auto-implementált (auto-implemented) tulajdonság (property) megírásakor be kell vezetni egy tagváltozót, mely tárolja az auto-implementált tulajdonság értékét.&lt;br /&gt;
# C# nyelven lehetőség van arra, hogy a tulajdonságok (property) beállításának és lekérdezésének a láthatóságát külön szabályozzuk.&lt;br /&gt;
# Egy delegate típusú, pl. lokális változónak az = operátorral is adhatunk értéket.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a .NET ManualResetEvent osztályával kapcsolatban. Jelölje meg mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2}}&lt;br /&gt;
# Egy objektuma automatikusan jelzett állapotba kerül, amikor egy szál várakozni kezd rá.&lt;br /&gt;
# A Set függvénnyel jelzett állapotba állítható.&lt;br /&gt;
# Általában a kölcsönös kizárás megvalósítására használjuk.&lt;br /&gt;
# Amikor több szál is várakozik egy objektumára, és az objektum jelzett állapotba kerül, csak egy szál futhat tovább.&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi osztály:  (2024 jan) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
class Window&lt;br /&gt;
{&lt;br /&gt;
   object syncRoot = new object();&lt;br /&gt;
   static bool isFirst = true;&lt;br /&gt;
   int requestCount = 0;&lt;br /&gt;
   public bool IsFirst()&lt;br /&gt;
   {&lt;br /&gt;
      ++requestCount;&lt;br /&gt;
      lock (syncRoot)&lt;br /&gt;
      {&lt;br /&gt;
         bool tmp = isFirst;&lt;br /&gt;
         isFirst = false;&lt;br /&gt;
         return tmp;&lt;br /&gt;
      }&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Mely állítások igazak akkor, ha a Window osztályt többszálú környezetben használjuk? A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3}}&lt;br /&gt;
# Jelen megoldásban garantált, hogy ha különböző Window objektumokra hívjuk az IsFirst műveletet, az akkor is csak egyszer fog igazzal visszatérni.&lt;br /&gt;
# Jelen megoldás nem garantálja, hogy ha különböző Window objektumokra hívjuk az IsFirst műveletet, az akkor is csak egyszer fog igazzal visszatérni. De ha a syncRoot objektumot statikussá tesszük, akkor garantálni fogja.&lt;br /&gt;
# Jelen megoldásban a requestCount változóban nyilvántartott IsFirst hívások száma inkonzisztensé tud válni&lt;br /&gt;
&lt;br /&gt;
== Egy olyan CAD (Computer Aided Design) alkalmazást kell megvalósítania, mely segítségével épületeket lehet megtervezni. Az alkalmazás futásakor a felületen különböző elemeket (ajtó, ablak, fal, padló stb.) lehet elhelyezni. A tervezés elején a felhasználó mindig kiválasztja, milyen stílusú házat szeretne létrehozni (pl. középkori, Bauhaus, mediterrán stb.), ezt követően az alkalmazásnak a felületen a kiválasztott stílusnak megfelelő elemeket (ajtó, ablak stb.) kell létrehoznia. Melyik tervezési minta passzol leginkább a megoldandó feladathoz? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=6}}&lt;br /&gt;
# Adapter&lt;br /&gt;
# Memento&lt;br /&gt;
# Singleton&lt;br /&gt;
# Proxy&lt;br /&gt;
# Strategy&lt;br /&gt;
# Abstract factory&lt;br /&gt;
# Observer&lt;br /&gt;
# Composite&lt;br /&gt;
# Factory method&lt;br /&gt;
# Dependency Injection&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások különböző tervezési mintákkal kapcsolatban! Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,5}}&lt;br /&gt;
# Az Adapter tervezési mintának van olyan változata, melyben az Adapter leszármazik az Adaptee osztályból.&lt;br /&gt;
# Az Adapter tervezési mintában az Adapter és Adaptee interfésze megegyezik.&lt;br /&gt;
# Az Adapter tervezési mintában a Client osztálynak van egy Target típusú mutatója vagy hivatkozása az Adaptee osztály egy példányára.&lt;br /&gt;
# Az Adapter tervezési mintában az Adaptee megvalósítja a Target interfészt.&lt;br /&gt;
# Az Adapter tervezési mintában az Adapter megvalósítja a Target interfészt.&lt;/div&gt;</summary>
		<author><name>Lovász Botond</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Sznik%C3%A1k&amp;diff=206804</id>
		<title>Záróvizsga kvíz - Sznikák</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Sznik%C3%A1k&amp;diff=206804"/>
		<updated>2026-01-03T18:20:47Z</updated>

		<summary type="html">&lt;p&gt;Lovász Botond: Kiegészítés 2023 jun és 2024 jan vizsgákkal&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Kvízoldal&lt;br /&gt;
|cím=ZVSznikák|pontozás=-&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a C# property, delegate és attribute vonatkozásában. Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2023 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# C# nyelven nincs lehetőség arra, hogy egy delegate objektumot függvényeknek paraméterként adjunk át.&lt;br /&gt;
# Egy C# property (tulajdonság) bevezetésekor a beállító szakasz megírása során a set kulcsszót kell használni, és a set kulcsszót követően &amp;quot;(&amp;quot; &amp;quot;)&amp;quot; zárójelek között be kell vezetni egy paramétert, melyben a tulajdonság új értékét megkapjuk.&lt;br /&gt;
# C# nyelven a readonly kulcsszó alkalmazásával van lehetőségünk csak olvasható tulajdonságok (property-k) bevezetésére.&lt;br /&gt;
# A C# eseményekről leiratkozás a -= operátorral lehetséges.&lt;br /&gt;
&lt;br /&gt;
== A feladat egy DocumentRepository (dokumentum tár) osztály elkészítése C# nyelven, mely egy eseménnyel jelzi, ha egy dokumentumot töröltek belőle, és az esemény paramétereiben megadja a törölt dokumentum nevét (docName, string típusú)! Adja meg, mely sorok alkalmazásával oldható meg az esemény megvalósítása és biztonságos elsütése! (2023 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,5,6,9}}&lt;br /&gt;
# public DocumentDeletedHandler DocumentDeleted;&lt;br /&gt;
# DocumentDeleted(docName);&lt;br /&gt;
# public DocumentDeletedHandler DocumentDeleted(string docName);&lt;br /&gt;
# event void DocumentDeleted(string docName);&lt;br /&gt;
# delegate void DocumentDeletedHandler(string docName);&lt;br /&gt;
# if (DocumentDeleted != null)&lt;br /&gt;
# DocumentDeletedHandler(docName);&lt;br /&gt;
# public event DocumentDeletedHandler DocumentDeleted(string docName);&lt;br /&gt;
# public event DocumentDeletedHandler DocumentDeleted;&lt;br /&gt;
# public delegate DocumentDeletedHandler DocumentDeleted;&lt;br /&gt;
# if (DocumentDeletedHandler != null)&lt;br /&gt;
&lt;br /&gt;
== Az alábbi állítások a .NET Framework platformra vonatkoznak! Jelölje meg, mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2023 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# Amikor egy .NET alapú projektet - speciálisabb beállítások alkalmazása nélkül - lefordítunk (pl. Visual Studioban), olyan .NET szerelvény (exe, dll) születik, mely natív utasításokat tartalmaz&lt;br /&gt;
# .NET környezetben az objektumok azonnal felszabadulnak, amint az utolsó hivatkozás is megszűnik rájuk&lt;br /&gt;
# A C# JIT compiler feladata, hogy a C# kódot köztes kódra fordítsa le&lt;br /&gt;
# A .NET futtatókörnyezet rövid neve: CLR (Common Language Runtime)&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, mely állítások igazak .NET környezetben szálkezelés vonatkozásában! FIGYELEM, akárhány helyes válasz létezhet! (2023 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A .NET szál létrehozásakor egy szálfüggvényt kell a Thread osztály konstruktorának megadni (egy delegate formájában).&lt;br /&gt;
# A Thread osztály Join műveletével lehet egy szál futásának a végét bevárni.&lt;br /&gt;
# Amikor egy .NET AutoResetEvent objektum jelzett állapotba kerül, minden rá várakozó szál tovább futhat.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a Factory Method tervezési mintával kapcsolatban! Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A Factory Method tervezési minta megvalósításában egy osztály a leszármazott osztályára bízza egy másik osztály egy objektumának létrehozását.&lt;br /&gt;
# A Factory Method tervezési minta segítségével egy osztály akkor is létre tudja hozni egy másik osztály egy példányát, ha annak típusát nem ismeri.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, mely állítások igazak! (A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.) (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A háromrétegű architektúra egyik rétege az üzleti logikai réteg (Business Logic Layer).&lt;br /&gt;
# A Document-View architektúra az Observer tervezési minta elveire épül.&lt;br /&gt;
&lt;br /&gt;
== A Composite tervezési minta fontosabb osztályai a következők: Client, Component, Composite (összetett) és Leaf (levél). Jelölje meg a helyes választ! (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A Component osztálynak van egy közös gyűjteménye Composite és Leaf objektumokból.&lt;br /&gt;
# A Composite osztálynak van egy művelete, mely egy ciklusban meghívja a tartalmazott objektumok ugyanolyan nevű műveletetét.&lt;br /&gt;
# A Composite osztálynak van egy gyűjteménye Component, valamint egy másik gyűjteménye Leaf objektumokból.&lt;br /&gt;
# A Client osztálynak van egy gyűjteménye Composite, valamint egy másik gyűjteménye Leaf objektumokból.&lt;br /&gt;
# A Component osztálynak van egy gyűjteménye Composite, valamint egy másik gyűjteménye Leaf objektumokból.&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi osztály: (2023 jun) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
class DataProcessor&lt;br /&gt;
{&lt;br /&gt;
    static object syncRoot = new object(); // *1&lt;br /&gt;
    bool exit = false; // *2&lt;br /&gt;
    List&amp;lt;int&amp;gt; data = new List&amp;lt;int&amp;gt;(); // *3&lt;br /&gt;
    public void AddData(int n)&lt;br /&gt;
    {&lt;br /&gt;
        data.Add(n); // *4&lt;br /&gt;
    }&lt;br /&gt;
    public void SignalExit()&lt;br /&gt;
    {&lt;br /&gt;
        lock (syncRoot)&lt;br /&gt;
        {&lt;br /&gt;
            exit = true; // *5&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    public void ProcessData()&lt;br /&gt;
    {&lt;br /&gt;
        while (!exit)&lt;br /&gt;
        {&lt;br /&gt;
            lock (syncRoot) // *6&lt;br /&gt;
            {&lt;br /&gt;
                if (data.Count &amp;gt; 0) // *7&lt;br /&gt;
                {&lt;br /&gt;
                    int n = data[0];&lt;br /&gt;
                    data.RemoveAt(0);&lt;br /&gt;
                    Console.WriteLine(n);&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            Thread.Sleep(10);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jelölje meg mely állítások igazak a kódrészlet vonatkozásában többszálú környezetben! Célunk, hogy a DataProcessor osztály szálbiztos&lt;br /&gt;
(thread-safe) legyen.&lt;br /&gt;
FIGYELEM, akárhány helyes válasz létezhet!&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2,3}}&lt;br /&gt;
# A SignalExit() függvényben a *5 sor körüli lock utasítás eltávolítható.&lt;br /&gt;
# A *1 sor elejéről a static kulcsszó eltávolítható, és célszerű is eltávolítani.&lt;br /&gt;
# A helyes működés érdekében a *4 sor köré egy lock blokkot kell tenni.&lt;br /&gt;
# A DataProcessor osztály jelen formájában szálbiztos (thread safe).&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a Proxy tervezési minta vonatkozásában! Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2,3}}&lt;br /&gt;
# A Proxy mintában van egy interfész/ősosztály, mely elrejti a kliens számára, hogy nem az eredeti, hanem egy proxy objektummal kommunikál.&lt;br /&gt;
# A Proxy tervezési minta lehetővé teheti, hogy egy objektumhoz más objektumok szabályozott módon férhessenek hozzá.&lt;br /&gt;
# A Proxy mintában a kliens objektum kéréseit az alkalmazás futása közben egy proxy objektum fogadja (vagyis a kliens egy proxy objektummal van közvetlen kapcsolatban).&lt;br /&gt;
# A Proxy tervezési minta lehetővé teszi objektumok fastruktúrába szervezését.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások különböző tervezési mintákkal kapcsolatban! Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# Az Adapter tervezési mintában az Adapter osztály a Target osztályból származik (vagy a Target interfészt implementálja).&lt;br /&gt;
# Az Adapter tervezési mintában (legalábbis annak object adapter változatában) az Adaptee (adaptálandó) osztály - amennyibe lehetősége van rá - továbbítja (delegálja) a kéréseket az Adapter (adapter) osztálynak.&lt;br /&gt;
# Az Adapter tervezési mintában a Client osztálynak van egy Target típusú mutatója vagy hivatkozása az Adapter osztály egy példányára.&lt;br /&gt;
# Az Adapter minta Object Adapter változatában a Target osztály az Adaptee osztályból származik&lt;br /&gt;
&lt;br /&gt;
== A feladat fájlrendszerbeli mappák és bennük levő fájlok nyilvántartása egy adott objektumstrukturában. Az egyes fájlokról a nevüket és a méretüket, valamint a mappákra a nevüket kell nyilvántartani (memóriában). (2023 jan) ==&lt;br /&gt;
Elegáns megoldást szeretnénk a következőre:&lt;br /&gt;
* Mappa tartalmának listázásakor a mappában levő fájlok és a közvetlen benne levő mappák nevét és méretét kell kiírni a konzolra.&lt;br /&gt;
* Az előző pontban, amikor egy mappa méretét írjuk ki a konzolra, akkor a mappa összméretét kell kiírni, melybe valamennyi - a hierarchiában tetszőlegesen mélységben levő - almappájában levő fájlok mérete is beleszámolódik.&lt;br /&gt;
Mely tervezési minta biztosít a fentiekre elegáns megoldást?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=9}}&lt;br /&gt;
# Aggregate&lt;br /&gt;
# Singleton&lt;br /&gt;
# Observer&lt;br /&gt;
# Memento&lt;br /&gt;
# FileSystemWatcher&lt;br /&gt;
# Container&lt;br /&gt;
# Proxy&lt;br /&gt;
# Strategy&lt;br /&gt;
# Composite&lt;br /&gt;
# Adapter&lt;br /&gt;
&lt;br /&gt;
== Adja meg, mely tervezési mintát valósítja meg az alábbi C# nyelvű kódrészlet! (2023 jan) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
interface IDatabase&lt;br /&gt;
{&lt;br /&gt;
    Data1 GetData1(int id);&lt;br /&gt;
    Data2 GetData2(int id);&lt;br /&gt;
}&lt;br /&gt;
class Database: IDatabase&lt;br /&gt;
{&lt;br /&gt;
    public Data1 GetData1(int id) { ... }&lt;br /&gt;
    public Data2 GetData2(int id) { ... }&lt;br /&gt;
}&lt;br /&gt;
class DatabaseWithCache: IDatabase&lt;br /&gt;
{&lt;br /&gt;
    Database database = new Database();&lt;br /&gt;
    Cache cache = new Cache();&lt;br /&gt;
    public Data1 GetData1(int id)&lt;br /&gt;
    {&lt;br /&gt;
        Data1 data = cache.Lookup(id);&lt;br /&gt;
        // Ha megtaláltuk a cache-ben, visszatérünk azzal, ha nem, akkor lekérdezzük adatbázisból&lt;br /&gt;
        if (data != null) return data;&lt;br /&gt;
        else return database.GetData1(id);&lt;br /&gt;
    }&lt;br /&gt;
    public Data2 GetData2(int id)&lt;br /&gt;
    {&lt;br /&gt;
        Data2 data = cache.Lookup(id);&lt;br /&gt;
        // Ha megtaláltuk a cache-ben, visszatérünk azzal, ha nem, akkor lekérdezzük adatbázisból&lt;br /&gt;
        if (data != null) return data;&lt;br /&gt;
            else return database.GetData2(id);&lt;br /&gt;
    }&lt;br /&gt;
    ...&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
class Client&lt;br /&gt;
{&lt;br /&gt;
    void DoSomething(IDatabase db)&lt;br /&gt;
    {&lt;br /&gt;
        Data1 d = db.GetData1();&lt;br /&gt;
        // ...&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=8}}&lt;br /&gt;
# Adapter&lt;br /&gt;
# Abstract factory&lt;br /&gt;
# Factory method&lt;br /&gt;
# Strategy&lt;br /&gt;
# Observer&lt;br /&gt;
# Singleton&lt;br /&gt;
# Composite&lt;br /&gt;
# Proxy&lt;br /&gt;
# Memento&lt;br /&gt;
&lt;br /&gt;
== A feladat egy Warrior (harcos) osztály elkészítése C# nyelven, mely egy eseménnyel jelzi, ha a harcost sérülés (injury) érte, és az esemény paramétereiben megadja a sérüléspontok számát (points, egész szám)! Adja meg, mely sorok alkalmazásával oldható meg az esemény megvalósítása és biztonságos elsütése! (2023 jan) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=5,7,10,11}}&lt;br /&gt;
# public InjuredDelegate Injured;&lt;br /&gt;
# public InjuredDelegate Injured(int points);&lt;br /&gt;
# event void Injured(int points);&lt;br /&gt;
# public delegate InjuredDelegate Injured;&lt;br /&gt;
# public event InjuredDelegate Injured;&lt;br /&gt;
# public event InjuredDelegate Injured(int points);&lt;br /&gt;
# delegate void InjuredDelegate(int points);&lt;br /&gt;
# InjuredDelegate(points);&lt;br /&gt;
# if (InjuredDelegate != null)&lt;br /&gt;
# if (Injured != null)&lt;br /&gt;
# Injured(points);&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, mely állítások igazak .NET környezetben szálkezelés vonatkozásában! FIGYELEM, akárhány helyes válasz létezhet! (2023 jan) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3}}&lt;br /&gt;
# Amikor egy AutoResetEvent objektum jelzett állapotba kerül, valamennyi rá várakozó szál tovább futhat.&lt;br /&gt;
# .NET környezetben egy folyamat (processz) akkor áll le, ha az összes előtérszála leáll.&lt;br /&gt;
# Egy változó növelése a ++ operátorral nem szálbiztos (nem thread safe).&lt;br /&gt;
&lt;br /&gt;
== Az alábbi állítások a .NET Framework platformra vonatkoznak! Jelölje meg, mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2023 jan) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3,4}}&lt;br /&gt;
# A JIT compiler feladata, hogy a szerelvények IL kódját jellemzően azok futtatásakor gépi kódra fordítsa&lt;br /&gt;
# Az azonosított .NET szerelvényeket csak egy alkalmazás használhatja&lt;br /&gt;
# Egy alkalmazás több szerelvényből is állhat&lt;br /&gt;
# Amikor egy .NET alapú projektet - speciálisabb beállítások alkalmazása nélkül - lefordítunk, olyan .NET szerelvény (exe, dll) születik, mely IL (Intermediate Language) kódú utasításokat tartalmaz&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi Pipes and filters (csővezeték) architektúra filter megvalósítás pszeudokód: (2023 jan) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;void Run()&lt;br /&gt;
{&lt;br /&gt;
    Data data;&lt;br /&gt;
    while (data = inputPipe.Read())&lt;br /&gt;
    {&lt;br /&gt;
        Data processedData = ProcessData(data);&lt;br /&gt;
        outputPipe.Write(processedData);&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Melyik forgatókönyvnek felel meg a fenti kód?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Csővezeték által vezérelt&lt;br /&gt;
# Aktív szűrő által vezérelt&lt;br /&gt;
# Passzív szűrő által vezérelt&lt;br /&gt;
# Adatforrás által vezérelt&lt;br /&gt;
# Adatnyelő által vezérelt&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a C# property, delegate és attribute vonatkozásában. Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2023 jan) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# Feltéve, hogy adott egy Circle osztály és annak egy int típusú Radius tulajdonsága (property), valamint a Circle osztály egy circle nevű példánya/objektuma, akkor a tulajdonság lekérdezése pl. az int n = circle.Radius; formában lehetséges.&lt;br /&gt;
# Egy C# attribútum alkalmazásakor az attribútum neve elé a @ karaktert kell tenni.&lt;br /&gt;
# A C# attribútumok segítségével deklaratív módon tudunk információt csatolni többek között tagváltozókhoz, metódusokhoz és osztályokhoz.&lt;br /&gt;
# Egy C# property (tulajdonság) bevezetésekor mindig be kell vezetni egy tagváltozót is az osztályban, melyben a property értéke tárolásra kerül.&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi osztály: (2023 jan) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;class Game&lt;br /&gt;
{&lt;br /&gt;
    object syncRoot = new object(); // *1&lt;br /&gt;
    bool hasWon = false; // *2&lt;br /&gt;
&lt;br /&gt;
    public void PrintWinner() // *3&lt;br /&gt;
    {&lt;br /&gt;
        // ...&lt;br /&gt;
        lock (syncRoot) // *4&lt;br /&gt;
        {&lt;br /&gt;
            if (!hasWon) // *5&lt;br /&gt;
            {&lt;br /&gt;
                hasWon = true;&lt;br /&gt;
                Console.WriteLine(&amp;quot;Winner!&amp;quot;);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
A Game osztályal objektumaival szemben elvárás, hogy objektumonként a &amp;quot;Winner!&amp;quot; szöveget csak egyszer írhatja ki a PrintWinner() művelet, akárhányszor is kerül meghívásra.&lt;br /&gt;
Mely állítások igazak? A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl. Csak olyan megoldás fogadható el, mely nem jár az osztály használatakor szükségtelen teljesítményromlással (pl. nagy számú párhuzamos hozzáférés esetén sem).&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A Game osztály jelen formájában szálbiztos (thread safe), de nem maradna az, ha a teljesítmény javítása érdekében a *5 sorban a &amp;quot;if (!hasWon)&amp;quot; feltételvizsgálatot a lock blokkon kívülre (az elé) helyeznénk.&lt;br /&gt;
# A Game osztály jelen formájában szálbiztos (thread safe).&lt;br /&gt;
# A Game osztály jelen formájában nem szálbiztos (thread safe), de azzá tehető, ha *3 sorban a public kulcsszó után kiírjuk a synchronized kulcsszót.&lt;br /&gt;
# A Game osztály jelen formájában nem szálbiztos (thread safe), de azzá tehető, ha a *1 sorban a syncRoot és a *2 sorban a hasWon változót statikussá tesszük.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a Document-View (Dokumentum-Nézet) architektúra vonatkozásában. Jelölje meg, mely állítások igazak! (2023 jan) ==&lt;br /&gt;
FIGYELEM, akárhány helyes válasz létezhet!&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A nézetnek van egy hivatkozása a dokumentumára.&lt;br /&gt;
# Amikor egy nézetnek valamilyen adatra van szüksége (pl. a megjelenítéshez), akkor azt lekérdezi a dokumentumától.&lt;br /&gt;
# Amikor egy új nézet típust kell bevezetni, akkor szükség van a dokumentum osztály módosítására.&lt;br /&gt;
# A nézet ősosztályban van egy UpdateAllViews művelet, mely a többi nézetet is értesíti a változásról.&lt;br /&gt;
# A dokumentumnak minden nézet típusra van egy külön listája, melyben az adott típusú nézeteket tárolja.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, mely állitások igazak .NET környezetben szálkezelés vonatkozásában! FIGYELEM, akárhány helyes válasz létezhet! (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3}}&lt;br /&gt;
# .NET környezetben egy folyamat (processz) a kilépéskor bevárja az összes háttérszálat.&lt;br /&gt;
# A lock utasítás eltérő folyamatok (processzek) szálai között is használható kölcsönös kizárás megvalósítására.&lt;br /&gt;
# Amikor egy ManualResetEvent objektum jelzett állapotba kerül, valamennyi rá várakozó szál tovább futhat.&lt;br /&gt;
&lt;br /&gt;
== Egy alkalmazásban a több helyről is használt UserRepository osztály a publikus műveleteiben relációs adatbázisból olvas fel felhasználókra vonatkozó adatokat a hívó számára. A kliens osztályok a UserRepository-t már egy az általa implementált IUserRepository interfészen keresztül érik el. Mely tervezési minta segítségével tudjuk a UserRepository osztály és a klienseinek módosítása nélkül megoldani, hogy az egyes kérések kiszolgálása nemrég lekérdezett friss adatok esetén cache-ből, egyébként az eredeti módon, az adatbázisból történhessen meg? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=10}}&lt;br /&gt;
# Singleton&lt;br /&gt;
# Observer&lt;br /&gt;
# Memento&lt;br /&gt;
# Adapter&lt;br /&gt;
# Abstract factory&lt;br /&gt;
# Factory method&lt;br /&gt;
# Adapter factory&lt;br /&gt;
# CacheAdapter&lt;br /&gt;
# Composite&lt;br /&gt;
# Proxy&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a C# property, delegate és attribute vonatkozásában. Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2,3}}&lt;br /&gt;
# Egy C# attribútum alkalmazásakor az attribútum nevét [ ] közé kell tenni.&lt;br /&gt;
# Feltéve, hogy adott egy Rectangle osztály és annak egy Width tulajdonsága (property), valamint a Rectangle osztály egy rect nevú példánya/objektuma, akkor a tulajdonság beállítása pl. a rect.Width = 10; formában lehetséges.&lt;br /&gt;
# C# nyelven delegate típusokat a delegate kulcsszó segítségével lehet definiálni.&lt;br /&gt;
# A C# tulajdonságok (property) segítségével deklaratív módon tudunk információt csatolni többek között tagváltozókhoz, metódusokhoz és osztályokhoz.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állitások a Document-View (Dokumentum-Nézet) architektúra vonatkozásában. Jelölje meg, mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,4}}&lt;br /&gt;
# Az architektúra az Observer tervezési minta koncepcióira épül.&lt;br /&gt;
# A nézetek másolatot tartanak fent a dokumentum adataiból.&lt;br /&gt;
# Amikor egy új nézet típust kell bevezetni, akkor szükség van a dokumentum osztály módosítására.&lt;br /&gt;
# A nézeteknek nincs közvetlen kapcsolatuk egymással (nincs egymásra hivatkozás)&lt;br /&gt;
# Egy nézet több dokumentumhoz is kapcsolódik (ezeket egy dokumentum listában tárolja a nézet).&lt;br /&gt;
&lt;br /&gt;
== A feladat egy KeyboardHandler osztály elkészítése C# nyelven, mely egy eseménnyel jelzi, ha a felhasználó lenyomott egy billentyűt, és az esemény paramétereiben megadja a lenyomott billenytủ ASCII kódját! Adja meg, mely sorok alkalmazásával oldható meg az esemény megvalósítása és biztonságos elsütése! (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,5,9,10}}&lt;br /&gt;
# public KeyPressedDelegate KeyPressed;&lt;br /&gt;
# delegate void KeyPressedDelegate(char key);&lt;br /&gt;
# event void KeyPressed(char key);&lt;br /&gt;
# public delegate KeyPressedDelegate KeyPressed;&lt;br /&gt;
# public event KeyPressedDelegate KeyPressed;&lt;br /&gt;
# public KeyPressedDelegate KeyPressed(char key);&lt;br /&gt;
# public event KeyPressedDelegate KeyPressed(char key);&lt;br /&gt;
# if (KeyPressedDelegate != null)&lt;br /&gt;
# if (KeyPressed != null)&lt;br /&gt;
# KeyPressed(key);&lt;br /&gt;
# KeyPressedDelegate(key);&lt;br /&gt;
&lt;br /&gt;
== Egy rendszermonitorozó alkalmazásba TCP/IP kapcsolaton másodpercenként érkeznek különböző mérési adatok. Az alkalmazásban a Monitor osztály feladata ezen adatok értelmezése, és az adatok bizonyos tartományokból való kiesése esetén riasztási értesítések küldése. Az alkalmazásnak különböző riasztási módokat kell támogatnia, pl. SMS és e-mail alapú riasztatást, de könnyen bővíthetőnek kell lennie újabb értesítési módokkal. Egy adott időpontban mindig csak egy riasztási módot lehet beállítani (ez a feltétel a későbbiekben sem változik). A riasztási adatokat auditálni is kell, melyre vonatkozóan a fájlba és relációs adatbázisba való naplózás közül egyet kell tudni beállítani. Melyik tervezési mintát célszerű a megvalósítás során választani? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# Memento&lt;br /&gt;
# Factory method&lt;br /&gt;
# Strategy&lt;br /&gt;
# Adapter&lt;br /&gt;
# Composite&lt;br /&gt;
# Proxy&lt;br /&gt;
# Abstract factory&lt;br /&gt;
# Singleton&lt;br /&gt;
# AlertHandler&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a Memento tervezési mintával kapcsolatban! Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz letezhet! (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A Memento mintában az Originator osztálynak van olyan múvelete, melynek egy Memento objektumot lehet átadni. Ez a múvelet a Mementoban levő adatok alapján az Originator állapotát állítja.&lt;br /&gt;
# A Memento mintában a Memento osztálynak van olyan múvelete, mely egy Originator objektumot ad vissza.&lt;br /&gt;
# A Memento mintában az Originator osztálynak van olyan múvelete, mellyel egy Memento objektumot lehet kérni. Ez a Memento objektum az Originator állapotának másolatát tárolja.&lt;br /&gt;
# A Memento mintában a Memento osztálynak van olyan múvelete, melynek egy Originator objektumot lehet átadni. Ez a múvelet az Originatorban levő adatok alapján az Memento állapotát állítja.&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi osztály: (2022 jun) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
class LongValue&lt;br /&gt;
{&lt;br /&gt;
    long val = 0; // 64 bites érték, *1&lt;br /&gt;
    object syncRoot1 = new object() ; // * 2$&lt;br /&gt;
    object syncRoot2 = new object() ; // * 3$&lt;br /&gt;
    public long GetValue() // *4&lt;br /&gt;
    {&lt;br /&gt;
        lock (syncRoot1) //*5&lt;br /&gt;
            { return val; }&lt;br /&gt;
    }&lt;br /&gt;
    public void SetValue(long v) // *6&lt;br /&gt;
    {&lt;br /&gt;
        lock (syncRoot2) // *7&lt;br /&gt;
            { val = v; }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Mely állítás igaz? Csak olyan megoldás fogadható el, mely nem jár az osztály használatakor szükségtelen teljesítményromlással (pl. nagy számú párhuzamos hozzáférés esetén sem).&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# A LongValue osztály jelen formájában is szálbiztos (thread safe).&lt;br /&gt;
# A LongValue osztály akkor lesz szálbiztos (thread safe), ha a *2 sorban a syncRoot1 és a *3 sorban a syncRoot2 változót statikussá tesszük.&lt;br /&gt;
# A LongValue osztály akkor lesz szálbiztos (thread safe), ha a *7 sorban a syncRoot2-t syncRoot1-re cseréljük.&lt;br /&gt;
# A LongValue osztály akkor lesz szálbiztos (thread safe), ha a *7 sorban a syncRoot2-t syncRoot1-re cseréljük, valamint a *2 sorban a syncRoot1 változót statikussá tesszük.&lt;br /&gt;
# A LongValue osztály akkor lesz szálbiztos (thread safe), ha *4 és *6 sorokban a public kulcsszó után kiírjuk a synchronized kulcsszót.&lt;br /&gt;
&lt;br /&gt;
== Az alábbi álítások a .NET Framework platformra vonatkoznak! Jelölje meg, mely állitások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3,4}}&lt;br /&gt;
# A .NET szerelvények (exe, dll) natív gépi kódú utasításokat tartalmaznak&lt;br /&gt;
# Egy alkalmazás több szerelvényböl is állhat&lt;br /&gt;
# Az IL kódot a JIT compiler fordítja gépi kódra&lt;br /&gt;
# Azonosított .NET szerelvényekből lehet két ugyanolyan nevǔ (fájlnév) telepítve egy számítógépre&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, mely állitások igazak a Pipes and filters (csővezetékek és szürök) architektúra vonatkozásában! (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# Az architektúrában a csővezetékek és a szủrők mellett van egy adatforrás és egy adatnyelő is.&lt;br /&gt;
# Előnye, hogy a filterek rugalmasan kombinálhatók és lecserélhetők.&lt;br /&gt;
# Egyik előnye az egyszerű hibakezelés.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a Proxy tervezési minta vonatkozásában! Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A Proxy mintában van egy interfész/ősosztály, mely elrejti a kliens számára, hogy nem az eredeti, hanem egy proxy objektummal kommunikál.&lt;br /&gt;
# A Proxy tervezési minta lehetővé teszi objektumok fastruktúrába szervezését.&lt;br /&gt;
# A Proxy mintában a kliens objektum kéréseit az alkalmazás futása közben egy proxy objektum fogadja (vagyis a kliens egy proxy objektummal van közvetlen kapcsolatban).&lt;br /&gt;
# A Proxy tervezési minta lehetővé teszi elemi és összetett objektumok egységes kezelését&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a C# property, delegate és attribute vonatkozásában. Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3}}&lt;br /&gt;
# Egy C# attribútum alkalmazásakor az attribútum neve elé a @ karaktert kell tenni.&lt;br /&gt;
# Egy C# delegate objektumot át lehet adni függvényparaméterként is.&lt;br /&gt;
# A C# attribútumok segítségével deklaratív módon tudunk információt csatolni többek között tagváltozókhoz, metódusokhoz és osztályokhoz.&lt;br /&gt;
# Feltéve, hogy adott egy Rectangle osztály és annak egy Width tulajdonsága (property), valamint a Rectangle osztály egy rect nevű példánya/objektuma, akkor a tulajdonság beállítása a rect.SetWidth(10) formában lehetséges.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a .NET AutoResetEvent osztályával kapcsolatban. Jelölje meg mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2022 jan) =={{Kvízkérdés|típus=több|válasz=2,4}}&lt;br /&gt;
# Eseményére feliratkozni a += operátorral lehet.&lt;br /&gt;
# Alapvetően a többszálú környezetben történő hatékony jelzés és jelzésre várakozás probléma megoldásának egy eszköze.&lt;br /&gt;
# Egy objektuma automatikusan jelzett állapotba kerül, amikor egy szál várakozni kezd rá.&lt;br /&gt;
# Amikor több szál is várakozik egy objektumára, és az objektum jelzett állapotba kerül, csak egy szál futhat tovább.&lt;br /&gt;
&lt;br /&gt;
== Egy alkalmazásban egy osztályt működését minél egyszerűbben bővíthetővé, kiterjeszthetővé szeretnénk tenni, akár a működésének/viselkedésének különböző aspektusai (szempontjai) szerint is. Mely tervezési mintát választaná ehhez? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=9}}&lt;br /&gt;
# Singleton&lt;br /&gt;
# Factory method&lt;br /&gt;
# Abstract factory&lt;br /&gt;
# Adapter&lt;br /&gt;
# Memento&lt;br /&gt;
# Proxy&lt;br /&gt;
# Template Method&lt;br /&gt;
# Composite&lt;br /&gt;
# Strategy&lt;br /&gt;
# Observer&lt;br /&gt;
&lt;br /&gt;
== Az alábbi állítások a .NET Framework platformra vonatkoznak! Jelölje meg, mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,4}}&lt;br /&gt;
# C# kódot a JIT compiler fordítja köztes (IL) kódra&lt;br /&gt;
# A .NET IL kód processzor és architektúra független&lt;br /&gt;
# .NET környezetben az objektumok azonnal felszabadulnak, amint az utolsó hivatkozás is megszűnik rájuk&lt;br /&gt;
# Egy alkalmazás több szerelvényből is állhat&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi Pipes and filters (csővezeték) architektúra filter megvalósítás pszeudokód: (2022 jan) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;Data Read()&lt;br /&gt;
{&lt;br /&gt;
    Data data = prevFilter.Read();&lt;br /&gt;
    Data processedData = ProcessData(data);&lt;br /&gt;
    return processedData;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Melyik forgatókönyvnek felel meg a fenti kód?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Passzív szűrő által vezérelt&lt;br /&gt;
# Csővezeték által vezérelt&lt;br /&gt;
# Adatforrás által vezérelt&lt;br /&gt;
# Adatnyelő által vezérelt&lt;br /&gt;
# Aktív szűrő által vezérelt&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, mely állítások igazak .NET környezetben szálkezelés vonatkozásában! FIGYELEM, akárhány helyes válasz létezhet! (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,4}}&lt;br /&gt;
# A szálbizosság (thread safety) fogalma azt jelenti, hogy az adott osztály többszálú környezetben is biztonságosan használható.&lt;br /&gt;
# A .NET Framework List osztálya szálbiztos (thread safe).&lt;br /&gt;
# Szálak kiléptetésére a Thread osztály Abort művelete javasolt.&lt;br /&gt;
# A Thread osztály Join műveletével lehet egy szál futásának a végét bevárni.&lt;br /&gt;
&lt;br /&gt;
== A feladat egy Collection (gyűjtemény) osztály elkészítése C# nyelven, mely egy eseménnyel jelzi, ha az elemszáma megváltozott, és az esemény paramétereiben megadja a régi és az új elemszámot! Adja meg, mely sorok alkalmazásával oldható meg az esemény megvalósítása és biztonságos elsütése! (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3,7,9,11}}&lt;br /&gt;
# public LengthChangedDelegate LengthChanged;&lt;br /&gt;
# event void LengthChanged(int oldValue, int newValue);&lt;br /&gt;
# delegate void LengthChangedDelegate(int oldValue, int newValue);&lt;br /&gt;
# public delegate LengthChangedDelegate LengthChanged;&lt;br /&gt;
# public event LengthChangedDelegate LengthChanged(int oldValue, int newValue);&lt;br /&gt;
# public LengthChangedDelegate LengthChanged(int oldValue, int newValue);&lt;br /&gt;
# public event LengthChangedDelegate LengthChanged;&lt;br /&gt;
# if (LengthChangedDelegate != null)&lt;br /&gt;
# if (LengthChanged != null)&lt;br /&gt;
# LengthChangedDelegate(oldValue, newValue);&lt;br /&gt;
# LengthChanged(oldValue, newValue);&lt;br /&gt;
&lt;br /&gt;
== Adott egy osztály. Az objektumainak állapotát úgy szeretnénk elmenteni és visszaállítani egy másik osztályból, hogy nem tesszük publikussá a tagváltozóit. Mely tervezési mintát célszerű használni a megoldás során? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Memento&lt;br /&gt;
# Strategy&lt;br /&gt;
# Observer&lt;br /&gt;
# Proxy&lt;br /&gt;
# Singleton&lt;br /&gt;
# Composite&lt;br /&gt;
# Adapter&lt;br /&gt;
# Factory method&lt;br /&gt;
# Snapshot&lt;br /&gt;
# UndoStore&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a Document-View (Dokumentum-Nézet) architektúra vonatkozásában. Jelölje meg, mely állítások igazak! (2021 jan) ==&lt;br /&gt;
FIGYELEM, akárhány helyes válasz létezhet!&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3,4}}&lt;br /&gt;
# A Document-View architektúrában a Controller osztály feladata a felhasználói interakciók kezelése.&lt;br /&gt;
# A Document-View architektúrában a dokumentumban külön tagváltozót vezetünk be minden egyes nézetre.&lt;br /&gt;
# A Document-View architektúrában a dokumentumnak van egy vagy több olyan művelete, mellyel az állapotát a nézetek bármikor le tudják kérdezni.&lt;br /&gt;
# A Document-View architektúrában a nézetnek van egy hivatkozása a dokumentumára.&lt;br /&gt;
&lt;br /&gt;
== Az alábbi állítások a .NET Framework platformra vonatkoznak! Jelölje meg, mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# .NET platformra lehet C++nyelven is fejleszteni&lt;br /&gt;
# .NET környezetben az objektumok azonnal felszabadulnak, amint az utolsó hivatkozás is megszűnik rájuk&lt;br /&gt;
# A .NET futtatókörnyezet rövid neve: CLR&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi C# nyelvű .NET alkalmazás kódrészlet. (2021 jan) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
class Counter&lt;br /&gt;
{&lt;br /&gt;
    int counter = 0; // *1&lt;br /&gt;
    object syncRoot = new object(); // *2&lt;br /&gt;
    public int GetValue() // *3&lt;br /&gt;
    {&lt;br /&gt;
        lock (syncRoot)&lt;br /&gt;
            { return counter; }&lt;br /&gt;
    }&lt;br /&gt;
    public void IncreaseCounter(int delta) // *4&lt;br /&gt;
    {&lt;br /&gt;
        lock (syncRoot)&lt;br /&gt;
            { counter += delta; }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Jelölje meg mely állítások igazak a kódrészlet vonatkozásában többszálú környezetben! FIGYELEM, akárhány helyes válasz létezhet!&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2,3}}&lt;br /&gt;
# A *2 sor elejére nem kell plusszban beírni a static kulcsszót, anélkül is helyes a működés&lt;br /&gt;
# A kód nem működne megfelelően, ha a *2 sorban a syncRoot típusát int-re cserélnénk&lt;br /&gt;
# A *3 GetValue() függvényben a lock utasítás eltávolítható (ha legalább 32 bites környezetről van szó)&lt;br /&gt;
# A *4 IncreaseCounter() függvényben a lock utasítás eltávolítható&lt;br /&gt;
# A *4 IncreaseCounter() függvényben a lock utasítás eltávolítható, de akkor ki kell írni a függvény elé a synchronized kulcsszót.&lt;br /&gt;
&lt;br /&gt;
== A feladat egy Car osztály elkészítése C# nyelven, mely egy eseménnyel jelzi, ha az autó sebessége meghalad egy adott sebességkorlátot! (2021 jan) ==&lt;br /&gt;
Adja meg, mely sorok alkalmazására van szükség a megoldásban, ha nem használhatja a ?. operátort!&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,4,9,12}}&lt;br /&gt;
# event void SpeedLimitExceededDelegate(int speed, double percent);&lt;br /&gt;
# delegate void SpeedLimitExceededDelegate(int speed, double percent);&lt;br /&gt;
# public SpeedLimitExceededDelegate SpeedLimitExceeded;&lt;br /&gt;
# public event SpeedLimitExceededDelegate SpeedLimitExceeded;&lt;br /&gt;
# public delegate SpeedLimitExceededDelegate SpeedLimitExceeded;&lt;br /&gt;
# public event SpeedLimitExceededDelegate SpeedLimitExceeded(int speed, double percent);&lt;br /&gt;
# public SpeedLimitExceededDelegate SpeedLimitExceeded(int speed, double percent);&lt;br /&gt;
# public delegate SpeedLimitExceededDelegate SpeedLimitExceeded(int speed, double percent);&lt;br /&gt;
# if (SpeedLimitExceeded != null)&lt;br /&gt;
# if (SpeedLimitExceededDelegate != null)&lt;br /&gt;
# SpeedLimitExceededDelegate(speed, percent);&lt;br /&gt;
# SpeedLimitExceeded(speed, percent);&lt;br /&gt;
&lt;br /&gt;
== Adott egy Car nevű C# nyelven megírt osztály, mely már rendelkezik egy int típusú speed nevű tagváltozóval. Ezt kell egy olyan tulajdonsággal (property) kiegészíteni, mellyel a jármű sebessége lekérdezhető, beállítható, de a beállításra csak az osztályon belül van lehetőség. Melyik a helyes és legcélravezetőbb megoldás? (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# &amp;lt;pre&amp;gt;public int Speed { get { return speed; }; set { speed = value; } }&amp;lt;/pre&amp;gt;&lt;br /&gt;
# &amp;lt;pre&amp;gt;public int Speed { get { return length; }; set { } }&amp;lt;/pre&amp;gt;&lt;br /&gt;
# &amp;lt;pre&amp;gt;public int Speed { get { return speed; }; }&amp;lt;/pre&amp;gt;&lt;br /&gt;
# &amp;lt;pre&amp;gt;public int Speed { get { return speed; }; private set { speed = value; } }&amp;lt;/pre&amp;gt;&lt;br /&gt;
# &amp;lt;pre&amp;gt;public int Speed { get { return speed; }; set; }&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások különböző tervezési mintákkal kapcsolatban! Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2,4}}&lt;br /&gt;
# Az Adapter tervezési mintában a Client osztálynak van egy Target típusú mutatója vagy hivatkozása az Adapter osztály egy példányára.&lt;br /&gt;
# Az Adapter tervezési mintában az Adapter osztály a Target osztályból származik (vagy a Target interfészt implementálja).&lt;br /&gt;
# Az Adapter minta Object Adapter változatában a Adaptee implementálja a Target interfészt (vagy a Target osztályból származik).&lt;br /&gt;
# Az Adapter tervezési mintában (legalábbis annak object adapter változatában) az Adapter (adaptáló) osztály - amennyibe lehetősége van rá - továbbítja (delegálja) a kéréseket az Adaptee (adaptálandó) osztálynak.&lt;br /&gt;
&lt;br /&gt;
== Egy online bolt alkalmazásban a feladata egy a bevásárlókosár lezárását (szállítási cím kezelése, megerősítés, fizetés) kezelő osztály megvalósítása. Az osztálynak több fizetési módot (pl. bankkártya, átutalás) kell támogatnia, és könnyen kiterjeszthetőnek kell lennie újabb fizetési módokkal. Mely tervezési mintát alkalmazná a megvalósítás során? (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Composite&lt;br /&gt;
# Memento&lt;br /&gt;
# Observer&lt;br /&gt;
# Strategy&lt;br /&gt;
# Singleton&lt;br /&gt;
# Proxy&lt;br /&gt;
# Factory method&lt;br /&gt;
# Adapter&lt;br /&gt;
# Abstract factory&lt;br /&gt;
&lt;br /&gt;
== Az alábbi állítások a .NET Framework platformra vonatkoznak! Jelölje meg, mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2}}&lt;br /&gt;
# A C# kódot a JIT compiler fordítja gépi (IL) kódra&lt;br /&gt;
# A dinamikusan lefoglalt memória felszabadítása nem a fejlesztő feladata&lt;br /&gt;
# Az elterjedtebb processzorok képesek a köztes (IL) kódot közvetlenül futtatni&lt;br /&gt;
# A C# kódot a JIT compiler fordítja köztes (IL) kódra&lt;br /&gt;
&lt;br /&gt;
== Ön egy alkalmazást fejleszt .NET platformra. Az alkalmazást a felhasználók a saját gépeiken több példányban is mepróbálhatják elindítani (akár teljesen egyidőben). Az ön feladata annak megoldása, hogy az alkalmazás csak egy példányban fusson: vagyis, ha az alkalmazásból úgy indít új példányt a felhasználó, hogy már fut, akkor az újabb példány ezt detektálja, és azonnal lépjen ki (fejezze be a futását). Mit használna az alábbiak közül ennek megvalósításához? (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# lock&lt;br /&gt;
# synchronized&lt;br /&gt;
# StartCoordinator&lt;br /&gt;
# AutoResetEvent&lt;br /&gt;
# Mutex&lt;br /&gt;
# Singleton&lt;br /&gt;
# ThreadPool&lt;br /&gt;
&lt;br /&gt;
== Adja meg, mely tervezési mintát valósítja meg az alábbi C# nyelvű kódrészlet! (2021 jan) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;interface Item&lt;br /&gt;
{&lt;br /&gt;
    void Method1();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
class SimpleItem: Item&lt;br /&gt;
{&lt;br /&gt;
    public void Method1() { … }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
class SeveralItems: Item&lt;br /&gt;
{&lt;br /&gt;
    Item[] items;&lt;br /&gt;
…&lt;br /&gt;
    public void Method1()&lt;br /&gt;
    {&lt;br /&gt;
        foreach (var item in items)&lt;br /&gt;
        item.Method1();&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
class Client&lt;br /&gt;
{&lt;br /&gt;
    Item[] items;&lt;br /&gt;
    …&lt;br /&gt;
    void PorcessAllItems() // [sic.]&lt;br /&gt;
    {&lt;br /&gt;
        …&lt;br /&gt;
        foreach (var item in items)&lt;br /&gt;
        item.Method1();&lt;br /&gt;
        …&lt;br /&gt;
}&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Composite&lt;br /&gt;
# Adapter&lt;br /&gt;
# Memento&lt;br /&gt;
# Observer&lt;br /&gt;
# Proxy&lt;br /&gt;
# Abstract factory&lt;br /&gt;
# Singleton&lt;br /&gt;
# Strategy&lt;br /&gt;
# Factory method&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a C# nyelvi eszközökről (property, delegate, event és attribute). Jelölje meg, mely állítások igazak. FIGYELEM, több helyes válasz is létezhet! (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# A C# property-k segítségével deklaratív módon tudunk információt csatolni többek között tagváltozókhoz, metódusokhoz és osztályokhoz.&lt;br /&gt;
# C# event-re feliratkozni az &amp;quot;=&amp;quot; operátorral lehet.&lt;br /&gt;
# C# event tagváltozóra helyes példa a következő: &amp;lt;pre&amp;gt;event int CompareDelegate(object a, object b);&amp;lt;/pre&amp;gt;&lt;br /&gt;
# C# event tag értéke null abban az esetben, ha nincs az eseményre feliratkozó.&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi C# nyelvü .NET alkalmazás kódrészlet, melyben a .NET beépített List&amp;lt;T&amp;gt; osztályát használjuk (és nem lehet helyette más osztályt használni). (2020 jan) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
class DataProcessor&lt;br /&gt;
{&lt;br /&gt;
    static List&amp;lt;int&amp;gt; items = new List&amp;lt;int&amp;gt;();&lt;br /&gt;
    object syncObject = new object();&lt;br /&gt;
&lt;br /&gt;
    public int GetItem(int index) {&lt;br /&gt;
        lock (syncObject)  { return items[index]; }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    public void AddItem(int n) {&lt;br /&gt;
        lock syncObject  { items.Add(n); }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Jelölje meg a helyes állítást!&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A megoldás jelen formájában nem szálbiztos (thread safe), de azzá tehető, ha GetItem és az AddItem müveletek fejlécsorát - a public kulcsszót követően - kiegészítjük a synchronized kulcsszóval.&lt;br /&gt;
# A megoldás jelen formájában nem szálbiztos (thread safe), de azzá tehető, ha a syncObject tagváltozó elé a static kulcsszót beírjuk.&lt;br /&gt;
# A megoldás szálbiztos (thread safe), és nem tehető triviális módon hatékonyabbá.&lt;br /&gt;
# A megoldás szálbiztos (thread safe), és a GetItem müveletben a lock eltávolításával hatékonyabbá tehető (hiszen a GetItem nem módosít állapotot).&lt;br /&gt;
# A megoldás szálbiztos (thread safe), és a lock utasítások eltávolításával hatékonyabbá tehető.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, hogy a .NET Framework esetében mely állítások igazak! FIGYELEM, több helyes válasz is létezhet! (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3,4}}&lt;br /&gt;
# Az alábbi forgatókönyv a klasszikus DLL hell probléma legjellemzőbb esetének jó definíciója: egy alkalmazás telepítésekor hiányzik egy vagy több DLL a célkörnyezetben, mely szükséges lenne az alkalmazás futásához, így az alkalmazás nem müködik megfelelően (mert a szükséges DLL-ek telepítéséről a felhasználó nem gondoskodott).&lt;br /&gt;
# A .NET IL kód nagyon hatékony, mert a processzorok közvetlenül tudják futtatni.&lt;br /&gt;
# Az azonosított (erős névvel aláírt) szerelvények lehetővé teszik, hogy több kiadó/fejlesztőcég azonos (fájl)névvel és azonos verzióval telepítsen .NET szerelvényeket.&lt;br /&gt;
# A privát szerelvényeket egyszerúbb telepíteni, mint az azonosított szerelvényeket.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, mely állítások igazak a szálkezelésre .NET környezetben! FIGYELEM, több helyes válasz is létezhet! (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2}}&lt;br /&gt;
# A ManualResetEvent osztályt jellemzően arra használjuk, hogy adott erőforrás elérésére vonatkozó kölcsönös kizárást valósítsunk meg a segítségével.&lt;br /&gt;
# A Mutex előnye a lock utasítással szemben, hogy különböző folyamatok szálai között is használható.&lt;br /&gt;
# Az x++ müvelet .NET környezetben atomi (és így szálbiztos), ha az x típusa int (32 bites).&lt;br /&gt;
# A ReaderWriterLock használata akkor célszerủ a lock utasítással szemben, ha egy olyan erőforrást védünk vele, melyet gyakran írunk és ritkán olvasunk.&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi Pipes and filters (csővezeték) architektúra filter megvalósítás pszeudokód: (2020 jan) ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
void Run()&lt;br /&gt;
{&lt;br /&gt;
    Data data;&lt;br /&gt;
    while(data = inputPipe.Read())&lt;br /&gt;
    {&lt;br /&gt;
        Data processedData = ProcessData(data);&lt;br /&gt;
        outputPipe.Write(processedData);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Melyik forgatókönyvnek felel meg a fenti kód? Jelölje meg a helyes választ!&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Adatforrás által vezérelt&lt;br /&gt;
# Adatnyelő által vezérelt&lt;br /&gt;
# Csővezeték által vezérelt&lt;br /&gt;
# Aktív szürő által vezérelt&lt;br /&gt;
# Passzív szưrő által vezérelt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a kétrétegű, valamint a háromrétegü architektúrával kapcsolatban! Jelölje meg, mely állítások igazak! (2020 jan) ==&lt;br /&gt;
FIGYELEM, több helyes válasz is létezhet!&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3,4}}&lt;br /&gt;
# A kétrétegü architektúrát ma már soha nem használjuk a háromrétegü architektúra előnyei miatt.&lt;br /&gt;
# A kétrétegü architektúra lehetővé teszi, hogy ugyanahhoz az adatbázishoz több kliensalkalmazást készítsünk.&lt;br /&gt;
# A háromrétegü architektúra lehetővé teszi, hogy adott üzleti logikához egyszerűen készítsünk különböző frontend alkalmazásokat, úgymint desktop, web, mobil.&lt;br /&gt;
# A háromrétegü architektúra előnye a kétrétegüvel szemben, hogy az adatbázis sémája a kliensalkalmazástól függetlenül egyszerübben átszervezhető.&lt;br /&gt;
&lt;br /&gt;
== Melyek a Singleton tervezési minta megvalósításának kellékei? Jelölje meg a helyes válaszokat! FIGYELEM, több helyes válasz is létezhet! (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3,6}}&lt;br /&gt;
# Globális változó&lt;br /&gt;
# Statikus tagváltozó&lt;br /&gt;
# Statikus metódus vagy statikus property&lt;br /&gt;
# Virtuális metódus&lt;br /&gt;
# Absztrakt metódus&lt;br /&gt;
# Védett konstruktor&lt;br /&gt;
# Védett destruktor&lt;br /&gt;
# Globális pointer vagy referencia&lt;br /&gt;
&lt;br /&gt;
== Egy alkalmazásban a CommHandler osztály felelős egy külső rendszer adott szolgáltatásainak eléréséért. A CommHandler osztályt a felhasználói/kliensei egy interfész típusként (ICommHandler) kapják meg és használják. Egy új, jogosultság hozzáférést ellenőrző objektumot szeretnénk beékelni az osztály és a felhasználói közé olyan módon, hogy az osztályt és a felhasználóit a lehető legkevésbé érintse a változtatás. Mely tervezési mintát a legcélszerübb választani a probléma megoldására? Jelölje meg a helyes választ! (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Factory method&lt;br /&gt;
# Abstract factory&lt;br /&gt;
# Composite&lt;br /&gt;
# Proxy&lt;br /&gt;
# Observer&lt;br /&gt;
# Adapter&lt;br /&gt;
# Singleton&lt;br /&gt;
# Strategy&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a Memento tervezési mintával kapcsolatban. Jelölje meg a helyes válaszokat! FIGYELEM, több helyes válasz is létezhet! (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3,6}}&lt;br /&gt;
# A mintában a Memento osztálynak van olyan művelete, melynek egy Originator objektumot lehet átadni. Ez a müvelet az Originatorban levő adatok alapján a Memento állapotát állítja.&lt;br /&gt;
# A mintában az Originator osztálynak van olyan müvelete, mellyel egy Memento objektumot lehet kérni. Ez a Memento objektum az Originator állapotának másolatát tárolja.&lt;br /&gt;
# A mintában az Originator osztálynak van olyan művelete, melynek egy Memento objektumot lehet átadni. Ez a művelet a Mementoban levő adatok alapján az Originator állapotát állítja.&lt;br /&gt;
# A mintában a CareTaker Originator objektumokat tárol.&lt;br /&gt;
# A mintában az Originator osztályt becsomagoljuk egy Memento objektummal, a Memento tárolja az Originator állapotát.&lt;br /&gt;
# A minta elérhetővé teszi a külvilág számára az objektum belső állapotát az egységbezárás megsértése nélkül (vagyis anélkül, hogy publikussá tennénk az állapotát).&lt;br /&gt;
&lt;br /&gt;
== A Composite tervezési minta fontosabb osztályai a következők: Client, Component, Composite (összetett) és Leaf (levél). Jelölje meg a helyes választ! (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# A Composite osztálynak van egy Component gyüjteménye.&lt;br /&gt;
# A Component osztálynak van egy gyüjteménye Composite, valamint egy másik gyüjteménye Leaf objektumokból.&lt;br /&gt;
# A Component osztálynak van egy közös gyüjteménye (heterogén kollekció) Composite és Leaf objektumokból.&lt;br /&gt;
# A Composite osztálynak van egy gyüjteménye Component, valamint egy másik gyưjjteménye Leaf objektumokból.&lt;br /&gt;
# A Client osztálynak van egy gyűjteménye Composite, valamint egy másik gyüjteménye Leaf objektumokból.&lt;br /&gt;
&lt;br /&gt;
== A feladata egy taxi járművek riasztáskezelő szoftver moduljának elkészítése. Amikor a modul valamilyen riasztási esemény bekövetkezését detektálja, azt többféleképpen is kezelni kell. Egyrészt naplózni kell, másrészt hálózati kapcsolaton keresztül értesíteni kell a központot, harmadrészt értesíteni kell a jármű bizonyos harver komponenseit (pl. vészvillogó). Ezen felül fontos, hogy a későbbiekben könnyen lehessen hasonló kezelési technikákat bevezetni. Melyik tervezési mintát célszerű alkalmazni a megvalósítás során? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=8}}&lt;br /&gt;
# Singleton&lt;br /&gt;
# Adapter&lt;br /&gt;
# Proxy&lt;br /&gt;
# Strategy&lt;br /&gt;
# Abstract factory&lt;br /&gt;
# Memento&lt;br /&gt;
# Composite&lt;br /&gt;
# Observer&lt;br /&gt;
# Factory method&lt;br /&gt;
&lt;br /&gt;
== Az alábbi állítások a .NET platformra vonatkoznak! Jelölje meg, mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.) (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3}}&lt;br /&gt;
# A DLL hell lényege: egy alkalmazás telepítésekor felülírásra kerül egy már korábban telepített alkalmazás által használt DLL, emiatt az újonnan telepített alkalmazás esetleg nem indul el.&lt;br /&gt;
# .NET környezetben lehetőség van a nem felügyelt erőforrások azonnali felszabadítására.&lt;br /&gt;
# A C# JIT compiler feladata, hogy az IL (köztes) kódot natív gépi kódra fordítsa le.&lt;br /&gt;
# .NET platformra csak C# nyelven lehet fejleszteni&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a C# property, delegate és attribute vonatkozásában. Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.) (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3}}&lt;br /&gt;
# Egy auto-implementált (auto-implemented) tulajdonság (property) megírásakor be kell vezetni egy tagváltozót, mely tárolja az auto-implementált tulajdonság értékét.&lt;br /&gt;
# C# nyelven lehetőség van arra, hogy a tulajdonságok (property) beállításának és lekérdezésének a láthatóságát külön szabályozzuk.&lt;br /&gt;
# Egy delegate típusú, pl. lokális változónak az = operátorral is adhatunk értéket.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a .NET ManualResetEvent osztályával kapcsolatban. Jelölje meg mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2}}&lt;br /&gt;
# Egy objektuma automatikusan jelzett állapotba kerül, amikor egy szál várakozni kezd rá.&lt;br /&gt;
# A Set függvénnyel jelzett állapotba állítható.&lt;br /&gt;
# Általában a kölcsönös kizárás megvalósítására használjuk.&lt;br /&gt;
# Amikor több szál is várakozik egy objektumára, és az objektum jelzett állapotba kerül, csak egy szál futhat tovább.&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi osztály:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
class Window&lt;br /&gt;
{&lt;br /&gt;
   object syncRoot = new object();&lt;br /&gt;
   static bool isFirst = true;&lt;br /&gt;
   int requestCount = 0;&lt;br /&gt;
   public bool IsFirst()&lt;br /&gt;
   {&lt;br /&gt;
      ++requestCount;&lt;br /&gt;
      lock (syncRoot)&lt;br /&gt;
      {&lt;br /&gt;
         bool tmp = isFirst;&lt;br /&gt;
         isFirst = false;&lt;br /&gt;
         return tmp;&lt;br /&gt;
      }&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Mely állítások igazak akkor, ha a Window osztályt többszálú környezetben használjuk? A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl. (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3}}&lt;br /&gt;
# Jelen megoldásban garantált, hogy ha különböző Window objektumokra hívjuk az IsFirst műveletet, az akkor is csak egyszer fog igazzal visszatérni.&lt;br /&gt;
# Jelen megoldás nem garantálja, hogy ha különböző Window objektumokra hívjuk az IsFirst műveletet, az akkor is csak egyszer fog igazzal visszatérni. De ha a syncRoot objektumot statikussá tesszük, akkor garantálni fogja.&lt;br /&gt;
# Jelen megoldásban a requestCount változóban nyilvántartott IsFirst hívások száma inkonzisztensé tud válni&lt;br /&gt;
&lt;br /&gt;
== Egy olyan CAD (Computer Aided Design) alkalmazást kell megvalósítania, mely segítségével épületeket lehet megtervezni. Az alkalmazás futásakor a felületen különböző elemeket (ajtó, ablak, fal, padló stb.) lehet elhelyezni. A tervezés elején a felhasználó mindig kiválasztja, milyen stílusú házat szeretne létrehozni (pl. középkori, Bauhaus, mediterrán stb.), ezt követően az alkalmazásnak a felületen a kiválasztott stílusnak megfelelő elemeket (ajtó, ablak stb.) kell létrehoznia. Melyik tervezési minta passzol leginkább a megoldandó feladathoz? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=6}}&lt;br /&gt;
# Adapter&lt;br /&gt;
# Memento&lt;br /&gt;
# Singleton&lt;br /&gt;
# Proxy&lt;br /&gt;
# Strategy&lt;br /&gt;
# Abstract factory&lt;br /&gt;
# Observer&lt;br /&gt;
# Composite&lt;br /&gt;
# Factory method&lt;br /&gt;
# Dependency Injection&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások különböző tervezési mintákkal kapcsolatban! Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,5}}&lt;br /&gt;
# Az Adapter tervezési mintának van olyan változata, melyben az Adapter leszármazik az Adaptee osztályból.&lt;br /&gt;
# Az Adapter tervezési mintában az Adapter és Adaptee interfésze megegyezik.&lt;br /&gt;
# Az Adapter tervezési mintában a Client osztálynak van egy Target típusú mutatója vagy hivatkozása az Adaptee osztály egy példányára.&lt;br /&gt;
# Az Adapter tervezési mintában az Adaptee megvalósítja a Target interfészt.&lt;br /&gt;
# Az Adapter tervezési mintában az Adapter megvalósítja a Target interfészt.&lt;/div&gt;</summary>
		<author><name>Lovász Botond</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Szofttech&amp;diff=206803</id>
		<title>Záróvizsga kvíz - Szofttech</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Szofttech&amp;diff=206803"/>
		<updated>2026-01-02T19:52:51Z</updated>

		<summary type="html">&lt;p&gt;Lovász Botond: Sorok kijavítása&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Kvízoldal&lt;br /&gt;
|cím=ZVSzofttech|pontozás=-&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely állítások igazak? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# Az érettség a szoftvertermékre vonatozó nemfunkcionális követelmény&lt;br /&gt;
# A Model-View-Controller interaktív rendszerek tervezésekor használható architektúra stílus&lt;br /&gt;
# Az ekvivalencia particionálás fehérdoboz tesztelési technika&lt;br /&gt;
# A SPICE lépcsős érettségi modell&lt;br /&gt;
&lt;br /&gt;
== A szoftverfejlesztést támogató folyamatokra mely állítások igazak az alábbiak közül? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A szoftver jó minőségének biztosításához nem elegendő a tesztelés; hibaelkerülési és hibamegelőzési technikákat is alkalmazni kell.&lt;br /&gt;
# A szoftverfejlesztés során mérni lehet a szoftvertermék, a terméket előállító folyamat és a folyamatokat végrehajtó erőforrások jellemzőit is.&lt;br /&gt;
# A kockázatkezelés azt jelenti, hogy előrelátással és intézkedéseinkkel nullára csökkentjük az igazán lényeges kockázatok előfordulásának valószínűségét.&lt;br /&gt;
# A konfigurációmenedzsment agilis környezetben nem fontos, mert a csapat naponta megbeszéli a &amp;quot;napi scrum meetingen&amp;quot;, hogy azon a napon ki milyen elemekkel fog dolgozni, és a többiek ezt tiszteletben tartják&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül válassza ki a HAMIS állításokat! (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3,4}}&lt;br /&gt;
# A CMMI modellben 2-es érettségi szinten levő szoftverfejlesztő cégnél a projektirányítási folyamatokat meghatározták.&lt;br /&gt;
# A rövid válaszidő minden szoftver esetében alapkövetelmény.&lt;br /&gt;
# A szoftvertermék minőségét az ISO 9001 szabvány egyértelműen meghatározza.&lt;br /&gt;
# Agilis projektek esetében a kódot nem szükséges kommentezni, mert a User story-k elegendőek ahhoz, hogy a fejlesztő a követelményeket megértse és ezek alapján strukturálja a kódot.&lt;br /&gt;
&lt;br /&gt;
== Melyik állítások HAMISAK az alábbiak közül? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1}}&lt;br /&gt;
# Az UML diagramok alkalmazása agilis projektek esetében fölösleges, mert a User story-k sokkal egyszerűbben írják le ugyanazokat az elemeket.&lt;br /&gt;
# A tervezés (design) során alapvetően a rendszer statikus és dinamikus nézetét írjuk le.&lt;br /&gt;
# A GUI tervezése során tiszteletben kell tartani a konzisztencia elvét: az interfész tegye lehetővé, hogy hasonló funkciókat hasonlóan lehessen elérni / indítani.&lt;br /&gt;
# A tervezés (design) a CMMI modellben a 3-as érettségi szinten megjelenő TS (Technical Solution) része.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely állítások utalnak arra, hogy a szoftverfejlesztést iteratív inkrementális modell szerint végzik? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A követelményeket kisebb csoportokba osztják, priorizálják, és egyszerre mindig csak egy csoporttal foglalkoznak.&lt;br /&gt;
# A cégnél a V-modell szerint végzik a szoftverfejlesztést.&lt;br /&gt;
# A cégnél a RUP módszertan szerint végzik a szoftverfejlesztést.&lt;br /&gt;
# Minden fejlesztési fázis az előző fázis eredményeire alapul; a fázisok időben egymás után következnek.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyek lehetnek egy szoftver nemfunkcionális követelményei? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A rendszernek iOS és Android operációs rendszert használó okostelefonon, valamint Windows rendszert futtató laptopon is működnie kell.&lt;br /&gt;
# A bejelentkező képernyőn meg kell adni a felhasználó vezetéknevét és keresztnevét is. A vezetéknév maximum 15 karakter hosszúságú lehet&lt;br /&gt;
# A rendszernek hét munkanapjain 8-18 óra között működnie kell.&lt;br /&gt;
# Bármelyik képernyőről vissza lehessen térni az induló képernyőre a Home gomb megnyomásával&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely állítások jelölnek HELYES párosítást a CMMI modell érettségi szintjei és az adott érettségi szinthez tartozó folyamatok között? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2, 4}}&lt;br /&gt;
# A &amp;quot;Mérés és elemzés&amp;quot; (MA) folyamat 4-s érettségi szinten (ML4) van.&lt;br /&gt;
# A &amp;quot;Követelménymenedzsment&amp;quot; (REQM) 2-es érettségi szinten (ML2) kötelező folyamat.&lt;br /&gt;
# A &amp;quot;Kockázatmenedzsment&amp;quot; (RSKM) a CMMI modell 5-ös érettségi szintjén (ML5) van.&lt;br /&gt;
# A &amp;quot;Konfigurációmenedzsment&amp;quot; (CM) a 2-es érettségi szinten (ML2) jelenik meg.&lt;br /&gt;
&lt;br /&gt;
== A tesztelési technikákra vonatkozó mely állítások igazak az alábbiak közül? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3,4}}&lt;br /&gt;
# A feketedoboz tesztelés a gráfelmélet elemeit használja.&lt;br /&gt;
# Fehérdoboz tesztelésben a teszt eseteket a nemfunkcionális követelmények alapján hozzuk létre.&lt;br /&gt;
# A Fagan-féle inspekció statikus tesztelési technika.&lt;br /&gt;
# Általában a statikus és dinamikus, az utóbbin belül pedig a strukturális és funkcionális technikákat megfelelő arányban kombinálva alakul ki az adott esetben jó tesztelési módszer&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mi utalhat arra, hogy a szoftverfejlesztők agilis megközelítéseket alkalmaznak? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A projektcsapat tagjai folyamatosan kommunikálnak a megrendelővel.&lt;br /&gt;
# Statikus tesztelést is alkalmaznak.&lt;br /&gt;
# A szoftverfejlesztési projektet Burndown Chart-tal tervezik és követik.&lt;br /&gt;
# A cég a CMMI modell szerinti 4-es érettségi szinten van.&lt;br /&gt;
&lt;br /&gt;
== Melyik állítások HAMISAK az alábbiak közül? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3,4}}&lt;br /&gt;
# A GUI tervezése során tiszteletben kell tartani a &amp;quot;minimális meglepetés&amp;quot; elvét.&lt;br /&gt;
# A tervezés (design) a CMMI modellben a 3-as érettségi szinten megjelenő TS (Technical Solution) része.&lt;br /&gt;
# A tervezés során az objektum modell és a szekvencia diagram használata kötelező.&lt;br /&gt;
# Az UML diagramok alkalmazása az egyedüli lehetőség arra, hogy a tervezés során a rendszer viselkedését modellezzük.&lt;br /&gt;
&lt;br /&gt;
== A tesztelési technikákra vonatkozó mely állítások igazak az alábbiak közül? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2,4}}&lt;br /&gt;
# Az útvonal alapú tesztelés és az adatfolyam alapú tesztelés a strukturális tesztelés két alapvető megközelítése.&lt;br /&gt;
# A páros szemle (Peer Review) statikus tesztelési technika.&lt;br /&gt;
# Fehérdoboz tesztelésben a követelményspecifikáció alapján határozzuk meg a teszt eseteket.&lt;br /&gt;
# A feketedoboz tesztelés a függyvényelmélet elemeit használja.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyek lehetnek egy szoftver nemfunkcionális követelményei? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3,4}}&lt;br /&gt;
# A rendszernek biztosítania kell, hogy a fekvőbeteghez, a kórházba való felvételkor egy megfelelő osztályon található ágyat rendeljenek.&lt;br /&gt;
# A rendszerben regisztrált felhasználónak el kell tudnia indítani a &amp;quot;Járóbeteg ellátás&amp;quot; folyamatot.&lt;br /&gt;
# A rendszer alapfunkcióit egy képzett orvos-asszisztensnek maximum 3 óra alatt el kell tudnia sajátítani.&lt;br /&gt;
# A rendszernek asztali gépen, laptopon és okostelefonon is működnie kell.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyik szabvány(ok) és / vagy modell (ek) központi eleme a szoftvertermék? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# ISO 9001&lt;br /&gt;
# CMMI&lt;br /&gt;
# ISO 15504&lt;br /&gt;
# ISO 25000&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mi utalhat arra, hogy a szoftverfejlesztők agilis megközelítéseket alkalmaznak? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3}}&lt;br /&gt;
# Csak Java programozási nyelvet használnak a cégnél.&lt;br /&gt;
# A szoftverből kéthetente adnak ki újabb, működő verziót.&lt;br /&gt;
# A szoftverfejlesztési projekteket Burndown Chart-tal tervezik és követik.&lt;br /&gt;
# A cég a CMMI modell szerinti 3-as érettségi szinten van.&lt;br /&gt;
&lt;br /&gt;
== Mely állítások igazak az alábbiak közül? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# Ha a cég CMMI modellt alkalmaz, csak Scrum-ot használhat projektirányításra.&lt;br /&gt;
# Agilis projektben nem kell a teszteket dokumentálni.&lt;br /&gt;
# Nemfunkcionális követelményeket a CMMI 2-es érettségi szintjén levő cégnél nem lehet meghatározni.&lt;br /&gt;
# Agilis követelményspecifikációnál a Story Point-ok szolgálnak kiindulásul a becslésekben.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyek igazak? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1}}&lt;br /&gt;
# A projektkövetés egyik agilis módja a csapat sebességének (Team Velocity) vizsgálata.&lt;br /&gt;
# A PMI javaslata szerint, a szoftverfejlesztő projekt vezetője ne értsen a programozáshoz, mert ez elvonja a figyelmét az irányítási tevékenységektől.&lt;br /&gt;
# A kockázatkezelés azt jelenti, hogy a projektben lehetséges kockázatok mindegyikét fel kell ismerni és meg kell szüntetni.&lt;br /&gt;
# A konfigurációmenedzsment során csak a kódot kell kezelni.&lt;br /&gt;
&lt;br /&gt;
== Az alábbi felsorolásban mely kijelentések igazak? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2}}&lt;br /&gt;
# A SPICE modell lépcsős folyamatfejlesztési modell.&lt;br /&gt;
# A szoftver minősége egyazon szoftver esetében sem állandó.&lt;br /&gt;
# A RUP (Rational Unified Process) agilis szoftverfejlesztési módszertan.&lt;br /&gt;
# A szoftver minőségét teszteléssel teljeskörűen biztosítani lehet.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely állítások utalnak arra, hogy a szoftverfejlesztést szekvenciális életciklus modell szerint végzik? ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3}}&lt;br /&gt;
# A cégnél a RUP módszertan szerint végzik a szoftverfejlesztést.&lt;br /&gt;
# A cégnél a V-modell szerint végzik a szoftverfejlesztést.&lt;br /&gt;
# Minden fejlesztési fázis az előző fázis eredményeire alapul; a fázisok időben egymás után következnek.&lt;br /&gt;
# A követelménymenedzsment, a tervezés, a kódolás és a tesztelés időben átlapolódhat.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül válassza ki a HAMIS állításokat! (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3,4}}&lt;br /&gt;
# A szoftver minőségének költségében a megfelelőség költsége hosszú távon alacsonyabb, mint a nemmegfelelőség költsége. Ezért érdemes minőségügyi rendszerek kidolgozásába befektetni, illetve szabványokat, módszertanokat alkalmazni.&lt;br /&gt;
# A sajátos célok (SG) és általános célok (GG) a CMMI modell kötelező elemei.&lt;br /&gt;
# Mesterséges intelligenciát alkalmazó szoftverfejesztő cégnek kötelezően a CMMI 4-es érettségi szintjén kell lennie.&lt;br /&gt;
# A CMMI modellben 2-es érettségi szinten levő szoftverfejlesztő cégnél a folyamatok szabványosak, dokumentálták őket, és a sajátos eseteket testreszabási útmutatókban írták le.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely esetekben helyes egy adott folyamat CMMl érettségi szinthez rendelése? (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A Konfigurációmenedzsment (CM) a CMMI modellben a 2-es érettségi szinten van.&lt;br /&gt;
# A Verifikáció (VER) folyamat a CMMI modellben a 4-es érettségi szinten van.&lt;br /&gt;
# A Mérés és elemzés (MA) folyamat a CMMI modellben a 2-es érettségi szinten van.&lt;br /&gt;
&lt;br /&gt;
== Az alábbi listából válassza ki, hogy mely állítások HAMISAK. (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A páros programozás agilisan múködő cégnél nem alkalmazható.&lt;br /&gt;
# A szoftver jó minőségét csakis teszteléssel lehet biztosítani.&lt;br /&gt;
# A statikus tesztelés a kódolás előtt és azt követően is alkalmazható.&lt;br /&gt;
&lt;br /&gt;
== Az agilis kockázatmenedzsment lényege, hogy az előre nem tervezett események előfordulását megakadályozzuk, és ezáltal hatásukat nullára csökkentsük. (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Válassza ki, mely állítások igazak az ISO 9001 szabvánnyal kapcsolatban. (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3,4}}&lt;br /&gt;
# Az ISO 9001 szabvány szoftvertermékek minősítésére használható.&lt;br /&gt;
# Az ISO 9001 szabvány nem alkalmazható agilisan dolgozó szoftvercégeknél.&lt;br /&gt;
# Az ISO 9001 alapú szabvány a vevői elégedettség fontosságát kiemelten hangsúlyozza.&lt;br /&gt;
# Az ISO 9001 szabvány a CMMI modellel együtt is alkalmazható.&lt;br /&gt;
&lt;br /&gt;
== Válassza ki, mely állitások igazak az alább felsoroltak közül. (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A minőség még egyazon termék esetében sem állandó&lt;br /&gt;
# A szoftver minősége függ a minőséget értékelő személyétől&lt;br /&gt;
# A szoftver minősége nem függ a szoftver típusától&lt;br /&gt;
&lt;br /&gt;
== Az alábbi esetek közül válassza ki azokat, amelyek arra utalhatnak, hogy egy szoftverfejlesztési cégnél NEM agilis megközelítéssel dolgoznak. (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3,5}}&lt;br /&gt;
# A tesztelők a fejlesztőktől elkülönülve dolgoznak, a maximális függetlenség biztosítása céljából.&lt;br /&gt;
# A projekt elején a követelményeket priorizált user story-k formájában dokumentálják.&lt;br /&gt;
# A megrendelővel, annak elfoglaltsága miatt, havonta egyszer egyeztetnek&lt;br /&gt;
# A projektet a Burndown Chart segítségével tervezik és követik&lt;br /&gt;
# A csapat nevében a csapatvezető vállalja el a feladatokat és jelenti azoknak elvégzését.&lt;br /&gt;
&lt;br /&gt;
== A CMMI alapú audit egyenértékủ az ISO 9001 audittal, mert mindkét esetben folyamatokat vizsgálnak. (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely állítások jelölnek helyes párosítást alapfogalmak között? (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A megbízhatóság a szoftvertermékre vonatozó nemfunkcionális követelmény&lt;br /&gt;
# A Model-View-Controller interaktív rendszerek tervezésekor használható architektúra stílus&lt;br /&gt;
# Az ekvivalencia particionálás fehérdoboz tesztelési technika&lt;br /&gt;
# A V-modell lépcsős érettségi modell&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül válassza ki a HAMIS állításokat. (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A Scrum nem foglalkozik a szoftverfejlesztés műszaki folyamataival, hanem csak a projektirányítási elemekkel.&lt;br /&gt;
# Agilis munkavégzés esetén nem kell tesztelési tervet készíteni, mert az a lényeg, hogy minél előbb készüljenek el a müködő szoftverrel.&lt;br /&gt;
# Agilis projektben előfordulhat, hogy a teszteket hamarabb írják meg, mint a kódot.&lt;br /&gt;
&lt;br /&gt;
== Egy szemműtéteket támogató szoftveres rendszert fejlesztő projekt esetében az idő és költség tényezőkkel nem kell foglalkozni, mert a biztonságos működés és a folyamatos rendelkezésre állás fontosabb mindkettőnél. (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A biztonságkritikus szoftveres rendszereket fejlesztő projekt esetében az idő és költség tényezőkkel nem kell foglalkozni, mert a biztonság fontosabb mindkettőnél. (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Scrum alapján vezetett projektekben becslést nem kell végezni, mert a módszer alapgondolata, hogy a követelményeket nem lehet pontosan meghatározni a projekt elején. (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A listából választva jelölje, hogy egy e-kereskedelmi alkalmazásnak milyen típusú követelménye az alábbi: (2022 jan) ==&lt;br /&gt;
&amp;quot;A kosárba maximum 10 termék helyezhető egyszerre.&amp;quot;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Funkcionális&lt;br /&gt;
# Nemfunkcionális&lt;br /&gt;
# Nem lehet eldönteni&lt;br /&gt;
&lt;br /&gt;
== A listából választva jelölje, hogy egy e-kereskedelmi alkalmazásnak milyen típusú követelménye az alábbi: (2022 jan) ==&lt;br /&gt;
&amp;quot;Bejelentkezés nélkül nem lehet vásárolni / terméket kosárba helyezni az alkalmazásban.&amp;quot;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Funkcionális&lt;br /&gt;
# Nemfunkcionális&lt;br /&gt;
# Nem lehet eldönteni&lt;br /&gt;
&lt;br /&gt;
== A listából választva jelölje, hogy egy e-kereskedelmi alkalmazásnak milyen típusú követelménye az alábbi: (2022 jan) ==&lt;br /&gt;
&amp;quot;A rendszer hétfőről keddre virradó éjjel 2 és 3 óra között leáll, karbantartás céljából.&amp;quot;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Funkcionális&lt;br /&gt;
# Nemfunkcionális&lt;br /&gt;
# Nem lehet eldönteni&lt;br /&gt;
&lt;br /&gt;
== A listából választva jelölje, hogy egy e-kereskedelmi alkalmazásnak milyen típusú követelménye az alábbi: (2022 jan) ==&lt;br /&gt;
&amp;quot;A rendszer alapfunkcióit 2 óra alatt el kell tudnia sajátítani egy 18 év feletti, magyarul beszélő személynek.&amp;quot;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Funkcionális&lt;br /&gt;
# Nemfunkcionális&lt;br /&gt;
# Nem lehet eldönteni&lt;br /&gt;
&lt;br /&gt;
== Az a megközelítés, hogy egy bonyolult szoftvert kisebb, kevésbé komplex részekre bontunk és a fejlesztést minél rövidebb iterációkban végezzük, tulajdonképpen egy kockázatkezelési eljárás, amellyel igyekszünk csökkenteni annak a negatív hatását, hogy a követelményeket nem ismerjük pontosan. (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Milyen típusú munkavégzésre jellemző az állítás: A cégben a CMMI modell harmadik érettségi szintje szerint dolgoznak (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# Agilis megközelítés&lt;br /&gt;
# Nem agilis megközelítés&lt;br /&gt;
# nem lehet egyértelműen eldönteni / mindkét megközelítésben is alkalmazható&lt;br /&gt;
&lt;br /&gt;
== Milyen típusú munkavégzésre jellemző az állítás: A fejlesztők egy csoportban dolgoznak a tesztelőkkel, folyamatos a kommunikáció közöttük (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Agilis megközelítés&lt;br /&gt;
# Nem agilis megközelítés&lt;br /&gt;
# nem lehet egyértelműen eldönteni / mindkét megközelítésben is alkalmazható&lt;br /&gt;
&lt;br /&gt;
== Milyen típusú munkavégzésre jellemző az állítás: A fejlesztés során azonosítják a konfigurációs elemeket (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# Agilis megközelítés&lt;br /&gt;
# Nem agilis megközelítés&lt;br /&gt;
# nem lehet egyértelműen eldönteni / mindkét megközelítésben is alkalmazható&lt;br /&gt;
&lt;br /&gt;
== Milyen típusú munkavégzésre jellemző az állítás: A projekt elején a nemfunkcionális követelmények teljes halmazát részletesen dokumentálják. (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Agilis megközelítés&lt;br /&gt;
# Nem agilis megközelítés&lt;br /&gt;
# nem lehet egyértelműen eldönteni / mindkét megközelítésben is alkalmazható&lt;br /&gt;
&lt;br /&gt;
== Milyen típusú munkavégzésre jellemző az állítás: A projektet a Burndown Chart segítségével tervezik és követik (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Agilis megközelítés&lt;br /&gt;
# Nem agilis megközelítés&lt;br /&gt;
# nem lehet egyértelműen eldönteni / mindkét megközelítésben is alkalmazható&lt;br /&gt;
&lt;br /&gt;
== Egészítse ki a mondatot: A strukturális tesztelés során a teszt eseteket ?VÁLASZ? alapján határozzuk meg. (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# a döntési táblák&lt;br /&gt;
# a kód belső szerkezete&lt;br /&gt;
# a követelményspecifikáció&lt;br /&gt;
&lt;br /&gt;
== A CMMI modellben melyik érettségi szinten jelenik meg a Mérés és elemzés (MA) folyamat? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# 1&lt;br /&gt;
# 2&lt;br /&gt;
# 3&lt;br /&gt;
# 4&lt;br /&gt;
# 5&lt;br /&gt;
&lt;br /&gt;
== A CMMI modellben melyik érettségi szinten jelenik meg a Kockázatmenedzsment folyamat? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# 1&lt;br /&gt;
# 2&lt;br /&gt;
# 3&lt;br /&gt;
# 4&lt;br /&gt;
# 5&lt;br /&gt;
&lt;br /&gt;
== Az alábbi UML2 diagram alapján jellemezze az állítást. (2021 jan) ==&lt;br /&gt;
&lt;br /&gt;
[[Fájl:2021 jan mernokinfo bsc zv szofttech uml 1.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;R Beta&#039;&#039;&#039; függvénye nem kaphat paraméterül &#039;&#039;&#039;F&#039;&#039;&#039; objektumot, mert &#039;&#039;&#039;F&#039;&#039;&#039; függ &#039;&#039;&#039;P&#039;&#039;&#039;-től.&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# mindkét tagmondat igaz és a következtetés is helyes&lt;br /&gt;
# csak a második tagmondat igaz&lt;br /&gt;
# mindkét tagmondat igaz, de a következtetés hamis&lt;br /&gt;
# csak az első tagmondat igaz&lt;br /&gt;
# egyik tagmondat sem igaz&lt;br /&gt;
&lt;br /&gt;
== A Scrum szerint egy projekt minden sprintjében naponta kell meetingeket tartani, elsősorban az előrehaladás megfelelő ellenőrzése és a teljesítést esetleg gátló elemek azonnali azonosítása céljából. (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Az implementáció a kódoláson kívül egyéb elemeket is tartalmaz, például a műszaki dokumentáció elkészítését és a változásmenedzsmentet. (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Az alábbi UML2 diagram alapján jellemezze az állítást. (2021 jan) ==&lt;br /&gt;
&lt;br /&gt;
[[Fájl:2021 jan mernokinfo bsc zv szofttech uml 2.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Iota Kappa&#039;&#039;&#039; metódusa nem adhat vissza &#039;&#039;&#039;Khi&#039;&#039;&#039; osztályú objektumot, mert &#039;&#039;&#039;Iota&#039;&#039;&#039; nem függ a &#039;&#039;&#039;Khi&#039;&#039;&#039; osztálytól.&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# egyik tagmondat sem igaz&lt;br /&gt;
# csak az első tagmondat igaz&lt;br /&gt;
# csak a második tagmondat igaz&lt;br /&gt;
# mindkét tagmondat igaz, de a következtetés hamis&lt;br /&gt;
# mindkét tagmondat igaz és a következtetés is helyes&lt;br /&gt;
&lt;br /&gt;
== Válassza ki az ÖSSZES HELYES választ az alábbi, szoftvertesztelésre vonatkozó állítások közül. (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3,4}}&lt;br /&gt;
# A „féregirtó paradoxon” egy tesztelési technika, amely szerint a teszt eseteket rendszeresen felül kell vizsgálni és módosítani kell&lt;br /&gt;
# A tesztelés a szoftver minőségének biztosítására szolgáló egyetlen lehetséges módszer, mert csak a tesztelés teszi lehetővé minőségi jellemzők mérését.&lt;br /&gt;
# A dinamikus tesztelés alapulhat követelményspecifikáción és a kód belső szerkezetén is.&lt;br /&gt;
# A határérték tesztelés és az ekvivalencia particionálás funkcionális tesztelési technikák, a követelményspecifikáción alapszanak.&lt;br /&gt;
# A tesztelés pontosan a tesztek futtatását jelenti, de nem azonos a hibakereséssel.&lt;br /&gt;
# A strukturális tesztelés nem feltételezi a kód futtatását.&lt;br /&gt;
&lt;br /&gt;
== Az „elkerülés”, „csökkentés”, „kompenzálás” és „megegyezés” olyan lehetséges intézkedések, amelyekkel a kockázat nullára csökkenthető egy projektben. (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A rövid válaszidő minden szoftver esetében alapkövetelmény. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Az, hogy a szabványos folyamatokat dokumentálták, a CMMI modellben legkorábban a 3-as érettségi szintre jellemző. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A RUP elóírja, hogy a szoftvermérnökök nem fogalmazhatnak meg funkcionális követelményeket egy szoftverre vonatkozóan, mert ez mindig a felhasználók feladata. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A megbízhatósági követelmények nemfunkcionális követelmények. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A CMMI modell folytonos nézetének (a folytonos CMMI-modellnek) előnye, hogy a szervezetek saját szükségleteiknek és követelményeiknek megfelelő folyamatokat tudják kiválasztani és továbbfejleszteni. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Nem a validációs tesztelés célja megmutatni, hogy a szoftver megfelel a követelményeinek, vagyis ez az, amit a vásárló szeretne. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A V modell a vízesés-modellből kialakított iteratív modell. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A CMMI előírja, hogy a termék méréséhez a GQM (Goal-Question-Metric) paradigmát kell használni. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Az alábbi UML2 diagram alapján - a kulcs felhasználásával - jellemezze az állítást! (2020 jan) ==&lt;br /&gt;
[[Fájl:2020 jan info zv szofttech uml.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
Az E foo függvénye meghívhatja a paraméterül kapott D objektum foo függvényét, mert E függ D-től.&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# mindkét tagmondat igaz és a következtetés is helyes (+++)&lt;br /&gt;
# mindkét tagmondat igaz, de a következtetés hamis (++-)&lt;br /&gt;
# csak az első tagmondat igaz (+-)&lt;br /&gt;
# csak a második tagmondat igaz (-+)&lt;br /&gt;
# egyik tagmondat sem igaz (--)&lt;br /&gt;
&lt;br /&gt;
A D quux függvénye nem kaphat paraméterül F osztályú objektumot, mert D nem függ F-től.&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# mindkét tagmondat igaz és a következtetés is helyes (+++)&lt;br /&gt;
# mindkét tagmondat igaz, de a következtetés hamis (++-)&lt;br /&gt;
# csak az első tagmondat igaz (+-)&lt;br /&gt;
# csak a második tagmondat igaz (-+)&lt;br /&gt;
# egyik tagmondat sem igaz (--)&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely állítások IGAZAK a folyamatfejlesztési modellekre? (2023 jún) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2,3}}&lt;br /&gt;
# A SPICE modell egyéni, szoftverfejlesztéshez kapcsolódó folyamatok képességi szintjeit vizsgálja; egy folyamat képességi szintje 0-5 között lehet.&lt;br /&gt;
# Egy szoftverfejlesztő cég alkalmazhat lépcsős és folytonos megközelítést egyszerre; a CMMI modell kifejezetten támogatja ezt.&lt;br /&gt;
# A CMM modell egy szoftverfejlesztő cég egészére határoz meg érettségi szinteket, 1-től 5-ig.&lt;br /&gt;
# Agilisan dolgozó cégnél csak folytonos folyamatfejlesztési modellt lehet alkalmazni, mert a lépcsős megközelítés ellentmond az agilitásnak.&lt;br /&gt;
== Az alábbiak közül mely állítások helyesek? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2}}&lt;br /&gt;
# A szoftvertermék minősége minden szoftver esetében állandó&lt;br /&gt;
# A szoftverek modellezésénél alapvetően kétféle nézetet használunk: statikus és dinamikus nézeteket.&lt;br /&gt;
# A döntési tábla használata fehérdoboz tesztelési technika&lt;br /&gt;
# Az ISO 9001 lépcsős érettségi modell&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely állítások jelölnek HELYES párosítást a CMMI modell érettségi szintjei és az adott érettségi szinthez tartozó folyamatok között? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2,3}}&lt;br /&gt;
# A &amp;quot;Termékintegráció&amp;quot; (PI) a CMMI modell 3-as érettségi szintjén (ML3) van.&lt;br /&gt;
# A &amp;quot;Mérés és elemzés&amp;quot; (MA) folyamat 2-es érettségi szinten (ML2) van.&lt;br /&gt;
# A &amp;quot;Szervezeti szintű képzés&amp;quot; (OT) 3-as érettségi szinten (ML3) kötelező folyamat.&lt;br /&gt;
# A &amp;quot;Projekttervezés&amp;quot; (PP) a 3-as érettségi szinten (ML3) jelenik meg.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely állítások HAMISAK a folyamatfejlesztési modellekre? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2,4}}&lt;br /&gt;
# Ha egy cég mesterséges intelligenciát alkalmazó szoftvert fejleszt, kötelező, hogy a design és kódolás folyamatai legalább 3-as képességi szinten legyenek.&lt;br /&gt;
# A SPICE modell az ISO 9001 szabvány alapján határozza meg, hogy egy cégnél megfelelő-e a minőségbiztosítás.&lt;br /&gt;
# A CMMI modell szerint egy cég akkor van 3-as érettségi szinten, ha a 2-es és 3-as érettségi szinthez tartozó folyamatokat implementálták, és ezek legalább 3-as képességi szinten vannak. &lt;br /&gt;
# A CMM modell egy szoftverfejlesztő cég egészére határoz meg érettségi szinteket, 0-tól 5-ig.&lt;br /&gt;
== Az alábbiak közül mely állítások utalnak arra, hogy a szoftverfejlesztést NEM szekvenciális életciklus modell szerint végzik? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# A követelményeket nagyon részletesen meghatározzák a projekt elején, és az ügyfélnek való átadásig nem módosítják őket.&lt;br /&gt;
# A tesztelés a kódolás után következik.&lt;br /&gt;
# A cégnél a V-modell szerint végzik a szoftverfejlesztést.&lt;br /&gt;
# A fejlesztés több iteráció során valósul meg; a projekt indításakor tudatosan csak a követelmények egy részével foglalkoznak.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mi utalhat arra, hogy egy szoftverfejlesztési projektben agilis megközelítéseket alkalmaznak? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A szoftverfejlesztés során többször végeznek refaktorizálást / refaktorálást.&lt;br /&gt;
# A projektet Burndown Chart segítségével követik.&lt;br /&gt;
# Csak dinamikus tesztelést alkalmaznak.&lt;br /&gt;
# A cég a SPICE modell szerint implementálta a Projekttervezés folyamatot, amely most 3-as képességi szinten van.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül válassza ki a HAMIS állításokat! (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,4}}&lt;br /&gt;
# A folyamatos rendelkezésre állás minden szoftver esetében alapkövetelmény.&lt;br /&gt;
# Az ISO 25000 szabvány a szoftvertermék minőségével foglalkozik.&lt;br /&gt;
# Agilis projektek esetében a User story-k központi helyet foglalnak el a követelmények megértése és a teszt esetek megfogalmazása során.&lt;br /&gt;
# A CMMI modellben 2-es érettségi szinten levő szoftverfejlesztő cégnél a tesztelési folyamatokat meghatározták.&lt;br /&gt;
== Az alábbiak közül melyek lehetnek egy szoftver nemfunkcionális követelményei? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3}}&lt;br /&gt;
# Nyomtatni .pdf file-ba is lehessen.&lt;br /&gt;
# A rendszernek hétvégén is működnie kell, 0-tól 24 óráig.&lt;br /&gt;
# A rendszernek iOS és Android operációs rendszert használó okostelefonon, valamint Windows és Linux rendszert futtató laptopon is működnie kell.&lt;br /&gt;
# A bejelentkező képernyőn meg kell adni a felhasználó mobilszámát is. A mobilszám bármilyen nemzetközi hívószám lehet; a számsor elején &amp;quot;+&amp;quot; vagy &amp;quot;00&amp;quot; karakterek is elfogadhatók.&lt;br /&gt;
== A szoftverfejlesztést támogató folyamatokra mely állítások igazak az alábbiak közül? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3,4}}&lt;br /&gt;
# A szoftverfejlesztés során a mérések többlet erőforrást igényelnek, ami csak nagy cégek esetében térül meg. Ezért 5 fősnél kisebb cégek esetében nem is ajánlatos méréseket tervezni és végezni.&lt;br /&gt;
# A szoftver jó minőségének biztosításához nem elegendő a tesztelés; hibaelkerülési és hibamegelőzési technikákat is alkalmazni kell.&lt;br /&gt;
# A konfigurációmenedzsment agilis környezetben is nagyon fontos; ajánlott ezt a folyamatot automatizálni.&lt;br /&gt;
# A kockázatkezelés során az előre nem látott események arányát és hatásukat igyekszünk minimálisra csökkenteni; teljesen nem lehet ezeket kiköszöbölni, de felkészülhetünk a kezelésükre.&lt;br /&gt;
== Melyik állítások HAMISAK az alábbiak közül? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1}}&lt;br /&gt;
# Az UML diagramok alkalmazása V-modell szerint dolgozó projektek esetében a tervezési fázisban kötelező.&lt;br /&gt;
# A tervezés (design) során elkészítetjük a szoftver részletes tervét (Software detailed design). Ez a komponenseket olyan részletességgel írja le, amely lehetővé teszi, hogy implementálni lehessen őket.&lt;br /&gt;
# A teljes tervezési folyamatot tulajdonképpen tekinthetjük döntések sorozatának is, amikor mérlegelni kell a különböző minőségi attribútumokat és vevői igényeket, egyensúlyra törekedve.&lt;br /&gt;
# Egy architektúra stílus a szoftver szerkezetének magas szintű leírását adja&lt;br /&gt;
== A tesztelési technikákra vonatkozó mely állítások igazak az alábbiak közül? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3,4}}&lt;br /&gt;
# Statikus tesztelést a forráskódon nem lehet alkalmazni; a kódot csak futtatással lehet ellenőrizni.&lt;br /&gt;
# A jó tesztelési módszerben megfelelő arányban használják a statikus és dinamikus, az utóbbin belül pedig a fehérdoboz és feketedoboz technikákat.&lt;br /&gt;
# A fehérdoboz tesztelés a gráfelmélet elemeit használja.&lt;br /&gt;
# Feketedoboz tesztelésben a teszt eseteket a követelmények alapján hozzuk létre. A követelmények lehetnek funkcionálisak vagy nemfunkcionálisak.&lt;/div&gt;</summary>
		<author><name>Lovász Botond</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Szofttech&amp;diff=206802</id>
		<title>Záróvizsga kvíz - Szofttech</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Szofttech&amp;diff=206802"/>
		<updated>2026-01-02T19:48:32Z</updated>

		<summary type="html">&lt;p&gt;Lovász Botond: Kiegészítés 2023 jun és 2024 jan vizsgákkal&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Kvízoldal&lt;br /&gt;
|cím=ZVSzofttech|pontozás=-&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely állítások igazak? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# Az érettség a szoftvertermékre vonatozó nemfunkcionális követelmény&lt;br /&gt;
# A Model-View-Controller interaktív rendszerek tervezésekor használható architektúra stílus&lt;br /&gt;
# Az ekvivalencia particionálás fehérdoboz tesztelési technika&lt;br /&gt;
# A SPICE lépcsős érettségi modell&lt;br /&gt;
&lt;br /&gt;
== A szoftverfejlesztést támogató folyamatokra mely állítások igazak az alábbiak közül? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A szoftver jó minőségének biztosításához nem elegendő a tesztelés; hibaelkerülési és hibamegelőzési technikákat is alkalmazni kell.&lt;br /&gt;
# A szoftverfejlesztés során mérni lehet a szoftvertermék, a terméket előállító folyamat és a folyamatokat végrehajtó erőforrások jellemzőit is.&lt;br /&gt;
# A kockázatkezelés azt jelenti, hogy előrelátással és intézkedéseinkkel nullára csökkentjük az igazán lényeges kockázatok előfordulásának valószínűségét.&lt;br /&gt;
# A konfigurációmenedzsment agilis környezetben nem fontos, mert a csapat naponta megbeszéli a &amp;quot;napi scrum meetingen&amp;quot;, hogy azon a napon ki milyen elemekkel fog dolgozni, és a többiek ezt tiszteletben tartják&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül válassza ki a HAMIS állításokat! (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3,4}}&lt;br /&gt;
# A CMMI modellben 2-es érettségi szinten levő szoftverfejlesztő cégnél a projektirányítási folyamatokat meghatározták.&lt;br /&gt;
# A rövid válaszidő minden szoftver esetében alapkövetelmény.&lt;br /&gt;
# A szoftvertermék minőségét az ISO 9001 szabvány egyértelműen meghatározza.&lt;br /&gt;
# Agilis projektek esetében a kódot nem szükséges kommentezni, mert a User story-k elegendőek ahhoz, hogy a fejlesztő a követelményeket megértse és ezek alapján strukturálja a kódot.&lt;br /&gt;
&lt;br /&gt;
== Melyik állítások HAMISAK az alábbiak közül? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1}}&lt;br /&gt;
# Az UML diagramok alkalmazása agilis projektek esetében fölösleges, mert a User story-k sokkal egyszerűbben írják le ugyanazokat az elemeket.&lt;br /&gt;
# A tervezés (design) során alapvetően a rendszer statikus és dinamikus nézetét írjuk le.&lt;br /&gt;
# A GUI tervezése során tiszteletben kell tartani a konzisztencia elvét: az interfész tegye lehetővé, hogy hasonló funkciókat hasonlóan lehessen elérni / indítani.&lt;br /&gt;
# A tervezés (design) a CMMI modellben a 3-as érettségi szinten megjelenő TS (Technical Solution) része.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely állítások utalnak arra, hogy a szoftverfejlesztést iteratív inkrementális modell szerint végzik? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A követelményeket kisebb csoportokba osztják, priorizálják, és egyszerre mindig csak egy csoporttal foglalkoznak.&lt;br /&gt;
# A cégnél a V-modell szerint végzik a szoftverfejlesztést.&lt;br /&gt;
# A cégnél a RUP módszertan szerint végzik a szoftverfejlesztést.&lt;br /&gt;
# Minden fejlesztési fázis az előző fázis eredményeire alapul; a fázisok időben egymás után következnek.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyek lehetnek egy szoftver nemfunkcionális követelményei? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A rendszernek iOS és Android operációs rendszert használó okostelefonon, valamint Windows rendszert futtató laptopon is működnie kell.&lt;br /&gt;
# A bejelentkező képernyőn meg kell adni a felhasználó vezetéknevét és keresztnevét is. A vezetéknév maximum 15 karakter hosszúságú lehet&lt;br /&gt;
# A rendszernek hét munkanapjain 8-18 óra között működnie kell.&lt;br /&gt;
# Bármelyik képernyőről vissza lehessen térni az induló képernyőre a Home gomb megnyomásával&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely állítások jelölnek HELYES párosítást a CMMI modell érettségi szintjei és az adott érettségi szinthez tartozó folyamatok között? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2, 4}}&lt;br /&gt;
# A &amp;quot;Mérés és elemzés&amp;quot; (MA) folyamat 4-s érettségi szinten (ML4) van.&lt;br /&gt;
# A &amp;quot;Követelménymenedzsment&amp;quot; (REQM) 2-es érettségi szinten (ML2) kötelező folyamat.&lt;br /&gt;
# A &amp;quot;Kockázatmenedzsment&amp;quot; (RSKM) a CMMI modell 5-ös érettségi szintjén (ML5) van.&lt;br /&gt;
# A &amp;quot;Konfigurációmenedzsment&amp;quot; (CM) a 2-es érettségi szinten (ML2) jelenik meg.&lt;br /&gt;
&lt;br /&gt;
== A tesztelési technikákra vonatkozó mely állítások igazak az alábbiak közül? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3,4}}&lt;br /&gt;
# A feketedoboz tesztelés a gráfelmélet elemeit használja.&lt;br /&gt;
# Fehérdoboz tesztelésben a teszt eseteket a nemfunkcionális követelmények alapján hozzuk létre.&lt;br /&gt;
# A Fagan-féle inspekció statikus tesztelési technika.&lt;br /&gt;
# Általában a statikus és dinamikus, az utóbbin belül pedig a strukturális és funkcionális technikákat megfelelő arányban kombinálva alakul ki az adott esetben jó tesztelési módszer&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mi utalhat arra, hogy a szoftverfejlesztők agilis megközelítéseket alkalmaznak? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A projektcsapat tagjai folyamatosan kommunikálnak a megrendelővel.&lt;br /&gt;
# Statikus tesztelést is alkalmaznak.&lt;br /&gt;
# A szoftverfejlesztési projektet Burndown Chart-tal tervezik és követik.&lt;br /&gt;
# A cég a CMMI modell szerinti 4-es érettségi szinten van.&lt;br /&gt;
&lt;br /&gt;
== Melyik állítások HAMISAK az alábbiak közül? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3,4}}&lt;br /&gt;
# A GUI tervezése során tiszteletben kell tartani a &amp;quot;minimális meglepetés&amp;quot; elvét.&lt;br /&gt;
# A tervezés (design) a CMMI modellben a 3-as érettségi szinten megjelenő TS (Technical Solution) része.&lt;br /&gt;
# A tervezés során az objektum modell és a szekvencia diagram használata kötelező.&lt;br /&gt;
# Az UML diagramok alkalmazása az egyedüli lehetőség arra, hogy a tervezés során a rendszer viselkedését modellezzük.&lt;br /&gt;
&lt;br /&gt;
== A tesztelési technikákra vonatkozó mely állítások igazak az alábbiak közül? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2,4}}&lt;br /&gt;
# Az útvonal alapú tesztelés és az adatfolyam alapú tesztelés a strukturális tesztelés két alapvető megközelítése.&lt;br /&gt;
# A páros szemle (Peer Review) statikus tesztelési technika.&lt;br /&gt;
# Fehérdoboz tesztelésben a követelményspecifikáció alapján határozzuk meg a teszt eseteket.&lt;br /&gt;
# A feketedoboz tesztelés a függyvényelmélet elemeit használja.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyek lehetnek egy szoftver nemfunkcionális követelményei? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3,4}}&lt;br /&gt;
# A rendszernek biztosítania kell, hogy a fekvőbeteghez, a kórházba való felvételkor egy megfelelő osztályon található ágyat rendeljenek.&lt;br /&gt;
# A rendszerben regisztrált felhasználónak el kell tudnia indítani a &amp;quot;Járóbeteg ellátás&amp;quot; folyamatot.&lt;br /&gt;
# A rendszer alapfunkcióit egy képzett orvos-asszisztensnek maximum 3 óra alatt el kell tudnia sajátítani.&lt;br /&gt;
# A rendszernek asztali gépen, laptopon és okostelefonon is működnie kell.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyik szabvány(ok) és / vagy modell (ek) központi eleme a szoftvertermék? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# ISO 9001&lt;br /&gt;
# CMMI&lt;br /&gt;
# ISO 15504&lt;br /&gt;
# ISO 25000&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mi utalhat arra, hogy a szoftverfejlesztők agilis megközelítéseket alkalmaznak? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3}}&lt;br /&gt;
# Csak Java programozási nyelvet használnak a cégnél.&lt;br /&gt;
# A szoftverből kéthetente adnak ki újabb, működő verziót.&lt;br /&gt;
# A szoftverfejlesztési projekteket Burndown Chart-tal tervezik és követik.&lt;br /&gt;
# A cég a CMMI modell szerinti 3-as érettségi szinten van.&lt;br /&gt;
&lt;br /&gt;
== Mely állítások igazak az alábbiak közül? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# Ha a cég CMMI modellt alkalmaz, csak Scrum-ot használhat projektirányításra.&lt;br /&gt;
# Agilis projektben nem kell a teszteket dokumentálni.&lt;br /&gt;
# Nemfunkcionális követelményeket a CMMI 2-es érettségi szintjén levő cégnél nem lehet meghatározni.&lt;br /&gt;
# Agilis követelményspecifikációnál a Story Point-ok szolgálnak kiindulásul a becslésekben.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyek igazak? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1}}&lt;br /&gt;
# A projektkövetés egyik agilis módja a csapat sebességének (Team Velocity) vizsgálata.&lt;br /&gt;
# A PMI javaslata szerint, a szoftverfejlesztő projekt vezetője ne értsen a programozáshoz, mert ez elvonja a figyelmét az irányítási tevékenységektől.&lt;br /&gt;
# A kockázatkezelés azt jelenti, hogy a projektben lehetséges kockázatok mindegyikét fel kell ismerni és meg kell szüntetni.&lt;br /&gt;
# A konfigurációmenedzsment során csak a kódot kell kezelni.&lt;br /&gt;
&lt;br /&gt;
== Az alábbi felsorolásban mely kijelentések igazak? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2}}&lt;br /&gt;
# A SPICE modell lépcsős folyamatfejlesztési modell.&lt;br /&gt;
# A szoftver minősége egyazon szoftver esetében sem állandó.&lt;br /&gt;
# A RUP (Rational Unified Process) agilis szoftverfejlesztési módszertan.&lt;br /&gt;
# A szoftver minőségét teszteléssel teljeskörűen biztosítani lehet.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely állítások utalnak arra, hogy a szoftverfejlesztést szekvenciális életciklus modell szerint végzik? ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3}}&lt;br /&gt;
# A cégnél a RUP módszertan szerint végzik a szoftverfejlesztést.&lt;br /&gt;
# A cégnél a V-modell szerint végzik a szoftverfejlesztést.&lt;br /&gt;
# Minden fejlesztési fázis az előző fázis eredményeire alapul; a fázisok időben egymás után következnek.&lt;br /&gt;
# A követelménymenedzsment, a tervezés, a kódolás és a tesztelés időben átlapolódhat.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül válassza ki a HAMIS állításokat! (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3,4}}&lt;br /&gt;
# A szoftver minőségének költségében a megfelelőség költsége hosszú távon alacsonyabb, mint a nemmegfelelőség költsége. Ezért érdemes minőségügyi rendszerek kidolgozásába befektetni, illetve szabványokat, módszertanokat alkalmazni.&lt;br /&gt;
# A sajátos célok (SG) és általános célok (GG) a CMMI modell kötelező elemei.&lt;br /&gt;
# Mesterséges intelligenciát alkalmazó szoftverfejesztő cégnek kötelezően a CMMI 4-es érettségi szintjén kell lennie.&lt;br /&gt;
# A CMMI modellben 2-es érettségi szinten levő szoftverfejlesztő cégnél a folyamatok szabványosak, dokumentálták őket, és a sajátos eseteket testreszabási útmutatókban írták le.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely esetekben helyes egy adott folyamat CMMl érettségi szinthez rendelése? (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A Konfigurációmenedzsment (CM) a CMMI modellben a 2-es érettségi szinten van.&lt;br /&gt;
# A Verifikáció (VER) folyamat a CMMI modellben a 4-es érettségi szinten van.&lt;br /&gt;
# A Mérés és elemzés (MA) folyamat a CMMI modellben a 2-es érettségi szinten van.&lt;br /&gt;
&lt;br /&gt;
== Az alábbi listából válassza ki, hogy mely állítások HAMISAK. (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A páros programozás agilisan múködő cégnél nem alkalmazható.&lt;br /&gt;
# A szoftver jó minőségét csakis teszteléssel lehet biztosítani.&lt;br /&gt;
# A statikus tesztelés a kódolás előtt és azt követően is alkalmazható.&lt;br /&gt;
&lt;br /&gt;
== Az agilis kockázatmenedzsment lényege, hogy az előre nem tervezett események előfordulását megakadályozzuk, és ezáltal hatásukat nullára csökkentsük. (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Válassza ki, mely állítások igazak az ISO 9001 szabvánnyal kapcsolatban. (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3,4}}&lt;br /&gt;
# Az ISO 9001 szabvány szoftvertermékek minősítésére használható.&lt;br /&gt;
# Az ISO 9001 szabvány nem alkalmazható agilisan dolgozó szoftvercégeknél.&lt;br /&gt;
# Az ISO 9001 alapú szabvány a vevői elégedettség fontosságát kiemelten hangsúlyozza.&lt;br /&gt;
# Az ISO 9001 szabvány a CMMI modellel együtt is alkalmazható.&lt;br /&gt;
&lt;br /&gt;
== Válassza ki, mely állitások igazak az alább felsoroltak közül. (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A minőség még egyazon termék esetében sem állandó&lt;br /&gt;
# A szoftver minősége függ a minőséget értékelő személyétől&lt;br /&gt;
# A szoftver minősége nem függ a szoftver típusától&lt;br /&gt;
&lt;br /&gt;
== Az alábbi esetek közül válassza ki azokat, amelyek arra utalhatnak, hogy egy szoftverfejlesztési cégnél NEM agilis megközelítéssel dolgoznak. (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3,5}}&lt;br /&gt;
# A tesztelők a fejlesztőktől elkülönülve dolgoznak, a maximális függetlenség biztosítása céljából.&lt;br /&gt;
# A projekt elején a követelményeket priorizált user story-k formájában dokumentálják.&lt;br /&gt;
# A megrendelővel, annak elfoglaltsága miatt, havonta egyszer egyeztetnek&lt;br /&gt;
# A projektet a Burndown Chart segítségével tervezik és követik&lt;br /&gt;
# A csapat nevében a csapatvezető vállalja el a feladatokat és jelenti azoknak elvégzését.&lt;br /&gt;
&lt;br /&gt;
== A CMMI alapú audit egyenértékủ az ISO 9001 audittal, mert mindkét esetben folyamatokat vizsgálnak. (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely állítások jelölnek helyes párosítást alapfogalmak között? (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A megbízhatóság a szoftvertermékre vonatozó nemfunkcionális követelmény&lt;br /&gt;
# A Model-View-Controller interaktív rendszerek tervezésekor használható architektúra stílus&lt;br /&gt;
# Az ekvivalencia particionálás fehérdoboz tesztelési technika&lt;br /&gt;
# A V-modell lépcsős érettségi modell&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül válassza ki a HAMIS állításokat. (2022 jun) ==&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A Scrum nem foglalkozik a szoftverfejlesztés műszaki folyamataival, hanem csak a projektirányítási elemekkel.&lt;br /&gt;
# Agilis munkavégzés esetén nem kell tesztelési tervet készíteni, mert az a lényeg, hogy minél előbb készüljenek el a müködő szoftverrel.&lt;br /&gt;
# Agilis projektben előfordulhat, hogy a teszteket hamarabb írják meg, mint a kódot.&lt;br /&gt;
&lt;br /&gt;
== Egy szemműtéteket támogató szoftveres rendszert fejlesztő projekt esetében az idő és költség tényezőkkel nem kell foglalkozni, mert a biztonságos működés és a folyamatos rendelkezésre állás fontosabb mindkettőnél. (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A biztonságkritikus szoftveres rendszereket fejlesztő projekt esetében az idő és költség tényezőkkel nem kell foglalkozni, mert a biztonság fontosabb mindkettőnél. (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Scrum alapján vezetett projektekben becslést nem kell végezni, mert a módszer alapgondolata, hogy a követelményeket nem lehet pontosan meghatározni a projekt elején. (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A listából választva jelölje, hogy egy e-kereskedelmi alkalmazásnak milyen típusú követelménye az alábbi: (2022 jan) ==&lt;br /&gt;
&amp;quot;A kosárba maximum 10 termék helyezhető egyszerre.&amp;quot;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Funkcionális&lt;br /&gt;
# Nemfunkcionális&lt;br /&gt;
# Nem lehet eldönteni&lt;br /&gt;
&lt;br /&gt;
== A listából választva jelölje, hogy egy e-kereskedelmi alkalmazásnak milyen típusú követelménye az alábbi: (2022 jan) ==&lt;br /&gt;
&amp;quot;Bejelentkezés nélkül nem lehet vásárolni / terméket kosárba helyezni az alkalmazásban.&amp;quot;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Funkcionális&lt;br /&gt;
# Nemfunkcionális&lt;br /&gt;
# Nem lehet eldönteni&lt;br /&gt;
&lt;br /&gt;
== A listából választva jelölje, hogy egy e-kereskedelmi alkalmazásnak milyen típusú követelménye az alábbi: (2022 jan) ==&lt;br /&gt;
&amp;quot;A rendszer hétfőről keddre virradó éjjel 2 és 3 óra között leáll, karbantartás céljából.&amp;quot;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Funkcionális&lt;br /&gt;
# Nemfunkcionális&lt;br /&gt;
# Nem lehet eldönteni&lt;br /&gt;
&lt;br /&gt;
== A listából választva jelölje, hogy egy e-kereskedelmi alkalmazásnak milyen típusú követelménye az alábbi: (2022 jan) ==&lt;br /&gt;
&amp;quot;A rendszer alapfunkcióit 2 óra alatt el kell tudnia sajátítani egy 18 év feletti, magyarul beszélő személynek.&amp;quot;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Funkcionális&lt;br /&gt;
# Nemfunkcionális&lt;br /&gt;
# Nem lehet eldönteni&lt;br /&gt;
&lt;br /&gt;
== Az a megközelítés, hogy egy bonyolult szoftvert kisebb, kevésbé komplex részekre bontunk és a fejlesztést minél rövidebb iterációkban végezzük, tulajdonképpen egy kockázatkezelési eljárás, amellyel igyekszünk csökkenteni annak a negatív hatását, hogy a követelményeket nem ismerjük pontosan. (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Milyen típusú munkavégzésre jellemző az állítás: A cégben a CMMI modell harmadik érettségi szintje szerint dolgoznak (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# Agilis megközelítés&lt;br /&gt;
# Nem agilis megközelítés&lt;br /&gt;
# nem lehet egyértelműen eldönteni / mindkét megközelítésben is alkalmazható&lt;br /&gt;
&lt;br /&gt;
== Milyen típusú munkavégzésre jellemző az állítás: A fejlesztők egy csoportban dolgoznak a tesztelőkkel, folyamatos a kommunikáció közöttük (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Agilis megközelítés&lt;br /&gt;
# Nem agilis megközelítés&lt;br /&gt;
# nem lehet egyértelműen eldönteni / mindkét megközelítésben is alkalmazható&lt;br /&gt;
&lt;br /&gt;
== Milyen típusú munkavégzésre jellemző az állítás: A fejlesztés során azonosítják a konfigurációs elemeket (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# Agilis megközelítés&lt;br /&gt;
# Nem agilis megközelítés&lt;br /&gt;
# nem lehet egyértelműen eldönteni / mindkét megközelítésben is alkalmazható&lt;br /&gt;
&lt;br /&gt;
== Milyen típusú munkavégzésre jellemző az állítás: A projekt elején a nemfunkcionális követelmények teljes halmazát részletesen dokumentálják. (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Agilis megközelítés&lt;br /&gt;
# Nem agilis megközelítés&lt;br /&gt;
# nem lehet egyértelműen eldönteni / mindkét megközelítésben is alkalmazható&lt;br /&gt;
&lt;br /&gt;
== Milyen típusú munkavégzésre jellemző az állítás: A projektet a Burndown Chart segítségével tervezik és követik (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Agilis megközelítés&lt;br /&gt;
# Nem agilis megközelítés&lt;br /&gt;
# nem lehet egyértelműen eldönteni / mindkét megközelítésben is alkalmazható&lt;br /&gt;
&lt;br /&gt;
== Egészítse ki a mondatot: A strukturális tesztelés során a teszt eseteket ?VÁLASZ? alapján határozzuk meg. (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# a döntési táblák&lt;br /&gt;
# a kód belső szerkezete&lt;br /&gt;
# a követelményspecifikáció&lt;br /&gt;
&lt;br /&gt;
== A CMMI modellben melyik érettségi szinten jelenik meg a Mérés és elemzés (MA) folyamat? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# 1&lt;br /&gt;
# 2&lt;br /&gt;
# 3&lt;br /&gt;
# 4&lt;br /&gt;
# 5&lt;br /&gt;
&lt;br /&gt;
== A CMMI modellben melyik érettségi szinten jelenik meg a Kockázatmenedzsment folyamat? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# 1&lt;br /&gt;
# 2&lt;br /&gt;
# 3&lt;br /&gt;
# 4&lt;br /&gt;
# 5&lt;br /&gt;
&lt;br /&gt;
== Az alábbi UML2 diagram alapján jellemezze az állítást. (2021 jan) ==&lt;br /&gt;
&lt;br /&gt;
[[Fájl:2021 jan mernokinfo bsc zv szofttech uml 1.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;R Beta&#039;&#039;&#039; függvénye nem kaphat paraméterül &#039;&#039;&#039;F&#039;&#039;&#039; objektumot, mert &#039;&#039;&#039;F&#039;&#039;&#039; függ &#039;&#039;&#039;P&#039;&#039;&#039;-től.&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# mindkét tagmondat igaz és a következtetés is helyes&lt;br /&gt;
# csak a második tagmondat igaz&lt;br /&gt;
# mindkét tagmondat igaz, de a következtetés hamis&lt;br /&gt;
# csak az első tagmondat igaz&lt;br /&gt;
# egyik tagmondat sem igaz&lt;br /&gt;
&lt;br /&gt;
== A Scrum szerint egy projekt minden sprintjében naponta kell meetingeket tartani, elsősorban az előrehaladás megfelelő ellenőrzése és a teljesítést esetleg gátló elemek azonnali azonosítása céljából. (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Az implementáció a kódoláson kívül egyéb elemeket is tartalmaz, például a műszaki dokumentáció elkészítését és a változásmenedzsmentet. (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Az alábbi UML2 diagram alapján jellemezze az állítást. (2021 jan) ==&lt;br /&gt;
&lt;br /&gt;
[[Fájl:2021 jan mernokinfo bsc zv szofttech uml 2.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Iota Kappa&#039;&#039;&#039; metódusa nem adhat vissza &#039;&#039;&#039;Khi&#039;&#039;&#039; osztályú objektumot, mert &#039;&#039;&#039;Iota&#039;&#039;&#039; nem függ a &#039;&#039;&#039;Khi&#039;&#039;&#039; osztálytól.&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# egyik tagmondat sem igaz&lt;br /&gt;
# csak az első tagmondat igaz&lt;br /&gt;
# csak a második tagmondat igaz&lt;br /&gt;
# mindkét tagmondat igaz, de a következtetés hamis&lt;br /&gt;
# mindkét tagmondat igaz és a következtetés is helyes&lt;br /&gt;
&lt;br /&gt;
== Válassza ki az ÖSSZES HELYES választ az alábbi, szoftvertesztelésre vonatkozó állítások közül. (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=3,4}}&lt;br /&gt;
# A „féregirtó paradoxon” egy tesztelési technika, amely szerint a teszt eseteket rendszeresen felül kell vizsgálni és módosítani kell&lt;br /&gt;
# A tesztelés a szoftver minőségének biztosítására szolgáló egyetlen lehetséges módszer, mert csak a tesztelés teszi lehetővé minőségi jellemzők mérését.&lt;br /&gt;
# A dinamikus tesztelés alapulhat követelményspecifikáción és a kód belső szerkezetén is.&lt;br /&gt;
# A határérték tesztelés és az ekvivalencia particionálás funkcionális tesztelési technikák, a követelményspecifikáción alapszanak.&lt;br /&gt;
# A tesztelés pontosan a tesztek futtatását jelenti, de nem azonos a hibakereséssel.&lt;br /&gt;
# A strukturális tesztelés nem feltételezi a kód futtatását.&lt;br /&gt;
&lt;br /&gt;
== Az „elkerülés”, „csökkentés”, „kompenzálás” és „megegyezés” olyan lehetséges intézkedések, amelyekkel a kockázat nullára csökkenthető egy projektben. (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A rövid válaszidő minden szoftver esetében alapkövetelmény. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Az, hogy a szabványos folyamatokat dokumentálták, a CMMI modellben legkorábban a 3-as érettségi szintre jellemző. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A RUP elóírja, hogy a szoftvermérnökök nem fogalmazhatnak meg funkcionális követelményeket egy szoftverre vonatkozóan, mert ez mindig a felhasználók feladata. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A megbízhatósági követelmények nemfunkcionális követelmények. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A CMMI modell folytonos nézetének (a folytonos CMMI-modellnek) előnye, hogy a szervezetek saját szükségleteiknek és követelményeiknek megfelelő folyamatokat tudják kiválasztani és továbbfejleszteni. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Nem a validációs tesztelés célja megmutatni, hogy a szoftver megfelel a követelményeinek, vagyis ez az, amit a vásárló szeretne. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A V modell a vízesés-modellből kialakított iteratív modell. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A CMMI előírja, hogy a termék méréséhez a GQM (Goal-Question-Metric) paradigmát kell használni. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Az alábbi UML2 diagram alapján - a kulcs felhasználásával - jellemezze az állítást! (2020 jan) ==&lt;br /&gt;
[[Fájl:2020 jan info zv szofttech uml.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
Az E foo függvénye meghívhatja a paraméterül kapott D objektum foo függvényét, mert E függ D-től.&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# mindkét tagmondat igaz és a következtetés is helyes (+++)&lt;br /&gt;
# mindkét tagmondat igaz, de a következtetés hamis (++-)&lt;br /&gt;
# csak az első tagmondat igaz (+-)&lt;br /&gt;
# csak a második tagmondat igaz (-+)&lt;br /&gt;
# egyik tagmondat sem igaz (--)&lt;br /&gt;
&lt;br /&gt;
A D quux függvénye nem kaphat paraméterül F osztályú objektumot, mert D nem függ F-től.&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# mindkét tagmondat igaz és a következtetés is helyes (+++)&lt;br /&gt;
# mindkét tagmondat igaz, de a következtetés hamis (++-)&lt;br /&gt;
# csak az első tagmondat igaz (+-)&lt;br /&gt;
# csak a második tagmondat igaz (-+)&lt;br /&gt;
# egyik tagmondat sem igaz (--)&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely állítások IGAZAK a folyamatfejlesztési modellekre? (2023 jún) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2,3}}&lt;br /&gt;
# A SPICE modell egyéni, szoftverfejlesztéshez kapcsolódó folyamatok képességi szintjeit vizsgálja; egy folyamat képességi szintje 0-5 között lehet.&lt;br /&gt;
# Egy szoftverfejlesztő cég alkalmazhat lépcsős és folytonos megközelítést egyszerre; a CMMI modell kifejezetten támogatja ezt.&lt;br /&gt;
# A CMM modell egy szoftverfejlesztő cég egészére határoz meg érettségi szinteket, 1-től 5-ig.&lt;br /&gt;
# Agilisan dolgozó cégnél csak folytonos folyamatfejlesztési modellt lehet alkalmazni, mert a lépcsős megközelítés ellentmond az&lt;br /&gt;
agilitásnak.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely állítások helyesek? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2}}&lt;br /&gt;
# A szoftvertermék minősége minden szoftver esetében állandó&lt;br /&gt;
# A szoftverek modellezésénél alapvetően kétféle nézetet használunk: statikus és dinamikus nézeteket.&lt;br /&gt;
# A döntési tábla használata fehérdoboz tesztelési technika&lt;br /&gt;
# Az ISO 9001 lépcsős érettségi modell&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely állítások jelölnek HELYES párosítást a CMMI modell érettségi szintjei és az adott érettségi szinthez tartozó folyamatok között? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2,3}}&lt;br /&gt;
# A &amp;quot;Termékintegráció&amp;quot; (PI) a CMMI modell 3-as érettségi szintjén (ML3) van.&lt;br /&gt;
# A &amp;quot;Mérés és elemzés&amp;quot; (MA) folyamat 2-es érettségi szinten (ML2) van.&lt;br /&gt;
# A &amp;quot;Szervezeti szintű képzés&amp;quot; (OT) 3-as érettségi szinten (ML3) kötelező folyamat.&lt;br /&gt;
# A &amp;quot;Projekttervezés&amp;quot; (PP) a 3-as érettségi szinten (ML3) jelenik meg.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely állítások HAMISAK a folyamatfejlesztési modellekre? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2,4}}&lt;br /&gt;
# Ha egy cég mesterséges intelligenciát alkalmazó szoftvert fejleszt, kötelező, hogy a design és kódolás folyamatai legalább 3-as&lt;br /&gt;
képességi szinten legyenek.&lt;br /&gt;
# A SPICE modell az ISO 9001 szabvány alapján határozza meg, hogy egy cégnél megfelelő-e a minőségbiztosítás.&lt;br /&gt;
# A CMMI modell szerint egy cég akkor van 3-as érettségi szinten, ha a 2-es és 3-as érettségi szinthez tartozó folyamatokat&lt;br /&gt;
implementálták, és ezek legalább 3-as képességi szinten vannak.&lt;br /&gt;
# A CMM modell egy szoftverfejlesztő cég egészére határoz meg érettségi szinteket, 0-tól 5-ig.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely állítások utalnak arra, hogy a szoftverfejlesztést NEM szekvenciális életciklus modell szerint végzik? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# A követelményeket nagyon részletesen meghatározzák a projekt elején, és az ügyfélnek való átadásig nem módosítják őket.&lt;br /&gt;
# A tesztelés a kódolás után következik.&lt;br /&gt;
# A cégnél a V-modell szerint végzik a szoftverfejlesztést.&lt;br /&gt;
# A fejlesztés több iteráció során valósul meg; a projekt indításakor tudatosan csak a követelmények egy részével foglalkoznak.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mi utalhat arra, hogy egy szoftverfejlesztési projektben agilis megközelítéseket alkalmaznak? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,2}}&lt;br /&gt;
# A szoftverfejlesztés során többször végeznek refaktorizálást / refaktorálást.&lt;br /&gt;
# A projektet Burndown Chart segítségével követik.&lt;br /&gt;
# Csak dinamikus tesztelést alkalmaznak.&lt;br /&gt;
# A cég a SPICE modell szerint implementálta a Projekttervezés folyamatot, amely most 3-as képességi szinten van.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül válassza ki a HAMIS állításokat! (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,4}}&lt;br /&gt;
# A folyamatos rendelkezésre állás minden szoftver esetében alapkövetelmény.&lt;br /&gt;
# Az ISO 25000 szabvány a szoftvertermék minőségével foglalkozik.&lt;br /&gt;
# Agilis projektek esetében a User story-k központi helyet foglalnak el a követelmények megértése és a teszt esetek megfogalmazása&lt;br /&gt;
során.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyek lehetnek egy szoftver nemfunkcionális követelményei? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3}}&lt;br /&gt;
# Nyomtatni .pdf file-ba is lehessen.&lt;br /&gt;
# A rendszernek hétvégén is működnie kell, 0-tól 24 óráig.&lt;br /&gt;
# A rendszernek iOS és Android operációs rendszert használó okostelefonon, valamint Windows és Linux rendszert futtató laptopon is&lt;br /&gt;
működnie kell.&lt;br /&gt;
# A bejelentkező képernyőn meg kell adni a felhasználó mobilszámát is. A mobilszám bármilyen nemzetközi hívószám lehet; a számsor&lt;br /&gt;
elején &amp;quot;+&amp;quot; vagy &amp;quot;00&amp;quot; karakterek is elfogadhatók.&lt;br /&gt;
# A CMMI modellben 2-es érettségi szinten levő szoftverfejlesztő cégnél a tesztelési folyamatokat meghatározták.&lt;br /&gt;
&lt;br /&gt;
== A szoftverfejlesztést támogató folyamatokra mely állítások igazak az alábbiak közül? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3,4}}&lt;br /&gt;
# A szoftverfejlesztés során a mérések többlet erőforrást igényelnek, ami csak nagy cégek esetében térül meg. Ezért 5 fősnél kisebb&lt;br /&gt;
cégek esetében nem is ajánlatos méréseket tervezni és végezni.&lt;br /&gt;
# A szoftver jó minőségének biztosításához nem elegendő a tesztelés; hibaelkerülési és hibamegelőzési technikákat is alkalmazni kell.&lt;br /&gt;
# A konfigurációmenedzsment agilis környezetben is nagyon fontos; ajánlott ezt a folyamatot automatizálni.&lt;br /&gt;
# A kockázatkezelés során az előre nem látott események arányát és hatásukat igyekszünk minimálisra csökkenteni; teljesen nem lehet&lt;br /&gt;
ezeket kiköszöbölni, de felkészülhetünk a kezelésükre.&lt;br /&gt;
&lt;br /&gt;
== Melyik állítások HAMISAK az alábbiak közül? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1}}&lt;br /&gt;
# Az UML diagramok alkalmazása V-modell szerint dolgozó projektek esetében a tervezési fázisban kötelező.&lt;br /&gt;
# A tervezés (design) során elkészítetjük a szoftver részletes tervét (Software detailed design). Ez a komponenseket olyan részletességgel&lt;br /&gt;
írja le, amely lehetővé teszi, hogy implementálni lehessen őket.&lt;br /&gt;
# A teljes tervezési folyamatot tulajdonképpen tekinthetjük döntések sorozatának is, amikor mérlegelni kell a különböző minőségi&lt;br /&gt;
attribútumokat és vevői igényeket, egyensúlyra törekedve.&lt;br /&gt;
# Egy architektúra stílus a szoftver szerkezetének magas szintű leírását adja&lt;br /&gt;
&lt;br /&gt;
== A tesztelési technikákra vonatkozó mely állítások igazak az alábbiak közül? (2024 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=2,3,4}}&lt;br /&gt;
# Statikus tesztelést a forráskódon nem lehet alkalmazni; a kódot csak futtatással lehet ellenőrizni.&lt;br /&gt;
# A jó tesztelési módszerben megfelelő arányban használják a statikus és dinamikus, az utóbbin belül pedig a fehérdoboz és&lt;br /&gt;
feketedoboz technikákat.&lt;br /&gt;
# A fehérdoboz tesztelés a gráfelmélet elemeit használja.&lt;br /&gt;
# Feketedoboz tesztelésben a teszt eseteket a követelmények alapján hozzuk létre. A követelmények lehetnek funkcionálisak vagy&lt;br /&gt;
nemfunkcionálisak.&lt;/div&gt;</summary>
		<author><name>Lovász Botond</name></author>
	</entry>
</feed>