02. Követelmény, projekt, funkcionalitás - AdjustmentBeaver/szoftlab GitHub Wiki

Követelmény, projekt, funkcionalitás

Bevezetés

Cél

A projekttel kapcsolatos követelmények pontos megfogalmazása, a felhasznált fejlesztői segédeszközök rövid bemutatása, továbbá a szoftver funkcionális követelményeinek a lefektetése.

Szakterület

A szoftver egy játékot valósít meg, amely egy képzeletbeli vasúti terepasztalt szimulál. A játék rekreációs célokat szolgál.

Definíciók, rövidítések

  • Git - Verziókezelő alkalmazás.

  • Github - Git-re épülő szolgáltatás.

  • Trello - Digitális parafatábla.

  • Slack - A csapatmunka elősegítésére szolgáló kommunikációs platform.

  • Funkcionális követelmények - A programtól elvárt, a specifikációban definiált működés.

  • JDK - röv., Java Developer Kit

  • IntelliJ IDEA - Java fejlesztőkörnyezet.

  • HSZK - röv., Hallgatói Számítógép Központ

  • SourceTree - Git kezelőfelület.

  • StarUML - UML modellek készítésére alkalmas eszköz.

  • i/o periféria - Számítógépes ki- és beviteli eszközök.

  • IDE - Fejlesztőkörnyezet.

  • UML - Általános modellező nyelv.

  • CLI - parancssoros felület

  • Use-case - A felhasználó és egy rendszer közötti interakciók leírása.

  • Szkeleton - A projekt és a szoftver még kezdetleges állapotú modellje, ami a felépítést szemlélteti.

  • Prototípus - A grafikus felület nélküli, egyéb funkcióit tekintve közel kész szoftver.

  • Grafikus változat - A már kész grafikus (2 dimenziós, interaktív) felülettel rendelkező szoftver

  • Analízis modell - A fejlesztés legelső fázisa, amely során rövid áttekintő vázlat készül az elkészítendő feladathoz.

  • Wiki - A projekt Github oldalán található dokumentumszerkesztő, illetve megjelenítő platform.

  • Szoftver - Futtatható program és a hozzá tartozó dokumentáció.

  • BME - Budapesti Műszaki Egyetem

  • Rekreáció - A rekreáció fogalma, jelentéstartalma hazánkban dominánsan a szabadidő eltöltés kultúrájaként terjedt el, bár pontosabban körbejárva funkcióját egy komplexebb értelmezéshez jutunk. A rekreáció a jó közérzet, a jól-érzés, a jól-lét (well-being), a minőségi élet megteremtését szolgálja, miközben a rekreálódó felüdülését, felfrissülését és szórakozását is eredményezi.

Hivatkozások

Összefoglalás

A dokumentum további részeinek tartalma:

  • Általános architektúrális áttekintés

  • Feladat részletes specifikációja

  • Szoftver funkcionális és egyéb követelményei

  • Lényeges use-casek leírása, diagramok

  • Szótár lényegesebb kifejezésekkel

  • Projekt terv, ütemterv

  • Napló

Áttekintés

Általános áttekintés

Architektúrális diagram

A szoftver MVC tervezési minta szerint lesz implementálva. A Model kezeli a pályát, játékállást, fájlokat. Futtatja a játék logikáját, szimulációt:

  • vonatok közlekedése, haladása, ütközésdetektálását

  • váltók hatása, állítása

  • állomásoknál utasok leugrása

A mentés, töltés funkciókat megvalósítja.
A View a felhasználóval interakcióban álló alrendszer, kezdetben karakteres, majd végleges változatában 2D grafikus felületű.
Megjeleníti az adott felületen a lényeges információkat, vonatok helyzete, stb... a Modell alapján.
A felhasználó beavatkozásait a rendszerbe a Controller érvényesíti a Modellen.

Hálózati funkciókat nem használ a program.
Háttértáron a programon kívül, a pálya és játékállás fájlok mellett a grafikus megjelenítés erőforrásfájljai vannak.

Funkciók

