[Modelinterpreter] PLANS 2015

Dévai Gergely deva at elte.hu
Wed Aug 26 18:51:04 CEST 2015


Sziasztok!

Nem a diagramokból generáljuk a kódot, hanem a modellbo"l. A diagramok 
csak pluszban generált "képek", vagy Papyrusban, vagy Siriusban, vagy 
UML Designerben, vagy SVG-ben vagy... Tehát a szövegbo"l keletkezik a 
modell, és mellé -- csak a user számára -- diagramok.

A modellvégrehajtás számára alapveto"en 2 módszert látok:

(1) A modellbo"l generált Java kód, ahogyan most is csináljuk. Ahogy 
Boldi alább írta, ebben az esetben nem sokat változik a projektünk. 
So"t, még az inkrementalitás is megmarad, csak a modellt már nem a 
Papyrus fogja változtatni, hanem egy szöveges editor (szintén 
inkrementálisan).

(2) A másik megoldás, ha maga a szöveges modell-leírás végrehajtható. 
Ezt a filozófiát követi a txtUML. Ezen belül további két leheto"ségro"l 
tudok, mindegyikkel kísérletezünk abban a projektben:
     (2/a) Beágyazás létezo" programozási nyelvbe, pl. Javába. (Ezt 
hívjuk a txtUML projektben JtxtUML-nek.) Ekkor a futtatást és a 
debuggolást a standard Java keretrendszer végzi, kiegészítve 
modell-specifikus dolgokkal, pl. state machine animációval.
     (2/b) Xtext + Xbase segítségével egy saját szintaxisú nyelvet 
létrehozni, és a keretrendszer által biztosított API segítségével 
leképezni a szintén a keretrendszer által biztosított Java modellre. A 
háttérben ekkor is Java program fog futni, de a debug (breakpoint-ok, 
highlight stb.) a saját szintaxisú fájlon történik. (Ezt hívjuk 
XtxtUML-nek.)
(A 2/b eset kombinálható a 2/a-val, ha a saját szintaxis leképezése 
éppen a 2/a-ban adott Java API-t használja. Ekkor Java-s és saját 
szintaxisú szöveges UI is rendelkezésre áll, de a végrehajtó logika csak 
egyszer van implementálva.)
A (2) alatti scenáriók jelento"sebb hatással lennének a jelenlegi Model 
Executor projektre. Ebben az esetben a mostanihoz hasonló modell --> 
Java leképezés elso" körben nem szükséges. Hosszabb távon azonban újra 
szükség lehet rá, abban az esetben, más eszközökkel (Papyrus, UML 
Designer stb.) editált modelleket szeretnénk futtatni, vagy akár 
"round-trip-editing"-et megvalósítani.

Végül szeretném megjegyezni, hogy nincs ericssonos döntés ezzek 
kapcsolatban. Akár az is lehet, hogy továbbra is a Papyrus lesz a 
preferált UI.
Én személyesen a (2/a) + (2/B) kombinációban hiszek, ahol a Java UI a 
nagyon kevés és stabil függo"sége miatt fallback megoldásként is szolgálhat.

Uff! :-)

Gergo"

