Szolgáltatásintegráció - Házi feladat 2013.
Intelligens álláskereső
A feladat egy intelligens álláskereső (bróker) elkészítése. Az álláskereső webes felületen keresztül, előre megadott formátum szerinti önéletrajzokat fogad, ill. megadhatóak felhasználói preferenciák is az állásokra vonatkozóan. A rendszer ezeket az adatokat eltárolja, és az adott felhasználó későbbi kereséseinél figyelembe veszi.
Feltölthetőek állásajánlatok is. Állásajánlat feltöltése esetén a rendszer értesíti azokat a felhasználókat, akiknek a keresése az adott ajánlattal megfelelő mértékben megegyezik (ld. 2. fázis).
A rendszer felhasznál külső szolgáltatásként állásajánlatokat is. Javasoljuk az indeed használatát. A rendszerbe feltöltött állásajánlatok, felhasználói adatokat/preferenciákat és álláskereséseket a rendszer perzisztensen tárolja. A rendszernek van továbbá "szótár" támogatása, mely az álláskeresések bizonyos kulcsszavainak szinonimáit tartalmazza (pl. software engineer - software developer). A rendszer mind az álláskeresések, mind az állásajánlatok esetében végez ellenőrzést (validációt).
A rendszer főbb funkciói (nem feltétlenül egyeznek meg az implementálandó folyamatokkal):
- állásajánlat vagy ajánlatok feltöltése
- állásajánlathoz megfelelő CV keresése
- álláskereséshez alapadatok/preferenciák megadása/feltöltése (pl. lakóhelytől való maximális távolság)
- álláskereséshez CV megadása
- konkrét lekérdezés indítása ("most milyen aktuális, számomra megfelelő ajánlatok vannak")
- javaslat megadása a szótár bővítésére
Nem része a feladatnak a felhasználókezelés/regisztráció implementálása, vagyis a Bonita felületén felvett statikus felhasználók használhatóak. Szintén nem része a feladatnak a beépítettől eltérő felhasználói felület implementálása. Nem része a feladatnak az állásokra történő jelentkezés kezelése.
Feladatok:
Első fázis
Leadandó:
- az elkészült, Bonita felett működő, a külső szolgáltatást felhasználó folyamat
- a rendszer adatmodellje, az adatok SQL csatolón keresztül adatbázisban történő perzisztálásával
- rövid dokumentáció a rendszerről
Feltételek:
- a rendszer legyen felkészítve az egyes komponensek, ill. konnektorok hibájára (ideértve a hiányos adatbevitelt, a nem elérhető távoli szolgáltatást, hiányos választ)
- a hibakezelés tervezett módon, a Bonita eszközeit felhasználva történjen (nem a szöveges kimenetre próbál írni, ugyanakkor feltétlenül nem fail-silent, tehát jelezheti a felhasználó számára, hogy hiba történt)
Határidő:
- 8. hét szerda (április 3.)
Második fázis
Leadandó:
- a szabály alapú ajánlás, mint funkció a folyamatba integrálva (preferáltan a DroolsConnector? használatával)
- a megvalósított, a felhasználó által bővíthető szótár Neo4j felett tárolva
Feltételek:
- a félév végén az elkészült funkcionalitás két formában legyen elérhető: a Bonita saját felhasználói felületén keresztül, ill. egy része REST/Web service formában kiajánlva
Határidő:
- 14. hét szerda (?)
Felhasználandó technológiák
- Bonita
- külső Web (SOAP/XML) ÉS REST service
- Drools Expert
- Neo4j
Opcionális plusz feladatok
Opcionálisan elvégezhetőek plusz feladatok is, melyekért vizsgakönnyítést, adott esetben megajánlott jegyet tudunk adni. Aki ilyet szeretne megcsinálni, az első fázis leadásakor jelezze. Néhány példa ilyen feladatra:
- További külső funkcionalitás integrálása (pl. több országra kiterjedő kereséshez valutakonverziós szolgáltatás)
- Szótár kiegészítése "taxonómia" funkcióval, pontozás használata keresési javaslatokhoz
- Az egész funkcionalitás integrációja grafikus felülethez (példa: mashup Google Maps-hez)
- Szabványos CV formátum (pl EuroPass?) használata.
Követelmények
A szorgalmi időszakban szakaszokra osztott házi feladat megoldása (tipikusan két fős) csapatokban.
A vizsgaidőszakban szóbeli vizsga, melyre plusz házi feladat elvégzése alapján könnyítés kapható.
Csapatbeosztás
A csapatbeosztás követi az MDSD tárgy beosztását, az ott megadott trac/svn használandó a házi feladat leadásához.
- Team 1: Nádudvari György, Debreceni Csaba. Konzulens: Semeráth Oszkár/Szárnyas Gábor
- Team 2: Menyhért Ákos, Nagy András Szabolcs Konzulens: Bergmann Gábor
- Team 3: Bajor Tamás, Földényi Miklós Konzulens: Semeráth Oszkár/Szárnyas Gábor
- Team 4: -- (csak MDSD hallgatók)
- Team 5: Segesdi Dániel, Molnár Vince Konzulens: Bergmann Gábor
- Team 6: Szloboda István, Gerencsér György Konzulens: Gönczy László
- Team 7: Lakatos Dávid Konzulens: Gönczy László
Trac és SVN hozzáférés:
- SVN esetén: https://modeling.inf.mit.bme.hu/svn/modeling_x_2013/ - x=1,2,3,4,5,6,7
- Trac esetén: https://modeling.inf.mit.bme.hu/trac/modeling_x_2013/ - x=1,2,3,4,5,6,7
Házi feladat eredmények
A félév során valamennyi csapat teljesítette a házi feladat követelményeit, gratulálunk.
A konzulensek közös értékelése után az alábbi jegyek születtek. A jegyek beszámítanak a szóbeli vizsga eredményébe.
- Team 1: Nádudvari György 5, Debreceni Csaba 5 VK
- Team 2: Menyhért Ákos 4, Nagy András Szabolcs 4
- Team 3: Bajor Tamás 3, Földényi Miklós 3
- Team 5: Segesdi Dániel 5VK/M, Molnár Vince 5 VK/M
- Team 6: Szloboda István 4, Gerencsér György 4
- Team 7: Lakatos Dávid 3/4