Return to search

DSL-generering och grafisk representation

Att hitta ett komplement till stora XML-filer kan vara svårt, men kan också vara nödvändigt. På IdaInfront använder man sig idag utav XML-filer för att sätta upp konfigurationerna på hur man ska bygga upp ett projekt i deras program iipax. Dessa blir ofta väldigt stora och oöverskådliga samt att det inte finns någon smidig grafisk representation på hur de olika typerna hör ihop för att få en enkel överblick, det är här mitt examensarbete kommer in. Jag har skapat en prototyp på hur man med ett domän specifikt språk (DSL) kan ersätta XML syntaxen och på så sätt få det mera läsbart och samtidigt göra en grafisk representation på hur de olika noderna är kopplade till varandra. Jag använde mig av ett verktyg som heter XText för att ta fram mitt DSL då det gav en bra grund samt att man får olika hjälpverktyg så som auto-complete förslag, färgkodning, validering mm. För att få fram en grafisk editor använde jag mig av ett verktyg som heter Eugenia som är en del av Epsilon som utveklar verktyg för olika typer av hantering av EMF modeller i Eclipse. Det gav en smidig koppling mellan den DSL jag utformade i XText med en grafisk editor som Eugenia automatiskt genererade på omkring 600 filer utifrån två filer med inställningar som jag modifierade. Jag fick fram ett bra resultat för en prototyp i mindre skala. Dock använder sig IdaInfront av så många noder per projekt så det blir ganska snabbt svårt att se helheten i den grafiska editorn. Det hade varit smidigt om man kunde extrahera olika grupperingar i editorn men det hade jag tyvärr inte tid med att försöka konfigurera ihop.

Identiferoai:union.ndltd.org:UPSALLA1/oai:DiVA.org:liu-102572
Date January 2013
CreatorsCarlzon, Mårten
PublisherLinköpings universitet, Institutionen för datavetenskap, Linköpings universitet, Tekniska högskolan
Source SetsDiVA Archive at Upsalla University
LanguageSwedish
Detected LanguageSwedish
TypeStudent thesis, info:eu-repo/semantics/bachelorThesis, text
Formatapplication/pdf
Rightsinfo:eu-repo/semantics/openAccess

Page generated in 0.0018 seconds