Sheldon terepasztalt épít vonatjai számára. A terepasztal maga a pálya, ahol a játék zajlik. Bizonyos időközönként vonatok indulnak a pálya széléről. Ezek a vonatok egy mozdonyból és legalább egy kocsiból állnak. A vonatok a pályán előre meghatározott síneken mehetnek csak, a síneket váltók kötik össze az elágazásoknál. A sínek mellett állomások találhatóak. Egy állomáshoz egy sín tartozhat. A pályán találhatóak még speciális helyek, ahol a játékos úgynevezett alagútszájakat építhet. Két alagútszáj között alagút húzódik, amiben a vonat közlekedhet.

A kocsik és az állomások különböző színűek lehetnek. A játék célja, hogy a kocsikban ülő utasokat eljuttassa a játékos a vele megegyező színű valamelyik állomásra. Ha a megfelelő színű kocsi egy azonos színű állomáshoz érkezik, akkor az utasok kiugranak a kocsiból (a vonat nem lassít le), ezzel a kocsi kiürül. Egy pálya teljesített lesz, ha a játékosnak sikerült az összes kocsit kiürítenie. Egy teljesített pálya után indul a következő pálya, ami csak előre meghatározott lehet. A játékban négy pálya kap helyet, amiknek teljesítése egymás után egyre nehezebb. A vonatok sebessége a pálya nehézségéhez viszonyul. Egy pályán belül a különböző belépési pontok határozzák meg egy-egy vonat sebességét. Minden pályán előre meghatározott, hogy melyik vonat, milyen színű kocsikkal és honnan indul.

A játék indításakor a kiválasztható, hogy új játék induljon, vagy egy korábban a játékos által elmentett állás töltődjön be. Mentés bármikor lehetséges a játék közben.

Az alagutak lényege, hogy új útvonalakat alakíthatunk ki a pályán. Ezek lehetnek rövidebbek, mint a vonatok, de hosszabbak is. A vonatok azon része ami az alagútban van nem látszik, ami kilóg belőle az pedig a szokásos módon jelenik meg. Egy alagút tetszőleges két alagútszáj építésére alkalmas hely között építhető. Egyszerre csak egy alagút lehet a pályán megépítve. Az alagút addig nem rombolható le, amíg abban egy vonat közlekedik. A speciális helyekre vakvágány vezet. Ha egy vonat elért egy speciális helyet, és ott nincs alagútszáj, akkor a vonat kisiklik, és a pálya sikertelenül ér véget.

A kiürült kocsi olyan színűre módosul, ami sem állomásnak, sem kocsinak a színe, semleges lesz. A kocsik csak a mozdonytól kezdődő sorrendben ürülhetnek ki, ami azt jelenti, hogy hiába ér a vonat egy olyan állomásra, amely megegyezik az utolsó kocsi színével, az utasok nem fognak onnan leszállni, amíg a korábbi kocsik még nem ürültek ki.

A váltóknak egy bemenetük és két kimenetük van. A játékos határozhatja meg, hogy melyik kimenet legyen aktív. A vonat a váltóhoz érve abba az irányba megy tovább, amelyik kimenetre a váltó állítva van. A vonat a kimenetek irányából is megközelítheti a váltót, ebben az esetben a vonat továbbhaladási iránya kötelezően a bemenet felé vezet. Amíg egy vonat a váltón tartózkodik, addig annak a kimenetei között nem lehet váltani.

A játékos veszít, ha a vonatok összeütköznek, vagy ha egy vonat a pálya széléhez ér, ezzel véget ér a játék és az aktuális pálya újraindul.

A játékos állíthatja a váltókat, és alagútszájakat hozhat létre, illetve rombolhat le. A játékos csak ezekkel a műveletekkel befolyásolhatja a vonatok irányát, elősegítve a pálya teljesítését.

Felhasználók

A program felhasználóira nézve nincsen előkövetelmény, mivel a program egy játék, ezért aki a szótárban leírt definíciókat értelmezni tudja, az képest a program használatára is.

Korlátozások

A program csak a Java alap könyvtárait használhatja, külső könyvtárak használata nem megengedett.

Feltételezések, kapcsolatok

https://www.iit.bme.hu/targyak/BMEVIIIAB02/feladat - A feladat leírása

Követelmények

Funkcionális követelmények

