Házi feladat

Ez az oldal foglalja össze a Rendszermodellezés tárgy házi feladataival kapcsolatos információkat, segédanyagokat.

FONTOS tájékoztatás

A technikai konzultáció során előjött egy hiba, amit alatomossága miatt nehéz észrevenni, viszont meglehetősen veszélyes.

Tünetek: Többen panaszkodtak rá, hogy hiába csinálnak bármit is a modellel, ha utána futtatják a teszteket, vagy az appot, azt találják, hogy „nem változott semmi”. Minden teszteset elhasal azon, hogy a képernyőn, időkijelzőkön, stb… az alapértelmezett értékeket találják (found „Chess Clock”). Külön ellenőrizték a Help > About YAKINDU SCT menüpontban, és megállapították, hogy a Yakindunak a 3.2-es verziója van nekik feltelepítve.

Felismerés: A hiba alattomos, kísértetiesen hasonlít ahhoz, mint amit akkor produkál a rendszer, hogy ha valaki a 3.3-as verzióval kísérli meg megoldani a feladatát. Arról, hogy tényleg ez a hiba áll fent, a következőképpen lehet meggyőződni. A yakindu mappa alján van egy homework2java.sgen nevű fájl. Erre kell jobb gombbal kattintani, majd Generate Code Artifacts. Ezt követően elő kell varázsolni a Console nézetet (Window > Show view > Other > Console). A Console nézet felső sorában van egy dupla x, először arra kell kattintani, ekkor jelenik meg az SGEN generator console. Ezen ideális esetben egy „Generating ChessClockNEPTUN… done” felirat szerepel, viszont, ha ez a hiba áll fennt, akkor egy kb 10 soros hibaüzenet, aminek a tetején szerepel a „a resource exists with a different case” szöveg.

Megoldás: A hiba alattomos, kísértetiesen hasonlít ahhoz, mint amit akkor produkál a rendszer, hogy ha valaki a 3.3-as verzióval kísérli meg megoldani a feladatát. Ez azért van, mert ez félig igaz. A telepítés során csak a Yakindu Standard edition-nek lett a 3.2-es verziója kiválasztva, a többi komponensből a 3.3-as került fel. (Ez ellenőrizhető a Window > Preferences > Install / update / Uninstall or update menüpontban is.) Így az About menüpont a 3.2-es verziót mutatja, viszont a generátor 3.3-as, ami nem működik. Korrigálásként az eclipse teljes újratelepítését tudjuk javasolni, külön odafigyelve arra, hogy MINDEN komponensből a 3.2-es verzió legyen kijelölve, a honlapon található leírás alapján.

Feladatok

Mind a bemelegítő, mind a kötelező házi feladat elkészítéséhez a Yakindu Statechart Tools c. szoftver 3.2-es verzióját (letöltés) kell használni; az ingyenes kiadást (Standard Edition, Free for non-commercial use.) javasoljuk.

FONTOS: idén megváltozott a licenszelés, emiatt összegyűjtöttük, hogy tartalék opcióként hogyan lehet az update site-ról telepíteni az eszközt. Ehhez egy Eclipse Modeling Tools kell letölteni, majd installálni a Yakindu Statechart Tools 3.2 verzióját az alábbiak szerint (az angol nyelvű segédletből idemásolva):

Install from Update Sites
Update Site:

How to install

  1. Download and install an appropriate Eclipse version from http://www.eclipse.org/downloads
  2. For a new installation
    • choose Eclipse menu Help/Install New Software ...
    • press the "add" button in the top right corner of the installation wizard to add one of the update site URLs listed above...
    • Clear the "Show only the latest versions of available software" box
    • select the listed features and follow the installation wizard
      • YAKINDU Statechart Tools Standard Edition:
        • Yakindu Statechart Tools, version 3.2.0
        • Yakindu Statechart Tools Base, version 3.2.0
        • Yakindu Statechart Tools Java Code Generator, version 3.2.0
  3.     For updating the installed plugins select Help/Check for Updates...

After installing the plugins, a user guide is included in the Eclipse help. Choose Help/Help Contents from the menu. A browser window will pop up and you will find the user guide as an entry on the left side overview.

