<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="hu">
	<id>https://vik.wiki/index.php?action=history&amp;feed=atom&amp;title=MscMVPKidolgozas</id>
	<title>MscMVPKidolgozas - Laptörténet</title>
	<link rel="self" type="application/atom+xml" href="https://vik.wiki/index.php?action=history&amp;feed=atom&amp;title=MscMVPKidolgozas"/>
	<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=MscMVPKidolgozas&amp;action=history"/>
	<updated>2026-05-16T15:11:46Z</updated>
	<subtitle>Az oldal laptörténete a wikiben</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://vik.wiki/index.php?title=MscMVPKidolgozas&amp;diff=139560&amp;oldid=prev</id>
		<title>Unknown user: Új oldal, tartalma: „{{GlobalTemplate|Infoszak|MscMVPKidolgozas}}  * Modellezés: a bonyolult valóság egy egyszerűsített nézete ** Tervrajz: A terv alapján építhetünk ** Recept: Ut…”</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=MscMVPKidolgozas&amp;diff=139560&amp;oldid=prev"/>
		<updated>2012-10-21T20:43:18Z</updated>

		<summary type="html">&lt;p&gt;Új oldal, tartalma: „{{GlobalTemplate|Infoszak|MscMVPKidolgozas}}  * Modellezés: a bonyolult valóság egy egyszerűsített nézete ** Tervrajz: A terv alapján építhetünk ** Recept: Ut…”&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Új lap&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{GlobalTemplate|Infoszak|MscMVPKidolgozas}}&lt;br /&gt;
