# Konzeption Masterarbeit OER-Verwaltung
## Grundidee
Organisation und Erstellen von OER-Inhalten in einer Webanwendung.
**Szenario Hochschule:**
Ein Professor lehrt verschiedene Kurse im Sommersemster und Wintersemester. Zu Beginn des neuen Wintersemesters möchte er die OER-Inhalte:
- die er letztes Wintersemester benutzt hat wiederfinden
- bestehende (eigene) Inhalte verändern
- bestehende (fremde) Inhalte abändern und einbinden
- neue Inhalte einfügen (Veröffentlichung, aber auch privates speichern möglich)
- einzelne OER-Inhalte, aber auch ganze Kurse exportieren
**Szenario an Schule:**
Lehrer an der Grundschule hat alle vier Jahre das gleiche Fach.
Ähnliches Szenario: Ausbildung neuer Fachinformatiker
Rahmen der Masterarbeit: Konzept für Organisation und Erstellung erstellen; Protoyp mit eingeschränktem Umfang erstellen.
Inhaltlich gefüllt mit unseren InFi OER-Materialien
Titel:
"Webanwendung zum Verwalten und Erstellen von OER-Inhalten - Konzeption und Entwicklung eines Prototyps"
Die Webanwendung baut prinzipiell auf dem Strategie Navigator auf.
Inhalte sollen aus Github abgerufen werden.
### Verschiedene organisatorische Ebenen
Erstes Musterbeispiel: Hochschule -> Wirtschaftswissenschaften -> Investition und Finanzierung -> Investion und Finanzierung -> Investition -> Statische Verfahren -> Formeln







Die OER-Inhalte können aus der Anwendung exportiert werden zu (Formate?).
### Editor
Zum Erstellen von neuen Inhalten soll ein (Javascript?)-Editor zur Verfügung stehen. Hierzu kann ein bereits vorhandener Editor angepasst werden (z.B. Mermaid?).
Der Umfang des Editors ist zunächst nicht der Hauptfokus.
Zunächst sollen nur Texte, ggf. Diamgramme und Bilder erstellt werden können, später auch komplexere Inhalte wie H5P oder Moodle Aufgaben.
Auf Dauer ist der Editor als Alternative zu beispielsweise Lumi gedacht:

Die Möglichkeit erstellte Inhalte nur privat aufzurufen, aber auch die Inhalte für alle Nutzer zu teilen, soll gegeben sein.
### Accountsystem
Grundsätzlich möglich die Anwendung auch als Gast zu nutzen (Inhalte aufrufen), aber:
Es ist möglich einen Account zu erstellen.
Das Erstellen von neuen OER Inhalten ist nur mit Account möglich (eventuell kann das Erstellen auch als Gast mit Exportmöglichkeit möglich sein, dann aber ohne Speichern der Daten in Datenbank?).
Der Account soll den vollständigen (echten) Namen sowie eine Kontaktmöglichkeit (vermutlich Email) speichern, damit die Daten für OER Lizensierung vorhanden sind.
Außerdem wird für den Account die präferierte OER-Lizenz gespeichert (CC0 / CC BY / CC BY SA).
### Inhalte
Die Datenbank soll prinzipiell nicht mit Inhalten aus anderen OER-Datenbanken vorgefüllt werden ("nicht als Konkurrenz zu Twillo gedacht").
Aber: Ausgewählte bereits erstellte OER-Inhalte OER der Jade Hochschule (beipsielsweise Investition und Finanzierung) sollen bereits eingepflegt werden.
Außerdem können Dinge wie Lehrpläne / Kerncurricula / Modulbeschreibungen eingepflegt werden.
## Datenbank(Entwurf)
Bei Brainstorming in Kooperation mit Rico Meiner und Auszubildenden / Hilfskräfte entstanden.
Gern kopieren und selbst "basteln" ([Martin-Notation](https://de.wikipedia.org/wiki/Martin-Notation))
<!--
Autor }|..|{ Assets : erstellt
Kurs ||--o{ Lektion : hat
Lektion ||--o{ Lernobjekt : hat
Lernobjekt ||--o{ Lerneinheit : hat
-->
```mermaid
erDiagram
Assets{
string name
string typ
string value
}
Lerneinheit{
string name
}
Nutzer{
string vorname
string nachname
}
Qualifikation{
string name
}
Metadaten{
int lizenz
string version
string name
}
LernInhalt{
string name
}
LernablaufEintrag{
int typ
int nummer
int LernablaufId
int LernInhaltId
int LerneinheitId
int LernAblaufKindId
}
LernInhalt ||--|| Metadaten : hat
Metadaten ||--|| Assets : hat
Metadaten ||--|| Lerneinheit : hat
Metadaten ||--|| Lernablauf : hat
Metadaten }o--|{ Nutzer : autoren
Metadaten }o--|{ Themen : hat
Metadaten }o--|{ Schulstufe : hat
Metadaten }o--|{ Schulformen : hat
Nutzer }o--|{ Qualifikation : hat
Lerneinheit ||--o{ Lerneinheit : erbt
Lerneinheit }o--|{ Assets : hat
Assets ||--o{ Assets : erbt
Lernablauf ||--o{ Lernablauf : erbt
Lernablauf ||--|{ LernablaufEintrag : hat
LernablaufEintrag }o--o| Lernablauf : hat
LernablaufEintrag }o--o| Lerneinheit : hat
LernablaufEintrag }o--o| LernInhalt : hat
```
LernablaufEintrag
* typ
* Beschreibt den Typ auf den im Fremdschlüssel verwiesen wird (also Einheit, Inhalt oder Ablauf)
Lernablauf
Lerneinheit
* Metadaten (ggf. als eigene Tabelle)
* Baum aufbauen
Asset (OER)
* Bild (svg, png, jpg)
* Video
* Formeln
* Textpassage
* Link
> als Text
Metadaten:
* Schulform2
* dfdf
* Primarstufe
* Sek I
* Sek II
* Tertiärstufe
* Sonstiges
* Schulform (Schwierigkeit)
* Grundschule
* Hauptschule
* Realschule
* Gymnasium
* Ausbildung
* Hochschule
* Thema
* Datenbanken
* Zahlensysteme
* Investition
* Finanzierung
* etc.
* Autoren (Mehrzahl)
Erklärung Assets erbt beziehung:
Ein Asset/Lerinhalt/Lernablauf kann von einem anderen Asset/Lerinhalt/Lernablauf abgeleitet werden (also wird ein anderer Inhalt als Vorlage verwendet). Es kann auch sein, dass ein Inhalt keine Vorlage hat.
Diese Beziehung wird mit der Erbt beziehung dargestellt.
Inhalt:
Typ, String/Text (z.B. link), Tags, Metadaten
* Metadaten
* geeignet von - bis
* Thema
* Tags
* Lizenz (CC0, CC-BY, CC-BY-SA)
* Autor
## Grundlagen Projekt
**Backend**
* Programmiersprache: PHP
* Framework: Laravel
* Accountsystem: Sanctum?
* ...
**Frontend**
* HTML, CSS > Framework: Bootstrap
## Strukturüberlegungen
1. Ziel der Arbeit ("Einleitung")
2. Ist-Zustand ("Welche Konkurrenzprogramme gibt es, was fehlt diesen, was kann verbessert werden")
3. Experteninterviews
4. Soll-Zustand ("Was soll die Webanwendung genau können")
5. Technischer Überblick ("Php, Laravel, Html, Css ...")
6. Backend (Datenbanktabellen)
7. Frontend (Aufbau der Anwendung)
8. Funktionsbeispiel
9. Fazit