Demo 2025: Difference between revisions

 
(21 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Note|type=info|text=Diese Seite dient primär als Materialsammlung für die Live-Demo von GraphIT auf der DELFI 2025. Sie können sie aber auch auf eigene Faust explorieren.}}
== Überblick ==
== Überblick ==
[[File:Math-example.png|thumb|right|350px|A simple example graph about maths]]
<!-- Kurzzusammenfassung -->
<!-- Kurzzusammenfassung -->
* Projekt zur Verwendung von Abhängigkeitsgraphen um Studiengänge, Kurse, und den eigenen Fortschritt zu modellieren
* GraphIT ist eine Plattform zur Arbeit mit Abhängigkeitsgraphen um Studiengänge, Kurse und den Fortschritt von Lernenden zu modellieren
* exploratives Arbeiten, gleichzeitig testen und evaluieren
* GraphIT setzt auf WikiBase auf
* noch einige Baustellen, bei Arbeit mit Graph -> bauen eigener Frontends, Interaktionsmöglichkeiten nach Bedarf
* wir entwickeln die Plattform explorativ seit 2022 (gleichzeitig testen und evaluieren)
* wo notwendig entwickeln wir eigene Frontends und Interaktionsmöglichkeiten


=== Probleme ===
==== Ausgangspunkt: Probleme beim Studiengangsdesign ====
<!-- Probleme Studiengangdesign -->
* aktuell one-size-fits-all Studiengänge, aber heterogene Vorkenntnisse und Ziele
* one-size-fits-all Studiengänge, aber heterogenen Vorkenntnissen
* Überarbeitung und Erstellung von Studiengängen dauert lange
* Wenig Möglichkeiten Wissen zwischen Lehrenden gut zu transferieren
* Dozierende wissen oft nicht, was in anderen Kursen passiert
* Anpassung von Curricula nicht sehr flexibel
-> Problemlösung in der Forschung durch Ontologien (Bsp-Quellen)


=== GraphIT ===  
==== GraphIT ====  
<!-- Grundidee GraphIT --> <!-- [[File:Graph-simple.png|thumb|right|600px|Symbolische Abbildung des Graphen]] -->
<!-- Grundidee GraphIT --> <!-- [[File:Graph-simple.png|thumb|right|600px|Symbolische Abbildung des Graphen]] -->
* wir modellieren Wissen als Netzwerk von Lerninhalten und deren Abhängigkeiten
* Themen bauen aufeinander auf ("B ''depends on'' A")
* Reihe an Vorkenntnisse bildet Lernpfad


* Wissen als Netzwerk von Lerninhalten und deren Abhängigkeiten
{| class="mw-collapsible mw-collapsed wikitable"
* Themen bauen aufeinander auf
! colspan="2"| Begriffe/Definitionen in GraphIT
* Reihe an Vorkenntnisse bildet Lernpfad
|-
|'''Item'''
| Ein Knoten, der mit anderen Knoten verlinkt wird. Z.b.: ein Lerninhalt oder eine Person
|-
| '''Property'''
| Eine Kante, die die Beziehung oder Abhängigkeiten verschiedener ''Items'' abbildet
|-
| '''Statements'''
| Item-Property-Item Verknüpfugen. Z.b.: Matrix Multiplication - depends on &rarr; Matrix
|-
|'''Qualifier'''
| Annotationen einer Kante
|}




Line 75: Line 93:
| style="color:gray;" | Ein '''Item''' oder '''Lerninhalt''' baut darauf auf, dass man ein vorheriges Thema verstanden hat. Sie sind voneinander [[Property:P1|abhängig]].
| style="color:gray;" | Ein '''Item''' oder '''Lerninhalt''' baut darauf auf, dass man ein vorheriges Thema verstanden hat. Sie sind voneinander [[Property:P1|abhängig]].
</br>
</br>
Daraus ergibt sich ein Lernpfad, den man vom ''einfachsten'' zum ''schwersten'' Thema folgen kann, um das eigene Wissen allmählich zu erweitern.
Daraus ergibt sich ein Lernpfad, dem man vom ''einfachsten'' zum ''schwersten'' Thema folgen kann, um das eigene Wissen allmählich zu erweitern.
Beispielweise ist hier [[Item:Q106|Points and Vectors]] das Grunditem, auf dem alle nächsten Themen aufbauen.
Beispielweise ist hier [[Item:Q106|Points and Vectors]] das Grunditem, auf dem alle nächsten Themen aufbauen.
|}
{| class="mw-collapsible mw-collapsed wikitable"
! colspan="2"| Begriffe
|-
|'''Item'''
| Ein Knoten, der mit anderen Knoten verlinkt wird. Z.b.: ein Lerninhalt oder eine Person
|-
|-
| '''Property'''
| colspan="2" | [https://tinyurl.com/2av6rsyx Query-Ergebnis]
| Eine Kante, die die Beziehung oder Abhängigkeiten verschiedener ''Items'' abbildet
|-
| '''Statements'''
| Item-Property-Item Verknüpfugen. Z.b.: Matrix Multiplication - depends on &rarr; Matrix
|-
|'''Qualifier'''
| Annotationen einer Kante
|}
|}


