50
Technische Berichte Nr. 116 des Hasso-Plattner-Instituts für Softwaresystemtechnik an der Universität Potsdam Die Cloud für Schulen in Deutschland: Konzept und Pilotierung der Schul-Cloud Christoph Meinel, Jan Renz, Catrina Grella, Nils Karn, Christiane Hagedorn

Die Cloud für Schulen in Deutschland: Konzept und ... · PDF fileTechnische Berichte Nr. 116 des Hasso-Plattner-Instituts für Softwaresystemtechnik an der Universität Potsdam Die

Embed Size (px)

Citation preview

Technische Berichte Nr. 116

des Hasso-Plattner-Instituts für Softwaresystemtechnik an der Universität Potsdam

Die Cloud für Schulen in

Deutschland:

Konzept und Pilotierung

der Schul-Cloud

Christoph Meinel, Jan Renz, Catrina Grella, Nils Karn, Christiane Hagedorn

Technische Berichte des Hasso-Plattner-Instituts für Softwaresystemtechnik an der Universität Potsdam | 116

Christoph Meinel | Jan Renz | Catrina Grella | Nils Karn | Christiane Hagedorn

Die Cloud für Schulen in Deutschland

Konzept und Pilotierung der Schul-Cloud

Universitätsverlag Potsdam

Bibliografische Information der Deutschen Nationalbibliothek Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über http://dnb.dnb.de/ abrufbar.

IN KOOPERATION MIT

Das diesem Bericht zugrundeliegende Vorhaben „Cloud-Strukturen & -Dienste für Schulen: Konzepterstellung einer Schul-Cloud – Pilotprojekt“ wurde mit Mitteln des Bundesministeriums für Bildung und Forschung gefördert. Die Verantwortung für den Inhalt dieser Veröffentlichung liegt bei den Autor/innen. Universitätsverlag Potsdam 2017 http://verlag.ub.uni-potsdam.de/ Am Neuen Palais 10, 14469 Potsdam Tel.: +49 (0)331 977 2533 / Fax: 2292 E-Mail: [email protected] Die Schriftenreihe Technische Berichte des Hasso-Plattner-Instituts für Softwaresystemtechnik an der Universität Potsdam wird herausgegeben von den Professoren des Hasso-Plattner-Instituts für Softwaresystemtechnik an der Universität Potsdam. ISSN (print) 1613-5652 ISSN (online) 2191-1665 Das Manuskript ist urheberrechtlich geschützt. Druck: docupoint GmbH Magdeburg ISBN 978-3-86956-397-8 Zugleich online veröffentlicht auf dem Publikationsserver der Universität Potsdam: URN urn:nbn:de:kobv:517-opus4-103858 http://nbn-resolving.de/urn:nbn:de:kobv:517-opus4-103858

Zusammenfassung

Die digitale Entwicklung durchdringt unser Bildungssystem, doch Schulensind auf die Veränderungen kaum vorbereitet: Überforderte Lehrer/innen,infrastrukturell schwach ausgestattete Unterrichtsräume und unzureichendgewartete Computernetzwerke sind keine Seltenheit. Veraltete Hard- und Softwareerschweren digitale Bildung in Schulen eher, als dass sie diese ermöglichen:Ein zukunftssicherer Ansatz ist es, die Rechner weitgehend aus den Schulen zuentfernen und Bildungsinhalte in eine Cloud zu überführen.

Zeitgemäßer Unterricht benötigt moderne Technologie und eine zukunfts-orientierte Infrastruktur. Eine Schul-Cloud1 kann dabei helfen, die digitaleTransformation in Schulen zu meistern und den fächerübergreifenden Unterrichtmit digitalen Inhalten zu bereichern. Den Schüler/innen und Lehrkräften kann sieviele Möglichkeiten eröffnen: einen einfachen Zugang zu neuesten, professionellgewarteten Anwendungen, die Vernetzung verschiedener Lernorte, Erleichterungvon Unterrichtsvorbereitung und Differenzierung. Die Schul-Cloud bietet Flexibili-tät, fördert die schul- und fächerübergreifende Anwendbarkeit und schafft einewichtige Voraussetzung für die gesellschaftliche Teilhabe und Mitgestaltung derdigitalen Welt. Neben den technischen Komponenten werden im vorliegendenBericht ausgewählte Dienste der Schul-Cloud exemplarisch beschrieben undweiterführende Schritte aufgezeigt.

Das in Zusammenarbeit mit zahlreichen Expertinnen und Experten am Hasso-Plattner-Institut (HPI) entwickelte und durch das Bundesministerium für Bildungund Forschung (BMBF) geförderte Konzept einer Schul-Cloud stellt eine wichtigeGrundlage für die Einführung Cloud-basierter Strukturen und -Dienste imBildungsbereich dar. Gemeinsam mit dem nationalen Excellence-SchulnetzwerkMINT-EC als Kooperationspartner startet ab sofort die Pilotphase. Aufgrund desmodularen, skalierbaren Ansatzes der Schul-Cloud kommt dem infrastrukturellenPrototypen langfristig das Potential zu, auch über die begrenzte Anzahl anPilotschulen hinaus bundesweit effizient eingesetzt zu werden.

Keywords. Digitale Bildung, Schule, IT-Infrastruktur, Cloud

1https://hpi.de/schul-cloud.

5

Abstract

Digitalization is transforming our education system. At the same time, schools areinadequately prepared to meet the changes taking place. Overwhelmed teachers,poorly equipped infrastructures in the classroom, and insufficient computernetworks reflect the current situation. Instead of facilitating digital education,outdated hard- and software only hinder innovative teaching and learning. A“future-proof” approach involves the transfer of educational content in schoolsfrom the computer to the cloud.

Modern education requires state-of-the-art technology and a future-orientedinfrastructure. The School Cloud2 can help to achieve digital transformation inschools and to enhance interdisciplinary lessons with digital content. Such acloud opens up new possibilities for pupils and teachers: easy access to the latest,professionally maintained applications; interconnectivity of different learningvenues; optimal lesson preparation; and differentiation. School Cloud offersflexibility, promotes cross-curricular and interdisciplinary application, and fulfillsan important prerequisite for social participation in creating the digital world. Inaddition to the technical components, this report describes selected School Cloudservices by way of example and outlines further steps.

Developed in cooperation with the experts at Hasso Plattner Institute (HPI)and funded by the Federal Ministry of Education and Research (BMBF), SchoolCloud provides an important foundation for the introduction of cloud-basedinfrastructures and educational services. The pilot phase—in conjunction with theexcellence school network MINT–EC—has already begun. By reason of its modular,scalable approach, School Cloud’s infrastructural prototype has the long-termpotential of efficient deployment—extending far beyond the limited number ofpilot schools and across the nation.

Keywords. Digital education, school, IT-infrastructure, cloud

2https://hpi.de/schul-cloud.

6

Vorwort

Um Kinder schon im Schulalter auf das Leben in einer zunehmend digitalisiertenWelt vorzubereiten, ist ein zeitgemäßer Unterricht mit moderner Technologie unddigitalen Inhalten unabdingbar. Während im Alltag digitale Geräte allgegenwärtigsind, stellt ihr Einsatz viele Schulen noch vor große Herausforderungen. Die Ein-richtung einer Schul-Cloud bietet hierfür einen zukunftssicheren Ansatz, mit demJugendliche fächerübergreifend auf professionell gewarteten IT-Systemen neuestedigitale Lehrangebote nutzen können. An verschiedenen Lernorten braucht es ledig-lich internetfähige Anzeige- sowie Eingabegeräte, um Zugang zu allen verfügbarendigitalen Bildungsangeboten zu erhalten. Vorhandene und künftige Lernmodulelassen sich problemlos integrieren und werden leicht auffindbar bereitgestellt. DasHasso-Plattner-Institut entwickelt daher eine Schul-Cloud – unter Förderung durchdas Bundesministerium für Bildung und Forschung sowie in Kooperation mit demnationalen Excellence-Schulnetzwerk MINT-EC. Die Umsetzung des Pilotprojektsstellt im föderal strukturierten System der Bundesrepublik Deutschland eine gesell-schaftliche Herausforderung dar, die unter Berücksichtigung aller Akteure sowieAspekte diskutiert und in abgestimmten Schritten angegangen wird. Die Komple-xität ist nicht zu unterschätzen, das Potenzial dieses innovativen Ansatzes zugleichenorm. Nutzen wir es, indem wir uns digitalen Lehr- und Lernprozessen öffnenund diese systematisch weiterentwickeln.

Prof. Dr. Christoph MeinelInstitutsdirektor & CEO Hasso-Plattner-Institut

Das nationale Excellence-Schulnetzwerk MINT-EC hat sich der Vernetzung undWeiterentwicklung vorbildlicher und leistungsstarker Gymnasien mit MINT-Profilauf höchstem Niveau verschrieben. Das bundesweite Pilotprojekt „Schul-Cloud“bietet dem MINT-EC-Netzwerk eine besondere Möglichkeit, die Digitalisierungim schulischen Bereich zu entwickeln, voranzutreiben und zeitgemäße Cloud-Technologien zu erproben. Dabei freuen wir uns, mit dem Hasso-Plattner-Instituteinen technisch versierten und hochprofessionellen Partner an unserer Seite zuhaben. Für unsere Schulen wird es darauf ankommen, eine Cloud-Infrastrukturzu erhalten, die bedienerfreundlich, nutzbringend und vor allem pädagogischsinnvoll einsetzbar ist. Das MINT-EC-Netzwerk wird in den einzelnen Projektpha-sen das tun, was es am besten kann: Intensiven fachlichen Austausch auf Ebeneder Schulleitungen und Lehrkräfte sowie die Identifizierung und Verbreitung vonBest-Practice in der Organisation, der Weiterbildung und beim Unterricht zu orga-nisieren. Je schneller dabei die Vorteile der Schul-Cloud der einzelnen Lehrkraftdeutlich werden, desto schneller können Vorbehalte überwunden und der „digitaleRückstand“ zu anderen europäischen Ländern verringert werden. Wir freuen unsauf die Umsetzung dieses anspruchsvollen und spannenden Projekts, das geeignetist, das „I“ in MINT nachhaltig zu stärken!

Wolfgang GollubVorstandsvorsitzender MINT-EC

7

Inhaltsverzeichnis

1 Die Schul-Cloud im Überblick 11

2 Die Cloud im Spannungsfeld von Lernpraxis, Schulorganisation undPolitik 122.1 Vom Computerraum zum vernetzten Lernen in der Schul-Cloud . . 12

2.2 Schulpolitischer Kontext . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.3 Die größten Herausforderungen und Lösungsansätze für digitaleBildung an Schulen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.4 Zielgruppe für die Pilotphase . . . . . . . . . . . . . . . . . . . . . . . 17

2.5 Anwendungsszenarien der Schul-Cloud . . . . . . . . . . . . . . . . . 17

3 Technische Aspekte der Schul-Cloud 193.1 Die Schul-Cloud als Mehrschichtenmodell . . . . . . . . . . . . . . . 19

3.1.1 Serverseitige Virtualiserungstechnologien . . . . . . . . . . . 20

3.1.2 IaaS – Infrastructure as a Service . . . . . . . . . . . . . . . . . 21

3.1.3 PaaS – Platform as a Service / CaaS – Container as a Service 21

3.1.4 SaaS – Software as a Service . . . . . . . . . . . . . . . . . . . 22

3.2 Tech-Stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.2.1 JavaScript / Node.js . . . . . . . . . . . . . . . . . . . . . . . . 26

3.2.2 ReactJS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.2.3 Feathers / Express . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.2.4 MongoDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.2.5 PostgreSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.2.6 Elasticsearch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.2.7 Docker und Kubernetes . . . . . . . . . . . . . . . . . . . . . . 27

3.3 Skalierbarkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3.4 Continuous Integration & Development . . . . . . . . . . . . . . . . . 28

3.5 Privacy & Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3.5.1 Datenschutz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3.5.2 Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

4 Dienste und Komponenten der Schul-Cloud 324.1 Inhalte-Dienst . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

4.1.1 Datenmodell . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4.1.2 Katalogisieren von Inhalten . . . . . . . . . . . . . . . . . . . . 34

4.1.3 Such- und Empfehlungsdienst . . . . . . . . . . . . . . . . . . 35

4.2 Cloud-kompatible Erstellung von Lehrmaterialien . . . . . . . . . . . 35

4.3 Benachrichtigungsdienst . . . . . . . . . . . . . . . . . . . . . . . . . . 35

9

Inhaltsverzeichnis

4.4 Kalender . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

4.5 Dateimanagement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

4.6 Hausaufgaben und sonstige Aktivitäten . . . . . . . . . . . . . . . . . 40

4.7 Kollaboration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

4.8 Learning Analytics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

4.9 Single Sign-on – Ein Login für alle Dienste . . . . . . . . . . . . . . . 41

4.9.1 Registrierungsprozess . . . . . . . . . . . . . . . . . . . . . . . 41

4.10 Schul-Cloud Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

4.11 Webclient/Frontend . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

4.12 Mobile native Apps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5 Nächste Schritte auf dem Weg zur Schul-Cloud 455.1 Implementierung und Testung . . . . . . . . . . . . . . . . . . . . . . 45

5.2 Einbeziehung der 25 Pilotschulen aus dem MINT-EC-Netzwerk . . . 46

5.3 Bildungswissenschaftliche Begleitung . . . . . . . . . . . . . . . . . . 47

10

1 Die Schul-Cloud im Überblick

Die Schul-Cloud ist ein deutschlandweites, vom Bundesministerium für Bildungund Forschung (BMBF) gefördertes Gemeinschaftsprojekt des Hasso-Plattner-Instituts (HPI) und des Vereins mathematisch-naturwissenschaftlicher Excellence-Center an Schulen e.V. (MINT-EC). Die Schul-Cloud will webbasierte Lerninhaltesowie Anwendungen über einen Zugang zur Verfügung stellen. Digitale Bildungs-inhalte werden somit nicht mehr isoliert auf einzelnen Rechnern platziert, sonderndurch die Schul-Cloud von überall aus abrufbar. Das schafft Flexibilität, fördertdie Anwendbarkeit und vernetzt unterschiedliche Lernorte (Schule, unterwegs,Zuhause).

Für die Schulen bedeutet diese Lösung, dass sie keine eigenen Rechner und Netz-werke anschaffen, installieren, konfigurieren und administrieren müssen. Vielmehrwerden dort lediglich einfache internetfähige Anzeige- und Eingabegeräte benötigt,die moderne Webseiten darstellen können, sowie eine gute Internetverbindung miteinem WLAN-Zugang. Neben dem Wegfall der Beschaffung von Schulrechnernliegt ein Vorteil vor allem in den eingesparten Administrationsaufgaben, die heu-te aufgrund fehlender Administrator/innen überwiegend nicht professionell unddadurch oft fehlerhaft durchgeführt werden.

