MscMVPMintaZH2010

A VIK Wikiből

Ez az oldal a korábbi SCH wikiről lett áthozva.

Ha úgy érzed, hogy bármilyen formázási vagy tartalmi probléma van vele, akkor, kérlek, javíts rajta egy rövid szerkesztéssel!

Ha nem tudod, hogyan indulj el, olvasd el a migrálási útmutatót.


Mi az absztrakt szintaxis, mi a konkrét szintaxis? Ismertesse a kettő közti különbséget!

Az absztrakt szintaxis a szakterületi nyelv nyelvi elemeit és nyelvtani szabályait tartalmazza, a konkrét szintaxis pedig ezek megjelenítése.

Mi a szemantika? Hasonlítsa össze informálisan a denotációs és operációs szemantikát!

A szemantika a szakterületi nyelv szintaxisának értelmezése, vagyis a nyelv absztrakt szintaxisában megadott nyelvi elemekhez és struktúrákhoz rendel hozzá jelentést. A denotációs szemantika a program futásának hatására koncenrál, míg az operációs szemantika úgy adja meg egy szerkezet értelmét, hogy megmondja, miként hajtjuk végre azt

Mutassa be a MOF példányosítási mechanizmusát!
Ezen a helyen volt linkelve a Dia1.png nevű kép a régi wiki ezen oldaláról. (Kérlek hozd át ezt a képet ide, különben idővel el fog tűnni a régi wikivel együtt)


Készítsen metamodellt házimozi rendszer elemeinek modellezéséhez. A metamodellben szerepeljen öröklés, tartalmazás és asszociáció, valamint legyenek attribútumok definiálva legalább egy elemen és kapcsolaton.

Semmi extra, csak egy sima osztálydiagram kell a fenti elemmekkel. Egy lehetséges megoldás:

  • TV, Hangfal, Kijelző osztály
  • A TV-nek van egy képfelbontás attribútuma
  • A TV össze van kapcsolva hangfalakkal egy asszociációval aminek attribútuma a kábel típusa.
  • A TV tartalmazza a kijelzőt, amiből származik a hagyományos és az LCD kijelző.
Személyi felvonók szakterületi modelljeivel foglalkozunk. Adott az alábbi metamodell:
Ezen a helyen volt linkelve a Dia2.png nevű kép a régi wiki ezen oldaláról. (Kérlek hozd át ezt a képet ide, különben idővel el fog tűnni a régi wikivel együtt)


Lehetséges-e olyan tízemeletes ház modellezése, melyben három lift van, azonban a liftek csak a második emeleten állnak meg? Miért?

Igen. A házhoz bárhány lift és emelet köthető, és azok tetszőleges módón összerendelhetőek asszociációval, így a fenti eset a metamodellnek megfelelő példány.

Adja meg egy olyan négyemeletes ház modelljét, melynek egy liftje van, és a lift aház első három emeletén áll meg! Konkrét szintaxisként használja a szabvány UML objektumdiagram megjelenítését.

Egy UML objektumodellt kell razolni:

  • Lesz 4 db emelet objektum, 1 ház és egy lift objektum
  • Az emeletek össze vannak asszociálva a házzal, a lift a házzal és a lift azokkal az emeletekkel, amelyeknek az „szám” értéke 1, 2 és 3.
  • Fontos, hogy a lift „aktuális” asszociációációját is be kell rajzolni (mindegy melyik emeletre)
Adjon OCL kényszereket az előző feladat metamodelljére:
Csak ötemeletesnél magasabb házakban lehet kettőnél több lift!

=context: Ház=

inv: if emeletek->size() < 6 then liftek->size() < 3 endif

Házon belül liftek ID értéke egyedi!

=context: Ház=

inv: liftek->forall(l1, l2 | l1 <> l2 implies l1.id <> l2.id)

A lift Fel() függvényének hívására eggyel magasabb emeletre kerül

=context: Lift::Fel()=

post: aktuális.szám = aktuális.szám@pre + 1

Adja meg a következő informális leíráshoz tartozó szimulátor specifikációját!
Kétállapotú {s1, s2} szimulátor. Ha s1 állapotban van és páratlan számot kap a bemenetén, átvált s2 állapotba és elkezd számolni felfele egytől, egyesével. Két időegységenként lép egyet a számláló, ebben az esetben ki is írja a kimenetre az aktuális számot. Ha s2 állapotban van és páros számot kap, átvált s1-re és nullázza a számlálót. s2 állapotban a bemenetet figyelmen kívül hagyja.

X = Z

Y = Z

S = { s1, s2 } X R+ X Z

(s1, , count, e, x) =

(s2, 0, 1), ha x páratlan
(s1, - e, count), egyébként

(s2, , count, e, x) =

(s1, , 0), ha x páros
(s2, - e, count), egyébként

(s2, , count) = (s2, 2, count + 1)

(s2, , count) = count

ta (phase, , count) =

Készítsen funkciómodellt a következő feladathoz:
lakóházak modellezése. A modellekben többek között legyen lehetőség definiálni a falakat (tégla, gipsz, fa), tetőt (cserép, beton), nyílászárókat (fa, műanyag), fűtést (gáz, elektromos, szén, geotermikus). A modell tartalmazzon dimenziót, opcionális-, kötelező és kizáró (OR) funkciót.

Ha valakinek van kedve ezt lerajzolhatná. Röviden:

  • Kitöltött pötty: kötelező elem
  • Üres pötty: Opcionális elem
  • Kitöltött ív: akárhány választható (min 1)
  • Üres ív: Pontosan 1-et kell választani

Egy lehetséges megoldás:

  • A Lakóháznak kötelező eleme a fal, a tető és a nyílászáró, opcionális eleme a fűtés (A fűtésnél üres pötty a többinél teli)
  • A fal lehet gipsz, tégla vagy fa (üres ív)
  • A tető lehet cserép vagy beton (üres ív)
  • A nyílászárót lehet fa vagy műanyag (üres ív)
  • A fűtés lehet gáz, elektromos, szén, geotermikus, vagy ezek közül akár több is (teli ív)

-- Ádám - 2010.03.29.