Az. Leírás Ellenőrzés Prioritás Forrás Use-case Komment
1.01 A vonatok a terepasztal széléről induljanak Bemutatás Alapvető Megrendelő
1.02 Egy vonat egy mozdonyból és valahány kocsiból álljon Bemutatás Alapvető Megrendelő
1.03 Az utasok a kocsikban üljenek Bemutatás Alapvető Megrendelő
1.04 Az utasokat el lehessen juttatni a megfelelő állomásokra Bemutatás Alapvető Megrendelő
1.05 A terepasztalon fussanak sínek Bemutatás Alapvető Megrendelő
1.06 A vonatok a síneken közlekedjenek Bemutatás Alapvető Megrendelő
1.07 A síneket váltók kössék össze Bemutatás Alapvető Megrendelő
1.08 A vonat abba az irányba haladjon amerre a váltók állnak Bemutatás Alapvető Megrendelő
1.09 A pályán legyenek különleges helyek Bemutatás Alapvető Megrendelő
1.10 A különleges helyekre alagutak száját lehessen építeni Bemutatás Alapvető Megrendelő Alagútszáj építése
1.11 Egyszerre maximum csak két alagútszáj lehessen a pályán Bemutatás Alapvető Megrendelő Alagútszáj építése
1.12 A két alagútszájat egy alagút kösse össze Bemutatás Alapvető Megrendelő Alagútszáj építése
1.13 Az egyik szájon belépő vonat a másik szájon jöjjön ki Bemutatás Alapvető Megrendelő
1.14 Az alagút hossza lehessen rövidebb a vonat hosszánál Bemutatás Alapvető Megrendelő
1.15 A vonat alagútban lévő része ne lehessen látható Bemutatás Alapvető Megrendelő
1.16 A sínek mellett lehessenek állomások Bemutatás Alapvető Megrendelő
1.17 Az állomások lehessenek különböző színűek Bemutatás Alapvető Megrendelő
1.18 A vonatok kocsijainak lehessen saját színe Bemutatás Alapvető Megrendelő
1.19 Az állomáson csak azok az utasok szállhassanak le akik a megegyező színű kocsiban tartózkodnak Bemutatás Alapvető Megrendelő
1.20 A kocsik csak a mozdonytól kezdődő sorrendben ürülhessenek ki Bemutatás Alapvető Megrendelő
1.21 A játékos tudja a váltókat állítani Bemutatás Alapvető Megrendelő Váltó állítás
1.22 A játékos tudjon alagútszájakat építeni Bemutatás Alapvető Megrendelő Alagútszáj építése
1.23 A játékos tudjon alagútszájakat rombolni Bemutatás Alapvető Megrendelő Alagútszáj rombolása
1.24 A játékos veszítsen, ha két vonat ütközik Kiértékelés Alapvető Megrendelő Ütközésdetektálás
1.25 A következő pályával folytatódjon a játék, ha a játékos nyert Bemutatás Alapvető Megrendelő
1.26 Ha vonat a pálya széléhez ér, ütközzön, a játékos veszítsen Bemutatás Alapvető Csapat
1.27 Egy állomáshoz egy sínpár tartozzon Bemutatás Fontos Csapat
1.28 A program rendelkezzen menürendszerrel Bemutatás Opcionális Csapat Új játék, mentés, betöltés, kilépés

Erőforrásokkal kapcsolatos követelmények

Azonosító Leírás Ellenőrzés Prioritás Forrás Komment
2.01 JDK HSZK gépein Bemutatás Alapvető Megrendelő
2.02 HSZK ekvivalens számítógépek Bemutatás Alapvető Megrendelő Hozzá tartozó i/o perifériákkal (Monitor, egér, billentyűzet)
2.03 IntelliJ IDEA nincs opcionális csapat Preferált IDE
2.04 Git nincs alapvető csapat
2.05 GitHub nincs alapvető csapat
2.06 SourceTree nincs opcionális csapat Alternatíva: CLI, IDEA
2.07 StarUML nincs alapvető csapat Preferált UML modellező
2.08 Slack nincs fontos csapat Preferált kommunikációs menedzsment eszköz
2.09 Trello nincs fontos csapat Preferált taszkmenedzsment eszköz

Átadással kapcsolatos követelmények

Azonosító Leírás Ellenőrzés Prioritás Forrás Komment
3.01 Szkeleton átadás Bemutatás Alapvető Megrendelő 03.22
3.02 Proto átadás Bemutatás Alapvető Megrendelő 04.19
3.03 Teljes program átadás Bemutatás Alapvető Megrendelő 05.10
3.04 Útmutató alapján installálható Bemutatás Alapvető Megrendelő
3.05 HSZK számítógépeken fut Bemutatás Alapvető Megrendelő