&rarr; Möglichkeit durch das verknüpfte Netze zentrale Punkte, Lernpfade, Strukturen, Wissensüberlappung, ... abzubilden
&rarr; Items (Knoten) im Graph: Topic, User (Studierende oder Dozierende), Session, Course, Ressource, ... (kein rigides Schema!)


&rarr; Dynamischeres Planen und Halten von Lehrveranstaltungen
&rarr; wir können durch Analyse des Graphen zentrale Themen, Lernpfade, Lücken und Überlappungen finden


&rarr; Interaktion mit dem Graphen über User-Items
&rarr; Direkter Vorteil: dynamischeres Planen und Halten von Lehrveranstaltungen


=== Anwendung ===
== Anwendung ==
==== ...für Dozierende ====
==== ...für Dozierende ====
<!-- Kurse organisieren, aktualisieren, halten -->
<!-- Kurse organisieren, aktualisieren, halten -->
Dozierende haben die Möglichkeit Kurse zu erstellen, und ihnen (existierende) Lerninhalte zuweisen, die an einem bestimmten Termin besprochen werden.
Dozierende haben die Möglichkeit, Kurse zu erstellen, und ihnen (existierende) Lerninhalte zuweisen, die an einem bestimmten Termin besprochen werden.
Dabei ensteht eine Graphstruktur, die genutzt werden kann um Strukturen aufzuzeigen, Queries zu stellen und Interaktion zu tracken.  
Dabei entsteht eine Graphstruktur, die genutzt werden kann um Strukturen aufzuzeigen, komplexe Abfragen zu stellen und Interaktionen zu tracken.  


