Szoftver labor 3.

A tantárgy angol neve: Software Laboratory 3,

Adatlap utolsó módosítása: 2013. szeptember 6.

Budapesti Műszaki és Gazdaságtudományi Egyetem
Villamosmérnöki és Informatikai Kar

Mérnök informatikus szak

BSc képzés

Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
VIIIA212   0/0/2/f 2  
3. A tantárgyfelelős személy és tanszék Dr. Goldschmidt Balázs,
A tantárgy tanszéki weboldala https://www.iit.bme.hu/~softlab3
4. A tantárgy előadója
Dr. Goldschmidt Balázsegyetemi docensIrányítástechnika és Informatika Tanszék
Dr. László Zoltánegyetemi docensIrányítástechnika és Informatika Tanszék
5. A tantárgy az alábbi témakörök ismeretére épít Programozási gyakorlat.
6. Előtanulmányi rend
Kötelező:
(TárgyEredmény( "BMEVIEEA112" , "jegy" , _ ) >= 2
VAGY TárgyEredmény( "BMEVIIIA114" , "jegy" , _ ) >= 2
VAGY TárgyEredmény( "BMEVIIIAA00" , "jegy" , _ ) >= 2
VAGY TárgyEredmény( "BMEVIEE1240" , "jegy" , _ ) >= 2
VAGY TárgyEredmény( "BMEVIMH1507" , "jegy" , _ ) >= 2 )

ÉS NEM ( TárgyEredmény( "BMEVIIIAB00", "jegy" , _ ) >= 2
VAGY TárgyEredmény("BMEVIIIAB00", "FELVETEL", AktualisFelev()) > 0)

ÉS Training.Code=("5N-A8")

A fenti forma a Neptun sajátja, ezen technikai okokból nem változtattunk.

A kötelező előtanulmányi rend az adott szak honlapján és képzési programjában található.

Ajánlott:
VIIIA217 Szoftvertechnológia c. tárgyból kredit pontot szerzett vagy azt az aktuális félévben felvette
7. A tantárgy célkitűzése

A tantárgy célkitűzése, hogy a hallgatók megfelelő gyakorlati jártasságot szerezzenek a Szoftvertechnológia c. tárgy előadásain és gyakorlatain megismert módszerek kipróbálása és begyakorlása által, annak érdekében, hogy a megszerzett ismereteket további tanulmányaik során hatékonyan, készség szinten képesek legyenek alkalmazni az objektum-orientált alkalmazások Java nyelven történő tervezése, megvalósítása és tesztelése során. A laborgyakorlatok kiemelt célja, hogy a megismert módszerek, fejlesztőeszközök és fejlesztőkörnyezet használatát begyakoroltassa.

Az anyag jobb elsajátítása érdekében a hallgatóknak több kisebb és egy nagyobb házi feladatot is meg kell oldaniuk.

8. A tantárgy részletes tematikája
  • Egyszerű java alkalmazások írása, fordítása, futtatása és hibakeresésese integrált fejlesztői környezet (IDE) támogatása nélkül, és támogatásával. Jar állományok készítése, classpath helyes használata.
  • Primitív típusok, csomagoló osztályok használata. Adatkonverziók. Saját osztályok készítése (öröklés, hozzáférési módosítók). Java szemétgyűjtő működése.
  • Absztrakt osztályok, interfészek, felsorolt típusok készítése. Kivételkezelés haszálata.
  • Java IO használata (standard input/output, fájlkezelés).
  • Szerializálás használata.
  • Java gyűjtemények kezelése. (Set, List, Map és altípusaik megismerése. Iterator használata. Object osztály metódusainak helyes felüldefiniálása.)
  • Java Generics alapjainak megismerése.
  • Szálkezelés, MVC (Model-View-Control) alapok megismerése.
  • UML tervezőeszköz használata (tervezés, kódgenerálás).
  • SWING alkalmazások készítésének alapjai.
  • SWING alkalmazások készítése grafikus tervezőeszköz segítségével.
  • Subversion (SVN) használata a szoftverfejlesztésben.
  • Java alkalmazások tesztelése JUnit használatával.
  • Nagy házi feladatok beszedése, ellenőrzése.