Ziele der Schul-Cloud

• Einfachen Zugang zu digitalen Lehr- und Lerninhalten ermöglichen

• Lernbegleitung von Schüler/innen

• Grundlage bilden für ein reichhaltiges Angebot an digitalen Inhalten sowieAnwendungen

• Unterstützung bei der Zusammenarbeit von Schülergruppen

• Erleichterung der Stundenvorbereitung für Lehrkräfte

• Entlastung der Lehrkräfte von der IT-Administration

• Bereitstellung neuester und professionell gewarteter Anwendungen

Was bietet die Schul-Cloud?Die Schul-Cloud als infrastrukturelle Lösung richtet sich an alle Beteiligten, die voneiner digitalen Kommunikation innerhalb oder mit der Schule profitieren können.Die Schul-Cloud steht allen Beteiligten offen, ist leicht von jedem beliebigen Ortund Lernraum aus sowie zu jeder Zeit zugänglich. Die angestrebte Cloud-Strukturstellt eine zukunftssichere technologische Lösung für die aktuellen Herausforde-rungen im Kontext der Digitalisierung im Bildungsbereich dar.

11

2 Die Cloud im Spannungsfeld vonLernpraxis, Schulorganisation undPolitik

Die Implementierung einer erfolgreichen Schul-Cloud erfordert eine Auseinander-setzung mit der Institution Schule und deren Umfeld. Nur so ist es möglich, diespeziellen Anforderungen in diesem Bereich zu verstehen.

In Kapitel 2.1 wird zunächst die aktuelle Situation an den Schulen skizziert, bevorin Kapitel 2.2 auf den schulpolitischen Kontext eingegangen wird. Die besonderenHerausforderungen, die sich insbesondere bei der Administration, der Vernetzungund dem Datenschutz stellen, werden in Kapitel 2.3 erläutert. Abschließend werdendie Zielgruppe der Pilotphase (siehe 2.4) sowie allgemeine Anwendungsszenariender Schul-Cloud (siehe 2.5) beschrieben.

2.1 Vom Computerraum zum vernetzten Lernen in derSchul-Cloud

Die informationstechnische Ausstattung stellt viele Schulen vor große administrati-ve und finanzielle Herausforderungen. Während im Alltag digitale Geräte längstomnipräsent sind, fristen sie in Schulen oft noch ein Nischendasein, sind selten inausreichender Menge vorhanden und werden meist nicht fachgerecht administriert.Aufgrund kürzer werdender Produktzyklen und steigender Vielfalt an IT-Devicesist es vielen Schulen nicht möglich, ihren Schüler/innen im Unterricht eine ad-äquate IT-Ausstattung zu bieten. Diese Unzulänglichkeiten sind bei der Softwarenoch viel gravierender, da eine kontinuierliche Aktualisierung selten gewährlei-stet wird. Ferner können Schulen aufgrund hoher Lizenz- und Personalkosten denAusstattungsansprüchen nur beschränkt nachkommen. Meist stehen Computer aus-schließlich in bestimmten Rechnerräumen für den Informatikunterricht oder fürArbeitsgemeinschaften zur Verfügung. Dadurch können sie in anderen Unterrichts-fächern – beispielsweise für die schnelle Internetrecherche im Geschichtsunterrichtoder für das Simulationsprogramm in Biologie – sowie zur Vor- und Nachbereitungdes Unterrichts von den Schüler/innen und Lehrkräften nicht genutzt werden. Inder Konsequenz erschweren diese Bedingungen, dass Kinder im Rahmen ihrerschulischen Laufbahn die notwendige digitale Bildung genießen können, die siebenötigen, um optimal für das Leben in einer zunehmend digitalen Gesellschaftvorbereitet zu sein.

12

2.2 Schulpolitischer Kontext

Die Schul-Cloud kann maßgeblich dazu beitragen, das Potenzial der digitalenWelt im schulischen Lernalltag besser nutzbar zu machen, bestehende Hindernissezu minimieren sowie Schul- und Bundesland übergreifende Synergien zu schaffen.Die Einrichtung der Schul-Cloud bietet eine zukunftssichere Lösung, um Schü-ler/innen die Möglichkeit zu bieten, flächendeckend neueste und professionellgewartete IT-Systeme sowie digitale Lerninhalte zu nutzen. Für Lehrkräfte bringtsie eine Entlastung von der Hardware-Verwaltung und -Pflege. Im Unternehmens-kontext und im privaten Bereich zeigen Cloud-Lösungen und Software-as-a-Service(SaaS) bereits, wie einfach und effizient auf IT-Dienste über die Cloud zugegriffenwerden kann.

Für einen zeitgemäßen Unterricht mit moderner Technologie benötigen wir einezukunftsorientierte Lösung: die Schul-Cloud. Sie wird den digitalen Wandel indie Schulen bringen und den fächerübergreifenden Unterricht mit digitalen Inhal-ten bereichern. Für Schüler/innen, Lehrkräfte, Schulleitungen sowie Eltern bietetsie viele Vorteile, sobald die Rahmenbedingungen geschaffen sind. Die aktuell er-schienene Basisstudie Jugend, Information, (Multi-) Media (JIM 2016)[5] zeigt, dassComputer beziehungsweise Internet bereits häufig für Hausaufgaben genutzt wer-den, allerdings der WLAN-Zugang, z. B. für den Zugriff von mobilen Endgerätenaus, lediglich in wenigen Schulen von den Schüler/innen genutzt werden kann.

2.2 Schulpolitischer Kontext

Cloud-Systeme und -Dienste in Schulen müssen als Teil „der Digitalisierung imschulischen Bereich [...] dem Primat des Pädagogischen“[4] folgen. Sie sollen nichtnur Schüler/innen sowie Lehrkräften helfen, die zunehmende Fülle an Informa-tionen sowie diverse digitale Lehr-Lern-Möglichkeiten optimal zu erschließen undzu nutzen, sondern auch Schulen darin unterstützen, ihren Bildungs- und Sozia-lisierungsauftrag bestmöglich zu erfüllen. Auch können Cloud-Strukturen und-Dienste die Kooperation mit anderen Bildungs- und Forschungseinrichtungen för-dern, indem Schulen beispielsweise aktuelle Forschungsergebnisse auf einfachemWege zugänglich gemacht werden.

Die Schul-Cloud ist in einem komplexen Gefüge aus Maßnahmen, Bestrebungenund Richtlinien angesiedelt, die das Schulwesen bestimmen. Die Wirkungsberei-che der technischen Cloud-Systeme betreffen sowohl die Bereiche innerhalb vonSchulen als auch die Interaktionen zwischen Schüler/innen, Lehrkräften, Elternund der Schulverwaltung sowie übergreifende Strukturen, wie Schulverbunde, denschulpolitischen Rahmen sowie die kommunale und Länderebene. Cloud-Systemekönnen die Beteiligten über ihre gesamte Bildungslaufbahn sowie unterschiedlicheLernkontexte hinweg begleiten und an sich ändernde Ansprüche flexibel angepasstwerden.

Aus den historisch gewachsenen Schulstrukturen und dem föderalistischen Bil-dungssystem Deutschlands ergeben sich ebenso große Herausforderungen wie auseiner verbreiteten Skepsis gegenüber Schulentwicklungsprozessen und technischenNeuerungen. Im Einklang mit einem umfassenden Verständnis von Digitalisierung

13

2 Die Cloud im Spannungsfeld von Lernpraxis, Schulorganisation und Politik

der Bildung betreffen Cloud-Strukturen und -Dienste für Schulen „die gesamteWertschöpfung der Wissenserschließung und -kommunikation“[3] und führen zuumfassenden Veränderungen im Bildungssystem einschließlich der sich wandeln-den Rolle von Lehrkräften (von der Wissensvermittlung hin zur Bildungsbeglei-tung).

Diese Rahmenbedingungen wurden von Beginn an bei der Konzeption der Schul-Cloud berücksichtigt, um einen erfolgversprechenden Ansatz zu entwickeln, deralle Beteiligten überzeugt und den Fortschritt des Bildungsstandorts Deutschlandermöglicht.

Anlässlich der Vorstellung der BMBF-Strategie „Bildungsoffensive für die digita-le Wissensgesellschaft“ machte die Bundesministerin für Bildung und Forschung,Prof. Dr. Johanna Wanka, am 12. Oktober 2016 den Ländern das Angebot für einenDigitalPakt#D1: Damit Schüler/innen digital lernen können, will das BMBF die di-gitale Ausstattung an allen Schulen in Deutschland in Milliardenhöhe fördern. ImGegenzug sollen sich die Länder verpflichten, die entsprechenden pädagogischenKonzepte, die Aus- und Fortbildung von Lehrkräften weiterzuentwickeln und aus-zubauen, Wartung und Betrieb der Infrastruktur sicherzustellen sowie gemeinsametechnische Standards umzusetzen. Ein entscheidendes Element für den Aufbauleistungsfähiger digitaler Lerninfrastrukturen ist die Verfügbarkeit breitbandigerInternetzugänge in den Schulen, welche ebenso mit dem DigitalPakt#D angestrebtwird.

Die Schul-Cloud leistet einen logisch stringenten Beitrag zu den Bundesaktivitä-ten im Bereich digitaler Bildung. Sie stellt ein ganzheitliches Konzept für Infrastruk-turmaßnahmen – die Bereitstellung von Cloud-Kapazitäten, Breitbandanbindungvon Schulen und WLAN-Ausstattung in den Schulen – dar, mit denen die breiteNutzung von digitalen Lehr- und Lerninhalten im Schulunterricht ermöglicht wird.Es gibt durch die Schul-Cloud keinerlei inhaltliche Vermischung der Verantwort-lichkeiten – die Länder bleiben weiterhin für die Auswahl bzw. Empfehlung derdigitalen Inhalte verantwortlich. Die Aufrechterhaltung, Pflege und den Betriebder für die Bereitstellung notwendigen Infrastrukturen leisten weiterhin die Schul-träger unter Inanspruchnahme von Fördermitteln aus dem DigitalPakt#D, dessenAusgestaltung zwischen Bund und Ländern ab Januar 2017 diskutiert wird.

2.3 Die größten Herausforderungen und Lösungsansätzefür digitale Bildung an Schulen

Durch die Rückmeldung interessierter MINT-EC-Schulen zu ihren infrastruk-turellen Rahmenbedingungen konnten drei Herausforderungen (Netzwerk-Infrastruktur und Administration, Vernetzung sowie Datenschutz) identifiziert

1Siehe https://www.bundesregierung.de/Content/DE/Artikel/2016/10/2016-10-12-digitalpakt-wanka.html, letzter Zugriff: 10.01.2017.

14

2.3 Die größten Herausforderungen und Lösungsansätze für digitale Bildung an Schulen

werden. Im Folgenden werden diese Herausforderungen beschrieben und die Lö-sungsansätze der Schul-Cloud kurz erläutert.

Herausforderung: Netzwerk-Infrastruktur und AdministrationDie Netzwerk-Infrastruktur an deutschen Schulen ist von unterschiedlicher Quali-tät. Selbst an Schulen mit einer guten Anbindung verschiedener Lernorte und hoherNetzgeschwindigkeit/Bandbreite mangelt es an infrastruktureller Unterstützungfür die im schulischen Umfeld notwendigen Nutzungsszenarien.

Die Administration von Servern und Endgeräten wird häufig durch fachfrem-des Personal durchgeführt. Das führt dazu, dass in Schulnetzen oft veraltete so-wie unsichere Software läuft. Nicht selten werden diese in Form von Bot-Netzenmissbraucht2.

Schul-Cloud-Lösung: Rechner aus der Schule in die CloudDamit digitale Medien und die im schulischen Kontext verfügbaren Ansätze nichtzu Hindernissen für digitale Bildung werden, sondern die Lehrenden unterstützenund ihre Arbeit erleichtern, sollen die Rechner aus den Schulen heraus gebrachtund die Bildungsinhalte in eine Cloud überführt werden. Anstelle von stör- undsicherheitsanfälligen Rechnern sollen einfache Anzeige- und Eingabegeräte genutztwerden, die Webinhalte anzeigen können.

In der Pilotphase der Schul-Cloud sollen unterschiedliche Konzepte getestetwerden (Bring Your Own Device, Tablet-Klassensätze, u. a.). Durch die Verlage-rung von Servern aus den Schulen in die Schul-Cloud hinein können Wartungund Sicherheit aller Softwareschichten verbessert und Dienste übergreifend sowiemandantenfähig3 bereitgestellt werden (Software-as-a-Service, SaaS).

Herausforderung: VernetzungIm Rahmen der unterschiedlichen Hoheitsbereiche von Ländern und Kommunenhaben sich bisher kaum erfolgreiche gemeinschaftliche Infrastruktur-Konzepte und-Lösungen herausgebildet. Die fehlende Vernetzung lässt nicht nur Synergien un-genutzt, sondern stellt eine zusätzliche Hürde für die Digitalisierung der Schulensowie der Angleichung von Schul- und Lebenswelt dar. Die am Markt vorhandenenAkteure – engagierte Lehrkräfte, Initiativen und sogenannte EdTech-Unternehmen– sind bislang in Silos gefangen. Im pädagogischen Netz konzentrieren sich dievorhandenen Anwendungen zudem auf zu komplexe Szenarien.

