Dieser Kurs gehört zum Fachbereich Informatik.

UML

Einführung

Vorwort

Unser Seminar "Didaktik der Informatik" hat sich dem Konzept "Lernen durch Lehren" gewidmet. In diesem Sinne wurden verschiedene Themengebiete der Informatik von uns so aufbereitet, dass sie mittels LdL unterrichtet werden können. Wie der Titel schon sagt, geht es hier um eine Einführung in die UML (Unified Modeling Language). Vorab empfehlen wir allerdings sich etwas genauer mit der Methode des LdL auseinander zu setzen.

Einführung in UML

Voraussetzungen/Rahmenbedingungen

  • Bei dieser Unterrichtseinheit sind Stunden mit 90 Minuten geplant. Das bedeutet, dass immer zwei Stunden zu einem "Doppelblock" zusammengefasst sind. Sollte dies nicht bereits gegeben sein, ist eine Zusammenlegung empfehlenswert.
  • Außerdem wird eine Gruppengröße von 20 Schüler/Innen bevorzugt. Dies liegt daran, dass die Computerräume in den meisten Schulen nicht mehr als 20 Computer haben. Ist die Klasse größer als 20 Schüler/Innen, so wäre darüber nach zu denken, immer zwei Schüler/Innen an einem Computer arbeiten zu lassen, oder die Klasse zu teilen.
  • Bei diesem Szenario wird von einer 11ten Klasse ausgegangen, die jeden Montag eine Doppelstunde Informatik hat. Es handelt sich um einen Kurs mit fortgeschrittenen Schüler/Innen, der in der 9. und 10. Klasse bereits Informatikunterricht hatte.
  • Die Schüler/Innen sind vertraut mit dem Computereinsatz und besitzen grundlegende Kenntnisse im Bereich der Textverarbeitung, Bildbearbeitung, Recherche sowie im Umgang mit einem Tabellenkalkulationssystem.
  • In den vorherigen Stunden wurde bereits eine Einführung in die Objektorientierung gemacht. Das heißt, die Schüler/Innen kennen die Begriffe Klasse, Objekt, Attribut und Attributwert für einzelne Klassen.
  • Zudem kommt, dass diese Stunde nicht die erste Stunde LdL für die Schüler/Innen ist. Sie befinden sich aber immer noch in der Anfangsphase und lernen diese Methode gerade kennen.

Der Unterrichtsgegenstand

Sachanalyse

Wie der Name UML (Unified Modeling Language) schon sagt, geht es um eine vereinheitlichte Modellierungssprache, genauer gesagt, darum ein Grundgerüst zu schaffen, nach dem ein Softwaresystem geschrieben wird. "Sie stellt Diagramme und Notationselemente zur Verfügung, mit deren Hilfe sowohl statische wie auch dynamische Aspekte beliebiger Anwendungsgebiete modelliert werden können."(UML 2.0, S.15)

