A labor célja
Objektum orientált alkalmazás készítése
UML (Unified Modeling Language) leírással, az informatikus
Számítógép labor 4-ben JAVA-ban, a villamos
Projekt laborban C-ben, C++-ban, vagy JAVA-ban (választható)
megvalósítva, RUP (Rational Unified Process) processz szerint.
A hallgatók 3-4 fõs csoportokban dolgoznak és
készítik el a dokumentumokat a megadott ütemezés
szerint. A dokumentumokat a megadott formátumban, általában
nyomtatott változatban kell beadni.
A csapatok megalakulása
A csapatok kialakítása a hallgatóság feladata.
Egy csapatban 3-nál kevesebb vagy 4-nél több tag nem
lehet. Egy hallgató csak egy csapatnak lehet tagja. A megalakult
csapat nevet és vezetõt választ magának.
A csapat vezetõje a megalakulásáról február 18 (vasarnap). 17:00-ig e-mail-ben értesíti a tárgyfelelõst.
Azok a hallgatók, akik a megadott idõpontig nem tudtak
csapathoz kapcsolódni, errõl a tényrõl az említett
határidõig ugyancsak e-mail-ben értesítik a
tárgyfelelõst. Ezeknek a hallgatóknak a csapatba sorolásáról
a konzulensek döntenek. A döntésrõl az érintettek
e-mailben kapnak tájékoztatást.
Azon hallgatók beosztásáról, akik a fenti
határidõt elmulasztják, külön intézkedik
a tárgyfelelõs.
Konzultációk
A tárgy oktatói (továbbiakban konzulensek) az
alábbi idõpontban és helyeken laboratóriumi
gyakorlat címen konzultációt tartanak.
A konzultáción általában a megjelenés nem kötelezõ. A konzultáción a hallgatók kérdéseket tehetnek fel.Péntek, 10.15 – 12.00 R 4 M teremben
Kapcsolattartás
A tárgy e-mail címe: szglab4@eniac.iit.bme.hu
A laborral kapcsolatos minden levelet, beleértve a tárgyfelelõsnek
szóló leveleket is, a fenti e-mail címre kell küldeni.
A subject mezõ legyen: szglab=CSAPATNÉV (vagy NEPTUN-kód,
egyéni levél esetében).
A csapatnév csak angol karaktereket tartalmazhat.
Minden levél törzsének elején szerepelnie
kell:
Nyomtatott dokumentumok
A dokumentumokat általában papírra kinyomtatva
kell beadni.
Valamennyi leadott dokumentumnak kell tartalmaznia egy címoldalt,
amelyen megtalálható:
Minden leadott anyag végén a csapat naplója áll. Naplót a leadott anyaghoz MINDIG kell készíteni, függetlenül attól, hogy a részletes feladatdefinícióban van-e erre vonatkozó utalás. A napló tartalmazza az elõzõ beadás óta eltelt idõszak történéseit idõrendben. A naplóból egyértelmûen ki kell derülnie, hogy az egyes anyagrészeket ki és mennyi idõ alatt készítette.
A napló bejegyzésekbõl áll. Minden bejegyzésnek tartalmaznia kell:
Az elkészítendõ anyagok között szerepelhet
ÉRTÉKELÉS.
Az értékelés megadja a csapat tagjainak a projekt
kezdete óta az értékelésig eltelt idõben
elért eredményhez történõ hozzájárulásának
százalékos mértékét. Az értékelés
tehát egy táblázat, amely tartalmazza valamennyi csapattag
nevét és minden névhez egy százalékos
értéket. A százalékértékek összegének
100-nak kell lenni. Az értékelést a csapatnak közösen
kell megtennie. Az anyag címoldalán a tagok aláírása
azt is jelenti, hogy az aláíró tag az értékeléssel
egyetért.
A konzulensek bármikor elõírhatják, hogy a csapat az elõrehaladásról, annak esetleges akadályairól, a projekt állásáról jelentést, riportot, jegyzõkönyvet készítsen.
Amennyiben az elkészült anyag bármely részével kapcsolatosan a csapat tagjai nem jutnak egyezségre, akkor az egyéni álláspontokat dokumentálni kell és a konzulens segítségét kell kérni.
Az anyagokat a beadásra elõírt oktatási
hetet követõ hétfõn (ünnep alkalmával
és az utolsó héten az alábbi rendelkezés
szerint) 15.00 és 16.00 óra között kell átadni
az I épület 3. emeletén az IIT bejáratánál.
április 17., kedd 16.00 és 17.00
között (húsvét)
április 28., szombat 15.00 és 16.00
között (hétfõi munkarend kormányhatározat
alapján)
május 18., péntek 15.00 és
16.00 között (utolsó tanítási nap)
Az átvételre kijelölt személy az anyag
átadójával aláirat egy listát. Aláírás
hiányában az anyag beadásával kapcsolatos reklamációt
nem fogadunk el.
Késedelem esetén az anyagot a konzulensnek kell átadni.
A konzulens az átvétel idejét az anyagon rögzíti.
Az anyag betehetõ a konzulens vagy a tárgyfelelõs
fach-jába is. Ez esetben a beadás idõpontját
a konzulens határozza meg. Ez az idõpont nem vitatható.
Május 18., péntek 16 óra után semmiféle
anyagot nem veszünk át.
Programok
A programok forráskódját e-mailben attachmentként
elküldve tömörített (Winzip7 vagy arj2.3) formában
kell beadni. A levélnek az írásos anyag beérkezési
határidejére meg kell érkeznie.
A forrásprogramnak a HSZK-ban rendszeresített JDK 1.3
alatt (villamos hallgatóknál Borland C++) alatt lefordíthatónak
és futtathatónak kell lenni. A forráskódok
mellett meg kell adni szükség szerint valamennyi olyan installálási
útmutatást és kezelési leírást,
amelynek alkalmazásával a tárgykód elõállítható
és futtatható.
Késedelmes beadás
Minden nap késedelem az adható pontok értékét
10 %-kal csökkenti. A napforduló 16.00-kor van, a szombat és
a vasárnap együttesen egy napnak számít.
Ütemterv
A táblázatban szereplõ dátumok a határidõk.
1 | febr. 18. | Team bejelentkezése |
2 | febr. 26. | Követelmények leírása |
3 | márc. 5. | Követelmény, projekt, funkcionalitás |
4 | márc. 12. | Analízis modell kidolgozása |
5 | márc. 19. | Szkeleton tervezése |
6 | márc. 26. | Szkeleton beadása |
7 | ápr. 2. | Prototípus koncepciója |
8 | ápr. 9. | Részletes tervek |
9 | ápr. 17. | Prototípus készítése, tesztelése |
10 | ápr. 23. | Prototípus beadása |
11 | ápr. 28. | Grafikus felület specifikációja |
12 | máj. 7. | Grafikus változat készítése |
13 | máj. 14. | Grafikus változat beadása |
14 | máj. 18. | Értékelés |
A kiadott feladatot három lépcsõben kell megvalósítani.
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. A kitûnõ szkeleton osztott képernyõvel
dolgozik. Az ernyõ egyik része szolgál a szöveges
üzenetek és párbeszédek lefolytatására,
a másik félben egy szekvencia diagramot célszerû
kirajzolni. 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 teljes 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.
Az ütemterv ezen három-lépcsõs felbontásnak megfelelõen az adott határidõre elkészítendõ feladatokat jelöli ki.
Az alábbiakban részletesen az egyes határidõs
feladatok megoldásával és beadásával
kapcsolatos tudnivalókat. Az ütemterv az elsõ két
héten nem túl feszített, hogy a félév
indulása kapcsán esetleg felvetõdõ – elsõsorban
adminisztrációs – problémák ne okozzanak végzetes
lemaradást.
1. Team bejelentkezés
Beadandók:
1.1 az szglab4@eniac.iit.bme.hu címre küldött e-mailben
a csapat vezetõje megadja a csapat definícióját.
Ez tartalmazza a csapat nevét, a tagok nevének, NEPTUN-kódjának
és e-mail címének felsorolását.
Pontszám: 0
Késedelmes teljesítés esetén a késedelem
mértéktõl függõen max. 10 büntetõpont
adható.
2. Követelmények leírása
Beadandók nyomtatásban:
2.1. a feladat kb. 4000 karakteres részletezettségû
magyar nyelvû leírása.
2.2. szótár. A szótár a részletes
leírás alapján készítendõ dokumentum.
Egy szótári bejegyzés definiálásához
csak más szótári bejegyzések és köznapi
– a feladattól független – fogalmak használhatók
fel. A szótár mérete kb. 1 oldal legyen.
Pontszám: 5
Fontos ! Sem a leírásban sem a szótárban
nem szerepelhetnek számítástechnikai és informatikai
szavak, kifejezések.
Ne feledkezzenek el a fedõlapról és (az elsõ)
naplóról.
3. Követelmény, projekt, funkcionalitás
Beadandók nyomtatásban:
3.1. Követelmény definíció
3.2. Projekt terv
3.3. Essential use-case-ek
3.4. Use case diagram
Pontszám: 20
A 3.1. és 3.2. dokumentumok tartalomjegyzéke a labor segédletben
több formában is megtalálható. Az egyes változatok
között alapvetõ különbség nincs. A csapatoknak
jogukban áll a mintákból kiindulva a dokumentumokat
önállóan definiálni.
4. Analízis modell kidolgozása
Beadandók nyomtatásban:
4.1. Objektum katalógus
4.2. Osztályok leírása
4.3. Statikus struktúra diagramok
4.4. Szekvencia diagramok (inicializálásra, és
a use-case-ekre)
4.5. State-chartok
Pontszám: 35
5. Szkeleton tervezése
Beadandók nyomtatásban:
5.1. A szkeleton model valóságos use-case-ei
5.2. Kollaborációs diagramok
5.3. A szkeleton kezelõi felületének terve, dialógusok
5.4. Architektura, ütemezés
Pontszám: 20
Az elkészítendõ anyag tartalával kapcsolatos
információk megtalálhatók a segédlet
6. fejezetében (Szkeleton tervezése, implementálása)
6. Szkeleton beadása
Beadandók nyomtatásban:
6.1. A letölthetõ program fordításával
és futtatásával kapcsolatos útmutatás.
Ennek tartalmaznia kell leltárszerûen az egyes fájlok
pontos nevét, méretét byte-ban, keletkezési
idejét, valamint azt, hogy a fájlban mi került megvalósításra.
6.2. Értékelés
Beadandó program:
Forráskódok e-mailben elküldve tömörített
(Winzip7 vagy arj2.3) formában attachmentként. Az anyagoknak
pontosan meg kell felelni a nyomtatott listában szereplõkkel.
A forrássorok legalább 20 %-ának kommentárnak
kell lennie.
Pontszám: 20
7. Prototípus koncepciója
Beadandók nyomtatásban:
7.1. Prototípus interface definiciója
7.2 .Összes részletes use-case
7.3. Tesztelési terv
Pontszám: 35
Az anyag legfontosabb része a prototípus kezelõi
felületének terve. A proto (karakteres) input és output
felületeit úgy kell kialakítani, hogy az input fájlból
is legyen vehetõ illetõleg az output fájlba menthetõ
legyen. A use-case-eknek a részletezettsége feleljen meg
a kezelõi felületnek, azaz a felület elemeire kell hivatkozniuk.
A tesztelési tervben definiálni kell, hogy a be- és
kimeneti fájlok egybevetésével miként végezhetõ
el a program tesztelése. A tervben már meg kell adni teszt
forgatókönyveket és specifikálni kell azokat
a segédprogramokat, amelyek a tesztelést támogatják.
8. Részletes tervek
Beadandók nyomtatásban:
8.1. Objektumok és metódusok tervei. (State chartok és
Activity diagramok)
8.2. A tesztek részletes tervei
8.3. A tesztelést támogató programok tervei
Pontszám: 30
Az anyag két részre koncentrál, egyfelõl
a protóra, másfelõl a tesztelésre.
A proto kapcsán meg kell adni valamennyi objektumra az állapotgép
modellt, ha van olyan neki. Valamennyi metódusra vonatkozóan
röviden szövegesen definiálni kell a metódusban
realizált algoritmusokat valamint a nem triviális algoritmusok
esetén activity diagramot kell rajzolni.
A tesztek részletes tervei alatt meg kell adni azokat a bemeneti
adatsorozatokat, amelyekkel a program mûködése ellenõrizhetõ.
Minden bemenõ adatsorozathoz definiálni kell, hogy az adatsorozat
végrehajtásától a program mely részeinek,
funkcióinak ellenõrzését várjuk és
konkrétan milyen eredményekre számítunk, ezek
az eredmények hogyan vethetõk össze a bemenetekkel.
A tesztadatok elõállítására, a tesztek
eredményeinek kiértékelésére szolgáló
segédprogramok architekturális és részletes
terveit kell elkészíteni.
9. Prototípus készítése, tesztelése
Ezen a héten nem kell anyagot beadni.
10. Prototípus beadása
Beadandók nyomtatásban:
10.1. A letölthetõ program fordításával
és futtatásával kapcsolatos útmutatás.
Ide értendõ a tesztprogramok használatával
kapcsolatos elõírások és a tesztadatok is.
Ennek tartalmaznia kell leltárszerûen az egyes fájlok
pontos nevét, méretét byte-ban, keletkezési
idejét, valamint azt, hogy a fájlban mi került megvalósításra.
10.2. A tesztelés eredményeinek összefoglalása
10.3. Értékelés
Beadandó program:
Forráskódok e-mailben elküldve tömörített
(Winzip7 vagy arj2.3) formában attachmentként. Az anyagoknak
pontosan meg kell felelni a nyomtatott listában szereplõkkel.
A forrássorok legalább 20 %-ának kommentárnak
kell lennie.
Pontszám: 35
Az átadott írásos dokumentációnak
elegendõnek kell lenni ahhoz, hogy a tesztelés eredményeit
reprodukálni lehessen a csapat tagjainak közremûködése
nélkül. A tesztek eredményeinek összefoglalása,
kiértékelése kapcsán jegyzõkönyv
formában tanusítani kell, hogy a program mely bemenetekre
mely válaszokat adta, és ezekbõl az eredményekbõl
mennyiben lehet a helyes mûködésre következtetni.
Itt kell megadni azt is, hogy a tesztek alapján mit és miért
kellett változtani a programon, illetõleg milyen változtatások
szükségesek a továbbiakban és esetleg milyen
egyéb tesztek szükségesek.
11. Grafikus felület specifikálása
Beadandók nyomtatásban:
11.1. A menûrendszer, a kezelõi felület grafikus
képe
11.2. A felület mûködésének elve, a grafikus
rendszer architektúrája (struktúra diagramok)
11.3. A grafikus objektumok felsorolása, kapcsolatuk az alkalmazói
rendszerrel (szekvencia diagramok)
Pontszám: 40
A megoldandó feladat lényege, hogy az elkészült,
tesztelt alkalmazói programra rá kell helyezni egy grafikus
felületet. Részletesen indokolni kell az alkalmazásban
a grafika miatt szükséges esetleges módosításokat,
azoknak szerepét és hatásait.
12. Grafikus változat készítése
Ezen a héten nem kell anyagot beadni.
13. Grafikus változat beadása
Beadandók nyomtatásban:
13.1. A letölthetõ program fordításával
és futtatásával kapcsolatos útmutatás
(install utasítás is). Ennek tartalmaznia kell leltárszerûen
az egyes fájlok pontos nevét, méretét byte-ban,
keletkezési idejét, valamint azt, hogy a fájlban mi
került megvalósításra..
13.2. Valamennyi korábban készített dokumentum
aktualizált változata
13.3. A projekt tapasztalatai
13.4. Értékelés
Beadandó program:
Forráskódok e-mailben elküldve tömörített
(Winzip7 vagy arj2.3) formában attachmentként. Az anyagoknak
pontosan meg kell felelni a nyomtatott listában szereplõkkel.
A forrássorok legalább 20 %-ának kommentárnak
kell lennie. Installálható, játszható változatot
is kell készíteni.
Pontszám: 60
A leírásnak részletes útmutatást
kell adni arra, hogy miként kell elkészíteni az installálható
változatot. Az installálható változatnak reprodukálhatónak
kell lenni a megküldött anyagokból. Az install változat
a követelményeknek megfelelõ gépen installálhatónak
és futtathatónak kell lennie.
Nyomtatásban és elektronikus formában egyaránt
be kell adni valamennyi korábban készült dokumentum
aktualizált változatát, amely megfelel a jelenlegi
állapotnak, amelyen végigvezették az idõközben
történt változtatásokat. A csak elektronikus
formában küldött anyag nem elegendõ !
A projekt tapasztalatait összegzõ részben a csapatoknak
a projektrõl kialakult véleményét várjuk.
A megválaszolandók köre az alábbi. Mit tanultak
a projektbõl konkrétan és általában
? Mi volt a legnehezebb és a legkönnyebb ? Összhangban
állt-e az idõ és a pontszám az elvégzendõ
feladatokkal ? Ha nem, akkor hol okozott ez nehezséget ? Milyen
változtatási javaslatuk van ? Milyen feladatot ajánlanának
a projektre ? Szívesen fogadunk minden egyéb kritikát
és javaslatot. Ezt az anyagot e-mailben is meg kell küldeni.
14. Értékelés
Ezen héten nem kell anyagot beadni.
Értékelés
A beadott dokumentumokat a konzulensek pontozzák. A pontozáskor
figyelembe veszik a kidolgozás helyességét, minõségét
és az ütemezettséget. (ld. a késedelemrõl
szóló részt). A három rész (szkeleton,
proto, grafikus) aránya: 30 - 40 - 30, a megszerezhetõ pontok
száma 100.
A csapatok a három értékelés alkalmával
meghatározzák a tagok egymáshoz viszonyított
arányait. A csapatokon belüli eredõ arányt az
értékelések 1, 1.5 és 2-szeres súlyozásával
számoljuk. A konzulens szükség esetén a csapat
tagjainak egyetértésével az arányokon változtathat.
A csapat által megszerzett pontszámot szorozzuk a csapat
tagjainak számával, majd ezt arányítjuk az
eredõ arány szerint.
Az így kapott pontszámok alapján az alábbi
táblázat szerint határozzuk meg a jegyet.
-40 | 1 |
41-54 | 2 |
55-68 | 3 |
69-82 | 4 |
83- | 5 |