Egyéb nem funkcionális követelmények

Azonosító Leírás Ellenőrzés Prioritás Forrás Komment
4.01 Cross-platform nincs fontos csapat Ne legyen platformfüggő a megvalósítás
4.02 Unit tesztekkel tesztelhető nincs fontos csapat
4.03 Szimuláció kivárható késleltetéssel fusson Bemutatás fontos csapat min. ~30 FPS

Lényeges use-casek

Use-case leírások

Use-case neve Játék indítása
Rövid leírás Játék elindul új vagy betöltött játékállással
Aktorok User
Forgatókönyv A játékos menüből kiválasztja, hogy új játékot kezd általa választott pályán, vagy betölt egy korábbi játékállást
Use-case neve Betöltés
Rövid leírás Korábbi játékállás betöltése
Aktorok User
Forgatókönyv A játékos kiválasztja a betölteni kívánt játékállást
Use-case neve Új játék
Rövid leírás Új játék indítása választott pályán
Aktorok User
Forgatókönyv A játékos kiválasztja milyen pályán akar új játékot indítani
Use-case neve Váltó állítás
Rövid leírás A váltó állapotát megváltoztatja
Aktorok User
Forgatókönyv A játékos a váltó kimenetei közül kiválasztja az aktívat. Egy váltó két csomópontot köt össze. A váltó iránya meghatározza a rajta áthaladó vonat haladási irányát
Use-case neve Alagútszáj építése
Rövid leírás Alagútszájak felépítése különleges helyeken
Aktorok User
Forgatókönyv A játékos a különleges helyen épít egy alagútszájat. Ha kettő fel van építve, akkor azok alagutat alkotnak, ekkor több alagútszáj nem építhető.
Use-case neve Alagútszáj rombolása
Rövid leírás Felépített alagútszáj lerombolása
Aktorok User
Forgatókönyv A játékos a kiválasztott alagútszájat lerombolja, ekkor az alagút is megsemmisül. Ha vonat tartózkodik az alagútban, nem lehet lerombolni egyik szájat sem.
Use-case neve Mentés
Rövid leírás A jelenlegi játékállás elmentése
Aktorok User
Forgatókönyv A játékos menüből a jelenlegi játékállást elmenti, a mentés fájlba kiíródik.
Use-case neve Kilépés
Rövid leírás A játék bezárása
Aktorok User
Forgatókönyv A játékos menüből kilép a játékból.

Use-case diagram

Use-case diagram

Szótár