Die verschiedenen Diagrammtypen

  • Klassendiagramm
    "Ein Klassendiagramm (engl. Class Diagrams) beinhaltet die statischen Strukturbestandteile eines Systems, deren Eigenschaften und Beziehungen. Es fungiert als eine Art allgemeiner Bauplan für Objekte."(UML 2.0, S.21)"Bis auf die Definition von Operationen der Klassen werden jegliche dynamischen Aspekte außer acht gelassen"(UML 2.0, S.29)
  • Objektdiagramm
    "Ein Objektdiagramm (engl. Object Diagram) kann als Sonderfall eines Klassendiagramms angesehen werden. Während ein Klassendiagramm die allgemeinen Baupläne und alle möglichen Beziehungen der Objekte untereinander modelliert, stellt das zugehörige Objektdiagramm die tatsächlich erzeugten Objekte, deren Attributwerte und Beziehungen innerhalb einens begrenzten Zeitraums zur Laufzeit dar.(UML 2.0, S.111)
  • Kompositionsstrukturdiagramm
    "Kompositionsstrukturdiagramme (engl. Composite Structure Diagrams) definieren die internen Strukturen von Komponenten und deren Interaktionspunkte zu weiteren Komponenten des Systems. Sie zeigen die innere Architektur von Komponenten, wie ihre einzelnen Bestandteile gemeinsam die gewünschten Aufgaben verrichten und werden auch als Architekturdiagramme bezeichnet."(UML 2.0, S.125)
  • Komponentdiagramm
    "Komponentdiagramme (engl. Component Diagrams) eignen sich besonders für Spezifikation von Softwarearchitekturen. Sie werden zumeinst parallel zu Verteilungsdiagrammen eingesetzt, in denen die Aufteilung der zu implementierenden Software auf Hardware- und Softwareumgebung modelliert wird."(UML 2.0, S.145)
  • Verteilungsdiagramm
    "Verteilungsdiagramme (engl. Deployment Diagrams) spezifizieren die physische Hardware- und Softwareumgebung und die Verteilung der Komponenten in dieser Umgebung. Verteilungsdiagramme werden zumeist parallel zu Komponentdiagrammen eingesetzt, die sich auf die Architektur des zu implementierenden Softwaresystems konzentrieren."(UML 2.0, S.161)
  • Paketdiagramm
    "Paketdiagramme (engl. Package Diagrams) werden zumeist in einer frühen Phasen der Softwareentwicklung, wie Analyse/Definition und Entwurf/Design, verwendet, um das Modell sowohl horizontal wie auch vertikal zu strukturieren."(UML 2.0, S.173)
  • Anwendungsfalldiagramm
    "Anwendungsfalldiagramme (engl. Use Case Diagrams) modellieren die Funktionalität des Systems auf einem hohen Abstraktionsniveau aus der so genannten Black-Box-Sicht des Anwenders. Es werden nur die Anwerdungsfälle definiert, die ein externer Anwerder wahrnehmen kann und deren Ausführung ihm einen erkennbaren Nutzen bringt."(UML 2.0, S.197)
  • Aktivitätsdiagramm
    "Aktivitätsdiagramme (engl. Activity Diagrams) bieten sehr viele Möglichkeiten, das Verhalten von Systemen zu modellieren. Sie stellen zahlreiche Notationselemente bereit, mit deren Hilfe beispielsweise alternative Abläufe, Reihenfolgen von Aktivitäten, parallele Aktivitäten, verschachtelte Aktivitäten, Verantwortungsbereiche oder Ausnahmen und deren Behandlung modelliert werden können."(UML 2.0, S.213)
  • Zusatandsdiagramm
    "Zustandsdiagramme (engl. State Machine Diagrams) modellieren wie Aktivitätsdiagramme das dynamische Verhalten eines Systems. Im Gegensatz zu Aktivitätsdiagrammen, die ihren Fokus auf die Aktion eines Systems legen, konzentrieren sich Zustandsdiagramme auf die Reaktion eines Systems."(UML 2.0, S.291)
  • Sequenzdiagramm
    "Sequenzdiagramme (engl. Sequence Diagrams) modellieren Interaktionen zwischen Objekten. Wie Aktivitätsdiagramme stellen auch sie Abläufe dar, konzentrieren sich dabei jedoch auf den Nachrichtenaustausch und nicht auf die Darstellung aller möglichen Ablaufpfade."(UML 2.0, S.339)
  • Kommunikationsdiagramm
    "Kommunikationsdiagramme (engl. Communication Diagrams) gehören der Gruppe der Interaktionsdiagramme an und modellieren den Nachrichtenaustausch während einer Interaktion, wobei sie sich wie Sequenzdiagramme auf ein Szenario beschränken. Im Gegensatz zu Sequenzdiagrammen, die sich auf den Ablauf der Kommunikation konzentrieren, heben Kommunikationsdiagramme die Kommunikationsbeziehung der Interaktions-Teilnehmer hervor."(UML 2.0, S.383)
  • Timig-Diagramm
    "Timing-Diagramme gehören wie Sequenz- und Kommunikationsdiagramme der Gruppe der Interaktionsdiagramme an und modellieren erwartungsgemäß Interaktionen zwischen Objekten."(UML 2.0, S.393)Sie konzentrieren sich auf die zeitlichen Aspekte der Zustandswechsel, die die Objekte durch das Empfangen von Nachrichten erfahren. Eine exakte zeitliche Beschreibung der Zustandswechsel steht im Vordergrund.
  • Interaktionsübersichtsdiagramm
    "Interaktionsübersichtsdiagramme (engl. Interaction Overview Diagrams) stellen eine Spezialisierung der bereits vorgestellten Aktivitätsdiagramme dar...Vorzugsweise werden Interaktionsübersichtsdiagramme bei einer großen Anzahl einzelner Interaktionen eingesetzt, bei denen der Überblick über deren Reihenfolge und Zusammenhänge schwierig ist."(vgl. UML 2.0, S.407)