Fontos: a házi feladat elkészítéséhez az eszköz 3.2. verzióját használjuk, mert a félév közben kiadott 3.3. verziójú Yakindu-val nem fog menni a kódgenerálás és ellenőrzés!!! Az alábbi kép segíti a megfelelő beállítások kiválasztását update site-ról történő telepítéskor (a képre nem fért fel, de mint a korábbi listában szerepel, ki kell választani telepítésre a kódgenerátort is: Yakindu Statechart Tools Java Code Generator, Version 3.2.0):

 

A feladatok megoldását nagy mértékben támogató segédleteket az oldal alján linkeltük.

Bemelegítő szorgalmi házi feladat (kiadás a 3. héten, határidő: 5. hét vége)

A bemelegítő házi feladat BME címtár bejelentkezés után letölthető ezen a linken. A letöltött csomag tartalmazza a hallgatónként különböző feladatkiírást, valamint a megoldást segítő Eclipse projektvázat (tesztesetekkel együtt). A tárgy követelményeinek legalább elégséges szintű teljesítése esetén a bemelegítő feladatért legfeljebb +4 bónuszpont jár a félév végi jegyszámításkor.

A házi feladat feltöltése a honlapon keresztül történik (.sct modell), határideje az 5. oktatási hét vége (2018.03.11. 23:59). A megoldás és a beadás módjáról a technikai segédlet tájékoztat.

Kötelező házi feladat (kiadás az 5. héten, határidő: 12. héten)

A kötelező házi feladat hallgatónként egyedi feladatkiírása a megoldást támogató projektvázzal és tesztesetekkel együtt BME címtár bejelentkezés után letölthető (lesz) ezen a linken. A kötelező házi feladat teljesítése a kredit megszerzésének előfeltétele, és a félév végi osztályzat számításakor 30% súllyal vesszük figyelembe.

A tesztesetek többsége elemi lépéseket vizsgál (pl. állítható-e a játékosok gondolkodási ideje), szándékaink és az előzetes belső próbák szerint a gyakori hibákat felderítik, futtatásuk kötelező a feladat beadása előtt. Azokat a megoldásokat, melyek nyilvánvaló hibákat tartalmaznak, és a kiadott teszteken sem mennek át, nem tudjuk elfogadni. Az alkalmazás mellé kiadtunk egy grafikus felhasználói felülettel rendelkező programot is, mellyel a modell működése gyorsan kipróbálható. Emellett a modell részletes működését a tesztekkel és szimuláció futtatásával lehet ellenőrizni. További útmutató a technikai segédletben található (Fontos: a technikai segédlet a Yakindu 2.9-es verziójához készült, 2018-ban a házi feladatot már a 3.2. verziójú Yakindu eszközben kell elkészíteni). Ismételten felhívjuk a figyelmet a Q2A oldal használatára, ahol a technológiai jellegű kérdésekre a leggyorsabban választ lehet kapni.

A házi feladat feltöltése a honlapon keresztül történik (.sct modell), határideje a 12. oktatási hét vége (2018.05.06. 23:59). A megoldás és a beadás módjáról a technikai segédlet tájékoztat. Pótleadás a pótlási hét kedd éjfélig (2018.05.22. 23:59) lehetséges.

Teszteléses szorgalmi házi feladat (Cucumber)

A tárgyból lehetőség van szorgalmi házi feladat elvégzésére. Ennek határideje a 14. hét vége (2018.05.20. 23:59), amelyet a pótlási héten szóbeli védés követ. A leadás a kötelező házi feladathoz hasonlóan a honlapon keresztül történik majd. A szorgalmi feladatért jutalompontokat adunk, melyek beszámítása a kötelező tárgykövetelmények teljesítése esetén lehetséges. 
 

Felmerülő kérdések

A felmerülő kérdéseket kérjük tegyék fel a Q2A oldalon, ill. indokolt esetben a remo-hf@inf.mit.bme.hu címen. Kérjük, hogy házi feladattal kapcsolatban csak ezen a két elérhetőségen kérdezzen, máskülönben nem fogjuk tudni megválaszoni a kérdését!

 

Segédletek

  • A házi feladattal kapcsolatos elméleti anyagot bemutató előadás anyaga, az előadást kiegészítő írásos segédanyag és az utóbbihoz tartozó Yakindu demo videó.
  • A kutatócsoport kérdés-válasz (fórum) oldala.
  • A házi feladat megoldásához előírt szoftvereszközt bemutató (és a félév közben a beérkező kérdések alapján frissülő) technikai segédlet.