<?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=Varga+M%C3%A1rk+Vince</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=Varga+M%C3%A1rk+Vince"/>
	<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/Varga_M%C3%A1rk_Vince"/>
	<updated>2026-05-02T21:51:07Z</updated>
	<subtitle>Felhasználó közreműködései</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:2019_jun_info_zv_algo_graf.jpg&amp;diff=205090</id>
		<title>Fájl:2019 jun info zv algo graf.jpg</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:2019_jun_info_zv_algo_graf.jpg&amp;diff=205090"/>
		<updated>2023-12-14T10:48:54Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;2019 júniusi mérnökinfó záróvizsga algoritmusok rész gráf&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Sznik%C3%A1k&amp;diff=205082</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=205082"/>
		<updated>2023-12-12T16:28:43Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: /* 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) */ typo&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;
== 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;
== 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=2,4}}&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;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Sznik%C3%A1k&amp;diff=205081</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=205081"/>
		<updated>2023-12-12T16:28:02Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: /* 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) */ typo&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;
== 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;
== 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=2,4}}&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;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&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;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Adatb%C3%A1zis&amp;diff=205080</id>
		<title>Záróvizsga kvíz - Adatbázis</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Adatb%C3%A1zis&amp;diff=205080"/>
		<updated>2023-12-12T16:20:31Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: záróvizsga behivatkozása, sorrend&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Kvízoldal&lt;br /&gt;
|cím=ZVAdatb|pontozás=-&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Egy adatbázis-kezelő rendszer szigorú tranzakciós protokollt és egyszerű zármodellt (tranzakciós modellt) használ. Az alábbi állítások közül melyik nem helyes? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A zárkezelés kétfázisú (2PL) lesz.&lt;br /&gt;
# Nem fordulhat elő lavina.&lt;br /&gt;
# Naplózás esetén nem lesz szükség undo-ra a helyreállításhoz.&lt;br /&gt;
# A zárak a commit (kész) pont után felszabadíthatók&lt;br /&gt;
&lt;br /&gt;
== Melyik NEM fejezhető ki SQL lekérdezések segítségével a halmazalgebra alábbi műveletei közül? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# metszetképzés&lt;br /&gt;
# Descartes-szorzat&lt;br /&gt;
# komplementer-képzés&lt;br /&gt;
# különbségképzés&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, hogy a keresés költségének nagyságrendjére vonatkozó alábbi 1), 2), 3), 4), 5), 6) állítások közül melyek igazak, ha az állományt B*-fában tároljuk! A költséget a blokkműveletek számával mérjük. (2023 jun) ==&lt;br /&gt;
# A keresés költsége lineárisan nő a fa magasságával&lt;br /&gt;
# A keresés költsége logaritmikusan nő a fa magasságával&lt;br /&gt;
# A keresés költsége lineárisan aránylik az elágazási tényezőhöz&lt;br /&gt;
# A keresés költsége logaritmikusan aránylik az elágazási tényezőhöz&lt;br /&gt;
# Az elemek beszúrási sorrendjének nincs hatása a keresés költségére&lt;br /&gt;
# Az elemek beszúrási sorrendjének van hatása a keresés költségére&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# 1), 4), 5)&lt;br /&gt;
# 2), 3), 6)&lt;br /&gt;
# 2), 4), 6)&lt;br /&gt;
# 1), 4), 6)&lt;br /&gt;
# 1), 3), 6)&lt;br /&gt;
# 2), 4), 5)&lt;br /&gt;
&lt;br /&gt;
== Az r és s relációk természetes illesztését egymásba ágyazott ciklikus illesztéssel (nested loop join) végezzük. A két állomány rendre b és b számú blokkból áll, illetve n és n rekordot tartalmaz. (2023 jun) ==&lt;br /&gt;
Az alábbi lehetőségek közül melyik lehet a join blokkműveletek számában mért költsége a legrosszabb esetben, ha a relációknak csak egy- egy blokkja fér a memóriába?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=6}}&lt;br /&gt;
# &amp;lt;math&amp;gt;n_r + n_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_s + b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r + b_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r + n_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;n_r * n_s&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== A következő ábrák közül melyik nem szerepelhet ER-diagram részeként? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid1.png|keretnélküli]]&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid 2.png|keretnélküli]]&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid 3.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
== Adott egy séma és az attribútumai között értelmezett funkcionális függések halmaza. Tudjuk, hogy a nemtriviális függések bal oldalán található attribútum(halmaz)on a rekordok értéke egyedi. Ekkor (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a sémára illeszkedő egyetlen adathalmazban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# lehet olyan, a sémára illeszkedő adathalmaz, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# van olyan, a sémára illeszkedő adathalmaz, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedő egyetlen adathalmazban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
&lt;br /&gt;
== A válaszlehetőségek közül melyik a csatolt ER-diagram legpontosabb relációs leképezése? (2023 jun) ==&lt;br /&gt;
&lt;br /&gt;
[[Fájl:2023 június mérnökinformatikus záróvizsga Adatbázisok ER sémadekompozíció 1.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# A(a, b, c), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol A kulcsa a és b együtt, és A-ban b idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt, valamint K-ban a és b is idegen kulcs&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b, c, d), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt és K mind a négy attribútuma egyenként idegen kulcs is.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), B(a, b, d), ahol B kulcsa a és b együtt, és B-ben a idegen kulcs.&lt;br /&gt;
&lt;br /&gt;
== Időbélyeges tranzakciókezelés esetén melyik állítás NEM helyes? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy adott ütemezésnek mindig van soros ekvivalense (a tranzakciók időbélyegei szerinti növekvő sorrendű).&lt;br /&gt;
# Szigorú protokoll megvalósításához az időbélyegek mellett zárak is szükségesek.&lt;br /&gt;
# Egy adott ütemezésnek akár több soros ekvivalense is lehet.&lt;br /&gt;
# Egy adott ütemezésnek lehet soros ekvivalense.&lt;br /&gt;
&lt;br /&gt;
== Az SQL lekérdezésekben a &amp;quot;SELECT DISTINCT&amp;quot; az ismétlődéseket szűri az eredményhalmazból. A relációs algebrában hogyan valósítható meg ez a művelet? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Nincs rá szükség, mert a relációs algebra halmazokkal dolgozik, ahol nem szerepelnek ismétlődések.&lt;br /&gt;
# Az unió vagy a metszet műveleteket kell használni, ha követelmény az ismétlődések szűrése.&lt;br /&gt;
# A természetes illesztés alkalmas erre, hiszen az az azonos nevű attribútumokat csak egyszer adja vissza.&lt;br /&gt;
&lt;br /&gt;
== Egy adatállományt vödrös hash szervezéssel tárolunk. A következőket tudjuk az állományról: (2023 jun) ==&lt;br /&gt;
# Egy rekord egy blokknyi helyet foglal el.&lt;br /&gt;
# Az alkalmazott hash függvény: &#039;k mod 5&#039;, ahol a &#039;k&#039; a kulcsot jelenti.&lt;br /&gt;
# A vödrös hash kezdetben üres.&lt;br /&gt;
# A hashtábla elfér az operatív tárban.&lt;br /&gt;
A beszúrt rekordok kulcsai a következők: 5, 7, 3, 9, 10, 1, 4, 7, 19.&lt;br /&gt;
Hány blokkműveletet fog a rendszer végezni, ha azon rekordot keressük, amelynek kulcsa 24?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 2&lt;br /&gt;
# 1&lt;br /&gt;
# 0&lt;br /&gt;
# 3&lt;br /&gt;
&lt;br /&gt;
== Melyik állítás igaz? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legalacsonyabb normál formája 1NF, ha nincs másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legmagasabb normál formája 1NF, ha van másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legalacsonyabb normál formája 3NF, ha van másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legmagasabb normál formája 3NF, ha nincs másodlagos attribútuma.&lt;br /&gt;
&lt;br /&gt;
== Egy állomány tárolása során két merevlemez közül lehet választani: (2023 jan) ==&lt;br /&gt;
* Az &amp;quot;A&amp;quot; lemeznél a blokkméret 4000 byte, egy blokkművelet ideje 10 ms&lt;br /&gt;
* Az &amp;quot;B&amp;quot; lemeznél a blokkméret 12000 byte, egy blokkművelet ideje 20 ms. A tárolni kívánt rekordok mérete lehetővé teszi, hogy a blokkokat mindkét esetben veszteség nélkül használjuk.&lt;br /&gt;
Melyik lemezt válasszuk, ha csak lineáris keresést kell támogatni?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A &amp;quot;B&amp;quot;-t kell választani, mert mindig jobb a nagyobb blokkméret, mint a kisebb.&lt;br /&gt;
# Az &amp;quot;A&amp;quot;-t kell választani, mert ott gyorsabb az egyes blokkok elérése.&lt;br /&gt;
# Az &amp;quot;A&amp;quot;-t kell választani, mert ugyan 3-szor több blokkot kell használni, de ezt ellensúlyozza a hozzáférési sebesség felezése.&lt;br /&gt;
# A &amp;quot;B&amp;quot;-t kell választani, mert harmadannyi blokkot kell használni, ami jobban gyorsítja a keresést, mint az egyes blokkok hozzáférési sebességének duplázódása.&lt;br /&gt;
&lt;br /&gt;
== Hány eleme lehet C-nek, ha A 10, B pedig 50 elemű? (2023 jan) ==&lt;br /&gt;
&lt;br /&gt;
[[Fájl:Info zv 2023 jan adatb er 1.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Legalább 0, legfeljebb 500&lt;br /&gt;
# Legalább 0, legfeljebb 50&lt;br /&gt;
# Legalább 10, legfeljebb 50.&lt;br /&gt;
# Legalább 0, legfeljebb 10&lt;br /&gt;
&lt;br /&gt;
== Adatbázisunkban tárolnánk, hogy légitársaságunk egyes repülőgépeire melyik pilótánknak van típusjogosítása, illetve hogy az egyes gépek melyik járatokon üzemelnek jelenleg. Melyik ER-modell felel meg a leírtaknak? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, egy bináris kapcsolattípus a Pilóta és a Repülőgép között és egy bináris kapcsolattípus a Repülőgép és a Járat között.&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, köztük egy ternáris kapcsolattípus.&lt;br /&gt;
# Egy Repülőgép gyenge egyedhalmaz, amelyet a Pilóta és a Járat egyedhalmazok determinálnak.&lt;br /&gt;
# Egy Repülőgép kapcsolattípus, amely a Pilóta egyedhalmazt és a Járat egyedhalmazt köti össze.&lt;br /&gt;
&lt;br /&gt;
== Mi nem jellemző a fa protokollra? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Zár bármikor, bárhonnan eltávolítható.&lt;br /&gt;
# Zár - az elsőt kivéve - csak akkor helyezhető el egy csomóponton, ha a szülőcsomóponton is tart fenn zárat a tranzakció.&lt;br /&gt;
# A tranzakciók tehetik az első zárjukat a fa gyökerére is.&lt;br /&gt;
# A fa protokoll szerinti tranzakciók kétfázisúak.&lt;br /&gt;
&lt;br /&gt;
== A relációs lekérdezések végrehajtásának heurisztikus optimalizálása során az alábbiak közül melyik NEM történik (Süllyesztés alatt azt értjük, amikor a relációalgebrai fa átalakítása során az adott művelet a gyökércsomóponttól a levélcsomópontok irányába mozdul el.) (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Descartes-szorzások süllyesztése&lt;br /&gt;
# Szelekciók süllyesztése.&lt;br /&gt;
# Levélcsomópontok átrendezése&lt;br /&gt;
# Projekciók süllyesztése.&lt;br /&gt;
&lt;br /&gt;
== Az SQL SELECT utasítás melyik része nem fejezhető ki relációs algebrával az alábbiak közül? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# GROUP BY&lt;br /&gt;
# FROM ... NATURAL JOIN ...&lt;br /&gt;
# WHERE&lt;br /&gt;
# SELECT DISTINCT&lt;br /&gt;
&lt;br /&gt;
== Egy adatállomány rekordjaira ritka indexet építettek: (2023 jan) ==&lt;br /&gt;
* Az adatrekordok és az indexrekordok egyaránt teljesen kitöltik a blokkokat&lt;br /&gt;
* Egy adatrekord 100 Byte&lt;br /&gt;
* Összesen 100000 adatrekordot tárolunk&lt;br /&gt;
* Az adatállomány blocking faktora 100&lt;br /&gt;
* Az indexállomány blocking faktora 400&lt;br /&gt;
* A mutató mérete 10 byte&lt;br /&gt;
* Egy blokk elérési ideje 15 ms&lt;br /&gt;
&lt;br /&gt;
Mekkora a kulcs mérete?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# 5 Byte&lt;br /&gt;
# 10 Byte&lt;br /&gt;
# 15 Byte&lt;br /&gt;
# 20 Byte&lt;br /&gt;
&lt;br /&gt;
== Milyen hiba ellen nem véd a szigorú 2PL (kétfázisú zárolás) protokoll? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Abort az operatív tár sérülése miatt.&lt;br /&gt;
# Abort patt miatt.&lt;br /&gt;
# Abort nem-sorosíthatóság miatt.&lt;br /&gt;
# Felhasználói abort.&lt;br /&gt;
&lt;br /&gt;
== Mit jelent a relációs adatbázis katalógusinformációi között szereplő kiválasztási kardinalitás (selection cardinality) az SC(A, r) formában? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# Azon blokkok átlagos száma, amelyeket be kell olvasni az r relációból a keresés során az A attribútumra felírt egyenlőségi feltétel alapú szelekció esetén.&lt;br /&gt;
# Az r reláció A attribútumára időegység alatt végrehajtott kiválasztás műveletek (szelekciók) átlagos száma.&lt;br /&gt;
# Azon rekordok átlagos száma az r relációban, amelyek kielégítenek egy egyenlőségi feltételt az A attribútumra, feltéve, hogy legalább egy rekord kielégíti ezt az egyenlőségi feltételt.&lt;br /&gt;
# Az r reláció A attribútumában található különböző értékek száma.&lt;br /&gt;
&lt;br /&gt;
== Legfeljebb mekkora lehet két reláció természetes illesztésének rekordszáma, ha az egyik rekordszáma n, a másik rekordszáma m? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# max (n, m)&lt;br /&gt;
# n * m&lt;br /&gt;
# n + m&lt;br /&gt;
# min(n, m)&lt;br /&gt;
&lt;br /&gt;
== Melyik állítás igaz? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Egy relációs sémának a legmagasabb normál formája 2NF, ha nincs másodlagos attribútuma&lt;br /&gt;
# Egy relációs sémának a legmagasabb normál formája 3NF, ha minden attribútuma elsődleges&lt;br /&gt;
# Egy relációs sémának lehet minden attribútuma másodlagos.&lt;br /&gt;
# Egy relációs sémának a legalacsonyabb normál formája 3NF, ha nincs másodlagos attribútuma&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyik NEM szerepel a relációkra vonatkozó katalógus-információk között, amely a végrehajtási terv készítését támogatja? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# A reláció rekordjaiban a mezők száma.&lt;br /&gt;
# A reláció egy rekordjának mérete.&lt;br /&gt;
# A reláció rekordjainak száma.&lt;br /&gt;
# A relációban levő rekordokat tartalmazó blokkok száma.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyiket nem befolyásolja a keresési kulcs mérete? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A nested loop join algoritmus lépésszáma&lt;br /&gt;
# Keresés költsége heap szervezés esetén&lt;br /&gt;
# &amp;lt;math&amp;gt;B^{*}&amp;lt;/math&amp;gt;-fa magassága&lt;br /&gt;
# Hash tábla mérete&lt;br /&gt;
&lt;br /&gt;
== Az SQL SELECT utasítás melyik része felel meg leginkább a relációalgebrai projekció (vetítés) műveletnek? (2022 jun) ==&lt;br /&gt;
A válaszadás során tételezzük fel, hogy a lekérdezés egyetlen táblából dolgozik és a tábla egyetlen kulcsa sem jelenik meg az eredményben!&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# FROM&lt;br /&gt;
# SELECT DISTINCT&lt;br /&gt;
# ORDER BY&lt;br /&gt;
# WHERE&lt;br /&gt;
# SELECT&lt;br /&gt;
&lt;br /&gt;
== Tudjuk, hogy az R relációs sémán fennálló összes nemtriviális függés esetén a függés bal oldalán található attribútum(halmaz) értéke egyedi minden, a sémára illeszkedő relációban. Ekkor (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# egyik sem helyes a többi állítás közül.&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedổ egyetlen relációban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
# van olyan, a sémára illeszkedő reláció, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
&lt;br /&gt;
== Adott az (R, F) séma, ahol R=ABCGWXYZ, F=(XY → BGYZ, AY → CG, C → W, B → G) Melyik függés vezethető le az adott függéshalmazból? (2021 jan, 2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# ABGY → GX&lt;br /&gt;
# ACYZ → W&lt;br /&gt;
# AB → XG&lt;br /&gt;
# BXY → GXW&lt;br /&gt;
&lt;br /&gt;
== Egy B*-fáról a következőket tudjuk: (2022 jun) ==&lt;br /&gt;
* Az adatokat növekvő sorrendben tároljuk&lt;br /&gt;
* Az adatblokkok száma 402&lt;br /&gt;
* Az adatrekordok mérete 200 byte&lt;br /&gt;
* Egy blokk mérete nettó 2000 byte&lt;br /&gt;
* A kulcsok mérete 50 byte&lt;br /&gt;
* Egy mutató 50 byte&lt;br /&gt;
* A kulcsra vonatkozó szelekció kardinalitása (SC) 5 .&lt;br /&gt;
Ideális esetben legkevesebb hány blokkot kell kiolvasnunk egy kulcsértékre vonatkozó egyenlőség alapú keresésnél?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 4&lt;br /&gt;
# 9&lt;br /&gt;
# 2&lt;br /&gt;
# 3&lt;br /&gt;
&lt;br /&gt;
== Az üzemanyaggal történő visszaélések visszaszorítására egy cég úgy dönt, hogy kimutatásokat fog készíteni arról, hogy a cég mely járművébe melyik dolgozó hol és mennyit tankol. A dolgozók minden műszak elején teli tankkal veszik át a jármúveket, és a múszak végén megtankolva kell azokat leadniuk a telephelyen, így a tankolásmennyiségből kikövetkeztethető, hogy ki mennyi üzemanyagot használt, és hogy az illető az adott autóba melyik benzinkúton tankolt. (2022 jun) ==&lt;br /&gt;
[[Fájl:2022 jun info zv adatb ER 1.png|keretnélküli|700px]]&lt;br /&gt;
&lt;br /&gt;
Milyen módosítást kell tenni a fenti ER-diagramon, amely után a modellből készült adatbázis alkalmas lesz a fent említett riportokhoz szükséges adatok tárolásához?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Törölni a Feltölt kapcsolattípust&lt;br /&gt;
# Törölni a Feltölt, Telik és Látogat kapcsolattípusokat&lt;br /&gt;
# Törölni a Látogat kapcsolattípust&lt;br /&gt;
# Törölni a Telik kapcsolattípust&lt;br /&gt;
# Törölni a Tankol kapcsolattípust&lt;br /&gt;
&lt;br /&gt;
== A válaszlehetőségek közül melyik a csatolt ER-diagram legpontosabb relációs leképezése? (2022 jun) ==&lt;br /&gt;
[[Fájl:2022 jun info zv adatb er dekomp.png|keretnélküli]]&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), B(a, b, d), ahol B kulcsa a és b együtt, és B-ben a idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt, valamint K-ban a és b is idegen kulcs&lt;br /&gt;
# A(a, b, c), B(b, d), ahol A kulcsa a és b együtt, és A-ban b idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b, c, d), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt és K mind a négy attribútuma egyenként idegen kulcs is.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, hogy az alábbiak közül mely állítás(ok) igazak a keresési költségekkel kapcsolatban, ha az adatokat B*-fában tároljuk! A költséget a blokkműveletek számával mérjük. (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,4}}&lt;br /&gt;
# A költség logaritmikusan arányos az adatrekordok számával.&lt;br /&gt;
# A költség lineárisan arányos az index struktúra elágazási tényezőjével.&lt;br /&gt;
# A költség lienárisan arányos az index blokkok számával.&lt;br /&gt;
# A költség lineárisan arányos a fa magasságával.&lt;br /&gt;
&lt;br /&gt;
== Adott két tábla, T1 (oszlopai: A és B), és T2 (oszlopai: B és C). Válassza ki az alábbi lekérdezés eredményére vonatkozó állítások közül azt, amelyik biztosan igaz! (2022 jan) ==&lt;br /&gt;
Feltételezzük, hogy a lekérdezés szintaktikailag helyes és a táblák oszlopait is helyesen hivatkozza, a táblákban nem szerepel NULL érték, és&lt;br /&gt;
az eredmény oszlopait R1, R2, R3 és R4 néven nevezzük.&lt;br /&gt;
&amp;lt;pre&amp;gt;SELECT T1.A AS R1, T1.B AS R2, T2.B AS R3, T2.C AS R4&lt;br /&gt;
FROM T1 LEFT JOIN T2 ON (T1.B = T2.B) ;&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Az eredményben T1 minden rekordja szerepel.&lt;br /&gt;
# Az eredményben T2 minden rekordja szerepel.&lt;br /&gt;
# Az eredmény minden rekordjában megegyezik R2 és R3 mezők értéke.&lt;br /&gt;
# R4 mezőben nem fordul elő NULL érték.&lt;br /&gt;
&lt;br /&gt;
== Melyik az egyetlen helyes válasz? Tudjuk, hogy az R relációs sémára illeszkedő minden relációban az összes nemtriviális függés esetén a függés bal oldalán található attribútum(halmaz) értéke egyedi. Ekkor... (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
# van olyan, a sémára illeszkedő reláció, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# egyik sem helyes a többi állítás közül.&lt;br /&gt;
&lt;br /&gt;
== Adottak az A és B egyedhalmazok, valamint a köztük definiált bináris kapcsolathalmaz K, melynek kardinalitása több-több. Tegyük fel, hogy A-ban 10, B-ben pedig 20 egyed van. Legfeljebb hány kapcsolat lehet K-ban? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# 30&lt;br /&gt;
# 200&lt;br /&gt;
# 10&lt;br /&gt;
# 20&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyiket NEM befolyásolja a keresési kulcs mérete? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A nested loop join algoritmus lépésszáma&lt;br /&gt;
# Vödrös hash tábla mérete&lt;br /&gt;
# Keresés költsége heap szervezés esetén&lt;br /&gt;
# B*-fa magassága&lt;br /&gt;
&lt;br /&gt;
== Válassza ki az egyetlen igaz állítást! (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Egy ER-modell determináló kapcsolathalmazának kardinalitása lehet több-több.&lt;br /&gt;
# Egy attribútumként jelzett idegen kulcs több egyedhalmazhoz is tartozhat az ER-modellben.&lt;br /&gt;
# Egy ER-modell gyenge egyedhalmazához mindig fel kell venni legalább egy idegen kulcsot, mint attribútumot az ER modellben.&lt;br /&gt;
# Egy ER-modell gyenge egyedhalmazához mindig fel kell venni legalább egy determináló kapcsolathalmazt.&lt;br /&gt;
&lt;br /&gt;
== Egy gépjárműnyilvántartásban két tábla tárolja az autók és tulajdonosaik adatait, melyek sémái a következők: (2022 jan) ==&lt;br /&gt;
Tulajdonos(személyi_szám, név, születési_dátum, anyja_neve), kulcs: személyi szám&lt;br /&gt;
Gépjármű(rendszám, típus, márka, szín, gyártás_éve, tulajdonos_személyi_száma), kulcs: rendszám&lt;br /&gt;
&lt;br /&gt;
A táblák n db személy és m db gépjármű adatait tárolják, és egy személynek átlagosan 2 db gépjárműve van.&lt;br /&gt;
&lt;br /&gt;
Az alábbi SQL lekérdezés eredményrekordjainak számát melyik kifejezés becsüli legjobban?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;SELECT személyi_szám, név, rendszám, típus, márka&lt;br /&gt;
FROM tulajdonos, gépjármű&lt;br /&gt;
WHERE tulajdonos.személyi_szám = gépjármű.tulajdonos_személyi_száma ;&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# n + m&lt;br /&gt;
# 2 * m&lt;br /&gt;
# n&lt;br /&gt;
# m&lt;br /&gt;
# n * m&lt;br /&gt;
&lt;br /&gt;
== Legyen r(R) egy adott reláció, melynek sémája R(A,B,C,D). Tudjuk, hogy t, t* r(R) t[A]=t*[A] esetén t[B]=t*[B]. Ekkor: (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# az A-tól a B funkcionálisan függ.&lt;br /&gt;
# a fentiek közül egyik válasz sem helyes.&lt;br /&gt;
# az A-tól a B funkcionálisan függhet.&lt;br /&gt;
# az A a B-től funkcionálisan függ.&lt;br /&gt;
&lt;br /&gt;
== Adott az R(A) séma és a rá illeszkedő r1 reláció. Amennyiben r2 = r1, mit fejez ki a képen látható relációalgebrai kifejezés? &amp;lt;math&amp;gt;r 1 \backslash \pi_{r 1 . A} \sigma_{r 1 . A \le r 2 . A}(r 1 \cdot x \cdot r 2)&amp;lt;/math&amp;gt;. (2021 jan)==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Üres reláció.&lt;br /&gt;
# r1 legkisebb elemét.&lt;br /&gt;
# r1 legnagyobb és legkisebb elemének halmazát.&lt;br /&gt;
# r1 legnagyobb elemét.&lt;br /&gt;
&lt;br /&gt;
== Relációnk rekordjaira egy előre definiált kulcs alapján sűrú indexet, majd arra ritka indexet építünk úgy, hogy az indexeknél a lehetőlegkevesebb blokkot használjuk fel. A relációról a következőket tudjuk: (2021 jan) ==&lt;br /&gt;
* 400.000 rekord található benne&lt;br /&gt;
* Egy rekord mérete 250 byte&lt;br /&gt;
* Egy blokk (a header nélkül) 4000 byte&lt;br /&gt;
* Egy mutató 10 byte&lt;br /&gt;
* Egy kulcs mérete 10 byte&lt;br /&gt;
Hány blokkot foglalnak el az index állományok (sưrú+ritka)?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 135&lt;br /&gt;
# 210&lt;br /&gt;
# 27010&lt;br /&gt;
# 2010&lt;br /&gt;
&lt;br /&gt;
== Az r és s relációk természetes illesztését szeretnénk kiszámítani. Tegyük fel, hogy a relációk egyike sem fér el a memóriában, és amelyikalgoritmusnál értelmezett, ott az r van a külső ciklusban, az indexelt keresés pedig átlagosan gyorsabb, mint a lineáris keresés. (2021 jan) ==&lt;br /&gt;
Álítsa növekvő sorrendbe a következő join algoritmusok blokkhozzáférések számában mért átlagos költségét!&lt;br /&gt;
* (A): index alapú egymásba ágyazott ciklikus illesztés (indexelt nested loop join)&lt;br /&gt;
* (B): egymásba ágyazott ciklikus illesztés (nested loop join)&lt;br /&gt;
* (C): összefésülés alapú illesztés (sorted merge join)&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# (A), (C), (B)&lt;br /&gt;
# (C), (B), (A)&lt;br /&gt;
# (B), (A), (C)&lt;br /&gt;
# (C), (A), (B)&lt;br /&gt;
# (B), (C), (A)&lt;br /&gt;
# (A), (B), (C)&lt;br /&gt;
&lt;br /&gt;
== Adott egy G→H funkcionális függés. Ekkor (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# G függ H-tól&lt;br /&gt;
# G értéke meghatározza H értékét&lt;br /&gt;
# H ismeretében G meghatározható&lt;br /&gt;
# G ismeretében H meghatározható&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyik nem része egy relációs lekérdezés végrehajtási tervének? (2021 jan) ==&lt;br /&gt;
Tételezze fel, hogy relációalgebrai-alapú végrehajtási terv készül. Ennek megfelelően a &amp;quot;műveletek&amp;quot; szó mindig &amp;quot;relációalgebrai műveletek&amp;quot; értelemben szerepel a válaszokban.&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Műveletek.&lt;br /&gt;
# A múveletek közötti workflow-szervezés.&lt;br /&gt;
# A müveletek egymásra épülése (sorrendje).&lt;br /&gt;
# Az adatok eloszlásáról szóló statisztikák.&lt;br /&gt;
# Az egyes múveletek végrehajásához kiválasztott algoritmusok.&lt;br /&gt;
&lt;br /&gt;
== Egy reláció rekordjait elsődleges indexként múködő B*-fán keresztül érjük el. A tárolás módjáról a következőket tudjuk: (2021 jan) ==&lt;br /&gt;
* A fa magassága (HTi): 7&lt;br /&gt;
* A fa elágazási tényezője: 10&lt;br /&gt;
* Blokkok nettó mérete: 4000 byte&lt;br /&gt;
* Adatrekordok mérete: 400 byte&lt;br /&gt;
* A fa építéséhez használt attribútumra vonatkozó, egyenlőségi feltétel alapú kiválasztáshoz tartozó kardinalitási érték (selection cardinality, SC): 11&lt;br /&gt;
Várhatóan hány blokkművelet szükséges egy egyenlőségi keresés során?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 7&lt;br /&gt;
# 10&lt;br /&gt;
# 18&lt;br /&gt;
# 9&lt;br /&gt;
&lt;br /&gt;
== Melyik állítás igaz? (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# Egy relációs sémának a legmagasabb normál formája $3 \mathrm{NF}$, ha minden attribútuma elsődleges&lt;br /&gt;
# Egy relációs sémának lehet minden attribútuma másodlagos.&lt;br /&gt;
# Egy relációs sémának a legalacsonyabb normál formája 3NF, ha nincs másodlagos attribútuma&lt;br /&gt;
# Egy relációs sémának a legmagasabb normál formája 2NF, ha nincs másodlagos attribútuma&lt;br /&gt;
&lt;br /&gt;
== Adatbázisunkban tárolnánk, hogy légitársaságunk egyes repülőgépeire melyik pilótánknak van típusjogosítása, illetve hogy az egyes gépek melyik járatokon üzemelnek. Melyik ER-modell nyújt megoldást a problémára? (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Egy Repülőgép kapcsolattípus, amely a Pilóta egyedhalmazt és a Járat egyedhalmazt köti össze&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, egy bináris kapcsolattípus a Pilóta és a Repülőgép között és egy bináris kapcsolattípus a Repülögép és a Járat között&lt;br /&gt;
# Egy Repülőgép gyenge egyedhalmaz, amelyet a Pilóta és a Járat egyedhalmazok determinálnak&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, köztük egy ternáris kapcsolattípus&lt;br /&gt;
&lt;br /&gt;
== A felsoroltak közül melyik NEM szerepel egy relációs lekérdezés végrehajtási tervében? Feltételezzük, hogy relációalgebrai reprezentációval dolgozik a vizsgált adatbázis-kezelő rendszer. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A végrehajtás során használt workflow-stratégia (materializáció vagy pipelining).&lt;br /&gt;
# A használt relációalgebrai műveletek és azok hierarchiája a lekérdezésben.&lt;br /&gt;
# A végrehajtás során használandó indexek neve.&lt;br /&gt;
# Az eredmény várható rekordszáma.&lt;br /&gt;
# A használt relációalgebrai műveletek végrehajtásához rendelt algoritmusok.&lt;br /&gt;
# Az input relációk.&lt;br /&gt;
&lt;br /&gt;
== Egy adatbáziskezelő-rendszer feladatai közé tartozik - többek között: (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# integritás védelme, adatok értelmezhetőségének biztosítása, adatbiztonság&lt;br /&gt;
# integritás védelme, szinkronizálás, adatbiztonság&lt;br /&gt;
# adatok értelmezhetőségének biztosítása, szinkronizálás, adatbiztonság&lt;br /&gt;
# integritás védelme, szinkronizálás, adatok értelmezhetőségének biztosítása&lt;br /&gt;
&lt;br /&gt;
== 1000 bájtos blokkméret mellett mekkora méretű lesz egy 500 vödörből álló hash-állomány vödörkatalógusa, ha egy mutató 5, egy kulcs pedig 10 bájtos? (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 2500 Byte&lt;br /&gt;
# 5000 Byte&lt;br /&gt;
# 10000 Byte&lt;br /&gt;
# 7500 Byte&lt;br /&gt;
&lt;br /&gt;
== Egy relációs sémának... (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
# ...a legmagasabb normálformája 3NF, ha minden attribútuma elsődleges.&lt;br /&gt;
# ...a legmagasabb normálformája 2NF, ha nincs másodlagos attribútum.&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
&lt;br /&gt;
== A sorted merge join algoritmus a join attribútumok szerint rendezett r és s relációk között &amp;lt;válasz&amp;gt; ahol br és bs a relációk blokkjainak számát jelöli... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# legfeljebb br + bs blokkművelettel megvalósítható, ...&lt;br /&gt;
# legalább br + bs blokkművelettel valósítható meg, ...&lt;br /&gt;
# pontosan br + bs blokkművelettel valósítható meg, ...&lt;br /&gt;
# egyik sem.&lt;br /&gt;
&lt;br /&gt;
== Válassza ki a csak tranzakcióhibákat tartalmazó lehetőséget! (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# abort nem-sorosíthatóság miatt, nullával osztás, fantom olvasás, elveszett módosítás&lt;br /&gt;
# abort patt miatt, abort nem-sorosíthatóság miatt, nullával osztás, felhasználói abort&lt;br /&gt;
# abort patt miatt, abort nem sorosíthatóság miatt, piszkos adat olvasása, nem megismételhetó olvasás&lt;br /&gt;
# piszkos adat olvasása, nem megismételhető olvasás, fantom olvasás, elveszett módosítás&lt;br /&gt;
&lt;br /&gt;
== P: Az imperatív lekérdezőnyelven megfogalmazott relációs lekérdezések több lehetséges végrehajtási terv mentén értékelhetők ki, ... Q: ...ezért a költség alapú optimalizálás célja: minimalizálni a join műveletek költségét. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Adott egy R séma és a sémára illeszkedő r(R) reláció. P: Mivel az R attribútumai között fennálló érdemi funkcionális függések halmaza mindig tartalmazza az eseti funkcionális függéseket is, ... Q: ...ezért az érdemi funkcionális függőségek segítségével teljeskörűen megállapíthatjuk, hogy melyik attribútumokban fordulhat elő redundáns adattárolás funkcionális függés következtében. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor: P: A tranzakciók a kész pontjuk előtt nem engedik el a zárakat... Q: ...ezért rendszerhiba esetén nincs szükség UNDO-ra, csak REDO-ra. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Adatbáziskezelő-rendszerben a médiahiba felbukkanásának esélyét csökkentendő szokásos megoldás az adatok több példányban, különböző diszkeken történő tárolása, ... Q: ...ezért ilyen esetekben a módosítási anomália okozta inkonzisztencia is gyakoribb. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának szükséges és elégséges feltétele,... Q: ...ezért sorosítható ütemezés esetén nem kell tartani a pattoktól. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Két attribútum (A, B) között szeretnénk a funkcionális függőségi kapcsolatot megállapítani, azonban ezen attribútumoknak az értékei még nem ismertek. Lehetséges-e a kérdésre választ adni? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igen.&lt;br /&gt;
# Nem.&lt;br /&gt;
# Enne a kérdésnek semmi értelme.&lt;br /&gt;
&lt;br /&gt;
== Egy relációs sémának... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
# ...a legalacsonyabb normálformája 3NF, ha nincs más másodlagos attribútum.&lt;br /&gt;
# ...a legmagasabb normálformája 2NF, ha nincs másodlagos attribútum.&lt;br /&gt;
# ...lehet, hogy minden attribútuma másodlagos.&lt;br /&gt;
&lt;br /&gt;
== A funkcionális függés... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# soha nem értékfüggetlen kényszer.&lt;br /&gt;
# mindig értékfüggő kényszer.&lt;br /&gt;
# lehet értékfüggő kényszer.&lt;br /&gt;
# mindig értékfüggetlen kényszer.&lt;br /&gt;
&lt;br /&gt;
== P: A kiterjesztett ER-modell elemkészletében szereplő gyenge egyedhalmaz nem képezhető le a relációs adatmodellre,... Q: ...mert a reláció egy halmaz, így a benne szereplő rekordok egyedisége definíciószerűen elvárt. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Adott két tábla, T1 (oszlopai: A és B), és T2 (oszlopai: B és C). Válassza ki az alábbi lekérdezés eredményére vonatkozó állítások közül azt, amelyik biztosan igaz! Feltételezzük, hogy a lekérdezés szintaktikailag helyes és a táblák oszlopait is helyesen hivatkozza, a táblákban nem szerepel NULL érték, és az eredmény oszlopait R1, R2, R3 és R4 néven nevezzük. SELECT T1.A AS R1, T1.B AS R2, T2.B AS R3, T2.C AS R4 FROM T1 LEFT JOIN T2 ON (T1.B = T2.B) ; ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Az eredményben T1 minden rekordja szerepel.&lt;br /&gt;
# Az eredmény minden rekordjában megegyezik R2 és R3 mezők értéke.&lt;br /&gt;
# R4 mezőben nem fordul elő NULL érték.&lt;br /&gt;
# Az eredményben T2 minden rekordja szerepel.&lt;br /&gt;
&lt;br /&gt;
== Egy adatbázisban vödrös hashelést alkalmaznak a rekordok tárolására. Az alábbiak közül mi(k) okozhatják, hogy az egyes vödrökben tárolt rekordok elérési ideje jelentősen eltérhet egymástól (több helyes válasz is lehetséges, a helytelen válasz pontlevonással jár)? ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A hash függvény helytelen megválasztása.&lt;br /&gt;
# Ha sokkal több a törlés, mint a beszúrás.&lt;br /&gt;
# A rekordok kulcsértékeinek nem egyenletes eloszlása.&lt;br /&gt;
# Az adatok elhelyezkedése a merevlemezen.&lt;br /&gt;
# Ha sokkal több a beszúrás, mint a törlés.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy relációs lekérdező nyelv képes az unió, különbség, Descartes-szorzat, vetítés és kiválasztás műveleteit kifejezni, akkor relációsan teljesnek nevezik, ... Q: ...mert az ilyen lekérdező nyelvek segítségével egy relációs adatbázisból mindent le tudunk kérdezni. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== 500 bájtos blokkméret mellett mekkora méretű lesz egy 10 vödörből álló hash állomány vödörkatalógusa, ha egy mutató 5, egy kulcs pedig 10 bájtos? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 500 Byte&lt;br /&gt;
# 2000 Byte&lt;br /&gt;
# 1500 Byte&lt;br /&gt;
# 1000 Byte&lt;br /&gt;
&lt;br /&gt;
== P: Mivel minden tranzitív funkcionális függés egyúttal részleges függés is, ... Q: ...ezért minden részleges függés tranzitív függés is. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legalább 1NF relációs sémának valamennyi kulcsa egyszerű, akkor a séma legalább 2NF, ... Q: ...mert az egyszerű kulcsok kizárják, hogy a sémában másodlagos attribútumok legyenek. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha másodlagos attribútum egy kulcstól részlegesen függ, akkor tranzitívan is függ tőle, ... Q: ...ezért ha egy séma nem 2NF, akkor 3NF sem lehet. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Az, hogy egy A és B egyedhalmazok közötti K kapcsolattípus funkcionalitása &amp;quot;több-több&amp;quot;, azt jelenti, hogy ... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# K minden egyes kapcsolatpéldánya A több elemét rendeli B több eleméhez.&lt;br /&gt;
# K minden kapcsolatpéldánya pontosan egy A-beli elemet rendel pontosan egy B-beli elemhez, viszont A valamely eleméhez K kapcsolatpéldányai több B-beli elemet rendelhetnek, és B minden eleméhez K kapcsolatpéldányai több A-beli elemet rendelhetnek.&lt;br /&gt;
# A és B között nem engedélyezett több kapcsolattípus definiálása, ezért A és B egyedei között minden egyes kapcsolatot annak szemantikájától függetlenül K valamely kapcsolatpédánya definiálja.&lt;br /&gt;
# A és B egyedhalmazok között K-n kívüli további kapcsolattípusok is engedélyezettek.&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor... P: ...nem fordulhat elő lavina... Q: ...ezért rendszerhiba esetén nincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== A relációalgebrai faalapú heurisztikus lekérdezésoptimalizálás lépései a kanonikus alakból kiindulva: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# vetítések süllyesztése, fa leveleinek átrendezése, join bevezetése, szelekciók süllyesztése.&lt;br /&gt;
# vetítések süllyesztése, fa leveleinek átrendezése, szelekciók süllyesztése, join bevezetése.&lt;br /&gt;
# szelekciók süllyesztése, fa leveleinek átrendezése, join bevezetése, vetítések süllyesztése.&lt;br /&gt;
# szelekciók süllyesztése, fa leveleinek átrendezése, vetítések süllyesztése, join bevezetése.&lt;br /&gt;
&lt;br /&gt;
== A relációs algebra, relációs sor-, ill. relációs oszlopkalkulus közül melyek teljesek? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# Relációs sorkalkulus.&lt;br /&gt;
# Relációs oszlopkalkulus.&lt;br /&gt;
# Relációs algebra.&lt;br /&gt;
# Csak a relációs algebra.&lt;br /&gt;
# Mindegyik felsorolt.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legalább 1NF relációs sémának minden attribútuma elsődleges, akkor a séma nem lehet BCNF, ... Q: ...mert BCNF sémák esetén a nemtriviális függések bal oldalán szuperkulcsok, a jobb oldalán pedig másodlagos attribútumok állnak. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának elégséges feltétele,... Q: ...ezért sorosítható ütemezés esetén nem kell tartani az olvasástól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Melyik nem része az alábbiak közül egy relációs lekérdezés végrehajtási tervének? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A relációs műveletekhez rendelt algoritmusok.&lt;br /&gt;
# A műveletek workflow-ja (materializáció vagy pipelining).&lt;br /&gt;
# A kiválasztott relációs műveletek egymásraépülése.&lt;br /&gt;
# Katalógusinformációk az érintett relációkról.&lt;br /&gt;
&lt;br /&gt;
== A heurisztikus optimalizálásnál használt melyik módszer alkalmazható a költségalapú optimalizálás folyamatában? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Descartes-szorzat és szelekció sorozat helyett megfelelő illesztés bevezetése.&lt;br /&gt;
# Projekciók süllyesztése.&lt;br /&gt;
# A szelekciók süllyesztése.&lt;br /&gt;
# Mindegyik alkalmazható a költségalapú optimalizálás során.&lt;br /&gt;
&lt;br /&gt;
== Adott az (R, F) relációs séma, ahol R = ABCDEG, F = { AB -&amp;gt; BC, AC -&amp;gt; D, CD -&amp;gt; EG, CG -&amp;gt; A, G -&amp;gt; D, D -&amp;gt; C}. Melyik függés vezethető le az adott függéshalmazból? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# D -&amp;gt; B&lt;br /&gt;
# G -&amp;gt; B&lt;br /&gt;
# A -&amp;gt; B&lt;br /&gt;
# AC -&amp;gt; B&lt;br /&gt;
# G -&amp;gt; E&lt;br /&gt;
&lt;br /&gt;
== Hány soros ekvivalense létezik az alábbi ütemezésnek, ha LOCK-UNLOCK párok között az adategység értéke írható és olvasható? T1 LOCK A, T1 UNLOCK A, T2 LOCK A, T2 UNLOCK A, T3 LOCK B, T3 UNLOCK B, T1 LOCK B, T1 UNLOCK B, T2 LOCK C, T2 UNLOCK C, T3 LOCK C, T3 UNLOCK C. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 3&lt;br /&gt;
# 2&lt;br /&gt;
# 1&lt;br /&gt;
# 0&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy ütemezés tranzakciói a szigorú kétfázisú protokoll szabályait követik, akkor a kész pontjuk előtt nem írhatnak az adatbázisba, ... Q: ...ezért rendszerhiba esetén nincs szükség REDO-ra, csak UNDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Két reláció természetes illesztésének mevalósításakor... P: ...az összefésüléses join (&amp;quot;sorted merge join&amp;quot;) költsége kisebb lehet, mint az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;) költsége,... Q: ...mert az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;) költségét jelentősen befolyásolhatja, hogy melyik reláció kerül a külső ill. belső ciklusba. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legális ütemezésben a tranzakciók követik a kétfázisú zárolás szabályait, akkor az ütemezés sorosítható, ... Q: ...ezért kétfázisú zárolás mellett rendszerhiba esetén sincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának szükséges és elégséges feltétele, ... Q: ...ezért sorosítható ütemezés esetén nem kell tartani a fantom olvasástól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Adott egy R séma és a sémára illeszkedő r(R) reláció. P: Mivel az r-n fennálló eseti funkcionális függések halmaza mindig tartalmazza az érdemi funkcionális függéseket is,... Q: ...ezért az eseti funkcionális függőségek segítségével további megállapításokat tehetünk, hogy melyik attribútumokban fordulhat még elő redundáns adattárolás. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Az adatbáziskezelő-rendszer háromrétegű modelljében melyik szinthez/réteghez köthető az adatbiztonság megvalósítása? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A logikai adatbázis réteghez.&lt;br /&gt;
# A fizikai adatbázis réteghez.&lt;br /&gt;
# A nézetek szintjéhez.&lt;br /&gt;
# Egyikhez sem.&lt;br /&gt;
&lt;br /&gt;
== Egy relációalgebrai kifejezés kanonikus alakjában milyen műveletek és milyen sorrendben szerepelnek? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# szelekció, projekció, Théta-illesztés&lt;br /&gt;
# szelekció, projekció, természetes illesztés&lt;br /&gt;
# szelekció, projekció, Descartes-szorzat&lt;br /&gt;
# projekció, szelekció, természetes illesztés&lt;br /&gt;
# projekció, szelekció, Descartes-szorzat&lt;br /&gt;
&lt;br /&gt;
== Mennyi az r és s relációk &amp;quot;egymásba ágyazott ciklus&amp;quot; (nested loop join)-alapú illesztésének legjobb becsült költsége, ha egyik reláció sem fér bele az operatív tárba? (nr és ns a relációk rekordjainak, br és bs pedig a relációk blokkjainak számát jelölik.) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# br + bs&lt;br /&gt;
# nr * br + bs&lt;br /&gt;
# ns * br + bs&lt;br /&gt;
# ns * br + nr * bs&lt;br /&gt;
# bs * br + bs&lt;br /&gt;
&lt;br /&gt;
== P: a egy relációs sémának több kulcsa is van, akkor van összetett kulcsa is, ... Q: ...ezért egy relációs séma szuperkulcsa nem feltétlenül minimális. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Két kulcs szerinti keresést szeretnénk megvalósítani úgy, hogy az adatokat tartalmazó állománnyal szemben semmilyen rendezettség nem várható el. Milyen struktúrát javasolna erre a célra? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Az adatállományra épített egyetlen sűrű index, amelyre két ritka indexet építünk.&lt;br /&gt;
# Az adatállományra épített két sűrű index, amelyekre egy-egy ritka indexet építünk.&lt;br /&gt;
# Az adatállományra épített egyetlen sűrű index, amelyre ritka indexet építünk, illetve az adatállományra emellett épített további ritka index.&lt;br /&gt;
# Az adatállomáányra közvetlenül épített két ritka index.&lt;br /&gt;
&lt;br /&gt;
== P: A deklaratív lekérdezőnyelven megfogalmazott relációs lekérdezések több lehetséges végrehajtási terv mentén értékelhetők ki,... Q: ...ezért a költségalapú optimalizálás célja: minimalizálni a join műveletek során végrehajtott blokkműveletek számát. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A kiterjesztett ER-modell elemkészletével elkészített ER-diagram relációs adatmodellre leképezhető része mindig leképezhető legfeljebb annyi relációs sémára, amennyi az egyedtípusok és kapcsolattípusok számának összege, ... Q: ...mert az egyedek nem lehetnek többen, mint a relációs modellben a relációk összesített rekordszáma. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a tranzakciók kész pontjuk előtt nem engedik el a zárakat.&lt;br /&gt;
# a tranzakciók a zárpontjuk előtt elengedhetik a zárakat.&lt;br /&gt;
# a tranzakciók a zárpont után már írhatnak az adatbázisba.&lt;br /&gt;
# egy tranzakció ugyanazt az adategységet többször is zárolhatja.&lt;br /&gt;
&lt;br /&gt;
== Az R(A, B, C, D) és S(A, B, E, ) relációs sémák szerint létrehozott r és s táblákon fogalmaztuk meg az alábbi SQL nyelvű lekérdezést. SELECT * FROM r, s WHERE r.A = s.A ; Melyik relációalgebrai műveletet valósítja meg a lekérdezés az r és s relációk között? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# természetes illesztés&lt;br /&gt;
# vetítés (projekció)&lt;br /&gt;
# metszet&lt;br /&gt;
# unió&lt;br /&gt;
# Théta-illesztés&lt;br /&gt;
&lt;br /&gt;
== P: A figyelmeztető protokoll szabályait követő tranzakciókból álló legális ütemezések esetén zárkonfliktus nem fordulhat elő, ... Q: ...mert az ilyen ütemezések esetén a sorosíthatóság garantált. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Egy relációs séma pontosan akkor BCNF, ha minden nemtriviális függés bal oldalán szereplő attribútumok értéke minden, a sémára illeszkedő relációban egyedi,... Q: ...ezért az ilyen sémákra illeszkedő relációkban funkcionális függés miatt redundáns adattárolás sehol nem fordulhat elő. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy ER-diagramon adott két egyedhalmaz, A és B. A attribútumtípusainak száma 18. B attribútumtípusainak száma 13. A-nak egyetlen összetett, 9 db attribútumtípus által alkotott kulcsa van, míg B-nek szintén egyetlen, összetett, 5 db attribútumtípus által alkotott kulcsa. C gyenge egyedhalmaznak egyetlen, 7 darab attribútumtípus által alkotott kulcsa van. C-t ezen kívül A és B egyedhalmazzal egy-egy determináló kapcsolattípus köti össze. Hány elemű lesz C relációs séma kulcsa, miután a fentiekben leírt ER-diagramot relációs sémákra képezzük le? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# 7&lt;br /&gt;
# 14&lt;br /&gt;
# 21&lt;br /&gt;
# 28&lt;br /&gt;
&lt;br /&gt;
== Két reláció természetes illesztésének megvalósításakor P: a blokk-alapú egymásba ágyazott ciklikus illesztés (&amp;quot;block nested loop&amp;quot;) költsége kisebb lehet, mint az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;)... Q: ...mert kevesebb rekordpár illeszkedés-vizsgálatára van szükség az algoritmus futása során. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Egy gyenge egyedhalmaz elemeinek azonosításához nem elég egy gyenge egyedhalmaz kulcsa,... Q: ...ezért a gyenge egyedhalmaz mindig specializált egyedhalmaz. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg az egyetlen helyes választ! Adott egy X -&amp;gt; Y funkcionális függés. Ekkor: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# X függ Y-tól.&lt;br /&gt;
# X értéke ismeretében Y értéke mindig megadható.&lt;br /&gt;
# Az X értéke meghatározza Y értékét.&lt;br /&gt;
# Y értéke ismeretében X értéke mindig megadható.&lt;br /&gt;
&lt;br /&gt;
== Mely igaz az alábbiak közül? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Ha egy ütemezés sorosítható, akkor lehet olyan időpillanat, amikor a várakozási gráfban irányított kör van.&lt;br /&gt;
# Ha egy ütemezés sorosítható, akkor nincs olyan időpillanat, amikor a várakozási gráfban irányított kör van.&lt;br /&gt;
# Ha a várakozási gráf egyetlen időpillanatban sem tartalmaz irányított kört, akor az ütemezés sorosítható.&lt;br /&gt;
# Ha a várakozási gráf valamely időpillanatban tartalmaz irányított kört, akkor az ütemezés nem sorosítható.&lt;br /&gt;
&lt;br /&gt;
==  A következőket tudjuk egy B* fáról és annak tartalmáról: A fa elágazási tényezője 5; Egy blokkba 3 adatrekord fér el; Egy blokk elérése 5 ms-ig tart; A B*-fa egyetlen részét se tároljuk a memóriában; Egy kulcsalapú egyenlőségi keresés átlagos ideje 20 ms; Kérdés: legfeljebb hány adat rekord lehet a fában jelenleg? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 75&lt;br /&gt;
# 81&lt;br /&gt;
# 125&lt;br /&gt;
# 375&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Sznik%C3%A1k&amp;diff=205079</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=205079"/>
		<updated>2023-12-12T16:10:09Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: /* 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) */ fix kérdés típusa több&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;
== 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;
== 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=2,4}}&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;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&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;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Sznik%C3%A1k&amp;diff=205078</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=205078"/>
		<updated>2023-12-12T16:09:26Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: kérdések hozzáadá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;
== 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;
== 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=2,4}}&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;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&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=egy|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;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Szofttech&amp;diff=205077</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=205077"/>
		<updated>2023-12-12T15:53:37Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: kérdések hozzáadá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}}&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}}&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;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:2020_jan_info_zv_szofttech_uml.png&amp;diff=205076</id>
		<title>Fájl:2020 jan info zv szofttech uml.png</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:2020_jan_info_zv_szofttech_uml.png&amp;diff=205076"/>
		<updated>2023-12-12T15:53:21Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;2020 januári mérnökinfó záróvizsga szofttech feladat UML diagram&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:2020_jan_info_zv_kruskal.png&amp;diff=205074</id>
		<title>Fájl:2020 jan info zv kruskal.png</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:2020_jan_info_zv_kruskal.png&amp;diff=205074"/>
		<updated>2023-12-12T15:28:09Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;2020 január mérnökinfó záróvizsga algoritmusok kruskal algoritmus gráf&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=M%C3%A9rn%C3%B6k_informatikus_BSc_z%C3%A1r%C3%B3vizsga&amp;diff=205073</id>
		<title>Mérnök informatikus BSc záróvizsga</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=M%C3%A9rn%C3%B6k_informatikus_BSc_z%C3%A1r%C3%B3vizsga&amp;diff=205073"/>
		<updated>2023-12-12T15:10:12Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: felvételi szabályzat link frissítés&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Tematika==&lt;br /&gt;
A hivatalos tematika, és a felkészüléshez ajánlott irodalom elérhető a [https://www.vik.bme.hu/kepzes/mesterk%C3%A9pz%C3%A9s/jelentkez%C3%A9s/354.html kari weboldalon].&lt;br /&gt;
&lt;br /&gt;
A tematikában szereplő fogalmak a konkrét oldalakra linkelve ki vannak gyűjtve az [https://git.sch.bme.hu/mvarga/info-msc-felveteli-tetelek SCH Git-en](SCHacc belépés szükséges).&lt;br /&gt;
&lt;br /&gt;
==Tanácsok==&lt;br /&gt;
* [[Media:Villany zarovizsga tanacsok.pdf|Szóbeli előadás tanácsok]] (villamosmérnököknek készült, de informatikusoknak is 100%-ban használható)&lt;br /&gt;
* [https://www.vik.bme.hu/kepzes/mesterk%C3%A9pz%C3%A9s/jelentkez%C3%A9s/354.html Mesterképzésre ajánlott fekészülési anyagok]&lt;br /&gt;
** Tanenbaum: Számítógép hálózatok&lt;br /&gt;
** [http://www.tankonyvtar.hu/hu/tartalom/tkt/operacios-rendszerek/adatok.html Kóczy-Kondorosi: Operációs Rendszerek Mérnöki Megközelítésben]&lt;br /&gt;
** [https://edu.interkonyv.hu/edu-read/algoritmusok/169499/ Rónyai Lajos, Ivanyos Gábor, Szabó Réka: Algoritmusok]&lt;br /&gt;
** [https://edu.interkonyv.hu/edu-read/recski-andras-a-szamitastudomany-alapjai/161169/ Katona Gyula Y., Recski András, Szabó Csaba: A számítástudomány alapjai]&lt;br /&gt;
** Sommerville, I. . Szoftver rendszerek fejlesztése&lt;br /&gt;
** [http://www.tankonyvtar.hu/hu/tartalom/tkt/objektum-orientalt/adatok.html Kondorosi, László, Szirmay-Kalos: Objektum orientált szoftverfejlesztés]&lt;br /&gt;
** Erich Gamma, Ralph Johnson, Richard Helm, John Vlissides: Programtervezési minták&lt;br /&gt;
** Imre Gábor (szerk.): Szoftverfejlesztés Java EE platformon&lt;br /&gt;
** [https://db.bme.hu/~gajdos/Adatbazisok2019.pdf Gajdos: Adatbázisok]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;small&amp;gt;&#039;&#039;(A nem linkelt könyvek nagyrészt kikölcsönözhetőek meg nem nevezett oldalakról)&#039;&#039;&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Korábbi feladatsorok==&lt;br /&gt;
&amp;lt;small&amp;gt;&#039;&#039;A feladatsorokból az üres oldalakat eltávolítottuk.&#039;&#039;&amp;lt;/small&amp;gt;&lt;br /&gt;
*[[Media:info_zv_2008jun.pdf | 2008 június]] - [[Media:info_zv_2008jun_mo.pdf | Megoldások]] &lt;br /&gt;
*[[Media:info_zv_2009jan.pdf | 2009 január]] - [[Media:info_zv_2009jan_mo.pdf | Megoldások]] &lt;br /&gt;
*[[Media:info_zv_2009jun.pdf | 2009 június]] - [[Media:info_zv_2009jun_mo.pdf | Megoldások]] &lt;br /&gt;
*[[Media:info_zv_2010jan.pdf | 2010 január]] - [[Infó MSc felvételi 2010. január 4. | Nemhivatalos megoldások]]&lt;br /&gt;
*[[Media:info_zv_2010jun.pdf | 2010 június]] - [[Media:info_zv_2010jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2011jan.pdf | 2011 január]] - [[Media:info_zv_2011jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2011maj.pdf | 2011 május]] - [[Media:info_zv_2011maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2012jan.pdf | 2012 január]] - [[Media:info_zv_2012jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2012maj.pdf | 2012 május]] - [[Media:info_zv_2012maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2013jan.pdf | 2013 január]] - [[Media:info_zv_2013jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2013maj.pdf | 2013 május]] - [[Media:info_zv_2013maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2014jan.pdf | 2014 január]] - [[Media:info_zv_2014jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2014maj.pdf | 2014 május]] - [[Media:info_zv_2014maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2015jan.pdf | 2015 január]] - [[Media:info_zv_2015jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2015maj.pdf | 2015 május]] - [[Media:info_zv_2015maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2016jan.pdf | 2016 január]]  - [[Media:info_zv_2016jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2016jun.pdf | 2016 június]] - [[Media:info_zv_2016jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2017jan.pdf | 2017 január]] - [[Media:info_zv_2017jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2017jun.pdf | 2017 június]] - [[Media:info_zv_2017jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2018jan.pdf | 2018 január]] - [[Media:info_zv_2018jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2018jun-info.pdf | 2018 június]] - [[Media:info_zv_2018jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2019jan.pdf | 2019 január]] - [[Media:info_zv_2019jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2019jun.pdf | 2019 június]] - [[Media:info_zv_2019jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2020jan.pdf | 2020 január]] - [[Media:info_zv_2020jan_mo.pdf | Megoldások]]&lt;br /&gt;
* [[Media:2021.01.04. BSc záróvizsga teszt.pdf | 2021 január]] - [[Media:2021.01.04. BSc záróvizsga megoldás.pdf | Megoldások]]&lt;br /&gt;
* 2022 január - [[Media:info_zv_2022jan_mo.pdf | Megoldások]]&lt;br /&gt;
* [[Media:Info_zv_2022jun.pdf | 2022 június]] - [[Media:Info_zv_2022jun_mo.pdf | Megoldások]]&lt;br /&gt;
* 2023 január - [[Media:Info_zv_2023jan_mo.pdf | Megoldások]]&lt;br /&gt;
* 2023 június - [[Media:info_zv_2023jun_mo.PDF | Megoldások]]&lt;br /&gt;
*[https://www.vik.bme.hu/kepzes/mesterkepzes/jelentkezes/360.html Feladatsorok kari oldala]&lt;br /&gt;
*[https://vik.hk/dokumentum-kategoria/mernokinformatikus-szak/ Feladatsorok a Hallgatói Képviselet oldalán]&lt;br /&gt;
&lt;br /&gt;
===Hibák===&lt;br /&gt;
&lt;br /&gt;
A hibák listája nem hivatalos.&lt;br /&gt;
&lt;br /&gt;
* 2011 jan. adatb 1.: 300 000 + 50 000 + 834 = 350 834 blokk -&amp;gt; hiányzik egy tizedesvessző a megoldásban&lt;br /&gt;
* 2011 jan. hálók 7.: 210, 12 byte -&amp;gt; hibás a feladat, mert a szövegében annak kellene állnia, hogy “B válaszként küldött 4 szegmens TCP PDU-jában az ACK-szám 222,222,222,222”, ekkora kapnánk az alábbi megoldást, mivel ezzel azt jelzi, hogy 221-ig minden rendben megjött, de utána elveszett a szegmens, ezért küldi A újra, a 222-es sorszámú szegmenst.&lt;br /&gt;
* 2011 máj. algel 3.: zárójel után (18 alatt 5) + (18 alatt 6) * (2 alatt 1)&lt;br /&gt;
* 2011 máj. algel 4.: 3. sor 025439, 4. sor 025339, 5. sor 025338&lt;br /&gt;
* 2013 máj. hálók 5.: a, c, d&lt;br /&gt;
* 2017 jún. sznikák 5.: d&lt;br /&gt;
* 2019 jún. sznikák 10.: e&lt;br /&gt;
&lt;br /&gt;
==Kvízek==&lt;br /&gt;
Az alábbi kvízek kizárólag korábbi záróvizsga feladatokat és mintafeladatokat tartalmaznak, megjelölve a forrást.&lt;br /&gt;
* [[Záróvizsga kvíz - Algoritmusok|Algoritmusok]]&lt;br /&gt;
* [[Záróvizsga kvíz - Szofttech|Szoftvertechnológia]]&lt;br /&gt;
* [[Záróvizsga kvíz - Sznikák|Szoftvertechnikák]]&lt;br /&gt;
* [[Záróvizsga_kvíz_-_Adatbázis|Adatbázisok]]&lt;br /&gt;
&lt;br /&gt;
==Más szakok felvételi vizsgái==&lt;br /&gt;
*[[Villamosmérnök BSc záróvizsga | Villamosmérnök]]&lt;br /&gt;
*[[Gazdaságinformatikus MSc felvételi vizsga | Gazdaságinformatikus]]&lt;br /&gt;
*[[Egészségügyi mérnök MSc felvételi vizsga | Egészségügyi mérnök]]&lt;br /&gt;
&lt;br /&gt;
==További információk==&lt;br /&gt;
*[https://www.vik.bme.hu/document/4523/original/bsc-zv-msc-felv-210323.pdf Közös BSc záróvizsga-MSc felvételi szabályzat]&lt;br /&gt;
&lt;br /&gt;
{{Lábléc_-_Mérnök_informatikus_alapszak}}&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Adatb%C3%A1zis&amp;diff=205072</id>
		<title>Záróvizsga kvíz - Adatbázis</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Adatb%C3%A1zis&amp;diff=205072"/>
		<updated>2023-12-12T14:33:32Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: kérdések hozzáadása&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Kvízoldal&lt;br /&gt;
|cím=ZVAdatb|pontozás=-&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Egy adatbázis-kezelő rendszer szigorú tranzakciós protokollt és egyszerű zármodellt (tranzakciós modellt) használ. Az alábbi állítások közül melyik nem helyes? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A zárkezelés kétfázisú (2PL) lesz.&lt;br /&gt;
# Nem fordulhat elő lavina.&lt;br /&gt;
# Naplózás esetén nem lesz szükség undo-ra a helyreállításhoz.&lt;br /&gt;
# A zárak a commit (kész) pont után felszabadíthatók&lt;br /&gt;
&lt;br /&gt;
== Melyik NEM fejezhető ki SQL lekérdezések segítségével a halmazalgebra alábbi műveletei közül? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# metszetképzés&lt;br /&gt;
# Descartes-szorzat&lt;br /&gt;
# komplementer-képzés&lt;br /&gt;
# különbségképzés&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, hogy a keresés költségének nagyságrendjére vonatkozó alábbi 1), 2), 3), 4), 5), 6) állítások közül melyek igazak, ha az állományt B*-fában tároljuk! A költséget a blokkműveletek számával mérjük. (2023 jun) ==&lt;br /&gt;
# A keresés költsége lineárisan nő a fa magasságával&lt;br /&gt;
# A keresés költsége logaritmikusan nő a fa magasságával&lt;br /&gt;
# A keresés költsége lineárisan aránylik az elágazási tényezőhöz&lt;br /&gt;
# A keresés költsége logaritmikusan aránylik az elágazási tényezőhöz&lt;br /&gt;
# Az elemek beszúrási sorrendjének nincs hatása a keresés költségére&lt;br /&gt;
# Az elemek beszúrási sorrendjének van hatása a keresés költségére&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# 1), 4), 5)&lt;br /&gt;
# 2), 3), 6)&lt;br /&gt;
# 2), 4), 6)&lt;br /&gt;
# 1), 4), 6)&lt;br /&gt;
# 1), 3), 6)&lt;br /&gt;
# 2), 4), 5)&lt;br /&gt;
&lt;br /&gt;
== Az r és s relációk természetes illesztését egymásba ágyazott ciklikus illesztéssel (nested loop join) végezzük. A két állomány rendre b és b számú blokkból áll, illetve n és n rekordot tartalmaz. (2023 jun) ==&lt;br /&gt;
Az alábbi lehetőségek közül melyik lehet a join blokkműveletek számában mért költsége a legrosszabb esetben, ha a relációknak csak egy- egy blokkja fér a memóriába?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=6}}&lt;br /&gt;
# &amp;lt;math&amp;gt;n_r + n_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_s + b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r + b_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r + n_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;n_r * n_s&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== A következő ábrák közül melyik nem szerepelhet ER-diagram részeként? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid1.png|keretnélküli]]&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid 2.png|keretnélküli]]&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid 3.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
== Adott egy séma és az attribútumai között értelmezett funkcionális függések halmaza. Tudjuk, hogy a nemtriviális függések bal oldalán található attribútum(halmaz)on a rekordok értéke egyedi. Ekkor (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a sémára illeszkedő egyetlen adathalmazban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# lehet olyan, a sémára illeszkedő adathalmaz, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# van olyan, a sémára illeszkedő adathalmaz, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedő egyetlen adathalmazban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
&lt;br /&gt;
== A válaszlehetőségek közül melyik a csatolt ER-diagram legpontosabb relációs leképezése? (2023 jun) ==&lt;br /&gt;
&lt;br /&gt;
[[Fájl:2023 június mérnökinformatikus záróvizsga Adatbázisok ER sémadekompozíció 1.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# A(a, b, c), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol A kulcsa a és b együtt, és A-ban b idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt, valamint K-ban a és b is idegen kulcs&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b, c, d), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt és K mind a négy attribútuma egyenként idegen kulcs is.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), B(a, b, d), ahol B kulcsa a és b együtt, és B-ben a idegen kulcs.&lt;br /&gt;
&lt;br /&gt;
== Időbélyeges tranzakciókezelés esetén melyik állítás NEM helyes? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy adott ütemezésnek mindig van soros ekvivalense (a tranzakciók időbélyegei szerinti növekvő sorrendű).&lt;br /&gt;
# Szigorú protokoll megvalósításához az időbélyegek mellett zárak is szükségesek.&lt;br /&gt;
# Egy adott ütemezésnek akár több soros ekvivalense is lehet.&lt;br /&gt;
# Egy adott ütemezésnek lehet soros ekvivalense.&lt;br /&gt;
&lt;br /&gt;
== Az SQL lekérdezésekben a &amp;quot;SELECT DISTINCT&amp;quot; az ismétlődéseket szűri az eredményhalmazból. A relációs algebrában hogyan valósítható meg ez a művelet? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Nincs rá szükség, mert a relációs algebra halmazokkal dolgozik, ahol nem szerepelnek ismétlődések.&lt;br /&gt;
# Az unió vagy a metszet műveleteket kell használni, ha követelmény az ismétlődések szűrése.&lt;br /&gt;
# A természetes illesztés alkalmas erre, hiszen az az azonos nevű attribútumokat csak egyszer adja vissza.&lt;br /&gt;
&lt;br /&gt;
== Egy adatállományt vödrös hash szervezéssel tárolunk. A következőket tudjuk az állományról: (2023 jun) ==&lt;br /&gt;
# Egy rekord egy blokknyi helyet foglal el.&lt;br /&gt;
# Az alkalmazott hash függvény: &#039;k mod 5&#039;, ahol a &#039;k&#039; a kulcsot jelenti.&lt;br /&gt;
# A vödrös hash kezdetben üres.&lt;br /&gt;
# A hashtábla elfér az operatív tárban.&lt;br /&gt;
A beszúrt rekordok kulcsai a következők: 5, 7, 3, 9, 10, 1, 4, 7, 19.&lt;br /&gt;
Hány blokkműveletet fog a rendszer végezni, ha azon rekordot keressük, amelynek kulcsa 24?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 2&lt;br /&gt;
# 1&lt;br /&gt;
# 0&lt;br /&gt;
# 3&lt;br /&gt;
&lt;br /&gt;
== Melyik állítás igaz? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legalacsonyabb normál formája 1NF, ha nincs másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legmagasabb normál formája 1NF, ha van másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legalacsonyabb normál formája 3NF, ha van másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legmagasabb normál formája 3NF, ha nincs másodlagos attribútuma.&lt;br /&gt;
&lt;br /&gt;
== Egy állomány tárolása során két merevlemez közül lehet választani: (2023 jan) ==&lt;br /&gt;
* Az &amp;quot;A&amp;quot; lemeznél a blokkméret 4000 byte, egy blokkművelet ideje 10 ms&lt;br /&gt;
* Az &amp;quot;B&amp;quot; lemeznél a blokkméret 12000 byte, egy blokkművelet ideje 20 ms. A tárolni kívánt rekordok mérete lehetővé teszi, hogy a blokkokat mindkét esetben veszteség nélkül használjuk.&lt;br /&gt;
Melyik lemezt válasszuk, ha csak lineáris keresést kell támogatni?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A &amp;quot;B&amp;quot;-t kell választani, mert mindig jobb a nagyobb blokkméret, mint a kisebb.&lt;br /&gt;
# Az &amp;quot;A&amp;quot;-t kell választani, mert ott gyorsabb az egyes blokkok elérése.&lt;br /&gt;
# Az &amp;quot;A&amp;quot;-t kell választani, mert ugyan 3-szor több blokkot kell használni, de ezt ellensúlyozza a hozzáférési sebesség felezése.&lt;br /&gt;
# A &amp;quot;B&amp;quot;-t kell választani, mert harmadannyi blokkot kell használni, ami jobban gyorsítja a keresést, mint az egyes blokkok hozzáférési sebességének duplázódása.&lt;br /&gt;
&lt;br /&gt;
== Hány eleme lehet C-nek, ha A 10, B pedig 50 elemű? (2023 jan) ==&lt;br /&gt;
&lt;br /&gt;
[[Fájl:Info zv 2023 jan adatb er 1.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Legalább 0, legfeljebb 500&lt;br /&gt;
# Legalább 0, legfeljebb 50&lt;br /&gt;
# Legalább 10, legfeljebb 50.&lt;br /&gt;
# Legalább 0, legfeljebb 10&lt;br /&gt;
&lt;br /&gt;
== Adatbázisunkban tárolnánk, hogy légitársaságunk egyes repülőgépeire melyik pilótánknak van típusjogosítása, illetve hogy az egyes gépek melyik járatokon üzemelnek jelenleg. Melyik ER-modell felel meg a leírtaknak? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, egy bináris kapcsolattípus a Pilóta és a Repülőgép között és egy bináris kapcsolattípus a Repülőgép és a Járat között.&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, köztük egy ternáris kapcsolattípus.&lt;br /&gt;
# Egy Repülőgép gyenge egyedhalmaz, amelyet a Pilóta és a Járat egyedhalmazok determinálnak.&lt;br /&gt;
# Egy Repülőgép kapcsolattípus, amely a Pilóta egyedhalmazt és a Járat egyedhalmazt köti össze.&lt;br /&gt;
&lt;br /&gt;
== Mi nem jellemző a fa protokollra? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Zár bármikor, bárhonnan eltávolítható.&lt;br /&gt;
# Zár - az elsőt kivéve - csak akkor helyezhető el egy csomóponton, ha a szülőcsomóponton is tart fenn zárat a tranzakció.&lt;br /&gt;
# A tranzakciók tehetik az első zárjukat a fa gyökerére is.&lt;br /&gt;
# A fa protokoll szerinti tranzakciók kétfázisúak.&lt;br /&gt;
&lt;br /&gt;
== A relációs lekérdezések végrehajtásának heurisztikus optimalizálása során az alábbiak közül melyik NEM történik (Süllyesztés alatt azt értjük, amikor a relációalgebrai fa átalakítása során az adott művelet a gyökércsomóponttól a levélcsomópontok irányába mozdul el.) (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Descartes-szorzások süllyesztése&lt;br /&gt;
# Szelekciók süllyesztése.&lt;br /&gt;
# Levélcsomópontok átrendezése&lt;br /&gt;
# Projekciók süllyesztése.&lt;br /&gt;
&lt;br /&gt;
== Az SQL SELECT utasítás melyik része nem fejezhető ki relációs algebrával az alábbiak közül? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# GROUP BY&lt;br /&gt;
# FROM ... NATURAL JOIN ...&lt;br /&gt;
# WHERE&lt;br /&gt;
# SELECT DISTINCT&lt;br /&gt;
&lt;br /&gt;
== Egy adatállomány rekordjaira ritka indexet építettek: (2023 jan) ==&lt;br /&gt;
* Az adatrekordok és az indexrekordok egyaránt teljesen kitöltik a blokkokat&lt;br /&gt;
* Egy adatrekord 100 Byte&lt;br /&gt;
* Összesen 100000 adatrekordot tárolunk&lt;br /&gt;
* Az adatállomány blocking faktora 100&lt;br /&gt;
* Az indexállomány blocking faktora 400&lt;br /&gt;
* A mutató mérete 10 byte&lt;br /&gt;
* Egy blokk elérési ideje 15 ms&lt;br /&gt;
&lt;br /&gt;
Mekkora a kulcs mérete?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# 5 Byte&lt;br /&gt;
# 10 Byte&lt;br /&gt;
# 15 Byte&lt;br /&gt;
# 20 Byte&lt;br /&gt;
&lt;br /&gt;
== Milyen hiba ellen nem véd a szigorú 2PL (kétfázisú zárolás) protokoll? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Abort az operatív tár sérülése miatt.&lt;br /&gt;
# Abort patt miatt.&lt;br /&gt;
# Abort nem-sorosíthatóság miatt.&lt;br /&gt;
# Felhasználói abort.&lt;br /&gt;
&lt;br /&gt;
== Mit jelent a relációs adatbázis katalógusinformációi között szereplő kiválasztási kardinalitás (selection cardinality) az SC(A, r) formában? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# Azon blokkok átlagos száma, amelyeket be kell olvasni az r relációból a keresés során az A attribútumra felírt egyenlőségi feltétel alapú szelekció esetén.&lt;br /&gt;
# Az r reláció A attribútumára időegység alatt végrehajtott kiválasztás műveletek (szelekciók) átlagos száma.&lt;br /&gt;
# Azon rekordok átlagos száma az r relációban, amelyek kielégítenek egy egyenlőségi feltételt az A attribútumra, feltéve, hogy legalább egy rekord kielégíti ezt az egyenlőségi feltételt.&lt;br /&gt;
# Az r reláció A attribútumában található különböző értékek száma.&lt;br /&gt;
&lt;br /&gt;
== Legfeljebb mekkora lehet két reláció természetes illesztésének rekordszáma, ha az egyik rekordszáma n, a másik rekordszáma m? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# max (n, m)&lt;br /&gt;
# n * m&lt;br /&gt;
# n + m&lt;br /&gt;
# min(n, m)&lt;br /&gt;
&lt;br /&gt;
== Melyik állítás igaz? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Egy relációs sémának a legmagasabb normál formája 2NF, ha nincs másodlagos attribútuma&lt;br /&gt;
# Egy relációs sémának a legmagasabb normál formája 3NF, ha minden attribútuma elsődleges&lt;br /&gt;
# Egy relációs sémának lehet minden attribútuma másodlagos.&lt;br /&gt;
# Egy relációs sémának a legalacsonyabb normál formája 3NF, ha nincs másodlagos attribútuma&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyik NEM szerepel a relációkra vonatkozó katalógus-információk között, amely a végrehajtási terv készítését támogatja? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# A reláció rekordjaiban a mezők száma.&lt;br /&gt;
# A reláció egy rekordjának mérete.&lt;br /&gt;
# A reláció rekordjainak száma.&lt;br /&gt;
# A relációban levő rekordokat tartalmazó blokkok száma.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyiket nem befolyásolja a keresési kulcs mérete? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A nested loop join algoritmus lépésszáma&lt;br /&gt;
# Keresés költsége heap szervezés esetén&lt;br /&gt;
# &amp;lt;math&amp;gt;B^{*}&amp;lt;/math&amp;gt;-fa magassága&lt;br /&gt;
# Hash tábla mérete&lt;br /&gt;
&lt;br /&gt;
== Az SQL SELECT utasítás melyik része felel meg leginkább a relációalgebrai projekció (vetítés) műveletnek? (2022 jun) ==&lt;br /&gt;
A válaszadás során tételezzük fel, hogy a lekérdezés egyetlen táblából dolgozik és a tábla egyetlen kulcsa sem jelenik meg az eredményben!&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# FROM&lt;br /&gt;
# SELECT DISTINCT&lt;br /&gt;
# ORDER BY&lt;br /&gt;
# WHERE&lt;br /&gt;
# SELECT&lt;br /&gt;
&lt;br /&gt;
== Tudjuk, hogy az R relációs sémán fennálló összes nemtriviális függés esetén a függés bal oldalán található attribútum(halmaz) értéke egyedi minden, a sémára illeszkedő relációban. Ekkor (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# egyik sem helyes a többi állítás közül.&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedổ egyetlen relációban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
# van olyan, a sémára illeszkedő reláció, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
&lt;br /&gt;
== Adott az (R, F) séma, ahol R=ABCGWXYZ, F=(XY → BGYZ, AY → CG, C → W, B → G) Melyik függés vezethető le az adott függéshalmazból? (2021 jan, 2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# ABGY → GX&lt;br /&gt;
# ACYZ → W&lt;br /&gt;
# AB → XG&lt;br /&gt;
# BXY → GXW&lt;br /&gt;
&lt;br /&gt;
== Egy B*-fáról a következőket tudjuk: (2022 jun) ==&lt;br /&gt;
* Az adatokat növekvő sorrendben tároljuk&lt;br /&gt;
* Az adatblokkok száma 402&lt;br /&gt;
* Az adatrekordok mérete 200 byte&lt;br /&gt;
* Egy blokk mérete nettó 2000 byte&lt;br /&gt;
* A kulcsok mérete 50 byte&lt;br /&gt;
* Egy mutató 50 byte&lt;br /&gt;
* A kulcsra vonatkozó szelekció kardinalitása (SC) 5 .&lt;br /&gt;
Ideális esetben legkevesebb hány blokkot kell kiolvasnunk egy kulcsértékre vonatkozó egyenlőség alapú keresésnél?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 4&lt;br /&gt;
# 9&lt;br /&gt;
# 2&lt;br /&gt;
# 3&lt;br /&gt;
&lt;br /&gt;
== Az üzemanyaggal történő visszaélések visszaszorítására egy cég úgy dönt, hogy kimutatásokat fog készíteni arról, hogy a cég mely járművébe melyik dolgozó hol és mennyit tankol. A dolgozók minden műszak elején teli tankkal veszik át a jármúveket, és a múszak végén megtankolva kell azokat leadniuk a telephelyen, így a tankolásmennyiségből kikövetkeztethető, hogy ki mennyi üzemanyagot használt, és hogy az illető az adott autóba melyik benzinkúton tankolt. (2022 jun) ==&lt;br /&gt;
[[Fájl:2022 jun info zv adatb ER 1.png|keretnélküli|700px]]&lt;br /&gt;
&lt;br /&gt;
Milyen módosítást kell tenni a fenti ER-diagramon, amely után a modellből készült adatbázis alkalmas lesz a fent említett riportokhoz szükséges adatok tárolásához?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Törölni a Feltölt kapcsolattípust&lt;br /&gt;
# Törölni a Feltölt, Telik és Látogat kapcsolattípusokat&lt;br /&gt;
# Törölni a Látogat kapcsolattípust&lt;br /&gt;
# Törölni a Telik kapcsolattípust&lt;br /&gt;
# Törölni a Tankol kapcsolattípust&lt;br /&gt;
&lt;br /&gt;
== A válaszlehetőségek közül melyik a csatolt ER-diagram legpontosabb relációs leképezése? (2022 jun) ==&lt;br /&gt;
[[Fájl:2022 jun info zv adatb er dekomp.png|keretnélküli]]&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), B(a, b, d), ahol B kulcsa a és b együtt, és B-ben a idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt, valamint K-ban a és b is idegen kulcs&lt;br /&gt;
# A(a, b, c), B(b, d), ahol A kulcsa a és b együtt, és A-ban b idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b, c, d), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt és K mind a négy attribútuma egyenként idegen kulcs is.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, hogy az alábbiak közül mely állítás(ok) igazak a keresési költségekkel kapcsolatban, ha az adatokat B*-fában tároljuk! A költséget a blokkműveletek számával mérjük. (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,4}}&lt;br /&gt;
# A költség logaritmikusan arányos az adatrekordok számával.&lt;br /&gt;
# A költség lineárisan arányos az index struktúra elágazási tényezőjével.&lt;br /&gt;
# A költség lienárisan arányos az index blokkok számával.&lt;br /&gt;
# A költség lineárisan arányos a fa magasságával.&lt;br /&gt;
&lt;br /&gt;
== Adott két tábla, T1 (oszlopai: A és B), és T2 (oszlopai: B és C). Válassza ki az alábbi lekérdezés eredményére vonatkozó állítások közül azt, amelyik biztosan igaz! (2022 jan) ==&lt;br /&gt;
Feltételezzük, hogy a lekérdezés szintaktikailag helyes és a táblák oszlopait is helyesen hivatkozza, a táblákban nem szerepel NULL érték, és&lt;br /&gt;
az eredmény oszlopait R1, R2, R3 és R4 néven nevezzük.&lt;br /&gt;
&amp;lt;pre&amp;gt;SELECT T1.A AS R1, T1.B AS R2, T2.B AS R3, T2.C AS R4&lt;br /&gt;
FROM T1 LEFT JOIN T2 ON (T1.B = T2.B) ;&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Az eredményben T1 minden rekordja szerepel.&lt;br /&gt;
# Az eredményben T2 minden rekordja szerepel.&lt;br /&gt;
# Az eredmény minden rekordjában megegyezik R2 és R3 mezők értéke.&lt;br /&gt;
# R4 mezőben nem fordul elő NULL érték.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyiket NEM befolyásolja a keresési kulcs mérete? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A nested loop join algoritmus lépésszáma&lt;br /&gt;
# Vödrös hash tábla mérete&lt;br /&gt;
# Keresés költsége heap szervezés esetén&lt;br /&gt;
# B*-fa magassága&lt;br /&gt;
&lt;br /&gt;
== Válassza ki az egyetlen igaz állítást! (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Egy ER-modell determináló kapcsolathalmazának kardinalitása lehet több-több.&lt;br /&gt;
# Egy attribútumként jelzett idegen kulcs több egyedhalmazhoz is tartozhat az ER-modellben.&lt;br /&gt;
# Egy ER-modell gyenge egyedhalmazához mindig fel kell venni legalább egy idegen kulcsot, mint attribútumot az ER modellben.&lt;br /&gt;
# Egy ER-modell gyenge egyedhalmazához mindig fel kell venni legalább egy determináló kapcsolathalmazt.&lt;br /&gt;
&lt;br /&gt;
== Egy gépjárműnyilvántartásban két tábla tárolja az autók és tulajdonosaik adatait, melyek sémái a következők: (2022 jan) ==&lt;br /&gt;
Tulajdonos(személyi_szám, név, születési_dátum, anyja_neve), kulcs: személyi szám&lt;br /&gt;
Gépjármű(rendszám, típus, márka, szín, gyártás_éve, tulajdonos_személyi_száma), kulcs: rendszám&lt;br /&gt;
&lt;br /&gt;
A táblák n db személy és m db gépjármű adatait tárolják, és egy személynek átlagosan 2 db gépjárműve van.&lt;br /&gt;
&lt;br /&gt;
Az alábbi SQL lekérdezés eredményrekordjainak számát melyik kifejezés becsüli legjobban?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;SELECT személyi_szám, név, rendszám, típus, márka&lt;br /&gt;
FROM tulajdonos, gépjármű&lt;br /&gt;
WHERE tulajdonos.személyi_szám = gépjármű.tulajdonos_személyi_száma ;&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# n + m&lt;br /&gt;
# 2 * m&lt;br /&gt;
# n&lt;br /&gt;
# m&lt;br /&gt;
# n * m&lt;br /&gt;
&lt;br /&gt;
== Legyen r(R) egy adott reláció, melynek sémája R(A,B,C,D). Tudjuk, hogy t, t* r(R) t[A]=t*[A] esetén t[B]=t*[B]. Ekkor: (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# az A-tól a B funkcionálisan függ.&lt;br /&gt;
# a fentiek közül egyik válasz sem helyes.&lt;br /&gt;
# az A-tól a B funkcionálisan függhet.&lt;br /&gt;
# az A a B-től funkcionálisan függ.&lt;br /&gt;
&lt;br /&gt;
== Adott az R(A) séma és a rá illeszkedő r1 reláció. Amennyiben r2 = r1, mit fejez ki a képen látható relációalgebrai kifejezés? &amp;lt;math&amp;gt;r 1 \backslash \pi_{r 1 . A} \sigma_{r 1 . A \le r 2 . A}(r 1 \cdot x \cdot r 2)&amp;lt;/math&amp;gt;. (2021 jan)==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Üres reláció.&lt;br /&gt;
# r1 legkisebb elemét.&lt;br /&gt;
# r1 legnagyobb és legkisebb elemének halmazát.&lt;br /&gt;
# r1 legnagyobb elemét.&lt;br /&gt;
&lt;br /&gt;
== Relációnk rekordjaira egy előre definiált kulcs alapján sűrú indexet, majd arra ritka indexet építünk úgy, hogy az indexeknél a lehetőlegkevesebb blokkot használjuk fel. A relációról a következőket tudjuk: (2021 jan) ==&lt;br /&gt;
* 400.000 rekord található benne&lt;br /&gt;
* Egy rekord mérete 250 byte&lt;br /&gt;
* Egy blokk (a header nélkül) 4000 byte&lt;br /&gt;
* Egy mutató 10 byte&lt;br /&gt;
* Egy kulcs mérete 10 byte&lt;br /&gt;
Hány blokkot foglalnak el az index állományok (sưrú+ritka)?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 135&lt;br /&gt;
# 210&lt;br /&gt;
# 27010&lt;br /&gt;
# 2010&lt;br /&gt;
&lt;br /&gt;
== Az r és s relációk természetes illesztését szeretnénk kiszámítani. Tegyük fel, hogy a relációk egyike sem fér el a memóriában, és amelyikalgoritmusnál értelmezett, ott az r van a külső ciklusban, az indexelt keresés pedig átlagosan gyorsabb, mint a lineáris keresés. (2021 jan) ==&lt;br /&gt;
Álítsa növekvő sorrendbe a következő join algoritmusok blokkhozzáférések számában mért átlagos költségét!&lt;br /&gt;
* (A): index alapú egymásba ágyazott ciklikus illesztés (indexelt nested loop join)&lt;br /&gt;
* (B): egymásba ágyazott ciklikus illesztés (nested loop join)&lt;br /&gt;
* (C): összefésülés alapú illesztés (sorted merge join)&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# (A), (C), (B)&lt;br /&gt;
# (C), (B), (A)&lt;br /&gt;
# (B), (A), (C)&lt;br /&gt;
# (C), (A), (B)&lt;br /&gt;
# (B), (C), (A)&lt;br /&gt;
# (A), (B), (C)&lt;br /&gt;
&lt;br /&gt;
== Adott egy G→H funkcionális függés. Ekkor (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# G függ H-tól&lt;br /&gt;
# G értéke meghatározza H értékét&lt;br /&gt;
# H ismeretében G meghatározható&lt;br /&gt;
# G ismeretében H meghatározható&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyik nem része egy relációs lekérdezés végrehajtási tervének? (2021 jan) ==&lt;br /&gt;
Tételezze fel, hogy relációalgebrai-alapú végrehajtási terv készül. Ennek megfelelően a &amp;quot;műveletek&amp;quot; szó mindig &amp;quot;relációalgebrai műveletek&amp;quot; értelemben szerepel a válaszokban.&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Műveletek.&lt;br /&gt;
# A múveletek közötti workflow-szervezés.&lt;br /&gt;
# A müveletek egymásra épülése (sorrendje).&lt;br /&gt;
# Az adatok eloszlásáról szóló statisztikák.&lt;br /&gt;
# Az egyes múveletek végrehajásához kiválasztott algoritmusok.&lt;br /&gt;
&lt;br /&gt;
== Egy reláció rekordjait elsődleges indexként múködő B*-fán keresztül érjük el. A tárolás módjáról a következőket tudjuk: (2021 jan) ==&lt;br /&gt;
* A fa magassága (HTi): 7&lt;br /&gt;
* A fa elágazási tényezője: 10&lt;br /&gt;
* Blokkok nettó mérete: 4000 byte&lt;br /&gt;
* Adatrekordok mérete: 400 byte&lt;br /&gt;
* A fa építéséhez használt attribútumra vonatkozó, egyenlőségi feltétel alapú kiválasztáshoz tartozó kardinalitási érték (selection cardinality, SC): 11&lt;br /&gt;
Várhatóan hány blokkművelet szükséges egy egyenlőségi keresés során?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 7&lt;br /&gt;
# 10&lt;br /&gt;
# 18&lt;br /&gt;
# 9&lt;br /&gt;
&lt;br /&gt;
== Melyik állítás igaz? (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# Egy relációs sémának a legmagasabb normál formája $3 \mathrm{NF}$, ha minden attribútuma elsődleges&lt;br /&gt;
# Egy relációs sémának lehet minden attribútuma másodlagos.&lt;br /&gt;
# Egy relációs sémának a legalacsonyabb normál formája 3NF, ha nincs másodlagos attribútuma&lt;br /&gt;
# Egy relációs sémának a legmagasabb normál formája 2NF, ha nincs másodlagos attribútuma&lt;br /&gt;
&lt;br /&gt;
== Adatbázisunkban tárolnánk, hogy légitársaságunk egyes repülőgépeire melyik pilótánknak van típusjogosítása, illetve hogy az egyes gépek melyik járatokon üzemelnek. Melyik ER-modell nyújt megoldást a problémára? (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Egy Repülőgép kapcsolattípus, amely a Pilóta egyedhalmazt és a Járat egyedhalmazt köti össze&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, egy bináris kapcsolattípus a Pilóta és a Repülőgép között és egy bináris kapcsolattípus a Repülögép és a Járat között&lt;br /&gt;
# Egy Repülőgép gyenge egyedhalmaz, amelyet a Pilóta és a Járat egyedhalmazok determinálnak&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, köztük egy ternáris kapcsolattípus&lt;br /&gt;
&lt;br /&gt;
== A felsoroltak közül melyik NEM szerepel egy relációs lekérdezés végrehajtási tervében? Feltételezzük, hogy relációalgebrai reprezentációval dolgozik a vizsgált adatbázis-kezelő rendszer. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A végrehajtás során használt workflow-stratégia (materializáció vagy pipelining).&lt;br /&gt;
# A használt relációalgebrai műveletek és azok hierarchiája a lekérdezésben.&lt;br /&gt;
# A végrehajtás során használandó indexek neve.&lt;br /&gt;
# Az eredmény várható rekordszáma.&lt;br /&gt;
# A használt relációalgebrai műveletek végrehajtásához rendelt algoritmusok.&lt;br /&gt;
# Az input relációk.&lt;br /&gt;
&lt;br /&gt;
== Melyik az egyetlen helyes válasz? Tudjuk, hogy az R relációs sémára illeszkedő minden relációban az összes nemtriviális függés esetén a függés bal oldalán található attribútum(halmaz) értéke egyedi. Ekkor... (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
# van olyan, a sémára illeszkedő reláció, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# egyik sem helyes a többi állítás közül.&lt;br /&gt;
&lt;br /&gt;
== Adottak az A és B egyedhalmazok, valamint a köztük definiált bináris kapcsolathalmaz K, melynek kardinalitása több-több. Tegyük fel, hogy A-ban 10, B-ben pedig 20 egyed van. Legfeljebb hány kapcsolat lehet K-ban? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# 30&lt;br /&gt;
# 200&lt;br /&gt;
# 10&lt;br /&gt;
# 20&lt;br /&gt;
&lt;br /&gt;
== Két attribútum (A, B) között szeretnénk a funkcionális függőségi kapcsolatot megállapítani, azonban ezen attribútumoknak az értékei még nem ismertek. Lehetséges-e a kérdésre választ adni? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igen.&lt;br /&gt;
# Nem.&lt;br /&gt;
# Enne a kérdésnek semmi értelme.&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor: P: A tranzakciók a kész pontjuk előtt nem engedik el a zárakat... Q: ...ezért rendszerhiba esetén nincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának szükséges és elégséges feltétele,... Q: ...ezért sorosítható ütemezés esetén nem kell tartani a pattoktól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy relációs sémának... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
# ...a legmagasabb normálformája 3NF, ha minden attribútuma elsődleges.&lt;br /&gt;
# ...a legmagasabb normálformája 2NF, ha nincs másodlagos attribútum.&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
&lt;br /&gt;
== Egy relációs sémának... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
# ...a legalacsonyabb normálformája 3NF, ha nincs más másodlagos attribútum.&lt;br /&gt;
# ...a legmagasabb normálformája 2NF, ha nincs másodlagos attribútum.&lt;br /&gt;
# ...lehet, hogy minden attribútuma másodlagos.&lt;br /&gt;
&lt;br /&gt;
== A funkcionális függés... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# soha nem értékfüggetlen kényszer.&lt;br /&gt;
# mindig értékfüggő kényszer.&lt;br /&gt;
# lehet értékfüggő kényszer.&lt;br /&gt;
# mindig értékfüggetlen kényszer.&lt;br /&gt;
&lt;br /&gt;
== P: A kiterjesztett ER-modell elemkészletében szereplő gyenge egyedhalmaz nem képezhető le a relációs adatmodellre,... Q: ...mert a reláció egy halmaz, így a benne szereplő rekordok egyedisége definíciószerűen elvárt. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Adott két tábla, T1 (oszlopai: A és B), és T2 (oszlopai: B és C). Válassza ki az alábbi lekérdezés eredményére vonatkozó állítások közül azt, amelyik biztosan igaz! Feltételezzük, hogy a lekérdezés szintaktikailag helyes és a táblák oszlopait is helyesen hivatkozza, a táblákban nem szerepel NULL érték, és az eredmény oszlopait R1, R2, R3 és R4 néven nevezzük. SELECT T1.A AS R1, T1.B AS R2, T2.B AS R3, T2.C AS R4 FROM T1 LEFT JOIN T2 ON (T1.B = T2.B) ; ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Az eredményben T1 minden rekordja szerepel.&lt;br /&gt;
# Az eredmény minden rekordjában megegyezik R2 és R3 mezők értéke.&lt;br /&gt;
# R4 mezőben nem fordul elő NULL érték.&lt;br /&gt;
# Az eredményben T2 minden rekordja szerepel.&lt;br /&gt;
&lt;br /&gt;
== P: Az imperatív lekérdezőnyelven megfogalmazott relációs lekérdezések több lehetséges végrehajtási terv mentén értékelhetők ki, ... Q: ...ezért a költség alapú optimalizálás célja: minimalizálni a join műveletek költségét. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy adatbázisban vödrös hashelést alkalmaznak a rekordok tárolására. Az alábbiak közül mi(k) okozhatják, hogy az egyes vödrökben tárolt rekordok elérési ideje jelentősen eltérhet egymástól (több helyes válasz is lehetséges, a helytelen válasz pontlevonással jár)? ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A hash függvény helytelen megválasztása.&lt;br /&gt;
# Ha sokkal több a törlés, mint a beszúrás.&lt;br /&gt;
# A rekordok kulcsértékeinek nem egyenletes eloszlása.&lt;br /&gt;
# Az adatok elhelyezkedése a merevlemezen.&lt;br /&gt;
# Ha sokkal több a beszúrás, mint a törlés.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy relációs lekérdező nyelv képes az unió, különbség, Descartes-szorzat, vetítés és kiválasztás műveleteit kifejezni, akkor relációsan teljesnek nevezik, ... Q: ...mert az ilyen lekérdező nyelvek segítségével egy relációs adatbázisból mindent le tudunk kérdezni. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== 500 bájtos blokkméret mellett mekkora méretű lesz egy 10 vödörből álló hash állomány vödörkatalógusa, ha egy mutató 5, egy kulcs pedig 10 bájtos? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 500 Byte&lt;br /&gt;
# 2000 Byte&lt;br /&gt;
# 1500 Byte&lt;br /&gt;
# 1000 Byte&lt;br /&gt;
&lt;br /&gt;
== P: Mivel minden tranzitív funkcionális függés egyúttal részleges függés is, ... Q: ...ezért minden részleges függés tranzitív függés is. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legalább 1NF relációs sémának valamennyi kulcsa egyszerű, akkor a séma legalább 2NF, ... Q: ...mert az egyszerű kulcsok kizárják, hogy a sémában másodlagos attribútumok legyenek. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha másodlagos attribútum egy kulcstól részlegesen függ, akkor tranzitívan is függ tőle, ... Q: ...ezért ha egy séma nem 2NF, akkor 3NF sem lehet. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Az, hogy egy A és B egyedhalmazok közötti K kapcsolattípus funkcionalitása &amp;quot;több-több&amp;quot;, azt jelenti, hogy ... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# K minden egyes kapcsolatpéldánya A több elemét rendeli B több eleméhez.&lt;br /&gt;
# K minden kapcsolatpéldánya pontosan egy A-beli elemet rendel pontosan egy B-beli elemhez, viszont A valamely eleméhez K kapcsolatpéldányai több B-beli elemet rendelhetnek, és B minden eleméhez K kapcsolatpéldányai több A-beli elemet rendelhetnek.&lt;br /&gt;
# A és B között nem engedélyezett több kapcsolattípus definiálása, ezért A és B egyedei között minden egyes kapcsolatot annak szemantikájától függetlenül K valamely kapcsolatpédánya definiálja.&lt;br /&gt;
# A és B egyedhalmazok között K-n kívüli további kapcsolattípusok is engedélyezettek.&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor... P: ...nem fordulhat elő lavina... Q: ...ezért rendszerhiba esetén nincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== A relációalgebrai faalapú heurisztikus lekérdezésoptimalizálás lépései a kanonikus alakból kiindulva: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# vetítések süllyesztése, fa leveleinek átrendezése, join bevezetése, szelekciók süllyesztése.&lt;br /&gt;
# vetítések süllyesztése, fa leveleinek átrendezése, szelekciók süllyesztése, join bevezetése.&lt;br /&gt;
# szelekciók süllyesztése, fa leveleinek átrendezése, join bevezetése, vetítések süllyesztése.&lt;br /&gt;
# szelekciók süllyesztése, fa leveleinek átrendezése, vetítések süllyesztése, join bevezetése.&lt;br /&gt;
&lt;br /&gt;
== A relációs algebra, relációs sor-, ill. relációs oszlopkalkulus közül melyek teljesek? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# Relációs sorkalkulus.&lt;br /&gt;
# Relációs oszlopkalkulus.&lt;br /&gt;
# Relációs algebra.&lt;br /&gt;
# Csak a relációs algebra.&lt;br /&gt;
# Mindegyik felsorolt.&lt;br /&gt;
&lt;br /&gt;
== Adott egy R séma és a sémára illeszkedő r(R) reláció. P: Mivel az R attribútumai között fennálló érdemi funkcionális függések halmaza mindig tartalmazza az eseti funkcionális függéseket is, ... Q: ...ezért az érdemi funkcionális függőségek segítségével teljeskörűen megállapíthatjuk, hogy melyik attribútumokban fordulhat elő redundáns adattárolás funkcionális függés következtében. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legalább 1NF relációs sémának minden attribútuma elsődleges, akkor a séma nem lehet BCNF, ... Q: ...mert BCNF sémák esetén a nemtriviális függések bal oldalán szuperkulcsok, a jobb oldalán pedig másodlagos attribútumok állnak. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának elégséges feltétele,... Q: ...ezért sorosítható ütemezés esetén nem kell tartani az olvasástól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Melyik nem része az alábbiak közül egy relációs lekérdezés végrehajtási tervének? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A relációs műveletekhez rendelt algoritmusok.&lt;br /&gt;
# A műveletek workflow-ja (materializáció vagy pipelining).&lt;br /&gt;
# A kiválasztott relációs műveletek egymásraépülése.&lt;br /&gt;
# Katalógusinformációk az érintett relációkról.&lt;br /&gt;
&lt;br /&gt;
== 1000 bájtos blokkméret mellett mekkora méretű lesz egy 500 vödörből álló hash-állomány vödörkatalógusa, ha egy mutató 5, egy kulcs pedig 10 bájtos? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 2500 Byte&lt;br /&gt;
# 5000 Byte&lt;br /&gt;
# 10000 Byte&lt;br /&gt;
# 7500 Byte&lt;br /&gt;
&lt;br /&gt;
== P: Adatbáziskezelő-rendszerben a médiahiba felbukkanásának esélyét csökkentendő szokásos megoldás az adatok több példányban, különböző diszkeken történő tárolása, ... Q: ...ezért ilyen esetekben a módosítási anomália okozta inkonzisztencia is gyakoribb. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== A heurisztikus optimalizálásnál használt melyik módszer alkalmazható a költségalapú optimalizálás folyamatában? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Descartes-szorzat és szelekció sorozat helyett megfelelő illesztés bevezetése.&lt;br /&gt;
# Projekciók süllyesztése.&lt;br /&gt;
# A szelekciók süllyesztése.&lt;br /&gt;
# Mindegyik alkalmazható a költségalapú optimalizálás során.&lt;br /&gt;
&lt;br /&gt;
== Adott az (R, F) relációs séma, ahol R = ABCDEG, F = { AB -&amp;gt; BC, AC -&amp;gt; D, CD -&amp;gt; EG, CG -&amp;gt; A, G -&amp;gt; D, D -&amp;gt; C}. Melyik függés vezethető le az adott függéshalmazból? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# D -&amp;gt; B&lt;br /&gt;
# G -&amp;gt; B&lt;br /&gt;
# A -&amp;gt; B&lt;br /&gt;
# AC -&amp;gt; B&lt;br /&gt;
# G -&amp;gt; E&lt;br /&gt;
&lt;br /&gt;
== Hány soros ekvivalense létezik az alábbi ütemezésnek, ha LOCK-UNLOCK párok között az adategység értéke írható és olvasható? T1 LOCK A, T1 UNLOCK A, T2 LOCK A, T2 UNLOCK A, T3 LOCK B, T3 UNLOCK B, T1 LOCK B, T1 UNLOCK B, T2 LOCK C, T2 UNLOCK C, T3 LOCK C, T3 UNLOCK C. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 3&lt;br /&gt;
# 2&lt;br /&gt;
# 1&lt;br /&gt;
# 0&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy ütemezés tranzakciói a szigorú kétfázisú protokoll szabályait követik, akkor a kész pontjuk előtt nem írhatnak az adatbázisba, ... Q: ...ezért rendszerhiba esetén nincs szükség REDO-ra, csak UNDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Két reláció természetes illesztésének mevalósításakor... P: ...az összefésüléses join (&amp;quot;sorted merge join&amp;quot;) költsége kisebb lehet, mint az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;) költsége,... Q: ...mert az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;) költségét jelentősen befolyásolhatja, hogy melyik reláció kerül a külső ill. belső ciklusba. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legális ütemezésben a tranzakciók követik a kétfázisú zárolás szabályait, akkor az ütemezés sorosítható, ... Q: ...ezért kétfázisú zárolás mellett rendszerhiba esetén sincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának szükséges és elégséges feltétele, ... Q: ...ezért sorosítható ütemezés esetén nem kell tartani a fantom olvasástól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Adott egy R séma és a sémára illeszkedő r(R) reláció. P: Mivel az r-n fennálló eseti funkcionális függések halmaza mindig tartalmazza az érdemi funkcionális függéseket is,... Q: ...ezért az eseti funkcionális függőségek segítségével további megállapításokat tehetünk, hogy melyik attribútumokban fordulhat még elő redundáns adattárolás. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Az adatbáziskezelő-rendszer háromrétegű modelljében melyik szinthez/réteghez köthető az adatbiztonság megvalósítása? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A logikai adatbázis réteghez.&lt;br /&gt;
# A fizikai adatbázis réteghez.&lt;br /&gt;
# A nézetek szintjéhez.&lt;br /&gt;
# Egyikhez sem.&lt;br /&gt;
&lt;br /&gt;
== Egy relációalgebrai kifejezés kanonikus alakjában milyen műveletek és milyen sorrendben szerepelnek? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# szelekció, projekció, Théta-illesztés&lt;br /&gt;
# szelekció, projekció, természetes illesztés&lt;br /&gt;
# szelekció, projekció, Descartes-szorzat&lt;br /&gt;
# projekció, szelekció, természetes illesztés&lt;br /&gt;
# projekció, szelekció, Descartes-szorzat&lt;br /&gt;
&lt;br /&gt;
== Mennyi az r és s relációk &amp;quot;egymásba ágyazott ciklus&amp;quot; (nested loop join)-alapú illesztésének legjobb becsült költsége, ha egyik reláció sem fér bele az operatív tárba? (nr és ns a relációk rekordjainak, br és bs pedig a relációk blokkjainak számát jelölik.) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# br + bs&lt;br /&gt;
# nr * br + bs&lt;br /&gt;
# ns * br + bs&lt;br /&gt;
# ns * br + nr * bs&lt;br /&gt;
# bs * br + bs&lt;br /&gt;
&lt;br /&gt;
== P: a egy relációs sémának több kulcsa is van, akkor van összetett kulcsa is, ... Q: ...ezért egy relációs séma szuperkulcsa nem feltétlenül minimális. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Két kulcs szerinti keresést szeretnénk megvalósítani úgy, hogy az adatokat tartalmazó állománnyal szemben semmilyen rendezettség nem várható el. Milyen struktúrát javasolna erre a célra? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Az adatállományra épített egyetlen sűrű index, amelyre két ritka indexet építünk.&lt;br /&gt;
# Az adatállományra épített két sűrű index, amelyekre egy-egy ritka indexet építünk.&lt;br /&gt;
# Az adatállományra épített egyetlen sűrű index, amelyre ritka indexet építünk, illetve az adatállományra emellett épített további ritka index.&lt;br /&gt;
# Az adatállomáányra közvetlenül épített két ritka index.&lt;br /&gt;
&lt;br /&gt;
== P: A deklaratív lekérdezőnyelven megfogalmazott relációs lekérdezések több lehetséges végrehajtási terv mentén értékelhetők ki,... Q: ...ezért a költségalapú optimalizálás célja: minimalizálni a join műveletek során végrehajtott blokkműveletek számát. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A kiterjesztett ER-modell elemkészletével elkészített ER-diagram relációs adatmodellre leképezhető része mindig leképezhető legfeljebb annyi relációs sémára, amennyi az egyedtípusok és kapcsolattípusok számának összege, ... Q: ...mert az egyedek nem lehetnek többen, mint a relációs modellben a relációk összesített rekordszáma. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy adatbáziskezelő-rendszer feladatai közé tartozik - többek között: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# integritás védelme, adatok értelmezhetőségének biztosítása, adatbiztonság&lt;br /&gt;
# integritás védelme, szinkronizálás, adatbiztonság&lt;br /&gt;
# adatok értelmezhetőségének biztosítása, szinkronizálás, adatbiztonság&lt;br /&gt;
# integritás védelme, szinkronizálás, adatok értelmezhetőségének biztosítása&lt;br /&gt;
&lt;br /&gt;
== Válassza ki a csak tranzakcióhibákat tartalmazó lehetőséget! ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# abort nem-sorosíthatóság miatt, nullával osztás, fantom olvasás, elveszett módosítás&lt;br /&gt;
# abort patt miatt, abort nem-sorosíthatóság miatt, nullával osztás, felhasználói abort&lt;br /&gt;
# abort patt miatt, abort nem sorosíthatóság miatt, piszkos adat olvasása, nem megismételhetó olvasás&lt;br /&gt;
# piszkos adat olvasása, nem megismételhető olvasás, fantom olvasás, elveszett módosítás&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a tranzakciók kész pontjuk előtt nem engedik el a zárakat.&lt;br /&gt;
# a tranzakciók a zárpontjuk előtt elengedhetik a zárakat.&lt;br /&gt;
# a tranzakciók a zárpont után már írhatnak az adatbázisba.&lt;br /&gt;
# egy tranzakció ugyanazt az adategységet többször is zárolhatja.&lt;br /&gt;
&lt;br /&gt;
== Az R(A, B, C, D) és S(A, B, E, ) relációs sémák szerint létrehozott r és s táblákon fogalmaztuk meg az alábbi SQL nyelvű lekérdezést. SELECT * FROM r, s WHERE r.A = s.A ; Melyik relációalgebrai műveletet valósítja meg a lekérdezés az r és s relációk között? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# természetes illesztés&lt;br /&gt;
# vetítés (projekció)&lt;br /&gt;
# metszet&lt;br /&gt;
# unió&lt;br /&gt;
# Théta-illesztés&lt;br /&gt;
&lt;br /&gt;
== P: A figyelmeztető protokoll szabályait követő tranzakciókból álló legális ütemezések esetén zárkonfliktus nem fordulhat elő, ... Q: ...mert az ilyen ütemezések esetén a sorosíthatóság garantált. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Egy relációs séma pontosan akkor BCNF, ha minden nemtriviális függés bal oldalán szereplő attribútumok értéke minden, a sémára illeszkedő relációban egyedi,... Q: ...ezért az ilyen sémákra illeszkedő relációkban funkcionális függés miatt redundáns adattárolás sehol nem fordulhat elő. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy ER-diagramon adott két egyedhalmaz, A és B. A attribútumtípusainak száma 18. B attribútumtípusainak száma 13. A-nak egyetlen összetett, 9 db attribútumtípus által alkotott kulcsa van, míg B-nek szintén egyetlen, összetett, 5 db attribútumtípus által alkotott kulcsa. C gyenge egyedhalmaznak egyetlen, 7 darab attribútumtípus által alkotott kulcsa van. C-t ezen kívül A és B egyedhalmazzal egy-egy determináló kapcsolattípus köti össze. Hány elemű lesz C relációs séma kulcsa, miután a fentiekben leírt ER-diagramot relációs sémákra képezzük le? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# 7&lt;br /&gt;
# 14&lt;br /&gt;
# 21&lt;br /&gt;
# 28&lt;br /&gt;
&lt;br /&gt;
== A sorted merge join algoritmus a join attribútumok szerint rendezett r és s relációk között &amp;lt;válasz&amp;gt; ahol br és bs a relációk blokkjainak számát jelöli... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# legfeljebb br + bs blokkművelettel megvalósítható, ...&lt;br /&gt;
# legalább br + bs blokkművelettel valósítható meg, ...&lt;br /&gt;
# pontosan br + bs blokkművelettel valósítható meg, ...&lt;br /&gt;
# egyik sem.&lt;br /&gt;
&lt;br /&gt;
== Két reláció természetes illesztésének megvalósításakor P: a blokk-alapú egymásba ágyazott ciklikus illesztés (&amp;quot;block nested loop&amp;quot;) költsége kisebb lehet, mint az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;)... Q: ...mert kevesebb rekordpár illeszkedés-vizsgálatára van szükség az algoritmus futása során. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Egy gyenge egyedhalmaz elemeinek azonosításához nem elég egy gyenge egyedhalmaz kulcsa,... Q: ...ezért a gyenge egyedhalmaz mindig specializált egyedhalmaz. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg az egyetlen helyes választ! Adott egy X -&amp;gt; Y funkcionális függés. Ekkor: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# X függ Y-tól.&lt;br /&gt;
# X értéke ismeretében Y értéke mindig megadható.&lt;br /&gt;
# Az X értéke meghatározza Y értékét.&lt;br /&gt;
# Y értéke ismeretében X értéke mindig megadható.&lt;br /&gt;
&lt;br /&gt;
== Mely igaz az alábbiak közül? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Ha egy ütemezés sorosítható, akkor lehet olyan időpillanat, amikor a várakozási gráfban irányított kör van.&lt;br /&gt;
# Ha egy ütemezés sorosítható, akkor nincs olyan időpillanat, amikor a várakozási gráfban irányított kör van.&lt;br /&gt;
# Ha a várakozási gráf egyetlen időpillanatban sem tartalmaz irányított kört, akor az ütemezés sorosítható.&lt;br /&gt;
# Ha a várakozási gráf valamely időpillanatban tartalmaz irányított kört, akkor az ütemezés nem sorosítható.&lt;br /&gt;
&lt;br /&gt;
==  A következőket tudjuk egy B* fáról és annak tartalmáról: A fa elágazási tényezője 5; Egy blokkba 3 adatrekord fér el; Egy blokk elérése 5 ms-ig tart; A B*-fa egyetlen részét se tároljuk a memóriában; Egy kulcsalapú egyenlőségi keresés átlagos ideje 20 ms; Kérdés: legfeljebb hány adat rekord lehet a fában jelenleg? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 75&lt;br /&gt;
# 81&lt;br /&gt;
# 125&lt;br /&gt;
# 375&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:2021_jan_info_zv_algo_keresofa.png&amp;diff=205070</id>
		<title>Fájl:2021 jan info zv algo keresofa.png</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:2021_jan_info_zv_algo_keresofa.png&amp;diff=205070"/>
		<updated>2023-12-12T13:57:16Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;2021 januári mérnökinfó záróvizsga algoritmusok rész bináris keresőfa kép&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Adatb%C3%A1zis&amp;diff=205068</id>
		<title>Záróvizsga kvíz - Adatbázis</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Adatb%C3%A1zis&amp;diff=205068"/>
		<updated>2023-12-12T10:18:10Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: /* Az üzemanyaggal történő visszaélések visszaszorítására egy cég úgy dönt, hogy kimutatásokat fog készíteni arról, hogy a cég mely járművébe melyik dolgozó hol és mennyit tankol. A dolgozók minden műszak elején teli tankkal veszik át a jármúveket, és a múszak végén megtankolva kell azokat leadniuk a telephelyen, így a tankolásmennyiségből kikövetkeztethető, hogy ki mennyi üzemanyagot használt, és hogy az illető az adott autóba melyik benzinkúton tankolt. (2022 jun) */ picture size&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Kvízoldal&lt;br /&gt;
|cím=ZVAdatb|pontozás=-&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Egy adatbázis-kezelő rendszer szigorú tranzakciós protokollt és egyszerű zármodellt (tranzakciós modellt) használ. Az alábbi állítások közül melyik nem helyes? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A zárkezelés kétfázisú (2PL) lesz.&lt;br /&gt;
# Nem fordulhat elő lavina.&lt;br /&gt;
# Naplózás esetén nem lesz szükség undo-ra a helyreállításhoz.&lt;br /&gt;
# A zárak a commit (kész) pont után felszabadíthatók&lt;br /&gt;
&lt;br /&gt;
== Melyik NEM fejezhető ki SQL lekérdezések segítségével a halmazalgebra alábbi műveletei közül? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# metszetképzés&lt;br /&gt;
# Descartes-szorzat&lt;br /&gt;
# komplementer-képzés&lt;br /&gt;
# különbségképzés&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, hogy a keresés költségének nagyságrendjére vonatkozó alábbi 1), 2), 3), 4), 5), 6) állítások közül melyek igazak, ha az állományt B*-fában tároljuk! A költséget a blokkműveletek számával mérjük. (2023 jun) ==&lt;br /&gt;
# A keresés költsége lineárisan nő a fa magasságával&lt;br /&gt;
# A keresés költsége logaritmikusan nő a fa magasságával&lt;br /&gt;
# A keresés költsége lineárisan aránylik az elágazási tényezőhöz&lt;br /&gt;
# A keresés költsége logaritmikusan aránylik az elágazási tényezőhöz&lt;br /&gt;
# Az elemek beszúrási sorrendjének nincs hatása a keresés költségére&lt;br /&gt;
# Az elemek beszúrási sorrendjének van hatása a keresés költségére&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# 1), 4), 5)&lt;br /&gt;
# 2), 3), 6)&lt;br /&gt;
# 2), 4), 6)&lt;br /&gt;
# 1), 4), 6)&lt;br /&gt;
# 1), 3), 6)&lt;br /&gt;
# 2), 4), 5)&lt;br /&gt;
&lt;br /&gt;
== Az r és s relációk természetes illesztését egymásba ágyazott ciklikus illesztéssel (nested loop join) végezzük. A két állomány rendre b és b számú blokkból áll, illetve n és n rekordot tartalmaz. (2023 jun) ==&lt;br /&gt;
Az alábbi lehetőségek közül melyik lehet a join blokkműveletek számában mért költsége a legrosszabb esetben, ha a relációknak csak egy- egy blokkja fér a memóriába?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=6}}&lt;br /&gt;
# &amp;lt;math&amp;gt;n_r + n_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_s + b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r + b_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r + n_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;n_r * n_s&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== A következő ábrák közül melyik nem szerepelhet ER-diagram részeként? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid1.png|keretnélküli]]&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid 2.png|keretnélküli]]&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid 3.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
== Adott egy séma és az attribútumai között értelmezett funkcionális függések halmaza. Tudjuk, hogy a nemtriviális függések bal oldalán található attribútum(halmaz)on a rekordok értéke egyedi. Ekkor (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a sémára illeszkedő egyetlen adathalmazban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# lehet olyan, a sémára illeszkedő adathalmaz, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# van olyan, a sémára illeszkedő adathalmaz, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedő egyetlen adathalmazban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
&lt;br /&gt;
== A válaszlehetőségek közül melyik a csatolt ER-diagram legpontosabb relációs leképezése? (2023 jun) ==&lt;br /&gt;
&lt;br /&gt;
[[Fájl:2023 június mérnökinformatikus záróvizsga Adatbázisok ER sémadekompozíció 1.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# A(a, b, c), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol A kulcsa a és b együtt, és A-ban b idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt, valamint K-ban a és b is idegen kulcs&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b, c, d), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt és K mind a négy attribútuma egyenként idegen kulcs is.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), B(a, b, d), ahol B kulcsa a és b együtt, és B-ben a idegen kulcs.&lt;br /&gt;
&lt;br /&gt;
== Időbélyeges tranzakciókezelés esetén melyik állítás NEM helyes? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy adott ütemezésnek mindig van soros ekvivalense (a tranzakciók időbélyegei szerinti növekvő sorrendű).&lt;br /&gt;
# Szigorú protokoll megvalósításához az időbélyegek mellett zárak is szükségesek.&lt;br /&gt;
# Egy adott ütemezésnek akár több soros ekvivalense is lehet.&lt;br /&gt;
# Egy adott ütemezésnek lehet soros ekvivalense.&lt;br /&gt;
&lt;br /&gt;
== Az SQL lekérdezésekben a &amp;quot;SELECT DISTINCT&amp;quot; az ismétlődéseket szűri az eredményhalmazból. A relációs algebrában hogyan valósítható meg ez a művelet? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Nincs rá szükség, mert a relációs algebra halmazokkal dolgozik, ahol nem szerepelnek ismétlődések.&lt;br /&gt;
# Az unió vagy a metszet műveleteket kell használni, ha követelmény az ismétlődések szűrése.&lt;br /&gt;
# A természetes illesztés alkalmas erre, hiszen az az azonos nevű attribútumokat csak egyszer adja vissza.&lt;br /&gt;
&lt;br /&gt;
== Egy adatállományt vödrös hash szervezéssel tárolunk. A következőket tudjuk az állományról: (2023 jun) ==&lt;br /&gt;
# Egy rekord egy blokknyi helyet foglal el.&lt;br /&gt;
# Az alkalmazott hash függvény: &#039;k mod 5&#039;, ahol a &#039;k&#039; a kulcsot jelenti.&lt;br /&gt;
# A vödrös hash kezdetben üres.&lt;br /&gt;
# A hashtábla elfér az operatív tárban.&lt;br /&gt;
A beszúrt rekordok kulcsai a következők: 5, 7, 3, 9, 10, 1, 4, 7, 19.&lt;br /&gt;
Hány blokkműveletet fog a rendszer végezni, ha azon rekordot keressük, amelynek kulcsa 24?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 2&lt;br /&gt;
# 1&lt;br /&gt;
# 0&lt;br /&gt;
# 3&lt;br /&gt;
&lt;br /&gt;
== Melyik állítás igaz? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legalacsonyabb normál formája 1NF, ha nincs másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legmagasabb normál formája 1NF, ha van másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legalacsonyabb normál formája 3NF, ha van másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legmagasabb normál formája 3NF, ha nincs másodlagos attribútuma.&lt;br /&gt;
&lt;br /&gt;
== Egy állomány tárolása során két merevlemez közül lehet választani: (2023 jan) ==&lt;br /&gt;
* Az &amp;quot;A&amp;quot; lemeznél a blokkméret 4000 byte, egy blokkművelet ideje 10 ms&lt;br /&gt;
* Az &amp;quot;B&amp;quot; lemeznél a blokkméret 12000 byte, egy blokkművelet ideje 20 ms. A tárolni kívánt rekordok mérete lehetővé teszi, hogy a blokkokat mindkét esetben veszteség nélkül használjuk.&lt;br /&gt;
Melyik lemezt válasszuk, ha csak lineáris keresést kell támogatni?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A &amp;quot;B&amp;quot;-t kell választani, mert mindig jobb a nagyobb blokkméret, mint a kisebb.&lt;br /&gt;
# Az &amp;quot;A&amp;quot;-t kell választani, mert ott gyorsabb az egyes blokkok elérése.&lt;br /&gt;
# Az &amp;quot;A&amp;quot;-t kell választani, mert ugyan 3-szor több blokkot kell használni, de ezt ellensúlyozza a hozzáférési sebesség felezése.&lt;br /&gt;
# A &amp;quot;B&amp;quot;-t kell választani, mert harmadannyi blokkot kell használni, ami jobban gyorsítja a keresést, mint az egyes blokkok hozzáférési sebességének duplázódása.&lt;br /&gt;
&lt;br /&gt;
== Hány eleme lehet C-nek, ha A 10, B pedig 50 elemű? (2023 jan) ==&lt;br /&gt;
&lt;br /&gt;
[[Fájl:Info zv 2023 jan adatb er 1.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Legalább 0, legfeljebb 500&lt;br /&gt;
# Legalább 0, legfeljebb 50&lt;br /&gt;
# Legalább 10, legfeljebb 50.&lt;br /&gt;
# Legalább 0, legfeljebb 10&lt;br /&gt;
&lt;br /&gt;
== Adatbázisunkban tárolnánk, hogy légitársaságunk egyes repülőgépeire melyik pilótánknak van típusjogosítása, illetve hogy az egyes gépek melyik járatokon üzemelnek jelenleg. Melyik ER-modell felel meg a leírtaknak? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, egy bináris kapcsolattípus a Pilóta és a Repülőgép között és egy bináris kapcsolattípus a Repülőgép és a Járat között.&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, köztük egy ternáris kapcsolattípus.&lt;br /&gt;
# Egy Repülőgép gyenge egyedhalmaz, amelyet a Pilóta és a Járat egyedhalmazok determinálnak.&lt;br /&gt;
# Egy Repülőgép kapcsolattípus, amely a Pilóta egyedhalmazt és a Járat egyedhalmazt köti össze.&lt;br /&gt;
&lt;br /&gt;
== Mi nem jellemző a fa protokollra? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Zár bármikor, bárhonnan eltávolítható.&lt;br /&gt;
# Zár - az elsőt kivéve - csak akkor helyezhető el egy csomóponton, ha a szülőcsomóponton is tart fenn zárat a tranzakció.&lt;br /&gt;
# A tranzakciók tehetik az első zárjukat a fa gyökerére is.&lt;br /&gt;
# A fa protokoll szerinti tranzakciók kétfázisúak.&lt;br /&gt;
&lt;br /&gt;
== A relációs lekérdezések végrehajtásának heurisztikus optimalizálása során az alábbiak közül melyik NEM történik (Süllyesztés alatt azt értjük, amikor a relációalgebrai fa átalakítása során az adott művelet a gyökércsomóponttól a levélcsomópontok irányába mozdul el.) (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Descartes-szorzások süllyesztése&lt;br /&gt;
# Szelekciók süllyesztése.&lt;br /&gt;
# Levélcsomópontok átrendezése&lt;br /&gt;
# Projekciók süllyesztése.&lt;br /&gt;
&lt;br /&gt;
== Az SQL SELECT utasítás melyik része nem fejezhető ki relációs algebrával az alábbiak közül? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# GROUP BY&lt;br /&gt;
# FROM ... NATURAL JOIN ...&lt;br /&gt;
# WHERE&lt;br /&gt;
# SELECT DISTINCT&lt;br /&gt;
&lt;br /&gt;
== Egy adatállomány rekordjaira ritka indexet építettek: (2023 jan) ==&lt;br /&gt;
* Az adatrekordok és az indexrekordok egyaránt teljesen kitöltik a blokkokat&lt;br /&gt;
* Egy adatrekord 100 Byte&lt;br /&gt;
* Összesen 100000 adatrekordot tárolunk&lt;br /&gt;
* Az adatállomány blocking faktora 100&lt;br /&gt;
* Az indexállomány blocking faktora 400&lt;br /&gt;
* A mutató mérete 10 byte&lt;br /&gt;
* Egy blokk elérési ideje 15 ms&lt;br /&gt;
&lt;br /&gt;
Mekkora a kulcs mérete?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# 5 Byte&lt;br /&gt;
# 10 Byte&lt;br /&gt;
# 15 Byte&lt;br /&gt;
# 20 Byte&lt;br /&gt;
&lt;br /&gt;
== Milyen hiba ellen nem véd a szigorú 2PL (kétfázisú zárolás) protokoll? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Abort az operatív tár sérülése miatt.&lt;br /&gt;
# Abort patt miatt.&lt;br /&gt;
# Abort nem-sorosíthatóság miatt.&lt;br /&gt;
# Felhasználói abort.&lt;br /&gt;
&lt;br /&gt;
== Mit jelent a relációs adatbázis katalógusinformációi között szereplő kiválasztási kardinalitás (selection cardinality) az SC(A, r) formában? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# Azon blokkok átlagos száma, amelyeket be kell olvasni az r relációból a keresés során az A attribútumra felírt egyenlőségi feltétel alapú szelekció esetén.&lt;br /&gt;
# Az r reláció A attribútumára időegység alatt végrehajtott kiválasztás műveletek (szelekciók) átlagos száma.&lt;br /&gt;
# Azon rekordok átlagos száma az r relációban, amelyek kielégítenek egy egyenlőségi feltételt az A attribútumra, feltéve, hogy legalább egy rekord kielégíti ezt az egyenlőségi feltételt.&lt;br /&gt;
# Az r reláció A attribútumában található különböző értékek száma.&lt;br /&gt;
&lt;br /&gt;
== Legfeljebb mekkora lehet két reláció természetes illesztésének rekordszáma, ha az egyik rekordszáma n, a másik rekordszáma m? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# max (n, m)&lt;br /&gt;
# n * m&lt;br /&gt;
# n + m&lt;br /&gt;
# min(n, m)&lt;br /&gt;
&lt;br /&gt;
== Melyik állítás igaz? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Egy relációs sémának a legmagasabb normál formája 2NF, ha nincs másodlagos attribútuma&lt;br /&gt;
# Egy relációs sémának a legmagasabb normál formája 3NF, ha minden attribútuma elsődleges&lt;br /&gt;
# Egy relációs sémának lehet minden attribútuma másodlagos.&lt;br /&gt;
# Egy relációs sémának a legalacsonyabb normál formája 3NF, ha nincs másodlagos attribútuma&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyik NEM szerepel a relációkra vonatkozó katalógus-információk között, amely a végrehajtási terv készítését támogatja? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# A reláció rekordjaiban a mezők száma.&lt;br /&gt;
# A reláció egy rekordjának mérete.&lt;br /&gt;
# A reláció rekordjainak száma.&lt;br /&gt;
# A relációban levő rekordokat tartalmazó blokkok száma.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyiket nem befolyásolja a keresési kulcs mérete? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A nested loop join algoritmus lépésszáma&lt;br /&gt;
# Keresés költsége heap szervezés esetén&lt;br /&gt;
# &amp;lt;math&amp;gt;B^{*}&amp;lt;/math&amp;gt;-fa magassága&lt;br /&gt;
# Hash tábla mérete&lt;br /&gt;
&lt;br /&gt;
== Az SQL SELECT utasítás melyik része felel meg leginkább a relációalgebrai projekció (vetítés) műveletnek? (2022 jun) ==&lt;br /&gt;
A válaszadás során tételezzük fel, hogy a lekérdezés egyetlen táblából dolgozik és a tábla egyetlen kulcsa sem jelenik meg az eredményben!&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# FROM&lt;br /&gt;
# SELECT DISTINCT&lt;br /&gt;
# ORDER BY&lt;br /&gt;
# WHERE&lt;br /&gt;
# SELECT&lt;br /&gt;
&lt;br /&gt;
== Tudjuk, hogy az R relációs sémán fennálló összes nemtriviális függés esetén a függés bal oldalán található attribútum(halmaz) értéke egyedi minden, a sémára illeszkedő relációban. Ekkor (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# egyik sem helyes a többi állítás közül.&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedổ egyetlen relációban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
# van olyan, a sémára illeszkedő reláció, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
&lt;br /&gt;
== Adott az (R, F) séma, ahol R=ABCGWXYZ, F=(XY → BGYZ, AY → CG, C → W, B → G) Melyik függés vezethető le az adott függéshalmazból? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# ABGY → GX&lt;br /&gt;
# ACYZ → W&lt;br /&gt;
# AB → XG&lt;br /&gt;
# BXY → GXW&lt;br /&gt;
&lt;br /&gt;
== Egy B*-fáról a következőket tudjuk: (2022 jun) ==&lt;br /&gt;
* Az adatokat növekvő sorrendben tároljuk&lt;br /&gt;
* Az adatblokkok száma 402&lt;br /&gt;
* Az adatrekordok mérete 200 byte&lt;br /&gt;
* Egy blokk mérete nettó 2000 byte&lt;br /&gt;
* A kulcsok mérete 50 byte&lt;br /&gt;
* Egy mutató 50 byte&lt;br /&gt;
* A kulcsra vonatkozó szelekció kardinalitása (SC) 5 .&lt;br /&gt;
Ideális esetben legkevesebb hány blokkot kell kiolvasnunk egy kulcsértékre vonatkozó egyenlőség alapú keresésnél?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 4&lt;br /&gt;
# 9&lt;br /&gt;
# 2&lt;br /&gt;
# 3&lt;br /&gt;
&lt;br /&gt;
== Az üzemanyaggal történő visszaélések visszaszorítására egy cég úgy dönt, hogy kimutatásokat fog készíteni arról, hogy a cég mely járművébe melyik dolgozó hol és mennyit tankol. A dolgozók minden műszak elején teli tankkal veszik át a jármúveket, és a múszak végén megtankolva kell azokat leadniuk a telephelyen, így a tankolásmennyiségből kikövetkeztethető, hogy ki mennyi üzemanyagot használt, és hogy az illető az adott autóba melyik benzinkúton tankolt. (2022 jun) ==&lt;br /&gt;
[[Fájl:2022 jun info zv adatb ER 1.png|keretnélküli|700px]]&lt;br /&gt;
&lt;br /&gt;
Milyen módosítást kell tenni a fenti ER-diagramon, amely után a modellből készült adatbázis alkalmas lesz a fent említett riportokhoz szükséges adatok tárolásához?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Törölni a Feltölt kapcsolattípust&lt;br /&gt;
# Törölni a Feltölt, Telik és Látogat kapcsolattípusokat&lt;br /&gt;
# Törölni a Látogat kapcsolattípust&lt;br /&gt;
# Törölni a Telik kapcsolattípust&lt;br /&gt;
# Törölni a Tankol kapcsolattípust&lt;br /&gt;
&lt;br /&gt;
== A válaszlehetőségek közül melyik a csatolt ER-diagram legpontosabb relációs leképezése? (2022 jun) ==&lt;br /&gt;
[[Fájl:2022 jun info zv adatb er dekomp.png|keretnélküli]]&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), B(a, b, d), ahol B kulcsa a és b együtt, és B-ben a idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt, valamint K-ban a és b is idegen kulcs&lt;br /&gt;
# A(a, b, c), B(b, d), ahol A kulcsa a és b együtt, és A-ban b idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b, c, d), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt és K mind a négy attribútuma egyenként idegen kulcs is.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, hogy az alábbiak közül mely állítás(ok) igazak a keresési költségekkel kapcsolatban, ha az adatokat B*-fában tároljuk! A költséget a blokkműveletek számával mérjük. (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,4}}&lt;br /&gt;
# A költség logaritmikusan arányos az adatrekordok számával.&lt;br /&gt;
# A költség lineárisan arányos az index struktúra elágazási tényezőjével.&lt;br /&gt;
# A költség lienárisan arányos az index blokkok számával.&lt;br /&gt;
# A költség lineárisan arányos a fa magasságával.&lt;br /&gt;
&lt;br /&gt;
== Adott két tábla, T1 (oszlopai: A és B), és T2 (oszlopai: B és C). Válassza ki az alábbi lekérdezés eredményére vonatkozó állítások közül azt, amelyik biztosan igaz! (2022 jan) ==&lt;br /&gt;
Feltételezzük, hogy a lekérdezés szintaktikailag helyes és a táblák oszlopait is helyesen hivatkozza, a táblákban nem szerepel NULL érték, és&lt;br /&gt;
az eredmény oszlopait R1, R2, R3 és R4 néven nevezzük.&lt;br /&gt;
&amp;lt;pre&amp;gt;SELECT T1.A AS R1, T1.B AS R2, T2.B AS R3, T2.C AS R4&lt;br /&gt;
FROM T1 LEFT JOIN T2 ON (T1.B = T2.B) ;&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Az eredményben T1 minden rekordja szerepel.&lt;br /&gt;
# Az eredményben T2 minden rekordja szerepel.&lt;br /&gt;
# Az eredmény minden rekordjában megegyezik R2 és R3 mezők értéke.&lt;br /&gt;
# R4 mezőben nem fordul elő NULL érték.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyiket NEM befolyásolja a keresési kulcs mérete? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A nested loop join algoritmus lépésszáma&lt;br /&gt;
# Vödrös hash tábla mérete&lt;br /&gt;
# Keresés költsége heap szervezés esetén&lt;br /&gt;
# B*-fa magassága&lt;br /&gt;
&lt;br /&gt;
== Válassza ki az egyetlen igaz állítást! (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Egy ER-modell determináló kapcsolathalmazának kardinalitása lehet több-több.&lt;br /&gt;
# Egy attribútumként jelzett idegen kulcs több egyedhalmazhoz is tartozhat az ER-modellben.&lt;br /&gt;
# Egy ER-modell gyenge egyedhalmazához mindig fel kell venni legalább egy idegen kulcsot, mint attribútumot az ER modellben.&lt;br /&gt;
# Egy ER-modell gyenge egyedhalmazához mindig fel kell venni legalább egy determináló kapcsolathalmazt.&lt;br /&gt;
&lt;br /&gt;
== Egy gépjárműnyilvántartásban két tábla tárolja az autók és tulajdonosaik adatait, melyek sémái a következők: (2022 jan) ==&lt;br /&gt;
Tulajdonos(személyi_szám, név, születési_dátum, anyja_neve), kulcs: személyi szám&lt;br /&gt;
Gépjármű(rendszám, típus, márka, szín, gyártás_éve, tulajdonos_személyi_száma), kulcs: rendszám&lt;br /&gt;
&lt;br /&gt;
A táblák n db személy és m db gépjármű adatait tárolják, és egy személynek átlagosan 2 db gépjárműve van.&lt;br /&gt;
&lt;br /&gt;
Az alábbi SQL lekérdezés eredményrekordjainak számát melyik kifejezés becsüli legjobban?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;SELECT személyi_szám, név, rendszám, típus, márka&lt;br /&gt;
FROM tulajdonos, gépjármű&lt;br /&gt;
WHERE tulajdonos.személyi_szám = gépjármű.tulajdonos_személyi_száma ;&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# n + m&lt;br /&gt;
# 2 * m&lt;br /&gt;
# n&lt;br /&gt;
# m&lt;br /&gt;
# n * m&lt;br /&gt;
&lt;br /&gt;
== Legyen r(R) egy adott reláció, melynek sémája R(A,B,C,D). Tudjuk, hogy t, t* r(R) t[A]=t*[A] esetén t[B]=t*[B]. Ekkor: (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# az A-tól a B funkcionálisan függ.&lt;br /&gt;
# a fentiek közül egyik válasz sem helyes.&lt;br /&gt;
# az A-tól a B funkcionálisan függhet.&lt;br /&gt;
# az A a B-től funkcionálisan függ.&lt;br /&gt;
&lt;br /&gt;
== A felsoroltak közül melyik NEM szerepel egy relációs lekérdezés végrehajtási tervében? Feltételezzük, hogy relációalgebrai reprezentációval dolgozik a vizsgált adatbázis-kezelő rendszer. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A végrehajtás során használt workflow-stratégia (materializáció vagy pipelining).&lt;br /&gt;
# A használt relációalgebrai műveletek és azok hierarchiája a lekérdezésben.&lt;br /&gt;
# A végrehajtás során használandó indexek neve.&lt;br /&gt;
# Az eredmény várható rekordszáma.&lt;br /&gt;
# A használt relációalgebrai műveletek végrehajtásához rendelt algoritmusok.&lt;br /&gt;
# Az input relációk.&lt;br /&gt;
&lt;br /&gt;
== Melyik az egyetlen helyes válasz? Tudjuk, hogy az R relációs sémára illeszkedő minden relációban az összes nemtriviális függés esetén a függés bal oldalán található attribútum(halmaz) értéke egyedi. Ekkor... (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
# van olyan, a sémára illeszkedő reláció, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# egyik sem helyes a többi állítás közül.&lt;br /&gt;
&lt;br /&gt;
== Adottak az A és B egyedhalmazok, valamint a köztük definiált bináris kapcsolathalmaz K, melynek kardinalitása több-több. Tegyük fel, hogy A-ban 10, B-ben pedig 20 egyed van. Legfeljebb hány kapcsolat lehet K-ban? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# 30&lt;br /&gt;
# 200&lt;br /&gt;
# 10&lt;br /&gt;
# 20&lt;br /&gt;
&lt;br /&gt;
== Két attribútum (A, B) között szeretnénk a funkcionális függőségi kapcsolatot megállapítani, azonban ezen attribútumoknak az értékei még nem ismertek. Lehetséges-e a kérdésre választ adni? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igen.&lt;br /&gt;
# Nem.&lt;br /&gt;
# Enne a kérdésnek semmi értelme.&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor: P: A tranzakciók a kész pontjuk előtt nem engedik el a zárakat... Q: ...ezért rendszerhiba esetén nincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának szükséges és elégséges feltétele,... Q: ...ezért sorosítható ütemezés esetén nem kell tartani a pattoktól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy relációs sémának... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
# ...a legmagasabb normálformája 3NF, ha minden attribútuma elsődleges.&lt;br /&gt;
# ...a legmagasabb normálformája 2NF, ha nincs másodlagos attribútum.&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
&lt;br /&gt;
== Egy relációs sémának... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
# ...a legalacsonyabb normálformája 3NF, ha nincs más másodlagos attribútum.&lt;br /&gt;
# ...a legmagasabb normálformája 2NF, ha nincs másodlagos attribútum.&lt;br /&gt;
# ...lehet, hogy minden attribútuma másodlagos.&lt;br /&gt;
&lt;br /&gt;
== A funkcionális függés... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# soha nem értékfüggetlen kényszer.&lt;br /&gt;
# mindig értékfüggő kényszer.&lt;br /&gt;
# lehet értékfüggő kényszer.&lt;br /&gt;
# mindig értékfüggetlen kényszer.&lt;br /&gt;
&lt;br /&gt;
== P: A kiterjesztett ER-modell elemkészletében szereplő gyenge egyedhalmaz nem képezhető le a relációs adatmodellre,... Q: ...mert a reláció egy halmaz, így a benne szereplő rekordok egyedisége definíciószerűen elvárt. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Adott két tábla, T1 (oszlopai: A és B), és T2 (oszlopai: B és C). Válassza ki az alábbi lekérdezés eredményére vonatkozó állítások közül azt, amelyik biztosan igaz! Feltételezzük, hogy a lekérdezés szintaktikailag helyes és a táblák oszlopait is helyesen hivatkozza, a táblákban nem szerepel NULL érték, és az eredmény oszlopait R1, R2, R3 és R4 néven nevezzük. SELECT T1.A AS R1, T1.B AS R2, T2.B AS R3, T2.C AS R4 FROM T1 LEFT JOIN T2 ON (T1.B = T2.B) ; ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Az eredményben T1 minden rekordja szerepel.&lt;br /&gt;
# Az eredmény minden rekordjában megegyezik R2 és R3 mezők értéke.&lt;br /&gt;
# R4 mezőben nem fordul elő NULL érték.&lt;br /&gt;
# Az eredményben T2 minden rekordja szerepel.&lt;br /&gt;
&lt;br /&gt;
== P: Az imperatív lekérdezőnyelven megfogalmazott relációs lekérdezések több lehetséges végrehajtási terv mentén értékelhetők ki, ... Q: ...ezért a költség alapú optimalizálás célja: minimalizálni a join műveletek költségét. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy adatbázisban vödrös hashelést alkalmaznak a rekordok tárolására. Az alábbiak közül mi(k) okozhatják, hogy az egyes vödrökben tárolt rekordok elérési ideje jelentősen eltérhet egymástól (több helyes válasz is lehetséges, a helytelen válasz pontlevonással jár)? ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A hash függvény helytelen megválasztása.&lt;br /&gt;
# Ha sokkal több a törlés, mint a beszúrás.&lt;br /&gt;
# A rekordok kulcsértékeinek nem egyenletes eloszlása.&lt;br /&gt;
# Az adatok elhelyezkedése a merevlemezen.&lt;br /&gt;
# Ha sokkal több a beszúrás, mint a törlés.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy relációs lekérdező nyelv képes az unió, különbség, Descartes-szorzat, vetítés és kiválasztás műveleteit kifejezni, akkor relációsan teljesnek nevezik, ... Q: ...mert az ilyen lekérdező nyelvek segítségével egy relációs adatbázisból mindent le tudunk kérdezni. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== 500 bájtos blokkméret mellett mekkora méretű lesz egy 10 vödörből álló hash állomány vödörkatalógusa, ha egy mutató 5, egy kulcs pedig 10 bájtos? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 500 Byte&lt;br /&gt;
# 2000 Byte&lt;br /&gt;
# 1500 Byte&lt;br /&gt;
# 1000 Byte&lt;br /&gt;
&lt;br /&gt;
== P: Mivel minden tranzitív funkcionális függés egyúttal részleges függés is, ... Q: ...ezért minden részleges függés tranzitív függés is. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legalább 1NF relációs sémának valamennyi kulcsa egyszerű, akkor a séma legalább 2NF, ... Q: ...mert az egyszerű kulcsok kizárják, hogy a sémában másodlagos attribútumok legyenek. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha másodlagos attribútum egy kulcstól részlegesen függ, akkor tranzitívan is függ tőle, ... Q: ...ezért ha egy séma nem 2NF, akkor 3NF sem lehet. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Az, hogy egy A és B egyedhalmazok közötti K kapcsolattípus funkcionalitása &amp;quot;több-több&amp;quot;, azt jelenti, hogy ... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# K minden egyes kapcsolatpéldánya A több elemét rendeli B több eleméhez.&lt;br /&gt;
# K minden kapcsolatpéldánya pontosan egy A-beli elemet rendel pontosan egy B-beli elemhez, viszont A valamely eleméhez K kapcsolatpéldányai több B-beli elemet rendelhetnek, és B minden eleméhez K kapcsolatpéldányai több A-beli elemet rendelhetnek.&lt;br /&gt;
# A és B között nem engedélyezett több kapcsolattípus definiálása, ezért A és B egyedei között minden egyes kapcsolatot annak szemantikájától függetlenül K valamely kapcsolatpédánya definiálja.&lt;br /&gt;
# A és B egyedhalmazok között K-n kívüli további kapcsolattípusok is engedélyezettek.&lt;br /&gt;
&lt;br /&gt;
== Adott az R(A) séma és a rá illeszkedő r1 reláció. Amennyiben r2 = r1, mit fejez ki a képen látható relációalgebrai kifejezés? r1\ pi r1.A omega r1.A&amp;lt;r2.A(r1xr2) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Üres reláció.&lt;br /&gt;
# r1 legkisebb elemét.&lt;br /&gt;
# r1 legnagyobb és legkisebb elemének halmazát.&lt;br /&gt;
# r1 legnagyobb elemét.&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor... P: ...nem fordulhat elő lavina... Q: ...ezért rendszerhiba esetén nincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== A relációalgebrai faalapú heurisztikus lekérdezésoptimalizálás lépései a kanonikus alakból kiindulva: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# vetítések süllyesztése, fa leveleinek átrendezése, join bevezetése, szelekciók süllyesztése.&lt;br /&gt;
# vetítések süllyesztése, fa leveleinek átrendezése, szelekciók süllyesztése, join bevezetése.&lt;br /&gt;
# szelekciók süllyesztése, fa leveleinek átrendezése, join bevezetése, vetítések süllyesztése.&lt;br /&gt;
# szelekciók süllyesztése, fa leveleinek átrendezése, vetítések süllyesztése, join bevezetése.&lt;br /&gt;
&lt;br /&gt;
== A relációs algebra, relációs sor-, ill. relációs oszlopkalkulus közül melyek teljesek? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# Relációs sorkalkulus.&lt;br /&gt;
# Relációs oszlopkalkulus.&lt;br /&gt;
# Relációs algebra.&lt;br /&gt;
# Csak a relációs algebra.&lt;br /&gt;
# Mindegyik felsorolt.&lt;br /&gt;
&lt;br /&gt;
== Adott egy R séma és a sémára illeszkedő r(R) reláció. P: Mivel az R attribútumai között fennálló érdemi funkcionális függések halmaza mindig tartalmazza az eseti funkcionális függéseket is, ... Q: ...ezért az érdemi funkcionális függőségek segítségével teljeskörűen megállapíthatjuk, hogy melyik attribútumokban fordulhat elő redundáns adattárolás funkcionális függés következtében. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legalább 1NF relációs sémának minden attribútuma elsődleges, akkor a séma nem lehet BCNF, ... Q: ...mert BCNF sémák esetén a nemtriviális függések bal oldalán szuperkulcsok, a jobb oldalán pedig másodlagos attribútumok állnak. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának elégséges feltétele,... Q: ...ezért sorosítható ütemezés esetén nem kell tartani az olvasástól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Melyik nem része az alábbiak közül egy relációs lekérdezés végrehajtási tervének? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A relációs műveletekhez rendelt algoritmusok.&lt;br /&gt;
# A műveletek workflow-ja (materializáció vagy pipelining).&lt;br /&gt;
# A kiválasztott relációs műveletek egymásraépülése.&lt;br /&gt;
# Katalógusinformációk az érintett relációkról.&lt;br /&gt;
&lt;br /&gt;
== 1000 bájtos blokkméret mellett mekkora méretű lesz egy 500 vödörből álló hash-állomány vödörkatalógusa, ha egy mutató 5, egy kulcs pedig 10 bájtos? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 2500 Byte&lt;br /&gt;
# 5000 Byte&lt;br /&gt;
# 10000 Byte&lt;br /&gt;
# 7500 Byte&lt;br /&gt;
&lt;br /&gt;
== P: Adatbáziskezelő-rendszerben a médiahiba felbukkanásának esélyét csökkentendő szokásos megoldás az adatok több példányban, különböző diszkeken történő tárolása, ... Q: ...ezért ilyen esetekben a módosítási anomália okozta inkonzisztencia is gyakoribb. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== A heurisztikus optimalizálásnál használt melyik módszer alkalmazható a költségalapú optimalizálás folyamatában? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Descartes-szorzat és szelekció sorozat helyett megfelelő illesztés bevezetése.&lt;br /&gt;
# Projekciók süllyesztése.&lt;br /&gt;
# A szelekciók süllyesztése.&lt;br /&gt;
# Mindegyik alkalmazható a költségalapú optimalizálás során.&lt;br /&gt;
&lt;br /&gt;
== Adott az (R, F) relációs séma, ahol R = ABCDEG, F = { AB -&amp;gt; BC, AC -&amp;gt; D, CD -&amp;gt; EG, CG -&amp;gt; A, G -&amp;gt; D, D -&amp;gt; C}. Melyik függés vezethető le az adott függéshalmazból? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# D -&amp;gt; B&lt;br /&gt;
# G -&amp;gt; B&lt;br /&gt;
# A -&amp;gt; B&lt;br /&gt;
# AC -&amp;gt; B&lt;br /&gt;
# G -&amp;gt; E&lt;br /&gt;
&lt;br /&gt;
== Hány soros ekvivalense létezik az alábbi ütemezésnek, ha LOCK-UNLOCK párok között az adategység értéke írható és olvasható? T1 LOCK A, T1 UNLOCK A, T2 LOCK A, T2 UNLOCK A, T3 LOCK B, T3 UNLOCK B, T1 LOCK B, T1 UNLOCK B, T2 LOCK C, T2 UNLOCK C, T3 LOCK C, T3 UNLOCK C. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 3&lt;br /&gt;
# 2&lt;br /&gt;
# 1&lt;br /&gt;
# 0&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy ütemezés tranzakciói a szigorú kétfázisú protokoll szabályait követik, akkor a kész pontjuk előtt nem írhatnak az adatbázisba, ... Q: ...ezért rendszerhiba esetén nincs szükség REDO-ra, csak UNDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Két reláció természetes illesztésének mevalósításakor... P: ...az összefésüléses join (&amp;quot;sorted merge join&amp;quot;) költsége kisebb lehet, mint az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;) költsége,... Q: ...mert az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;) költségét jelentősen befolyásolhatja, hogy melyik reláció kerül a külső ill. belső ciklusba. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legális ütemezésben a tranzakciók követik a kétfázisú zárolás szabályait, akkor az ütemezés sorosítható, ... Q: ...ezért kétfázisú zárolás mellett rendszerhiba esetén sincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának szükséges és elégséges feltétele, ... Q: ...ezért sorosítható ütemezés esetén nem kell tartani a fantom olvasástól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Adott egy R séma és a sémára illeszkedő r(R) reláció. P: Mivel az r-n fennálló eseti funkcionális függések halmaza mindig tartalmazza az érdemi funkcionális függéseket is,... Q: ...ezért az eseti funkcionális függőségek segítségével további megállapításokat tehetünk, hogy melyik attribútumokban fordulhat még elő redundáns adattárolás. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Az adatbáziskezelő-rendszer háromrétegű modelljében melyik szinthez/réteghez köthető az adatbiztonság megvalósítása? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A logikai adatbázis réteghez.&lt;br /&gt;
# A fizikai adatbázis réteghez.&lt;br /&gt;
# A nézetek szintjéhez.&lt;br /&gt;
# Egyikhez sem.&lt;br /&gt;
&lt;br /&gt;
== Egy relációalgebrai kifejezés kanonikus alakjában milyen műveletek és milyen sorrendben szerepelnek? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# szelekció, projekció, Théta-illesztés&lt;br /&gt;
# szelekció, projekció, természetes illesztés&lt;br /&gt;
# szelekció, projekció, Descartes-szorzat&lt;br /&gt;
# projekció, szelekció, természetes illesztés&lt;br /&gt;
# projekció, szelekció, Descartes-szorzat&lt;br /&gt;
&lt;br /&gt;
== Mennyi az r és s relációk &amp;quot;egymásba ágyazott ciklus&amp;quot; (nested loop join)-alapú illesztésének legjobb becsült költsége, ha egyik reláció sem fér bele az operatív tárba? (nr és ns a relációk rekordjainak, br és bs pedig a relációk blokkjainak számát jelölik.) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# br + bs&lt;br /&gt;
# nr * br + bs&lt;br /&gt;
# ns * br + bs&lt;br /&gt;
# ns * br + nr * bs&lt;br /&gt;
# bs * br + bs&lt;br /&gt;
&lt;br /&gt;
== P: a egy relációs sémának több kulcsa is van, akkor van összetett kulcsa is, ... Q: ...ezért egy relációs séma szuperkulcsa nem feltétlenül minimális. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Két kulcs szerinti keresést szeretnénk megvalósítani úgy, hogy az adatokat tartalmazó állománnyal szemben semmilyen rendezettség nem várható el. Milyen struktúrát javasolna erre a célra? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Az adatállományra épített egyetlen sűrű index, amelyre két ritka indexet építünk.&lt;br /&gt;
# Az adatállományra épített két sűrű index, amelyekre egy-egy ritka indexet építünk.&lt;br /&gt;
# Az adatállományra épített egyetlen sűrű index, amelyre ritka indexet építünk, illetve az adatállományra emellett épített további ritka index.&lt;br /&gt;
# Az adatállomáányra közvetlenül épített két ritka index.&lt;br /&gt;
&lt;br /&gt;
== P: A deklaratív lekérdezőnyelven megfogalmazott relációs lekérdezések több lehetséges végrehajtási terv mentén értékelhetők ki,... Q: ...ezért a költségalapú optimalizálás célja: minimalizálni a join műveletek során végrehajtott blokkműveletek számát. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A kiterjesztett ER-modell elemkészletével elkészített ER-diagram relációs adatmodellre leképezhető része mindig leképezhető legfeljebb annyi relációs sémára, amennyi az egyedtípusok és kapcsolattípusok számának összege, ... Q: ...mert az egyedek nem lehetnek többen, mint a relációs modellben a relációk összesített rekordszáma. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy adatbáziskezelő-rendszer feladatai közé tartozik - többek között: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# integritás védelme, adatok értelmezhetőségének biztosítása, adatbiztonság&lt;br /&gt;
# integritás védelme, szinkronizálás, adatbiztonság&lt;br /&gt;
# adatok értelmezhetőségének biztosítása, szinkronizálás, adatbiztonság&lt;br /&gt;
# integritás védelme, szinkronizálás, adatok értelmezhetőségének biztosítása&lt;br /&gt;
&lt;br /&gt;
== Válassza ki a csak tranzakcióhibákat tartalmazó lehetőséget! ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# abort nem-sorosíthatóság miatt, nullával osztás, fantom olvasás, elveszett módosítás&lt;br /&gt;
# abort patt miatt, abort nem-sorosíthatóság miatt, nullával osztás, felhasználói abort&lt;br /&gt;
# abort patt miatt, abort nem sorosíthatóság miatt, piszkos adat olvasása, nem megismételhetó olvasás&lt;br /&gt;
# piszkos adat olvasása, nem megismételhető olvasás, fantom olvasás, elveszett módosítás&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a tranzakciók kész pontjuk előtt nem engedik el a zárakat.&lt;br /&gt;
# a tranzakciók a zárpontjuk előtt elengedhetik a zárakat.&lt;br /&gt;
# a tranzakciók a zárpont után már írhatnak az adatbázisba.&lt;br /&gt;
# egy tranzakció ugyanazt az adategységet többször is zárolhatja.&lt;br /&gt;
&lt;br /&gt;
== Az R(A, B, C, D) és S(A, B, E, ) relációs sémák szerint létrehozott r és s táblákon fogalmaztuk meg az alábbi SQL nyelvű lekérdezést. SELECT * FROM r, s WHERE r.A = s.A ; Melyik relációalgebrai műveletet valósítja meg a lekérdezés az r és s relációk között? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# természetes illesztés&lt;br /&gt;
# vetítés (projekció)&lt;br /&gt;
# metszet&lt;br /&gt;
# unió&lt;br /&gt;
# Théta-illesztés&lt;br /&gt;
&lt;br /&gt;
== P: A figyelmeztető protokoll szabályait követő tranzakciókból álló legális ütemezések esetén zárkonfliktus nem fordulhat elő, ... Q: ...mert az ilyen ütemezések esetén a sorosíthatóság garantált. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Egy relációs séma pontosan akkor BCNF, ha minden nemtriviális függés bal oldalán szereplő attribútumok értéke minden, a sémára illeszkedő relációban egyedi,... Q: ...ezért az ilyen sémákra illeszkedő relációkban funkcionális függés miatt redundáns adattárolás sehol nem fordulhat elő. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy ER-diagramon adott két egyedhalmaz, A és B. A attribútumtípusainak száma 18. B attribútumtípusainak száma 13. A-nak egyetlen összetett, 9 db attribútumtípus által alkotott kulcsa van, míg B-nek szintén egyetlen, összetett, 5 db attribútumtípus által alkotott kulcsa. C gyenge egyedhalmaznak egyetlen, 7 darab attribútumtípus által alkotott kulcsa van. C-t ezen kívül A és B egyedhalmazzal egy-egy determináló kapcsolattípus köti össze. Hány elemű lesz C relációs séma kulcsa, miután a fentiekben leírt ER-diagramot relációs sémákra képezzük le? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# 7&lt;br /&gt;
# 14&lt;br /&gt;
# 21&lt;br /&gt;
# 28&lt;br /&gt;
&lt;br /&gt;
== A sorted merge join algoritmus a join attribútumok szerint rendezett r és s relációk között &amp;lt;válasz&amp;gt; ahol br és bs a relációk blokkjainak számát jelöli... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# legfeljebb br + bs blokkművelettel megvalósítható, ...&lt;br /&gt;
# legalább br + bs blokkművelettel valósítható meg, ...&lt;br /&gt;
# pontosan br + bs blokkművelettel valósítható meg, ...&lt;br /&gt;
# egyik sem.&lt;br /&gt;
&lt;br /&gt;
== Két reláció természetes illesztésének megvalósításakor P: a blokk-alapú egymásba ágyazott ciklikus illesztés (&amp;quot;block nested loop&amp;quot;) költsége kisebb lehet, mint az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;)... Q: ...mert kevesebb rekordpár illeszkedés-vizsgálatára van szükség az algoritmus futása során. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Egy gyenge egyedhalmaz elemeinek azonosításához nem elég egy gyenge egyedhalmaz kulcsa,... Q: ...ezért a gyenge egyedhalmaz mindig specializált egyedhalmaz. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg az egyetlen helyes választ! Adott egy X -&amp;gt; Y funkcionális függés. Ekkor: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# X függ Y-tól.&lt;br /&gt;
# X értéke ismeretében Y értéke mindig megadható.&lt;br /&gt;
# Az X értéke meghatározza Y értékét.&lt;br /&gt;
# Y értéke ismeretében X értéke mindig megadható.&lt;br /&gt;
&lt;br /&gt;
== Mely igaz az alábbiak közül? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Ha egy ütemezés sorosítható, akkor lehet olyan időpillanat, amikor a várakozási gráfban irányított kör van.&lt;br /&gt;
# Ha egy ütemezés sorosítható, akkor nincs olyan időpillanat, amikor a várakozási gráfban irányított kör van.&lt;br /&gt;
# Ha a várakozási gráf egyetlen időpillanatban sem tartalmaz irányított kört, akor az ütemezés sorosítható.&lt;br /&gt;
# Ha a várakozási gráf valamely időpillanatban tartalmaz irányított kört, akkor az ütemezés nem sorosítható.&lt;br /&gt;
&lt;br /&gt;
==  A következőket tudjuk egy B* fáról és annak tartalmáról: A fa elágazási tényezője 5; Egy blokkba 3 adatrekord fér el; Egy blokk elérése 5 ms-ig tart; A B*-fa egyetlen részét se tároljuk a memóriában; Egy kulcsalapú egyenlőségi keresés átlagos ideje 20 ms; Kérdés: legfeljebb hány adat rekord lehet a fában jelenleg? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 75&lt;br /&gt;
# 81&lt;br /&gt;
# 125&lt;br /&gt;
# 375&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Adatb%C3%A1zis&amp;diff=205067</id>
		<title>Záróvizsga kvíz - Adatbázis</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Adatb%C3%A1zis&amp;diff=205067"/>
		<updated>2023-12-12T10:15:15Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: /* Egy adatállományt vödrös hash szervezéssel tárolunk. A következőket tudjuk az állományról: (2023 jun) */ typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Kvízoldal&lt;br /&gt;
|cím=ZVAdatb|pontozás=-&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Egy adatbázis-kezelő rendszer szigorú tranzakciós protokollt és egyszerű zármodellt (tranzakciós modellt) használ. Az alábbi állítások közül melyik nem helyes? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A zárkezelés kétfázisú (2PL) lesz.&lt;br /&gt;
# Nem fordulhat elő lavina.&lt;br /&gt;
# Naplózás esetén nem lesz szükség undo-ra a helyreállításhoz.&lt;br /&gt;
# A zárak a commit (kész) pont után felszabadíthatók&lt;br /&gt;
&lt;br /&gt;
== Melyik NEM fejezhető ki SQL lekérdezések segítségével a halmazalgebra alábbi műveletei közül? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# metszetképzés&lt;br /&gt;
# Descartes-szorzat&lt;br /&gt;
# komplementer-képzés&lt;br /&gt;
# különbségképzés&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, hogy a keresés költségének nagyságrendjére vonatkozó alábbi 1), 2), 3), 4), 5), 6) állítások közül melyek igazak, ha az állományt B*-fában tároljuk! A költséget a blokkműveletek számával mérjük. (2023 jun) ==&lt;br /&gt;
# A keresés költsége lineárisan nő a fa magasságával&lt;br /&gt;
# A keresés költsége logaritmikusan nő a fa magasságával&lt;br /&gt;
# A keresés költsége lineárisan aránylik az elágazási tényezőhöz&lt;br /&gt;
# A keresés költsége logaritmikusan aránylik az elágazási tényezőhöz&lt;br /&gt;
# Az elemek beszúrási sorrendjének nincs hatása a keresés költségére&lt;br /&gt;
# Az elemek beszúrási sorrendjének van hatása a keresés költségére&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# 1), 4), 5)&lt;br /&gt;
# 2), 3), 6)&lt;br /&gt;
# 2), 4), 6)&lt;br /&gt;
# 1), 4), 6)&lt;br /&gt;
# 1), 3), 6)&lt;br /&gt;
# 2), 4), 5)&lt;br /&gt;
&lt;br /&gt;
== Az r és s relációk természetes illesztését egymásba ágyazott ciklikus illesztéssel (nested loop join) végezzük. A két állomány rendre b és b számú blokkból áll, illetve n és n rekordot tartalmaz. (2023 jun) ==&lt;br /&gt;
Az alábbi lehetőségek közül melyik lehet a join blokkműveletek számában mért költsége a legrosszabb esetben, ha a relációknak csak egy- egy blokkja fér a memóriába?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=6}}&lt;br /&gt;
# &amp;lt;math&amp;gt;n_r + n_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_s + b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r + b_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r + n_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;n_r * n_s&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== A következő ábrák közül melyik nem szerepelhet ER-diagram részeként? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid1.png|keretnélküli]]&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid 2.png|keretnélküli]]&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid 3.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
== Adott egy séma és az attribútumai között értelmezett funkcionális függések halmaza. Tudjuk, hogy a nemtriviális függések bal oldalán található attribútum(halmaz)on a rekordok értéke egyedi. Ekkor (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a sémára illeszkedő egyetlen adathalmazban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# lehet olyan, a sémára illeszkedő adathalmaz, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# van olyan, a sémára illeszkedő adathalmaz, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedő egyetlen adathalmazban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
&lt;br /&gt;
== A válaszlehetőségek közül melyik a csatolt ER-diagram legpontosabb relációs leképezése? (2023 jun) ==&lt;br /&gt;
&lt;br /&gt;
[[Fájl:2023 június mérnökinformatikus záróvizsga Adatbázisok ER sémadekompozíció 1.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# A(a, b, c), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol A kulcsa a és b együtt, és A-ban b idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt, valamint K-ban a és b is idegen kulcs&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b, c, d), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt és K mind a négy attribútuma egyenként idegen kulcs is.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), B(a, b, d), ahol B kulcsa a és b együtt, és B-ben a idegen kulcs.&lt;br /&gt;
&lt;br /&gt;
== Időbélyeges tranzakciókezelés esetén melyik állítás NEM helyes? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy adott ütemezésnek mindig van soros ekvivalense (a tranzakciók időbélyegei szerinti növekvő sorrendű).&lt;br /&gt;
# Szigorú protokoll megvalósításához az időbélyegek mellett zárak is szükségesek.&lt;br /&gt;
# Egy adott ütemezésnek akár több soros ekvivalense is lehet.&lt;br /&gt;
# Egy adott ütemezésnek lehet soros ekvivalense.&lt;br /&gt;
&lt;br /&gt;
== Az SQL lekérdezésekben a &amp;quot;SELECT DISTINCT&amp;quot; az ismétlődéseket szűri az eredményhalmazból. A relációs algebrában hogyan valósítható meg ez a művelet? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Nincs rá szükség, mert a relációs algebra halmazokkal dolgozik, ahol nem szerepelnek ismétlődések.&lt;br /&gt;
# Az unió vagy a metszet műveleteket kell használni, ha követelmény az ismétlődések szűrése.&lt;br /&gt;
# A természetes illesztés alkalmas erre, hiszen az az azonos nevű attribútumokat csak egyszer adja vissza.&lt;br /&gt;
&lt;br /&gt;
== Egy adatállományt vödrös hash szervezéssel tárolunk. A következőket tudjuk az állományról: (2023 jun) ==&lt;br /&gt;
# Egy rekord egy blokknyi helyet foglal el.&lt;br /&gt;
# Az alkalmazott hash függvény: &#039;k mod 5&#039;, ahol a &#039;k&#039; a kulcsot jelenti.&lt;br /&gt;
# A vödrös hash kezdetben üres.&lt;br /&gt;
# A hashtábla elfér az operatív tárban.&lt;br /&gt;
A beszúrt rekordok kulcsai a következők: 5, 7, 3, 9, 10, 1, 4, 7, 19.&lt;br /&gt;
Hány blokkműveletet fog a rendszer végezni, ha azon rekordot keressük, amelynek kulcsa 24?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 2&lt;br /&gt;
# 1&lt;br /&gt;
# 0&lt;br /&gt;
# 3&lt;br /&gt;
&lt;br /&gt;
== Melyik állítás igaz? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legalacsonyabb normál formája 1NF, ha nincs másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legmagasabb normál formája 1NF, ha van másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legalacsonyabb normál formája 3NF, ha van másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legmagasabb normál formája 3NF, ha nincs másodlagos attribútuma.&lt;br /&gt;
&lt;br /&gt;
== Egy állomány tárolása során két merevlemez közül lehet választani: (2023 jan) ==&lt;br /&gt;
* Az &amp;quot;A&amp;quot; lemeznél a blokkméret 4000 byte, egy blokkművelet ideje 10 ms&lt;br /&gt;
* Az &amp;quot;B&amp;quot; lemeznél a blokkméret 12000 byte, egy blokkművelet ideje 20 ms. A tárolni kívánt rekordok mérete lehetővé teszi, hogy a blokkokat mindkét esetben veszteség nélkül használjuk.&lt;br /&gt;
Melyik lemezt válasszuk, ha csak lineáris keresést kell támogatni?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A &amp;quot;B&amp;quot;-t kell választani, mert mindig jobb a nagyobb blokkméret, mint a kisebb.&lt;br /&gt;
# Az &amp;quot;A&amp;quot;-t kell választani, mert ott gyorsabb az egyes blokkok elérése.&lt;br /&gt;
# Az &amp;quot;A&amp;quot;-t kell választani, mert ugyan 3-szor több blokkot kell használni, de ezt ellensúlyozza a hozzáférési sebesség felezése.&lt;br /&gt;
# A &amp;quot;B&amp;quot;-t kell választani, mert harmadannyi blokkot kell használni, ami jobban gyorsítja a keresést, mint az egyes blokkok hozzáférési sebességének duplázódása.&lt;br /&gt;
&lt;br /&gt;
== Hány eleme lehet C-nek, ha A 10, B pedig 50 elemű? (2023 jan) ==&lt;br /&gt;
&lt;br /&gt;
[[Fájl:Info zv 2023 jan adatb er 1.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Legalább 0, legfeljebb 500&lt;br /&gt;
# Legalább 0, legfeljebb 50&lt;br /&gt;
# Legalább 10, legfeljebb 50.&lt;br /&gt;
# Legalább 0, legfeljebb 10&lt;br /&gt;
&lt;br /&gt;
== Adatbázisunkban tárolnánk, hogy légitársaságunk egyes repülőgépeire melyik pilótánknak van típusjogosítása, illetve hogy az egyes gépek melyik járatokon üzemelnek jelenleg. Melyik ER-modell felel meg a leírtaknak? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, egy bináris kapcsolattípus a Pilóta és a Repülőgép között és egy bináris kapcsolattípus a Repülőgép és a Járat között.&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, köztük egy ternáris kapcsolattípus.&lt;br /&gt;
# Egy Repülőgép gyenge egyedhalmaz, amelyet a Pilóta és a Járat egyedhalmazok determinálnak.&lt;br /&gt;
# Egy Repülőgép kapcsolattípus, amely a Pilóta egyedhalmazt és a Járat egyedhalmazt köti össze.&lt;br /&gt;
&lt;br /&gt;
== Mi nem jellemző a fa protokollra? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Zár bármikor, bárhonnan eltávolítható.&lt;br /&gt;
# Zár - az elsőt kivéve - csak akkor helyezhető el egy csomóponton, ha a szülőcsomóponton is tart fenn zárat a tranzakció.&lt;br /&gt;
# A tranzakciók tehetik az első zárjukat a fa gyökerére is.&lt;br /&gt;
# A fa protokoll szerinti tranzakciók kétfázisúak.&lt;br /&gt;
&lt;br /&gt;
== A relációs lekérdezések végrehajtásának heurisztikus optimalizálása során az alábbiak közül melyik NEM történik (Süllyesztés alatt azt értjük, amikor a relációalgebrai fa átalakítása során az adott művelet a gyökércsomóponttól a levélcsomópontok irányába mozdul el.) (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Descartes-szorzások süllyesztése&lt;br /&gt;
# Szelekciók süllyesztése.&lt;br /&gt;
# Levélcsomópontok átrendezése&lt;br /&gt;
# Projekciók süllyesztése.&lt;br /&gt;
&lt;br /&gt;
== Az SQL SELECT utasítás melyik része nem fejezhető ki relációs algebrával az alábbiak közül? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# GROUP BY&lt;br /&gt;
# FROM ... NATURAL JOIN ...&lt;br /&gt;
# WHERE&lt;br /&gt;
# SELECT DISTINCT&lt;br /&gt;
&lt;br /&gt;
== Egy adatállomány rekordjaira ritka indexet építettek: (2023 jan) ==&lt;br /&gt;
* Az adatrekordok és az indexrekordok egyaránt teljesen kitöltik a blokkokat&lt;br /&gt;
* Egy adatrekord 100 Byte&lt;br /&gt;
* Összesen 100000 adatrekordot tárolunk&lt;br /&gt;
* Az adatállomány blocking faktora 100&lt;br /&gt;
* Az indexállomány blocking faktora 400&lt;br /&gt;
* A mutató mérete 10 byte&lt;br /&gt;
* Egy blokk elérési ideje 15 ms&lt;br /&gt;
&lt;br /&gt;
Mekkora a kulcs mérete?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# 5 Byte&lt;br /&gt;
# 10 Byte&lt;br /&gt;
# 15 Byte&lt;br /&gt;
# 20 Byte&lt;br /&gt;
&lt;br /&gt;
== Milyen hiba ellen nem véd a szigorú 2PL (kétfázisú zárolás) protokoll? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Abort az operatív tár sérülése miatt.&lt;br /&gt;
# Abort patt miatt.&lt;br /&gt;
# Abort nem-sorosíthatóság miatt.&lt;br /&gt;
# Felhasználói abort.&lt;br /&gt;
&lt;br /&gt;
== Mit jelent a relációs adatbázis katalógusinformációi között szereplő kiválasztási kardinalitás (selection cardinality) az SC(A, r) formában? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# Azon blokkok átlagos száma, amelyeket be kell olvasni az r relációból a keresés során az A attribútumra felírt egyenlőségi feltétel alapú szelekció esetén.&lt;br /&gt;
# Az r reláció A attribútumára időegység alatt végrehajtott kiválasztás műveletek (szelekciók) átlagos száma.&lt;br /&gt;
# Azon rekordok átlagos száma az r relációban, amelyek kielégítenek egy egyenlőségi feltételt az A attribútumra, feltéve, hogy legalább egy rekord kielégíti ezt az egyenlőségi feltételt.&lt;br /&gt;
# Az r reláció A attribútumában található különböző értékek száma.&lt;br /&gt;
&lt;br /&gt;
== Legfeljebb mekkora lehet két reláció természetes illesztésének rekordszáma, ha az egyik rekordszáma n, a másik rekordszáma m? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# max (n, m)&lt;br /&gt;
# n * m&lt;br /&gt;
# n + m&lt;br /&gt;
# min(n, m)&lt;br /&gt;
&lt;br /&gt;
== Melyik állítás igaz? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Egy relációs sémának a legmagasabb normál formája 2NF, ha nincs másodlagos attribútuma&lt;br /&gt;
# Egy relációs sémának a legmagasabb normál formája 3NF, ha minden attribútuma elsődleges&lt;br /&gt;
# Egy relációs sémának lehet minden attribútuma másodlagos.&lt;br /&gt;
# Egy relációs sémának a legalacsonyabb normál formája 3NF, ha nincs másodlagos attribútuma&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyik NEM szerepel a relációkra vonatkozó katalógus-információk között, amely a végrehajtási terv készítését támogatja? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# A reláció rekordjaiban a mezők száma.&lt;br /&gt;
# A reláció egy rekordjának mérete.&lt;br /&gt;
# A reláció rekordjainak száma.&lt;br /&gt;
# A relációban levő rekordokat tartalmazó blokkok száma.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyiket nem befolyásolja a keresési kulcs mérete? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A nested loop join algoritmus lépésszáma&lt;br /&gt;
# Keresés költsége heap szervezés esetén&lt;br /&gt;
# &amp;lt;math&amp;gt;B^{*}&amp;lt;/math&amp;gt;-fa magassága&lt;br /&gt;
# Hash tábla mérete&lt;br /&gt;
&lt;br /&gt;
== Az SQL SELECT utasítás melyik része felel meg leginkább a relációalgebrai projekció (vetítés) műveletnek? (2022 jun) ==&lt;br /&gt;
A válaszadás során tételezzük fel, hogy a lekérdezés egyetlen táblából dolgozik és a tábla egyetlen kulcsa sem jelenik meg az eredményben!&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# FROM&lt;br /&gt;
# SELECT DISTINCT&lt;br /&gt;
# ORDER BY&lt;br /&gt;
# WHERE&lt;br /&gt;
# SELECT&lt;br /&gt;
&lt;br /&gt;
== Tudjuk, hogy az R relációs sémán fennálló összes nemtriviális függés esetén a függés bal oldalán található attribútum(halmaz) értéke egyedi minden, a sémára illeszkedő relációban. Ekkor (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# egyik sem helyes a többi állítás közül.&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedổ egyetlen relációban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
# van olyan, a sémára illeszkedő reláció, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
&lt;br /&gt;
== Adott az (R, F) séma, ahol R=ABCGWXYZ, F=(XY → BGYZ, AY → CG, C → W, B → G) Melyik függés vezethető le az adott függéshalmazból? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# ABGY → GX&lt;br /&gt;
# ACYZ → W&lt;br /&gt;
# AB → XG&lt;br /&gt;
# BXY → GXW&lt;br /&gt;
&lt;br /&gt;
== Egy B*-fáról a következőket tudjuk: (2022 jun) ==&lt;br /&gt;
* Az adatokat növekvő sorrendben tároljuk&lt;br /&gt;
* Az adatblokkok száma 402&lt;br /&gt;
* Az adatrekordok mérete 200 byte&lt;br /&gt;
* Egy blokk mérete nettó 2000 byte&lt;br /&gt;
* A kulcsok mérete 50 byte&lt;br /&gt;
* Egy mutató 50 byte&lt;br /&gt;
* A kulcsra vonatkozó szelekció kardinalitása (SC) 5 .&lt;br /&gt;
Ideális esetben legkevesebb hány blokkot kell kiolvasnunk egy kulcsértékre vonatkozó egyenlőség alapú keresésnél?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 4&lt;br /&gt;
# 9&lt;br /&gt;
# 2&lt;br /&gt;
# 3&lt;br /&gt;
&lt;br /&gt;
== Az üzemanyaggal történő visszaélések visszaszorítására egy cég úgy dönt, hogy kimutatásokat fog készíteni arról, hogy a cég mely járművébe melyik dolgozó hol és mennyit tankol. A dolgozók minden műszak elején teli tankkal veszik át a jármúveket, és a múszak végén megtankolva kell azokat leadniuk a telephelyen, így a tankolásmennyiségből kikövetkeztethető, hogy ki mennyi üzemanyagot használt, és hogy az illető az adott autóba melyik benzinkúton tankolt. (2022 jun) ==&lt;br /&gt;
[[Fájl:2022 jun info zv adatb ER 1.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
Milyen módosítást kell tenni a fenti ER-diagramon, amely után a modellből készült adatbázis alkalmas lesz a fent említett riportokhoz szükséges adatok tárolásához?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Törölni a Feltölt kapcsolattípust&lt;br /&gt;
# Törölni a Feltölt, Telik és Látogat kapcsolattípusokat&lt;br /&gt;
# Törölni a Látogat kapcsolattípust&lt;br /&gt;
# Törölni a Telik kapcsolattípust&lt;br /&gt;
# Törölni a Tankol kapcsolattípust&lt;br /&gt;
&lt;br /&gt;
== A válaszlehetőségek közül melyik a csatolt ER-diagram legpontosabb relációs leképezése? (2022 jun) ==&lt;br /&gt;
[[Fájl:2022 jun info zv adatb er dekomp.png|keretnélküli]]&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), B(a, b, d), ahol B kulcsa a és b együtt, és B-ben a idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt, valamint K-ban a és b is idegen kulcs&lt;br /&gt;
# A(a, b, c), B(b, d), ahol A kulcsa a és b együtt, és A-ban b idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b, c, d), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt és K mind a négy attribútuma egyenként idegen kulcs is.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, hogy az alábbiak közül mely állítás(ok) igazak a keresési költségekkel kapcsolatban, ha az adatokat B*-fában tároljuk! A költséget a blokkműveletek számával mérjük. (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,4}}&lt;br /&gt;
# A költség logaritmikusan arányos az adatrekordok számával.&lt;br /&gt;
# A költség lineárisan arányos az index struktúra elágazási tényezőjével.&lt;br /&gt;
# A költség lienárisan arányos az index blokkok számával.&lt;br /&gt;
# A költség lineárisan arányos a fa magasságával.&lt;br /&gt;
&lt;br /&gt;
== Adott két tábla, T1 (oszlopai: A és B), és T2 (oszlopai: B és C). Válassza ki az alábbi lekérdezés eredményére vonatkozó állítások közül azt, amelyik biztosan igaz! (2022 jan) ==&lt;br /&gt;
Feltételezzük, hogy a lekérdezés szintaktikailag helyes és a táblák oszlopait is helyesen hivatkozza, a táblákban nem szerepel NULL érték, és&lt;br /&gt;
az eredmény oszlopait R1, R2, R3 és R4 néven nevezzük.&lt;br /&gt;
&amp;lt;pre&amp;gt;SELECT T1.A AS R1, T1.B AS R2, T2.B AS R3, T2.C AS R4&lt;br /&gt;
FROM T1 LEFT JOIN T2 ON (T1.B = T2.B) ;&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Az eredményben T1 minden rekordja szerepel.&lt;br /&gt;
# Az eredményben T2 minden rekordja szerepel.&lt;br /&gt;
# Az eredmény minden rekordjában megegyezik R2 és R3 mezők értéke.&lt;br /&gt;
# R4 mezőben nem fordul elő NULL érték.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyiket NEM befolyásolja a keresési kulcs mérete? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A nested loop join algoritmus lépésszáma&lt;br /&gt;
# Vödrös hash tábla mérete&lt;br /&gt;
# Keresés költsége heap szervezés esetén&lt;br /&gt;
# B*-fa magassága&lt;br /&gt;
&lt;br /&gt;
== Válassza ki az egyetlen igaz állítást! (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Egy ER-modell determináló kapcsolathalmazának kardinalitása lehet több-több.&lt;br /&gt;
# Egy attribútumként jelzett idegen kulcs több egyedhalmazhoz is tartozhat az ER-modellben.&lt;br /&gt;
# Egy ER-modell gyenge egyedhalmazához mindig fel kell venni legalább egy idegen kulcsot, mint attribútumot az ER modellben.&lt;br /&gt;
# Egy ER-modell gyenge egyedhalmazához mindig fel kell venni legalább egy determináló kapcsolathalmazt.&lt;br /&gt;
&lt;br /&gt;
== Egy gépjárműnyilvántartásban két tábla tárolja az autók és tulajdonosaik adatait, melyek sémái a következők: (2022 jan) ==&lt;br /&gt;
Tulajdonos(személyi_szám, név, születési_dátum, anyja_neve), kulcs: személyi szám&lt;br /&gt;
Gépjármű(rendszám, típus, márka, szín, gyártás_éve, tulajdonos_személyi_száma), kulcs: rendszám&lt;br /&gt;
&lt;br /&gt;
A táblák n db személy és m db gépjármű adatait tárolják, és egy személynek átlagosan 2 db gépjárműve van.&lt;br /&gt;
&lt;br /&gt;
Az alábbi SQL lekérdezés eredményrekordjainak számát melyik kifejezés becsüli legjobban?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;SELECT személyi_szám, név, rendszám, típus, márka&lt;br /&gt;
FROM tulajdonos, gépjármű&lt;br /&gt;
WHERE tulajdonos.személyi_szám = gépjármű.tulajdonos_személyi_száma ;&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# n + m&lt;br /&gt;
# 2 * m&lt;br /&gt;
# n&lt;br /&gt;
# m&lt;br /&gt;
# n * m&lt;br /&gt;
&lt;br /&gt;
== Legyen r(R) egy adott reláció, melynek sémája R(A,B,C,D). Tudjuk, hogy t, t* r(R) t[A]=t*[A] esetén t[B]=t*[B]. Ekkor: (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# az A-tól a B funkcionálisan függ.&lt;br /&gt;
# a fentiek közül egyik válasz sem helyes.&lt;br /&gt;
# az A-tól a B funkcionálisan függhet.&lt;br /&gt;
# az A a B-től funkcionálisan függ.&lt;br /&gt;
&lt;br /&gt;
== A felsoroltak közül melyik NEM szerepel egy relációs lekérdezés végrehajtási tervében? Feltételezzük, hogy relációalgebrai reprezentációval dolgozik a vizsgált adatbázis-kezelő rendszer. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A végrehajtás során használt workflow-stratégia (materializáció vagy pipelining).&lt;br /&gt;
# A használt relációalgebrai műveletek és azok hierarchiája a lekérdezésben.&lt;br /&gt;
# A végrehajtás során használandó indexek neve.&lt;br /&gt;
# Az eredmény várható rekordszáma.&lt;br /&gt;
# A használt relációalgebrai műveletek végrehajtásához rendelt algoritmusok.&lt;br /&gt;
# Az input relációk.&lt;br /&gt;
&lt;br /&gt;
== Melyik az egyetlen helyes válasz? Tudjuk, hogy az R relációs sémára illeszkedő minden relációban az összes nemtriviális függés esetén a függés bal oldalán található attribútum(halmaz) értéke egyedi. Ekkor... (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
# van olyan, a sémára illeszkedő reláció, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# egyik sem helyes a többi állítás közül.&lt;br /&gt;
&lt;br /&gt;
== Adottak az A és B egyedhalmazok, valamint a köztük definiált bináris kapcsolathalmaz K, melynek kardinalitása több-több. Tegyük fel, hogy A-ban 10, B-ben pedig 20 egyed van. Legfeljebb hány kapcsolat lehet K-ban? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# 30&lt;br /&gt;
# 200&lt;br /&gt;
# 10&lt;br /&gt;
# 20&lt;br /&gt;
&lt;br /&gt;
== Két attribútum (A, B) között szeretnénk a funkcionális függőségi kapcsolatot megállapítani, azonban ezen attribútumoknak az értékei még nem ismertek. Lehetséges-e a kérdésre választ adni? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igen.&lt;br /&gt;
# Nem.&lt;br /&gt;
# Enne a kérdésnek semmi értelme.&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor: P: A tranzakciók a kész pontjuk előtt nem engedik el a zárakat... Q: ...ezért rendszerhiba esetén nincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának szükséges és elégséges feltétele,... Q: ...ezért sorosítható ütemezés esetén nem kell tartani a pattoktól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy relációs sémának... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
# ...a legmagasabb normálformája 3NF, ha minden attribútuma elsődleges.&lt;br /&gt;
# ...a legmagasabb normálformája 2NF, ha nincs másodlagos attribútum.&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
&lt;br /&gt;
== Egy relációs sémának... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
# ...a legalacsonyabb normálformája 3NF, ha nincs más másodlagos attribútum.&lt;br /&gt;
# ...a legmagasabb normálformája 2NF, ha nincs másodlagos attribútum.&lt;br /&gt;
# ...lehet, hogy minden attribútuma másodlagos.&lt;br /&gt;
&lt;br /&gt;
== A funkcionális függés... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# soha nem értékfüggetlen kényszer.&lt;br /&gt;
# mindig értékfüggő kényszer.&lt;br /&gt;
# lehet értékfüggő kényszer.&lt;br /&gt;
# mindig értékfüggetlen kényszer.&lt;br /&gt;
&lt;br /&gt;
== P: A kiterjesztett ER-modell elemkészletében szereplő gyenge egyedhalmaz nem képezhető le a relációs adatmodellre,... Q: ...mert a reláció egy halmaz, így a benne szereplő rekordok egyedisége definíciószerűen elvárt. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Adott két tábla, T1 (oszlopai: A és B), és T2 (oszlopai: B és C). Válassza ki az alábbi lekérdezés eredményére vonatkozó állítások közül azt, amelyik biztosan igaz! Feltételezzük, hogy a lekérdezés szintaktikailag helyes és a táblák oszlopait is helyesen hivatkozza, a táblákban nem szerepel NULL érték, és az eredmény oszlopait R1, R2, R3 és R4 néven nevezzük. SELECT T1.A AS R1, T1.B AS R2, T2.B AS R3, T2.C AS R4 FROM T1 LEFT JOIN T2 ON (T1.B = T2.B) ; ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Az eredményben T1 minden rekordja szerepel.&lt;br /&gt;
# Az eredmény minden rekordjában megegyezik R2 és R3 mezők értéke.&lt;br /&gt;
# R4 mezőben nem fordul elő NULL érték.&lt;br /&gt;
# Az eredményben T2 minden rekordja szerepel.&lt;br /&gt;
&lt;br /&gt;
== P: Az imperatív lekérdezőnyelven megfogalmazott relációs lekérdezések több lehetséges végrehajtási terv mentén értékelhetők ki, ... Q: ...ezért a költség alapú optimalizálás célja: minimalizálni a join műveletek költségét. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy adatbázisban vödrös hashelést alkalmaznak a rekordok tárolására. Az alábbiak közül mi(k) okozhatják, hogy az egyes vödrökben tárolt rekordok elérési ideje jelentősen eltérhet egymástól (több helyes válasz is lehetséges, a helytelen válasz pontlevonással jár)? ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A hash függvény helytelen megválasztása.&lt;br /&gt;
# Ha sokkal több a törlés, mint a beszúrás.&lt;br /&gt;
# A rekordok kulcsértékeinek nem egyenletes eloszlása.&lt;br /&gt;
# Az adatok elhelyezkedése a merevlemezen.&lt;br /&gt;
# Ha sokkal több a beszúrás, mint a törlés.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy relációs lekérdező nyelv képes az unió, különbség, Descartes-szorzat, vetítés és kiválasztás műveleteit kifejezni, akkor relációsan teljesnek nevezik, ... Q: ...mert az ilyen lekérdező nyelvek segítségével egy relációs adatbázisból mindent le tudunk kérdezni. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== 500 bájtos blokkméret mellett mekkora méretű lesz egy 10 vödörből álló hash állomány vödörkatalógusa, ha egy mutató 5, egy kulcs pedig 10 bájtos? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 500 Byte&lt;br /&gt;
# 2000 Byte&lt;br /&gt;
# 1500 Byte&lt;br /&gt;
# 1000 Byte&lt;br /&gt;
&lt;br /&gt;
== P: Mivel minden tranzitív funkcionális függés egyúttal részleges függés is, ... Q: ...ezért minden részleges függés tranzitív függés is. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legalább 1NF relációs sémának valamennyi kulcsa egyszerű, akkor a séma legalább 2NF, ... Q: ...mert az egyszerű kulcsok kizárják, hogy a sémában másodlagos attribútumok legyenek. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha másodlagos attribútum egy kulcstól részlegesen függ, akkor tranzitívan is függ tőle, ... Q: ...ezért ha egy séma nem 2NF, akkor 3NF sem lehet. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Az, hogy egy A és B egyedhalmazok közötti K kapcsolattípus funkcionalitása &amp;quot;több-több&amp;quot;, azt jelenti, hogy ... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# K minden egyes kapcsolatpéldánya A több elemét rendeli B több eleméhez.&lt;br /&gt;
# K minden kapcsolatpéldánya pontosan egy A-beli elemet rendel pontosan egy B-beli elemhez, viszont A valamely eleméhez K kapcsolatpéldányai több B-beli elemet rendelhetnek, és B minden eleméhez K kapcsolatpéldányai több A-beli elemet rendelhetnek.&lt;br /&gt;
# A és B között nem engedélyezett több kapcsolattípus definiálása, ezért A és B egyedei között minden egyes kapcsolatot annak szemantikájától függetlenül K valamely kapcsolatpédánya definiálja.&lt;br /&gt;
# A és B egyedhalmazok között K-n kívüli további kapcsolattípusok is engedélyezettek.&lt;br /&gt;
&lt;br /&gt;
== Adott az R(A) séma és a rá illeszkedő r1 reláció. Amennyiben r2 = r1, mit fejez ki a képen látható relációalgebrai kifejezés? r1\ pi r1.A omega r1.A&amp;lt;r2.A(r1xr2) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Üres reláció.&lt;br /&gt;
# r1 legkisebb elemét.&lt;br /&gt;
# r1 legnagyobb és legkisebb elemének halmazát.&lt;br /&gt;
# r1 legnagyobb elemét.&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor... P: ...nem fordulhat elő lavina... Q: ...ezért rendszerhiba esetén nincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== A relációalgebrai faalapú heurisztikus lekérdezésoptimalizálás lépései a kanonikus alakból kiindulva: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# vetítések süllyesztése, fa leveleinek átrendezése, join bevezetése, szelekciók süllyesztése.&lt;br /&gt;
# vetítések süllyesztése, fa leveleinek átrendezése, szelekciók süllyesztése, join bevezetése.&lt;br /&gt;
# szelekciók süllyesztése, fa leveleinek átrendezése, join bevezetése, vetítések süllyesztése.&lt;br /&gt;
# szelekciók süllyesztése, fa leveleinek átrendezése, vetítések süllyesztése, join bevezetése.&lt;br /&gt;
&lt;br /&gt;
== A relációs algebra, relációs sor-, ill. relációs oszlopkalkulus közül melyek teljesek? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# Relációs sorkalkulus.&lt;br /&gt;
# Relációs oszlopkalkulus.&lt;br /&gt;
# Relációs algebra.&lt;br /&gt;
# Csak a relációs algebra.&lt;br /&gt;
# Mindegyik felsorolt.&lt;br /&gt;
&lt;br /&gt;
== Adott egy R séma és a sémára illeszkedő r(R) reláció. P: Mivel az R attribútumai között fennálló érdemi funkcionális függések halmaza mindig tartalmazza az eseti funkcionális függéseket is, ... Q: ...ezért az érdemi funkcionális függőségek segítségével teljeskörűen megállapíthatjuk, hogy melyik attribútumokban fordulhat elő redundáns adattárolás funkcionális függés következtében. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legalább 1NF relációs sémának minden attribútuma elsődleges, akkor a séma nem lehet BCNF, ... Q: ...mert BCNF sémák esetén a nemtriviális függések bal oldalán szuperkulcsok, a jobb oldalán pedig másodlagos attribútumok állnak. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának elégséges feltétele,... Q: ...ezért sorosítható ütemezés esetén nem kell tartani az olvasástól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Melyik nem része az alábbiak közül egy relációs lekérdezés végrehajtási tervének? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A relációs műveletekhez rendelt algoritmusok.&lt;br /&gt;
# A műveletek workflow-ja (materializáció vagy pipelining).&lt;br /&gt;
# A kiválasztott relációs műveletek egymásraépülése.&lt;br /&gt;
# Katalógusinformációk az érintett relációkról.&lt;br /&gt;
&lt;br /&gt;
== 1000 bájtos blokkméret mellett mekkora méretű lesz egy 500 vödörből álló hash-állomány vödörkatalógusa, ha egy mutató 5, egy kulcs pedig 10 bájtos? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 2500 Byte&lt;br /&gt;
# 5000 Byte&lt;br /&gt;
# 10000 Byte&lt;br /&gt;
# 7500 Byte&lt;br /&gt;
&lt;br /&gt;
== P: Adatbáziskezelő-rendszerben a médiahiba felbukkanásának esélyét csökkentendő szokásos megoldás az adatok több példányban, különböző diszkeken történő tárolása, ... Q: ...ezért ilyen esetekben a módosítási anomália okozta inkonzisztencia is gyakoribb. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== A heurisztikus optimalizálásnál használt melyik módszer alkalmazható a költségalapú optimalizálás folyamatában? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Descartes-szorzat és szelekció sorozat helyett megfelelő illesztés bevezetése.&lt;br /&gt;
# Projekciók süllyesztése.&lt;br /&gt;
# A szelekciók süllyesztése.&lt;br /&gt;
# Mindegyik alkalmazható a költségalapú optimalizálás során.&lt;br /&gt;
&lt;br /&gt;
== Adott az (R, F) relációs séma, ahol R = ABCDEG, F = { AB -&amp;gt; BC, AC -&amp;gt; D, CD -&amp;gt; EG, CG -&amp;gt; A, G -&amp;gt; D, D -&amp;gt; C}. Melyik függés vezethető le az adott függéshalmazból? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# D -&amp;gt; B&lt;br /&gt;
# G -&amp;gt; B&lt;br /&gt;
# A -&amp;gt; B&lt;br /&gt;
# AC -&amp;gt; B&lt;br /&gt;
# G -&amp;gt; E&lt;br /&gt;
&lt;br /&gt;
== Hány soros ekvivalense létezik az alábbi ütemezésnek, ha LOCK-UNLOCK párok között az adategység értéke írható és olvasható? T1 LOCK A, T1 UNLOCK A, T2 LOCK A, T2 UNLOCK A, T3 LOCK B, T3 UNLOCK B, T1 LOCK B, T1 UNLOCK B, T2 LOCK C, T2 UNLOCK C, T3 LOCK C, T3 UNLOCK C. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 3&lt;br /&gt;
# 2&lt;br /&gt;
# 1&lt;br /&gt;
# 0&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy ütemezés tranzakciói a szigorú kétfázisú protokoll szabályait követik, akkor a kész pontjuk előtt nem írhatnak az adatbázisba, ... Q: ...ezért rendszerhiba esetén nincs szükség REDO-ra, csak UNDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Két reláció természetes illesztésének mevalósításakor... P: ...az összefésüléses join (&amp;quot;sorted merge join&amp;quot;) költsége kisebb lehet, mint az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;) költsége,... Q: ...mert az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;) költségét jelentősen befolyásolhatja, hogy melyik reláció kerül a külső ill. belső ciklusba. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legális ütemezésben a tranzakciók követik a kétfázisú zárolás szabályait, akkor az ütemezés sorosítható, ... Q: ...ezért kétfázisú zárolás mellett rendszerhiba esetén sincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának szükséges és elégséges feltétele, ... Q: ...ezért sorosítható ütemezés esetén nem kell tartani a fantom olvasástól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Adott egy R séma és a sémára illeszkedő r(R) reláció. P: Mivel az r-n fennálló eseti funkcionális függések halmaza mindig tartalmazza az érdemi funkcionális függéseket is,... Q: ...ezért az eseti funkcionális függőségek segítségével további megállapításokat tehetünk, hogy melyik attribútumokban fordulhat még elő redundáns adattárolás. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Az adatbáziskezelő-rendszer háromrétegű modelljében melyik szinthez/réteghez köthető az adatbiztonság megvalósítása? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A logikai adatbázis réteghez.&lt;br /&gt;
# A fizikai adatbázis réteghez.&lt;br /&gt;
# A nézetek szintjéhez.&lt;br /&gt;
# Egyikhez sem.&lt;br /&gt;
&lt;br /&gt;
== Egy relációalgebrai kifejezés kanonikus alakjában milyen műveletek és milyen sorrendben szerepelnek? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# szelekció, projekció, Théta-illesztés&lt;br /&gt;
# szelekció, projekció, természetes illesztés&lt;br /&gt;
# szelekció, projekció, Descartes-szorzat&lt;br /&gt;
# projekció, szelekció, természetes illesztés&lt;br /&gt;
# projekció, szelekció, Descartes-szorzat&lt;br /&gt;
&lt;br /&gt;
== Mennyi az r és s relációk &amp;quot;egymásba ágyazott ciklus&amp;quot; (nested loop join)-alapú illesztésének legjobb becsült költsége, ha egyik reláció sem fér bele az operatív tárba? (nr és ns a relációk rekordjainak, br és bs pedig a relációk blokkjainak számát jelölik.) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# br + bs&lt;br /&gt;
# nr * br + bs&lt;br /&gt;
# ns * br + bs&lt;br /&gt;
# ns * br + nr * bs&lt;br /&gt;
# bs * br + bs&lt;br /&gt;
&lt;br /&gt;
== P: a egy relációs sémának több kulcsa is van, akkor van összetett kulcsa is, ... Q: ...ezért egy relációs séma szuperkulcsa nem feltétlenül minimális. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Két kulcs szerinti keresést szeretnénk megvalósítani úgy, hogy az adatokat tartalmazó állománnyal szemben semmilyen rendezettség nem várható el. Milyen struktúrát javasolna erre a célra? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Az adatállományra épített egyetlen sűrű index, amelyre két ritka indexet építünk.&lt;br /&gt;
# Az adatállományra épített két sűrű index, amelyekre egy-egy ritka indexet építünk.&lt;br /&gt;
# Az adatállományra épített egyetlen sűrű index, amelyre ritka indexet építünk, illetve az adatállományra emellett épített további ritka index.&lt;br /&gt;
# Az adatállomáányra közvetlenül épített két ritka index.&lt;br /&gt;
&lt;br /&gt;
== P: A deklaratív lekérdezőnyelven megfogalmazott relációs lekérdezések több lehetséges végrehajtási terv mentén értékelhetők ki,... Q: ...ezért a költségalapú optimalizálás célja: minimalizálni a join műveletek során végrehajtott blokkműveletek számát. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A kiterjesztett ER-modell elemkészletével elkészített ER-diagram relációs adatmodellre leképezhető része mindig leképezhető legfeljebb annyi relációs sémára, amennyi az egyedtípusok és kapcsolattípusok számának összege, ... Q: ...mert az egyedek nem lehetnek többen, mint a relációs modellben a relációk összesített rekordszáma. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy adatbáziskezelő-rendszer feladatai közé tartozik - többek között: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# integritás védelme, adatok értelmezhetőségének biztosítása, adatbiztonság&lt;br /&gt;
# integritás védelme, szinkronizálás, adatbiztonság&lt;br /&gt;
# adatok értelmezhetőségének biztosítása, szinkronizálás, adatbiztonság&lt;br /&gt;
# integritás védelme, szinkronizálás, adatok értelmezhetőségének biztosítása&lt;br /&gt;
&lt;br /&gt;
== Válassza ki a csak tranzakcióhibákat tartalmazó lehetőséget! ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# abort nem-sorosíthatóság miatt, nullával osztás, fantom olvasás, elveszett módosítás&lt;br /&gt;
# abort patt miatt, abort nem-sorosíthatóság miatt, nullával osztás, felhasználói abort&lt;br /&gt;
# abort patt miatt, abort nem sorosíthatóság miatt, piszkos adat olvasása, nem megismételhetó olvasás&lt;br /&gt;
# piszkos adat olvasása, nem megismételhető olvasás, fantom olvasás, elveszett módosítás&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a tranzakciók kész pontjuk előtt nem engedik el a zárakat.&lt;br /&gt;
# a tranzakciók a zárpontjuk előtt elengedhetik a zárakat.&lt;br /&gt;
# a tranzakciók a zárpont után már írhatnak az adatbázisba.&lt;br /&gt;
# egy tranzakció ugyanazt az adategységet többször is zárolhatja.&lt;br /&gt;
&lt;br /&gt;
== Az R(A, B, C, D) és S(A, B, E, ) relációs sémák szerint létrehozott r és s táblákon fogalmaztuk meg az alábbi SQL nyelvű lekérdezést. SELECT * FROM r, s WHERE r.A = s.A ; Melyik relációalgebrai műveletet valósítja meg a lekérdezés az r és s relációk között? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# természetes illesztés&lt;br /&gt;
# vetítés (projekció)&lt;br /&gt;
# metszet&lt;br /&gt;
# unió&lt;br /&gt;
# Théta-illesztés&lt;br /&gt;
&lt;br /&gt;
== P: A figyelmeztető protokoll szabályait követő tranzakciókból álló legális ütemezések esetén zárkonfliktus nem fordulhat elő, ... Q: ...mert az ilyen ütemezések esetén a sorosíthatóság garantált. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Egy relációs séma pontosan akkor BCNF, ha minden nemtriviális függés bal oldalán szereplő attribútumok értéke minden, a sémára illeszkedő relációban egyedi,... Q: ...ezért az ilyen sémákra illeszkedő relációkban funkcionális függés miatt redundáns adattárolás sehol nem fordulhat elő. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy ER-diagramon adott két egyedhalmaz, A és B. A attribútumtípusainak száma 18. B attribútumtípusainak száma 13. A-nak egyetlen összetett, 9 db attribútumtípus által alkotott kulcsa van, míg B-nek szintén egyetlen, összetett, 5 db attribútumtípus által alkotott kulcsa. C gyenge egyedhalmaznak egyetlen, 7 darab attribútumtípus által alkotott kulcsa van. C-t ezen kívül A és B egyedhalmazzal egy-egy determináló kapcsolattípus köti össze. Hány elemű lesz C relációs séma kulcsa, miután a fentiekben leírt ER-diagramot relációs sémákra képezzük le? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# 7&lt;br /&gt;
# 14&lt;br /&gt;
# 21&lt;br /&gt;
# 28&lt;br /&gt;
&lt;br /&gt;
== A sorted merge join algoritmus a join attribútumok szerint rendezett r és s relációk között &amp;lt;válasz&amp;gt; ahol br és bs a relációk blokkjainak számát jelöli... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# legfeljebb br + bs blokkművelettel megvalósítható, ...&lt;br /&gt;
# legalább br + bs blokkművelettel valósítható meg, ...&lt;br /&gt;
# pontosan br + bs blokkművelettel valósítható meg, ...&lt;br /&gt;
# egyik sem.&lt;br /&gt;
&lt;br /&gt;
== Két reláció természetes illesztésének megvalósításakor P: a blokk-alapú egymásba ágyazott ciklikus illesztés (&amp;quot;block nested loop&amp;quot;) költsége kisebb lehet, mint az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;)... Q: ...mert kevesebb rekordpár illeszkedés-vizsgálatára van szükség az algoritmus futása során. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Egy gyenge egyedhalmaz elemeinek azonosításához nem elég egy gyenge egyedhalmaz kulcsa,... Q: ...ezért a gyenge egyedhalmaz mindig specializált egyedhalmaz. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg az egyetlen helyes választ! Adott egy X -&amp;gt; Y funkcionális függés. Ekkor: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# X függ Y-tól.&lt;br /&gt;
# X értéke ismeretében Y értéke mindig megadható.&lt;br /&gt;
# Az X értéke meghatározza Y értékét.&lt;br /&gt;
# Y értéke ismeretében X értéke mindig megadható.&lt;br /&gt;
&lt;br /&gt;
== Mely igaz az alábbiak közül? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Ha egy ütemezés sorosítható, akkor lehet olyan időpillanat, amikor a várakozási gráfban irányított kör van.&lt;br /&gt;
# Ha egy ütemezés sorosítható, akkor nincs olyan időpillanat, amikor a várakozási gráfban irányított kör van.&lt;br /&gt;
# Ha a várakozási gráf egyetlen időpillanatban sem tartalmaz irányított kört, akor az ütemezés sorosítható.&lt;br /&gt;
# Ha a várakozási gráf valamely időpillanatban tartalmaz irányított kört, akkor az ütemezés nem sorosítható.&lt;br /&gt;
&lt;br /&gt;
==  A következőket tudjuk egy B* fáról és annak tartalmáról: A fa elágazási tényezője 5; Egy blokkba 3 adatrekord fér el; Egy blokk elérése 5 ms-ig tart; A B*-fa egyetlen részét se tároljuk a memóriában; Egy kulcsalapú egyenlőségi keresés átlagos ideje 20 ms; Kérdés: legfeljebb hány adat rekord lehet a fában jelenleg? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 75&lt;br /&gt;
# 81&lt;br /&gt;
# 125&lt;br /&gt;
# 375&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Adatb%C3%A1zis&amp;diff=205066</id>
		<title>Záróvizsga kvíz - Adatbázis</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Adatb%C3%A1zis&amp;diff=205066"/>
		<updated>2023-12-12T10:14:19Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: kérdések hozzáadása&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Kvízoldal&lt;br /&gt;
|cím=ZVAdatb|pontozás=-&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Egy adatbázis-kezelő rendszer szigorú tranzakciós protokollt és egyszerű zármodellt (tranzakciós modellt) használ. Az alábbi állítások közül melyik nem helyes? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A zárkezelés kétfázisú (2PL) lesz.&lt;br /&gt;
# Nem fordulhat elő lavina.&lt;br /&gt;
# Naplózás esetén nem lesz szükség undo-ra a helyreállításhoz.&lt;br /&gt;
# A zárak a commit (kész) pont után felszabadíthatók&lt;br /&gt;
&lt;br /&gt;
== Melyik NEM fejezhető ki SQL lekérdezések segítségével a halmazalgebra alábbi műveletei közül? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# metszetképzés&lt;br /&gt;
# Descartes-szorzat&lt;br /&gt;
# komplementer-képzés&lt;br /&gt;
# különbségképzés&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, hogy a keresés költségének nagyságrendjére vonatkozó alábbi 1), 2), 3), 4), 5), 6) állítások közül melyek igazak, ha az állományt B*-fában tároljuk! A költséget a blokkműveletek számával mérjük. (2023 jun) ==&lt;br /&gt;
# A keresés költsége lineárisan nő a fa magasságával&lt;br /&gt;
# A keresés költsége logaritmikusan nő a fa magasságával&lt;br /&gt;
# A keresés költsége lineárisan aránylik az elágazási tényezőhöz&lt;br /&gt;
# A keresés költsége logaritmikusan aránylik az elágazási tényezőhöz&lt;br /&gt;
# Az elemek beszúrási sorrendjének nincs hatása a keresés költségére&lt;br /&gt;
# Az elemek beszúrási sorrendjének van hatása a keresés költségére&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# 1), 4), 5)&lt;br /&gt;
# 2), 3), 6)&lt;br /&gt;
# 2), 4), 6)&lt;br /&gt;
# 1), 4), 6)&lt;br /&gt;
# 1), 3), 6)&lt;br /&gt;
# 2), 4), 5)&lt;br /&gt;
&lt;br /&gt;
== Az r és s relációk természetes illesztését egymásba ágyazott ciklikus illesztéssel (nested loop join) végezzük. A két állomány rendre b és b számú blokkból áll, illetve n és n rekordot tartalmaz. (2023 jun) ==&lt;br /&gt;
Az alábbi lehetőségek közül melyik lehet a join blokkműveletek számában mért költsége a legrosszabb esetben, ha a relációknak csak egy- egy blokkja fér a memóriába?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=6}}&lt;br /&gt;
# &amp;lt;math&amp;gt;n_r + n_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_s + b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r + b_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r + n_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;n_r * n_s&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== A következő ábrák közül melyik nem szerepelhet ER-diagram részeként? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid1.png|keretnélküli]]&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid 2.png|keretnélküli]]&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid 3.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
== Adott egy séma és az attribútumai között értelmezett funkcionális függések halmaza. Tudjuk, hogy a nemtriviális függések bal oldalán található attribútum(halmaz)on a rekordok értéke egyedi. Ekkor (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a sémára illeszkedő egyetlen adathalmazban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# lehet olyan, a sémára illeszkedő adathalmaz, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# van olyan, a sémára illeszkedő adathalmaz, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedő egyetlen adathalmazban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
&lt;br /&gt;
== A válaszlehetőségek közül melyik a csatolt ER-diagram legpontosabb relációs leképezése? (2023 jun) ==&lt;br /&gt;
&lt;br /&gt;
[[Fájl:2023 június mérnökinformatikus záróvizsga Adatbázisok ER sémadekompozíció 1.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# A(a, b, c), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol A kulcsa a és b együtt, és A-ban b idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt, valamint K-ban a és b is idegen kulcs&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b, c, d), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt és K mind a négy attribútuma egyenként idegen kulcs is.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), B(a, b, d), ahol B kulcsa a és b együtt, és B-ben a idegen kulcs.&lt;br /&gt;
&lt;br /&gt;
== Időbélyeges tranzakciókezelés esetén melyik állítás NEM helyes? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy adott ütemezésnek mindig van soros ekvivalense (a tranzakciók időbélyegei szerinti növekvő sorrendű).&lt;br /&gt;
# Szigorú protokoll megvalósításához az időbélyegek mellett zárak is szükségesek.&lt;br /&gt;
# Egy adott ütemezésnek akár több soros ekvivalense is lehet.&lt;br /&gt;
# Egy adott ütemezésnek lehet soros ekvivalense.&lt;br /&gt;
&lt;br /&gt;
== Az SQL lekérdezésekben a &amp;quot;SELECT DISTINCT&amp;quot; az ismétlődéseket szűri az eredményhalmazból. A relációs algebrában hogyan valósítható meg ez a művelet? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Nincs rá szükség, mert a relációs algebra halmazokkal dolgozik, ahol nem szerepelnek ismétlődések.&lt;br /&gt;
# Az unió vagy a metszet műveleteket kell használni, ha követelmény az ismétlődések szűrése.&lt;br /&gt;
# A természetes illesztés alkalmas erre, hiszen az az azonos nevű attribútumokat csak egyszer adja vissza.&lt;br /&gt;
&lt;br /&gt;
== Egy adatállományt vödrös hash szervezéssel tárolunk. A következőket tudjuk az állományról: (2023 jun) ==&lt;br /&gt;
1. Egy rekord egy blokknyi helyet foglal el.&lt;br /&gt;
2. Az alkalmazott hash függvény: &#039;k mod 5&#039;, ahol a &#039;k&#039; a kulcsot jelenti.&lt;br /&gt;
3. A vödrös hash kezdetben üres.&lt;br /&gt;
4. A hashtábla elfér az operatív tárban.&lt;br /&gt;
A beszúrt rekordok kulcsai a következők: 5, 7, 3, 9, 10, 1, 4, 7, 19.&lt;br /&gt;
Hány blokkműveletet fog a rendszer végezni, ha azon rekordot keressük, amelynek kulcsa 24?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 2&lt;br /&gt;
# 1&lt;br /&gt;
# 0&lt;br /&gt;
# 3&lt;br /&gt;
&lt;br /&gt;
== Melyik állítás igaz? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legalacsonyabb normál formája 1NF, ha nincs másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legmagasabb normál formája 1NF, ha van másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legalacsonyabb normál formája 3NF, ha van másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legmagasabb normál formája 3NF, ha nincs másodlagos attribútuma.&lt;br /&gt;
&lt;br /&gt;
== Egy állomány tárolása során két merevlemez közül lehet választani: (2023 jan) ==&lt;br /&gt;
* Az &amp;quot;A&amp;quot; lemeznél a blokkméret 4000 byte, egy blokkművelet ideje 10 ms&lt;br /&gt;
* Az &amp;quot;B&amp;quot; lemeznél a blokkméret 12000 byte, egy blokkművelet ideje 20 ms. A tárolni kívánt rekordok mérete lehetővé teszi, hogy a blokkokat mindkét esetben veszteség nélkül használjuk.&lt;br /&gt;
Melyik lemezt válasszuk, ha csak lineáris keresést kell támogatni?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A &amp;quot;B&amp;quot;-t kell választani, mert mindig jobb a nagyobb blokkméret, mint a kisebb.&lt;br /&gt;
# Az &amp;quot;A&amp;quot;-t kell választani, mert ott gyorsabb az egyes blokkok elérése.&lt;br /&gt;
# Az &amp;quot;A&amp;quot;-t kell választani, mert ugyan 3-szor több blokkot kell használni, de ezt ellensúlyozza a hozzáférési sebesség felezése.&lt;br /&gt;
# A &amp;quot;B&amp;quot;-t kell választani, mert harmadannyi blokkot kell használni, ami jobban gyorsítja a keresést, mint az egyes blokkok hozzáférési sebességének duplázódása.&lt;br /&gt;
&lt;br /&gt;
== Hány eleme lehet C-nek, ha A 10, B pedig 50 elemű? (2023 jan) ==&lt;br /&gt;
&lt;br /&gt;
[[Fájl:Info zv 2023 jan adatb er 1.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Legalább 0, legfeljebb 500&lt;br /&gt;
# Legalább 0, legfeljebb 50&lt;br /&gt;
# Legalább 10, legfeljebb 50.&lt;br /&gt;
# Legalább 0, legfeljebb 10&lt;br /&gt;
&lt;br /&gt;
== Adatbázisunkban tárolnánk, hogy légitársaságunk egyes repülőgépeire melyik pilótánknak van típusjogosítása, illetve hogy az egyes gépek melyik járatokon üzemelnek jelenleg. Melyik ER-modell felel meg a leírtaknak? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, egy bináris kapcsolattípus a Pilóta és a Repülőgép között és egy bináris kapcsolattípus a Repülőgép és a Járat között.&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, köztük egy ternáris kapcsolattípus.&lt;br /&gt;
# Egy Repülőgép gyenge egyedhalmaz, amelyet a Pilóta és a Járat egyedhalmazok determinálnak.&lt;br /&gt;
# Egy Repülőgép kapcsolattípus, amely a Pilóta egyedhalmazt és a Járat egyedhalmazt köti össze.&lt;br /&gt;
&lt;br /&gt;
== Mi nem jellemző a fa protokollra? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Zár bármikor, bárhonnan eltávolítható.&lt;br /&gt;
# Zár - az elsőt kivéve - csak akkor helyezhető el egy csomóponton, ha a szülőcsomóponton is tart fenn zárat a tranzakció.&lt;br /&gt;
# A tranzakciók tehetik az első zárjukat a fa gyökerére is.&lt;br /&gt;
# A fa protokoll szerinti tranzakciók kétfázisúak.&lt;br /&gt;
&lt;br /&gt;
== A relációs lekérdezések végrehajtásának heurisztikus optimalizálása során az alábbiak közül melyik NEM történik (Süllyesztés alatt azt értjük, amikor a relációalgebrai fa átalakítása során az adott művelet a gyökércsomóponttól a levélcsomópontok irányába mozdul el.) (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Descartes-szorzások süllyesztése&lt;br /&gt;
# Szelekciók süllyesztése.&lt;br /&gt;
# Levélcsomópontok átrendezése&lt;br /&gt;
# Projekciók süllyesztése.&lt;br /&gt;
&lt;br /&gt;
== Az SQL SELECT utasítás melyik része nem fejezhető ki relációs algebrával az alábbiak közül? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# GROUP BY&lt;br /&gt;
# FROM ... NATURAL JOIN ...&lt;br /&gt;
# WHERE&lt;br /&gt;
# SELECT DISTINCT&lt;br /&gt;
&lt;br /&gt;
== Egy adatállomány rekordjaira ritka indexet építettek: (2023 jan) ==&lt;br /&gt;
* Az adatrekordok és az indexrekordok egyaránt teljesen kitöltik a blokkokat&lt;br /&gt;
* Egy adatrekord 100 Byte&lt;br /&gt;
* Összesen 100000 adatrekordot tárolunk&lt;br /&gt;
* Az adatállomány blocking faktora 100&lt;br /&gt;
* Az indexállomány blocking faktora 400&lt;br /&gt;
* A mutató mérete 10 byte&lt;br /&gt;
* Egy blokk elérési ideje 15 ms&lt;br /&gt;
&lt;br /&gt;
Mekkora a kulcs mérete?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# 5 Byte&lt;br /&gt;
# 10 Byte&lt;br /&gt;
# 15 Byte&lt;br /&gt;
# 20 Byte&lt;br /&gt;
&lt;br /&gt;
== Milyen hiba ellen nem véd a szigorú 2PL (kétfázisú zárolás) protokoll? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Abort az operatív tár sérülése miatt.&lt;br /&gt;
# Abort patt miatt.&lt;br /&gt;
# Abort nem-sorosíthatóság miatt.&lt;br /&gt;
# Felhasználói abort.&lt;br /&gt;
&lt;br /&gt;
== Mit jelent a relációs adatbázis katalógusinformációi között szereplő kiválasztási kardinalitás (selection cardinality) az SC(A, r) formában? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# Azon blokkok átlagos száma, amelyeket be kell olvasni az r relációból a keresés során az A attribútumra felírt egyenlőségi feltétel alapú szelekció esetén.&lt;br /&gt;
# Az r reláció A attribútumára időegység alatt végrehajtott kiválasztás műveletek (szelekciók) átlagos száma.&lt;br /&gt;
# Azon rekordok átlagos száma az r relációban, amelyek kielégítenek egy egyenlőségi feltételt az A attribútumra, feltéve, hogy legalább egy rekord kielégíti ezt az egyenlőségi feltételt.&lt;br /&gt;
# Az r reláció A attribútumában található különböző értékek száma.&lt;br /&gt;
&lt;br /&gt;
== Legfeljebb mekkora lehet két reláció természetes illesztésének rekordszáma, ha az egyik rekordszáma n, a másik rekordszáma m? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# max (n, m)&lt;br /&gt;
# n * m&lt;br /&gt;
# n + m&lt;br /&gt;
# min(n, m)&lt;br /&gt;
&lt;br /&gt;
== Melyik állítás igaz? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Egy relációs sémának a legmagasabb normál formája 2NF, ha nincs másodlagos attribútuma&lt;br /&gt;
# Egy relációs sémának a legmagasabb normál formája 3NF, ha minden attribútuma elsődleges&lt;br /&gt;
# Egy relációs sémának lehet minden attribútuma másodlagos.&lt;br /&gt;
# Egy relációs sémának a legalacsonyabb normál formája 3NF, ha nincs másodlagos attribútuma&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyik NEM szerepel a relációkra vonatkozó katalógus-információk között, amely a végrehajtási terv készítését támogatja? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# A reláció rekordjaiban a mezők száma.&lt;br /&gt;
# A reláció egy rekordjának mérete.&lt;br /&gt;
# A reláció rekordjainak száma.&lt;br /&gt;
# A relációban levő rekordokat tartalmazó blokkok száma.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyiket nem befolyásolja a keresési kulcs mérete? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A nested loop join algoritmus lépésszáma&lt;br /&gt;
# Keresés költsége heap szervezés esetén&lt;br /&gt;
# &amp;lt;math&amp;gt;B^{*}&amp;lt;/math&amp;gt;-fa magassága&lt;br /&gt;
# Hash tábla mérete&lt;br /&gt;
&lt;br /&gt;
== Az SQL SELECT utasítás melyik része felel meg leginkább a relációalgebrai projekció (vetítés) műveletnek? (2022 jun) ==&lt;br /&gt;
A válaszadás során tételezzük fel, hogy a lekérdezés egyetlen táblából dolgozik és a tábla egyetlen kulcsa sem jelenik meg az eredményben!&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# FROM&lt;br /&gt;
# SELECT DISTINCT&lt;br /&gt;
# ORDER BY&lt;br /&gt;
# WHERE&lt;br /&gt;
# SELECT&lt;br /&gt;
&lt;br /&gt;
== Tudjuk, hogy az R relációs sémán fennálló összes nemtriviális függés esetén a függés bal oldalán található attribútum(halmaz) értéke egyedi minden, a sémára illeszkedő relációban. Ekkor (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# egyik sem helyes a többi állítás közül.&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedổ egyetlen relációban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
# van olyan, a sémára illeszkedő reláció, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
&lt;br /&gt;
== Adott az (R, F) séma, ahol R=ABCGWXYZ, F=(XY → BGYZ, AY → CG, C → W, B → G) Melyik függés vezethető le az adott függéshalmazból? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# ABGY → GX&lt;br /&gt;
# ACYZ → W&lt;br /&gt;
# AB → XG&lt;br /&gt;
# BXY → GXW&lt;br /&gt;
&lt;br /&gt;
== Egy B*-fáról a következőket tudjuk: (2022 jun) ==&lt;br /&gt;
* Az adatokat növekvő sorrendben tároljuk&lt;br /&gt;
* Az adatblokkok száma 402&lt;br /&gt;
* Az adatrekordok mérete 200 byte&lt;br /&gt;
* Egy blokk mérete nettó 2000 byte&lt;br /&gt;
* A kulcsok mérete 50 byte&lt;br /&gt;
* Egy mutató 50 byte&lt;br /&gt;
* A kulcsra vonatkozó szelekció kardinalitása (SC) 5 .&lt;br /&gt;
Ideális esetben legkevesebb hány blokkot kell kiolvasnunk egy kulcsértékre vonatkozó egyenlőség alapú keresésnél?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 4&lt;br /&gt;
# 9&lt;br /&gt;
# 2&lt;br /&gt;
# 3&lt;br /&gt;
&lt;br /&gt;
== Az üzemanyaggal történő visszaélések visszaszorítására egy cég úgy dönt, hogy kimutatásokat fog készíteni arról, hogy a cég mely járművébe melyik dolgozó hol és mennyit tankol. A dolgozók minden műszak elején teli tankkal veszik át a jármúveket, és a múszak végén megtankolva kell azokat leadniuk a telephelyen, így a tankolásmennyiségből kikövetkeztethető, hogy ki mennyi üzemanyagot használt, és hogy az illető az adott autóba melyik benzinkúton tankolt. (2022 jun) ==&lt;br /&gt;
[[Fájl:2022 jun info zv adatb ER 1.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
Milyen módosítást kell tenni a fenti ER-diagramon, amely után a modellből készült adatbázis alkalmas lesz a fent említett riportokhoz szükséges adatok tárolásához?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Törölni a Feltölt kapcsolattípust&lt;br /&gt;
# Törölni a Feltölt, Telik és Látogat kapcsolattípusokat&lt;br /&gt;
# Törölni a Látogat kapcsolattípust&lt;br /&gt;
# Törölni a Telik kapcsolattípust&lt;br /&gt;
# Törölni a Tankol kapcsolattípust&lt;br /&gt;
&lt;br /&gt;
== A válaszlehetőségek közül melyik a csatolt ER-diagram legpontosabb relációs leképezése? (2022 jun) ==&lt;br /&gt;
[[Fájl:2022 jun info zv adatb er dekomp.png|keretnélküli]]&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), B(a, b, d), ahol B kulcsa a és b együtt, és B-ben a idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt, valamint K-ban a és b is idegen kulcs&lt;br /&gt;
# A(a, b, c), B(b, d), ahol A kulcsa a és b együtt, és A-ban b idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b, c, d), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt és K mind a négy attribútuma egyenként idegen kulcs is.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, hogy az alábbiak közül mely állítás(ok) igazak a keresési költségekkel kapcsolatban, ha az adatokat B*-fában tároljuk! A költséget a blokkműveletek számával mérjük. (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,4}}&lt;br /&gt;
# A költség logaritmikusan arányos az adatrekordok számával.&lt;br /&gt;
# A költség lineárisan arányos az index struktúra elágazási tényezőjével.&lt;br /&gt;
# A költség lienárisan arányos az index blokkok számával.&lt;br /&gt;
# A költség lineárisan arányos a fa magasságával.&lt;br /&gt;
&lt;br /&gt;
== Adott két tábla, T1 (oszlopai: A és B), és T2 (oszlopai: B és C). Válassza ki az alábbi lekérdezés eredményére vonatkozó állítások közül azt, amelyik biztosan igaz! (2022 jan) ==&lt;br /&gt;
Feltételezzük, hogy a lekérdezés szintaktikailag helyes és a táblák oszlopait is helyesen hivatkozza, a táblákban nem szerepel NULL érték, és&lt;br /&gt;
az eredmény oszlopait R1, R2, R3 és R4 néven nevezzük.&lt;br /&gt;
&amp;lt;pre&amp;gt;SELECT T1.A AS R1, T1.B AS R2, T2.B AS R3, T2.C AS R4&lt;br /&gt;
FROM T1 LEFT JOIN T2 ON (T1.B = T2.B) ;&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Az eredményben T1 minden rekordja szerepel.&lt;br /&gt;
# Az eredményben T2 minden rekordja szerepel.&lt;br /&gt;
# Az eredmény minden rekordjában megegyezik R2 és R3 mezők értéke.&lt;br /&gt;
# R4 mezőben nem fordul elő NULL érték.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyiket NEM befolyásolja a keresési kulcs mérete? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A nested loop join algoritmus lépésszáma&lt;br /&gt;
# Vödrös hash tábla mérete&lt;br /&gt;
# Keresés költsége heap szervezés esetén&lt;br /&gt;
# B*-fa magassága&lt;br /&gt;
&lt;br /&gt;
== Válassza ki az egyetlen igaz állítást! (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Egy ER-modell determináló kapcsolathalmazának kardinalitása lehet több-több.&lt;br /&gt;
# Egy attribútumként jelzett idegen kulcs több egyedhalmazhoz is tartozhat az ER-modellben.&lt;br /&gt;
# Egy ER-modell gyenge egyedhalmazához mindig fel kell venni legalább egy idegen kulcsot, mint attribútumot az ER modellben.&lt;br /&gt;
# Egy ER-modell gyenge egyedhalmazához mindig fel kell venni legalább egy determináló kapcsolathalmazt.&lt;br /&gt;
&lt;br /&gt;
== Egy gépjárműnyilvántartásban két tábla tárolja az autók és tulajdonosaik adatait, melyek sémái a következők: (2022 jan) ==&lt;br /&gt;
Tulajdonos(személyi_szám, név, születési_dátum, anyja_neve), kulcs: személyi szám&lt;br /&gt;
Gépjármű(rendszám, típus, márka, szín, gyártás_éve, tulajdonos_személyi_száma), kulcs: rendszám&lt;br /&gt;
&lt;br /&gt;
A táblák n db személy és m db gépjármű adatait tárolják, és egy személynek átlagosan 2 db gépjárműve van.&lt;br /&gt;
&lt;br /&gt;
Az alábbi SQL lekérdezés eredményrekordjainak számát melyik kifejezés becsüli legjobban?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;SELECT személyi_szám, név, rendszám, típus, márka&lt;br /&gt;
FROM tulajdonos, gépjármű&lt;br /&gt;
WHERE tulajdonos.személyi_szám = gépjármű.tulajdonos_személyi_száma ;&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# n + m&lt;br /&gt;
# 2 * m&lt;br /&gt;
# n&lt;br /&gt;
# m&lt;br /&gt;
# n * m&lt;br /&gt;
&lt;br /&gt;
== Legyen r(R) egy adott reláció, melynek sémája R(A,B,C,D). Tudjuk, hogy t, t* r(R) t[A]=t*[A] esetén t[B]=t*[B]. Ekkor: (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# az A-tól a B funkcionálisan függ.&lt;br /&gt;
# a fentiek közül egyik válasz sem helyes.&lt;br /&gt;
# az A-tól a B funkcionálisan függhet.&lt;br /&gt;
# az A a B-től funkcionálisan függ.&lt;br /&gt;
&lt;br /&gt;
== A felsoroltak közül melyik NEM szerepel egy relációs lekérdezés végrehajtási tervében? Feltételezzük, hogy relációalgebrai reprezentációval dolgozik a vizsgált adatbázis-kezelő rendszer. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A végrehajtás során használt workflow-stratégia (materializáció vagy pipelining).&lt;br /&gt;
# A használt relációalgebrai műveletek és azok hierarchiája a lekérdezésben.&lt;br /&gt;
# A végrehajtás során használandó indexek neve.&lt;br /&gt;
# Az eredmény várható rekordszáma.&lt;br /&gt;
# A használt relációalgebrai műveletek végrehajtásához rendelt algoritmusok.&lt;br /&gt;
# Az input relációk.&lt;br /&gt;
&lt;br /&gt;
== Melyik az egyetlen helyes válasz? Tudjuk, hogy az R relációs sémára illeszkedő minden relációban az összes nemtriviális függés esetén a függés bal oldalán található attribútum(halmaz) értéke egyedi. Ekkor... (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
# van olyan, a sémára illeszkedő reláció, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# egyik sem helyes a többi állítás közül.&lt;br /&gt;
&lt;br /&gt;
== Adottak az A és B egyedhalmazok, valamint a köztük definiált bináris kapcsolathalmaz K, melynek kardinalitása több-több. Tegyük fel, hogy A-ban 10, B-ben pedig 20 egyed van. Legfeljebb hány kapcsolat lehet K-ban? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# 30&lt;br /&gt;
# 200&lt;br /&gt;
# 10&lt;br /&gt;
# 20&lt;br /&gt;
&lt;br /&gt;
== Két attribútum (A, B) között szeretnénk a funkcionális függőségi kapcsolatot megállapítani, azonban ezen attribútumoknak az értékei még nem ismertek. Lehetséges-e a kérdésre választ adni? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igen.&lt;br /&gt;
# Nem.&lt;br /&gt;
# Enne a kérdésnek semmi értelme.&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor: P: A tranzakciók a kész pontjuk előtt nem engedik el a zárakat... Q: ...ezért rendszerhiba esetén nincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának szükséges és elégséges feltétele,... Q: ...ezért sorosítható ütemezés esetén nem kell tartani a pattoktól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy relációs sémának... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
# ...a legmagasabb normálformája 3NF, ha minden attribútuma elsődleges.&lt;br /&gt;
# ...a legmagasabb normálformája 2NF, ha nincs másodlagos attribútum.&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
&lt;br /&gt;
== Egy relációs sémának... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
# ...a legalacsonyabb normálformája 3NF, ha nincs más másodlagos attribútum.&lt;br /&gt;
# ...a legmagasabb normálformája 2NF, ha nincs másodlagos attribútum.&lt;br /&gt;
# ...lehet, hogy minden attribútuma másodlagos.&lt;br /&gt;
&lt;br /&gt;
== A funkcionális függés... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# soha nem értékfüggetlen kényszer.&lt;br /&gt;
# mindig értékfüggő kényszer.&lt;br /&gt;
# lehet értékfüggő kényszer.&lt;br /&gt;
# mindig értékfüggetlen kényszer.&lt;br /&gt;
&lt;br /&gt;
== P: A kiterjesztett ER-modell elemkészletében szereplő gyenge egyedhalmaz nem képezhető le a relációs adatmodellre,... Q: ...mert a reláció egy halmaz, így a benne szereplő rekordok egyedisége definíciószerűen elvárt. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Adott két tábla, T1 (oszlopai: A és B), és T2 (oszlopai: B és C). Válassza ki az alábbi lekérdezés eredményére vonatkozó állítások közül azt, amelyik biztosan igaz! Feltételezzük, hogy a lekérdezés szintaktikailag helyes és a táblák oszlopait is helyesen hivatkozza, a táblákban nem szerepel NULL érték, és az eredmény oszlopait R1, R2, R3 és R4 néven nevezzük. SELECT T1.A AS R1, T1.B AS R2, T2.B AS R3, T2.C AS R4 FROM T1 LEFT JOIN T2 ON (T1.B = T2.B) ; ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Az eredményben T1 minden rekordja szerepel.&lt;br /&gt;
# Az eredmény minden rekordjában megegyezik R2 és R3 mezők értéke.&lt;br /&gt;
# R4 mezőben nem fordul elő NULL érték.&lt;br /&gt;
# Az eredményben T2 minden rekordja szerepel.&lt;br /&gt;
&lt;br /&gt;
== P: Az imperatív lekérdezőnyelven megfogalmazott relációs lekérdezések több lehetséges végrehajtási terv mentén értékelhetők ki, ... Q: ...ezért a költség alapú optimalizálás célja: minimalizálni a join műveletek költségét. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy adatbázisban vödrös hashelést alkalmaznak a rekordok tárolására. Az alábbiak közül mi(k) okozhatják, hogy az egyes vödrökben tárolt rekordok elérési ideje jelentősen eltérhet egymástól (több helyes válasz is lehetséges, a helytelen válasz pontlevonással jár)? ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A hash függvény helytelen megválasztása.&lt;br /&gt;
# Ha sokkal több a törlés, mint a beszúrás.&lt;br /&gt;
# A rekordok kulcsértékeinek nem egyenletes eloszlása.&lt;br /&gt;
# Az adatok elhelyezkedése a merevlemezen.&lt;br /&gt;
# Ha sokkal több a beszúrás, mint a törlés.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy relációs lekérdező nyelv képes az unió, különbség, Descartes-szorzat, vetítés és kiválasztás műveleteit kifejezni, akkor relációsan teljesnek nevezik, ... Q: ...mert az ilyen lekérdező nyelvek segítségével egy relációs adatbázisból mindent le tudunk kérdezni. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== 500 bájtos blokkméret mellett mekkora méretű lesz egy 10 vödörből álló hash állomány vödörkatalógusa, ha egy mutató 5, egy kulcs pedig 10 bájtos? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 500 Byte&lt;br /&gt;
# 2000 Byte&lt;br /&gt;
# 1500 Byte&lt;br /&gt;
# 1000 Byte&lt;br /&gt;
&lt;br /&gt;
== P: Mivel minden tranzitív funkcionális függés egyúttal részleges függés is, ... Q: ...ezért minden részleges függés tranzitív függés is. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legalább 1NF relációs sémának valamennyi kulcsa egyszerű, akkor a séma legalább 2NF, ... Q: ...mert az egyszerű kulcsok kizárják, hogy a sémában másodlagos attribútumok legyenek. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha másodlagos attribútum egy kulcstól részlegesen függ, akkor tranzitívan is függ tőle, ... Q: ...ezért ha egy séma nem 2NF, akkor 3NF sem lehet. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Az, hogy egy A és B egyedhalmazok közötti K kapcsolattípus funkcionalitása &amp;quot;több-több&amp;quot;, azt jelenti, hogy ... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# K minden egyes kapcsolatpéldánya A több elemét rendeli B több eleméhez.&lt;br /&gt;
# K minden kapcsolatpéldánya pontosan egy A-beli elemet rendel pontosan egy B-beli elemhez, viszont A valamely eleméhez K kapcsolatpéldányai több B-beli elemet rendelhetnek, és B minden eleméhez K kapcsolatpéldányai több A-beli elemet rendelhetnek.&lt;br /&gt;
# A és B között nem engedélyezett több kapcsolattípus definiálása, ezért A és B egyedei között minden egyes kapcsolatot annak szemantikájától függetlenül K valamely kapcsolatpédánya definiálja.&lt;br /&gt;
# A és B egyedhalmazok között K-n kívüli további kapcsolattípusok is engedélyezettek.&lt;br /&gt;
&lt;br /&gt;
== Adott az R(A) séma és a rá illeszkedő r1 reláció. Amennyiben r2 = r1, mit fejez ki a képen látható relációalgebrai kifejezés? r1\ pi r1.A omega r1.A&amp;lt;r2.A(r1xr2) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Üres reláció.&lt;br /&gt;
# r1 legkisebb elemét.&lt;br /&gt;
# r1 legnagyobb és legkisebb elemének halmazát.&lt;br /&gt;
# r1 legnagyobb elemét.&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor... P: ...nem fordulhat elő lavina... Q: ...ezért rendszerhiba esetén nincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== A relációalgebrai faalapú heurisztikus lekérdezésoptimalizálás lépései a kanonikus alakból kiindulva: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# vetítések süllyesztése, fa leveleinek átrendezése, join bevezetése, szelekciók süllyesztése.&lt;br /&gt;
# vetítések süllyesztése, fa leveleinek átrendezése, szelekciók süllyesztése, join bevezetése.&lt;br /&gt;
# szelekciók süllyesztése, fa leveleinek átrendezése, join bevezetése, vetítések süllyesztése.&lt;br /&gt;
# szelekciók süllyesztése, fa leveleinek átrendezése, vetítések süllyesztése, join bevezetése.&lt;br /&gt;
&lt;br /&gt;
== A relációs algebra, relációs sor-, ill. relációs oszlopkalkulus közül melyek teljesek? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# Relációs sorkalkulus.&lt;br /&gt;
# Relációs oszlopkalkulus.&lt;br /&gt;
# Relációs algebra.&lt;br /&gt;
# Csak a relációs algebra.&lt;br /&gt;
# Mindegyik felsorolt.&lt;br /&gt;
&lt;br /&gt;
== Adott egy R séma és a sémára illeszkedő r(R) reláció. P: Mivel az R attribútumai között fennálló érdemi funkcionális függések halmaza mindig tartalmazza az eseti funkcionális függéseket is, ... Q: ...ezért az érdemi funkcionális függőségek segítségével teljeskörűen megállapíthatjuk, hogy melyik attribútumokban fordulhat elő redundáns adattárolás funkcionális függés következtében. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legalább 1NF relációs sémának minden attribútuma elsődleges, akkor a séma nem lehet BCNF, ... Q: ...mert BCNF sémák esetén a nemtriviális függések bal oldalán szuperkulcsok, a jobb oldalán pedig másodlagos attribútumok állnak. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának elégséges feltétele,... Q: ...ezért sorosítható ütemezés esetén nem kell tartani az olvasástól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Melyik nem része az alábbiak közül egy relációs lekérdezés végrehajtási tervének? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A relációs műveletekhez rendelt algoritmusok.&lt;br /&gt;
# A műveletek workflow-ja (materializáció vagy pipelining).&lt;br /&gt;
# A kiválasztott relációs műveletek egymásraépülése.&lt;br /&gt;
# Katalógusinformációk az érintett relációkról.&lt;br /&gt;
&lt;br /&gt;
== 1000 bájtos blokkméret mellett mekkora méretű lesz egy 500 vödörből álló hash-állomány vödörkatalógusa, ha egy mutató 5, egy kulcs pedig 10 bájtos? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 2500 Byte&lt;br /&gt;
# 5000 Byte&lt;br /&gt;
# 10000 Byte&lt;br /&gt;
# 7500 Byte&lt;br /&gt;
&lt;br /&gt;
== P: Adatbáziskezelő-rendszerben a médiahiba felbukkanásának esélyét csökkentendő szokásos megoldás az adatok több példányban, különböző diszkeken történő tárolása, ... Q: ...ezért ilyen esetekben a módosítási anomália okozta inkonzisztencia is gyakoribb. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== A heurisztikus optimalizálásnál használt melyik módszer alkalmazható a költségalapú optimalizálás folyamatában? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Descartes-szorzat és szelekció sorozat helyett megfelelő illesztés bevezetése.&lt;br /&gt;
# Projekciók süllyesztése.&lt;br /&gt;
# A szelekciók süllyesztése.&lt;br /&gt;
# Mindegyik alkalmazható a költségalapú optimalizálás során.&lt;br /&gt;
&lt;br /&gt;
== Adott az (R, F) relációs séma, ahol R = ABCDEG, F = { AB -&amp;gt; BC, AC -&amp;gt; D, CD -&amp;gt; EG, CG -&amp;gt; A, G -&amp;gt; D, D -&amp;gt; C}. Melyik függés vezethető le az adott függéshalmazból? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# D -&amp;gt; B&lt;br /&gt;
# G -&amp;gt; B&lt;br /&gt;
# A -&amp;gt; B&lt;br /&gt;
# AC -&amp;gt; B&lt;br /&gt;
# G -&amp;gt; E&lt;br /&gt;
&lt;br /&gt;
== Hány soros ekvivalense létezik az alábbi ütemezésnek, ha LOCK-UNLOCK párok között az adategység értéke írható és olvasható? T1 LOCK A, T1 UNLOCK A, T2 LOCK A, T2 UNLOCK A, T3 LOCK B, T3 UNLOCK B, T1 LOCK B, T1 UNLOCK B, T2 LOCK C, T2 UNLOCK C, T3 LOCK C, T3 UNLOCK C. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 3&lt;br /&gt;
# 2&lt;br /&gt;
# 1&lt;br /&gt;
# 0&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy ütemezés tranzakciói a szigorú kétfázisú protokoll szabályait követik, akkor a kész pontjuk előtt nem írhatnak az adatbázisba, ... Q: ...ezért rendszerhiba esetén nincs szükség REDO-ra, csak UNDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Két reláció természetes illesztésének mevalósításakor... P: ...az összefésüléses join (&amp;quot;sorted merge join&amp;quot;) költsége kisebb lehet, mint az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;) költsége,... Q: ...mert az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;) költségét jelentősen befolyásolhatja, hogy melyik reláció kerül a külső ill. belső ciklusba. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legális ütemezésben a tranzakciók követik a kétfázisú zárolás szabályait, akkor az ütemezés sorosítható, ... Q: ...ezért kétfázisú zárolás mellett rendszerhiba esetén sincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának szükséges és elégséges feltétele, ... Q: ...ezért sorosítható ütemezés esetén nem kell tartani a fantom olvasástól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Adott egy R séma és a sémára illeszkedő r(R) reláció. P: Mivel az r-n fennálló eseti funkcionális függések halmaza mindig tartalmazza az érdemi funkcionális függéseket is,... Q: ...ezért az eseti funkcionális függőségek segítségével további megállapításokat tehetünk, hogy melyik attribútumokban fordulhat még elő redundáns adattárolás. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Az adatbáziskezelő-rendszer háromrétegű modelljében melyik szinthez/réteghez köthető az adatbiztonság megvalósítása? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A logikai adatbázis réteghez.&lt;br /&gt;
# A fizikai adatbázis réteghez.&lt;br /&gt;
# A nézetek szintjéhez.&lt;br /&gt;
# Egyikhez sem.&lt;br /&gt;
&lt;br /&gt;
== Egy relációalgebrai kifejezés kanonikus alakjában milyen műveletek és milyen sorrendben szerepelnek? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# szelekció, projekció, Théta-illesztés&lt;br /&gt;
# szelekció, projekció, természetes illesztés&lt;br /&gt;
# szelekció, projekció, Descartes-szorzat&lt;br /&gt;
# projekció, szelekció, természetes illesztés&lt;br /&gt;
# projekció, szelekció, Descartes-szorzat&lt;br /&gt;
&lt;br /&gt;
== Mennyi az r és s relációk &amp;quot;egymásba ágyazott ciklus&amp;quot; (nested loop join)-alapú illesztésének legjobb becsült költsége, ha egyik reláció sem fér bele az operatív tárba? (nr és ns a relációk rekordjainak, br és bs pedig a relációk blokkjainak számát jelölik.) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# br + bs&lt;br /&gt;
# nr * br + bs&lt;br /&gt;
# ns * br + bs&lt;br /&gt;
# ns * br + nr * bs&lt;br /&gt;
# bs * br + bs&lt;br /&gt;
&lt;br /&gt;
== P: a egy relációs sémának több kulcsa is van, akkor van összetett kulcsa is, ... Q: ...ezért egy relációs séma szuperkulcsa nem feltétlenül minimális. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Két kulcs szerinti keresést szeretnénk megvalósítani úgy, hogy az adatokat tartalmazó állománnyal szemben semmilyen rendezettség nem várható el. Milyen struktúrát javasolna erre a célra? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Az adatállományra épített egyetlen sűrű index, amelyre két ritka indexet építünk.&lt;br /&gt;
# Az adatállományra épített két sűrű index, amelyekre egy-egy ritka indexet építünk.&lt;br /&gt;
# Az adatállományra épített egyetlen sűrű index, amelyre ritka indexet építünk, illetve az adatállományra emellett épített további ritka index.&lt;br /&gt;
# Az adatállomáányra közvetlenül épített két ritka index.&lt;br /&gt;
&lt;br /&gt;
== P: A deklaratív lekérdezőnyelven megfogalmazott relációs lekérdezések több lehetséges végrehajtási terv mentén értékelhetők ki,... Q: ...ezért a költségalapú optimalizálás célja: minimalizálni a join műveletek során végrehajtott blokkműveletek számát. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A kiterjesztett ER-modell elemkészletével elkészített ER-diagram relációs adatmodellre leképezhető része mindig leképezhető legfeljebb annyi relációs sémára, amennyi az egyedtípusok és kapcsolattípusok számának összege, ... Q: ...mert az egyedek nem lehetnek többen, mint a relációs modellben a relációk összesített rekordszáma. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy adatbáziskezelő-rendszer feladatai közé tartozik - többek között: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# integritás védelme, adatok értelmezhetőségének biztosítása, adatbiztonság&lt;br /&gt;
# integritás védelme, szinkronizálás, adatbiztonság&lt;br /&gt;
# adatok értelmezhetőségének biztosítása, szinkronizálás, adatbiztonság&lt;br /&gt;
# integritás védelme, szinkronizálás, adatok értelmezhetőségének biztosítása&lt;br /&gt;
&lt;br /&gt;
== Válassza ki a csak tranzakcióhibákat tartalmazó lehetőséget! ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# abort nem-sorosíthatóság miatt, nullával osztás, fantom olvasás, elveszett módosítás&lt;br /&gt;
# abort patt miatt, abort nem-sorosíthatóság miatt, nullával osztás, felhasználói abort&lt;br /&gt;
# abort patt miatt, abort nem sorosíthatóság miatt, piszkos adat olvasása, nem megismételhetó olvasás&lt;br /&gt;
# piszkos adat olvasása, nem megismételhető olvasás, fantom olvasás, elveszett módosítás&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a tranzakciók kész pontjuk előtt nem engedik el a zárakat.&lt;br /&gt;
# a tranzakciók a zárpontjuk előtt elengedhetik a zárakat.&lt;br /&gt;
# a tranzakciók a zárpont után már írhatnak az adatbázisba.&lt;br /&gt;
# egy tranzakció ugyanazt az adategységet többször is zárolhatja.&lt;br /&gt;
&lt;br /&gt;
== Az R(A, B, C, D) és S(A, B, E, ) relációs sémák szerint létrehozott r és s táblákon fogalmaztuk meg az alábbi SQL nyelvű lekérdezést. SELECT * FROM r, s WHERE r.A = s.A ; Melyik relációalgebrai műveletet valósítja meg a lekérdezés az r és s relációk között? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# természetes illesztés&lt;br /&gt;
# vetítés (projekció)&lt;br /&gt;
# metszet&lt;br /&gt;
# unió&lt;br /&gt;
# Théta-illesztés&lt;br /&gt;
&lt;br /&gt;
== P: A figyelmeztető protokoll szabályait követő tranzakciókból álló legális ütemezések esetén zárkonfliktus nem fordulhat elő, ... Q: ...mert az ilyen ütemezések esetén a sorosíthatóság garantált. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Egy relációs séma pontosan akkor BCNF, ha minden nemtriviális függés bal oldalán szereplő attribútumok értéke minden, a sémára illeszkedő relációban egyedi,... Q: ...ezért az ilyen sémákra illeszkedő relációkban funkcionális függés miatt redundáns adattárolás sehol nem fordulhat elő. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy ER-diagramon adott két egyedhalmaz, A és B. A attribútumtípusainak száma 18. B attribútumtípusainak száma 13. A-nak egyetlen összetett, 9 db attribútumtípus által alkotott kulcsa van, míg B-nek szintén egyetlen, összetett, 5 db attribútumtípus által alkotott kulcsa. C gyenge egyedhalmaznak egyetlen, 7 darab attribútumtípus által alkotott kulcsa van. C-t ezen kívül A és B egyedhalmazzal egy-egy determináló kapcsolattípus köti össze. Hány elemű lesz C relációs séma kulcsa, miután a fentiekben leírt ER-diagramot relációs sémákra képezzük le? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# 7&lt;br /&gt;
# 14&lt;br /&gt;
# 21&lt;br /&gt;
# 28&lt;br /&gt;
&lt;br /&gt;
== A sorted merge join algoritmus a join attribútumok szerint rendezett r és s relációk között &amp;lt;válasz&amp;gt; ahol br és bs a relációk blokkjainak számát jelöli... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# legfeljebb br + bs blokkművelettel megvalósítható, ...&lt;br /&gt;
# legalább br + bs blokkművelettel valósítható meg, ...&lt;br /&gt;
# pontosan br + bs blokkművelettel valósítható meg, ...&lt;br /&gt;
# egyik sem.&lt;br /&gt;
&lt;br /&gt;
== Két reláció természetes illesztésének megvalósításakor P: a blokk-alapú egymásba ágyazott ciklikus illesztés (&amp;quot;block nested loop&amp;quot;) költsége kisebb lehet, mint az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;)... Q: ...mert kevesebb rekordpár illeszkedés-vizsgálatára van szükség az algoritmus futása során. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Egy gyenge egyedhalmaz elemeinek azonosításához nem elég egy gyenge egyedhalmaz kulcsa,... Q: ...ezért a gyenge egyedhalmaz mindig specializált egyedhalmaz. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg az egyetlen helyes választ! Adott egy X -&amp;gt; Y funkcionális függés. Ekkor: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# X függ Y-tól.&lt;br /&gt;
# X értéke ismeretében Y értéke mindig megadható.&lt;br /&gt;
# Az X értéke meghatározza Y értékét.&lt;br /&gt;
# Y értéke ismeretében X értéke mindig megadható.&lt;br /&gt;
&lt;br /&gt;
== Mely igaz az alábbiak közül? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Ha egy ütemezés sorosítható, akkor lehet olyan időpillanat, amikor a várakozási gráfban irányított kör van.&lt;br /&gt;
# Ha egy ütemezés sorosítható, akkor nincs olyan időpillanat, amikor a várakozási gráfban irányított kör van.&lt;br /&gt;
# Ha a várakozási gráf egyetlen időpillanatban sem tartalmaz irányított kört, akor az ütemezés sorosítható.&lt;br /&gt;
# Ha a várakozási gráf valamely időpillanatban tartalmaz irányított kört, akkor az ütemezés nem sorosítható.&lt;br /&gt;
&lt;br /&gt;
==  A következőket tudjuk egy B* fáról és annak tartalmáról: A fa elágazási tényezője 5; Egy blokkba 3 adatrekord fér el; Egy blokk elérése 5 ms-ig tart; A B*-fa egyetlen részét se tároljuk a memóriában; Egy kulcsalapú egyenlőségi keresés átlagos ideje 20 ms; Kérdés: legfeljebb hány adat rekord lehet a fában jelenleg? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 75&lt;br /&gt;
# 81&lt;br /&gt;
# 125&lt;br /&gt;
# 375&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:2022_jun_info_zv_adatb_er_dekomp.png&amp;diff=205065</id>
		<title>Fájl:2022 jun info zv adatb er dekomp.png</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:2022_jun_info_zv_adatb_er_dekomp.png&amp;diff=205065"/>
		<updated>2023-12-12T10:13:41Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;2022 júniusi mérnökinfó záróvizsga adatb rész ER diagram sémadekompozíció feladat&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:2022_jun_info_zv_adatb_ER_1.png&amp;diff=205064</id>
		<title>Fájl:2022 jun info zv adatb ER 1.png</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:2022_jun_info_zv_adatb_ER_1.png&amp;diff=205064"/>
		<updated>2023-12-12T10:12:37Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;2022 júniusi mérnökinfó záróvizsga adatb rész ER diagram javítás feladat&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Sznik%C3%A1k&amp;diff=205063</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=205063"/>
		<updated>2023-12-11T22:40:33Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: kérdések hozzáadá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;
== 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;
== 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=2,4}}&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;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&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;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Szofttech&amp;diff=205062</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=205062"/>
		<updated>2023-12-11T22:07:56Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: kérdések hozzáadá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}}&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}}&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;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:2022_jun_info_zv_algoritmusok_topologikus_sorrend.png&amp;diff=205060</id>
		<title>Fájl:2022 jun info zv algoritmusok topologikus sorrend.png</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:2022_jun_info_zv_algoritmusok_topologikus_sorrend.png&amp;diff=205060"/>
		<updated>2023-12-11T21:40:33Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;2022 júniusi mérnökinfó záróvizsga algoritmusok rész topologikus sorrend feladat gráf&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:2023_jun_info_zv_algo_kruskal.png&amp;diff=205055</id>
		<title>Fájl:2023 jun info zv algo kruskal.png</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:2023_jun_info_zv_algo_kruskal.png&amp;diff=205055"/>
		<updated>2023-12-11T21:12:24Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;2023 júniusi mérnökinfó záróvizsga Kruskal algoritmus feladat gráf&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:2022_jun_info_zv_algoritmusok_graf.png&amp;diff=205053</id>
		<title>Fájl:2022 jun info zv algoritmusok graf.png</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:2022_jun_info_zv_algoritmusok_graf.png&amp;diff=205053"/>
		<updated>2023-12-11T20:51:02Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;2022 júniusi mérnökinfó záróvizsga algoritmusok rész feladat gráf&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:2022_jun_info_zv_adatb_fagraf.png&amp;diff=205052</id>
		<title>Fájl:2022 jun info zv adatb fagraf.png</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:2022_jun_info_zv_adatb_fagraf.png&amp;diff=205052"/>
		<updated>2023-12-11T20:47:27Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;2022 júniusi mérnökinfó záróvizsga adatbázisok rész fagráf feladat&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=M%C3%A9rn%C3%B6k_informatikus_BSc_z%C3%A1r%C3%B3vizsga&amp;diff=205051</id>
		<title>Mérnök informatikus BSc záróvizsga</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=M%C3%A9rn%C3%B6k_informatikus_BSc_z%C3%A1r%C3%B3vizsga&amp;diff=205051"/>
		<updated>2023-12-11T20:32:13Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: /* Korábbi feladatsorok */ feladatsorok feltöltése&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Tematika==&lt;br /&gt;
A hivatalos tematika, és a felkészüléshez ajánlott irodalom elérhető a [https://www.vik.bme.hu/kepzes/mesterk%C3%A9pz%C3%A9s/jelentkez%C3%A9s/354.html kari weboldalon].&lt;br /&gt;
&lt;br /&gt;
A tematikában szereplő fogalmak a konkrét oldalakra linkelve ki vannak gyűjtve az [https://git.sch.bme.hu/mvarga/info-msc-felveteli-tetelek SCH Git-en](SCHacc belépés szükséges).&lt;br /&gt;
&lt;br /&gt;
==Tanácsok==&lt;br /&gt;
* [[Media:Villany zarovizsga tanacsok.pdf|Szóbeli előadás tanácsok]] (villamosmérnököknek készült, de informatikusoknak is 100%-ban használható)&lt;br /&gt;
* [https://www.vik.bme.hu/kepzes/mesterk%C3%A9pz%C3%A9s/jelentkez%C3%A9s/354.html Mesterképzésre ajánlott fekészülési anyagok]&lt;br /&gt;
** Tanenbaum: Számítógép hálózatok&lt;br /&gt;
** [http://www.tankonyvtar.hu/hu/tartalom/tkt/operacios-rendszerek/adatok.html Kóczy-Kondorosi: Operációs Rendszerek Mérnöki Megközelítésben]&lt;br /&gt;
** [https://edu.interkonyv.hu/edu-read/algoritmusok/169499/ Rónyai Lajos, Ivanyos Gábor, Szabó Réka: Algoritmusok]&lt;br /&gt;
** [https://edu.interkonyv.hu/edu-read/recski-andras-a-szamitastudomany-alapjai/161169/ Katona Gyula Y., Recski András, Szabó Csaba: A számítástudomány alapjai]&lt;br /&gt;
** Sommerville, I. . Szoftver rendszerek fejlesztése&lt;br /&gt;
** [http://www.tankonyvtar.hu/hu/tartalom/tkt/objektum-orientalt/adatok.html Kondorosi, László, Szirmay-Kalos: Objektum orientált szoftverfejlesztés]&lt;br /&gt;
** Erich Gamma, Ralph Johnson, Richard Helm, John Vlissides: Programtervezési minták&lt;br /&gt;
** Imre Gábor (szerk.): Szoftverfejlesztés Java EE platformon&lt;br /&gt;
** [https://db.bme.hu/~gajdos/Adatbazisok2019.pdf Gajdos: Adatbázisok]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;small&amp;gt;&#039;&#039;(A nem linkelt könyvek nagyrészt kikölcsönözhetőek meg nem nevezett oldalakról)&#039;&#039;&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Korábbi feladatsorok==&lt;br /&gt;
&amp;lt;small&amp;gt;&#039;&#039;A feladatsorokból az üres oldalakat eltávolítottuk.&#039;&#039;&amp;lt;/small&amp;gt;&lt;br /&gt;
*[[Media:info_zv_2008jun.pdf | 2008 június]] - [[Media:info_zv_2008jun_mo.pdf | Megoldások]] &lt;br /&gt;
*[[Media:info_zv_2009jan.pdf | 2009 január]] - [[Media:info_zv_2009jan_mo.pdf | Megoldások]] &lt;br /&gt;
*[[Media:info_zv_2009jun.pdf | 2009 június]] - [[Media:info_zv_2009jun_mo.pdf | Megoldások]] &lt;br /&gt;
*[[Media:info_zv_2010jan.pdf | 2010 január]] - [[Infó MSc felvételi 2010. január 4. | Nemhivatalos megoldások]]&lt;br /&gt;
*[[Media:info_zv_2010jun.pdf | 2010 június]] - [[Media:info_zv_2010jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2011jan.pdf | 2011 január]] - [[Media:info_zv_2011jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2011maj.pdf | 2011 május]] - [[Media:info_zv_2011maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2012jan.pdf | 2012 január]] - [[Media:info_zv_2012jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2012maj.pdf | 2012 május]] - [[Media:info_zv_2012maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2013jan.pdf | 2013 január]] - [[Media:info_zv_2013jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2013maj.pdf | 2013 május]] - [[Media:info_zv_2013maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2014jan.pdf | 2014 január]] - [[Media:info_zv_2014jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2014maj.pdf | 2014 május]] - [[Media:info_zv_2014maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2015jan.pdf | 2015 január]] - [[Media:info_zv_2015jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2015maj.pdf | 2015 május]] - [[Media:info_zv_2015maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2016jan.pdf | 2016 január]]  - [[Media:info_zv_2016jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2016jun.pdf | 2016 június]] - [[Media:info_zv_2016jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2017jan.pdf | 2017 január]] - [[Media:info_zv_2017jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2017jun.pdf | 2017 június]] - [[Media:info_zv_2017jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2018jan.pdf | 2018 január]] - [[Media:info_zv_2018jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2018jun-info.pdf | 2018 június]] - [[Media:info_zv_2018jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2019jan.pdf | 2019 január]] - [[Media:info_zv_2019jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2019jun.pdf | 2019 június]] - [[Media:info_zv_2019jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2020jan.pdf | 2020 január]] - [[Media:info_zv_2020jan_mo.pdf | Megoldások]]&lt;br /&gt;
* [[Media:2021.01.04. BSc záróvizsga teszt.pdf | 2021 január]] - [[Media:2021.01.04. BSc záróvizsga megoldás.pdf | Megoldások]]&lt;br /&gt;
* 2022 január - [[Media:info_zv_2022jan_mo.pdf | Megoldások]]&lt;br /&gt;
* [[Media:Info_zv_2022jun.pdf | 2022 június]] - [[Media:Info_zv_2022jun_mo.pdf | Megoldások]]&lt;br /&gt;
* 2023 január - [[Media:Info_zv_2023jan_mo.pdf | Megoldások]]&lt;br /&gt;
* 2023 június - [[Media:info_zv_2023jun_mo.PDF | Megoldások]]&lt;br /&gt;
*[https://www.vik.bme.hu/kepzes/mesterkepzes/jelentkezes/360.html Feladatsorok kari oldala]&lt;br /&gt;
*[https://vik.hk/dokumentum-kategoria/mernokinformatikus-szak/ Feladatsorok a Hallgatói Képviselet oldalán]&lt;br /&gt;
&lt;br /&gt;
===Hibák===&lt;br /&gt;
&lt;br /&gt;
A hibák listája nem hivatalos.&lt;br /&gt;
&lt;br /&gt;
* 2011 jan. adatb 1.: 300 000 + 50 000 + 834 = 350 834 blokk -&amp;gt; hiányzik egy tizedesvessző a megoldásban&lt;br /&gt;
* 2011 jan. hálók 7.: 210, 12 byte -&amp;gt; hibás a feladat, mert a szövegében annak kellene állnia, hogy “B válaszként küldött 4 szegmens TCP PDU-jában az ACK-szám 222,222,222,222”, ekkora kapnánk az alábbi megoldást, mivel ezzel azt jelzi, hogy 221-ig minden rendben megjött, de utána elveszett a szegmens, ezért küldi A újra, a 222-es sorszámú szegmenst.&lt;br /&gt;
* 2011 máj. algel 3.: zárójel után (18 alatt 5) + (18 alatt 6) * (2 alatt 1)&lt;br /&gt;
* 2011 máj. algel 4.: 3. sor 025439, 4. sor 025339, 5. sor 025338&lt;br /&gt;
* 2013 máj. hálók 5.: a, c, d&lt;br /&gt;
* 2017 jún. sznikák 5.: d&lt;br /&gt;
* 2019 jún. sznikák 10.: e&lt;br /&gt;
&lt;br /&gt;
==Kvízek==&lt;br /&gt;
Az alábbi kvízek kizárólag korábbi záróvizsga feladatokat és mintafeladatokat tartalmaznak, megjelölve a forrást.&lt;br /&gt;
* [[Záróvizsga kvíz - Algoritmusok|Algoritmusok]]&lt;br /&gt;
* [[Záróvizsga kvíz - Szofttech|Szoftvertechnológia]]&lt;br /&gt;
* [[Záróvizsga kvíz - Sznikák|Szoftvertechnikák]]&lt;br /&gt;
* [[Záróvizsga_kvíz_-_Adatbázis|Adatbázisok]]&lt;br /&gt;
&lt;br /&gt;
==Más szakok felvételi vizsgái==&lt;br /&gt;
*[[Villamosmérnök BSc záróvizsga | Villamosmérnök]]&lt;br /&gt;
*[[Gazdaságinformatikus MSc felvételi vizsga | Gazdaságinformatikus]]&lt;br /&gt;
*[[Egészségügyi mérnök MSc felvételi vizsga | Egészségügyi mérnök]]&lt;br /&gt;
&lt;br /&gt;
==További információk==&lt;br /&gt;
*[https://www.vik.bme.hu/document/1345/original/bsc-zv-msc-felv-170607.pdf Közös BSc záróvizsga-MSc felvételi szabályzat]&lt;br /&gt;
&lt;br /&gt;
{{Lábléc_-_Mérnök_informatikus_alapszak}}&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:Info_zv_2022jun_mo.pdf&amp;diff=205050</id>
		<title>Fájl:Info zv 2022jun mo.pdf</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:Info_zv_2022jun_mo.pdf&amp;diff=205050"/>
		<updated>2023-12-11T20:31:53Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: File uploaded with MsUpload&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;File uploaded with MsUpload&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Sznik%C3%A1k&amp;diff=205049</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=205049"/>
		<updated>2023-12-11T20:12:04Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: válasz 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;
== 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;
== 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=2,4}}&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;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&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;
== 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;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Adatb%C3%A1zis&amp;diff=205038</id>
		<title>Záróvizsga kvíz - Adatbázis</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Adatb%C3%A1zis&amp;diff=205038"/>
		<updated>2023-12-11T14:55:56Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: források hozzáadása&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Kvízoldal&lt;br /&gt;
|cím=ZVAdatb|pontozás=-&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Egy adatbázis-kezelő rendszer szigorú tranzakciós protokollt és egyszerű zármodellt (tranzakciós modellt) használ. Az alábbi állítások közül melyik nem helyes? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A zárkezelés kétfázisú (2PL) lesz.&lt;br /&gt;
# Nem fordulhat elő lavina.&lt;br /&gt;
# Naplózás esetén nem lesz szükség undo-ra a helyreállításhoz.&lt;br /&gt;
# A zárak a commit (kész) pont után felszabadíthatók&lt;br /&gt;
&lt;br /&gt;
== Melyik NEM fejezhető ki SQL lekérdezések segítségével a halmazalgebra alábbi műveletei közül? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# metszetképzés&lt;br /&gt;
# Descartes-szorzat&lt;br /&gt;
# komplementer-képzés&lt;br /&gt;
# különbségképzés&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, hogy a keresés költségének nagyságrendjére vonatkozó alábbi 1), 2), 3), 4), 5), 6) állítások közül melyek igazak, ha az állományt B*-fában tároljuk! A költséget a blokkműveletek számával mérjük. (2023 jun) ==&lt;br /&gt;
# A keresés költsége lineárisan nő a fa magasságával&lt;br /&gt;
# A keresés költsége logaritmikusan nő a fa magasságával&lt;br /&gt;
# A keresés költsége lineárisan aránylik az elágazási tényezőhöz&lt;br /&gt;
# A keresés költsége logaritmikusan aránylik az elágazási tényezőhöz&lt;br /&gt;
# Az elemek beszúrási sorrendjének nincs hatása a keresés költségére&lt;br /&gt;
# Az elemek beszúrási sorrendjének van hatása a keresés költségére&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# 1), 4), 5)&lt;br /&gt;
# 2), 3), 6)&lt;br /&gt;
# 2), 4), 6)&lt;br /&gt;
# 1), 4), 6)&lt;br /&gt;
# 1), 3), 6)&lt;br /&gt;
# 2), 4), 5)&lt;br /&gt;
&lt;br /&gt;
== Az r és s relációk természetes illesztését egymásba ágyazott ciklikus illesztéssel (nested loop join) végezzük. A két állomány rendre b és b számú blokkból áll, illetve n és n rekordot tartalmaz. (2023 jun) ==&lt;br /&gt;
Az alábbi lehetőségek közül melyik lehet a join blokkműveletek számában mért költsége a legrosszabb esetben, ha a relációknak csak egy- egy blokkja fér a memóriába?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=6}}&lt;br /&gt;
# &amp;lt;math&amp;gt;n_r + n_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_s + b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r + b_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r + n_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;n_r * n_s&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== A következő ábrák közül melyik nem szerepelhet ER-diagram részeként? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid1.png|keretnélküli]]&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid 2.png|keretnélküli]]&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid 3.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
== Adott egy séma és az attribútumai között értelmezett funkcionális függések halmaza. Tudjuk, hogy a nemtriviális függések bal oldalán található attribútum(halmaz)on a rekordok értéke egyedi. Ekkor (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a sémára illeszkedő egyetlen adathalmazban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# lehet olyan, a sémára illeszkedő adathalmaz, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# van olyan, a sémára illeszkedő adathalmaz, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedő egyetlen adathalmazban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
&lt;br /&gt;
== A válaszlehetőségek közül melyik a csatolt ER-diagram legpontosabb relációs leképezése? (2023 jun) ==&lt;br /&gt;
&lt;br /&gt;
[[Fájl:2023 június mérnökinformatikus záróvizsga Adatbázisok ER sémadekompozíció 1.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# A(a, b, c), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol A kulcsa a és b együtt, és A-ban b idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt, valamint K-ban a és b is idegen kulcs&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b, c, d), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt és K mind a négy attribútuma egyenként idegen kulcs is.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), B(a, b, d), ahol B kulcsa a és b együtt, és B-ben a idegen kulcs.&lt;br /&gt;
&lt;br /&gt;
== Időbélyeges tranzakciókezelés esetén melyik állítás NEM helyes? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy adott ütemezésnek mindig van soros ekvivalense (a tranzakciók időbélyegei szerinti növekvő sorrendű).&lt;br /&gt;
# Szigorú protokoll megvalósításához az időbélyegek mellett zárak is szükségesek.&lt;br /&gt;
# Egy adott ütemezésnek akár több soros ekvivalense is lehet.&lt;br /&gt;
# Egy adott ütemezésnek lehet soros ekvivalense.&lt;br /&gt;
&lt;br /&gt;
== Az SQL lekérdezésekben a &amp;quot;SELECT DISTINCT&amp;quot; az ismétlődéseket szűri az eredményhalmazból. A relációs algebrában hogyan valósítható meg ez a művelet? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Nincs rá szükség, mert a relációs algebra halmazokkal dolgozik, ahol nem szerepelnek ismétlődések.&lt;br /&gt;
# Az unió vagy a metszet műveleteket kell használni, ha követelmény az ismétlődések szűrése.&lt;br /&gt;
# A természetes illesztés alkalmas erre, hiszen az az azonos nevű attribútumokat csak egyszer adja vissza.&lt;br /&gt;
&lt;br /&gt;
== Egy adatállományt vödrös hash szervezéssel tárolunk. A következőket tudjuk az állományról: (2023 jun) ==&lt;br /&gt;
1. Egy rekord egy blokknyi helyet foglal el.&lt;br /&gt;
2. Az alkalmazott hash függvény: &#039;k mod 5&#039;, ahol a &#039;k&#039; a kulcsot jelenti.&lt;br /&gt;
3. A vödrös hash kezdetben üres.&lt;br /&gt;
4. A hashtábla elfér az operatív tárban.&lt;br /&gt;
A beszúrt rekordok kulcsai a következők: 5, 7, 3, 9, 10, 1, 4, 7, 19.&lt;br /&gt;
Hány blokkműveletet fog a rendszer végezni, ha azon rekordot keressük, amelynek kulcsa 24?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 2&lt;br /&gt;
# 1&lt;br /&gt;
# 0&lt;br /&gt;
# 3&lt;br /&gt;
&lt;br /&gt;
== Melyik állítás igaz? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legalacsonyabb normál formája 1NF, ha nincs másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legmagasabb normál formája 1NF, ha van másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legalacsonyabb normál formája 3NF, ha van másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legmagasabb normál formája 3NF, ha nincs másodlagos attribútuma.&lt;br /&gt;
&lt;br /&gt;
== Egy állomány tárolása során két merevlemez közül lehet választani: (2023 jan) ==&lt;br /&gt;
* Az &amp;quot;A&amp;quot; lemeznél a blokkméret 4000 byte, egy blokkművelet ideje 10 ms&lt;br /&gt;
* Az &amp;quot;B&amp;quot; lemeznél a blokkméret 12000 byte, egy blokkművelet ideje 20 ms. A tárolni kívánt rekordok mérete lehetővé teszi, hogy a blokkokat mindkét esetben veszteség nélkül használjuk.&lt;br /&gt;
Melyik lemezt válasszuk, ha csak lineáris keresést kell támogatni?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A &amp;quot;B&amp;quot;-t kell választani, mert mindig jobb a nagyobb blokkméret, mint a kisebb.&lt;br /&gt;
# Az &amp;quot;A&amp;quot;-t kell választani, mert ott gyorsabb az egyes blokkok elérése.&lt;br /&gt;
# Az &amp;quot;A&amp;quot;-t kell választani, mert ugyan 3-szor több blokkot kell használni, de ezt ellensúlyozza a hozzáférési sebesség felezése.&lt;br /&gt;
# A &amp;quot;B&amp;quot;-t kell választani, mert harmadannyi blokkot kell használni, ami jobban gyorsítja a keresést, mint az egyes blokkok hozzáférési sebességének duplázódása.&lt;br /&gt;
&lt;br /&gt;
== Hány eleme lehet C-nek, ha A 10, B pedig 50 elemű? (2023 jan) ==&lt;br /&gt;
&lt;br /&gt;
[[Fájl:Info zv 2023 jan adatb er 1.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Legalább 0, legfeljebb 500&lt;br /&gt;
# Legalább 0, legfeljebb 50&lt;br /&gt;
# Legalább 10, legfeljebb 50.&lt;br /&gt;
# Legalább 0, legfeljebb 10&lt;br /&gt;
&lt;br /&gt;
== Adatbázisunkban tárolnánk, hogy légitársaságunk egyes repülőgépeire melyik pilótánknak van típusjogosítása, illetve hogy az egyes gépek melyik járatokon üzemelnek jelenleg. Melyik ER-modell felel meg a leírtaknak? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, egy bináris kapcsolattípus a Pilóta és a Repülőgép között és egy bináris kapcsolattípus a Repülőgép és a Járat között.&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, köztük egy ternáris kapcsolattípus.&lt;br /&gt;
# Egy Repülőgép gyenge egyedhalmaz, amelyet a Pilóta és a Járat egyedhalmazok determinálnak.&lt;br /&gt;
# Egy Repülőgép kapcsolattípus, amely a Pilóta egyedhalmazt és a Járat egyedhalmazt köti össze.&lt;br /&gt;
&lt;br /&gt;
== Mi nem jellemző a fa protokollra? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Zár bármikor, bárhonnan eltávolítható.&lt;br /&gt;
# Zár - az elsőt kivéve - csak akkor helyezhető el egy csomóponton, ha a szülőcsomóponton is tart fenn zárat a tranzakció.&lt;br /&gt;
# A tranzakciók tehetik az első zárjukat a fa gyökerére is.&lt;br /&gt;
# A fa protokoll szerinti tranzakciók kétfázisúak.&lt;br /&gt;
&lt;br /&gt;
== A relációs lekérdezések végrehajtásának heurisztikus optimalizálása során az alábbiak közül melyik NEM történik (Süllyesztés alatt azt értjük, amikor a relációalgebrai fa átalakítása során az adott művelet a gyökércsomóponttól a levélcsomópontok irányába mozdul el.) (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Descartes-szorzások süllyesztése&lt;br /&gt;
# Szelekciók süllyesztése.&lt;br /&gt;
# Levélcsomópontok átrendezése&lt;br /&gt;
# Projekciók süllyesztése.&lt;br /&gt;
&lt;br /&gt;
== Az SQL SELECT utasítás melyik része nem fejezhető ki relációs algebrával az alábbiak közül? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# GROUP BY&lt;br /&gt;
# FROM ... NATURAL JOIN ...&lt;br /&gt;
# WHERE&lt;br /&gt;
# SELECT DISTINCT&lt;br /&gt;
&lt;br /&gt;
== Egy adatállomány rekordjaira ritka indexet építettek: (2023 jan) ==&lt;br /&gt;
* Az adatrekordok és az indexrekordok egyaránt teljesen kitöltik a blokkokat&lt;br /&gt;
* Egy adatrekord 100 Byte&lt;br /&gt;
* Összesen 100000 adatrekordot tárolunk&lt;br /&gt;
* Az adatállomány blocking faktora 100&lt;br /&gt;
* Az indexállomány blocking faktora 400&lt;br /&gt;
* A mutató mérete 10 byte&lt;br /&gt;
* Egy blokk elérési ideje 15 ms&lt;br /&gt;
&lt;br /&gt;
Mekkora a kulcs mérete?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# 5 Byte&lt;br /&gt;
# 10 Byte&lt;br /&gt;
# 15 Byte&lt;br /&gt;
# 20 Byte&lt;br /&gt;
&lt;br /&gt;
== Milyen hiba ellen nem véd a szigorú 2PL (kétfázisú zárolás) protokoll? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Abort az operatív tár sérülése miatt.&lt;br /&gt;
# Abort patt miatt.&lt;br /&gt;
# Abort nem-sorosíthatóság miatt.&lt;br /&gt;
# Felhasználói abort.&lt;br /&gt;
&lt;br /&gt;
== Mit jelent a relációs adatbázis katalógusinformációi között szereplő kiválasztási kardinalitás (selection cardinality) az SC(A, r) formában? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# Azon blokkok átlagos száma, amelyeket be kell olvasni az r relációból a keresés során az A attribútumra felírt egyenlőségi feltétel alapú szelekció esetén.&lt;br /&gt;
# Az r reláció A attribútumára időegység alatt végrehajtott kiválasztás műveletek (szelekciók) átlagos száma.&lt;br /&gt;
# Azon rekordok átlagos száma az r relációban, amelyek kielégítenek egy egyenlőségi feltételt az A attribútumra, feltéve, hogy legalább egy rekord kielégíti ezt az egyenlőségi feltételt.&lt;br /&gt;
# Az r reláció A attribútumában található különböző értékek száma.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, hogy az alábbiak közül mely állítás(ok) igazak a keresési költségekkel kapcsolatban, ha az adatokat B*-fában tároljuk! A költséget a blokkműveletek számával mérjük. (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,4}}&lt;br /&gt;
# A költség logaritmikusan arányos az adatrekordok számával.&lt;br /&gt;
# A költség lineárisan arányos az index struktúra elágazási tényezőjével.&lt;br /&gt;
# A költség lienárisan arányos az index blokkok számával.&lt;br /&gt;
# A költség lineárisan arányos a fa magasságával.&lt;br /&gt;
&lt;br /&gt;
== Adott két tábla, T1 (oszlopai: A és B), és T2 (oszlopai: B és C). Válassza ki az alábbi lekérdezés eredményére vonatkozó állítások közül azt, amelyik biztosan igaz! (2022 jan) ==&lt;br /&gt;
Feltételezzük, hogy a lekérdezés szintaktikailag helyes és a táblák oszlopait is helyesen hivatkozza, a táblákban nem szerepel NULL érték, és&lt;br /&gt;
az eredmény oszlopait R1, R2, R3 és R4 néven nevezzük.&lt;br /&gt;
&amp;lt;pre&amp;gt;SELECT T1.A AS R1, T1.B AS R2, T2.B AS R3, T2.C AS R4&lt;br /&gt;
FROM T1 LEFT JOIN T2 ON (T1.B = T2.B) ;&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Az eredményben T1 minden rekordja szerepel.&lt;br /&gt;
# Az eredményben T2 minden rekordja szerepel.&lt;br /&gt;
# Az eredmény minden rekordjában megegyezik R2 és R3 mezők értéke.&lt;br /&gt;
# R4 mezőben nem fordul elő NULL érték.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyiket NEM befolyásolja a keresési kulcs mérete? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A nested loop join algoritmus lépésszáma&lt;br /&gt;
# Vödrös hash tábla mérete&lt;br /&gt;
# Keresés költsége heap szervezés esetén&lt;br /&gt;
# B*-fa magassága&lt;br /&gt;
&lt;br /&gt;
== Válassza ki az egyetlen igaz állítást! (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Egy ER-modell determináló kapcsolathalmazának kardinalitása lehet több-több.&lt;br /&gt;
# Egy attribútumként jelzett idegen kulcs több egyedhalmazhoz is tartozhat az ER-modellben.&lt;br /&gt;
# Egy ER-modell gyenge egyedhalmazához mindig fel kell venni legalább egy idegen kulcsot, mint attribútumot az ER modellben.&lt;br /&gt;
# Egy ER-modell gyenge egyedhalmazához mindig fel kell venni legalább egy determináló kapcsolathalmazt.&lt;br /&gt;
&lt;br /&gt;
== Egy gépjárműnyilvántartásban két tábla tárolja az autók és tulajdonosaik adatait, melyek sémái a következők: (2022 jan) ==&lt;br /&gt;
Tulajdonos(személyi_szám, név, születési_dátum, anyja_neve), kulcs: személyi szám&lt;br /&gt;
Gépjármű(rendszám, típus, márka, szín, gyártás_éve, tulajdonos_személyi_száma), kulcs: rendszám&lt;br /&gt;
&lt;br /&gt;
A táblák n db személy és m db gépjármű adatait tárolják, és egy személynek átlagosan 2 db gépjárműve van.&lt;br /&gt;
&lt;br /&gt;
Az alábbi SQL lekérdezés eredményrekordjainak számát melyik kifejezés becsüli legjobban?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;SELECT személyi_szám, név, rendszám, típus, márka&lt;br /&gt;
FROM tulajdonos, gépjármű&lt;br /&gt;
WHERE tulajdonos.személyi_szám = gépjármű.tulajdonos_személyi_száma ;&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# n + m&lt;br /&gt;
# 2 * m&lt;br /&gt;
# n&lt;br /&gt;
# m&lt;br /&gt;
# n * m&lt;br /&gt;
&lt;br /&gt;
== Legyen r(R) egy adott reláció, melynek sémája R(A,B,C,D). Tudjuk, hogy t, t* r(R) t[A]=t*[A] esetén t[B]=t*[B]. Ekkor: (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# az A-tól a B funkcionálisan függ.&lt;br /&gt;
# a fentiek közül egyik válasz sem helyes.&lt;br /&gt;
# az A-tól a B funkcionálisan függhet.&lt;br /&gt;
# az A a B-től funkcionálisan függ.&lt;br /&gt;
&lt;br /&gt;
== A felsoroltak közül melyik NEM szerepel egy relációs lekérdezés végrehajtási tervében? Feltételezzük, hogy relációalgebrai reprezentációval dolgozik a vizsgált adatbázis-kezelő rendszer. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A végrehajtás során használt workflow-stratégia (materializáció vagy pipelining).&lt;br /&gt;
# A használt relációalgebrai műveletek és azok hierarchiája a lekérdezésben.&lt;br /&gt;
# A végrehajtás során használandó indexek neve.&lt;br /&gt;
# Az eredmény várható rekordszáma.&lt;br /&gt;
# A használt relációalgebrai műveletek végrehajtásához rendelt algoritmusok.&lt;br /&gt;
# Az input relációk.&lt;br /&gt;
&lt;br /&gt;
== Melyik az egyetlen helyes válasz? Tudjuk, hogy az R relációs sémára illeszkedő minden relációban az összes nemtriviális függés esetén a függés bal oldalán található attribútum(halmaz) értéke egyedi. Ekkor... (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
# van olyan, a sémára illeszkedő reláció, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# egyik sem helyes a többi állítás közül.&lt;br /&gt;
&lt;br /&gt;
== Adottak az A és B egyedhalmazok, valamint a köztük definiált bináris kapcsolathalmaz K, melynek kardinalitása több-több. Tegyük fel, hogy A-ban 10, B-ben pedig 20 egyed van. Legfeljebb hány kapcsolat lehet K-ban? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# 30&lt;br /&gt;
# 200&lt;br /&gt;
# 10&lt;br /&gt;
# 20&lt;br /&gt;
&lt;br /&gt;
== Két attribútum (A, B) között szeretnénk a funkcionális függőségi kapcsolatot megállapítani, azonban ezen attribútumoknak az értékei még nem ismertek. Lehetséges-e a kérdésre választ adni? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igen.&lt;br /&gt;
# Nem.&lt;br /&gt;
# Enne a kérdésnek semmi értelme.&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor: P: A tranzakciók a kész pontjuk előtt nem engedik el a zárakat... Q: ...ezért rendszerhiba esetén nincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának szükséges és elégséges feltétele,... Q: ...ezért sorosítható ütemezés esetén nem kell tartani a pattoktól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy relációs sémának... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
# ...a legmagasabb normálformája 3NF, ha minden attribútuma elsődleges.&lt;br /&gt;
# ...a legmagasabb normálformája 2NF, ha nincs másodlagos attribútum.&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
&lt;br /&gt;
== Egy relációs sémának... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
# ...a legalacsonyabb normálformája 3NF, ha nincs más másodlagos attribútum.&lt;br /&gt;
# ...a legmagasabb normálformája 2NF, ha nincs másodlagos attribútum.&lt;br /&gt;
# ...lehet, hogy minden attribútuma másodlagos.&lt;br /&gt;
&lt;br /&gt;
== A funkcionális függés... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# soha nem értékfüggetlen kényszer.&lt;br /&gt;
# mindig értékfüggő kényszer.&lt;br /&gt;
# lehet értékfüggő kényszer.&lt;br /&gt;
# mindig értékfüggetlen kényszer.&lt;br /&gt;
&lt;br /&gt;
== P: A kiterjesztett ER-modell elemkészletében szereplő gyenge egyedhalmaz nem képezhető le a relációs adatmodellre,... Q: ...mert a reláció egy halmaz, így a benne szereplő rekordok egyedisége definíciószerűen elvárt. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Adott két tábla, T1 (oszlopai: A és B), és T2 (oszlopai: B és C). Válassza ki az alábbi lekérdezés eredményére vonatkozó állítások közül azt, amelyik biztosan igaz! Feltételezzük, hogy a lekérdezés szintaktikailag helyes és a táblák oszlopait is helyesen hivatkozza, a táblákban nem szerepel NULL érték, és az eredmény oszlopait R1, R2, R3 és R4 néven nevezzük. SELECT T1.A AS R1, T1.B AS R2, T2.B AS R3, T2.C AS R4 FROM T1 LEFT JOIN T2 ON (T1.B = T2.B) ; ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Az eredményben T1 minden rekordja szerepel.&lt;br /&gt;
# Az eredmény minden rekordjában megegyezik R2 és R3 mezők értéke.&lt;br /&gt;
# R4 mezőben nem fordul elő NULL érték.&lt;br /&gt;
# Az eredményben T2 minden rekordja szerepel.&lt;br /&gt;
&lt;br /&gt;
== P: Az imperatív lekérdezőnyelven megfogalmazott relációs lekérdezések több lehetséges végrehajtási terv mentén értékelhetők ki, ... Q: ...ezért a költség alapú optimalizálás célja: minimalizálni a join műveletek költségét. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy adatbázisban vödrös hashelést alkalmaznak a rekordok tárolására. Az alábbiak közül mi(k) okozhatják, hogy az egyes vödrökben tárolt rekordok elérési ideje jelentősen eltérhet egymástól (több helyes válasz is lehetséges, a helytelen válasz pontlevonással jár)? ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A hash függvény helytelen megválasztása.&lt;br /&gt;
# Ha sokkal több a törlés, mint a beszúrás.&lt;br /&gt;
# A rekordok kulcsértékeinek nem egyenletes eloszlása.&lt;br /&gt;
# Az adatok elhelyezkedése a merevlemezen.&lt;br /&gt;
# Ha sokkal több a beszúrás, mint a törlés.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy relációs lekérdező nyelv képes az unió, különbség, Descartes-szorzat, vetítés és kiválasztás műveleteit kifejezni, akkor relációsan teljesnek nevezik, ... Q: ...mert az ilyen lekérdező nyelvek segítségével egy relációs adatbázisból mindent le tudunk kérdezni. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== 500 bájtos blokkméret mellett mekkora méretű lesz egy 10 vödörből álló hash állomány vödörkatalógusa, ha egy mutató 5, egy kulcs pedig 10 bájtos? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 500 Byte&lt;br /&gt;
# 2000 Byte&lt;br /&gt;
# 1500 Byte&lt;br /&gt;
# 1000 Byte&lt;br /&gt;
&lt;br /&gt;
== P: Mivel minden tranzitív funkcionális függés egyúttal részleges függés is, ... Q: ...ezért minden részleges függés tranzitív függés is. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legalább 1NF relációs sémának valamennyi kulcsa egyszerű, akkor a séma legalább 2NF, ... Q: ...mert az egyszerű kulcsok kizárják, hogy a sémában másodlagos attribútumok legyenek. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha másodlagos attribútum egy kulcstól részlegesen függ, akkor tranzitívan is függ tőle, ... Q: ...ezért ha egy séma nem 2NF, akkor 3NF sem lehet. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Az, hogy egy A és B egyedhalmazok közötti K kapcsolattípus funkcionalitása &amp;quot;több-több&amp;quot;, azt jelenti, hogy ... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# K minden egyes kapcsolatpéldánya A több elemét rendeli B több eleméhez.&lt;br /&gt;
# K minden kapcsolatpéldánya pontosan egy A-beli elemet rendel pontosan egy B-beli elemhez, viszont A valamely eleméhez K kapcsolatpéldányai több B-beli elemet rendelhetnek, és B minden eleméhez K kapcsolatpéldányai több A-beli elemet rendelhetnek.&lt;br /&gt;
# A és B között nem engedélyezett több kapcsolattípus definiálása, ezért A és B egyedei között minden egyes kapcsolatot annak szemantikájától függetlenül K valamely kapcsolatpédánya definiálja.&lt;br /&gt;
# A és B egyedhalmazok között K-n kívüli további kapcsolattípusok is engedélyezettek.&lt;br /&gt;
&lt;br /&gt;
== Adott az R(A) séma és a rá illeszkedő r1 reláció. Amennyiben r2 = r1, mit fejez ki a képen látható relációalgebrai kifejezés? r1\ pi r1.A omega r1.A&amp;lt;r2.A(r1xr2) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Üres reláció.&lt;br /&gt;
# r1 legkisebb elemét.&lt;br /&gt;
# r1 legnagyobb és legkisebb elemének halmazát.&lt;br /&gt;
# r1 legnagyobb elemét.&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor... P: ...nem fordulhat elő lavina... Q: ...ezért rendszerhiba esetén nincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== A relációalgebrai faalapú heurisztikus lekérdezésoptimalizálás lépései a kanonikus alakból kiindulva: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# vetítések süllyesztése, fa leveleinek átrendezése, join bevezetése, szelekciók süllyesztése.&lt;br /&gt;
# vetítések süllyesztése, fa leveleinek átrendezése, szelekciók süllyesztése, join bevezetése.&lt;br /&gt;
# szelekciók süllyesztése, fa leveleinek átrendezése, join bevezetése, vetítések süllyesztése.&lt;br /&gt;
# szelekciók süllyesztése, fa leveleinek átrendezése, vetítések süllyesztése, join bevezetése.&lt;br /&gt;
&lt;br /&gt;
== A relációs algebra, relációs sor-, ill. relációs oszlopkalkulus közül melyek teljesek? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# Relációs sorkalkulus.&lt;br /&gt;
# Relációs oszlopkalkulus.&lt;br /&gt;
# Relációs algebra.&lt;br /&gt;
# Csak a relációs algebra.&lt;br /&gt;
# Mindegyik felsorolt.&lt;br /&gt;
&lt;br /&gt;
== Adott egy R séma és a sémára illeszkedő r(R) reláció. P: Mivel az R attribútumai között fennálló érdemi funkcionális függések halmaza mindig tartalmazza az eseti funkcionális függéseket is, ... Q: ...ezért az érdemi funkcionális függőségek segítségével teljeskörűen megállapíthatjuk, hogy melyik attribútumokban fordulhat elő redundáns adattárolás funkcionális függés következtében. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legalább 1NF relációs sémának minden attribútuma elsődleges, akkor a séma nem lehet BCNF, ... Q: ...mert BCNF sémák esetén a nemtriviális függések bal oldalán szuperkulcsok, a jobb oldalán pedig másodlagos attribútumok állnak. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának elégséges feltétele,... Q: ...ezért sorosítható ütemezés esetén nem kell tartani az olvasástól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Melyik nem része az alábbiak közül egy relációs lekérdezés végrehajtási tervének? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A relációs műveletekhez rendelt algoritmusok.&lt;br /&gt;
# A műveletek workflow-ja (materializáció vagy pipelining).&lt;br /&gt;
# A kiválasztott relációs műveletek egymásraépülése.&lt;br /&gt;
# Katalógusinformációk az érintett relációkról.&lt;br /&gt;
&lt;br /&gt;
== 1000 bájtos blokkméret mellett mekkora méretű lesz egy 500 vödörből álló hash-állomány vödörkatalógusa, ha egy mutató 5, egy kulcs pedig 10 bájtos? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 2500 Byte&lt;br /&gt;
# 5000 Byte&lt;br /&gt;
# 10000 Byte&lt;br /&gt;
# 7500 Byte&lt;br /&gt;
&lt;br /&gt;
== P: Adatbáziskezelő-rendszerben a médiahiba felbukkanásának esélyét csökkentendő szokásos megoldás az adatok több példányban, különböző diszkeken történő tárolása, ... Q: ...ezért ilyen esetekben a módosítási anomália okozta inkonzisztencia is gyakoribb. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== A heurisztikus optimalizálásnál használt melyik módszer alkalmazható a költségalapú optimalizálás folyamatában? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Descartes-szorzat és szelekció sorozat helyett megfelelő illesztés bevezetése.&lt;br /&gt;
# Projekciók süllyesztése.&lt;br /&gt;
# A szelekciók süllyesztése.&lt;br /&gt;
# Mindegyik alkalmazható a költségalapú optimalizálás során.&lt;br /&gt;
&lt;br /&gt;
== Adott az (R, F) relációs séma, ahol R = ABCDEG, F = { AB -&amp;gt; BC, AC -&amp;gt; D, CD -&amp;gt; EG, CG -&amp;gt; A, G -&amp;gt; D, D -&amp;gt; C}. Melyik függés vezethető le az adott függéshalmazból? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# D -&amp;gt; B&lt;br /&gt;
# G -&amp;gt; B&lt;br /&gt;
# A -&amp;gt; B&lt;br /&gt;
# AC -&amp;gt; B&lt;br /&gt;
# G -&amp;gt; E&lt;br /&gt;
&lt;br /&gt;
== Hány soros ekvivalense létezik az alábbi ütemezésnek, ha LOCK-UNLOCK párok között az adategység értéke írható és olvasható? T1 LOCK A, T1 UNLOCK A, T2 LOCK A, T2 UNLOCK A, T3 LOCK B, T3 UNLOCK B, T1 LOCK B, T1 UNLOCK B, T2 LOCK C, T2 UNLOCK C, T3 LOCK C, T3 UNLOCK C. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 3&lt;br /&gt;
# 2&lt;br /&gt;
# 1&lt;br /&gt;
# 0&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy ütemezés tranzakciói a szigorú kétfázisú protokoll szabályait követik, akkor a kész pontjuk előtt nem írhatnak az adatbázisba, ... Q: ...ezért rendszerhiba esetén nincs szükség REDO-ra, csak UNDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Két reláció természetes illesztésének mevalósításakor... P: ...az összefésüléses join (&amp;quot;sorted merge join&amp;quot;) költsége kisebb lehet, mint az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;) költsége,... Q: ...mert az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;) költségét jelentősen befolyásolhatja, hogy melyik reláció kerül a külső ill. belső ciklusba. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legális ütemezésben a tranzakciók követik a kétfázisú zárolás szabályait, akkor az ütemezés sorosítható, ... Q: ...ezért kétfázisú zárolás mellett rendszerhiba esetén sincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának szükséges és elégséges feltétele, ... Q: ...ezért sorosítható ütemezés esetén nem kell tartani a fantom olvasástól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Adott egy R séma és a sémára illeszkedő r(R) reláció. P: Mivel az r-n fennálló eseti funkcionális függések halmaza mindig tartalmazza az érdemi funkcionális függéseket is,... Q: ...ezért az eseti funkcionális függőségek segítségével további megállapításokat tehetünk, hogy melyik attribútumokban fordulhat még elő redundáns adattárolás. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Az adatbáziskezelő-rendszer háromrétegű modelljében melyik szinthez/réteghez köthető az adatbiztonság megvalósítása? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A logikai adatbázis réteghez.&lt;br /&gt;
# A fizikai adatbázis réteghez.&lt;br /&gt;
# A nézetek szintjéhez.&lt;br /&gt;
# Egyikhez sem.&lt;br /&gt;
&lt;br /&gt;
== Egy relációalgebrai kifejezés kanonikus alakjában milyen műveletek és milyen sorrendben szerepelnek? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# szelekció, projekció, Théta-illesztés&lt;br /&gt;
# szelekció, projekció, természetes illesztés&lt;br /&gt;
# szelekció, projekció, Descartes-szorzat&lt;br /&gt;
# projekció, szelekció, természetes illesztés&lt;br /&gt;
# projekció, szelekció, Descartes-szorzat&lt;br /&gt;
&lt;br /&gt;
== Mennyi az r és s relációk &amp;quot;egymásba ágyazott ciklus&amp;quot; (nested loop join)-alapú illesztésének legjobb becsült költsége, ha egyik reláció sem fér bele az operatív tárba? (nr és ns a relációk rekordjainak, br és bs pedig a relációk blokkjainak számát jelölik.) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# br + bs&lt;br /&gt;
# nr * br + bs&lt;br /&gt;
# ns * br + bs&lt;br /&gt;
# ns * br + nr * bs&lt;br /&gt;
# bs * br + bs&lt;br /&gt;
&lt;br /&gt;
== P: a egy relációs sémának több kulcsa is van, akkor van összetett kulcsa is, ... Q: ...ezért egy relációs séma szuperkulcsa nem feltétlenül minimális. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Két kulcs szerinti keresést szeretnénk megvalósítani úgy, hogy az adatokat tartalmazó állománnyal szemben semmilyen rendezettség nem várható el. Milyen struktúrát javasolna erre a célra? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Az adatállományra épített egyetlen sűrű index, amelyre két ritka indexet építünk.&lt;br /&gt;
# Az adatállományra épített két sűrű index, amelyekre egy-egy ritka indexet építünk.&lt;br /&gt;
# Az adatállományra épített egyetlen sűrű index, amelyre ritka indexet építünk, illetve az adatállományra emellett épített további ritka index.&lt;br /&gt;
# Az adatállomáányra közvetlenül épített két ritka index.&lt;br /&gt;
&lt;br /&gt;
== P: A deklaratív lekérdezőnyelven megfogalmazott relációs lekérdezések több lehetséges végrehajtási terv mentén értékelhetők ki,... Q: ...ezért a költségalapú optimalizálás célja: minimalizálni a join műveletek során végrehajtott blokkműveletek számát. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A kiterjesztett ER-modell elemkészletével elkészített ER-diagram relációs adatmodellre leképezhető része mindig leképezhető legfeljebb annyi relációs sémára, amennyi az egyedtípusok és kapcsolattípusok számának összege, ... Q: ...mert az egyedek nem lehetnek többen, mint a relációs modellben a relációk összesített rekordszáma. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy adatbáziskezelő-rendszer feladatai közé tartozik - többek között: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# integritás védelme, adatok értelmezhetőségének biztosítása, adatbiztonság&lt;br /&gt;
# integritás védelme, szinkronizálás, adatbiztonság&lt;br /&gt;
# adatok értelmezhetőségének biztosítása, szinkronizálás, adatbiztonság&lt;br /&gt;
# integritás védelme, szinkronizálás, adatok értelmezhetőségének biztosítása&lt;br /&gt;
&lt;br /&gt;
== Válassza ki a csak tranzakcióhibákat tartalmazó lehetőséget! ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# abort nem-sorosíthatóság miatt, nullával osztás, fantom olvasás, elveszett módosítás&lt;br /&gt;
# abort patt miatt, abort nem-sorosíthatóság miatt, nullával osztás, felhasználói abort&lt;br /&gt;
# abort patt miatt, abort nem sorosíthatóság miatt, piszkos adat olvasása, nem megismételhetó olvasás&lt;br /&gt;
# piszkos adat olvasása, nem megismételhető olvasás, fantom olvasás, elveszett módosítás&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a tranzakciók kész pontjuk előtt nem engedik el a zárakat.&lt;br /&gt;
# a tranzakciók a zárpontjuk előtt elengedhetik a zárakat.&lt;br /&gt;
# a tranzakciók a zárpont után már írhatnak az adatbázisba.&lt;br /&gt;
# egy tranzakció ugyanazt az adategységet többször is zárolhatja.&lt;br /&gt;
&lt;br /&gt;
== Az R(A, B, C, D) és S(A, B, E, ) relációs sémák szerint létrehozott r és s táblákon fogalmaztuk meg az alábbi SQL nyelvű lekérdezést. SELECT * FROM r, s WHERE r.A = s.A ; Melyik relációalgebrai műveletet valósítja meg a lekérdezés az r és s relációk között? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# természetes illesztés&lt;br /&gt;
# vetítés (projekció)&lt;br /&gt;
# metszet&lt;br /&gt;
# unió&lt;br /&gt;
# Théta-illesztés&lt;br /&gt;
&lt;br /&gt;
== P: A figyelmeztető protokoll szabályait követő tranzakciókból álló legális ütemezések esetén zárkonfliktus nem fordulhat elő, ... Q: ...mert az ilyen ütemezések esetén a sorosíthatóság garantált. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Egy relációs séma pontosan akkor BCNF, ha minden nemtriviális függés bal oldalán szereplő attribútumok értéke minden, a sémára illeszkedő relációban egyedi,... Q: ...ezért az ilyen sémákra illeszkedő relációkban funkcionális függés miatt redundáns adattárolás sehol nem fordulhat elő. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy ER-diagramon adott két egyedhalmaz, A és B. A attribútumtípusainak száma 18. B attribútumtípusainak száma 13. A-nak egyetlen összetett, 9 db attribútumtípus által alkotott kulcsa van, míg B-nek szintén egyetlen, összetett, 5 db attribútumtípus által alkotott kulcsa. C gyenge egyedhalmaznak egyetlen, 7 darab attribútumtípus által alkotott kulcsa van. C-t ezen kívül A és B egyedhalmazzal egy-egy determináló kapcsolattípus köti össze. Hány elemű lesz C relációs séma kulcsa, miután a fentiekben leírt ER-diagramot relációs sémákra képezzük le? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# 7&lt;br /&gt;
# 14&lt;br /&gt;
# 21&lt;br /&gt;
# 28&lt;br /&gt;
&lt;br /&gt;
== A sorted merge join algoritmus a join attribútumok szerint rendezett r és s relációk között &amp;lt;válasz&amp;gt; ahol br és bs a relációk blokkjainak számát jelöli... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# legfeljebb br + bs blokkművelettel megvalósítható, ...&lt;br /&gt;
# legalább br + bs blokkművelettel valósítható meg, ...&lt;br /&gt;
# pontosan br + bs blokkművelettel valósítható meg, ...&lt;br /&gt;
# egyik sem.&lt;br /&gt;
&lt;br /&gt;
== Két reláció természetes illesztésének megvalósításakor P: a blokk-alapú egymásba ágyazott ciklikus illesztés (&amp;quot;block nested loop&amp;quot;) költsége kisebb lehet, mint az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;)... Q: ...mert kevesebb rekordpár illeszkedés-vizsgálatára van szükség az algoritmus futása során. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Egy gyenge egyedhalmaz elemeinek azonosításához nem elég egy gyenge egyedhalmaz kulcsa,... Q: ...ezért a gyenge egyedhalmaz mindig specializált egyedhalmaz. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg az egyetlen helyes választ! Adott egy X -&amp;gt; Y funkcionális függés. Ekkor: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# X függ Y-tól.&lt;br /&gt;
# X értéke ismeretében Y értéke mindig megadható.&lt;br /&gt;
# Az X értéke meghatározza Y értékét.&lt;br /&gt;
# Y értéke ismeretében X értéke mindig megadható.&lt;br /&gt;
&lt;br /&gt;
== Mely igaz az alábbiak közül? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Ha egy ütemezés sorosítható, akkor lehet olyan időpillanat, amikor a várakozási gráfban irányított kör van.&lt;br /&gt;
# Ha egy ütemezés sorosítható, akkor nincs olyan időpillanat, amikor a várakozási gráfban irányított kör van.&lt;br /&gt;
# Ha a várakozási gráf egyetlen időpillanatban sem tartalmaz irányított kört, akor az ütemezés sorosítható.&lt;br /&gt;
# Ha a várakozási gráf valamely időpillanatban tartalmaz irányított kört, akkor az ütemezés nem sorosítható.&lt;br /&gt;
&lt;br /&gt;
==  A következőket tudjuk egy B* fáról és annak tartalmáról: A fa elágazási tényezője 5; Egy blokkba 3 adatrekord fér el; Egy blokk elérése 5 ms-ig tart; A B*-fa egyetlen részét se tároljuk a memóriában; Egy kulcsalapú egyenlőségi keresés átlagos ideje 20 ms; Kérdés: legfeljebb hány adat rekord lehet a fában jelenleg? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 75&lt;br /&gt;
# 81&lt;br /&gt;
# 125&lt;br /&gt;
# 375&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:Info_zv_2023_jan_adatb_er_1.png&amp;diff=205037</id>
		<title>Fájl:Info zv 2023 jan adatb er 1.png</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:Info_zv_2023_jan_adatb_er_1.png&amp;diff=205037"/>
		<updated>2023-12-11T14:55:27Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mérnökinformatikus záróvizsga 2023 jan adatbázisok rész ER diagram&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Sznik%C3%A1k&amp;diff=205036</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=205036"/>
		<updated>2023-12-11T14:27:35Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: typo&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;
== 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;
== 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=2,5,6,9}}&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=2,4}}&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;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&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;
== 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;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Sznik%C3%A1k&amp;diff=205035</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=205035"/>
		<updated>2023-12-11T14:26:07Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: kérdések hozzáadá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;
== 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;
== 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=2,5,6,9}}&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=2,4}}&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;
a. Amikor egy AutoResetEvent objektum jelzett állapotba kerül, valamennyi rá várakozó szál tovább futhat.&lt;br /&gt;
b. .NET környezetben egy folyamat (processz) akkor áll le, ha az összes előtérszála leáll.&lt;br /&gt;
c. 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. 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;
b. Az azonosított .NET szerelvényeket csak egy alkalmazás használhatja&lt;br /&gt;
c. Egy alkalmazás több szerelvényből is állhat&lt;br /&gt;
d. 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;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)&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;
== 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;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Szofttech&amp;diff=205032</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=205032"/>
		<updated>2023-12-11T13:47:06Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: kérdések hozzáadá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}}&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;
== 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;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=M%C3%A9rn%C3%B6k_informatikus_BSc_z%C3%A1r%C3%B3vizsga&amp;diff=205030</id>
		<title>Mérnök informatikus BSc záróvizsga</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=M%C3%A9rn%C3%B6k_informatikus_BSc_z%C3%A1r%C3%B3vizsga&amp;diff=205030"/>
		<updated>2023-12-11T13:06:38Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: fix link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Tematika==&lt;br /&gt;
A hivatalos tematika, és a felkészüléshez ajánlott irodalom elérhető a [https://www.vik.bme.hu/kepzes/mesterk%C3%A9pz%C3%A9s/jelentkez%C3%A9s/354.html kari weboldalon].&lt;br /&gt;
&lt;br /&gt;
A tematikában szereplő fogalmak a konkrét oldalakra linkelve ki vannak gyűjtve az [https://git.sch.bme.hu/mvarga/info-msc-felveteli-tetelek SCH Git-en](SCHacc belépés szükséges).&lt;br /&gt;
&lt;br /&gt;
==Tanácsok==&lt;br /&gt;
* [[Media:Villany zarovizsga tanacsok.pdf|Szóbeli előadás tanácsok]] (villamosmérnököknek készült, de informatikusoknak is 100%-ban használható)&lt;br /&gt;
* [https://www.vik.bme.hu/kepzes/mesterk%C3%A9pz%C3%A9s/jelentkez%C3%A9s/354.html Mesterképzésre ajánlott fekészülési anyagok]&lt;br /&gt;
** Tanenbaum: Számítógép hálózatok&lt;br /&gt;
** [http://www.tankonyvtar.hu/hu/tartalom/tkt/operacios-rendszerek/adatok.html Kóczy-Kondorosi: Operációs Rendszerek Mérnöki Megközelítésben]&lt;br /&gt;
** [https://edu.interkonyv.hu/edu-read/algoritmusok/169499/ Rónyai Lajos, Ivanyos Gábor, Szabó Réka: Algoritmusok]&lt;br /&gt;
** [https://edu.interkonyv.hu/edu-read/recski-andras-a-szamitastudomany-alapjai/161169/ Katona Gyula Y., Recski András, Szabó Csaba: A számítástudomány alapjai]&lt;br /&gt;
** Sommerville, I. . Szoftver rendszerek fejlesztése&lt;br /&gt;
** [http://www.tankonyvtar.hu/hu/tartalom/tkt/objektum-orientalt/adatok.html Kondorosi, László, Szirmay-Kalos: Objektum orientált szoftverfejlesztés]&lt;br /&gt;
** Erich Gamma, Ralph Johnson, Richard Helm, John Vlissides: Programtervezési minták&lt;br /&gt;
** Imre Gábor (szerk.): Szoftverfejlesztés Java EE platformon&lt;br /&gt;
** [https://db.bme.hu/~gajdos/Adatbazisok2019.pdf Gajdos: Adatbázisok]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;small&amp;gt;&#039;&#039;(A nem linkelt könyvek nagyrészt kikölcsönözhetőek meg nem nevezett oldalakról)&#039;&#039;&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Korábbi feladatsorok==&lt;br /&gt;
&amp;lt;small&amp;gt;&#039;&#039;A feladatsorokból az üres oldalakat eltávolítottuk.&#039;&#039;&amp;lt;/small&amp;gt;&lt;br /&gt;
*[[Media:info_zv_2008jun.pdf | 2008 június]] - [[Media:info_zv_2008jun_mo.pdf | Megoldások]] &lt;br /&gt;
*[[Media:info_zv_2009jan.pdf | 2009 január]] - [[Media:info_zv_2009jan_mo.pdf | Megoldások]] &lt;br /&gt;
*[[Media:info_zv_2009jun.pdf | 2009 június]] - [[Media:info_zv_2009jun_mo.pdf | Megoldások]] &lt;br /&gt;
*[[Media:info_zv_2010jan.pdf | 2010 január]] - [[Infó MSc felvételi 2010. január 4. | Nemhivatalos megoldások]]&lt;br /&gt;
*[[Media:info_zv_2010jun.pdf | 2010 június]] - [[Media:info_zv_2010jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2011jan.pdf | 2011 január]] - [[Media:info_zv_2011jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2011maj.pdf | 2011 május]] - [[Media:info_zv_2011maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2012jan.pdf | 2012 január]] - [[Media:info_zv_2012jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2012maj.pdf | 2012 május]] - [[Media:info_zv_2012maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2013jan.pdf | 2013 január]] - [[Media:info_zv_2013jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2013maj.pdf | 2013 május]] - [[Media:info_zv_2013maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2014jan.pdf | 2014 január]] - [[Media:info_zv_2014jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2014maj.pdf | 2014 május]] - [[Media:info_zv_2014maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2015jan.pdf | 2015 január]] - [[Media:info_zv_2015jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2015maj.pdf | 2015 május]] - [[Media:info_zv_2015maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2016jan.pdf | 2016 január]]  - [[Media:info_zv_2016jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2016jun.pdf | 2016 június]] - [[Media:info_zv_2016jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2017jan.pdf | 2017 január]] - [[Media:info_zv_2017jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2017jun.pdf | 2017 június]] - [[Media:info_zv_2017jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2018jan.pdf | 2018 január]] - [[Media:info_zv_2018jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2018jun-info.pdf | 2018 június]] - [[Media:info_zv_2018jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2019jan.pdf | 2019 január]] - [[Media:info_zv_2019jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2019jun.pdf | 2019 június]] - [[Media:info_zv_2019jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2020jan.pdf | 2020 január]] - [[Media:info_zv_2020jan_mo.pdf | Megoldások]]&lt;br /&gt;
* [[Media:2021.01.04. BSc záróvizsga teszt.pdf | 2021 január]] - [[Media:2021.01.04. BSc záróvizsga megoldás.pdf | Megoldások]]&lt;br /&gt;
* 2022 január - [[Media:info_zv_2022jan_mo.pdf | Megoldások]]&lt;br /&gt;
* [[Media:Info_zv_2022jun.pdf | 2022 június]] - [[Media:Info_zv_2022jun.pdf | Megoldások]]&lt;br /&gt;
* 2023 január - [[Media:Info_zv_2023jan_mo.pdf | Megoldások]]&lt;br /&gt;
* 2023 június - [[Media:info_zv_2023jun_mo.PDF | Megoldások]]&lt;br /&gt;
*[https://www.vik.bme.hu/kepzes/mesterkepzes/jelentkezes/360.html Feladatsorok kari oldala]&lt;br /&gt;
*[https://vik.hk/dokumentum-kategoria/mernokinformatikus-szak/ Feladatsorok a Hallgatói Képviselet oldalán]&lt;br /&gt;
&lt;br /&gt;
===Hibák===&lt;br /&gt;
&lt;br /&gt;
A hibák listája nem hivatalos.&lt;br /&gt;
&lt;br /&gt;
* 2011 jan. adatb 1.: 300 000 + 50 000 + 834 = 350 834 blokk -&amp;gt; hiányzik egy tizedesvessző a megoldásban&lt;br /&gt;
* 2011 jan. hálók 7.: 210, 12 byte -&amp;gt; hibás a feladat, mert a szövegében annak kellene állnia, hogy “B válaszként küldött 4 szegmens TCP PDU-jában az ACK-szám 222,222,222,222”, ekkora kapnánk az alábbi megoldást, mivel ezzel azt jelzi, hogy 221-ig minden rendben megjött, de utána elveszett a szegmens, ezért küldi A újra, a 222-es sorszámú szegmenst.&lt;br /&gt;
* 2011 máj. algel 3.: zárójel után (18 alatt 5) + (18 alatt 6) * (2 alatt 1)&lt;br /&gt;
* 2011 máj. algel 4.: 3. sor 025439, 4. sor 025339, 5. sor 025338&lt;br /&gt;
* 2013 máj. hálók 5.: a, c, d&lt;br /&gt;
* 2017 jún. sznikák 5.: d&lt;br /&gt;
* 2019 jún. sznikák 10.: e&lt;br /&gt;
&lt;br /&gt;
==Kvízek==&lt;br /&gt;
Az alábbi kvízek kizárólag korábbi záróvizsga feladatokat és mintafeladatokat tartalmaznak, megjelölve a forrást.&lt;br /&gt;
* [[Záróvizsga kvíz - Algoritmusok|Algoritmusok]]&lt;br /&gt;
* [[Záróvizsga kvíz - Szofttech|Szoftvertechnológia]]&lt;br /&gt;
* [[Záróvizsga kvíz - Sznikák|Szoftvertechnikák]]&lt;br /&gt;
* [[Záróvizsga_kvíz_-_Adatbázis|Adatbázisok]]&lt;br /&gt;
&lt;br /&gt;
==Más szakok felvételi vizsgái==&lt;br /&gt;
*[[Villamosmérnök BSc záróvizsga | Villamosmérnök]]&lt;br /&gt;
*[[Gazdaságinformatikus MSc felvételi vizsga | Gazdaságinformatikus]]&lt;br /&gt;
*[[Egészségügyi mérnök MSc felvételi vizsga | Egészségügyi mérnök]]&lt;br /&gt;
&lt;br /&gt;
==További információk==&lt;br /&gt;
*[https://www.vik.bme.hu/document/1345/original/bsc-zv-msc-felv-170607.pdf Közös BSc záróvizsga-MSc felvételi szabályzat]&lt;br /&gt;
&lt;br /&gt;
{{Lábléc_-_Mérnök_informatikus_alapszak}}&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:Info_zv_2023jan_mo.pdf&amp;diff=205028</id>
		<title>Fájl:Info zv 2023jan mo.pdf</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:Info_zv_2023jan_mo.pdf&amp;diff=205028"/>
		<updated>2023-12-11T13:06:05Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: File uploaded with MsUpload&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;File uploaded with MsUpload&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Sznik%C3%A1k&amp;diff=205017</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=205017"/>
		<updated>2023-12-09T16:33:23Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: kérdések hozzáadá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;
== 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;
== 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=2,5,6,9}}&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;
&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;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=M%C3%A9rn%C3%B6k_informatikus_BSc_z%C3%A1r%C3%B3vizsga&amp;diff=205016</id>
		<title>Mérnök informatikus BSc záróvizsga</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=M%C3%A9rn%C3%B6k_informatikus_BSc_z%C3%A1r%C3%B3vizsga&amp;diff=205016"/>
		<updated>2023-12-09T16:12:42Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: /* Korábbi feladatsorok */ feladatsorok feltöltése&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Tematika==&lt;br /&gt;
A hivatalos tematika, és a felkészüléshez ajánlott irodalom elérhető a [https://www.vik.bme.hu/kepzes/mesterk%C3%A9pz%C3%A9s/jelentkez%C3%A9s/354.html kari weboldalon].&lt;br /&gt;
&lt;br /&gt;
A tematikában szereplő fogalmak a konkrét oldalakra linkelve ki vannak gyűjtve az [https://git.sch.bme.hu/mvarga/info-msc-felveteli-tetelek SCH Git-en](SCHacc belépés szükséges).&lt;br /&gt;
&lt;br /&gt;
==Tanácsok==&lt;br /&gt;
* [[Media:Villany zarovizsga tanacsok.pdf|Szóbeli előadás tanácsok]] (villamosmérnököknek készült, de informatikusoknak is 100%-ban használható)&lt;br /&gt;
* [https://www.vik.bme.hu/kepzes/mesterk%C3%A9pz%C3%A9s/jelentkez%C3%A9s/354.html Mesterképzésre ajánlott fekészülési anyagok]&lt;br /&gt;
** Tanenbaum: Számítógép hálózatok&lt;br /&gt;
** [http://www.tankonyvtar.hu/hu/tartalom/tkt/operacios-rendszerek/adatok.html Kóczy-Kondorosi: Operációs Rendszerek Mérnöki Megközelítésben]&lt;br /&gt;
** [https://edu.interkonyv.hu/edu-read/algoritmusok/169499/ Rónyai Lajos, Ivanyos Gábor, Szabó Réka: Algoritmusok]&lt;br /&gt;
** [https://edu.interkonyv.hu/edu-read/recski-andras-a-szamitastudomany-alapjai/161169/ Katona Gyula Y., Recski András, Szabó Csaba: A számítástudomány alapjai]&lt;br /&gt;
** Sommerville, I. . Szoftver rendszerek fejlesztése&lt;br /&gt;
** [http://www.tankonyvtar.hu/hu/tartalom/tkt/objektum-orientalt/adatok.html Kondorosi, László, Szirmay-Kalos: Objektum orientált szoftverfejlesztés]&lt;br /&gt;
** Erich Gamma, Ralph Johnson, Richard Helm, John Vlissides: Programtervezési minták&lt;br /&gt;
** Imre Gábor (szerk.): Szoftverfejlesztés Java EE platformon&lt;br /&gt;
** [https://db.bme.hu/~gajdos/Adatbazisok2019.pdf Gajdos: Adatbázisok]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;small&amp;gt;&#039;&#039;(A nem linkelt könyvek nagyrészt kikölcsönözhetőek meg nem nevezett oldalakról)&#039;&#039;&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Korábbi feladatsorok==&lt;br /&gt;
&amp;lt;small&amp;gt;&#039;&#039;A feladatsorokból az üres oldalakat eltávolítottuk.&#039;&#039;&amp;lt;/small&amp;gt;&lt;br /&gt;
*[[Media:info_zv_2008jun.pdf | 2008 június]] - [[Media:info_zv_2008jun_mo.pdf | Megoldások]] &lt;br /&gt;
*[[Media:info_zv_2009jan.pdf | 2009 január]] - [[Media:info_zv_2009jan_mo.pdf | Megoldások]] &lt;br /&gt;
*[[Media:info_zv_2009jun.pdf | 2009 június]] - [[Media:info_zv_2009jun_mo.pdf | Megoldások]] &lt;br /&gt;
*[[Media:info_zv_2010jan.pdf | 2010 január]] - [[Infó MSc felvételi 2010. január 4. | Nemhivatalos megoldások]]&lt;br /&gt;
*[[Media:info_zv_2010jun.pdf | 2010 június]] - [[Media:info_zv_2010jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2011jan.pdf | 2011 január]] - [[Media:info_zv_2011jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2011maj.pdf | 2011 május]] - [[Media:info_zv_2011maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2012jan.pdf | 2012 január]] - [[Media:info_zv_2012jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2012maj.pdf | 2012 május]] - [[Media:info_zv_2012maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2013jan.pdf | 2013 január]] - [[Media:info_zv_2013jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2013maj.pdf | 2013 május]] - [[Media:info_zv_2013maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2014jan.pdf | 2014 január]] - [[Media:info_zv_2014jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2014maj.pdf | 2014 május]] - [[Media:info_zv_2014maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2015jan.pdf | 2015 január]] - [[Media:info_zv_2015jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2015maj.pdf | 2015 május]] - [[Media:info_zv_2015maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2016jan.pdf | 2016 január]]  - [[Media:info_zv_2016jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2016jun.pdf | 2016 június]] - [[Media:info_zv_2016jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2017jan.pdf | 2017 január]] - [[Media:info_zv_2017jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2017jun.pdf | 2017 június]] - [[Media:info_zv_2017jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2018jan.pdf | 2018 január]] - [[Media:info_zv_2018jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2018jun-info.pdf | 2018 június]] - [[Media:info_zv_2018jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2019jan.pdf | 2019 január]] - [[Media:info_zv_2019jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2019jun.pdf | 2019 június]] - [[Media:info_zv_2019jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2020jan.pdf | 2020 január]] - [[Media:info_zv_2020jan_mo.pdf | Megoldások]]&lt;br /&gt;
* [[Media:2021.01.04. BSc záróvizsga teszt.pdf | 2021 január]] - [[Media:2021.01.04. BSc záróvizsga megoldás.pdf | Megoldások]]&lt;br /&gt;
* 2022 január - [[Media:info_zv_2022jan_mo.pdf | Megoldások]]&lt;br /&gt;
* [[Media:Info_zv_2022jun.pdf | 2022 június]] - [[Media:Info_zv_2022jun.pdf | Megoldások]]&lt;br /&gt;
* 2023 január - [[Media:Info_zv_2022jun.pdf | Megoldások]]&lt;br /&gt;
* 2023 június - [[Media:info_zv_2023jun_mo.PDF | Megoldások]]&lt;br /&gt;
*[https://www.vik.bme.hu/kepzes/mesterkepzes/jelentkezes/360.html Feladatsorok kari oldala]&lt;br /&gt;
*[https://vik.hk/dokumentum-kategoria/mernokinformatikus-szak/ Feladatsorok a Hallgatói Képviselet oldalán]&lt;br /&gt;
&lt;br /&gt;
===Hibák===&lt;br /&gt;
&lt;br /&gt;
A hibák listája nem hivatalos.&lt;br /&gt;
&lt;br /&gt;
* 2011 jan. adatb 1.: 300 000 + 50 000 + 834 = 350 834 blokk -&amp;gt; hiányzik egy tizedesvessző a megoldásban&lt;br /&gt;
* 2011 jan. hálók 7.: 210, 12 byte -&amp;gt; hibás a feladat, mert a szövegében annak kellene állnia, hogy “B válaszként küldött 4 szegmens TCP PDU-jában az ACK-szám 222,222,222,222”, ekkora kapnánk az alábbi megoldást, mivel ezzel azt jelzi, hogy 221-ig minden rendben megjött, de utána elveszett a szegmens, ezért küldi A újra, a 222-es sorszámú szegmenst.&lt;br /&gt;
* 2011 máj. algel 3.: zárójel után (18 alatt 5) + (18 alatt 6) * (2 alatt 1)&lt;br /&gt;
* 2011 máj. algel 4.: 3. sor 025439, 4. sor 025339, 5. sor 025338&lt;br /&gt;
* 2013 máj. hálók 5.: a, c, d&lt;br /&gt;
* 2017 jún. sznikák 5.: d&lt;br /&gt;
* 2019 jún. sznikák 10.: e&lt;br /&gt;
&lt;br /&gt;
==Kvízek==&lt;br /&gt;
Az alábbi kvízek kizárólag korábbi záróvizsga feladatokat és mintafeladatokat tartalmaznak, megjelölve a forrást.&lt;br /&gt;
* [[Záróvizsga kvíz - Algoritmusok|Algoritmusok]]&lt;br /&gt;
* [[Záróvizsga kvíz - Szofttech|Szoftvertechnológia]]&lt;br /&gt;
* [[Záróvizsga kvíz - Sznikák|Szoftvertechnikák]]&lt;br /&gt;
* [[Záróvizsga_kvíz_-_Adatbázis|Adatbázisok]]&lt;br /&gt;
&lt;br /&gt;
==Más szakok felvételi vizsgái==&lt;br /&gt;
*[[Villamosmérnök BSc záróvizsga | Villamosmérnök]]&lt;br /&gt;
*[[Gazdaságinformatikus MSc felvételi vizsga | Gazdaságinformatikus]]&lt;br /&gt;
*[[Egészségügyi mérnök MSc felvételi vizsga | Egészségügyi mérnök]]&lt;br /&gt;
&lt;br /&gt;
==További információk==&lt;br /&gt;
*[https://www.vik.bme.hu/document/1345/original/bsc-zv-msc-felv-170607.pdf Közös BSc záróvizsga-MSc felvételi szabályzat]&lt;br /&gt;
&lt;br /&gt;
{{Lábléc_-_Mérnök_informatikus_alapszak}}&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:Info_zv_2022jun.pdf&amp;diff=205015</id>
		<title>Fájl:Info zv 2022jun.pdf</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:Info_zv_2022jun.pdf&amp;diff=205015"/>
		<updated>2023-12-09T16:11:04Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: File uploaded with MsUpload&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;File uploaded with MsUpload&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Szofttech&amp;diff=205014</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=205014"/>
		<updated>2023-12-09T15:44:29Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: /* Az alábbi UML2 diagram alapján jellemezze az állítást. (2021 jan) */ formatting&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}}&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;
== 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;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Szofttech&amp;diff=205013</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=205013"/>
		<updated>2023-12-09T15:43:57Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: /* Egészítse ki a mondatot: A strukturális tesztelés során a teszt eseteket ?KÉRDÉS? alapján határozzuk meg. (2022 jan) */ typo&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}}&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;
== 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;
Iota Kappa metódusa nem adhat vissza Khi osztályú objektumot, mert Iota nem függ a Khi 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;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=M%C3%A9rn%C3%B6k_informatikus_BSc_z%C3%A1r%C3%B3vizsga&amp;diff=205012</id>
		<title>Mérnök informatikus BSc záróvizsga</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=M%C3%A9rn%C3%B6k_informatikus_BSc_z%C3%A1r%C3%B3vizsga&amp;diff=205012"/>
		<updated>2023-12-09T15:39:34Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: /* Kvízek */ disclaimer hozzáadva, hogy csak zv feladatok vannak a kvízekben&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Tematika==&lt;br /&gt;
A hivatalos tematika, és a felkészüléshez ajánlott irodalom elérhető a [https://www.vik.bme.hu/kepzes/mesterk%C3%A9pz%C3%A9s/jelentkez%C3%A9s/354.html kari weboldalon].&lt;br /&gt;
&lt;br /&gt;
A tematikában szereplő fogalmak a konkrét oldalakra linkelve ki vannak gyűjtve az [https://git.sch.bme.hu/mvarga/info-msc-felveteli-tetelek SCH Git-en](SCHacc belépés szükséges).&lt;br /&gt;
&lt;br /&gt;
==Tanácsok==&lt;br /&gt;
* [[Media:Villany zarovizsga tanacsok.pdf|Szóbeli előadás tanácsok]] (villamosmérnököknek készült, de informatikusoknak is 100%-ban használható)&lt;br /&gt;
* [https://www.vik.bme.hu/kepzes/mesterk%C3%A9pz%C3%A9s/jelentkez%C3%A9s/354.html Mesterképzésre ajánlott fekészülési anyagok]&lt;br /&gt;
** Tanenbaum: Számítógép hálózatok&lt;br /&gt;
** [http://www.tankonyvtar.hu/hu/tartalom/tkt/operacios-rendszerek/adatok.html Kóczy-Kondorosi: Operációs Rendszerek Mérnöki Megközelítésben]&lt;br /&gt;
** [https://edu.interkonyv.hu/edu-read/algoritmusok/169499/ Rónyai Lajos, Ivanyos Gábor, Szabó Réka: Algoritmusok]&lt;br /&gt;
** [https://edu.interkonyv.hu/edu-read/recski-andras-a-szamitastudomany-alapjai/161169/ Katona Gyula Y., Recski András, Szabó Csaba: A számítástudomány alapjai]&lt;br /&gt;
** Sommerville, I. . Szoftver rendszerek fejlesztése&lt;br /&gt;
** [http://www.tankonyvtar.hu/hu/tartalom/tkt/objektum-orientalt/adatok.html Kondorosi, László, Szirmay-Kalos: Objektum orientált szoftverfejlesztés]&lt;br /&gt;
** Erich Gamma, Ralph Johnson, Richard Helm, John Vlissides: Programtervezési minták&lt;br /&gt;
** Imre Gábor (szerk.): Szoftverfejlesztés Java EE platformon&lt;br /&gt;
** [https://db.bme.hu/~gajdos/Adatbazisok2019.pdf Gajdos: Adatbázisok]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;small&amp;gt;&#039;&#039;(A nem linkelt könyvek nagyrészt kikölcsönözhetőek meg nem nevezett oldalakról)&#039;&#039;&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Korábbi feladatsorok==&lt;br /&gt;
&amp;lt;small&amp;gt;&#039;&#039;A feladatsorokból az üres oldalakat eltávolítottuk.&#039;&#039;&amp;lt;/small&amp;gt;&lt;br /&gt;
*[[Media:info_zv_2008jun.pdf | 2008 június]] - [[Media:info_zv_2008jun_mo.pdf | Megoldások]] &lt;br /&gt;
*[[Media:info_zv_2009jan.pdf | 2009 január]] - [[Media:info_zv_2009jan_mo.pdf | Megoldások]] &lt;br /&gt;
*[[Media:info_zv_2009jun.pdf | 2009 június]] - [[Media:info_zv_2009jun_mo.pdf | Megoldások]] &lt;br /&gt;
*[[Media:info_zv_2010jan.pdf | 2010 január]] - [[Infó MSc felvételi 2010. január 4. | Nemhivatalos megoldások]]&lt;br /&gt;
*[[Media:info_zv_2010jun.pdf | 2010 június]] - [[Media:info_zv_2010jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2011jan.pdf | 2011 január]] - [[Media:info_zv_2011jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2011maj.pdf | 2011 május]] - [[Media:info_zv_2011maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2012jan.pdf | 2012 január]] - [[Media:info_zv_2012jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2012maj.pdf | 2012 május]] - [[Media:info_zv_2012maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2013jan.pdf | 2013 január]] - [[Media:info_zv_2013jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2013maj.pdf | 2013 május]] - [[Media:info_zv_2013maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2014jan.pdf | 2014 január]] - [[Media:info_zv_2014jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2014maj.pdf | 2014 május]] - [[Media:info_zv_2014maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2015jan.pdf | 2015 január]] - [[Media:info_zv_2015jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2015maj.pdf | 2015 május]] - [[Media:info_zv_2015maj_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2016jan.pdf | 2016 január]]  - [[Media:info_zv_2016jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2016jun.pdf | 2016 június]] - [[Media:info_zv_2016jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2017jan.pdf | 2017 január]] - [[Media:info_zv_2017jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2017jun.pdf | 2017 június]] - [[Media:info_zv_2017jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2018jan.pdf | 2018 január]] - [[Media:info_zv_2018jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:Info_zv_2018jun-info.pdf | 2018 június]] - [[Media:info_zv_2018jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2019jan.pdf | 2019 január]] - [[Media:info_zv_2019jan_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2019jun.pdf | 2019 június]] - [[Media:info_zv_2019jun_mo.pdf | Megoldások]]&lt;br /&gt;
*[[Media:info_zv_2020jan.pdf | 2020 január]] - [[Media:info_zv_2020jan_mo.pdf | Megoldások]]&lt;br /&gt;
* [[Media:2021.01.04. BSc záróvizsga teszt.pdf | 2021 január]] - [[Media:2021.01.04. BSc záróvizsga megoldás.pdf | Megoldások]]&lt;br /&gt;
* 2022 január - [[Media:info_zv_2022jan_mo.pdf | Megoldások]]&lt;br /&gt;
* 2023 június - [[Media:info_zv_2023jun_mo.PDF | Megoldások]]&lt;br /&gt;
*[https://www.vik.bme.hu/kepzes/mesterkepzes/jelentkezes/360.html Feladatsorok kari oldala]&lt;br /&gt;
*[https://vik.hk/dokumentum-kategoria/mernokinformatikus-szak/ Feladatsorok a Hallgatói Képviselet oldalán]&lt;br /&gt;
&lt;br /&gt;
===Hibák===&lt;br /&gt;
&lt;br /&gt;
A hibák listája nem hivatalos.&lt;br /&gt;
&lt;br /&gt;
* 2011 jan. adatb 1.: 300 000 + 50 000 + 834 = 350 834 blokk -&amp;gt; hiányzik egy tizedesvessző a megoldásban&lt;br /&gt;
* 2011 jan. hálók 7.: 210, 12 byte -&amp;gt; hibás a feladat, mert a szövegében annak kellene állnia, hogy “B válaszként küldött 4 szegmens TCP PDU-jában az ACK-szám 222,222,222,222”, ekkora kapnánk az alábbi megoldást, mivel ezzel azt jelzi, hogy 221-ig minden rendben megjött, de utána elveszett a szegmens, ezért küldi A újra, a 222-es sorszámú szegmenst.&lt;br /&gt;
* 2011 máj. algel 3.: zárójel után (18 alatt 5) + (18 alatt 6) * (2 alatt 1)&lt;br /&gt;
* 2011 máj. algel 4.: 3. sor 025439, 4. sor 025339, 5. sor 025338&lt;br /&gt;
* 2013 máj. hálók 5.: a, c, d&lt;br /&gt;
* 2017 jún. sznikák 5.: d&lt;br /&gt;
* 2019 jún. sznikák 10.: e&lt;br /&gt;
&lt;br /&gt;
==Kvízek==&lt;br /&gt;
Az alábbi kvízek kizárólag korábbi záróvizsga feladatokat és mintafeladatokat tartalmaznak, megjelölve a forrást.&lt;br /&gt;
* [[Záróvizsga kvíz - Algoritmusok|Algoritmusok]]&lt;br /&gt;
* [[Záróvizsga kvíz - Szofttech|Szoftvertechnológia]]&lt;br /&gt;
* [[Záróvizsga kvíz - Sznikák|Szoftvertechnikák]]&lt;br /&gt;
* [[Záróvizsga_kvíz_-_Adatbázis|Adatbázisok]]&lt;br /&gt;
&lt;br /&gt;
==Más szakok felvételi vizsgái==&lt;br /&gt;
*[[Villamosmérnök BSc záróvizsga | Villamosmérnök]]&lt;br /&gt;
*[[Gazdaságinformatikus MSc felvételi vizsga | Gazdaságinformatikus]]&lt;br /&gt;
*[[Egészségügyi mérnök MSc felvételi vizsga | Egészségügyi mérnök]]&lt;br /&gt;
&lt;br /&gt;
==További információk==&lt;br /&gt;
*[https://www.vik.bme.hu/document/1345/original/bsc-zv-msc-felv-170607.pdf Közös BSc záróvizsga-MSc felvételi szabályzat]&lt;br /&gt;
&lt;br /&gt;
{{Lábléc_-_Mérnök_informatikus_alapszak}}&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Szofttech&amp;diff=205011</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=205011"/>
		<updated>2023-12-09T15:20:14Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: kérdések hozzáadá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}}&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;
== 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 ?KÉRDÉS? 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;
Iota Kappa metódusa nem adhat vissza Khi osztályú objektumot, mert Iota nem függ a Khi 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;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:2021_jan_mernokinfo_bsc_zv_szofttech_uml_2.png&amp;diff=205010</id>
		<title>Fájl:2021 jan mernokinfo bsc zv szofttech uml 2.png</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:2021_jan_mernokinfo_bsc_zv_szofttech_uml_2.png&amp;diff=205010"/>
		<updated>2023-12-09T15:19:48Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;2021 januári mérnökinfó BSc záróvizsga szoftvertechnológia rész UML feladat 2&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:2021_jan_mernokinfo_bsc_zv_szofttech_uml_1.png&amp;diff=205009</id>
		<title>Fájl:2021 jan mernokinfo bsc zv szofttech uml 1.png</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:2021_jan_mernokinfo_bsc_zv_szofttech_uml_1.png&amp;diff=205009"/>
		<updated>2023-12-09T15:18:45Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;2021 januári mérnökinfó BSc záróvizsga szoftvertechnológia UML diagram feladat 1&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Adatb%C3%A1zis&amp;diff=205007</id>
		<title>Záróvizsga kvíz - Adatbázis</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Adatb%C3%A1zis&amp;diff=205007"/>
		<updated>2023-12-09T14:36:08Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: ké&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Kvízoldal&lt;br /&gt;
|cím=ZVAdatb|pontozás=-&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Egy adatbázis-kezelő rendszer szigorú tranzakciós protokollt és egyszerű zármodellt (tranzakciós modellt) használ. Az alábbi állítások közül melyik nem helyes? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A zárkezelés kétfázisú (2PL) lesz.&lt;br /&gt;
# Nem fordulhat elő lavina.&lt;br /&gt;
# Naplózás esetén nem lesz szükség undo-ra a helyreállításhoz.&lt;br /&gt;
# A zárak a commit (kész) pont után felszabadíthatók&lt;br /&gt;
&lt;br /&gt;
== Melyik NEM fejezhető ki SQL lekérdezések segítségével a halmazalgebra alábbi műveletei közül? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# metszetképzés&lt;br /&gt;
# Descartes-szorzat&lt;br /&gt;
# komplementer-képzés&lt;br /&gt;
# különbségképzés&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, hogy a keresés költségének nagyságrendjére vonatkozó alábbi 1), 2), 3), 4), 5), 6) állítások közül melyek igazak, ha az állományt B*-fában tároljuk! A költséget a blokkműveletek számával mérjük. (2023 jun) ==&lt;br /&gt;
# A keresés költsége lineárisan nő a fa magasságával&lt;br /&gt;
# A keresés költsége logaritmikusan nő a fa magasságával&lt;br /&gt;
# A keresés költsége lineárisan aránylik az elágazási tényezőhöz&lt;br /&gt;
# A keresés költsége logaritmikusan aránylik az elágazási tényezőhöz&lt;br /&gt;
# Az elemek beszúrási sorrendjének nincs hatása a keresés költségére&lt;br /&gt;
# Az elemek beszúrási sorrendjének van hatása a keresés költségére&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# 1), 4), 5)&lt;br /&gt;
# 2), 3), 6)&lt;br /&gt;
# 2), 4), 6)&lt;br /&gt;
# 1), 4), 6)&lt;br /&gt;
# 1), 3), 6)&lt;br /&gt;
# 2), 4), 5)&lt;br /&gt;
&lt;br /&gt;
== Az r és s relációk természetes illesztését egymásba ágyazott ciklikus illesztéssel (nested loop join) végezzük. A két állomány rendre b és b számú blokkból áll, illetve n és n rekordot tartalmaz. (2023 jun) ==&lt;br /&gt;
Az alábbi lehetőségek közül melyik lehet a join blokkműveletek számában mért költsége a legrosszabb esetben, ha a relációknak csak egy- egy blokkja fér a memóriába?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=6}}&lt;br /&gt;
# &amp;lt;math&amp;gt;n_r + n_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_s + b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r + b_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r + n_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;n_r * n_s&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== A következő ábrák közül melyik nem szerepelhet ER-diagram részeként? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid1.png|keretnélküli]]&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid 2.png|keretnélküli]]&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid 3.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
== Adott egy séma és az attribútumai között értelmezett funkcionális függések halmaza. Tudjuk, hogy a nemtriviális függések bal oldalán található attribútum(halmaz)on a rekordok értéke egyedi. Ekkor (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a sémára illeszkedő egyetlen adathalmazban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# lehet olyan, a sémára illeszkedő adathalmaz, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# van olyan, a sémára illeszkedő adathalmaz, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedő egyetlen adathalmazban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
&lt;br /&gt;
== A válaszlehetőségek közül melyik a csatolt ER-diagram legpontosabb relációs leképezése? (2023 jun) ==&lt;br /&gt;
&lt;br /&gt;
[[Fájl:2023 június mérnökinformatikus záróvizsga Adatbázisok ER sémadekompozíció 1.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# A(a, b, c), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol A kulcsa a és b együtt, és A-ban b idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt, valamint K-ban a és b is idegen kulcs&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b, c, d), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt és K mind a négy attribútuma egyenként idegen kulcs is.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), B(a, b, d), ahol B kulcsa a és b együtt, és B-ben a idegen kulcs.&lt;br /&gt;
&lt;br /&gt;
== Időbélyeges tranzakciókezelés esetén melyik állítás NEM helyes? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy adott ütemezésnek mindig van soros ekvivalense (a tranzakciók időbélyegei szerinti növekvő sorrendű).&lt;br /&gt;
# Szigorú protokoll megvalósításához az időbélyegek mellett zárak is szükségesek.&lt;br /&gt;
# Egy adott ütemezésnek akár több soros ekvivalense is lehet.&lt;br /&gt;
# Egy adott ütemezésnek lehet soros ekvivalense.&lt;br /&gt;
&lt;br /&gt;
== Az SQL lekérdezésekben a &amp;quot;SELECT DISTINCT&amp;quot; az ismétlődéseket szűri az eredményhalmazból. A relációs algebrában hogyan valósítható meg ez a művelet? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Nincs rá szükség, mert a relációs algebra halmazokkal dolgozik, ahol nem szerepelnek ismétlődések.&lt;br /&gt;
# Az unió vagy a metszet műveleteket kell használni, ha követelmény az ismétlődések szűrése.&lt;br /&gt;
# A természetes illesztés alkalmas erre, hiszen az az azonos nevű attribútumokat csak egyszer adja vissza.&lt;br /&gt;
&lt;br /&gt;
== Egy adatállományt vödrös hash szervezéssel tárolunk. A következőket tudjuk az állományról: (2023 jun) ==&lt;br /&gt;
1. Egy rekord egy blokknyi helyet foglal el.&lt;br /&gt;
2. Az alkalmazott hash függvény: &#039;k mod 5&#039;, ahol a &#039;k&#039; a kulcsot jelenti.&lt;br /&gt;
3. A vödrös hash kezdetben üres.&lt;br /&gt;
4. A hashtábla elfér az operatív tárban.&lt;br /&gt;
A beszúrt rekordok kulcsai a következők: 5, 7, 3, 9, 10, 1, 4, 7, 19.&lt;br /&gt;
Hány blokkműveletet fog a rendszer végezni, ha azon rekordot keressük, amelynek kulcsa 24?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 2&lt;br /&gt;
# 1&lt;br /&gt;
# 0&lt;br /&gt;
# 3&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, hogy az alábbiak közül mely állítás(ok) igazak a keresési költségekkel kapcsolatban, ha az adatokat B*-fában tároljuk! A költséget a blokkműveletek számával mérjük. (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,4}}&lt;br /&gt;
# A költség logaritmikusan arányos az adatrekordok számával.&lt;br /&gt;
# A költség lineárisan arányos az index struktúra elágazási tényezőjével.&lt;br /&gt;
# A költség lienárisan arányos az index blokkok számával.&lt;br /&gt;
# A költség lineárisan arányos a fa magasságával.&lt;br /&gt;
&lt;br /&gt;
== Adott két tábla, T1 (oszlopai: A és B), és T2 (oszlopai: B és C). Válassza ki az alábbi lekérdezés eredményére vonatkozó állítások közül azt, amelyik biztosan igaz! (2022 jan) ==&lt;br /&gt;
Feltételezzük, hogy a lekérdezés szintaktikailag helyes és a táblák oszlopait is helyesen hivatkozza, a táblákban nem szerepel NULL érték, és&lt;br /&gt;
az eredmény oszlopait R1, R2, R3 és R4 néven nevezzük.&lt;br /&gt;
&amp;lt;pre&amp;gt;SELECT T1.A AS R1, T1.B AS R2, T2.B AS R3, T2.C AS R4&lt;br /&gt;
FROM T1 LEFT JOIN T2 ON (T1.B = T2.B) ;&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Az eredményben T1 minden rekordja szerepel.&lt;br /&gt;
# Az eredményben T2 minden rekordja szerepel.&lt;br /&gt;
# Az eredmény minden rekordjában megegyezik R2 és R3 mezők értéke.&lt;br /&gt;
# R4 mezőben nem fordul elő NULL érték.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyiket NEM befolyásolja a keresési kulcs mérete? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A nested loop join algoritmus lépésszáma&lt;br /&gt;
# Vödrös hash tábla mérete&lt;br /&gt;
# Keresés költsége heap szervezés esetén&lt;br /&gt;
# B*-fa magassága&lt;br /&gt;
&lt;br /&gt;
== Válassza ki az egyetlen igaz állítást! (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Egy ER-modell determináló kapcsolathalmazának kardinalitása lehet több-több.&lt;br /&gt;
# Egy attribútumként jelzett idegen kulcs több egyedhalmazhoz is tartozhat az ER-modellben.&lt;br /&gt;
# Egy ER-modell gyenge egyedhalmazához mindig fel kell venni legalább egy idegen kulcsot, mint attribútumot az ER modellben.&lt;br /&gt;
# Egy ER-modell gyenge egyedhalmazához mindig fel kell venni legalább egy determináló kapcsolathalmazt.&lt;br /&gt;
&lt;br /&gt;
== Egy gépjárműnyilvántartásban két tábla tárolja az autók és tulajdonosaik adatait, melyek sémái a következők: (2022 jan) ==&lt;br /&gt;
Tulajdonos(személyi_szám, név, születési_dátum, anyja_neve), kulcs: személyi szám&lt;br /&gt;
Gépjármű(rendszám, típus, márka, szín, gyártás_éve, tulajdonos_személyi_száma), kulcs: rendszám&lt;br /&gt;
&lt;br /&gt;
A táblák n db személy és m db gépjármű adatait tárolják, és egy személynek átlagosan 2 db gépjárműve van.&lt;br /&gt;
&lt;br /&gt;
Az alábbi SQL lekérdezés eredményrekordjainak számát melyik kifejezés becsüli legjobban?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;SELECT személyi_szám, név, rendszám, típus, márka&lt;br /&gt;
FROM tulajdonos, gépjármű&lt;br /&gt;
WHERE tulajdonos.személyi_szám = gépjármű.tulajdonos_személyi_száma ;&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# n + m&lt;br /&gt;
# 2 * m&lt;br /&gt;
# n&lt;br /&gt;
# m&lt;br /&gt;
# n * m&lt;br /&gt;
&lt;br /&gt;
== Legyen r(R) egy adott reláció, melynek sémája R(A,B,C,D). Tudjuk, hogy t, t* r(R) t[A]=t*[A] esetén t[B]=t*[B]. Ekkor: (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# az A-tól a B funkcionálisan függ.&lt;br /&gt;
# a fentiek közül egyik válasz sem helyes.&lt;br /&gt;
# az A-tól a B funkcionálisan függhet.&lt;br /&gt;
# az A a B-től funkcionálisan függ.&lt;br /&gt;
&lt;br /&gt;
== A felsoroltak közül melyik NEM szerepel egy relációs lekérdezés végrehajtási tervében? Feltételezzük, hogy relációalgebrai reprezentációval dolgozik a vizsgált adatbázis-kezelő rendszer. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A végrehajtás során használt workflow-stratégia (materializáció vagy pipelining).&lt;br /&gt;
# A használt relációalgebrai műveletek és azok hierarchiája a lekérdezésben.&lt;br /&gt;
# A végrehajtás során használandó indexek neve.&lt;br /&gt;
# Az eredmény várható rekordszáma.&lt;br /&gt;
# A használt relációalgebrai műveletek végrehajtásához rendelt algoritmusok.&lt;br /&gt;
# Az input relációk.&lt;br /&gt;
&lt;br /&gt;
== Melyik az egyetlen helyes válasz? Tudjuk, hogy az R relációs sémára illeszkedő minden relációban az összes nemtriviális függés esetén a függés bal oldalán található attribútum(halmaz) értéke egyedi. Ekkor... (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
# van olyan, a sémára illeszkedő reláció, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# egyik sem helyes a többi állítás közül.&lt;br /&gt;
&lt;br /&gt;
== Adottak az A és B egyedhalmazok, valamint a köztük definiált bináris kapcsolathalmaz K, melynek kardinalitása több-több. Tegyük fel, hogy A-ban 10, B-ben pedig 20 egyed van. Legfeljebb hány kapcsolat lehet K-ban? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# 30&lt;br /&gt;
# 200&lt;br /&gt;
# 10&lt;br /&gt;
# 20&lt;br /&gt;
&lt;br /&gt;
== Két attribútum (A, B) között szeretnénk a funkcionális függőségi kapcsolatot megállapítani, azonban ezen attribútumoknak az értékei még nem ismertek. Lehetséges-e a kérdésre választ adni? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igen.&lt;br /&gt;
# Nem.&lt;br /&gt;
# Enne a kérdésnek semmi értelme.&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor: P: A tranzakciók a kész pontjuk előtt nem engedik el a zárakat... Q: ...ezért rendszerhiba esetén nincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának szükséges és elégséges feltétele,... Q: ...ezért sorosítható ütemezés esetén nem kell tartani a pattoktól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy relációs sémának... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
# ...a legmagasabb normálformája 3NF, ha minden attribútuma elsődleges.&lt;br /&gt;
# ...a legmagasabb normálformája 2NF, ha nincs másodlagos attribútum.&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
&lt;br /&gt;
== Egy relációs sémának... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
# ...a legalacsonyabb normálformája 3NF, ha nincs más másodlagos attribútum.&lt;br /&gt;
# ...a legmagasabb normálformája 2NF, ha nincs másodlagos attribútum.&lt;br /&gt;
# ...lehet, hogy minden attribútuma másodlagos.&lt;br /&gt;
&lt;br /&gt;
== A funkcionális függés... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# soha nem értékfüggetlen kényszer.&lt;br /&gt;
# mindig értékfüggő kényszer.&lt;br /&gt;
# lehet értékfüggő kényszer.&lt;br /&gt;
# mindig értékfüggetlen kényszer.&lt;br /&gt;
&lt;br /&gt;
== P: A kiterjesztett ER-modell elemkészletében szereplő gyenge egyedhalmaz nem képezhető le a relációs adatmodellre,... Q: ...mert a reláció egy halmaz, így a benne szereplő rekordok egyedisége definíciószerűen elvárt. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Adott két tábla, T1 (oszlopai: A és B), és T2 (oszlopai: B és C). Válassza ki az alábbi lekérdezés eredményére vonatkozó állítások közül azt, amelyik biztosan igaz! Feltételezzük, hogy a lekérdezés szintaktikailag helyes és a táblák oszlopait is helyesen hivatkozza, a táblákban nem szerepel NULL érték, és az eredmény oszlopait R1, R2, R3 és R4 néven nevezzük. SELECT T1.A AS R1, T1.B AS R2, T2.B AS R3, T2.C AS R4 FROM T1 LEFT JOIN T2 ON (T1.B = T2.B) ; ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Az eredményben T1 minden rekordja szerepel.&lt;br /&gt;
# Az eredmény minden rekordjában megegyezik R2 és R3 mezők értéke.&lt;br /&gt;
# R4 mezőben nem fordul elő NULL érték.&lt;br /&gt;
# Az eredményben T2 minden rekordja szerepel.&lt;br /&gt;
&lt;br /&gt;
== P: Az imperatív lekérdezőnyelven megfogalmazott relációs lekérdezések több lehetséges végrehajtási terv mentén értékelhetők ki, ... Q: ...ezért a költség alapú optimalizálás célja: minimalizálni a join műveletek költségét. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy adatbázisban vödrös hashelést alkalmaznak a rekordok tárolására. Az alábbiak közül mi(k) okozhatják, hogy az egyes vödrökben tárolt rekordok elérési ideje jelentősen eltérhet egymástól (több helyes válasz is lehetséges, a helytelen válasz pontlevonással jár)? ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A hash függvény helytelen megválasztása.&lt;br /&gt;
# Ha sokkal több a törlés, mint a beszúrás.&lt;br /&gt;
# A rekordok kulcsértékeinek nem egyenletes eloszlása.&lt;br /&gt;
# Az adatok elhelyezkedése a merevlemezen.&lt;br /&gt;
# Ha sokkal több a beszúrás, mint a törlés.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy relációs lekérdező nyelv képes az unió, különbség, Descartes-szorzat, vetítés és kiválasztás műveleteit kifejezni, akkor relációsan teljesnek nevezik, ... Q: ...mert az ilyen lekérdező nyelvek segítségével egy relációs adatbázisból mindent le tudunk kérdezni. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== 500 bájtos blokkméret mellett mekkora méretű lesz egy 10 vödörből álló hash állomány vödörkatalógusa, ha egy mutató 5, egy kulcs pedig 10 bájtos? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 500 Byte&lt;br /&gt;
# 2000 Byte&lt;br /&gt;
# 1500 Byte&lt;br /&gt;
# 1000 Byte&lt;br /&gt;
&lt;br /&gt;
== P: Mivel minden tranzitív funkcionális függés egyúttal részleges függés is, ... Q: ...ezért minden részleges függés tranzitív függés is. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legalább 1NF relációs sémának valamennyi kulcsa egyszerű, akkor a séma legalább 2NF, ... Q: ...mert az egyszerű kulcsok kizárják, hogy a sémában másodlagos attribútumok legyenek. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha másodlagos attribútum egy kulcstól részlegesen függ, akkor tranzitívan is függ tőle, ... Q: ...ezért ha egy séma nem 2NF, akkor 3NF sem lehet. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Az, hogy egy A és B egyedhalmazok közötti K kapcsolattípus funkcionalitása &amp;quot;több-több&amp;quot;, azt jelenti, hogy ... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# K minden egyes kapcsolatpéldánya A több elemét rendeli B több eleméhez.&lt;br /&gt;
# K minden kapcsolatpéldánya pontosan egy A-beli elemet rendel pontosan egy B-beli elemhez, viszont A valamely eleméhez K kapcsolatpéldányai több B-beli elemet rendelhetnek, és B minden eleméhez K kapcsolatpéldányai több A-beli elemet rendelhetnek.&lt;br /&gt;
# A és B között nem engedélyezett több kapcsolattípus definiálása, ezért A és B egyedei között minden egyes kapcsolatot annak szemantikájától függetlenül K valamely kapcsolatpédánya definiálja.&lt;br /&gt;
# A és B egyedhalmazok között K-n kívüli további kapcsolattípusok is engedélyezettek.&lt;br /&gt;
&lt;br /&gt;
== Adott az R(A) séma és a rá illeszkedő r1 reláció. Amennyiben r2 = r1, mit fejez ki a képen látható relációalgebrai kifejezés? r1\ pi r1.A omega r1.A&amp;lt;r2.A(r1xr2) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Üres reláció.&lt;br /&gt;
# r1 legkisebb elemét.&lt;br /&gt;
# r1 legnagyobb és legkisebb elemének halmazát.&lt;br /&gt;
# r1 legnagyobb elemét.&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor... P: ...nem fordulhat elő lavina... Q: ...ezért rendszerhiba esetén nincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== A relációalgebrai faalapú heurisztikus lekérdezésoptimalizálás lépései a kanonikus alakból kiindulva: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# vetítések süllyesztése, fa leveleinek átrendezése, join bevezetése, szelekciók süllyesztése.&lt;br /&gt;
# vetítések süllyesztése, fa leveleinek átrendezése, szelekciók süllyesztése, join bevezetése.&lt;br /&gt;
# szelekciók süllyesztése, fa leveleinek átrendezése, join bevezetése, vetítések süllyesztése.&lt;br /&gt;
# szelekciók süllyesztése, fa leveleinek átrendezése, vetítések süllyesztése, join bevezetése.&lt;br /&gt;
&lt;br /&gt;
== A relációs algebra, relációs sor-, ill. relációs oszlopkalkulus közül melyek teljesek? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# Relációs sorkalkulus.&lt;br /&gt;
# Relációs oszlopkalkulus.&lt;br /&gt;
# Relációs algebra.&lt;br /&gt;
# Csak a relációs algebra.&lt;br /&gt;
# Mindegyik felsorolt.&lt;br /&gt;
&lt;br /&gt;
== Adott egy R séma és a sémára illeszkedő r(R) reláció. P: Mivel az R attribútumai között fennálló érdemi funkcionális függések halmaza mindig tartalmazza az eseti funkcionális függéseket is, ... Q: ...ezért az érdemi funkcionális függőségek segítségével teljeskörűen megállapíthatjuk, hogy melyik attribútumokban fordulhat elő redundáns adattárolás funkcionális függés következtében. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legalább 1NF relációs sémának minden attribútuma elsődleges, akkor a séma nem lehet BCNF, ... Q: ...mert BCNF sémák esetén a nemtriviális függések bal oldalán szuperkulcsok, a jobb oldalán pedig másodlagos attribútumok állnak. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának elégséges feltétele,... Q: ...ezért sorosítható ütemezés esetén nem kell tartani az olvasástól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Melyik nem része az alábbiak közül egy relációs lekérdezés végrehajtási tervének? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A relációs műveletekhez rendelt algoritmusok.&lt;br /&gt;
# A műveletek workflow-ja (materializáció vagy pipelining).&lt;br /&gt;
# A kiválasztott relációs műveletek egymásraépülése.&lt;br /&gt;
# Katalógusinformációk az érintett relációkról.&lt;br /&gt;
&lt;br /&gt;
== 1000 bájtos blokkméret mellett mekkora méretű lesz egy 500 vödörből álló hash-állomány vödörkatalógusa, ha egy mutató 5, egy kulcs pedig 10 bájtos? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 2500 Byte&lt;br /&gt;
# 5000 Byte&lt;br /&gt;
# 10000 Byte&lt;br /&gt;
# 7500 Byte&lt;br /&gt;
&lt;br /&gt;
== P: Adatbáziskezelő-rendszerben a médiahiba felbukkanásának esélyét csökkentendő szokásos megoldás az adatok több példányban, különböző diszkeken történő tárolása, ... Q: ...ezért ilyen esetekben a módosítási anomália okozta inkonzisztencia is gyakoribb. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== A heurisztikus optimalizálásnál használt melyik módszer alkalmazható a költségalapú optimalizálás folyamatában? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Descartes-szorzat és szelekció sorozat helyett megfelelő illesztés bevezetése.&lt;br /&gt;
# Projekciók süllyesztése.&lt;br /&gt;
# A szelekciók süllyesztése.&lt;br /&gt;
# Mindegyik alkalmazható a költségalapú optimalizálás során.&lt;br /&gt;
&lt;br /&gt;
== Adott az (R, F) relációs séma, ahol R = ABCDEG, F = { AB -&amp;gt; BC, AC -&amp;gt; D, CD -&amp;gt; EG, CG -&amp;gt; A, G -&amp;gt; D, D -&amp;gt; C}. Melyik függés vezethető le az adott függéshalmazból? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# D -&amp;gt; B&lt;br /&gt;
# G -&amp;gt; B&lt;br /&gt;
# A -&amp;gt; B&lt;br /&gt;
# AC -&amp;gt; B&lt;br /&gt;
# G -&amp;gt; E&lt;br /&gt;
&lt;br /&gt;
== Hány soros ekvivalense létezik az alábbi ütemezésnek, ha LOCK-UNLOCK párok között az adategység értéke írható és olvasható? T1 LOCK A, T1 UNLOCK A, T2 LOCK A, T2 UNLOCK A, T3 LOCK B, T3 UNLOCK B, T1 LOCK B, T1 UNLOCK B, T2 LOCK C, T2 UNLOCK C, T3 LOCK C, T3 UNLOCK C. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 3&lt;br /&gt;
# 2&lt;br /&gt;
# 1&lt;br /&gt;
# 0&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy ütemezés tranzakciói a szigorú kétfázisú protokoll szabályait követik, akkor a kész pontjuk előtt nem írhatnak az adatbázisba, ... Q: ...ezért rendszerhiba esetén nincs szükség REDO-ra, csak UNDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Két reláció természetes illesztésének mevalósításakor... P: ...az összefésüléses join (&amp;quot;sorted merge join&amp;quot;) költsége kisebb lehet, mint az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;) költsége,... Q: ...mert az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;) költségét jelentősen befolyásolhatja, hogy melyik reláció kerül a külső ill. belső ciklusba. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legális ütemezésben a tranzakciók követik a kétfázisú zárolás szabályait, akkor az ütemezés sorosítható, ... Q: ...ezért kétfázisú zárolás mellett rendszerhiba esetén sincs szükség UNDO-ra, csak REDO-ra. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának szükséges és elégséges feltétele, ... Q: ...ezért sorosítható ütemezés esetén nem kell tartani a fantom olvasástól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Adott egy R séma és a sémára illeszkedő r(R) reláció. P: Mivel az r-n fennálló eseti funkcionális függések halmaza mindig tartalmazza az érdemi funkcionális függéseket is,... Q: ...ezért az eseti funkcionális függőségek segítségével további megállapításokat tehetünk, hogy melyik attribútumokban fordulhat még elő redundáns adattárolás. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Az adatbáziskezelő-rendszer háromrétegű modelljében melyik szinthez/réteghez köthető az adatbiztonság megvalósítása? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A logikai adatbázis réteghez.&lt;br /&gt;
# A fizikai adatbázis réteghez.&lt;br /&gt;
# A nézetek szintjéhez.&lt;br /&gt;
# Egyikhez sem.&lt;br /&gt;
&lt;br /&gt;
== Egy relációalgebrai kifejezés kanonikus alakjában milyen műveletek és milyen sorrendben szerepelnek? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# szelekció, projekció, Théta-illesztés&lt;br /&gt;
# szelekció, projekció, természetes illesztés&lt;br /&gt;
# szelekció, projekció, Descartes-szorzat&lt;br /&gt;
# projekció, szelekció, természetes illesztés&lt;br /&gt;
# projekció, szelekció, Descartes-szorzat&lt;br /&gt;
&lt;br /&gt;
== Mennyi az r és s relációk &amp;quot;egymásba ágyazott ciklus&amp;quot; (nested loop join)-alapú illesztésének legjobb becsült költsége, ha egyik reláció sem fér bele az operatív tárba? (nr és ns a relációk rekordjainak, br és bs pedig a relációk blokkjainak számát jelölik.) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# br + bs&lt;br /&gt;
# nr * br + bs&lt;br /&gt;
# ns * br + bs&lt;br /&gt;
# ns * br + nr * bs&lt;br /&gt;
# bs * br + bs&lt;br /&gt;
&lt;br /&gt;
== P: a egy relációs sémának több kulcsa is van, akkor van összetett kulcsa is, ... Q: ...ezért egy relációs séma szuperkulcsa nem feltétlenül minimális. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Két kulcs szerinti keresést szeretnénk megvalósítani úgy, hogy az adatokat tartalmazó állománnyal szemben semmilyen rendezettség nem várható el. Milyen struktúrát javasolna erre a célra? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Az adatállományra épített egyetlen sűrű index, amelyre két ritka indexet építünk.&lt;br /&gt;
# Az adatállományra épített két sűrű index, amelyekre egy-egy ritka indexet építünk.&lt;br /&gt;
# Az adatállományra épített egyetlen sűrű index, amelyre ritka indexet építünk, illetve az adatállományra emellett épített további ritka index.&lt;br /&gt;
# Az adatállomáányra közvetlenül épített két ritka index.&lt;br /&gt;
&lt;br /&gt;
== P: A deklaratív lekérdezőnyelven megfogalmazott relációs lekérdezések több lehetséges végrehajtási terv mentén értékelhetők ki,... Q: ...ezért a költségalapú optimalizálás célja: minimalizálni a join műveletek során végrehajtott blokkműveletek számát. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A kiterjesztett ER-modell elemkészletével elkészített ER-diagram relációs adatmodellre leképezhető része mindig leképezhető legfeljebb annyi relációs sémára, amennyi az egyedtípusok és kapcsolattípusok számának összege, ... Q: ...mert az egyedek nem lehetnek többen, mint a relációs modellben a relációk összesített rekordszáma. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy adatbáziskezelő-rendszer feladatai közé tartozik - többek között: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# integritás védelme, adatok értelmezhetőségének biztosítása, adatbiztonság&lt;br /&gt;
# integritás védelme, szinkronizálás, adatbiztonság&lt;br /&gt;
# adatok értelmezhetőségének biztosítása, szinkronizálás, adatbiztonság&lt;br /&gt;
# integritás védelme, szinkronizálás, adatok értelmezhetőségének biztosítása&lt;br /&gt;
&lt;br /&gt;
== Válassza ki a csak tranzakcióhibákat tartalmazó lehetőséget! ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# abort nem-sorosíthatóság miatt, nullával osztás, fantom olvasás, elveszett módosítás&lt;br /&gt;
# abort patt miatt, abort nem-sorosíthatóság miatt, nullával osztás, felhasználói abort&lt;br /&gt;
# abort patt miatt, abort nem sorosíthatóság miatt, piszkos adat olvasása, nem megismételhetó olvasás&lt;br /&gt;
# piszkos adat olvasása, nem megismételhető olvasás, fantom olvasás, elveszett módosítás&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a tranzakciók kész pontjuk előtt nem engedik el a zárakat.&lt;br /&gt;
# a tranzakciók a zárpontjuk előtt elengedhetik a zárakat.&lt;br /&gt;
# a tranzakciók a zárpont után már írhatnak az adatbázisba.&lt;br /&gt;
# egy tranzakció ugyanazt az adategységet többször is zárolhatja.&lt;br /&gt;
&lt;br /&gt;
== Az R(A, B, C, D) és S(A, B, E, ) relációs sémák szerint létrehozott r és s táblákon fogalmaztuk meg az alábbi SQL nyelvű lekérdezést. SELECT * FROM r, s WHERE r.A = s.A ; Melyik relációalgebrai műveletet valósítja meg a lekérdezés az r és s relációk között? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# természetes illesztés&lt;br /&gt;
# vetítés (projekció)&lt;br /&gt;
# metszet&lt;br /&gt;
# unió&lt;br /&gt;
# Théta-illesztés&lt;br /&gt;
&lt;br /&gt;
== P: A figyelmeztető protokoll szabályait követő tranzakciókból álló legális ütemezések esetén zárkonfliktus nem fordulhat elő, ... Q: ...mert az ilyen ütemezések esetén a sorosíthatóság garantált. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Egy relációs séma pontosan akkor BCNF, ha minden nemtriviális függés bal oldalán szereplő attribútumok értéke minden, a sémára illeszkedő relációban egyedi,... Q: ...ezért az ilyen sémákra illeszkedő relációkban funkcionális függés miatt redundáns adattárolás sehol nem fordulhat elő. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy ER-diagramon adott két egyedhalmaz, A és B. A attribútumtípusainak száma 18. B attribútumtípusainak száma 13. A-nak egyetlen összetett, 9 db attribútumtípus által alkotott kulcsa van, míg B-nek szintén egyetlen, összetett, 5 db attribútumtípus által alkotott kulcsa. C gyenge egyedhalmaznak egyetlen, 7 darab attribútumtípus által alkotott kulcsa van. C-t ezen kívül A és B egyedhalmazzal egy-egy determináló kapcsolattípus köti össze. Hány elemű lesz C relációs séma kulcsa, miután a fentiekben leírt ER-diagramot relációs sémákra képezzük le? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# 7&lt;br /&gt;
# 14&lt;br /&gt;
# 21&lt;br /&gt;
# 28&lt;br /&gt;
&lt;br /&gt;
== A sorted merge join algoritmus a join attribútumok szerint rendezett r és s relációk között &amp;lt;válasz&amp;gt; ahol br és bs a relációk blokkjainak számát jelöli... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# legfeljebb br + bs blokkművelettel megvalósítható, ...&lt;br /&gt;
# legalább br + bs blokkművelettel valósítható meg, ...&lt;br /&gt;
# pontosan br + bs blokkművelettel valósítható meg, ...&lt;br /&gt;
# egyik sem.&lt;br /&gt;
&lt;br /&gt;
== Két reláció természetes illesztésének megvalósításakor P: a blokk-alapú egymásba ágyazott ciklikus illesztés (&amp;quot;block nested loop&amp;quot;) költsége kisebb lehet, mint az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;)... Q: ...mert kevesebb rekordpár illeszkedés-vizsgálatára van szükség az algoritmus futása során. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Egy gyenge egyedhalmaz elemeinek azonosításához nem elég egy gyenge egyedhalmaz kulcsa,... Q: ...ezért a gyenge egyedhalmaz mindig specializált egyedhalmaz. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg az egyetlen helyes választ! Adott egy X -&amp;gt; Y funkcionális függés. Ekkor: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# X függ Y-tól.&lt;br /&gt;
# X értéke ismeretében Y értéke mindig megadható.&lt;br /&gt;
# Az X értéke meghatározza Y értékét.&lt;br /&gt;
# Y értéke ismeretében X értéke mindig megadható.&lt;br /&gt;
&lt;br /&gt;
== Mely igaz az alábbiak közül? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Ha egy ütemezés sorosítható, akkor lehet olyan időpillanat, amikor a várakozási gráfban irányított kör van.&lt;br /&gt;
# Ha egy ütemezés sorosítható, akkor nincs olyan időpillanat, amikor a várakozási gráfban irányított kör van.&lt;br /&gt;
# Ha a várakozási gráf egyetlen időpillanatban sem tartalmaz irányított kört, akor az ütemezés sorosítható.&lt;br /&gt;
# Ha a várakozási gráf valamely időpillanatban tartalmaz irányított kört, akkor az ütemezés nem sorosítható.&lt;br /&gt;
&lt;br /&gt;
==  A következőket tudjuk egy B* fáról és annak tartalmáról: A fa elágazási tényezője 5; Egy blokkba 3 adatrekord fér el; Egy blokk elérése 5 ms-ig tart; A B*-fa egyetlen részét se tároljuk a memóriában; Egy kulcsalapú egyenlőségi keresés átlagos ideje 20 ms; Kérdés: legfeljebb hány adat rekord lehet a fában jelenleg? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 75&lt;br /&gt;
# 81&lt;br /&gt;
# 125&lt;br /&gt;
# 375&lt;br /&gt;
&lt;br /&gt;
== Mit jelent a relációs adatbázis katalógusinformációi között szereplő kiválasztási kardinalitás (selection cardinality) az SC(A, r) formában? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# Azon blokkok átlagos száma, amelyeket be kell olvasni az r relációból a keresés során az A attribútumra felírt egyenlőségi feltétel alapú szelekció esetén.&lt;br /&gt;
# Az r reláció A attribútumára időegység alatt végrehajtott kiválasztás műveletek (szelekciók) átlagos száma.&lt;br /&gt;
# Azon rekordok átlagos száma az r relációban, amelyek kielégítenek egy egyenlőségi feltételt az A attribútumra, feltéve, hogy legalább egy rekord kielégíti ezt az egyenlőségi feltételt.&lt;br /&gt;
# Az r reláció A attribútumában található különböző értékek száma.&lt;br /&gt;
&lt;br /&gt;
== Milyen hiba ellen nem véd a szigorú 2PL (kétfázisú zárolás) protokoll? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Abort az operatív tár sérülése miatt.&lt;br /&gt;
# Abort patt miatt.&lt;br /&gt;
# Abort nem-sorosíthatóság miatt.&lt;br /&gt;
# Felhasználói abort.&lt;br /&gt;
&lt;br /&gt;
== Egy adatállomány rekordjaira ritka indexet építettek: Az adatrekordok és az indexrekordok egyaránt teljesen kitöltik a blokkokat: Egy adatrekord 100 byte; Összesen 100000 adatrekordot tárolunk; Az adatállomány blocking faktora 100; Az indexállomány blocking faktora 400; A mutató mérete 10 byte; Egy blokk elérési ideje 15 ms Mekkora a kulcs mérete? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# 5 Byte&lt;br /&gt;
# 10 Byte&lt;br /&gt;
# 15 Byte&lt;br /&gt;
# 20 Byte&lt;br /&gt;
&lt;br /&gt;
== Az SQL SELECT utasítás melyik része nem fejezhető ki relációs algebrával az alábbiak közül? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# GROUP BY&lt;br /&gt;
# FROM ... NATURAL JOIN ...&lt;br /&gt;
# WHERE&lt;br /&gt;
# SELECT DISTINCT&lt;br /&gt;
&lt;br /&gt;
== A relációs lekérdezések végrehajtásának heurisztikus optimalizálása során az alábbiak közül melyik NEM történik (Süllyesztés alatt azt értjük, amikor a relációalgebrai fa átalakítása során az adott művelet a gyökércsomóponttól a levélcsomópontok irányába mozdul el.) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Descartes-szorzások süllyesztése&lt;br /&gt;
# Szelekciók süllyesztése.&lt;br /&gt;
# Levélcsomópontok átrendezése&lt;br /&gt;
# Projekciók süllyesztése.&lt;br /&gt;
&lt;br /&gt;
== Mi nem jellemző a fa protokollra? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Zár bármikor, bárhonnan eltávolítható.&lt;br /&gt;
# Zár - az elsőt kivéve - csak akkor helyezhető el egy csomóponton, ha a szülőcsomóponton is tart fenn zárat a tranzakció.&lt;br /&gt;
# A tranzakciók tehetik az első zárjukat a fa gyökerére is.&lt;br /&gt;
# A fa protokoll szerinti tranzakciók kétfázisúak.&lt;br /&gt;
&lt;br /&gt;
== Adatbázisunkban tárolnánk, hogy légitársaságunk egyes repülőgépeire melyik pilótánknak van típusjogosítása, illetve hogy az egyes gépek melyik járatokon üzemelnek jelenleg. Melyik ER-modell felel meg a leírtaknak? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, egy bináris kapcsolattípus a Pilóta és a Repülőgép között és egy bináris kapcsolattípus a Repülőgép és a Járat között.&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, köztük egy ternáris kapcsolattípus.&lt;br /&gt;
# Egy Repülőgép gyenge egyedhalmaz, amelyet a Pilóta és a Járat egyedhalmazok determinálnak.&lt;br /&gt;
# Egy Repülőgép kapcsolattípus, amely a Pilóta egyedhalmazt és a Járat egyedhalmazt köti össze.&lt;br /&gt;
&lt;br /&gt;
== Egy állomány tárolása során két merevlemez közül lehet választani: Az &amp;quot;A&amp;quot; lemeznél a blokkméret 4000 byte, egy blokkművelet ideje 10 ms; Az &amp;quot;B&amp;quot; lemeznél a blokkméret 12000 byte, egy blokkművelet ideje 20 ms. A tárolni kívánt rekordok mérete lehetővé teszi, hogy a blokkokat mindkét esetben veszteség nélkül használjuk. Melyik lemezt válasszuk, ha csak lineáris keresést kell támogatni? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A &amp;quot;B&amp;quot;-t kell választani, mert mindig jobb a nagyobb blokkméret, mint a kisebb.&lt;br /&gt;
# Az &amp;quot;A&amp;quot;-t kell választani, mert ott gyorsabb az egyes blokkok elérése.&lt;br /&gt;
# Az &amp;quot;A&amp;quot;-t kell választani, mert ugyan 3-szor több blokkot kell használni, de ezt ellensúlyozza a hozzáférési sebesség felezése.&lt;br /&gt;
# A &amp;quot;B&amp;quot;-t kell választani, mert harmadannyi blokkot kell használni, ami jobban gyorsítja a keresést, mint az egyes blokkok hozzáférési sebességének duplázódása.&lt;br /&gt;
&lt;br /&gt;
== Melyik állítás igaz? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legalacsonyabb normál formája 1NF, ha nincs másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legmagasabb normál formája 1NF, ha van másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legalacsonyabb normál formája 3NF, ha van másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legmagasabb normál formája 3NF, ha nincs másodlagos attribútuma.&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:2023_jun_zv_adatb_er_valid_3.png&amp;diff=205006</id>
		<title>Fájl:2023 jun zv adatb er valid 3.png</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:2023_jun_zv_adatb_er_valid_3.png&amp;diff=205006"/>
		<updated>2023-12-09T14:35:28Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;2023 június mérnökinformatikus BSc záróvizsga adatbázisok ER diagram érvényesség 3&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:2023_jun_zv_adatb_er_valid_2.png&amp;diff=205005</id>
		<title>Fájl:2023 jun zv adatb er valid 2.png</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:2023_jun_zv_adatb_er_valid_2.png&amp;diff=205005"/>
		<updated>2023-12-09T14:34:09Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;2023 június Mérnökinformatikus záróvizsga ER diagram érvényességi feladat 2&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:2023_jun_zv_adatb_er_valid1.png&amp;diff=205004</id>
		<title>Fájl:2023 jun zv adatb er valid1.png</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:2023_jun_zv_adatb_er_valid1.png&amp;diff=205004"/>
		<updated>2023-12-09T14:33:20Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;2023 június Mérnökinformatikus záróvizsga ER diagram érvényességi feladat 1&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=F%C3%A1jl:2023_j%C3%BAnius_m%C3%A9rn%C3%B6kinformatikus_z%C3%A1r%C3%B3vizsga_Adatb%C3%A1zisok_ER_s%C3%A9madekompoz%C3%ADci%C3%B3_1.png&amp;diff=205003</id>
		<title>Fájl:2023 június mérnökinformatikus záróvizsga Adatbázisok ER sémadekompozíció 1.png</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=F%C3%A1jl:2023_j%C3%BAnius_m%C3%A9rn%C3%B6kinformatikus_z%C3%A1r%C3%B3vizsga_Adatb%C3%A1zisok_ER_s%C3%A9madekompoz%C3%ADci%C3%B3_1.png&amp;diff=205003"/>
		<updated>2023-12-09T14:26:30Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A 2023 júniusi Mérnökinformatikus BSC záróvizsga Adatbázisok részének ER diagramos feladat 1. képe&lt;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Sznik%C3%A1k&amp;diff=205000</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=205000"/>
		<updated>2023-12-08T08:45:45Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: csonk kérdés javítás&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;
== 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;
== 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=2,5,6,9}}&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;
&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;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Sznik%C3%A1k&amp;diff=204999</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=204999"/>
		<updated>2023-12-08T08:44:25Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: kérdések hozzáadá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;
== 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;
== 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 a 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;
&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=2,5,6,9}}&lt;br /&gt;
&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;
&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;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Szofttech&amp;diff=204987</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=204987"/>
		<updated>2023-12-05T20:15:26Z</updated>

		<summary type="html">&lt;p&gt;Varga Márk Vince: kérdések hozzáadá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}}&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;
== 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 ?KÉRDÉS? 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;/div&gt;</summary>
		<author><name>Varga Márk Vince</name></author>
	</entry>
</feed>