Szakdolgozat tájékoztató Szoftverfejlesztő - 54 213 05 képzésben résztvevőknek Az 54 213 05 azonosító számú, Szoftverfejlesztő képzésben a szakmai vizsgára bocsátás feltétele záródolgozat készítése. A jelölt záródolgozatként egy alkalmazói programot (szoftvert) és teljes fejlesztői- és felhasználói tervdokumentációt készít. A záródolgozatot a vizsgabizottság értékeli. Záródolgozatra vonatkozó előírások: A záródolgozatok tárgya komplex feladat, a szakmai irányultságnak megfelelően. A záródolgozatokat csak a képző intézmény által jóváhagyott témában lehet benyújtani, a képzés befejezését követő 2 évig. A záródolgozatnak tükröznie kell a választott probléma (kiinduló rendszer) összefüggéseit, kapcsolódásait. Lehetőleg teljes képet kell adnia a kiindulási helyzetről, a megoldási lehetőségekről, és ismertetnie kell az alkalmazott megoldás kiválasztásának a szempontjait is. Terjedelménél fogva nem kell minden részletet tartalmaznia. A kidolgozást olyan mélységig kell elkészíteni, hogy az bemutassa a kitűzött feladat egy reális megoldását. A záródolgozatokat, a komplex szakmai vizsgát megelőzően legalább 30 nappal az előzetes szakmai bírálattal együtt a vizsgabizottság elnökének rendelkezésére kell bocsátani. A vizsgabizottság elnöke vizsgálja, hogy a kitűzött feladat nehézségi foka megfelel-e az elvárható szintnek és a dolgozat eleget tesz-e a formai követelményeknek. A záródolgozatnak a jelölt saját, önálló szellemi termékének kell lennie. A záródolgozatnak a következő fő részekből kell állnia: 1. Bevezető, a probléma rövid ismertetése 2. Felhasználói dokumentáció 3. Fejlesztői dokumentáció (rendszerterv, biztonsági kérdések, adatbázis, média-elemek, navigáció stb., ergonómia, tesztelés, stb.) 4. Összegzés A szakdolgozatot mind elektronikus (CD), mind hagyományos, nyomtatott formában, kötve is be kell nyújtani. Formai követelmények: FONTOS! Az új szakmai és vizsgakövetelmény leírásban utalás szerepel a formai követelmények betartására, de ezek pontos mibenlétéről még nem jelent meg dokumentum. Az alábbi leírások a korábbi Szoftverfejlesztő képzés vizsgakövetelményéből valók, ezért ezt tekintsétek iránymutatónak. A hallgatóknak a vizsgadolgozatot az alábbi szerkesztési, terjedelmi előírások figyelembételével kell összeállítaniuk:
a vizsgadolgozat terjedelme legalább 20 oldal képek nélkül (kb. 20 000 karakterrel) betűméret: 12pt, betűtípus: Times New Roman, sorköz: 1,5 tartalomjegyzék oldalszámozással, arab számokkal ábrajegyzék amennyiben a vizsgadolgozatban valamely egyéb forrásból idéz a hallgató (szakirodalom vagy korábbi vizsgadolgozat stb.), egyértelműen fel kell tüntetni az erre való hivatkozást; vizsgadolgozat végén fel kell tüntetni a felhasznált források jegyzékét; kellő figyelmet kell fordítani a vizsgadolgozat rendezettségére, külalakjára és a helyesírásra; vizsgadolgozatnak tartalmaznia kell az adatbázis létrehozásának fő lépéseit és azok dokumentációját1 a vizsgadolgozathoz mellékletként csatolni kell a létrehozott adatbázist elektronikus formában
A szakdolgozat elkészítése A választott téma kidolgozásában a szerző munkáját belső konzulens szaktanár felügyeli, a szakdolgozat elkészítéséhez szükséges útmutatásokat a szerző számára folyamatosan átadja. A konzulens tanárt a tanuló önállóan választhatja ki a megjelölt tanárok közül – figyelembe véve, hogy egy tanár legfeljebb 5 tanulót vállalhat2 – a tanárral egyeztetve, a szakdolgozat lap kitöltésével és aláírásával. A szakdolgozat adatlap megtalálható az 1. mellékletben. Nyilatkozat hiányában az iskola vezetősége jelöli ki a tanuló számára a konzulens tanárt. Konzulens tanárok: 1. Auxi János 2. Bende Attila 3. Csákfalvi Andrea 4. Holló Dávid 5. Molnár Judit Zita
I.
1
A korábbi vizsgakövetelmény előírta, hogy adatbázis alapú programot kell készíteni. Az új vizsgakövetelményben ez nem előírás, így az alábbi rész csak abban az esetben kötelező, ha ilyen programot készít valaki. 2 Holló Dávid tanár úr, mivel részmunkaidős tanár, csak max. 3 tanulót vállal
Témajavaslatok: Auxi János: (C#) 1.
2.
3.
4.
5.
IRC kliens: Többablakos alkalmazás, mely IRC szerverre csatlakozik, egyszerre figyeli a billentyűzetet és a szerverről érkező üzeneteket és írja ki a képernyőre mindkettőt. A beszélgetéseket eltárolja adatbázisban. Felhasználói belépéshez is köthető és ilyenkor a bejelentkező felhasználó korábbi beszélgetése betöltődik. Tetszőleges tárgyból felkérdezőprogram: Adatbázisban több szintű kérdések legyenek eltárolva. Felhasználói bejelentkezéshez kötött a használata. Minden felhasználó az első szintről indul kezdetben. Számára elsőre csak egyes szintű kérdések tehetőek fel. Ha helyesen válaszol, akkor növekedjen a tapasztalati pontja. Ha elér egy bizonyos %-ot, akkor már jöhet a második szintű kérdéscsoport is, de az elsőből még mindig kaphat kérdéseket. Ha egy kérdésre helyesen válaszolt, annak a kérdésnek növekedjen az értéke, ha rosszul válaszolt, akkor csökkenjen. Minél alacsonyabb egy kérdés értéke, annál többször kerülhessen újra sorba. Tetszőleges játék készítése, melyben tapasztalati pontokat lehet gyűjteni. Ahogy növekedik a tapasztalati pont, a játék nehézségi foka legyen egyre nehezebb. Itt a használat szintén bejelentkezéshez kötött legyen. A felhasználókat és a tapasztalati pontjaikat adatbázisban tárolja. Szó- és kifejezés-tanuló program. Nagyon hasonló a felkérdező programhoz. Annyi különbséggel, hogy lehessen felvinni újabb szavakat, kifejezéseket. Tehát a szavaknak és kifejezéseknek növekedjen az értéke, ha helyesen válaszoltak rá illetve csökkenjen, ha rosszul. Az alacsonyabb pontszámú kérdések kerüljenek felkérdezésre leginkább. Könyvkölcsönző program Legyen egy adatbázis, melyben könyveket tárolunk. Cím, író, kiadás száma, darabszám, kölcsönözhető darabszám stb. Listázza ki a könyveket, és lehessen szűrni a címe, írója stb alapján. Ha van kölcsönözhető példány bent, akkor ezt jelezze.
Bende Attila: (C#, Java, PHP, MySQL) 1. Minőségirányítási kérdőívek online felületének elkészítése megadott szempontrendszer alapján, kérdőívek és értékeléseinek elkészítése több kategóriában felhasználó/intézmény azonosítással (PHP, MySQL) 2. Multimédiás iskolai évkönyv elkészítése, amely alkalmas az osztályok névsorának, tanáraiknak tárolására, kezelésére, valamint a végzős osztályok tablóképeinek megjelenítésére (tetszőleges platformon) 3. Online pókerjáték készítése, felhasználók kezelésével, akik akár egymás ellen is vagy a "gép" ellen játszhatnak. (PHP, MySQL) 4. Online vagy asztali program készítése szókirakó, vagy képfelismerő játékhoz (MySQL, PHP, Java, C#) 5. Tananyagfejlesztés tetszőleges tantárgyhoz ellenőrző kérdéssorokkal, tesztekkel. (MySQL, PHP, Java, C#) 6. Mobil alkalmazás fejlesztése egyszerű játék vagy információs alkalmazás témában (Java, Android) 7. Online fórum fejlesztése (MySQL, PHP) 8. Tetszőleges témájú nyilvántartó program (személyi, termék stb...) készítése (MySQL, Java, C#) Csákfalvi Andrea (PHP, MySql) 1. Online fénykép és albumkezelő készítése A cél egy online fénykép kezelő rendszer tervezése és megvalósítása különleges nagy felbontású képek, tájképek számára. A célközönség a fotósok illetve a fotózást kedvelő amatőrök. Az alkalmazás képes legyen fényképek tárolására, rendszerezésére, csoportba rendezésére. A képek és albumok mindenki számára megtekinthetők legyenek. Véleményezni, csak belépés után lehessen. Belépés után a kép értékelhető legyen, valamilyen rendszer szerint, illetve konkrét véleményt lehessen fűzni a megtekintett fényképhez. 2. Ingatlan hirdetési portál készítése Cél egy olyan portál készítése tervezése, mely lehetővé teszi az átlag felhasználónak a város bármely pontján található ingatlanról történő tájékozódást. (Kép, leírás, tervrajz, elhelyezkedés térképen...) A felhasználó belépés után saját maga tölthessen fel hirdetéseket, képpel, szöveggel. Az ingatlanokról lehessen kérdezni, közvetlenül a felhasználóktól. 3. Adatbázis alapú oktatási rendszer Cél olyan program készítése, mely lehetővé tenné, bármilyen szabadon választható témában, a tanulást és a tanultak elsajátításának ellenőrzését, teszteken, feladatlapokon keresztül. 4. Adatbázis alapú vizsgáztatási rendszer Cél olyan program készítése, mely lehetővé tenné, bármilyen szabadon választható témában, a tanultak elsajátításának ellenőrzését, teszteken, feladatlapokon keresztül. A megoldott teszt azonnal értékelést illetve megol-
5.
6.
dást is adjon a felhasználó számára. A kérdéseket egy adatbázisból a tanár válogathassa össze vagy ízlése szerint automatikusan generálhassa is. Szakdolgozatok adminisztrációját segítő weboldal elkészítése. Cél egy olyan weboldal készítése, mely a szakdolgozat készítés teljes folyamatának adminisztrációját magába foglalja. A téma kiírásától, a téma kiválasztásán keresztül, a konzultációkon át, egészen a szakdolgozat tényének és eredményének rögzítéséig. Cég dolgozói nyilvántartásának tervezése. Cél, egy szabadon választott profillal rendelkező cég dolgozói nyilvántartásának megtervezése. A cég munkatársai között, fix munkakört betöltő dolgozók, és többféle munkakörben dolgozók is találhatók. A tervezett és a tényleges munkabeosztást tárolni kell. Vannak, akik fix havibért kapnak (alapbér), több munkakörben viszont az alapbéren felül a ledolgozott órákkal arányos juttatás is jár (órabér alapján). Az egyes dolgozóknál havonta meg kell határozni a ledolgozott munkaidőt, és a fizetést. Szinte minden dolgozónak van céges telefonja, és sok dolgozó használhat céges autót. Akik céges autót használnak útnyilvántartást vezetnek, az autóknál nyilván kell tartani, hogy mikor melyik autót ki vezette.
Holló Dávid (PHP, MySql) 1. Vonalkód alapú leltár-kezelő rendszer A program képes legyen vonalkódok előállítására-kezelésére, eszközleltár nyilvántartására, a leltárban szereplő tételek kezelésére, a leltárhoz kapcsolódó számlák befogadására-rögzítésére. 2. Vonalkód alapú csomagkövető rendszer A program képes legyen vonalkódok előállítására-kezelésére, valamint biztosítson lehetőséget postai küldemények nyomkövetésére. 3. Web alapú beiskolázási, időpontkezelő-rendszer A program képes legyen a felvételiző diákok számára web alapokon nyugvó felvételi-beiskolázási funkciók ellátására, időpontfoglalásra, személyes adatok kezelésére. 4. Web alapú iskolai felhasználó-kezelő rendszer (AD+MaYor) A program képes legyen webes felhasználók kezelésére, amelyet az alkalmazás összekapcsol a MaYor napló programmal, valamint a Windows Active Directory-val (ldap). 5. Autószerelő-nyilvántartó program, mely képes tárolni az adott szervizbe kerülő jármű adatait (km-óra állása, alvázszám, rendszám, motorkód, forgalmi rendszám, stb.), az elvégzett szerviz munkákat, figyelmeztetni a szervizt/tulajdonost a lejáró vizsgákra, kötelező szervizekre, stb. 6. Állatorvosi nyilvántartó program, mely kisállatok adatait tartja nyilván (kötelező, és opcionális oltások), betegségek, figyelmeztetés kötelező oltás lejárata esetén, stb. Molnár Judit Zita: (C#) 1. Házi könyvelő program (kiadások, bevételek tervezésére, rögzítésére, lekérdezésére alkalmas program) 2. Diabetes napló és analizáló program (mért vércukor értékek felvitelére, elemzésére, lekérdezésére alkalmas program) 3. Valamilyen tantárgyhoz kapcsolódó oktatóprogram tetszőleges korosztály számára. 4. Könyvtári nyilvántartó program az iskolai könyvtár részére. 5. Iskolai adatnyilvántartó program. 6. Tesztkészítő és –kitöltő alkalmazás 7. Receptgyűjtemény kezelésére szolgáló program (receptek tárolása képekkel, kategóriákba sorolás, keresés többféle szempont szerint) 8. „Okos tüske” egyszemélyes logikai játék számítógépes megvalósítása (játék leírása a 2. mellékletben) 9. Torpedó játék 10. Valamilyen kétszemélyes kártyajáték (pl. snapszer, kaszinó) számítógépes megvalósítása (játék a gép ellen) A vizsgázó a szakdolgozat témáját kiválaszthatja a fentebb megadott és javasolt témakörökből, de lehetőség van egyéni téma megjelölésére is, amelyet előzetesen a témában kompetens szaktanárral kell egyeztetnie. A témajavaslatok sem konkrét szakdolgozat címek, ezért a kiválasztott témát fontos a vizsgázó személyes érdeklődési és ismeretségi területének megfelelően specializálni. A téma egyeztetése minden esetben szükséges a kiválasztott konzulens tanárral.
A szakdolgozat téma és a konzulens tanár kiválasztásának, a szakdolgozat adatlap leadásának határideje: 2015. október 22.
Ekkorra már a szakdolgozat adatlap leadásával együtt a készítendő szoftverhez tartozó követelményspecifikációt is le kell adni, amire osztályzatot is kaptok az alkalmazásfejlesztés tantárgyhoz. A követelményspecifikáció a minimumkövetelmény (ami legalább a kiindulási helyzet leírását és a követelménylistát kell tartalmazza). A jeles osztályzathoz már a funkcionális specifikációból is el kell készíteni legalább néhány képernyőtervet és használati esetdiagramot valamint forgatókönyvet.
A szakdolgozat benyújtásának határideje: 2016. március 30. II.
III.
A záródolgozat értékelési szempontjai: 1. A megoldott feladat nehézsége, a hozzáadott önálló munka minősége 2. A témában való tájékozottság, a szakirodalommal kapcsolatos ismeretek 3. A szakdolgozat áttekinthetősége, formai és nyelvi igényessége 4. A hallgató munkájáról kialakult vélemény 5. Terjedelmi követelmények A vizsgadolgozat védése: Időtartama: 15 perc A feladat a védésen: a vizsgadolgozat bemutatása; reflexió a bírálat megállapításaira; a védést vezető szakértő kérdéseinek megválaszolása. Az értékelés szempontjai: a vizsgadolgozatban foglaltak lényegének szakszerű ismertetése; a választott megoldáson keresztül a programozási, módszertani, fejlesztői eszközök ismeretében és alkalmazási lehetőségiben való tájékozottság bizonyítása; a bemutatás szakmai színvonala; a vitatott problémák kezelésének módja; nyelvi igényesség.
1. Melléklet
SZAKDOLGOZAT ADATLAP A szakdolgozat készítőjének neve: ................................................................................................................................................................ e-mail címe: ................................................................................................................................................................ telefonszáma: ................................................................................................................................................................ A szakdolgozat témája: ................................................................................................................................................................ ................................................................................................................................................................ ................................................................................................................................................................ ................................................................................................................................................................ A szakdolgozat címe: ................................................................................................................................................................ Konzulens tanár: ................................................................................................................................................................
Kelt: Budapest, .................................................
..................................................................
.................................................................
a szakdolgozat készítőjének aláírása
a konzulens tanár aláírása
„OKOS TÜSKE” játékszabály A játékmező egy lyukacsos hatszög alakú rész, 37 lyukkal. A játék kezdetén minden lyukban van egy tüske. A játékos kezdéskor a tábla tetszőleges helyéről kihúzhat egy tüskét. Ezután tüskék áthelyezése következik: az üres lyukba úgy tehetünk egy másik tüskét, hogy az egyik tüskével 1 mellette levő tüskét átugrunk (átlósan is lehet). Az átugrott tüskét eltávolítjuk a tábláról. A játék addig folytatódik, ameddig lehetséges a fenti szabály szerint lépni. A cél, hogy minél kevesebb (ha lehet 0) tüske maradjon a táblán. Példa: 1. lépés: a játékos kihúzza a C1 tüskét. 2. lépés: a játékos az E1 tüskével átugorja a D1 tüskét, amit levehet a tábláról. (1. ábra) 3. lépés: a játékos a D3 tüskével átugorja a D2 tüskét, amit levehet a tábláról (2. ábra) 4. lépés például: F2-vel átugorja E2-t, amit levesz stb. (3. ábra) A 1 2 3 4 5 6 7
B
C
D
E
F
G
1. ábra
1 2 3 4 5 6 7
A
B
C
D
E
F
G
E
F
G
2. ábra
1 2 3 4 5 6 7
A
B
C
D
3. ábra