Vis enkel innførsel

dc.contributor.advisorTrætteberg, Hallvard
dc.contributor.authorHunderi, Anders Rantala
dc.date.accessioned2022-07-09T17:21:03Z
dc.date.available2022-07-09T17:21:03Z
dc.date.issued2022
dc.identifierno.ntnu:inspera:91612887:33591372
dc.identifier.urihttps://hdl.handle.net/11250/3004386
dc.description.abstractSom en del av en masteroppgave i 2021 ble “Odin” systemet utviklet for å hjelpe fagstab ved NTNU administrere og synkronisere student-grupper på tvers av den digitale læringsplattformen Blackboard og kildekodehåndterings-tjenesten Gitlab, samt gi innsikt i studentenes arbeidsmetodikk i form av et metrikk-dashbord. Dashbordet som har blitt utviklet eksisterer i dag mer som et proof-of-concept, ettersom det fortsatt er uklart hvilke datasett det er viktig å analysere. Dette betyr at fremtidig utvikling av systemet vil kreve en dels eksperimentering av hvilke metrikker som vises – ved å modifisere eksisterende elementer, eller utvikle nye. For å forsikre at slikt implementasjonsarbeid kan gjennomføres på en effektiv og organisert måte, analyserer denne studien “utvidbarheten” (extensibility) av dagens system og implementerer endringer i arkitekturen for å forbedre utvidbarheten som nødvendig. Ettersom uttrykket “utvidbarhet” per nå ikke har en standardisert definisjon ble et kortere litteraturstudium gjennomført, som samlet inn definisjoner og uttrykk som kan brukes for å beskrive et systems utvidbarhet. Etter å ha sett en mangel på veldefinert utvidbarhet i det eksisterende systemet, ble et internt plugin-system implementert. Dette systemet eksponerer deler av den interne metrikklogikken og tillater en å legge til nye data og visualiseringer i systemet, på en måte som fullt skiller disse tilleggene fra den eksisterende kildekoden. I tillegg tillater plugin-systemet (delvis) at plugin-artefakter blir bundet senere i systemets livssyklus, hvilket reduserer driftsstans når ny logikk legges til. De metrikkene som nå vises i Odin-systemet ble trukket ut, og omskrevet til selvstendige plugins. Dette gir både et eksempel på hvordan plugins kan utvikles for det nye systemet, men viser også at systemet tillater utvikling av metrikk-plugins som er minst like kraftige som de eksisterende metrikkene.
dc.description.abstractAs part of a Master’s Thesis from 2021, the “Odin” system was created to help NTNU course staff manage and synchronize student groups across the Blackboard Learning Management System (LMS) and Gitlab Source Code Management (SCM) Service, and provide insight into the students’ coding process by means of a metrics dashboard. Today, the metric dashboard more-so exists as a proof-of-concept, since there is still uncertainty as to which data is important to analyze. Future work on this system will therefore require experimentation with which metrics are shown in the dashboard – modifying existing ones, or developing new ones. To ensure that these implementations can be done in an effective and organized manner, this study analyzes the “extensibility” of the current system and implements architectural changes to improve the extensibility as needed. As the term “extensibility” is currently not a standardized expression, a shorter literary review was also done in order to gather definitions and key phrases one can use to describe a system’s extensibility. Seeing a lack of well-defined extensibility in the current system, a plugin sub-system was implemented. This system exposes the internal metric logic to allow new data and visualizations to be added, and allows new metric capabilities to be added into the system in a way that fully encapsulates these additions from the existing core. Furthermore, the plugin system (partially) allows plugins to be bound later in the system’s life-cycle, lessening downtime whenever new logic is added. The current metrics shown in the dashboard were extracted into plugins, serving as both examples of how plugins can be made, but also showcasing that the system allows the development of metric plugins at least as complex as the existing metrics.
dc.languageeng
dc.publisherNTNU
dc.titleSupporting and Improving the Extensibility of the "Odin" system
dc.typeMaster thesis


Tilhørende fil(er)

Thumbnail

Denne innførselen finnes i følgende samling(er)

Vis enkel innførsel