Fogalom Leírás
Alagút Két alagútszájat köt össze. A vonat közlekedhet benne. Hossza lehet rövidebb is mint a vonat, ha a vonat benne tartózkodó része nem látszik.
Alagútszáj A pályán található különleges helyekre építheti a játékos, ezeket le is rombolhatja. Két alagútszájat egy alagút köt össze.
Állomás Az állomások rendelkeznek színnel. Az állomáshoz érő vonathoz tartozó, az állomással megegyező színű kocsikról leugranak az utasok, ezzel üressé válik.
Betöltés Játék indításakor lehetőség van egy korábban mentett állás betöltésére.
Játék indítása Kiválasztható, hogy új játék (első pálya) vagy egy korábban mentett állás induljon el.
Kocsi Minden vonathoz tartozhat több kocsi. A kocsikban utasok ülnek. A kocsik rendelkeznek színnel. A megfelelő színű kocsit a megfelelő színű állomásra kell eljuttatni a játékosnak a vonat irányításával.
Kocsi kiürülése A kocsik csak a mozdonytól kezdődő sorrendben ürülhetnek ki. Akkor ürül ki egy kocsi, ha az utasok leugrottak róla
Következő pálya Egy terepasztal teljesítése után egy új terepasztal indul.
Különleges helyek A pályán találhatóak különleges helyek. Ezeken a helyeken építhető alagútszáj, amiből maximum 2 lehet a pályán.
Leugrás A vonat nem áll meg az állomáshoz érve, ezért az utasok így szállnak le a vonatról.
Mentés Játék közben lehetőség van az aktuális állás lementésére.
Menürendszer A program grafikus felületének része, a program különböző funkciói érhetők el használatával.
Mozdony Minden vonathoz tartozik egy mozdony. Ez a vonat elején helyezkedik el.
Összeütközés Ha kettő vagy több vonat összeér (fedésbe kerül), akkor a játék véget ér, a játékos veszít.
Sebesség A vonatok rendelkeznek sebességgel. Ez pályánként növekszik és azon belül is eltérhet. Részben ez is meghatározza egy pálya nehézségét.
Sín A vonatok csak a síneken közlekedhetnek.
Szín Az állomások és a kocsik tulajdonsága. Ha egy kocsi az azonos színű állomáshoz ér az utasok leugranak róla.
Terepasztal Maga a pálya. Itt zajlik a játék. Sínek futnak rajta, amin a vonatok közlekednek. A Pályán találhatóak az állomások, különleges helyek is.
Terepasztal nehézsége A terepasztal nehézségét meghatározza a vonatok sebessége és a pálya felépítése. A játékban 4 terepasztal játszható.
Terepasztal széle Ezekről a pontokról indulhatnak a vonatok bizonyos időközönként. A vonat belépési pontja határozza meg a sebességét.
Terepasztal teljesítése Ha minden kocsi kiürül és nem történt ütközés, akkor a játékos abszolválta a pályát és a következő pálya indul.
Üres kocsi Olyan kocsi, amiről az utasok már leugrottak egy állomásra.
Vakvágány Sín, aminek a végén egy fel nem épített alagútszáj áll (különleges hely) vagy semmi sincs. Ha egy vonat a vakvágány végére ér, akkor vége a játéknak.
Váltó Az elágazásoknál a síneket váltók kötik össze. A játékos állíthatja a váltókat. A vonat abba az irányba halad tovább amerre a váltó áll. Egy bemenettel és kettő kimenettel rendelkezik.
Váltó bemenet A bemenet irányából érkező vonat a játékos által választott kimeneten halad tovább.
Váltó kimenet A kimenet felől érkező vonat a váltó bemenetének irányába megy tovább.
Vesztés Vonatok összeütközésekor vagy a terepasztal szélére érve a játékos veszít és az aktuális terepasztal újraindul.
Vonat A vonatok sínen közlekednek. A játékos a váltók állításával és alagútszájak lehelyezésével/lerombolásával irányítja a vonatokat.

Projekt terv

Csapat

Név Felelősség
Dobai Botond Dokumentáció, kód
Dömötör Szilárd Dokumentáció, kód
Földvári András Dokumentáció, kód
Kövér Márton Dokumentáció, kód
Telek István Dokumentáció, kód

Ütemterv

Feladat Határidő Típus
Követelmény, projekt, funkcionalitás febr. 20. beadás
Analízis modell kidolgozása 1. febr. 27. beadás
Analízis modell kidolgozása 2. márc. 6. beadás
Szkeleton tervezése márc. 13. beadás, dokumentum feltöltése
Szkeleton márc. 20. beadás, forráskód feltöltése
Szkeleton bemutató márc. 22. bemutatás
Prototípus koncepciója márc. 27. beadás
Részletes tervek ápr. 3. beadás
Prototípus készítése, tesztelése ápr. 10. beadás
Prototípus ápr. 17. beadás, forráskód (tesztek) feltöltése
Proto bemutató ápr. 19. bemutatás
Grafikus felület specifikációja ápr. 24. beadás
Grafikus változat készítése máj. 1. beadás
Grafikus változat máj. 8. beadás, forráskód feltöltés
Összefoglalás máj. 10. grafikus bemutatás, feltöltés

Mérföldkövek

A szkeleton változat célja annak bizonyítása, hogy az objektum és dinamikus modellek a definiált feladat egy modelljét alkotják. A szkeleton egy program, amelyben már valamennyi, a végső rendszerben is szereplő business objektum szerepel. Az objektumoknak csak az interfésze definiált. Valamennyi metódus az indulás pillanatában az ernyőre szöveges változatban kiírja a saját nevét, majd meghívja azon metódusokat, amelyeket a szolgáltatás végrehajtása érdekében meg kell hívnia. Amennyiben a metódusból valamely feltétel fennállása esetén hívunk meg más metódusokat, akkor a feltételre vonatkozó kérdést interaktívan az ernyőn fel kell tenni és a kapott válasz alapján kell a továbbiakban eljárni. A szkeletonnak alkalmasnak kell lenni arra, hogy a különböző forgatókönyvek és szekvencia diagramok ellenőrizhetők legyenek. Csak karakteres ernyőkezelés fogadható el, mert ez biztosítja a rendszer egyszerűségét.