Jedes dieser Diagramme efüllt eine Aufgabe und alle zusammen bilden ein Softwaressytem bis ins kleiste Detail ab. "Um die Unumgänglichkeit der Modellierung großer Softwaresysteme zu veranschaulichen, lassen sie uns den Softwareentwicklungsprozess mit dem Bau eines Hauses vergleichen"(UML 2.0, S.13), so schreibt Christoph Kecher in seinem Werk "UML 2.0". Gemeint ist, dass verschiedene Dinge schon vor der Programmierung festgehalten werden sollten, somit ergibt sich ein Plan nach dem auch verschiedene Softwareentwickler zu verschiedenen Zeiten und Orten an ein und dem selben Projekt arbeiten können. Wenn alle den gleichen Plan besitzen, dann wird sich das System ohne Probleme zusammensetzen und implementieren lassen.

Wer es genauer wissen will, kann hier die Einführung von Christoph Kechers - "UML 2.0" nachlesen: zum Auschnitt

Bildungsplanbezug

Allgemeines aus dem Baden-Württembergischen Bildungsplan:

  • "Die systematischen Lernprozesse der informationstechnischen Grundbildung tragen insbesondere zur Förderung von vorausschauendem und vernetztem Denken, Modellbildung, Abstraktionsvermögen, Kreativität, Selbstständigkeit und Zuverlässigkeit, der Fähigkeit zur Organisation, Kommunikation und Teamarbeit sowie zum Abschätzen von Technik- und Technologiefolgen bei."

  • "Sie vertiefen beim Bearbeiten von Problemen, insbesondere bei der prozesshaften Auseinandersetzung mit fachlichen und fächerübergreifenden Inhalten in Projektarbeiten, ihre Strategien zum gemeinsamen Lernen und Arbeiten."

  • "Schülerinnen und Schüler können Informations- und Kommunikationstechnik selbstständig, zweckorientiert und mit den der jeweiligen informationstechnischen Anwendung angemessenen Methoden zur Informationsbeschaffung, zur Lösung von Problemen, zur Strukturierung und Visualisierung von Sachverhalten, zur Sammlung, Bearbeitung und Auswertung numerischer und nichtnumerischer Daten einsetzen."

Aus: Ministerium für Kultur, Jugend und Sport [Hrsg.] (2004): Bildungsplan 2004,Realschule. Ditzingen: Phillip Reclam Jun, Seite 191-195

Diese Ziele sollten die Schüler/Innen bis zum Ende der zehnten Klasse der Realschule erreicht haben. Da es leider keine gesonderten Einträge zum Fach Informatik im Baden-Würtembergischen Bildungsplan gibt, dienen die GI-Standards als Richtlinie für den weiteren Kompetenzerwerb.

Spezielles aus "Grundsätze und Standards für die Informatik in der Schule"

Die GI-Standards sind aufgeteilt in 5 Inhalts- und 5 Prozessbereiche die ineinandergreifen. Die UML lässt sich auf der Inhaltsebene dem Punkt "Sprachen und Automaten" und auf der Prozessebene verschiedenen Punkten zuordnen, am deutlichsten aber dem Punkt "Modellieren und Interpretieren". Daraus ergeben sich folgende zu erwerbende Kompetenzen.

  • "Schüler/Innen nutzen formale Sprachen zur Interaktion mit Informatiksystemen, sie analysieren und modellieren Automaten."

  • "Schüler/Innen erstellen und implementieren informatische Modelle mit geeigneten Werkzeugen und können diese Vorgänge reflektieren."

  • "Schüler/Innen strukturieren und zerlegen Sachverhalte."

  • "Schüler/Innen kommunizieren über informatische Sachverhalte. Sie kooperieren bei Lösung von Problemen und nutzen dafür geeignete Werkzeuge."

  • "Schüler/Innen interpretieren Darstellungen veranschaulichen informatische Sachverhalte und wählen geeignete Darstellungsformen aus."

Aus: Grundsätzen und Standards für die Informatik in der Schule [Hrsg.] (2007): Arbeitskreis Bildungsstandards Informatik. Seite 17ff

Intentionen des Unterrichts / Ziele

Die Schüler:

  • kennen Objekt-, Klassen,- Sequenz- und Zustandsdiagramme.
  • wissen welche Rolle diese bei der objektorientierten Programmierung spielen.
  • können zu einem gestellten Problem selbst Diagramme erstellen.

Fernziele:

  • die Schüler können größere Projekte strukturieren und an Hand dieser Strukturierung trotz verschiedener Gruppen gemeinsam daran arbeiten.


Überlegungen zum Lehr- und Lernprozess

Auswahl der Aufgaben und methodische Aufbereitung