{| class="mw-collapsible wikitable" style="margin:"auto"
{| class="mw-collapsible wikitable" style="margin:"auto"
Line 116: Line 120:




Mithilfe des Kursitems kann eine Kursseite erstellt werden, auf der alle möglichen Informationen gesammelt werden.
Da GraphIT auf MediaWiki/WikiBase aufsetzt, können wir einfach eine Wiki-Seite für einen Kurs erstellen, auf der mithilfe von [https://www.w3.org/TR/sparql11-query/ SPARQL]-Queries Informationen zum Kurs visualisiert werden.


{| class="mw-collapsible wikitable" style="margin:"auto"
{| class="mw-collapsible wikitable" style="margin:"auto"
Line 123: Line 127:
|- style="color:gray"
|- style="color:gray"
| [[File:Wikibase-Widgets-Screenshot.png|thumb|500px|center]]
| [[File:Wikibase-Widgets-Screenshot.png|thumb|500px|center]]
|Die Kursseite zur Vorlesung "Multimedia Technology" im Wintersemester 25/26. Hier kann man sehen, in welcher Art der Graph im Rahmen einer Lehrveranstaltung genutzt wird. Zum Beispiel werden SPARQL-Queries genutzt um Graphstrukturen abzubilden.
|Die Kursseite zur Vorlesung "Multimedia Technology" im Wintersemester 25/26. Hier kann man sehen, in welcher Art der Graph im Rahmen einer Lehrveranstaltung genutzt wird. Zum Beispiel werden SPARQL-Queries genutzt um einen Zeitplan oder zentrale Themen anzuzeigen.
|}  
|}  


Um Lerninhalte einzupflegen muss man einzelne Items miteinander verlinken.
Jedem Item können zusätzliche Ressourcen angehängt werden, die Studierende selbständig bearbeiten oder explorieren können.


&rarr; Arbeit mit dem Graphen über einzelne Items
Hierzu kann man die jeweilige Wiki-Seite nutzen:
 
Um einzelne Items miteinander zu verlinken, kann man die jeweilige Wiki-Seite nutzen:


{| class="mw-collapsible wikitable" style="margin:"auto"
{| class="mw-collapsible wikitable" style="margin:"auto"
Line 136: Line 140:
|- style="color:gray"
|- style="color:gray"
| [[File:Example-Item.png|thumb|500px|center]]
| [[File:Example-Item.png|thumb|500px|center]]
| Screenshot eines Items, das einen Lerninhalt darstellt. Andere Items können über ''Properties'' verlinkt werden.  
| Screenshot eines Items, das einen Lerninhalt darstellt. Andere Items können über ''Properties'' verlinkt werden, (z.B. Ressourcen oder Lernmaterialien zum jeweiligen Thema)
|}  
|}  


* wachsender Graph = kompliziertere Strukture, stärkere interne Vernetzung, etc. = umständlich
Items können auch als strukturierende Items genutzt werden, um beispielsweise eine Studienleistung oder ein Übungblatt zu repräsentieren
 
{| class="mw-collapsible wikitable" style="margin:auto"
|-
! colspan="2" | '''[[Item:Q354|Quiz: Bresenham]]'''
|- style="color:gray"
| [[File:Screenshot-Quiz.png|thumb|500px|center]]
| Screenshot eines Quiz-Items, das verschiedene Lerninhalte [[Property:P14|beinhaltet]] und auf ein einfaches Quiz verlinkt. Studierende können diese Items abhaken und damit ihre Fortschritt markieren.
|}


'''&rarr; DESWEGEN'''
Daraus ergibt sich ein wachsender Graph:
* große Menge an Daten
* komplizierte Strukturen
* starke interne Vernetzung
* Interaktion und Wartung ist umständlich


{| class="mw-collapsible wikitable" style="margin:"auto"
{| class="mw-collapsible wikitable" style="margin:" auto"
|-
|-
! colspan="2" | '''[https://test.graphit.ur.de/app/src/pages/tableEditor/ TableEditor]'''
! colspan="2" | [https://tinyurl.com/23oxregx Query]
|- style="color:gray"
|- style="color:gray"
| [[File:Table-Editor-Screenshot2.png|thumb|left|500px|Screenshot des Table Editors]]
| [[File:Screenshot MMT24WS.png|thumb|500px|center|Screenshot des Kurses "Multimedia Technology aus dem Wintersemester 24/25"]]
| Ein eigenes Frontend, mit dem Items abhängig und unabhängig voneinander bearbeitet werden können. Statements (Property-Item-Paare) können zwischen Items erstellt, übertragen, kopiert und gelöscht werden.
| Eine Query, die alle Items anzeigt, die in einer Session des Kurses "Multimedia Technology" aus dem Wintersemester 25/26 besprochen wurden. Items sind farblich so kodiert, dass verschiedene Überthemen voneinander unterschieden werden können.
|}  
|}


* Bearbeitung mehrerer Items gleichzeitig
* dezidierter Editor um Verknüpfungen zwischen Items zu erstellen, zu ändern, zu kopieren, ...
* aktive Weiterentwicklung in Tandem mit Nutzung -> welche Nutzungsmöglichkeiten werden wirklich gebraucht, ...


'''&rarr; DESWEGEN:'''


Am Ende ergibts sich daraus ein komplexes Netzwerk:
{| class="mw-collapsible wikitable" style="margin:"auto"
{| class="mw-collapsible wikitable" style="margin:"auto"
|-
|-
! colspan="2" | [https://tinyurl.com/23oxregx Query]
! colspan="2" | '''[https://test.graphit.ur.de/app/src/pages/tableEditor/ TableEditor]'''
|- style="color:gray"
|- style="color:gray"
| [[File:Screenshot MMT24WS.png|thumb|500px|center|Screenshot des Kurses "Computergrafik und Bildverarbeitung"]]
| [[File:Table-Editor-Screenshot2.png|thumb|left|500px|Screenshot des Table Editors]]
| Ein eigenes Frontend, mit dem Items abhängig und unabhängig voneinander bearbeitet werden können. Statements (Property-Item-Paare) können zwischen Items erstellt, übertragen, kopiert und gelöscht werden.
| Ein eigenes Frontend, mit dem Items abhängig und unabhängig voneinander bearbeitet werden können. Statements (Property-Item-Paare) können zwischen Items erstellt, übertragen, kopiert und gelöscht werden.
|}  
|}  
...


* Bearbeitung mehrerer Items gleichzeitig
* dedizierter Editor, um Verknüpfungen zwischen Items zu erstellen, zu ändern, und zu kopieren
* aktive Weiterentwicklung in Tandem mit Nutzung
==== ...für Studierende ====
==== ...für Studierende ====
Studierende können über ein eigenes User-Item eigene Verknüpfungen zu Items erstellen und damit Interessen, Vorkenntnisse, bzw. Fortschritte dokumentieren.
Studierende können über ein User-Item eigene Verknüpfungen zu Items erstellen und damit Interessen, Vorkenntnisse oder Fortschritte dokumentieren.


{| class="mw-collapsible wikitable" style="margin:"auto"
{| class="mw-collapsible wikitable" style="margin:"auto"
Line 175: Line 188:
|- style="color:gray"
|- style="color:gray"
| [[File:Screeshot-User-Item.png|thumb|500px|center]]
| [[File:Screeshot-User-Item.png|thumb|500px|center]]
| Screenshot eines User Items, mit dem Studierende mit dem Graphen interagieren können.
| Screenshot eines User Items, mit dem Studierende mit dem Graphen interagieren können. Sichtbar sind zusätzlich Qualifier, die Properties weitere Informationen hinzufügen (z.B.: das Datum einer Markierung)
|}  
|}  


* umständliches editieren
&rarr; wieder kann die Graphstruktur abgefragt werden um diese Verbindungen sichtbar zu machen:
* -> eigene Frontends gebaut, benötigen User-Page
{| class="wikitable mw-collapsible" style="margin:"auto"
{| class="wikitable" style="margin:"auto"
|-
|-
! colspan="2" | '''[[User:Max_Mustermann| User-Page: Max Mustermann ]]'''
! colspan="2" | '''[[Student_Use| Nutzer-Queries ]]'''
|- style="color:gray"
|- style="color:gray"
| [[File:Screenshot-UserPage-MaxMustermann.png|thumb|400px|center]]
| [[File:Screenshot-UserPage-MaxMustermann.png|thumb|500px|center]]
| Screenshot einer User-Page auf der das eigene User-Item verlinkt wird.
| Screenshot einer Seite mit nutzerspezifischen Queries. Sie enthält einige beispielhafte Queries um Nutzenden dynamisch ihre Interaktion mit dem Graphen anzuzeigen.
|}  
|}  


Um das Bearbeiten des Graphens zugänglicher, benutzerfreundlicher und übersichtlicher zu machen, wurde eine bearbeitbare Graphvisualisierung implementiert.
 
...
Um das Bearbeiten des Graphens zugänglicher, benutzerfreundlicher und übersichtlicher zu machen, wurde eine bearbeitbare Graphvisualisierung implementiert
{| class="wikitable" style="margin:"auto"
{| class="wikitable mw-collapsible" style="margin:" auto"
|-
|-
! colspan="2" | '''[https://test.graphit.ur.de/app/src/pages/selectionTools/ Graph Editor]'''
! colspan="2" | '''[https://test.graphit.ur.de/app/src/pages/selectionTools/ Graph Editor]'''
|- style="color:gray"
|- style="color:gray"
| [[File:Visual-Editor-screenshot.png|thumb|left|500px|Screenshot des Graph Editors]]
| [[File:Visual-Editor-screenshot.png|thumb|left|500px|Screenshot des Graph Editors]]
| Ein eigenes Frontend, mit dem der komplette Graph eines Kurses angezeigt wird. Hier können Items markiert ([[Property:P12|has completed]], [[Property:P23|interesed in]] und Lernpfade erkundet werden. Zusätzlich werden Informationen und Ressourcen zu Items angezeigt und es sind verschiedene Selektionsmöglichkeiten vorhanden um das Editieren zu erleichtern.
| Ein eigenes Frontend, mit dem der komplette Graph eines Kurses angezeigt wird. Hier können Items markiert ([[Property:P12|has completed]], [[Property:P23|interested in]]) und Lernpfade erkundet werden. Zusätzlich werden Informationen und Ressourcen zu Items angezeigt. Es sind verschiedene Selektionsmöglichkeiten vorhanden um das Editieren zu erleichtern und den Graphen zu erkunden.
|}  
|}  




Aus den Markierungen von Studierenden kann man hilfreiche Abfragen erstellen. Etwa können die Interessens- und Vorkenntnisskonflikte abgebildert werden, um die geplanten Vorlesungen dynamisch auf die Studierenden anpassen zu können:
Aus den Markierungen von Studierenden kann man hilfreiche Abfragen erstellen.  


{| class="wikitable" style="margin:"auto"
{| class="wikitable" style="margin:" auto"
|-
|-
! Eine Graph, der die Interessen und Vorkenntnisse von Studierenden anzeigt.
! Eine Graph, der die Interessen und Vorkenntnisse von Studierenden anzeigt.
|-  
|-  
|  
|
{{#widget:SPARQLquery| code=
{{#widget:SPARQLquery| code=
#defaultView:SwarmScatterChart
#defaultView:SwarmScatterChart
Line 213: Line 225:
SELECT DISTINCT ?known ?interests ?itemLabel # ?known ?interests ?item ?itemLabel  
SELECT DISTINCT ?known ?interests ?itemLabel # ?known ?interests ?item ?itemLabel  
WHERE {
WHERE {
   wd:Q1022 wdt:P14* ?item.
   wd:Q1986 wdt:P14* ?item.
   OPTIONAL {
   OPTIONAL {
     SELECT ?item ?itemLabel (COUNT(DISTINCT ?student) as ?known) WHERE {
     SELECT ?item ?itemLabel (COUNT(DISTINCT ?student) as ?known) WHERE {
Line 231: Line 243:
} | height=25em
} | height=25em
}}
}}
|-
| colspan="2" | [https://tinyurl.com/2a68x2sh Query-Ergebnis]
|}  
|}  
<small> Die angezeigt Query-Visualisierung wurde für diese Abfrage erstellt und ist nicht Teil der normalen Wikibase-Views </small>
<small>(Die angezeigte Visualisierung wurde von uns für diese Abfrage erstellt und ist nicht Teil der normalen Wikibase-Visualisierungen)</small>
 
{{Note|type=info|text=Alle Daten können mit existierenden Tools [https://www.mediawiki.org/wiki/Wikibase/Importing importiert] und [https://www.mediawiki.org/wiki/Extension:Wikibase_Export exportiert] werden}}


==== ...zur Studiengangsplanung ====
==== ...zur Studiengangsplanung ====
Line 268: Line 284:
|-
|-
|}
|}
'''Möglichkeit:'''
* Informationen möglichst zugänglich darstellen


* Informationen zugänglich darstellen
* Aufzeigen von Interaktion von Kursen miteinander
* Aufzeigen von Interaktion von Kursen miteinander
** Lerninhalte werden in mehreren Lehrveranstaltungen besprochen
** Lerninhalte werden in mehreren Lehrveranstaltungen besprochen
Line 275: Line 293:
** Lernziele setzen und geziehlt Kurse besuchen
** Lernziele setzen und geziehlt Kurse besuchen
* Lehrplanung dokumentieren
* Lehrplanung dokumentieren


{| class="wikitable"
{| class="wikitable"
Line 317: Line 334:
}}
}}
| style="color:gray" | '''Lerninhalte''' die in mehreren Kursen angesprochen werden. Hier wird Wissen wiederholt, das Studierende möglicherweise bereits wissen.  
| style="color:gray" | '''Lerninhalte''' die in mehreren Kursen angesprochen werden. Hier wird Wissen wiederholt, das Studierende möglicherweise bereits wissen.  
</br>
<br>
Mithilfe des Graphen können diese Überlappungen erkundet werden. In Absprache mit Studierenden (zusätzlich über Graphmakerierungen von Vorkenntnissen/Interessen) kann dynamisch entschieden werden, ob diese Lerninhalte wiederholt oder übersprungen werden.  
Mithilfe des Graphen können diese Überlappungen erkundet werden. In Absprache mit Studierenden (zusätzlich über Graphmakerierungen von Vorkenntnissen/Interessen) kann dynamisch entschieden werden, ob diese Lerninhalte wiederholt oder übersprungen werden.  
|-
| colspan="2" | [https://tinyurl.com/24aodakm Query-Ergebnis]
|}
|}


Line 334: Line 353:
WHERE {
WHERE {
   # List of courses to compare
   # List of courses to compare
   BIND(wd:Q932 as ?course2)
   BIND(wd:Q932 as ?course1)
   BIND(wd:Q1330 as ?course1)
   BIND(wd:Q1330 as ?course2)
    
    
   # get dependencies of course1 only in course2 (Vorwissen zu course1)
   # get dependencies of course1 only in course2 (Vorwissen zu course1)
Line 359: Line 378:
} | height=30em
} | height=30em
}}
}}
| style="color:gray" | '''Lerninhalte''' die als Vorwissen (rot) für einen Kurs (grün) vorrausgesetzt werden. Sie werden nicht mehr direkt in diesem Kurs angesprochen, aber Kursinhalte bauen auf ihnen auf.
| style="color:gray" | '''Lerninhalte''' die als Vorwissen (rot) für einen Kurs (grün) vorausgesetzt werden. Sie werden nicht mehr direkt in diesem Kurs angesprochen, aber Kursinhalte bauen auf ihnen auf.
|-
| colspan="2" | [https://tinyurl.com/2dx2g5ap Query-Ergebnis]
|}
|}


Line 365: Line 386:
* sehr große, unübersichtliche Datenstrukturen
* sehr große, unübersichtliche Datenstrukturen
* noch keine Versionierung
* noch keine Versionierung
* Abiguität von Lerninhalten (z.B.: unterschiedliche Definitionen/Verstädnis von Lehrpersonal)
* Ambiguität von Lerninhalten (z.B.: unterschiedliche Definitionen/Verständnis von Lehrpersonal)
* ...
* ...


=== Fazit ===
== Fazit ==


Aktueller Stand:
==== Aktueller Stand ====
** Testen des Konzepts zusätzlich zu verschiedenen Vorlesungen an der Universität Regensburg
* Testen des Konzepts zusätzlich zu verschiedenen Vorlesungen an der Universität Regensburg
** Dynamische Anpassung der Graphstruktur, wenn es sich Anforderungen ändern
** Dynamische Anpassung der Graphstruktur, wenn es sich Anforderungen ändern
** Aufbau des Datensatzes während Einsatz
** Aufbau des Datensatzes während Einsatz
** Validierung durch Bachelorarbeiten und formlosen Evaluationen:
* Validierung durch Bachelorarbeiten und formlosen Evaluationen:
*** Entwicklung neuerartiger Selektionsmöglichkeiten
** Entwicklung und Evaluation neuerartiger Selektionsmöglichkeiten
*** Usabilitystudie einer Graphvisualisierung
** Qualitative Usabilitystudie einer Graphvisualisierung
*** Feedback und Diskussionen
** formloses Feedback und Diskussionen


&rarr; Interesse von Studierenden und Lehrpersonal am Konzept
&rarr; Interesse von Studierenden und Lehrpersonal am Konzept


&rarr; inhärent komplizierte Datenstruktur


Aktuelle Probleme:
==== Offene Fragen ====
* inhärent komplizierte Datenstruktur
* Wie Datenvalidierung und -erweiterung schneller und übersichtlicher gestalten?
** Datenvalidierung und -erweiterung schnell unübersichtlich
* Wie Dateninteraktion und Datenmenge zugänglicher zu machen?
** Interaktion mit Daten kann trotz dezidierter Frontends schnell überfordern
* Andere sinnvolle Anwendungsbereiche?
* ...
* ...


&rarr; viele offene Fragen


Lust auf eine Kooperation? → [mailto:raphael.wimmer@ur.de raphael.wimmer@ur.de]
----
----


<!--
== Outline ==
== Outline ==
Für jeden Abschnitt/Link einen guten Screenshot verwenden
Für jeden Abschnitt/Link einen guten Screenshot verwenden
Line 427: Line 450:
## Viele offene Fragen -> Ziel ist auch, Fragen aufzuwerfen
## Viele offene Fragen -> Ziel ist auch, Fragen aufzuwerfen
## Was ist sinnvoll? Welche Fragen würde man damit beantworten?
## Was ist sinnvoll? Welche Fragen würde man damit beantworten?
-->

Latest revision as of 11:35, 10 September 2025

💡 Diese Seite dient primär als Materialsammlung für die Live-Demo von GraphIT auf der DELFI 2025. Sie können sie aber auch auf eigene Faust explorieren.


Überblick

A simple example graph about maths
  • GraphIT ist eine Plattform zur Arbeit mit Abhängigkeitsgraphen um Studiengänge, Kurse und den Fortschritt von Lernenden zu modellieren
  • GraphIT setzt auf WikiBase auf
  • wir entwickeln die Plattform explorativ seit 2022 (gleichzeitig testen und evaluieren)
  • wo notwendig entwickeln wir eigene Frontends und Interaktionsmöglichkeiten

Ausgangspunkt: Probleme beim Studiengangsdesign

  • aktuell one-size-fits-all Studiengänge, aber heterogene Vorkenntnisse und Ziele
  • Überarbeitung und Erstellung von Studiengängen dauert lange
  • Dozierende wissen oft nicht, was in anderen Kursen passiert

GraphIT

  • wir modellieren Wissen als Netzwerk von Lerninhalten und deren Abhängigkeiten
  • Themen bauen aufeinander auf ("B depends on A")
  • Reihe an Vorkenntnisse bildet Lernpfad
Begriffe/Definitionen in GraphIT
Item Ein Knoten, der mit anderen Knoten verlinkt wird. Z.b.: ein Lerninhalt oder eine Person
Property Eine Kante, die die Beziehung oder Abhängigkeiten verschiedener Items abbildet
Statements Item-Property-Item Verknüpfugen. Z.b.: Matrix Multiplication - depends on → Matrix
Qualifier Annotationen einer Kante


Ein Lernpfad zu einem Item (hier: Virtual Cameras)

Ein Item oder Lerninhalt baut darauf auf, dass man ein vorheriges Thema verstanden hat. Sie sind voneinander abhängig.


Daraus ergibt sich ein Lernpfad, dem man vom einfachsten zum schwersten Thema folgen kann, um das eigene Wissen allmählich zu erweitern. Beispielweise ist hier Points and Vectors das Grunditem, auf dem alle nächsten Themen aufbauen.

Query-Ergebnis

→ Items (Knoten) im Graph: Topic, User (Studierende oder Dozierende), Session, Course, Ressource, ... (kein rigides Schema!)

→ wir können durch Analyse des Graphen zentrale Themen, Lernpfade, Lücken und Überlappungen finden

→ Direkter Vorteil: dynamischeres Planen und Halten von Lehrveranstaltungen

Anwendung

...für Dozierende

Dozierende haben die Möglichkeit, Kurse zu erstellen, und ihnen (existierende) Lerninhalte zuweisen, die an einem bestimmten Termin besprochen werden. Dabei entsteht eine Graphstruktur, die genutzt werden kann um Strukturen aufzuzeigen, komplexe Abfragen zu stellen und Interaktionen zu tracken.

Item: MMT 25WS
Course-Item.png
Das Item zur Vorlesung "Multimedia Technology" im Wintersemester 25/26. Hier kann man die Datenstruktur sehen, die genutzt wird um einen Kurs auzubauen und benötigte Lerninhalte oder strukturelle Items zu verlinken.


Da GraphIT auf MediaWiki/WikiBase aufsetzt, können wir einfach eine Wiki-Seite für einen Kurs erstellen, auf der mithilfe von SPARQL-Queries Informationen zum Kurs visualisiert werden.

Kursseite: Multimedia Technology 25 WS
Wikibase-Widgets-Screenshot.png
Die Kursseite zur Vorlesung "Multimedia Technology" im Wintersemester 25/26. Hier kann man sehen, in welcher Art der Graph im Rahmen einer Lehrveranstaltung genutzt wird. Zum Beispiel werden SPARQL-Queries genutzt um einen Zeitplan oder zentrale Themen anzuzeigen.

Um Lerninhalte einzupflegen muss man einzelne Items miteinander verlinken. Jedem Item können zusätzliche Ressourcen angehängt werden, die Studierende selbständig bearbeiten oder explorieren können.

Hierzu kann man die jeweilige Wiki-Seite nutzen:

Item: RGB
Example-Item.png
Screenshot eines Items, das einen Lerninhalt darstellt. Andere Items können über Properties verlinkt werden, (z.B. Ressourcen oder Lernmaterialien zum jeweiligen Thema)

Items können auch als strukturierende Items genutzt werden, um beispielsweise eine Studienleistung oder ein Übungblatt zu repräsentieren

Quiz: Bresenham
Screenshot-Quiz.png
Screenshot eines Quiz-Items, das verschiedene Lerninhalte beinhaltet und auf ein einfaches Quiz verlinkt. Studierende können diese Items abhaken und damit ihre Fortschritt markieren.

Daraus ergibt sich ein wachsender Graph:

  • große Menge an Daten
  • komplizierte Strukturen
  • starke interne Vernetzung
  • Interaktion und Wartung ist umständlich
Query
Screenshot des Kurses "Multimedia Technology aus dem Wintersemester 24/25"
Eine Query, die alle Items anzeigt, die in einer Session des Kurses "Multimedia Technology" aus dem Wintersemester 25/26 besprochen wurden. Items sind farblich so kodiert, dass verschiedene Überthemen voneinander unterschieden werden können.


→ DESWEGEN:

TableEditor
Screenshot des Table Editors
Ein eigenes Frontend, mit dem Items abhängig und unabhängig voneinander bearbeitet werden können. Statements (Property-Item-Paare) können zwischen Items erstellt, übertragen, kopiert und gelöscht werden.
  • Bearbeitung mehrerer Items gleichzeitig
  • dedizierter Editor, um Verknüpfungen zwischen Items zu erstellen, zu ändern, und zu kopieren
  • aktive Weiterentwicklung in Tandem mit Nutzung

...für Studierende

Studierende können über ein User-Item eigene Verknüpfungen zu Items erstellen und damit Interessen, Vorkenntnisse oder Fortschritte dokumentieren.

User: Max Mustermann
Screeshot-User-Item.png
Screenshot eines User Items, mit dem Studierende mit dem Graphen interagieren können. Sichtbar sind zusätzlich Qualifier, die Properties weitere Informationen hinzufügen (z.B.: das Datum einer Markierung)

→ wieder kann die Graphstruktur abgefragt werden um diese Verbindungen sichtbar zu machen:

Nutzer-Queries
Screenshot-UserPage-MaxMustermann.png
Screenshot einer Seite mit nutzerspezifischen Queries. Sie enthält einige beispielhafte Queries um Nutzenden dynamisch ihre Interaktion mit dem Graphen anzuzeigen.


Um das Bearbeiten des Graphens zugänglicher, benutzerfreundlicher und übersichtlicher zu machen, wurde eine bearbeitbare Graphvisualisierung implementiert

Graph Editor
Screenshot des Graph Editors
Ein eigenes Frontend, mit dem der komplette Graph eines Kurses angezeigt wird. Hier können Items markiert (has completed, interested in) und Lernpfade erkundet werden. Zusätzlich werden Informationen und Ressourcen zu Items angezeigt. Es sind verschiedene Selektionsmöglichkeiten vorhanden um das Editieren zu erleichtern und den Graphen zu erkunden.


Aus den Markierungen von Studierenden kann man hilfreiche Abfragen erstellen.

Eine Graph, der die Interessen und Vorkenntnisse von Studierenden anzeigt.

Query-Ergebnis

(Die angezeigte Visualisierung wurde von uns für diese Abfrage erstellt und ist nicht Teil der normalen Wikibase-Visualisierungen)


💡 Alle Daten können mit existierenden Tools importiert und exportiert werden


...zur Studiengangsplanung

Existierende Kurse
MMT 25 WS (Multimedia Technology) Kursseite Kurs-Item
MMT 24 WS (Multimedia Technology) Kursseite Kurs-Item
ASE 24 WS (Advanced Software Engineering) Kursseite Kurs-Item
CGBV 24SS (Computergrafik und Bildverarbeitung) Kursseite Kurs-Item
WissArb 24SS (Wissenschaftliches Arbeiten) Kursseite Kurs-Item
WissArb 23WS (Wissenschaftliches Arbeiten) Kursseite Kurs-Item
CGBV 23SS (Computergrafik und Bildverarbeitung) Kursseite Kurs-Item

Möglichkeit:

  • Informationen möglichst zugänglich darstellen
  • Aufzeigen von Interaktion von Kursen miteinander
    • Lerninhalte werden in mehreren Lehrveranstaltungen besprochen
    • Lerninhalte eines Kurses sind Voraussetzung für anderen
    • Lernziele setzen und geziehlt Kurse besuchen
  • Lehrplanung dokumentieren
Überlappende Lehrninhalte

Lerninhalte die in mehreren Kursen angesprochen werden. Hier wird Wissen wiederholt, das Studierende möglicherweise bereits wissen.


Mithilfe des Graphen können diese Überlappungen erkundet werden. In Absprache mit Studierenden (zusätzlich über Graphmakerierungen von Vorkenntnissen/Interessen) kann dynamisch entschieden werden, ob diese Lerninhalte wiederholt oder übersprungen werden.

Query-Ergebnis
Vorwissen aus anderen Kursen

Lerninhalte die als Vorwissen (rot) für einen Kurs (grün) vorausgesetzt werden. Sie werden nicht mehr direkt in diesem Kurs angesprochen, aber Kursinhalte bauen auf ihnen auf.
Query-Ergebnis

Probleme:

  • sehr große, unübersichtliche Datenstrukturen
  • noch keine Versionierung
  • Ambiguität von Lerninhalten (z.B.: unterschiedliche Definitionen/Verständnis von Lehrpersonal)
  • ...

Fazit

Aktueller Stand

  • Testen des Konzepts zusätzlich zu verschiedenen Vorlesungen an der Universität Regensburg
    • Dynamische Anpassung der Graphstruktur, wenn es sich Anforderungen ändern
    • Aufbau des Datensatzes während Einsatz
  • Validierung durch Bachelorarbeiten und formlosen Evaluationen:
    • Entwicklung und Evaluation neuerartiger Selektionsmöglichkeiten
    • Qualitative Usabilitystudie einer Graphvisualisierung
    • formloses Feedback und Diskussionen

→ Interesse von Studierenden und Lehrpersonal am Konzept

→ inhärent komplizierte Datenstruktur

Offene Fragen

  • Wie Datenvalidierung und -erweiterung schneller und übersichtlicher gestalten?
  • Wie Dateninteraktion und Datenmenge zugänglicher zu machen?
  • Andere sinnvolle Anwendungsbereiche?
  • ...


Lust auf eine Kooperation? → raphael.wimmer@ur.de