A prototípus program célja annak demonstrálása, hogy a program elkészült, helyesen működik, valamennyi feladatát teljesíti. A prototípus változat egy elkészült program kivéve a kifejlett grafikus interfészt. A változat tervezési szempontból elkészült, az ütemezés, az aktív objektumok kezelése megoldott. A business objektumok - a megjelenítésre vonatkozó részeket kivéve - valamennyi metódusa a végleges algoritmusokat tartalmazza. A megjelenítés és működtetés egy alfanumerikus ernyőn követhető, ugyanakkor a megjelenítés fájlban is logolható, ezzel megteremtve a rendszer tesztelésének lehetőségét. Különös figyelmet kell fordítani az interfész logikájára, felépítésére, valamint arra, hogy az mennyiben tükrözi és teszi láthatóvá a program működését, a beavatkozások hatásait.

A grafikus változat a prototípustól elvileg csak a kezelői felület minőségében különbözhet. Ennek változatnak az értékelésekor a hangsúlyt sokkal inkább a megvalósítás belső szerkezetére, semmint a külalakra kell helyezni.

Csoportmunkát támogató eszközök

  • Git: Az elkészített forráskód megosztására használjuk. Segítségével nyomon követhetőek a változtatások (ki, mikor és mit módosított). A verziók könnyebben áttekinthetőbbek, visszakereshetőbbek.

  • Trello: A Trello egy kollaborációs eszköz, aminek segítségével a projekt feladatait tudjuk menedzselni. Különböző listák (listákon belül un. kártyák) hozhatók létre benne. A részfeladatok menedzseléséhez listákat hozunk létre (pl.: to do, in progress, done), amikhez a részfeladatokat kártyaként adjuk hozzá. A kártyákhoz az érte felelős személy és különböző címkék is hozzárendelhetők. Ugyancsak ezen a felületen rögzítjük a megoldás során felmerült kérdéseket és fontos határidőket. Korábban is használtuk már a Trellot, nagyon jó szolgálatot tett.

  • Slack: A csapaton belüli írásos kommunikációra használjuk. Channeleket hoztunk létre az egyes témákhoz. Itt szervezzük meg a megbeszéléseket.

  • Wiki: A dokumentációt a GitHub felületén megtalálható Wiki oldalon szerkesztjük. Markdown markup nyelvet használunk a formázáshoz. Későbbiekben a dokumentumot Wordbe importáljuk a leadáshoz.

Napló

Kezdet Időtartam Résztvevők Leírás
február 9. 2 óra Dobai, Dömötör, Földvári, Kövér, Telek Fejlesztőeszközök áttekintése, megbeszélés. Döntés: GitHub használata, Dokumentáció formátuma
február 11. 1,5 óra Dömötör, Földvári, Telek Megbeszélés: Feladat értelmezése. Döntés: További megbeszélés szükséges.
február 14. 3 óra Dobai, Dömötör, Földvári, Kövér, Telek Megbeszélés: Funkcionális követelmények, Use-case, stb. Döntés: Feladatok kiosztása a csapattagoknak
február 14 16:00 1 óra Telek Funkcionális követelmények
február 14 16:00 1 óra Dömötör Nemfunkcionális, erőforrás, átadás követelmények
február 14 17:00 1 óra Dömötör, Földvári Use-casek
február 14 18:00 1 óra Dömötör, Telek Architektúrális diagram, leírás
február 14 18:00 1,5 óra Földvári Szótár, Csoportmunkát támogató eszközök
február 14 18:00 1,5 óra Dobai, Kövér Cél, szakterület, definíciók
február 18 18:00 2 óra Dobai, Dömötör, Földvári, Kövér, Telek Megbeszélés: Feladat specifikáció. Döntés: Funkciók kibővítése
február 18 20:00 1 óra Földvári, Kövér Funkciók
február 18 20:00 1 óra Telek Funkciók kiegészítése, felhasználók, korlátozások
február 19 17:00 1 óra Dömötör Összefoglalás, Funkcionális követelmények, szótár kiegészítése
február 19 20:00 1 óra Telek Dokumentum véglegesítése, formázás