Die Schüler/Innen bereiten den Unterricht anhand selbst verfasster Materialen vor. Es hätte auch die Möglichkeit bestanden jeder Gruppe eine Linksammlung an die Hand zu geben. Für die Einführung in LdL erscheint das aber nicht unbedingt als vorteilhaft. Für die Schüler/Innen bringt diese neue Unterrichtsform schon sehr viele Veränderungen. Inhalte auf verschiedenen Internetseiten zusammen zu suchen erschwert die Erarbeitung des Themas zusätzlich. Die Schüler/Innen bekommen deshalb in dieser Einstiegsphase Material, dass schon zusammengefasst ist. Neben einem Text in dem der jeweilige Diagrammtyp erklärt wird, bekommen die Schüler/Innen hier auch eine Übungsaufgabe, in der sie selbst testen können, ob sie den Inhalt verstanden haben. Für die Einführung bekommen die Schüler/Innen dadurch etwas mehr Anleitung. In späteren LdL-Einheiten ist eine Abwandlung der Aufgabenstellung aber durchaus wünschenswert. Jede Gruppe erhält zu den einführenden Materialien in Form von Texten zusätzlich eine Checkliste. Auf dieser sind die wichtigsten Schritte aufgeführt, die in ihrer Gruppenarbeit durchlaufen werden sollen.

Tipp für das Vorgehen
Die Aufgaben sind jeweils in der Woche vor dem Unterricht am Freitag dem Lehrer vor zu zeigen. Dieser kann dann Rücksprache mit den Schüler/Innen halten und falls Probleme auftreten, bleibt den Gruppen noch etwas Zeit ihre Arbeit zu korrigieren. Der Lehrer kann sich so auch besser auf die Stunde vorbereiten. Er kann in etwa einschätzen, wie viel Zeit die Schüler/Innen für ihren Unterricht brauchen und dementsprechende Vorbereitungen für den Rest der Stunde treffen. Eventuell erkennt er bereits Lücken im Konzept der Schüler/Innen und kann sich überlegen, wie er im Unterricht auf diese eingehen will. Die Stunde kann so möglichst effektiv genutzt werden.

Handlungs - und Sozialformen

Die Erarbeitungsphase, in der sich die Schüler/Innen selbst in ihr Thema einarbeiten, findet in Gruppenarbeit statt. Die Schüler/Innen können sich selbstständig in Gruppen einteilen, jedoch sollten die Gruppen je nach Klasse, bzw. Stärken und Schwächen der Schüler so geformt werden, dass sie effektiv und produktiv arbeiten können. Über die Sozialformen in ihren eigenen Unterrichtsstunden entscheiden die Schüler/Innen selbst. Sie haben dabei alle Freiheiten. Der Lehrer hält sich während den Stunden der Schüler/Innen im Hintergrund bereit. Er hilft, wenn Fragen auftreten, die von keinem Schüler und keiner Schülerin beantwortet werden können. Er korrigiert, falls Fehler entstehen, die keinem in der Klasse auffallen. Ansonsten bleibt er während dieser Phase sehr weit im Hintergrund. Ist in der Unterrichtsstunde nach dem Unterricht der Schülergruppe noch etwas Zeit übrig, ändert sich seine Rolle aber auch nur leicht. Er führt nun etwas mehr Regie, aber die Ergänzungen, Bespiele und Übungsaufgaben werden trotzdem weiter im LdL-Stil behandelt.

Möglichkeiten der Benotung

1. Möglichkeit:
Nach der LdL-Einheit stellt der Lehrer weitere vertiefende Aufgaben, die die Schüler/Innen zu Hause bearbeiten sollen. Diese Aufgaben werden vom Lehrer eingesammelt, korrigiert und bewertet.

2. Möglichkeit:
Die Experten der jeweiligen Themengruppen überlegen sich parallel zu ihrem Unterricht 2-3 Aufgaben, die sie geeignet für eine Klausur halten. Der Lehrer wählt dann nur noch von jeder Gruppe eine Aufgabe aus. (evtl. können Ergänzungen vom Lehrer vorgenommen werden)

--> Die Beiträge im Unterricht selbst (Unterricht halten, Mitarbeit, etc.) können diese Noten verbessern, aber nicht verschlechtern.

Übersicht über den Ablauf der Unterrichtseinheit

Einführung in die Unterrichtseinheit

Die erste Stunde wird genutzt, um einen Einstieg in das Thema zu geben und das organisatorische Vorgehen in den nächsten Stunden mit den Schüler/Innen zu besprechen.

Nach der Begrüßung durch den Lehrer beginnt dieser mit einer kurzen Einführung in das Thema "UML (Unified Modeling Language)". Dabei wird mit den Schüler/Innen besprochen, was UML ist und welchen Sinn eine Modellierung mit UML macht. Im Anschluss an die Einführung werden die Themen mit genauer Arbeitsanweisung an die Gruppen vergeben. Haben die Schüler/Innen keine weiteren Fragen mehr zum Vorgehen, erhalten sie die entsprechenden Materialien und können bis zum Ende der Stunde mit der Vorbereitung ihres Unterrichts beginnen.