On 08/26/2015 10:30 AM, Boldizsár Németh wrote:
> Sziasztok!
>
> Ha a read-only diagrammokból továbbgenerálunk kódot, az azt jelenti, 
> hogy nem kell sok mindent változtatni. Tehát az alább leírt 
> célok/feature-ök reálisak lehetnek.
>
> Egyedül az inkrementalitást bukjuk ebben az esetben, mert minden 
> modell-t újra föl kell olvasni amikor megváltozott. Ezt mondjuk 
> kétféleképp lehet kezelni:
> A) A txtUML tud kicsi modelleket generálni (mondjuk minden osztály 
> számára külön modell), amik egymást importálják. Ezeket mindig frissen 
> be lehet tölteni, amikor megváltozik (mert megváltozik a forrásául 
> szolgáló txtUML kód).
> B) A txtUML a forrás megváltozásakor képes a memóriában tartott UML 
> modellt utánahúzni. Ekkor ugyanúgy kapnánk értesítéseket a 
> változásról, mint most.
>
> Mit gondoltok, szerintetek ez járható út? Voltak már ilyen 
> ötletek/kísérletek?
>
> Boldi
>
> On 2015.08.26. 8:25, Dévai Gergely wrote:
>>
>> Sziasztok!
>>
>> Szeptember végén lesz egy olyan release, amit Ericssonon belül már 
>> meghirdetnek majd. Ezért a szeptemberben az osztálymodellezés minél 
>> teljesebb köru" támogatása, stabilitás, dokumentáció lesz fókuszban.
>>
>> Utána logikusan a kapszulák következnek, DE ezt alapveto"en az 
>> határozza meg, milyen döntés születik az editorral kapcsolatban. 
>> Fontos észrevenni, hogy hiába lesz az executor használható, a teljes 
>> toolchain használhatatlan a Papyrus jelen állapotával, nem is 
>> beszélve a model compare & merge UML szintu" megvalósításáról. Az 
>> egyedül járható útnak a szöveges modellezés tu"nik, generált, 
>> read-only diagramokkal. Ezt a döntést viszont még nem hozta meg az 
>> Ericsson. Ennek a döntésnek próbálunk elébe menni a sok txtUML-es 
>> aktivitással.
>>
>> Üdv,
>> Gergo"
>>
>> ---- Boldizsár Németh írta ----
>>
>> > Szia!
>> >
>> > Nézegettem a 2015-ös plan-t.
>> > (https://plc.inf.elte.hu/modelinterpreter/trac/wiki/Plan2015) 
>> <https://plc.inf.elte.hu/modelinterpreter/trac/wiki/Plan2015%29%0D>;
>> > Az egyik megjegyzésem, hogy ez októberben véget ér.
>> >
>> > Más dolgok:
>> >   - A szeptemberi-októberi feladatok egyemberesnek tu"nnek (alf 
>> hekkelés).
>> >
>> > Emellett lehetne még:
>> >   - Magasabb szintu" osztálymodellezés (komponensek)
>> >   - DataType, Enum support
>> >   - Variables view: asszociációk mentén való haladás
>> >   - A variables view-ban kijelölt stateful class-ra átugrunk a debug
>> > view-ban
>> >   - Debug view filterezése class-ra
>> >
>> > (Ezzel a két utóbbi dologgal szerintem javulna a debug view-ben az
>> > instance-ok navigálhatósága)
>> >
>> > A later-bo"l a Variable View lényegében meg van oldva.
>> > A Breakpoint view-t adja alánk a Moka.
>> > Stack Frame line-okra akkor fog menni, ha már a ralf UI része úgy áll
>> > (tudunk benne highlight-olni).
>> > Expression view-t nem szeretnénk addig csinálni, amíg a ralf nem fix.
>> >
>> > Mindezt összevetve pedig szerintem év végén vagy jövo" év elején már
>> > lehetne egy olyan pöpec demót csinálni, amivel el lehet menni 
>> cégekhez.
>> >
>> > Boldi
>>
>>
>>
>> ---- Boldizsár Németh írta ----
>>
>> Szia!
>>
>> Nézegettem a 2015 <tel:2015>-ös plan-t.
>> (https://plc.inf.elte.hu/modelinterpreter/trac/wiki/Plan2015)
>> Az egyik megjegyzésem, hogy ez októberben véget ér.
>>
>> Más dolgok:
>>   - A szeptemberi-októberi feladatok egyemberesnek tu"nnek (alf 
>> hekkelés).
>>
>> Emellett lehetne még:
>>   - Magasabb szintu" osztálymodellezés (komponensek)
>>   - DataType, Enum support
>>   - Variables view: asszociációk mentén való haladás
>>   - A variables view-ban kijelölt stateful class-ra átugrunk a debug
>> view-ban
>>   - Debug view filterezése class-ra
>>
>> (Ezzel a két utóbbi dologgal szerintem javulna a debug view-ben az
>> instance-ok navigálhatósága)
>>
>> A later-bo"l a Variable View lényegében meg van oldva.
>> A Breakpoint view-t adja alánk a Moka.
>> Stack Frame line-okra akkor fog menni, ha már a ralf UI része úgy áll
>> (tudunk benne highlight-olni).
>> Expression view-t nem szeretnénk addig csinálni, amíg a ralf nem fix.
>>
>> Mindezt összevetve pedig szerintem év végén vagy jövo" év elején már
>> lehetne egy olyan pöpec demót csinálni, amivel el lehet menni cégekhez.
>>
>> Boldi
>
>
>
> _______________________________________________
> Modelinterpreter mailing list
> Modelinterpreter at plc.inf.elte.hu
> https://plc.inf.elte.hu/mailman/listinfo/modelinterpreter

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://plc.inf.elte.hu/pipermail/modelinterpreter/attachments/20150826/f2c935a0/attachment.html>


More information about the Modelinterpreter mailing list