&lt;br /&gt;
* Modellezés: a bonyolult valóság egy egyszerűsített nézete&lt;br /&gt;
** Tervrajz: A terv alapján építhetünk&lt;br /&gt;
** Recept: Utasításhalmaz&lt;br /&gt;
** Makett: Kicsiben&lt;br /&gt;
* Szakterület specifikus nyelv&lt;br /&gt;
** Absztrakt szintaxis: A nyelv struktúrája+kényszerek&lt;br /&gt;
** Konkrét szintaxis: Megjelenítés&lt;br /&gt;
** Szemantika: A nyelv jelentése&lt;br /&gt;
* Metamodellezés: Egy nyelv absztrakt szintaxisának megadása formálisan&lt;br /&gt;
** MOF (Meta-Object Facility): 4 szintű (Objektumok, modellező, metamodellező (UML), MOF)&lt;br /&gt;
*** Zárt: Önmagához hű&lt;br /&gt;
*** Szigorú: Minden elem szoros kapcsolatban van a fölötte levő szint elemével&lt;br /&gt;
** XMI: Modellek sorosítása (MOF-&amp;gt;XML)&lt;br /&gt;
* Modell elemek&lt;br /&gt;
** Adattípusok: Primitívek, felhasználó által megadottak&lt;br /&gt;
** Osztályok&lt;br /&gt;
** Attribútumok&lt;br /&gt;
*** Modellelemekre írt címkeként: Kiforratlanabb matematikai háttér&lt;br /&gt;
*** Speciális modellelemként (vonallal csatlakozik): Átláthatatlan, ha sok van belőle&lt;br /&gt;
** Asszociáció&lt;br /&gt;
*** Multiplicitás&lt;br /&gt;
*** Sorrendezés, egyediség&lt;br /&gt;
*** Asszociációs osztállyal lehet attribútumokat adni neki&lt;br /&gt;
** Kompozíció&lt;br /&gt;
** Általánosítás&lt;br /&gt;
*** Absztrakt és konkrét osztályok&lt;br /&gt;
*** Többszörös örökéls&lt;br /&gt;
**** Névütközés: Azonos nevű attribútum vagy metódus&lt;br /&gt;
**** Ismételt öröklés: A két ős ugyanabból származik&lt;br /&gt;
* Modell megfelelés: Jól formált, ha a metamodell elemeit használja és kielégíti annak kényszereit&lt;br /&gt;
* OPRR (Object-Property-Relationship-Role Model):&lt;br /&gt;
** Nagyjából mint az ER, de van Role, ami az objektumot kapcsolja a kapcsolathoz, és ezt nevesíti (pl. állapotokat tranzíciók kötik össze, akkor lesz egy forrás és egy cél szerepű tranzíció)&lt;br /&gt;
* VMTS (Visual Modelling and Transformation System):&lt;br /&gt;
** n szintű&lt;br /&gt;
** Szintek között azonos a példányosítási művelet&lt;br /&gt;
** Atom típus&lt;br /&gt;
*** Név, attribútum, összetett típus(~struct)&lt;br /&gt;
** Mély példányosítás: Egy modellezési hierarchiában alkalmazott példányosítást mély példányosításnak (deep instantiation) nevezzük, ha az n. szinten modellezett információ elérhető az n+x. (x &amp;gt; 1) szinten&lt;br /&gt;
*** Attribútumoknál megadható, hogy a következő szinten pédányosodjon-e&lt;br /&gt;
* XMF (eXecutable Metamodelling Facility)&lt;br /&gt;
** Meg lehet adni a konkrét szintaxist és a szemantikát is =&amp;gt; végrehajtható a nyelv&lt;br /&gt;
* EBNF (Enhanced Backus-Naur Form):&lt;br /&gt;
** Szöveges&lt;br /&gt;
** Profukciós szabályokból áll&lt;br /&gt;
** Boolean = &amp;amp;#8221;True&amp;amp;#8221; | &amp;amp;#8221;False&amp;amp;#8221;&lt;br /&gt;
** Konkatenáció: ,&lt;br /&gt;
** Opcionális: []&lt;br /&gt;
** Ismétlés: {}&lt;br /&gt;
** Pl.: international-number = [(&amp;amp;#8221;00&amp;amp;#8221; | &amp;amp;#8221;+&amp;amp;#8221;), &amp;amp;#8221;36&amp;amp;#8221;], area-code, localnumber;&lt;br /&gt;
* Szemantika&lt;br /&gt;
** Mit jelentenek a jelölések&lt;br /&gt;
** Megadása&lt;br /&gt;
*** Informális&lt;br /&gt;
*** Operációs: Hogyan hajtjuk végre&lt;br /&gt;
*** Denotációs: Matematikai objektumokra képezzük és azok tulajdonságait vizsgáljuk&lt;br /&gt;
*** Axiomatikus: Elő-, és utófeltételeket ír le, nem a teljes szemantikát írja le&lt;br /&gt;
* OCL (Object Constraint Language): Megszorítások a metamodellen, amiket a példányoknak ki kell elégíteniük&lt;br /&gt;
** Deklaratív&lt;br /&gt;
** Nincs mellékhatás&lt;br /&gt;
** Formális szintaxis és szemantika&lt;br /&gt;
** Kontextus&lt;br /&gt;
			 * Az az entitás, amire a kényszert definiáljuk&lt;br /&gt;
			 * Típusa: Az entitás típusa&lt;br /&gt;
			 * Példány: A konkrét példány, amire fut a kiértékelés. self kulcsszóval érhető el&lt;br /&gt;
** Invariáns: Minden pillanatban fennáll, osztályra definiáljuk. inv kulcsszó&lt;br /&gt;
** Elő-, és utófeltétel: Művelethez definiáljuk, a futás előtti és az utáni időpillanatban igaz. pre és post kulcsszavak.&lt;br /&gt;
*** attrnév@pre-vel lehet hivatkozni az attribútum művelet előtti értékére&lt;br /&gt;
** Kezdeti érték: Attribútumra vagy asszociációra vehető fel, létrehozáskor ez lesz az értéke. init kulcsszó&lt;br /&gt;
** Származtatott érték: Más elemekből származtatott. derive kulcsszó&lt;br /&gt;
** Típusok: String, Integer, Boolean, Real, Collection, Set, Bag, Sequence + felhasználó által készítettek&lt;br /&gt;
** Örökléssel a kényszerek is öröklődnek&lt;br /&gt;
*** Invariánst lehet szigorítani&lt;br /&gt;
*** Előfeltételt lehet enyhíteni&lt;br /&gt;
*** Utófeltételt lehet szigorítani&lt;br /&gt;
** Elágazás: if a then b else c endif&lt;br /&gt;
** Enumerációk: EnumerációTípus::Kifejezés&lt;br /&gt;
** OclIsKindOf(objektum): Igaz, ha az objektum feljebb van az öröklési fában, mint self.&lt;br /&gt;
** OclIsTypeOf(objektum): Igaz, ha az objektum lejjebb van az öröklési fában, mint self.&lt;br /&gt;
** oclAsType(): Castolás&lt;br /&gt;
** Navigáció asszicációkon keresztül&lt;br /&gt;
*** Ha 0..1, akkor mutató&lt;br /&gt;
*** Ha &amp;gt;1, akkor kollekció&lt;br /&gt;
** Műveletek kollekciókon&lt;br /&gt;
*** size()&lt;br /&gt;
*** select(kif)/reject(kif): Azokat választja, ki amikre igaz/hamis a kifejezés&lt;br /&gt;
*** including(obj)/excluding(obj): Hozzáadja/elhagyja az elemet a kollekcióból&lt;br /&gt;
*** count(obj): Megszámolja, hogy az objektum hányszor szerepel&lt;br /&gt;
*** isEmpty()/notEmpty&lt;br /&gt;
*** forAll(kif): Igaz, ha minden elemre igaz&lt;br /&gt;
** Lekérdező műveletekre megadhatjuk, hogy pontosan mit is adjon vissza. bodí kulcsszó&lt;br /&gt;
* Konkrét szintaxis megadási módszerek&lt;br /&gt;
** Metamodellben vannak a megjelenítést megadó attribútumok&lt;br /&gt;
** Kódolás&lt;br /&gt;
** Modellben írjuk le&lt;br /&gt;
* Tervezési minták vannak a szakterületi nyelvekben is&lt;br /&gt;
* Generatív programozás: Írunk egyszer egy alapot, és abból generáljuk a kész programot&lt;br /&gt;
** Az alapot elég egyszer megírni, és utána alacsony befektetéssel tudunk hasonló szoftvereket készíteni&lt;br /&gt;
* Funkciómodellezés: Termékcsalád elemei közötti különbségek leírására&lt;br /&gt;
** Funkciók, közöttük élek&lt;br /&gt;
** Teli kör: Kötelező elem&lt;br /&gt;
** Üres kör: Opcionális&lt;br /&gt;
** Kitöltött ív: 1..* kapcsolat&lt;br /&gt;
** Üres ív: Alternatív&lt;br /&gt;
* Szimuláció: A rendszer a specifikációnak megfelelően működik? De a megépítése drága, ezért szimuláljuk&lt;br /&gt;
** Rendszerspecifikációs hierarchia&lt;br /&gt;
*** Megfigyelési keret: Bemenetek és kimenetek&lt;br /&gt;
*** I/O viselkedés: Bemeneti és kimeneti trajektóriák&lt;br /&gt;
*** I/O függvény: Tetszőleges bemenetre kiszámolható a kimenet&lt;br /&gt;
*** Állapotátmenet: Bemenetre létrejött állapotváltozásokat is követni tudjuk&lt;br /&gt;
*** Komponensek: Fehér doboz, ismertek a részek és a közöttük levő kapcsolatok&lt;br /&gt;
** DEVS rendszer megadása:&lt;br /&gt;
*** X: bemeneti értékek halmaza&lt;br /&gt;
*** S: állapotok halmaza&lt;br /&gt;
*** Y: kimeneti események halmaza&lt;br /&gt;
*** &amp;amp;#948;int: S &amp;amp;#8594; S a belső állapotátmeneti függvény&lt;br /&gt;
*** &amp;amp;#948;ext: [[QxX]] &amp;amp;#8594; S a külső állapotátmeneti függvény, ahol&lt;br /&gt;
*** Q a teljes állapothalmaz&lt;br /&gt;
*** e az utolsó állapotváltás óta eltelt idő&lt;br /&gt;
*** &amp;amp;#955;: S &amp;amp;#8594; Y a kimeneti függvény&lt;br /&gt;
*** ta: S &amp;amp;#8594; R+&lt;br /&gt;
* Modelltranszformáció&lt;br /&gt;
** Imperatív/deklaratív&lt;br /&gt;
** Osztályozás:&lt;br /&gt;
*** Endogén/exogén: Azonos/különböző cél és forrásnyelv&lt;br /&gt;
*** Horizontális/vertikális: Azonos/különböző absztakciós szint&lt;br /&gt;
* Gráftranszformáció: Modellek legtöbbször gráfokkal vannak leírva, így a transzformációkkal a modellek változását írhatjuk le&lt;br /&gt;
** LHS,RHS: Left/Right Hand Side, a transzformáció a bal oldali gráfból a jobb oldalit csinálja&lt;br /&gt;
** L-R: törlés, R-L: létrehozás&lt;br /&gt;
** Működés&lt;br /&gt;
*** LHS-re illeszkedő minta keresése&lt;br /&gt;
*** L-R törlése&lt;br /&gt;
*** R-L másolatának hozzáadása&lt;br /&gt;
** Problémák&lt;br /&gt;
*** Lógó élek&lt;br /&gt;
*** Konfliktusok: Vagy egyik vagy másik szabályt tudjuk csak alkalmazni&lt;br /&gt;
*** Okozati összefüggés: Ha felcseréljük őket, akkor megváltozik az eredmény&lt;br /&gt;
** További lehetőségek&lt;br /&gt;
*** Csomópontok csoportos kezelése (pl. vmennyi Field egyben)&lt;br /&gt;
*** Negatív feltételek (pl. nincs pacman a szellem mellett)&lt;br /&gt;
*** Prioritás: A magasabb prioritású szabály lesz mindig alkalmazva, ha konfliktusban lenne egy másikkal&lt;br /&gt;
** Funkcionális követelmények&lt;br /&gt;
*** Use Case leírás&lt;br /&gt;
*** Konfliktusban lehetnek műveletek, pl mindkettő ugyanazt az élt akarja törölni&lt;br /&gt;
*** Kritikus pár analízis: Megkeresni a lehetséges konfliktusokat és okozati összefüggéseket&lt;br /&gt;
** TGG (Triple Graph Grammars): left, corr, right oldalakkal. A corr az elemek megfelelőségét adja meg, így össze lesznek kapcsolva&lt;br /&gt;
*** Absztrakt szintaxis -&amp;gt; Szemantikát transzformál&lt;br /&gt;
** Operációs szemantika: A gráfban szerepeltessük a futásidejű állapotot is&lt;br /&gt;
* Metamodell alapú transzformáció&lt;br /&gt;
** Szabályok: Modellben vannak megadva&lt;br /&gt;
*** Illesztésnél a szabály modell egy példányát keressük az LHS-ben&lt;br /&gt;
*** Struktúra, metatípus információ, kényszerek, műveletek&lt;br /&gt;
** Vezérlés&lt;br /&gt;
*** Nem determinisztikus: Nincs explicit vezérlés&lt;br /&gt;
*** Negatív alkalmazási kritérium: Adott helyzetben megakadályozza a szabály futását&lt;br /&gt;
*** Nyelvként&lt;br /&gt;
**** Szabályok sorrendezése&lt;br /&gt;
**** Paraméterátadás&lt;br /&gt;
**** Adatfolyam jelleg: Minden szabály a végrehajtáskor az előzőnek az eredményén dolgozik&lt;br /&gt;
**** Elágazás&lt;br /&gt;
**** Hierarhikus&lt;br /&gt;
**** Iteráció, rekurzió&lt;br /&gt;
**** Fork, join&lt;br /&gt;
**** Kimerítő szabályalkalmazás: Mindaddig hajtódik végre a szabály újra és újra, amíg van illeszthető LHS&lt;br /&gt;
* Validált modelltranszformáció&lt;br /&gt;
** Online, offline validáció&lt;br /&gt;
** Design by Contract: A kommunikációt definiálja&lt;br /&gt;
** Validáció&lt;br /&gt;
** Elő-, és utófeltételek&lt;br /&gt;
** Validáció: S szabály előtt biztos, hogy igaz, különben a szabály sikertelen&lt;br /&gt;
** Megőrzés: P megőrzi az értékét&lt;br /&gt;
** Garantálás: S után P mindig igaz&lt;br /&gt;
** Tervezési minták&lt;br /&gt;
*** Helper: Összeköt ideiglenesen 2 entitást&lt;br /&gt;
*** Optimalizált tranzitív lezárt minta: lezártat számol, ehhez felvesz egy segédentitást, majd azt az ősök felé mozgatja, míg a lezárt elemeit összegyűjti. Azért optimalizált, mert egyetlen segítőt használ&lt;br /&gt;
* Modellalapú módszertanok&lt;br /&gt;
** MIC (Model-Integrated Computing): Metamodell &amp;lt;-&amp;gt; Modell &amp;lt;-&amp;gt; Alkalmazás. Van visszacsatolás&lt;br /&gt;
*** MIPS (Model-Integrated Program Synthesis)&lt;br /&gt;
** MDA (Modellvezérelt architektúra): Modellből platformspecifikus részeket több modellprocesszorral állítunk elő, így pl generálható a kód különböző mobiltelefonokra&lt;br /&gt;
* Többirányű modelltranszformáció: Modellt és kódot együtt módosítjuk, vagy mergelünk&lt;br /&gt;
** TGG: Oda-, és visszairányú szabály egyszerre&lt;br /&gt;
** QVT (Query/View/Transformation):&lt;br /&gt;
*** Relations nyelv: Tud összetett objektummintákat illeszteni. Traceket helyez el, így könnyen nyomonkövethető&lt;br /&gt;
**** Relation: Követelmények, amiket a modellnek teljesítenie kell&lt;br /&gt;
**** Domain: Típusos változó, a modellbe illeszkedik&lt;br /&gt;
**** When klóz: Feltételek, amiknek teljesülése esetén a relációnak teljseülnie kell&lt;br /&gt;
**** Where klóz: Feltételek, amiket a relációnak biztosítania kell&lt;br /&gt;
**** Top level reláció: Nem csak wehere feltételből hívódnak&lt;br /&gt;
**** Checkonly mód: Ellenőrzi, hogy a modell megfelel-e a specifikáltnak&lt;br /&gt;
**** Enforce mód: Elvégzi s szükséges transzformációkat, hogy a modell megfeleljen a specifikációnak&lt;br /&gt;
**** Kulcsok: Biztosítható, hogy ne készüljenek duplikált objektumok&lt;br /&gt;
*** Core nyelv: Kényszerek kiértékelése, ellenőrzése&lt;br /&gt;
*** Imperatív implementáció: Operational Mappings&lt;br /&gt;
* Aspektusorientált fejlesztés:&lt;br /&gt;
** Crosscutting Concerns: A programban szétszóródott, de logikailag egybe tartozó részek&lt;br /&gt;
** 1 helyen vesszük fel a szabályt (aspektus)&lt;br /&gt;
** Meghatározzuk a pontokat, ahol alkalmazásra kell, hogy kerüljön (joinpoints)&lt;br /&gt;
** Egy szövő fordítási időben beilleszti az aspektusokat a megfelelő helyre&lt;br /&gt;
&lt;br /&gt;
-- [[SallaiTamas|sashee]] - 2010.05.20.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Infoszak]]&lt;/div&gt;</summary>
		<author><name>Unknown user</name></author>
	</entry>
</feed>