9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium) A tárgyból számítógépes laboratóriumi foglalkozásokat tartunk a Hallgatói Számítóközpont (HSZK) termeiben, az órarend szerinti időpontokban, kiscsoportos oktatással. A laborgyakorlatok szorosan egymásra épülnek. Több alkalommal a megelőző gyakorlaton megkezdett feladatot, vagy a tantárgyhoz kapcsolódó weblapról letölthető programvázat kell felhasználni.
10. Követelmények

A laboratóriumi foglalkozásokon való megjelenés kötelező, az elmulasztott laborgyakorlatok nem pótolhatók. A laboratóriumi foglalkozások előtt a laborvezetőknek lehetősége van a hallgatók felkészülését ellenőrizni. Elégtelen felkészülés esetén a hallgató laborgyakorlatot nem folytathatja. Az adott alkalom mulasztott laborgyakorlatnak számít.

A félév során legalább 5 előre meghirdetett alkalommal ellenőrző dolgozatot íratnak a laborvezetők. Az ellenőrző dolgozatokból a 3 legeredményesebb eredményének átlagát képezzük. Ha valaki 3-nál kevesebb ellenőrző dolgozatot írt, akkor a meg nem írt dolgozatok eredményét 0-nak tekintjük.

Az ellenőrző dolgozatokon kívül minden hallgatónak egy nagy házi feladatot is meg kell oldania. A nagy házi feladatokat a 13. héten kell beadni. A házik pótlólagos beadására – a laborvezető oktatóval egyeztetett időpontban – a pótlási hét végéig (csütörtök 12:00 óráig), különeljárási díj megfizetésével van mód, azon túl a nagy házi feladat nem pótolható. A pótlási héten már csak olyan programok és/vagy dokumentációk pótolhatók, melyek hiányosság, vagy működési hiba miatt kerültek elutasításra.

A félév elismerést jelentő félévközi jegy megszerzésére a következők együttes teljesülésekor van lehetőség:

  • az ellenőrző dolgozatok átlaga legalább elégséges (>2,00), és
  • a nagy házi feladat a kiírás szerint elkészült, a laborvezető személyesen átvette, ellenőrizte és elfogadta a hiánytalan dokumentációt és az elkészített programot, melyet együtt ki is próbáltak,
  • a hallgató a programozási laborgyakorlatokat rendszeresen látogatta (hiányzása nem haladja meg a TVSz szerint megengedett 30%-os mértéket).

A fenti 3 feltétel bármelyikének nem teljesülése esetén a félévközi jegy elégtelen ill. a tárgyat a hallgató nem teljesítette.

A félévközi jegy kiszámításának módja a következő: A 3 legjobb ellenőrző dolgozat osztályzatának átlaga és a nagy házi feladatra kapott osztályzat számtani közepe határozza meg a jegyet, amelyet +/- 1 jeggyel módosíthat a laborvezető a hallgató laborgyakorlatokon tanúsított felkészültsége, teljesítménye és aktivitása alapján.

11. Pótlási lehetőségek

Az ellenőrző dolgozatok és az elmulasztott laborgyakorlatok nem pótolhatók.

A nagy házi feladat pótlására – a laborvezető oktatóval egyeztetett időpontban – a pótlási hét végéig (csütörtök, 12:00 óráig), különeljárási díj megfizetésével van mód, azon túl a nagy házi feladat nem pótolható.

A pótlási héten már csak olyan programok és/vagy dokumentációk pótolhatók, melyek hiányosság vagy működési hiba miatt kerültek elutasításra.

12. Konzultációs lehetőségek Konzultációra a laborfoglalkozások alkalmával, illetve a laborvezetőkkel történő külön megbeszélés alapján van lehetőség.
13. Jegyzet, tankönyv, felhasználható irodalom Java útikalauz programozóknak, ELTE TTK Hallgatói Alapítvány, Budapest
Glenn Rowe: Java programozás, PANEM
14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
Kontakt óra
28
Félévközi készülés órákra, ellenőrző feladatokra10
Házi feladat elkészítése22
Vizsgafelkészülés0
Összesen60
15. A tantárgy tematikáját kidolgozta
Dr. Goldschmidt BalázsdocensIrányítástechnika és Informatika Tanszék
Dr. László ZoltándocensIrányítástechnika és Informatika Tanszék
Bóka GábortanársegédIrányítástechnika és Informatika Tanszék