2„Ein Bot ist ein Programm, das ferngesteuert arbeitet. [...] Bot-Netze sind Netzwerke,die von Hackern aufgebaut werden und aus Hunderten, manchmal gar TausendenRechnern bestehen, die alle nicht ihnen gehören [...], ohne dass die eigentlichen Besitzerbemerken, dass ihr Rechner missbraucht wird“ (siehe http://www.t-online.de/it-sicherheit-bot-netze/id_12716864/index, letzter Zugriff: 01.02.2017).

3Mandantenfähig meint, dass dasselbe Software-System mehrere Nutzer/innen bedienenkann, ohne dass diese gegenseitigen Einblick in ihre Daten, Nutzerverwaltung etc.haben.

15

2 Die Cloud im Spannungsfeld von Lernpraxis, Schulorganisation und Politik

Schul-Cloud-Lösung: Modularer AufbauDie Schul-Cloud besteht aus mehreren Modulen, die als eigenständige und flexibleMicroservices (siehe Kapitel 3.2) implementiert und gemäß einem Mehrschichten-modell (siehe Kapitel 3.1) strukturiert werden. In diesem Strukturierungsprinzipwerden einzelne Aspekte des Softwaresystems konzeptionell einer Schicht zuge-ordnet. Diese Aspekte können u. a. Funktionalitäten und Komponenten sein. Dienotwendige Domänenkenntnis der jeweiligen Dienste wird dadurch minimiert unddie Chance auf Wiederverwendung der Services ebenso erhöht wie die Integrati-on von Standardlösungen und Komponenten bestehender Systeme (etwa bereitsvorhandene Lernmanagement-Lösungen). Diese Architektur erlaubt demnach einesehr hohe Skalierbarkeit.

Jeder Service wird über eine REST-Schnittstelle (Representational State Transfer)4

angesprochen. Die Metadaten der Applikation werden gemäß der Konvention„JSON-API“5 ausgezeichnet, um von generalisierten Werkzeugen zu profitieren.Die Dienste der Schul-Cloud können in beliebigen Programmiersprachen erstelltwerden.

Die Schul-Cloud kann zum einen eigenständig genutzt werden, zum anderenkönnen auch einzelne Komponenten herausgelöst verwendet werden. So ist es mög-lich, einzelne Dienste in bestehende Lernmanagement-Systeme einzubinden, umbeispielsweise über die Schul-Cloud auffindbare Lernmaterialien auch in anderenSystemen, die an einigen Schulen bereits vereinzelt eingeführt wurden, bereitzu-stellen.

Die optionale Benutzeroberfläche ist als eigenständiger „Client“ implementiert,der mit dem Backend über bereitgestellte APIs (Application Programming Inter-faces) kommuniziert. Das Folgen dieses API-First-Paradigmas und die damit ver-bundene Kapselung ermöglicht einen späteren Austausch von Komponenten, dieeinfache Anbindung von nativen Applikationen und dass alle Dienste von anderenApplikationen angesprochen werden können.

Ziel der Schul-Cloud ist es nicht, gängige Tools und Lösungen für den schuli-schen Kontext bereitzustellen. Vielmehr sollen bestehende Lösungen verschiede-ner Anbieter verknüpft, vernetzt und technisch angebunden werden, z. B. E-Mail-Funktion und Bearbeitung von Dokumenten. Lediglich Lösungen, die noch nichtexistieren, werden neu entwickelt.

Das Zentrum der Schul-Cloud bildet der „Kerndienst“. Dieser bildet den Ver-bindungspunkt für alle verfügbaren Dienste und hält auch die benötigten Datender Schüler/innen und Lehrkräfte vor. Er dient zudem als Proxy bei der „Serviceto Service-Kommunikation“. Zudem ermöglicht er den Login von Nutzer/innenüber vorhandene Systeme, wie z. B. landesweite Moodle-Installationen, und stelltdann alle von der Schul-Cloud angebotenen Dienste über diesen Zugang bereit

4„REST beschreibt ein Softwarearchitekturmodell für verteilte Hypermedia-Systemewie das World Wide Web [...], die das WWW so erfolgreich gemacht hat“ (sie-he http://www.iant.de/sip-knowhow/was-ist-rest-schnittstelle.html, letzterZugriff: 01.02.2017).

5Siehe http://jsonapi.org/, letzter Zugriff: 27.01.2017.

16

2.4 Zielgruppe für die Pilotphase

(Single Sign-On). Sollen keine Fremdsysteme für die Nutzerverwaltung verwendetwerden, werden die hierfür notwendigen Funktionalitäten durch die Schul-Cloudzur Verfügung gestellt6.

Herausforderung: DatenschutzDer Datenschutz stellt eine zentrale Herausforderung für den Einsatz digitaler Me-dien in der Schule dar: Mangels digitaler „Awareness“ oder fehlenden attraktivenAlternativen werden derzeit z. B. Tools von Drittanbietern in Schulen eingesetzt,die inkompatibel mit dem deutschen Datenschutzgesetz sind.

Schul-Cloud-Lösung: Privacy by DesignDie Schul-Cloud folgt dem Prinzip „Privacy by Design“: Personenbezogene Datenwerden ausschließlich im Kernservice verwendet, andere Dienste haben keinen Zu-griff auf die verwendeten Primärschlüssel. Der Aufruf von Tools und Lerninhalten(bspw. über LTI – Learning Tools Interoperability) erfolgt pseudonomysiert.

2.4 Zielgruppe für die Pilotphase

Die primäre Zielgruppe in der Pilotphase sind die Schulen des Vereins MINT-EC.Der MINT-EC ist ein nationales „Excellence-Netzwerk von Schulen mit Sekundar-stufe II und ausgeprägtem Profil in Mathematik, Informatik, Naturwissenschaf-ten und Technik (MINT)“7. Die MINT-EC-Schulen sind zur Exemplifizierung desskalierbaren Cloud-Gedankens ideal geeignet, da sie zum einen Ländergrenzenüberbrücken und zum anderen ein natürlich gewachsenes Netzwerk mit den dazu-gehörigen Wertvorstellungen und Zielen darstellen (Technikaffinität, gegeinseitigerAustausch u. a.). An der ersten Testphase (voraussichtlich Februar 2017 bis April2018) werden zunächst 25 Pilotschulen teilnehmen. Diese Zielgruppe wird durchihre Erfahrungen und ihr Feedback die nutzerzentrierte, agile Entwicklung derSchul-Cloud voranbringen.

2.5 Anwendungsszenarien der Schul-Cloud

Die Ergebnisse einer Befragung von über 60 MINT-EC-Schulen und der Fachcom-munity ergaben die folgenden vier Hauptanwendungsszenarien, im Rahmen derereine Schul-Cloud besonders erfolgreich in den Schulalltag integriert werden kann:

• Dateiaustausch – Teilen von digitalen Inhalten und Dokumenten

• Lernortvernetzung – Verbindung von Schule und „Nachmittagsmarkt“

6Je nach Fortschritt anderer Initiativen zu zentralen Login-Diensten kann dieser Aspektder Schul-Cloud durch solche Lösungen ergänzt werden.

7Siehe www.mint-ec.de, letzter Zugriff: 10.01.2017.

17

2 Die Cloud im Spannungsfeld von Lernpraxis, Schulorganisation und Politik

• Kollaboration – Arbeiten an gemeinsamen Aufgaben und Projekten

• Differenzierung – Förderung durch spezifische Lernangebote

Anhand einer zweiten Erhebung wurden aus Sicht von über 40 MINT-EC-Schuleninteressante Online-Angebote auf Fächerebene abgefragt, die in eine Schul-Cloudeinbezogen werden können, z. B. GeoGebra8 und LEIFIphysik9. Bildungsanbie-tern soll eine möglichst einfache Integration ihrer Angebote in die Schul-Cloudermöglicht werden. Von Start-ups über etablierte Schulbuchverlage bis hin zu enga-gierten Einzelautor/innen von Open Educational Resources (OER) soll ein breitesSpektrum an kooperierenden Inhalte-Anbietern eingebunden werden.

8Siehe www.geogebra.org, letzter Zugriff: 01.02.2017.9Siehe www.leifiphysik.de, letzter Zugriff: 01.02.2017.

18

3 Technische Aspekte der Schul-Cloud

Die prototypische Implementierung einer deutschlandweit nutzbaren Schul-Cloudhat viele Dimensionen. Bereits in Kapitel 2 wurde deutlich, dass bei der Entwick-lung einer Schul-Cloud die herausfordernden Rahmenbedingungen in besonderemMaße berücksichtigt werden müssen. Als Kernherausforderungen sind die ThemenModularität und Offenheit zu nennen, da die Schul-Cloud Bestehendes nicht neuerfinden, sondern vorhandene Angebote und Nutzer/innen als offenes, infrastruk-turelles Element verbinden soll. Bereits funktionierende und etablierte Lösungensollen die Möglichkeiten der Schul-Cloud nutzen können, ohne selbst obsolet zuwerden. Das hohe Maß an Modularität sorgt dafür, dass die Dienste der Schul-Cloud nicht nur in Gänze, sondern auch als Einzelkomponenten nutzbar sind.

Eine nachhaltige Entwicklung dieser technisch-infrastrukturellen Lösung ist da-her besonders entscheidend. Dies erfordert sowohl eine skalierbare, flexible undmodulare Konzeption als auch Architektur und Implementierung. Somit wird ge-währleistet, dass die Schul-Cloud nicht nur innerhalb eines Pilotprojektes einsatzfä-hig ist, sondern auch nach Abschluss der Pilotphase das Potential hat, bundesweitgenutzt zu werden.

Im Folgenden wird die Schul-Cloud als Mehrschichtenmodell (siehe Kapitel 3.1)beschrieben, wobei der Fokus auf die verschiedenen Schichten und deren Bedeu-tung für die Schul-Cloud gelegt wird. Die in der Schul-Cloud zum Einsatz kom-menden Technologien werden in Abschnitt 3.2 erläutert. Sowohl die Maßnahmenzur Systemskalierbarkeit (siehe Kapitel 3.3) als auch das Paradigma der kontinu-ierlichen Integration (siehe Kapitel 3.4) werden beschrieben. Abschließend wird inKapitel 3.5 sowohl auf das Thema Datenschutz als auch auf die Systemsicherheiteingegangen.

3.1 Die Schul-Cloud als Mehrschichtenmodell

In den letzten Jahren hat sich der Markt der Cloud-Anbieter enorm vergrößert.Damit einhergehend wurde auch das Angebot an Cloud-basierten Diensten undAnwendungen, die sich serverseitiger Virtualiserungstechnologien bedienen, viel-fältiger. Unter Berücksichtigung dieser Entwicklung lässt sich die Schul-Cloud ineinem Mehrschichtenmodell (siehe Abbildung 3.1) abbilden. Diese Darstellungerlaubt eine übersichtliche Veranschaulichung der funktionalen Ebenen und Auf-gaben, die aufeinander aufbauen. Auf unterster Ebene steht dabei die infrastruk-turelle Schicht (IaaS, siehe Abschnitt 3.1.2), gefolgt von der ausführenden Schicht(PaaS/CaaS, siehe Abschnitt 3.1.3) sowie der Anwendungsschicht (SaaS, siehe Ab-

19

3 Technische Aspekte der Schul-Cloud

PaaS/CaaS

IaaSPersistenz (SQL, NoSQL, Dateien)

ML, PA

Identitäts-management

Organisations-management Kalender Benachrich-

tigungen

Aktivitäten Ergebnisse & Reporting

Datei-management Inhalte Authoring

EventsKollaboration

LMS Bestands-anwendungen

Inhalte-Anbieter

MedienAnwendungen

SaaS

Privacy & SecurityExterne System

e

Schul-Cloud Mehrschichtenmodell V0.2

API

Clie

nts

Web App

Abbildung 3.1: Mehrschichtenmodell

schnitt 3.1.4). Die Funktionalitäten der tieferen, spezifischeren Schicht werden dabeiin der darüberliegenden, abstrakteren Schicht verwendet.

Für Endanwender/innen ist bei der Nutzung der höchsten Schicht nicht ersicht-lich, welche Angebote aus einer der tieferen Schichten intern verwendet werden.Dies kann unter anderem aus datenschutzrechtlichen Gründen problematisch sein,etwa wenn ein deutscher Anbieter intern auf Angebote US-amerikanischer Cloud-Anbieter zurückgreift. Für die Schul-Cloud müssen hingegen alle Angebote mitdem deutschen Datenschutz konform sein.

Für die Integration der unteren Schichten gibt es hinreichend am Markt etablierteAngebote und Lösungen, aus denen für den Pilotbetrieb eine Auswahl getroffenwird. Die potenziellen Lösungen müssen ein Vendor-Lock-in verhindern und kom-patibel mit den Anforderungen an Skalierbarkeit (siehe Kapitel 3.3), Privacy (sieheAbschnitt 3.5.1) und Security (siehe Abschnitt 3.5.2) sein.

3.1.1 Serverseitige Virtualiserungstechnologien

In den letzten Jahren hat sich der Markt der Cloud-Anbieter enorm vergrößert.Damit einhergehend wurde auch das Angebot an cloudbasierten Diensten undAnwendungen vielfältiger, die sich serverseitiger Virtualiserungstechnologien be-dienen. Für die unteren Schichten der Schul-Cloud ist daher keine Neuentwicklungnotwendig, stattdessen kann auf bereits vorhandene Entwicklungen zurückgegrif-fen werden.

Die Angebote lassen sich entsprechend des Schichtenmodells in die drei aufein-ander aufbauenden Ebenen Infrastructure as a Service (IaaS), Platform as a Serviceund Container as a Service (PaaS und CaaS) sowie Software as a Service (SaaS)aufteilen. Die Funktionalitäten der tieferen, spezifischeren Schicht werden dabei in

20

3.1 Die Schul-Cloud als Mehrschichtenmodell

der darüberliegenden, abstrakteren Schicht verwendet. Für Endanwender/innenist bei der Nutzung der höchsten Schicht nicht ersichtlich, welche Angebote auseiner der tieferen Schichten intern verwendet werden. Dies kann unter anderemaus datenschutzrechtlichen Gründen problematisch sein, etwa wenn ein deutscherAnbieter intern auf Angebote US-amerikanischer Cloud-Anbieter zurückgreift. Fürdie Schul-Cloud müssen hingegen alle Angebote mit dem deutschen Datenschutzkonform sein.

Nachfolgend werden die verschiedenen Virtualisierungstechnologien sowie de-ren Einsatz in der Schul-Cloud näher erläutert.

3.1.2 IaaS – Infrastructure as a Service

Infrastructure as a Service (IaaS) ist die am wenigsten abstrahierte Form des Cloud-Services. Hierbei stellt der Anbieter den Zugriff auf physikalische oder virtuelleServer bereit. Er sorgt dabei lediglich für die Verwaltung und verteilte Auslastungder Hardware. Sowohl die Wahl als auch die Konfiguration des Betriebssystems,der Anwendungen und/oder Laufzeitumgebungen obliegt dem Kunden.

Insbesondere die Möglichkeit zur Skalierung der Leistung entsprechend desaktuellen Bedarfs ist ein großer Vorteil des IaaS-Konzepts, wodurch auch die Kostenflexibel bleiben. Belastungsspitzen können abgefangen, Systeme schnell expandiertund nicht mehr benötigte Ressourcen wieder freigegeben werden. Die Anpassungerfolgt manuell, was in diesem Fall als Nachteil zu sehen ist. Durch Statistikenund Leistungsüberwachung kann die Notwendigkeit einer Anpassung jedoch auchrelativ gut automatisiert abgeschätzt werden.

Eine Schul-Cloud, die eine per IaaS bereitgestellte Infrastruktur nutzt, bietetfolgende Vorteile:

• Ressourcen sind genau in dem benötigten Maße verfügbar1.

• Die Anwendung kann immer auf den neusten Hardware-Generationen aus-geführt werden, um Kosten- und Performance-Vorteile zu nutzen. Hardware-Upgrades und Generationswechsel werden durch den IaaS-Anbieter automa-tisiert durchgeführt.

• Die Wartung erfolgt durch den IaaS-Anbieter.

3.1.3 PaaS – Platform as a Service / CaaS – Container as a Service

Der Begriff Platform as a Service bezeichnet eine Entwicklungs- bzw. Ausführungs-umgebung für Programme in einer Cloud. Viele Entscheidungen, beispielsweisedie konkrete Systemkonfiguration oder die Leistungsskalierung, müssen nicht vomProgrammierer oder Administrator getätigt werden, sondern werden automatisch

1Dies schließt einen Hybrid Cloud-Ansatz ein, bei dem ein Grundstock an Ressourcenphysisch bereitgestellt wird und nur bei Lastspitzen eine Verteilung in die Cloud erfolgt.

21

3 Technische Aspekte der Schul-Cloud

vom System vorgenommen. Die in der PaaS-Umgebung ausgeführten Anwen-dungen werden über spezielle Interfaces konfiguriert. Bis zu einer vordefiniertenMaximalgrenze werden Ressourcen während der Laufzeit alloziert und wieder frei-gegeben. Die Anwendungen laufen in abgeschirmten Umgebungen (Sandboxes)auf verteilten Ressourcen. Es besteht also kein Zugriff auf das zugrundeliegendeDateisystem; für eigene Dateien wird eine Ablage mit den benötigten Rechten be-reitgestellt. Auch der Standort des ausführenden Servers ist dem Entwickler nichtbekannt.

Die Container-basierte Virtualisierung (CaaS) verbindet die Vorteile der IaaS-und PaaS-Ebene. Im Regelfall steht bei PaaS-Lösungen für jede Programmierspra-che eine Ausführungsumgebung (sog. Buildpacks) zur Verfügung, deren jewei-lige Anpassung relativ aufwendig ist. Bei Containern hingegen wird sämtlicheBetriebssystem- und Applikationslogik in einem Container verpackt. Da alle zurAusführung benötigten Komponenten ebenfalls Teil des Containers sind, wird dieLauffähigkeit unabhängig von der Ausführungsumgebung gewährleistet. Darüberhinaus werden auch die Probleme der Themen Packaging und Distribution gelöst.Firmen wie Google, die über große, international verteilte Rechenzentren verfü-gen, setzen seit vielen Jahren auf Container-Virtualisierung für den Betrieb ihrerkomplexen Infrastruktur.

Der Linux-basierten Containervirtualisierung hat das amerikanische Start-upDocker zum Durchbruch verholfen. Seit diesem ersten Impuls entwickelte sich eineFülle an frei verfügbaren Tools rund um das Thema Containervirtualisierung. Mitt-lerweile stellen unterschiedliche Anbieter verschiedene Container-basierte Dien-ste zur Verfügung. Während einige Anbieter noch klassische virtuelle Maschinen(VMs) verwenden, in denen ein Docker-Host läuft, bieten andere Anbieter bereitseine echte Container-Virtualisierung. Bei letzterem können mehrere Container mit-einander verknüpft werden. Dies ist sinnvoll, wenn eine Anwendung aus mehrerenServices besteht (SOA) oder einzelne abhängige Komponenten wie etwa CacheServices oder Datenbanken als verknüpfte Container mitgeliefert werden.

Grundsätzlich sind Container nicht persistent. Dementsprechend ist darauf zuachten, ob und in welcher Form eine Persistierung von Applikations- und An-wenderdaten erfolgen muss. Dazu kommen häufig Services wie in der Cloudbereitgestellte Datenbanken oder Objekt-Storages zum Einsatz.

PaaS und CaaS sind nicht nur für das Hosting der Schul-Cloud interessant;auch für das Hosting von dynamischen Inhalten (siehe Kapitel 4.1) und weiterenAnwendungen stellt beides eine geeignete Abstraktionsebene dar.

3.1.4 SaaS – Software as a Service

Bei Software as a Service (SaaS) stellt der Anbieter ganze Anwendungen bereit. Diesist die am höchsten abstrahierte Form der Virtualisierung. Der Zugriff erfolgtmeist über ein Web-Interface im Browser und ist somit für ein breites Spektrumvon Endgeräten verfügbar. SaaS eignet sich dementsprechend auch für Endgerätemit wenig Rechenleistung. Betrieb, Administration, Wartung und Verwaltung vonSoftware und Hardware übernimmt der Dienstleister, während der Nutzer über

22

3.2 Tech-Stack

wenig Möglichkeiten zur individuellen Konfiguration verfügt. Wie bei PaaS istdem Anwender auch bei SaaS unbekannt, auf welchen Servern die Anwendungbetrieben wird.

SaaS kommt in der Schul-Cloud in zwei Ausprägungen vor: Neben Anwen-dungen von Dritten, die als SaaS zur Verfügung gestellt werden und über dieSchul-Cloud zugänglich sind, können auch die von der Schul-Cloud selbst ange-botenen Dienste in der SaaS-Schicht verortet werden. Eine Beschreibung dieserDienste findet sich in Kapitel 4.

3.2 Tech-Stack

Die Architektur der Schul-Cloud (siehe Abbildung 3.2) basiert auf Microservices.Bei diesem Architekturmuster besteht die Anwendung aus vielen kleinen vonein-ander unabhängigen Diensten (Services), die im Bedarfsfall schnell erneuert oderersetzt werden können. Microservices bieten Schnittstellen nach außen, um mitanderen Services zu interagieren und zu kommunizieren. Der Entwickler benö-tigt lediglich Wissen über die Schnittstelle, über die er den Service verwendenkann. Die interne Umsetzung des Services, beispielsweise die im Microserviceverwendete Programmiersprache, ist für den Entwickler hingegen unerheblich(Blackbox-Prinzip).

Abbildung 3.2: Architektur

23

3 Technische Aspekte der Schul-Cloud

Durch die Microservice-Architektur sind Projekte leicht skalierbar, während dieverschiedenen Komponenten übersichtlich und wartbar bleiben. Infolgedessen kön-nen auch neue Technologien und Lösungen experimentell erprobt werden, ohnedas Gesamtsystem zu gefährden. Gerade im System der Schul-Cloud können durchMicroservices perspektivisch die Bedürfnisse der jeweiligen Schule berücksichtigtoder weitere Funktionen hinzugefügt werden.

Durch den Einsatz von Microservices ergeben sich auch einige Nachteile. Soentsteht einerseits eine erhöhte interne Netzwerklast, da die Services verhältnis-mäßig viel miteinander kommunizieren, andererseits wird durch die Vielzahl derKomponenten das Testen der Anwendung komplexer. Aufgrund der Vorteile sindMicroservices für die Schul-Cloud dennoch sehr gut geeignet.

Die Offenheit der Schul-Cloud und die Verwendung einer Microservice-basiertenArchitektur erlauben die Umsetzung der einzelnen Dienste (insofern sie innerhalbder Schul-Cloud-Infrastruktur ausgeführt werden) mit einer Vielzahl von Program-miersprachen und Tools. Alle Dienste sind auf den verschiedenen im vorherigenKapitel 3.1 geschilderten Ebenen lauffähig. Nichtsdestotrotz wurde für die imRahmen des Projektes zu entwickelnden Dienste eine vereinheitlichte Technologie-Auswahl (Tech-Stack) getroffen. Bei Microservice-Architekturen werden häufigunterschiedliche Tech-Stacks gewählt, um dem Entwickler(-Team) zu erlauben, inseiner gewohnten Sprache zu arbeiten. Angesichts der geringen Teamgröße stan-den bei der Auswahl des Tech-Stack für die Schul-Cloud jedoch andere Aspekteim Fokus:

• Vorhandene Entwicklerressourcen sollen flexibel über alle Services hinwegeingesetzt werden können,

• die Lösungen sollen zur Gewährleistung von Nachhaltigkeit und leichtemOnboarding weiterer Entwickler, etwa bei Beteiligung externer Mitwirkender,populär sein und

• proprietäre oder herstellergebundene Sprachen, Frameworks und Technolo-gien sollen vermieden werden.

Da die Microservices im Wesentlichen von anderen Anwendungen oder Dienstenverwendet werden, wird auch von einem API First-Ansatz gesprochen. Dies isteine Entwicklungsstrategie, bei der alle Funktionalitäten über eine API erreichbarsein müssen und darauf ein Webclient oder eine mobile Anwendung entwickeltwird. Auch eine mögliche Nutzung der Dienste durch andere Applikationen wirdsomit gewährleistet.

Für die Dokumentation der API wird Swagger UI verwendet. Das Tool ermög-licht die Erstellung einer visuellen und interaktiven API-Dokumentation mit sim-plen Mitteln. Dazu erstellt Swagger UI aus einer JSON- oder XML-Datei oder sogardirekt aus dem Code die navigierbare UI für die Dokumentation. Somit ist dieAPI eines jeden Services vollständig dokumentiert und kann interaktiv exploriertwerden (siehe Abbildung 3.3).

Bei Gesprächen mit Unternehmen der EdTech-Szene zeigte sich, dass der nachfol-gend beschriebene Tech-Stack insbesondere im Bereich der Bildungstechnologien

24

3.2 Tech-Stack

Abbildung 3.3: Swagger UI – Schul-Cloud

25

3 Technische Aspekte der Schul-Cloud

für schnelles Prototyping beliebt ist. Die Nutzung ebendieser technologischen Kom-ponenten kann somit spätere Synergieeffekte fördern.

3.2.1 JavaScript / Node.js

JavaScript hat sich seit seiner Einführung 1995 von einer kleinen Skriptsprachefür Webbrowser zu einer vollwertigen, modernen Programmiersprache entwickelt.Über die Jahre gewann JavaScript an Beliebtheit, mittlerweile wird es in verschie-denen technischen Bereichen genutzt. Diese Popularität wurde nicht zuletzt durchdie Verbreitung der Open-Source-Laufzeitumgebung Node.js möglich. Seit 2009

wird Node.js kontinuierlich weiterentwickelt und verbessert. Parallel dazu ist einegroße Community entstanden2. Die absolute Nutzung aller Webserver, die Node.jsverwenden, mag mit 0.225 % zwar relativ niedrig ausfallen, unter den Nutzern sindjedoch Konzerne, die zu den Fortune 500 gehören – unter anderem Walmart, eBay,PayPal, Yahoo, Amazon, Microsoft und viele weitere.

Node.js – eine eventgesteuerte, asynchron arbeitende Laufzeitumgebung, die aufder Chrome v8 Engine basiert – ist das Herzstück des Schul-Cloud Tech-Stacks.Sie ermöglicht Entwicklern, Anwendungen einheitlich – vom Server über die Da-tenbank bis hin zum Frontend – mit JavaScript zu implementieren. Die Architek-tur von Node.js ermöglicht Rapid Prototyping und performantes Entwickeln DankCode-Wiederverwendung und effizientem Kontextwechsel. Mit einem eigenen Pa-ketmanager wie npm oder yarn können Module ergänzt werden.

Die v8 Engine ist derzeit die schnellste auf dem Markt verfügbare JavaScript-Engine; Code führt sie sehr performant aus. Da JavaScript jedoch nur auf einemThread ausgeführt wird, führt dies bei I/O-Operation zur Blockierung des Threads.Um asynchrone, nicht blockierende I/O-Operationen in Node.js auszuführen, wur-de die libuv-Bibliothek entwickelt, die in der Schul-Cloud ebenfalls zum Einsatzkommt.

3.2.2 ReactJS

ReactJS ist ein ursprünglich von Facebook entwickeltes JavaScript-Framework zurErstellung von Benutzeroberflächen, das von einer ständig wachsenden Communitygepflegt und weiterentwickelt wird. Wegen der Möglichkeit, React Views sowohlauf dem Client als auch auf dem Server zu rendern, erfreut sich das Frameworkbei vielen Entwickler/innen großer Beliebtheit.

3.2.3 Feathers / Express

Feathers ist ein minimalistisches, Service-orientiertes Echtzeit-Webframework fürmoderne Anwendungen. Feathers baut intern auf Express auf, welches das meist

2Auf Stack Overflow sind mittlerweile fast 140.000 Fragen zum Thema zu finden. Esexistieren rund 325.000 Module, um den Funktionsumfang zu erweitern.

26

3.2 Tech-Stack

genutzte HTTP-Server-Framework in Node.js ist. Sowohl der Aufbau von Routenund Services als auch die Anbindung an Datenbanken wie MongoDB wird durchFeathers vereinfacht.

3.2.4 MongoDB

MongoDB ist eine nicht-relationale, schemafreie Open-Source-Datenbank, die seit2007 entwickelt wird. Sie ist die primäre Datenbank des Stacks. Die Daten werdenin Dokumenten mit einer JSON-ähnlichen Struktur abgespeichert. MongoDB istsehr beliebt und findet große Unterstützung durch die Community. Sie ist die amhäufigsten genutzte nicht-relationale Datenbank und insgesamt die am viertmei-sten genutzte.

Gegenüber herkömmlichen relationalen Datenbanken bietet MongoDB den Vor-teil einer schnelleren Zugriffszeit. Diese resultiert daraus, dass die Daten nichtsofort auf die Festplatte geschrieben werden, sondern erst, wenn sich das Systemmehr oder weniger im Leerlauf befindet.

3.2.5 PostgreSQL

PostgreSQL ist ein objekt-relationales Datenbanksystem (ORDBMS). Es ist einsehr fortschrittliches Datenbanksystem im Open-Source-Bereich, das frei verfügbarund ohne Lizenzgebühr nutzbar ist. PostgreSQL unterstützt die meisten Teile desSQL2003-Standards und verfügt über eine Vielzahl eigener Erweiterungen.

Durch die Bereitstellung von MongoDB und PostgreSQL können Entwicklerneuer Schul-Cloud-Dienste je nach Anwendungsfall entscheiden, welche Daten-banktechnologie (NoSQL vs. relationale Datenbank) sich für sie am besten eignet.

3.2.6 Elasticsearch

Elasticsearch ist eine kostenlose Open-Source-Suchmaschine, die auf der in Javageschriebenen Volltextsuche-Bibliothek Apache Lucene basiert. Die Engine suchtund indexiert Dokumente verschiedener Formate. Suchergebnisse werden in demNoSQL-Format JSON gespeichert und über eine RESTful-API-Webschnittstelle aus-gegeben.

Elasticsearch wird in der Schul-Cloud beispielsweise zur Realisierung der Sucheinnerhalb des Inhalte-Dienstes (siehe Kapitel 4.1) verwendet, da die Fähigkeitender verwendeten Datenbanken für diesen Anwendungsfall nicht ausreichend sind.

3.2.7 Docker und Kubernetes

Um die einzelnen Services der SaaS-Schicht auszuliefern (Deployment), kommt dasin Kapitel 3.1.3 erwähnte Docker-Containerformat zum Einsatz. Für die Orchestrie-

27

3 Technische Aspekte der Schul-Cloud

rung der Services in der IaaS-Schicht wird voraussichtlich Kubernetes3 verwendet.Kubernetes Cluster werden von mehreren IaaS-Anbietern angeboten. Sie bietenalle benötigten Funktionen für das automatische Deployment und lastabhängigeSkalieren der bereitgestellten Container.

3.3 Skalierbarkeit

Für das Produktivsystem ist es wichtig, einem unterschiedlich stark ausfallendenAnsturm von Schüler/innen standhalten zu können. Aus diesem Grund ist dasThema Skalierbarkeit für eine Schul-Cloud von großer Relevanz. Dementsprechendwurden gut skalierbare Module wie MongoDB und Node.js für den Tech-Stack(siehe Kapitel 3.2) gewählt.

MongoDB bietet sich in diesem Kontext als Datenbank an, da bereits bei derEntwicklung die Themen Skalierbarkeit, Leistung und hohe Verfügbarkeit des Sy-stems besondere Berücksichtigung fanden. Mithilfe des Auto-Shardings ermöglichtMongoDB auch über mehrere Rechenzentren hinweg das Betreiben komplexerArchitekturen. Dies macht MongoDB zu einer für die Zwecke der Schul-Cloudbesonders gut geeigneten Datenbank.

Auch Node.js lässt sich optimal skalieren. Obwohl Node.js initial nicht für Mehr-kernsysteme ausgelegt wurde, kann es mithilfe von Clustering auf mehrere Kerneverlagert werden. Zur Vereinfachung dieses Prozesses, der normalerweise manuellvorgenommen werden muss, wurde der Node.js-Prozessmanager PM2 entwickelt.Dieser Prozessmanager nimmt das Clustering eigenständig vor, wodurch Node.jsauch Mehrkernsystem-tauglich und entsprechend skalierbar wird.

Für eine noch bessere Skalierbarkeit wird außerdem ein HAProxy genutzt. DerHAProxy ist ein sogenannter Load Balancer, welcher Anfragen für TCP- und HTTP-basierte Anwendungen auf verschiedene Server verteilt. Ein einzelner HAProxykann zwischen 15.000 und 40.000 Anfragen pro Sekunde verarbeiten. Insbesonderebei Lastspitzen eignet sich der Einsatz für die Schul-Cloud dementsprechend gut.

3.4 Continuous Integration & Development

Die kontinuierliche Integration (Continuous Integration – CI) ist eine zunehmendpopulär werdende Praxis in der Softwareentwicklung. Hierbei werden Codeände-rungen geprüft und sofortiges Feedback gegeben, ob das Gesamtsystem beeinträch-tigt wird bzw. ob es noch funktioniert. CIs führen automatisiert Tests aus, welchevom Entwickler festgelegt wurden. Gleichzeitig können automatisiert Dokumenta-tionen erstellt und veröffentlicht werden. Auch automatisierte Installationen vonTest- oder Live-Systemen können durch ein CI-System ausgelöst werden (Conti-nuous Deployment).

3Siehe https://kubernetes.io, letzter Zugriff: 12.01.2017.

28

3.5 Privacy & Security

Sobald ein Entwickler Änderungen oder neue Dateien in das Repository (dieCodeverwaltung) der Schul-Cloud pusht, werden die automatisierten Tests vom CI-System ausgeführt. Ziel einer CI ist die Steigerung der Softwarequalität, aber auchdas frühe Erkennen und Beseitigen von Fehlern. Der Code der Schul-Cloud wirdbei jeder Änderung durch den Anbieter Travis getestet. Im Sinne eines ContinuousDeployments wird bei erfolgreichem Durchlaufen aller Tests automatisch eine neueVersion erzeugt und auf den Servern installiert. Aus diesem Grund ist unabdingbar,dass der Code aller Bestandteile automatisiert getestet werden kann. Dafür werdensogenannte Unit-Tests genutzt, die die Funktionalität einzelner Services testensowie Benutzerakzeptanztests, die durch simulierte Eingaben in der Weboberflächedie komplette Anwendung testen.

3.5 Privacy & Security

Durch die Pilotierung einer Schul-Cloud sollen auch Skeptiker einer Digitalisierungder Bildung überzeugt werden. Um den Abbau von Vorurteilen zu begünstigen,werden die Themengebiete Sicherheit und Datenschutz prominent behandelt.

3.5.1 Datenschutz

Das Thema Datenschutz soll während der Pilotphase im engen Dialog mit denLandesdatenschützern berücksichtigt und laufend optimiert werden. Im Sinne derMaxime „Privacy by Design“ wird somit bereits zu Beginn ein besonderer Fokusauf die Problematik gelegt. Die Freigabe eigener Daten wird den Nutzer/innen alsomit einem hohen Maß an Kontrolle bei restriktiven Grundeinstellungen gewährt(siehe Abbildung 3.4).

Nutzerbezogene Daten sollen möglichst lokal gehalten werden, sodass keine per-sonenbezogenen Daten an die Services weitergegeben werden. Aus diesem Grundwird bei der Kommunikation mit den Diensten lediglich ein pseudonymisierterToken mitgeschickt, wodurch der Service nicht weiß, welche Person hinter demToken steht. Bei weiteren Requests schickt der Service den Token zur Verifizierungzurück an die Schul-Cloud. Im Sinne der Datensparsamkeit werden lediglich derName und die E-Mail-Adresse einer Person gespeichert. Selbstverständlich erfolgtdas Hosting, insbesondere der zentralen Dienste, nur auf deutschen Rechenzentren.

Ein Schwerpunktthema beim Datenschutz ist die Einbindung externer Anbie-ter. Dies kommt beispielsweise bei der Nutzung dynamischer Lernangebote zumTragen. Die Lernanwendung soll für eine komfortable Nutzung zwar Klarnamenanzeigen und auch Benachrichtigungen versenden können, diese Daten aber imIdealfall nicht kennen. Hierzu sollen zukünftig interessante Ansätze wie Pseud-onymisierungslösungen und die zentrale Bereitstellung von Benachrichtigungs-schnittstellen weiter evaluiert werden. Über eine dedizierte Oberfläche, die nurmit entsprechender Berechtigung zugänglich ist (Datenschutz-Cockpit), soll einEinblick in alle datenschutzrelevanten Zugriffe ermöglicht werden.

29

3 Technische Aspekte der Schul-Cloud

Abbildung 3.4: Einstellung der Datenfreigabe im Profil (Entwurf)

Eine genauere Ausführung und Dokumentation des Datenschutzes wird unterstetiger Fortschreibung in einem dedizierten Datenschutzkonzept erfolgen. DiesesDatenschutzkonzept soll die Erfassung, Verarbeitung und Nutzung personenbe-zogener Daten regeln und wird den geltenden gesetzlichen Anforderungen ent-sprechen (Datenschutz-Grundverordnung, Bundesdatenschutzgesetz, Landesda-tenschutzgesetze, Schulgesetze).

3.5.2 Security

Die Schul-Cloud benutzt ein Rollensystem, das auf den Rollen Lehrer, Schüler,Eltern, Administrator und Inhalte-Anbieter basiert. Dadurch wird gewährleistet, dassbestimmte Inhalte und Funktionen nur von den dementsprechend berechtigtenRollen ausgeführt und genutzt werden können. Bei jeder Anfrage wird geprüft,ob der Nutzer die richtige Berechtigung (Permission) hat. Falls die entsprechendeBerechtigung nicht vorhanden ist, wird der Nutzer auf die Startseite weitergeleitet.

Im Bereich Security sind darüber hinaus gängige Best-Practices zu berücksichti-gen, von denen einige hier exemplarisch genannt sind:

• Passwörter werden mit einem vordefinierten Algorithmus in einen Hashüberführt. Um die in der Datenbank gespeicherten Passwörter gegen Wör-terbuchattacken abzusichern, wird ihnen eine zufällig gewählte Zeichenfolge(Salt) angefügt. Da Passwörter somit niemals im Klartext vorliegen, wirdsichergestellt, dass weder der Betreiber noch Angreifer auf sie zugreifen kön-nen. Dennoch sollen Nutzer grundsätzlich sichere Passwörter wählen. Ausdiesem Grund wird bei der Passwortvergabe geprüft, dass sie dem Standarddes BSI entsprechen, also mindestens acht Zeichen, ein Sonderzeichen, eineZahl sowie Groß- und Kleinschreibung enthalten.

30

3.5 Privacy & Security

• Datenbanken, in denen Passworthashes gespeichert werden, sind nur in-tern erreichbar. Die Verbindung zwischen Nutzer und Server ist stets überSSL/TLS verschlüsselt und kann somit nicht mitgelesen werden.

• Zur Absicherung gegen Cross-Site-Request-Forgery wird anstelle von Coo-kies der sogenannte JSON Web Token (JWT) benutzt. Der JWT ist ein signier-tes JSON-Objekt. Im Gegensatz zu anderen Methoden, bei denen stets eineSession mit dem Server aufgebaut wird, wird der JWT bei jedem Requestmitgeschickt. Dadurch wird ein zustandsloses Arbeiten ermöglicht.

• Mit modernen Browsern ist das sogenannte „Forward Secrecy“ möglich. Fürden Fall, dass eine SSL/TLS Verbindung entschlüsselt werden sollte, kann derAngreifer nicht auf die Folgeschlüssel der Verbindung schließen. Dadurchbleiben zukünftige Verbindungen weiterhin sicher.

• Des Weiteren ist die Domain Schul-Cloud.org gegen „Downgrade Attacks“abgesichert. Somit ist es Angreifern nicht möglich, das TLS/SSL Protokollauf eine ältere Version mit mehr Schwachstellen herunterzustufen.

Durch die Einbindung der Forschungsgruppe „Security Tech“ des Lehrstuhls fürInternet-Technologien und Systeme4 wird weiterhin eine stetige Optimierung derSicherheit angestrebt.

4Siehe https://hpi.de/meinel/security-tech.html, letzter Zugriff: 10.02.2017.

31

4 Dienste und Komponenten derSchul-Cloud

Im Folgenden werden exemplarisch einige Dienste und Komponenten der Schul-Cloud beschrieben, die als Teil der SaaS-Schicht bereitgestellt werden. Auswahl undGewichtung dieser Dienste und Komponenten basieren auf in der Konzeptphasedurchgeführten Befragungen und Gesprächen unter Einbeziehung des Beraterkrei-ses.

4.1 Inhalte-Dienst

Mit der Schul-Cloud soll eine zentrale Anlaufstelle geboten werden, mit der sowohlLehrer/innen ihren Unterricht vorbereiten als auch Schüler/innen Inhalte vertiefen,nachschlagen und üben können. Dazu wird ein Dienst entwickelt, der

• die Inhalte mehrerer Anbieter an einer Stelle zusammenfasst und sie demNutzer über ein einheitliches Suchinterface zugänglich macht,

• eine optionale Kennzeichnung der Inhalte bezüglich ihrer Qualität und Eig-nung für gewisse Altersstufen ermöglicht,

• Lehrer/innen und Schüler/innen passende Inhalte empfiehlt und

• es Lehrer/innen ermöglicht, ihre Unterrichtsplanung mit anderen Leh-rer/innen zu teilen oder auf deren Planung aufzubauen.

Bei allen Funktionalitäten müssen stets die Lizensierungs- und Altersbeschrän-kungen berücksichtigt werden.

Lerninhalte werden in statische und dynamische Inhalte kategorisiert, die imKontext der Schul-Cloud unterschiedlich gehandhabt werden. Zu den statischenInhalten, die durch den Inhalte-Dienst verwaltet werden, gehören alle Inhalte, dieüber das HTTP(S) Protokoll als Ressourcen ohne spezielle Anwendungsschicht voneinem beliebigen Server ausgeliefert werden können. Auch multimediale Inhaltewie Videos werden in diesem Sinne als statische Inhalte verstanden. Bei dyna-mischen Inhalten ist neben der Katalogisierung zusätzlich dafür zu sorgen, dassein datenschutzkonformer Aufruf der Inhalte unter Nutzung des anwenderspezi-fischen Anwendungsservers realisiert wird (beispielsweise Single Sign-On, sieheKapitel 4.9).

Im weiteren Projektverlauf soll eine Vielzahl von Inhalte-Anbietern an denInhalte-Dienst angebunden werden. Bereits in der Konzeptphase wurde deutlich,

32

4.1 Inhalte-Dienst

dass die Inhalte oft in technischen Silos bereitgestellt werden. Um eine Anbindungzu ermöglichen gilt es daher, für jeden der zu integrierenden Anbieter eine Reihevon Bedingungen zu klären:

• Verfügt der Anbieter über eine API?

• Unterstützt diese API die Möglichkeit, Inhalte zu suchen und zu crawlen1?

• Welche Metadaten werden in welchem Format bereitgestellt?

• Unter welcher Lizenz werden die Inhalte bereitgestellt? Existieren Nutzungs-einschränkungen?

• Sind die Inhalte web- und mobilfähig?

• Gibt es eine Zuordnung zu Kompetenzen oder Curricula?

• Wie werden zusammengehörige Inhalte deklariert?

Es wird erwartet, dass sich im Dialog mit den Anbietern einige Best-Practicesmanifestieren. Diese sollen mit ausgewählten Partnern2 erarbeitet werden. Nebentechnischen Aspekten wie dem Design der API und der Modellierung der Inhaltewird dies aller Voraussicht nach unter anderem das Themengebiet Inhaltemodula-rität betreffen. Die im Rahmen der Best-Practices ausgearbeiteten Funktionalitätenstehen im Sinne einer offenen Schul-Cloud allen Anbietern zur Verfügung.

Dazu wurde ein Datenmodell entwickelt, das im Abschnitt 4.1.1 beschriebenwird. Des Weiteren wurde eine Architektur geschaffen, die die Inhalte aus un-terschiedlichen Plattformen in der Schul-Cloud verwaltet und aktuell hält (Ab-schnitt 4.1.2). Auf diesen Daten setzt der Such- und Empfehlungsdienst auf (Ab-schnitt 4.1.3). Lehrer/innen planen nicht nur den Unterricht mit Unterstützungvorhandener Materialien, sondern erstellen eigene Inhalte. Dies soll durch dieSchul-Cloud gefördert werden (siehe Kapitel 4.2).

4.1.1 Datenmodell

Die AG Mediendistribution und Dokumentation hat mit dem erweiterten Aus-tauschformat (EAF)3 ein einheitliches Modell für Bildungsmedien entwickelt, dasvon vielen Medienverwaltungsprogrammen zum In- und Export von Bildungsme-dien genutzt wird. Nach aktuellem Wissensstand ist es das am weitesten genutzte

1Bei der Suche wird nach speziellen Suchbegriffen gefiltert, wohingegen beim Crawlingder gesamte Datenbestand des Anbieters automatisiert ausgelesen und ausgewertetwird.

2Für die Pilotphase wurden die Anbieter meinUnterricht.de, Serlo, Antares und bettermarksausgewählt.

3Siehe http://agmud.de/eaf-erweitertes-austauschformat/, letzter Zugriff:08.12.2016.

33

4 Dienste und Komponenten der Schul-Cloud

Format im deutschsprachigen Raum, auch wenn viele Anbieter keinem einheitli-chen Format folgen.

Dennoch orientiert sich das konzipierte Datenmodell4 weitestgehend an diesemFormat. Um die oben beschriebenen Anforderungen erfüllen zu können, werdeneinerseits einige zusätzliche, nicht im EAF beschriebene Informationen gespeichertund andererseits einige vorgesehene Felder nicht verwendet. Zur Speicherung derLerninhalte in unserer Datenbank müssen mindestens die folgenden Attributevorhanden sein: originId, title, url und license. Informationen sollten jedoch immerso vollständig wie möglich eingetragen werden.

4.1.2 Katalogisieren von Inhalten

Um die Inhalte über eine zentrale Stelle zugänglich zu machen, gibt es grundsätz-lich drei mögliche Herangehensweisen:

1. eine direkte Abfrage über die API der Inhalte-Anbieter,

2. die Schaffung einer eigenen Datenbasis und

3. eine Hybridlösung aus 1. und 2.

Welche Hergangehensweise gewählt wird hängt in erster Linie davon ab, welcheInformationen und Schnittstellen der Inhalte-Anbieter bereitstellt sowie von der Ak-tualisierungsrate der angebotenen Inhalte. Unabhängig von der Herangehensweisekann jeder Inhalte-Anbieter seine Daten in einem variablen Format bereitstellen.Um alle Daten einheitlich durchsuchbar zu machen, muss für jeden Anbieter einAdapter erstellt werden, der die angebotenen Daten auf das in Abschnitt 4.1.1beschriebene Datenmodell überträgt.

Der für die Katalogisierung inhaltsspezifischer Daten zuständige Dienst heißtschulcloud-content-crawler5. Dieser Service bietet eine API, über die mit der Rou-te /fetch das Sammeln der Katalogdaten aller momentan unterstützten Inhalte-Anbieter angestoßen wird. Aktuell erfolgt dies automatisch über einen Cron-Job ineinem Abstand von sechs Stunden. Das Zeitintervall soll zukünftig basierend aufder Nutzung der Inhalte in der Schul-Cloud und der Updatefrequenz durch dieInhaltsanbieter angepasst werden.

Für jeden der Inhalte-Anbieter muss ein eigener Client angelegt werden. Diesermuss die öffentliche Methode getAll() anbieten, über die alle verfügbaren Inhaltein einem einheitlichen Datenformat ausgegeben werden. Da viele Anbieter daseinheitliche Austauschformat EAF nicht implementiert haben, muss beispielsweisedie Übersetzung der natürlichsprachlichen Bezeichnungen von Schulfächern in die

4Für die komplette Aufschlüsselung des Datenmodells siehe https://github.com/schulcloud/schulcloud-content-crawler#attributes, letzter Zugriff: 04.02.2017.

5Siehe https://github.com/schulcloud/schulcloud-content-crawler, letzter Zu-griff: 04.02.2017.

34

4.2 Cloud-kompatible Erstellung von Lehrmaterialien

im Standard festgeschriebenen Kodierungen unter Nutzung des Crawlers erfolgen,bevor die normalisierten Daten in die Datenbank geschrieben werden.

4.1.3 Such- und Empfehlungsdienst

Da die Katalogdaten aller Anbieter an einer zentralen Stelle gespeichert werden,kann in Echtzeit nach bestimmten Inhalten gesucht werden. Der Such- und Emp-fehlungsdienst der Schul-Cloud heißt schulcloud-content-api6. Der Service ermög-licht die Suche nach einem bestimmten Begriff, wobei mehrere Attribute wie zumBeispiel der Titel und die Beschreibung des Inhalts herangezogen werden. Wei-terhin kann nach Lizenzen, Fächern und Altersstufen gefiltert werden. ImpliziteBeschränkungen wie zum Beispiel das Alter des Schülers oder der Standort derSchule könnten dabei berücksichtigt werden. Mit der in Kapitel 3.2.6 vorgestell-ten Suchmaschine Elasticsearch kann die Suche nach Inhalten Tippfehler-toleranterfolgen.

Um den Überblick über die vielen Inhalte und deren Qualität nicht zu verlieren,ist die Einführung eines Bewertungssystems geplant. Infolgedessen ist es mit Hilfedes Elasticsearch Plug-Ins Taste möglich, Nutzer/innen Inhalte vorzuschlagen, dievon ähnlichen Nutzer/innen positiv bewertet wurden. So kann ein Lehrer/in bei-spielsweise Inhalte angezeigt bekommen, die von anderen Lehrer/innen desselbenFachgebiets seines Bundeslandes oder Schulkreises positiv bewertet wurden.

4.2 Cloud-kompatible Erstellung von Lehrmaterialien

Durch die Vernetzung der Lehrer/innen-Community können Mehrwerte und Syn-ergien generieret werden. Die Schul-Cloud sollte dies durch entsprechende An-gebote aktiv unterstützen. Eine Option ist das Zugänglichmachen von Inhalten,welche durch einzelne Lehrer/innen oder Dritte wie etwa Stiftungen erstellt wer-den. Neben dem technischen Aspekt, also der Bereitstellung eines Editors, sind hierThemen wie Lizenzen und Bearbeitbarkeit der Inhalte entscheidend. Insbesonderefür das technisch komplexe Thema der Bereitstellung einer Editorenumgebung sollauf vorhandene Lösungen und laufende Entwicklungen bestehender Initiativenwie z. B. Serlo zurückgegriffen werden.

4.3 Benachrichtigungsdienst

Als zentrale Anlaufstelle für Schüler/innen und Lehrer/innen soll die Schul-Cloudsowohl den Unterricht als auch das Lernen erleichtern. Hierfür soll eine geräte-übergreifende Benachrichtigungsinfrastruktur bereitgestellt werden. Diese wird

6Siehe https://github.com/schulcloud/schulcloud-content-api, letzter Zugriff:04.02.2017.

35

4 Dienste und Komponenten der Schul-Cloud

technisch über einen Benachrichtigungsdienst genannten Service umgesetzt, des-sen Architektur in Abbildung 4.1 dargestellt ist. Über eine gesicherte Schnittstellekönnen Nachrichten direkt von den verschiedenen Diensten der Schul-Cloud undvon Drittanbietern versendet werden. Der Dienst ermöglicht das Versenden vonNachrichten an einzelne Gruppen oder ganze Schulklassen, sodass die entsprechen-den Schüler/innen beispielsweise über Hausaufgaben oder ausfallende Stundeninformiert werden können. Auch im Unterricht kann der Benachrichtigungsdiensteinen Mehrwert bieten; er ermöglicht Lehrer/innen beispielsweise, mit wenigenKlicks ein Video an alle Schüler/innen der Klasse zu senden.

Abbildung 4.1: Architektur des Benachrichtigungsdienstes

Der Benachrichtigungsdienst funktioniert unabhängig vom Gerät oder Betriebs-system der Schüler/innen. Nachdem ein Gerät bei der Schul-Cloud erstmaligregistriert wurde, kann der Dienst Neuigkeiten über den Webbrowser oder dieSchul-Cloud-App auf das Gerät weiterleiten. Das Erstellen von Nachrichten istdabei nicht die Aufgabe des Benachrichtigungsdienstes, sondern das Verteilen vonNachrichten auf die verschiedenen Endgeräte der Schul-Cloud-Nutzer/innen. Diezu versendenden Nachrichten werden von den verschiedenen Diensten der Schul-Cloud erstellt und an den Benachrichtigungs-Service geschickt. Auch Drittanbieterhaben die Möglichkeit, Nachrichten an die API des Benachrichtigungsdienstes zusenden. Alle Nachrichten werden gleichwertig behandelt und den Nutzer/innenzuverlässig zugestellt.

36

4.4 Kalender

Die einzelnen Nachrichten bestehen aus einem Titel und einem kurzen Beschrei-bungstext (siehe Abbildung 4.2). Jede Nachricht kann mit einer Aktion wie z. B.dem Öffnen des Stundenplans, einer App, einem Link zu Moodle oder einer be-liebigen Webseite verknüpft werden. Durch zwei Prioritätsstufen wird beeinflusst,ob eine Benachrichtigung das Gerät sofort aufweckt oder diese erst beim nächstenEinschalten des Bildschirms erscheint. Wichtige Informationen wie eine kurzfri-stige Raumänderung der nächsten Stunde werden so nicht verpasst, wohingegenzeitlich unkritische Nachrichten nicht den regulären Unterrichtsablauf stören. DerBenachrichtigungsdienst speichert keine personenbezogenen Daten, sondern ver-fügt lediglich über anonymisierte Verweise auf die Geräte eines Nutzers.

Abbildung 4.2: Ansicht einer Benachrichtigung auf dem Desktop

Zentraler Bestandteil des Benachrichtigungsdienstes ist eine Eskalationsstrate-gie, um nicht an alle Geräte eines Nutzers die gleiche Nachricht zu versenden.Zuerst wird das aktive Gerät eines Nutzers benachrichtigt. Sollte diese dort nichtgelesen werden, wird die Nachricht nach einer bestimmten Zeit an das Handydes Nutzers gesendet. In der letzten Eskalationsstufe wird eine E-Mail an denNutzer/in gesendet, die je nach Nachrichten-Priorität eine einzelne Nachricht odereine Zusammenfassung des vergangenen Tages enthält.

Die Auslieferung der Benachrichtigungen wird je nach Plattform über von Drit-ten bereitgestellte Dienste übernommen. Dazu wird im Regelfall als letztes Gliedder Transportkette die Infrastruktur der Gerätehersteller oder -betreiber verwen-det.

4.4 Kalender

Der Kalenderservice ist für alle Daten der Schul-Cloud, die Termin- oder Eventcha-rakter haben, zuständig. Er wird für die Verwaltung von Terminen (beispielsweisezum Erstellen, Lesen, Ändern und Löschen) genutzt. Termine sind zum BeispielSchul-Events, Unterrichtsstunden oder private Einträge einzelner Nutzer/innen,die verschiedenen Bereichen (Scopes) wie der gesamten Schule, einem Jahrgangs-verband, einer Klasse, einer Arbeitsgemeinschaft oder dem Nutzer/in selbst zuge-ordnet werden können. Durch diese bereichsbasierte Zuordnung werden Schreib-und Leseberechtigungen auf einfache Art festgelegt. Eine beispielhafte Darstellung

37

4 Dienste und Komponenten der Schul-Cloud

Abbildung 4.3: Darstellung von Terminen im Frontend

der aus dem Kalenderdienst stammenden Daten im Web-Frontend findet sich inAbbildung 4.3.

Zur Speicherung von Terminen nutzt der Kalenderdienst den iCalendar-Standard,welcher Funktionen wie Erinnerungen und Angaben zur Verfügbarkeit spezifiziert.Außerdem ermöglicht die Verwendung des iCalender-Standards einen Austauschmit anderen – möglicherweise bereits verwendeten – Kalenderdiensten wie denenvon WebWeaver, Moodle oder Google Kalender. Auch die Nutzung des Servicesohne einen externen Kalenderdienst ist möglich. Dabei werden alle Termine direktin der Schul-Cloud gespeichert und verwaltet.

Die Nutzer/innen werden durch den zentralen Schul-Cloud Server (siehe Ab-schnitt 4.10) unter Nutzung eines zuvor generierten Tokens authentifiziert undautorisiert (siehe Kapitel 3.5). Die jeweiligen Schreib- und Leserechte einzelner Nut-zer/innen werden ebenfalls im zentralen Schul-Cloud Server-Dienst gespeichertund bei Bedarf an den Kalenderservice weitergeleitet.

Um Termine im Service zu erstellen, können diese über die Route events wahl-weise im JSON- oder ICS-Format angelegt werden. Auch der lesende Zugriff, bei-spielsweise auf die Route /calendar, kann Ergebnisse im JSON- oder ICS-Formatzurückliefern. Liegen Termine bereits in einer externen Quelle, beispielsweise ei-

38

4.5 Dateimanagement

nem digitalen Stundenplan oder einer anderen über das Internet erreichbaren Ter-minsoftware, vor, können diese über den Request POST /external-feed-subscriptionabonniert werden. Damit werden Termine aus dem angegebenen Kalender in denKalenderservice übernommen und einem angegebenen Scope zugeordnet. Mithilfeeines im Hintergrund laufenden Cron-Jobs werden die Einträge aus dem jeweiligenFeed regelmäßig übertragen, sodass Nutzer/innen stets auf die neuste Version desFeeds zugreifen können.

Da der Kalender-Dienst keine domänenspezifische Kenntnis über die Art derangelegten Termine besitzen muss, ist es leicht möglich, den Kalenderservice inandere Schul-Cloud-Services zu integrieren.

4.5 Dateimanagement

Der Dateimanagement-Service wird implementiert, damit Schüler/innen und Leh-rer/innen Dateien ablegen können, die dann auf allen Endgeräten verfügbar sind.Die interne Speicherung der Daten ist hierbei über ein sogenanntes Strategy-Pattern [2] abstrahiert. Dadurch kann der Service für die interne Speicherungder Binärdateien auf verschiedene Lösungen und Systeme zurückgreifen.

Im Rahmen der Schul-Cloud wird zunächst Amazons S3 API Standard unter-stützt. Hierbei wird anbieterseitig ein sogenannter Bucket erstellt, in welchem dieDateien gespeichert werden. Jede Datei hat einen eindeutigen Key und eine Ver-sionsnummer, mit der sie identifiziert werden kann. Über eine REST-Schnittstellekann auf den Bucket und die jeweiligen Dateien im Bucket zugegriffen beziehungs-weise neue Dateien hochgeladen werden. Die S3 API hat sich als De-facto-Standardim Bereich der Storage APIs etabliert. Ihre Unterstützung ermöglicht sowohl denEinsatz von Amazons Lösung als auch zahlreicher anderer Lösungen, die dieseAPI unterstützen. Hierzu zählen Private Cloud-Lösungen wie OpenStack aber auchdedizierte Open-Source-Produkte7.

Pro Schule wird automatisch jeweils ein Bucket eingerichtet, in dem die Datei-en aller zu dieser Schule gehörigen Beteiligten gespeichert sind. Somit kann aufLandes-, Träger- oder Schulebene jeweils ein anderer Anbieter zum Speichern derBinärdateien gewählt werden. Der Datei-Dienst selbst bietet eine S3-kompatibleAPI an. Über den Schul-Cloud Client-Distributor wird zusätzlich ein komfortablerClient zur Verfügung gestellt8. Dabei übernimmt die Schul-Cloud das Speichernvon zusätzlichen Metadaten, die Erzeugung von Thumbnails und die Verwaltungvon Berechtigungen. Auch das Teilen von Inhalten soll ermöglicht werden. DerService kann zudem von anderen Services verwendet werden, sollten diese einebinäre Dateiablage benötigen.

7Eine Ausnahme bildet derzeit Microsofts Azure. Hier käme ein Adapter zum Einsatz.8Momentan ist nicht geplant, diese API extern zugänglich zu machen.

39

4 Dienste und Komponenten der Schul-Cloud

4.6 Hausaufgaben und sonstige Aktivitäten

Der Hausaufgaben-Dienst stellt die Basis für ein digitales Hausaufgabenbuch bereit.Hausaufgaben und andere Aktivitäten, welche im schulischen Kontext zu erledigensind, können durch den Lehrenden oder die Schüler/innen selbst angelegt werden.

In einer ersten Version gleicht der Dienst einer digitalen To-do-Liste. Er kann soerweitert werden, dass auch die Bereitstellung und das Einreichen von bearbeitetenAufgaben durch ihn abgedeckt wird. Eine zukünftige Anbindung an den Kalender-und den Benachrichtigungsdienst soll dabei helfen, zeitlich begrenzte Abgabenrechtzeitig zu bearbeiten und hochzuladen.

4.7 Kollaboration

Aufgrund ihrer Omnipräsenz kann eine deutschlandweit genutzte Schul-Clouddie kollaborative Zusammenarbeit der Nutzer potenziell fördern. Innerhalb derSchul-Cloud wird zwischen Angeboten, die sich explizit zur Förderung kollabora-tiven Arbeitens anbieten und solchen, die eine Kollaboration eher implizit fördern,differenziert. Während zu letzterem unter anderem der Inhalte-Dienst zählt, sindexplizite Tools beispielsweise unterschiedliche Editoren für ein gemeinsames Erstel-len und Bearbeiten von Arbeitsergebnissen. Neben Open-Source-Lösungen ist hierinsbesondere Office365 mit den darin enthaltenen Anwendungen Word und Power-Point zu nennen, die je nach Paket nur online als webbasierte Variante und/oderoffline als native Anwendung zur Verfügung gestellt werden. Eine möglichst naht-lose Integration und Anbindung solcher Tools ermöglicht kollaboratives Arbeitenüber den Lernraum Schule hinaus.

Kritisch zu hinterfragen ist hingegen die Bereitstellung von Anwendungen undDiensten durch die Schul-Cloud, welche primär der Kommunikation dienen. Mes-senger wie WhatsApp haben hier, auch wenn diese aus Datenschutzgründen häufigals inakzeptabel zu betrachten sind, bereits einen Verbreitungs- und Akzeptanz-faktor, der die Einführung von konkurrierenden Diensten erschwert. Daher musszuerst eine Akzeptanzevaluation im Rahmen des Pilotbetriebes vorgenommen wer-den.

4.8 Learning Analytics

In der ersten Pilotphase wird noch kein Schwerpunkt auf das perspektivisch im-mer wichtiger werdende Thema Learning Analytics gesetzt. Allgemeine Vorbe-reitungen für den Einsatz von Learning Analytics sollen jedoch bereits getroffenwerden. Grundsätzlich befindet sich der Einsatz von Learning Analytics in einemSpannungsverhältnis mit dem Datenschutzgrundsatz der Datensparsamkeit. DurchMaßnahmen wie Anonymisierung lässt sich dies jedoch zumindest teilweise ent-spannen.

40

4.9 Single Sign-on – Ein Login für alle Dienste

Bei der Nutzung der Apps und der Weboberfläche sollen eventbasierte Datenan einen hierfür bereitstellten Endpunkt gesendet werden. Hierfür bietet sich einexAPI-artige Ausprägung an, wie sie von Renz et al. [6] vorgeschlagen wird. DieserEndpunkt kann perspektivisch auch von angebunden Tools genutzt werden.

4.9 Single Sign-on – Ein Login für alle Dienste

Single Sign-on (SSO) bedeutet, dass Nutzer/innen sich mit ihren Zugangsdateneiner Plattform auf verschiedenen anderen Plattformen anmelden können, insofernletztere das Single Sign-on des ersteren Anbieters ermöglichen. In der Schul-Cloudwird SSO bereits für Moodle, LernSax und ITSLearning unterstützt. Nutzer/innenmüssen also keinen neuen Account für die Schul-Cloud erstellen, wenn sie bereitsüber einen Zugang zu einem der genannten Systeme verfügen. Voraussetzungfür den SSO ist, dass die Schule eines dieser Subsysteme bereits einsetzt, dieSchüler/innen dort registriert sind und das System über das Internet erreichbarist.

Des Weiteren sollen in der Zukunft auch Services genutzt werden, bei denen dieZugangsdaten der Schul-Cloud als SSO genutzt werden können, wie z. B. Office365. Die Schul-Cloud kann in Zukunft als OAuth Provider agieren, um sich mit derSchul-Cloud bei anderen Diensten anzumelden und dann Gebrauch zu machenvon Single Sign-on.

Diese Funktionalität ist wichtig für Kollaborations- und andere angebunde Tools,aber auch für Lerninhalte, die von anderen Anbietern bereitgestellt und ausgeliefertwerden. Hierbei ist insbesondere aus Datenschutzgründen zu klären, welche Datenan diese übermittelt werden. Erstrebenswert ist, dass diese über keine explizit per-sonenbezogenen Daten verfügen. Da diese aber zur Nutzung von Tools notwendigsein kann gilt es Konzepte und Lösungen zu erarbeiten, die diese Informationenzur Laufzeit wieder in der Software anzeigen. Dies kann bspw. über einen Proxyoder ein zur Laufzeit im Browser ausgeführtes Script erfolgen.

4.9.1 Registrierungsprozess

Im ersten Schritt setzt sich die als Schuladministrator bestimmte Person mit demSchul-Cloud-Team in Verbindung. Daraufhin erhält er von diesem einen persona-lisierten Einladungslink. Nach dem Vervollständigen der Daten zu seiner Personund der Schule erhält der Administrator via E-Mail einen Bestätigungslink, nachdessen Aufruf er sich mit seiner E-Mail-Adresse und seinem Passwort anmeldenkann.

Dem Administrator steht in der Schul-Cloud eine spezielle Konfigurationsseitezur Verfügung. Dort kann er Lehrer/innen einladen sowie Klassen und Kurseanlegen. Die eingeladenen Lehrer/innen erhalten daraufhin ebenfalls einen per-sonalisierten Einladungslink. Nachdem sich der Lehrer/in eingeloggt hat, kannauch dieser Klassen und Kurse anlegen. Zum Einladen von Schüler/innen kann

41

4 Dienste und Komponenten der Schul-Cloud

ein Einladungslink (Kurz-URL) generiert werden, welcher per E-Mail verbreitetoder an die Tafel geschrieben werden kann.

Falls eine Schule kein bereits bestehendes System wie Moodle, Lernsax oderITSLearning einsetzt, muss der Schüler/in sich über den bereitgestellten Link desLehrers anmelden. Dort gibt der Schüler/in seine Daten ein und erhält via E-Maileinen Bestätigungslink.

Ist eine Schule hingegen an ein bereits bestehendes System angebunden, wirddieses als Verifizierungssystem genutzt. Damit wird sichergestellt, dass der Schü-ler/in auch Schüler/in an der angegebenen Schule ist. Beim der ersten Anmeldungwird der Schüler/in bei Bedarf auf die Registrierungsseite weitergeleitet, wo ergegebenenfalls fehlende Daten ergänzen kann.

Verfügt ein Schüler/in über keine eigene E-Mail-Adresse, wird im Bedarfsfalleine Pseudo-Mail-Adresse erstellt. Im Rahmen des Registrierungsprozesses müssendie Nutzungsbedingungen der Schul-Cloud bestätigt werden.

4.10 Schul-Cloud Server

Der Schul-Cloud-Server übernimmt insbesondere in der Pilotphase dasOrganisations- und Identitätsmanagement. Hierzu gehört die Authentifizierungdurch externe Dienste (beispielsweise Moodle, LernSax oder ITSLearning, sieheKapitel 4.9). Er dient zusätzlich dem Vermitteln von nach außen bereitgestelltenFunktionen und deren Weiterreichung an interne Schul-Cloud-Dienste. Außerdemstellt der Schul-Cloud Server die LTI-Funktionalität bereit, welche eine der Mög-lichkeiten zur Anbindungen externer Tools darstellt.

Der Schul-Cloud Server basiert auf den in Kapitel 3.2 beschriebenen Web-Technologien Feathers, Node.js, JavaScript und MongoDB. Durch Feathers ist derServer aus vielen Services aufgebaut, welche im Bedarfsfall vom System abgekap-selt und als eigene Microservices betrieben werden können. Um mit dem Serverkommunizieren zu können, wird eine RESTful API bereitgestellt. Zur Unterstüt-zung von Echtzeitkommunikation werden WebSockets verwendet. Diese erlaubeneine synchrone Kommunikation zwischen Client und Server. So kann der Client bei-spielsweise über Änderungen wie neue oder aktualisierte Daten informiert werdenund sich daraufhin eigenständig aktualisieren.

4.11 Webclient/Frontend

Der Schul-Cloud Webclient basiert auf den in Kapitel 3.2 beschriebenen Web-Technologien ReactJS, Node.js und JavaScript. Der Webclient wird zur Laufzeitals eigenständige JavaScript-Applikation an den Nutzer ausgeliefert. Anschließendkommuniziert der Webclient des Nutzers direkt über eine WebSocket-Verbindungmit dem Schul-Cloud Server.

42

4.12 Mobile native Apps

Abbildung 4.4: Ansicht des Dashboards (Entwurf) mit unterschiedlicherBildschirmauflösung

Da ab diesem Zeitpunkt lediglich Nutzdaten im JSON-API-Format zwischenSchul-Cloud Server und Client ausgetauscht werden, wird unnötiger Datenverkehrvermieden. Die Web-Oberfläche (siehe Abbildung 4.4) passt sich im Sinne einer„Responsive-Web-App“ der verfügbaren Bildschirmgröße an, um unabhängig vombenutzten Gerät eine optimale Darstellung zu ermöglichen. Darüber hinaus verfügtsie über kontextsensitive Modi, die beispielsweise in Abhängigkeit der Tageszeitunterschiedliche Ansichten (zu Hause / in der Schule) bieten.

4.12 Mobile native Apps

Nach der Installation einer nativen Schul-Cloud-Anwendung (App) auf den mo-bilen Endgeräten der Schüler/innen ist die Schul-Cloud immer schnell aufrufbar.Im Gegensatz zu einer Website kann die App auch auf native Funktionalitäten wieKamera, GPS und andere Sensoren der jeweiligen Geräte zugreifen. Grundsätz-lich sind durch die Verfügbarkeit einer API aller Schul-Cloud-Funktionalitäten diebesten Voraussetzungen gegeben, um eine native mobile Anwendung anzubieten.Hierbei bieten sich drei Varianten an.

Die einfachste Version ist das Ausliefern des auch im Web verwendeten Clientsin einer nativen Hülle. PhoneGap ist für diese Variante als prominenter Vertretervon Frameworks zur Erstellung hybrider Applikationen für mobile Endgeräte zu

43

4 Dienste und Komponenten der Schul-Cloud

nennen. Die daraus entstehenden Applikationen sind hybride Apps, die sowohlmit Android als auch iOS und Windows Phone nutzbar sind. PhoneGap ermöglichtaußerdem den Zugriff auf die oben beschriebenen nativen Funktionalitäten derjeweiligen Geräte. Somit müssen lediglich wenige Teile der Client-Anwendungerweitert und angepasst werden. Die Nutzeroberfläche ist identisch zu der mobilenWebversion und auf allen Plattformen gleich.

Alternativ kann die Anwendung als native App [1] umgesetzt werden, welcheauf die dokumentierte REST-API der Schul-Cloud zugreift. Hierdurch kann ei-ne noch bessere Nutzbarkeit und Anpassung an betriebssystemnahe Funktionenrealisiert werden. Dies betrifft unter anderem die Verwendung der App bei man-gelhafter oder nicht vorhandener Internetanbindung. Eine Option ist die gänzlichnative Umsetzung der Anwendung, die für jede Plattform in den jeweils platt-formspezifischen Sprachen und Frameworks umgesetzt wird. Alternativ kann dieRealisierung einzelner Teile der Applikation in React Native9 evaluiert werden.

Um den Aufwand für Wartung und Weiterentwicklung gering zu halten, kannauch in den nativen Anwendungen ein hybrider Ansatz verfolgt werden. Seltenverwendete Teile der Anwendung werden dabei als WebView eingebunden. Eineendgültige Entscheidung zur konkreten Entwicklung der mobilen nativen Appserfolgt nach ausgiebiger prototypischer Evaluation der verschiedenen Lösungen.

9Siehe https://facebook.github.io/react-native/, letzter Zugriff: 10.02.2017.

44

5 Nächste Schritte auf dem Weg zurSchul-Cloud

Für einen erfolgreichen Verlauf der Pilotphase sind als nächste Schritte die Imple-mentierung und Testung der konzeptionierten Komponenten geplant. Die Einbe-ziehung der 25 Pilotschulen aus dem MINT-EC-Netzwerk sowie die bildungswis-senschaftliche Begleitung sind hierbei wesentliche Bestandteile.

5.1 Implementierung und Testung

In der Pilotphase sollen beispielhafte Lernanwendungen über die Schul-Cloud ab-gebildet werden. Die in der Pilotphase bereitgestellten Dienste orientieren sich anden erhobenen Anwendungsszenarien (Dateiaustausch, Lernortvernetzung, Kol-laboration und Differenzierung). Getreu eines agilen Ansatzes ist die (Weiter-)Entwicklung und Testung über die gesamte Projektlaufzeit vorgesehen.

Austausch mit themennahen InitiativenDie Schul-Cloud ist in einem komplexen Gefüge aus diversen Stakeholdern zuverorten. Neben den Pilotschulen und Inhalte-Anbietern sind IT-Dienstleister, Ex-pert/innen aus der Fachcommunity sowie verwandte Initiativen zu nennen. Dieeffiziente Einbindung all dieser Akteure ist eine wichtige Basis für die erfolgrei-che Pilotierung der Schul-Cloud. Die Grundlage dafür bildet ein gemeinsamesVerständnis aller beteiligten Stakeholder hinsichtlich der Erwartungen, Inhalte, Lei-stungen, Ziele und Verwendungsaussichten. Ein wissenschaftlich orientierter sowietechnisch basierter Austausch mit verwandten Initiativen auf nationaler und/oderinternationaler Ebene ist unabdingbar, um Synergiepotenziale zu eruieren. Inhalt-lich geht es dabei insbesondere um das Leistungsportfolio, mögliche Schnittstellen,die Leistungsfähigkeit und offene Bedarfe, welche die Schul-Cloud adressierensollte.

Einbindung bestehender Ansätze und InhalteDie Schul-Cloud ist eine übergreifende und integrative Lösung. Sie soll bestehendeAnsätze und Lösungen nicht ersetzen, sondern diese vernetzen und somit einergrößeren Gruppe von Nutzer/innen zur Verfügung stellen. Dabei sollen, soweitmöglich, bestehende Standards verwendet werden. Die Schul-Cloud soll u. a. fol-gende Aspekte berücksichtigen:

45

5 Nächste Schritte auf dem Weg zur Schul-Cloud

• Entwicklung von Workflows zur Einbindung bestehender Ansätze

• Anbindung eines Dienstes für Dateimanagement (siehe Kapitel 4.5) zumAblegen und Teilen von Dateien (einschließlich der von den Pilotschulenerarbeiteten Inhalte), z. B. vorhandene Office 365-Angebote oder andere S3-kompatible Speicher

• Anbindung an Lernmanagement-Systeme (LMS), u. a. zur Authentifizierung

• Anbindung von externen Kollaborationstools

• Lauffähigkeit der Schul-Cloud in PaaS-Systemen und Third-Party-Clouds

Im Bereich von Inhalten ist eine große Vielfalt an Materialien vorhanden. Hierbeigibt es zum einen kostenlose OER-Inhalte sowie kommerzielle Angebote. Diesewerden u. a. von OER-Anbietern, Verlagen und Start-ups angeboten. Zusätzlich istzwischen „statischen“ Inhalten (Videos, Lernblätter) und „dynamischen“ zu unter-scheiden (solchen, die eine serverseitige Laufzeitumgebung benötigen). Einschrän-kend für die Einbindung von Inhalten ist, dass im Moment viele Inhalte-Anbieternoch keine oder ungenügende APIs haben. Die Schul-Cloud wird in diesem Zu-sammenhang unterschiedliche Schnittstellen (z. B. LTI) anbieten. Diese können vonden Anbietern genutzt werden, um die Inhalte über die Schul-Cloud zugänglichzu machen. Damit ist die Schul-Cloud offen für alle Anbieter von Lerninhalten.

Einbindung von IT-ProvidernFolgende zwei infrastrukturelle Angebote der Schul-Cloud sollen durch zentraleDienste geeigneter Cloud-Provider bereitgestellt und modular sowie interoperabelin eine Schul-Cloud-Architektur eingebunden werden:

• Single Sign-On zur zentralen Anmeldung an allen Diensten

• Storage-Dienst zur Ablage von Dateien

5.2 Einbeziehung der 25 Pilotschulen aus demMINT-EC-Netzwerk

Ausschlaggebend für den Erfolg der Schul-Cloud ist die frühe Einbeziehung derSchulleitungen, Lehrkräfte sowie Schüler/innen. Um dieses Vorgehen zu ermög-lichen, wird mit Vertreter/innen der Pilotschulen und dem MINT-EC währendder gesamten Pilotphase eng zusammengearbeitet. Nur eine vertrauensvolle, en-gagierte Kooperation ermöglicht einen nutzenorientierten, zielgruppengerechtensowie nachhaltigen Einsatz der Schul-Cloud. Die Einbindung der Pilotschulen indie Ausgestaltung der Schul-Cloud bedeutet, dass sie:

46

5.3 Bildungswissenschaftliche Begleitung

• Vorschläge für die praktische Arbeit von Schulleitungen, Lehrkräften und derSchülerschaft sowie ggf. Eltern mit der Schul-Cloud benennen,

• Ideen für die inhaltliche Ausgestaltung einbringen und

• Konzepte für die praktische Anwendung der Schul-Cloud erarbeiten.

Zusätzlich wird der MINT-EC mit den Schulen einen Themencluster zur Schul-Cloud bilden. Dieser wird Arbeitsgruppen zu folgenden Themen bilden:

• Schulleitung und Schulorganisation

• Nutzung der Schul-Cloud im Unterricht

• Einsatz von IT

In den Arbeitsgruppen werden während der Pilotphase Konzepte rund um dieSchul-Cloud erarbeitet und getestet.

5.3 Bildungswissenschaftliche Begleitung

Um die Schul-Cloud an den bildungspolitischen und pädagogischen Rahmenbe-dingungen zu spiegeln, werden bildungswissenschaftliche Aspekte durchgängigberücksichtigt. Entsprechende Anregungen sowie Handlungsempfehlungen kön-nen maßgeblich dazu beitragen, das volle Potenzial der Schul-Cloud zu entfaltenund den Weg für ihre nachhaltige Nutzung zu ebnen.

Einbindung einer BegleitgruppeEs besteht bereits seit dem Beginn des Schul-Cloud-Projekts eine Begleitgruppemit Expert/innen aus Vereinen, Unternehmen und Agenturen. Die Begleitgruppebringt externen Sachverstand, Fragen und Kommentare ein und diskutiert denaktuellen Projektfortschritt. Sie wird weiterhin fortgeführt.

Einbezug weiteren externen SachverstandsÜber die Beratungsleistung hinaus, wird zu einzelnen Themenfeldern, wie z. B. denrechtlichen Rahmenbedingungen, voraussichtlich weiterer externer Sachverstandeinbezogen. Ein wesentlicher Erfolgsfaktor für den niedrigschwelligen Zugangzu digitalen Unterrichtsinhalten verschiedener Anbieter und deren nahtlose In-tegration in den Unterricht ist es neben der Rechtssicherheit, dass der Umgangmit diesen Unterrichtsmaterialien für die Lehrkräfte in deren gewohnte Unter-richtsvorbereitung passt und somit wie selbstverständlich erfolgen kann. Hierzumüssen die nötigen (digitalen) Kompetenzen bei den Lehrkräften vorhanden sein.Gleichzeitig brauchen die Lehrkräfte einfach zu handhabende Unterrichtsentwürfeund -anleitungen, die das in der Schul-Cloud zur Verfügung stehende Materialsinnvoll in den Unterricht einbeziehen. Den Lehrkräften muss mit diesen Beispie-len aufgezeigt werden, wie Unterricht mit digitalen Medien gelingt und wie den

47

5 Nächste Schritte auf dem Weg zur Schul-Cloud

Schüler/innen mit diesem Material die anvisierten Kompetenzen vermittelt wer-den. Die Hilfsmaterialien sollen mit zuverlässigen Aussagen über die Qualität derLehrmaterialien verbunden sein1.

EvaluationIn Hinblick auf die nachhaltige Weiterführung und den perspektivischen Ausbauder Schul-Cloud wird eine prozessbegleitende Evaluation der Pilotphase angestrebt.Diese kann sowohl durch das Projektteam der Schul-Cloud als auch mittels externerUnterstützung durchgeführt werden.

Es werden dafür Erfolgsfaktoren und Evaluationskriterien definiert, deren Errei-chung später durch geeignete Instrumente, wie z. B. Fragebögen oder strukturierteFeedback-Interviews, überprüft wird.

1Ein entsprechendes Unterstützungsangebot durch Prof. Dr. Julia Knopf und Prof. Dr.Silke Ladel (Universität des Saarlandes) liegt dem HPI vor.

48

Literaturverzeichnis

[1] A. Charland und B. Leroux. „Mobile Application Development: Web vs. Na-tive“. In: Commun. ACM 54.5 (Mai 2011), Seiten 49–53. issn: 0001-0782. doi:10.1145/1941487.1941504.

[2] E. Gamma, R. Helm, R. Johnson und J. Vlissides. Design Patterns: Elements ofReusable Object-oriented Software. Boston, MA, USA: Addison-Wesley LongmanPublishing Co., Inc., 1995. isbn: 0-201-63361-2.

[3] M. Kerres. „E-Learning vs. Digitalisierung: Neues Label oder neues Para-digma?“ In: Handbuch E-Learning. 61. Ergänzungslieferung. Köln: FachverlagDeutscher Wirtschaftsdienst, 2016. isbn: 978-3-87156-298-3.

[4] Kultusministerkonferenz. Strategie der Kultusministerkonferenz „Bildung in derdigitalen Welt”. https://www.kmk.org/fileadmin/Dateien/pdf/PresseUndAktuelles/2016/Bildung_digitale_Welt_Webversion.pdf. LetzterZugriff: 12.01.2017. 2016.

[5] T. Rathgeb u. a. Jugend, Information, (Multi-) Media – Basisstudie zum Medienum-gang 12- bis 19-Jähriger in Deutschland. https://www.mpfs.de/fileadmin/files / Studien / JIM / 2016 / JIM _ Studie _ 2016 . pdf. Letzter Zugriff:11.01.2017. 2016.

[6] J. Renz, G. Navarro-Suarez, R. Sathi, T. Staubitz und C. Meinel. „EnablingSchema Agnostic Learning Analytics in a Service-Oriented MOOC Platform“.In: Proceedings of the Third (2016) ACM Conference on Learning@Scale. ACM.2016, Seiten 137–140.

49

Danksagung

Die Autor/innen danken den Mitgliedern der Begleitgruppe (Antares ProjectGmbH, Arbeitgeberverband Gesamtmetall, bettermarks GmbH, Bundesministe-rium für Bildung und Forschung, Bündnis für Bildung e.V., Datenschutz undInformationsfreiheit Mecklenburg-Vorpommern, Gymnasium Carolinum, HEL-LIWOOD media & education, Initiative D21, m2more GmbH, Marie-Curie-Gymnasium, Microsoft Deutschland GmbH, MINT-EC – Das nationale Excellence-Schulnetzwerk, Ratsgymnasium Wolfsburg, SAP, Sekretariat der Kultusminister-konferenz, T-Systems International GmbH, Verband Bildungsmedien, Wilhelm-Ostwald-Gymnasium), den wissenschaftlichen Hilfskräften, den Teilnehmer/innendes Master-Seminares „Einsatz von cloud- und webbasierten Konzepten im schu-lischen Kontext“, den vielen Gesprächspartner/innen auf Veranstaltungen und inpersönlichen Gesprächen sowie insbesondere den Mitgliedern des Bachelorprojek-tes „Schul-Cloud“ für ihre Unterstützung.

50

Aktuelle Technische Berichte des Hasso-Plattner-Instituts

Band

ISBN

Titel

Autoren / Redaktion

115

978-3-86956-396-1

Symbolic model generation for graph properties

Sven Schneider, Leen Lambers, Fernando Orejas

114

978-3-86956-395-4 Management Digitaler Identitäten: aktueller Status und zukünftige Trends

Christian Tietz, Chris Pelchen, Christoph Meinel, Maxim Schnjakin

113

978-3-86956-394-7

Blockchain : Technologie, Funktionen, Einsatzbereiche

Tatiana Gayvoronskaya, Christoph Meinel, Maxim Schnjakin

112

978-3-86956-391-6

Automatic verification of behavior preservation at the transformation level for relational model transformation

Johannes Dyck, Holger Giese, Leen Lambers

111

978-3-86956-390-9

Proceedings of the 10th Ph.D. retreat of the HPI research school on service-oriented systems engineering

Christoph Meinel, Hasso Plattner, Mathias Weske, Andreas Polze, Robert Hirschfeld, Felix Naumann, Holger Giese, Patrick Baudisch, Tobias Friedrich, Emmanuel Müller

110

978-3-86956-387-9

Transmorphic : mapping direct manipulation to source code transformations

Robin Schreiber, Robert Krahn, Daniel H. H. Ingalls, Robert Hirschfeld

109

978-3-86956-386-2

Software-Fehlerinjektion

Lena Feinbube, Daniel Richter, Sebastian Gerstenberg, Patrick Siegler, Angelo Haller, Andreas Polze

108

978-3-86956-377-0

Improving Hosted Continuous Integration Services

Christopher Weyand, Jonas Chromik, Lennard Wolf, Steffen Kötte, Konstantin Haase, Tim Felgentreff, Jens Lincke, Robert Hirschfeld

107

978-3-86956-373-2

Extending a dynamic programming language and runtime environment with access control

Philipp Tessenow, Tim Felgentreff, Gilad Bracha, Robert Hirschfeld

106

978-3-86956-372-5

On the Operationalization of Graph Queries with Generalized Discrimination Networks

Thomas Beyhl, Dominique Blouin, Holger Giese, Leen Lambers

105 978-3-86956-360-2 Proceedings of the Third HPI Cloud Symposium "Operating the Cloud" 2015

Estee van der Walt, Jan Lindemann, Max Plauth, David Bartok (Hrsg.)

104 978-3-86956-355-8 Tracing Algorithmic Primitives in RSqueak/VM

Lars Wassermann, Tim Felgentreff, Tobias Pape, Carl Friedrich Bolz, Robert Hirschfeld

ISBN 978-3-86956-397-8ISSN 1613-5652