Die gesamte Unterrichtseinheit

Termin Organisation Inhalte / Schwerpunkte / Aufgaben Kommentare / Akzente / Impulse / Korrekturen Geräte/ Hilfsmittel
1. Woche LV/UG Einführende Veranstaltung zum Thema UML. Hier werden Grundlagen besprochen, die Gruppen aufgeteilt und die Themen vergeben.

Schüler/Innen lernen die UML als Strukturierungsmittel kennen.

Motivation: Es kann ein Programm oder ein komplizierter Automat entschlüsselt werden. Die Schüler/Innen sollten dann selbst erkennen, dass eine Strukturierung Sinn macht.
Die Einführung nimmt vermutlich nicht die ganze Doppelstunde in Anspruch, deshalb können die Schüler/Innen dort mit der Arbeit in den Gruppen beginnen.

Frage: Warum ist eine Modellierung sinvoll?

Ziel:Schüler/Innen erkennen, dass die Modellierung für die Strukturierung von größeren Projekten eine wesentliche Rolle spielt.
Einführendes Material
2. Woche GA Die Schüler/Innen arbeiten in den 90 Minuten weiter an ihren Unterrichten, während der Lehrer für Rücksprachen zur Verfügung steht. Impulse:Nutzt das Internet selbstständig zur Recherche. Denkt daran verschiedene Methoden ein zu setzten. Überlegt euch einfache Beispiele und Übungsaufgaben für euren Unterricht.

Hinweis: Überlegt euch Sozialformen.
Computer

Bücher

Einführendes Material
3. Woche LdL Unterricht

Gruppe Klassendiagramme
Erster Unterricht zum Thema Klassendiagramme. Die Schüler/Innen nutzen so viel Zeit, wie sie brauchen um ihren Unterricht zu halten.

Den Rest der Stunde gestaltet der Lehrer durch Ergänzungen, weitere Beispiele oder Übungsaufgaben.
Die Schüler/Innen gestallten diese Stunde komplett selbstständig, da es sich hier um die erste LdL-Stunde handelt, sollte darauf geachtet werden, dass den Schüler/Innen alle Geräte zu Verfügung stehen, die sie für ihren Unterricht brauchen.

Hinweis:Denkt in der nächsten Stunde selbstständig daran, welche Geräte ihr braucht!
Projektor

Computer

Eigenes Material für Ergänzugen
4. Woche LdL Unterricht

Gruppe Objektdiagramme
Zweiter Unterricht zum Thema Objektdiagramme. Der Rest der Stunde wird wie in der vorigen Woche genutzt. Die Schüler/Innen gestalten diese Stunde komplett selbstständig! Eigenes Material für Ergänzugen
5. Woche LdL Unterricht

Gruppe Sequenzdiagramme
Dritter Unterricht zum Thema Sequenzdiagramme. Der Rest der Stunde wird wie in der vorigen Woche genutzt. Die Schüler/Innen gestalten diese Stunde komplett selbstständig! Eigenes Material für Ergänzugen
6. Woche LdL Unterricht

Gruppe Zustandsdiagramme
Vierter Unterricht zum Thema Zustandsdiagramme. Der Rest der Stunde wird wie in der vorigen Woche genutzt. Die Schüler/Innen gestalten diese Stunde komplett selbstständig! Eigenes Material für Ergänzugen

Mögliche Weiterarbeit

1. Möglichkeit:
Im Anschluss an die Einheit können Automaten und kleiner Programme entschlüsselt oder selbst strukturiert werden. Gute Möglichkeiten bieten hier z.B. einen Geldautomat oder ein Getränkeautomat.

2. Möglichkeit:
Im Anschluss an die Einheit könnte der nächste Schritt darin bestehen mit Hilfe von UML-Diagrammen Java-Quellcode zu produzieren.

Anlagen

Themen und Materialien für die Gruppenarbeit:

Quellen

Literatur

  • Forbrig, P. (2002). Objektorientierte Softwareentwicklung mit UML. Leipzig: Fachbuchverlag
  • Schneider, U. Werner, D. (2007). Taschenbuch der Informatik. Kapitel 9.3.3. Leipzig: Fachbuchverlag
  • Kecher, C. (2006). UML 2.0 - Das umfassende Handbuch. Bonn: Galileo Press
  • Formelsammlung (siehe Moodle)

Internet