A Modeling Environment in the Cloud for Education
Master thesis
Permanent lenke
https://hdl.handle.net/11250/2837177Utgivelsesdato
2021Metadata
Vis full innførselSamlinger
Sammendrag
Programvareutvikling har en tilnærming som kalles Model-Dreven Utvikling (MDD).Dette undervises til studenter i høyere utdanning. Tilnærmingen er avhengig avverktøy, og et slikt verktøy er Eclipse Modeling Framework (EMF). Selv om EMFkan brukes for å lære studenter om MDD, er det upopulært på grunn av sin tilknytning til Eclipse Integrated Development Environment (IDE), som gjør at studenterstritter i mot å lære MDD. Skybaserte alternativer til Eclipse IDE eksisterer, somGitpod med VSCode, og de har nyttige egenskaper for en utdanningsorganisasjon.Verktøyene i EMF finnes derimot ikke for disse alternativene. Denne masteroppgaven prøver å legge til rette for å støtte EMF i de skybaserte alternativene.
Fremgangsmåten i masteroppgaven er basert på Design Science Research, hvoret design blir lagd og en programvare blir utviklet. Designet drar inspirasjon fraLanguage Server Protocol (LSP) og Graphical Language Server Platform (GLSP),protokoller for tekst- og diagramredigering. Disse protokollene brukes allerede iVSCode.
Resultatet er en utvidelse for VSCode for redigering av tre-strukturer. EMF-modeller kan redigeres som trær. Denne utvidelsen består av tre komponenter: etgenerisk brukergrensesnitt for tre-redigering, en utvidelse for VSCode, og en EMF-spesifikk tjener (server). Utvidelsen og serveren snakker med en nylig designetprotokoll: Tree Language Server Protocol (TLSP).
Den resulterende programvaren kan bygges på videre, for å bruke EMF-modelleringi skyen. TLSP-protokollen og programvarearkitekturen kan brukes av også andreverktøy som trenger tre-redigering, og som sikter på å støtte flere IDE-er. En utbredt bruk av TLSP i IDE-er vil gjøre at migrering av tre-redigeringsverktøy tilandre IDE-er blir forenklet. Uavhengig av dette, så gir designet en gjenbrukbar server forEMF, som kan forenkle migreringen av EMF til andre IDE-er. Software engineering has an approach called Model-Driven Development (MDD).This is taught to students in higher education. The approach is reliant on tools, andone such tool is the Eclipse Modeling Framework (EMF). While EMF can be usedto teach students about MDD, it is unpopular because of its ties to the EclipseIntegrated Development Environment (IDE), causing students to resist learningMDD. Cloud based alternatives exist for the Eclipse IDE, like Gitpod with VSCode,which provide benefits in an educational organization. However, the EMF toolsused in education are not available in these alternatives. This thesis tries to enablethe cloud based alternatives to support EMF.
The thesis’ approach is based on Design Science Research, where a designis created and a software artifact is implemented. The design draws inspirationfrom the Language Server Protocol (LSP) and Graphical Language Server Platform(GLSP), protocols for text and diagram editing. These protocols already work inVSCode.
The result is a Tree Editor extension for VSCode. EMF models can be editedas trees. This extension uses a three component design: a generic tree editor userinterface, a VSCode extension, and an EMF specific server. The extension andserver communicate with a newly designed protocol, the Tree Language ServerProtocol (TLSP).
The resulting implementation can be built upon to work with EMF modeling inthe cloud. The TLSP protocol and software architecture can be used by other toolsthat need tree editors, that aim to support multiple IDEs as well. A wider adoptionof TLSP in IDEs will make migrations of tree editors to other IDEs easy. Regardless,the design provides a reusable server for EMF, which can ease migrations of EMFto other IDEs.