Projekte im Informatikunterricht Modellieren und Implementieren von diskreten Simulationsmodellen

Ähnliche Dokumente
Simulation eines Bediensystems mit Ereignistabellen

Projekte im Informatikunterricht

Analyse eines Informatiksystems durch unterschiedliche Modellierungsansätze

Datenbanken. Teil 2: Informationen. Kapitel 7: Objektorientierte Sicht. UML-Diagramme. Vorstellung der unterschiedlichen UML-Diagramme

Pflicht und Kür im Wahlpflichtbereich Informatik in den Schuljahrgängen Modellbildung und Simulation

Inhalt. 1 Einführung 17. Strukturdiagramme. 2 Klassendiagramm 37

TEIL I Strukturdiagramme 1 Einführung Klassendiagramm Objektdiagramm Kompositionsstrukturdiagramm...

Christoph Kecher, Alexander Salvanos UML 2.5. Das umfassende Handbuch. Rheinwerk. Computing

Modellierung von Systemen - ein Applikationsgebiet im Informatikunterricht

Multimediale Modellbeschreibung für die Ausbildung

INSPIRE - Modellierung

UML 2.0 Das umfassende Handbuch

Das umfassende Handbuch

Modellierung von Systemen - ein Applikationsgebiet im Informatikunterricht

Objektorientierte Analyse (OOA) Übersicht

Wirtschaftsinformatik 6a: Modellierung. Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte

UML (Unified Modelling Language) von Christian Bartl

Vorlesung Programmieren

NACHRICHTENTECHNISCHER SYSTEME

Christoph Kecher UML2. Das umfassende Handbuch. Galileo Press

Unified Modeling Language 2

Software Engineering in der Praxis

Software Engineering in der Praxis

Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML)

Vorlesung Programmieren

Objektorientiertes Design

Objektorientierte Analyse (OOA) Inhaltsübersicht

Übungen Softwaretechnik I

Software Engineering in der Praxis

Unified Modeling Language

Formale Modellierung Vorlesung vom : Beyond JML

Requirements Engineering I

OOA-Dynamische Konzepte

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick

Objektorientierte Softwareentwicklung

Unified Modeling Language (UML )

Die Unified Modeling Language UML

Auf zu neuen Daten Datenbanken, Datenübertragung und Datenschutz im Informatikunterricht. Informatisches Modellieren mit UML

CARL HANSER VERLAG. Mario Jeckle, Chris Rupp, Jürgen Hahn, Barbara Zengler, Stefan Queins. UML 2 glasklar

Mario Jeckle, Chris Rupp, Jürgen Hahn, Barbara Zengler, Stefan Queins. UML2 glasklar. UNIFIED MODELING LANGUAGE l HANSER

Guido de Melo Fachvortrag, Uni Ulm UML 2.0. Für den Einsatz in der Praxis

Anwendungsfall. Das Anwendungsfall-Diagramm (Use-Cases/Use-Case Diagramm) Die Anwendungsfall-Beschreibung. Dr. Beatrice Amrhein

UML Crashkurs v0.1. UML für Fachinformatiker. von Hanjo Müller

Modellierung mit computerunterstützten Lego- Komponenten

Media Engineering. Objektorientierte Modellierung. Verhaltensmodellierung. R. Weller University of Bremen, Germany cgvr.cs.uni-bremen.

Software Engineering in der Praxis

UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language

Comelio GmbH - Goethestr Berlin. Course Catalog

Software-Engineering

Objektorientierte Softwareentwicklung

Informatik Modulplan für die Sekundarstufe I (Jahrgänge 5 bis 10)

Das UML Benutzerhandbuch

Softwaretechnik SS 2006

Von UML 1.x nach UML 2.0

Modellbasierter Test mit der UML. Vortragender: Lars Westmeier Seminar: Spezifikationsbasierter Softwaretest

Jason T. Roff UML. IT Tutorial. Übersetzung aus dem Amerikanischen von Reinhard Engel

Analyse und Design mituml2

Softwaretechnik 2015/2016

Übung Einführung in die Softwaretechnik

Simulationssprachen im Anfangsunterricht Kann man mit GPSS programmieren lernen?

Anwendungsfalldiagramm UseCaseDiagramm

Inhaltsverzeichnis.

Softwaretechnik SS Vorlesungseinheit

Klausur. Softwareentwurf. 14. Februar 2011 Bearbeitungszeit: 120 Minuten

Kapitel 2 - Die Definitionsphase

Analyse und Design mituml2.1

Objektorientierte Modellierung mit UML

Softwaretechnologie für Fortgeschrittene Wohce 4 Modellierung UML

UML -Klassendiagramme

So#waretechnologie für Fortgeschri4ene Teil Eide. Stunde IV: UML. Köln 26. Januar 2017

Das UML Benutzerhandbuch

Inhalt. Einleitung Liebe Leserin, lieber Leser, Wer dieses Buch aus welchem Grund lesen sollte Ihre Meinung ist uns sehr wichtig.

Methoden des Software Engineering

Analyse und Design mit U ML 2.3

UML 2 glasklar Praxiswissen für die UML-Modellierung

Einführung in die objektorientierte Programmierung

UML 2 glasklar HANSER. Chris Rupp Stefan Queins Barbara Zengler. Praxiswissen für die UML-Modellierung. 3., aktualisierte Auflage

Gliederung der Vorlesung

Modellierung von Web Anwendungen mit UML

Informatik IIa: Modellierung. Frühlingssemester Zwischentest 1 2. April 2009

Universität Karlsruhe (TH)

Analyse und Modellierung von Informationssystemen

1 Aufgaben zum Anwendungsfalldiagramm

Modellierung von Verhalten OOPM, Ralf Lämmel

UML 2 glasklar. Mario Jeckle, Jürgen Hahn, Stefan Queins, Barbara Zengler, Chris Rupp. Praxiswissen für die UML-Modellierung und -Zertifizierung

Comelio GmbH - Goethestr Berlin. Kurskatalog

Vgl. Oestereich Kap 2.1 Seiten

Softwaretechnik SS 2006

Michael Kämpf (Autor) Software-Framework zur Simulationsbasierten Optimierung mit Anwendung auf Produktions- und Lagerhaltungssysteme

OOAD in UML. Seminar Software-Entwurf B. Sc. Sascha Tönnies

Methoden und Architekturen der Softwaretechnik

Klausur. Softwareentwurf. 22. März 2011 Bearbeitungszeit: 120 Minuten

Willkommen zur Vorlesung Modellbasierte Softwaretechniken für sichere Systeme im Sommersemester 2012 Prof. Dr. Jan Jürjens

G9 NEU CURRICULUM FÜR DAS FACH INFORMATIK - JAHRGANGSSTUFE 5 (Stand: Feb. 2017)

Zustandsdiagramme: Modellierung und Implementation. OOPM, Ralf Lämmel

Aufgabenbeschreibungen für das informatische Modellieren

Inhalt Softwaretechnik (MN) Kapitel 5

Übungsaufgaben Softwaretechnologie

Objektorientierte Analyse & Design

Transkript:

Projekte im Informatikunterricht Modellieren und Implementieren von diskreten Simulationsmodellen Dr. Henry Herper Otto-von-Guericke-Universität Magdeburg Institut für Simulation und Graphik 12. GI-Fachtagung Informatik und Schule Siegen, 19.-21.09.2007

Schwerpunkte Analyse des realen Systems auch unter Verwendung von UML-Beschreibungsmitteln Simulation mit einem physischen Modell Visualisierung der beobachteten Abläufe mit einem Computermodell Entwicklung eines rechnergestützten Simulationsmodells Entwicklung von Experimentierstrategien Validieren und Bewerten der Ergebnisse 2

Einordnung Anwendungsbereiche Analyse von Informatiksystemen im Rahmen der Ausbildung von Studenten für das Lehramt Informatik der Arbeit mit Schüler-Lerngruppen der gymnasialen Oberstufe im Informatikunterricht sowie im Rahmen von Projekten und Praktika der Weiterbildung von Informatiklehrern 3

Inhalts- und Prozessbereiche der Bildungsstandards Informatik /Quelle: Beilage zu LOG IN Heft Nr. 146/147 (2007), Seite 17/ 4

Prozessbereich Modellieren und Implementieren Prozessbereiche Modellieren und Implementieren Schülerinnen und Schüler aller Jahrgangsstufen erstellen informatische Modelle zu gegebenen Sachverhalten, implementieren Modelle mit geeigneten Werkzeugen, reflektieren Modelle und deren Implementierung. /Quelle: Beilage zu LOG IN Heft Nr. 146/147 (2007), Seite 19/ 5

Phasen einer Simulationsstudie Phase Auswahl und Beschreibung des Bediensystems Entwicklung des abstrakten Modells Implementierung des Computermodells ausgewählte Informatikinhalte Erarbeitung des System und Modellbegriffs Erfassung und Aufbereitung empirischer Daten Erlernen der Methoden von Abstraktion und Reduktion Arbeit mit formalen Beschreibungsmöglichkeiten von Systemen Erlernen einer Simulationssprache bzw. Anwendung einer bekannten Programmiersprache auf ein komplexes System Erlernen grundlegender Validierungstechniken 6

Phasen einer Simulationsstudie Phase Durchführung von Modellexperimenten Aufbereitung und Präsentation der Ergebnisse ausgewählte Informatikinhalte Erarbeiten von Experimentierstrategien Bewerten der Ergebnisse und Ableiten von Eingabedaten für weitere Experimente Erlernen von Visualisierungs- und Präsentationstechniken kritische Betrachtung der Ergebnisse von Berechnungen Erkenntnisgewinn durch Simulationsstudien 7

Finden eines geeigneten Systems und einer geeigneten Aufgabenstellung Auswahl und Beschreibung eines Bediensystems Auswahl eines Bediensystems aus dem Erfahrungshorizont der Schüler, zum Beispiel Dienstleistungsbetrieb, Supermarkt, Tankstelle Erstellen einer geeigneten Aufgabenstellung, die mit dem Simulationsmodell beantwortet und anschließend validiert werden kann Modellerstellung und Durchführung der Modellexperimente muss mit den zur Verfügung stehenden Mitteln in der zur Verfügung stehenden Zeit möglich sein 8

Ziele der Simulationsstudie Wie viele Zapfsäulen sind notwendig, damit die Wartezeit der Fahrzeuge in 90% der Fälle kleiner als 10 Minuten ist? Welche Kapazität muss der Wartebereich für Fahrzeuge haben? Ist es zweckmäßig, gesonderte Stellplätze für Kunden zu haben, die nur im Tankstellenshop einkaufen möchten? Wie viele Kassen sind notwendig? Verständnis der Abläufe im System. 9

Festlegen des Systemgrenzen - Umweltschnittstellen 1. Möglichkeit: Straßenabschnitt einbeziehen 2. Möglichkeit: Tankstelleneinfahrt und ausfahrt 3. 10

Prozesse im realen System Hauptprozesse: Fahrt von der Einfahrt zur Zapfsäule bzw. zum Parkplatz für den Shop Tanken Einkaufen im Shop Bezahlen Reinigen der Scheiben Kaufen einer Öldose am Automaten Waschen des Autos Fahrt von der Zapfsäule, Parkplatz oder Waschanlage zum Ausgang 11

Handlungsfolgen im System Ankommen Tanken Einkaufen Bezahlen Waschen Tankstelle verlassen 12

Im Rollenspiel nachgebildete Handlungsfolge Ankommen Tanken Einkaufen Bezahlen Waschen Tankstelle verlassen 13

Klassen im System PKW Motorrad Fahrer (Person, die tankt bzw. einkauft) Zapfsäule Tankwart Kassierer Waschanlage Öldosenautomat 14

Klasse PKW reales Fahrzeug /Quelle: http://www.wikipedia.de// Lego-Modell UML-Klasse Animations- Klasse 15

Klasse Bike reales Fahrzeug /Quelle: http://www.wikipedia.de// Lego-Modell UML-Klasse Animations- Klasse 16

Diagrammtypen der UML 2 Strukturdiagramme Verhaltensdiagramme Klassendiagramm Objektdiagramm Aktivitätsdiagramm Use-casediagramm Komponentendiagramm Verteilungsdiagramm Zustandsautomat Interaktionsdiagramme Kompositionsstrukturdiagramm Paketdiagramme Sequenzdiagramm Interaktionsübersichtsdiagramm Kommunikationsdiagramm Timing- Diagramm 17

UML Anwendungsfälle (Use-cases) Anwendungsfälle sind eine Sammlung von Szenarios über den Systemeinsatz. Jedes Szenario beschreibt eine Sequenz von Schritten. Die solche Sequenzen auslösenden Entitäten werden als Akteure bezeichnet. Sie sind externe Kommunikationspartner des Use-Cases. Die Summe der Anwendungsfälle beschreibt den Projektumfang. Die Anwendungsfallanalyse ist kein Werkzeug zum Softwaredesign, sondern dient zur Beschreibung der Anforderungen an ein Softwaresystem. 18

UML Anwendungsfalldiagramm Use-Case Ein Anwendungsfall (Use-case) beschreibt eine Menge von Aktionen, die, schrittweise ausgeführt, ein spezielles Verhalten formen. Ein Anwendungsfall wird immer von einem Akteur ausgelöst. Anfrage/Trigger Akteur Ergebnis Ausführung der Anfrage Use-Case-Name In der Regel wird der Use-Case durch eine Ellipse dargestellt. Die Bezeichnung des Use-Cases spiegelt die Sicht des Akteurs wieder. Sie erfolgt in der Form Substantiv Verb. 19

Anwendungsfall: Tanken Ziel: Fahrzeug mit Treibstoff zu befüllen Anwendungskontext: Betanken eines Fahrzeuges an einer Tankstelle durch Kraftfahrer Bereich: Zum System gehört die Zapfsäule und der Eimer mit Waschwasser, nicht zum System gehören Shop, Kasse, Waschanlage, Straße Primärer Akteur: Kraftfahrer Sekundärer Akteur: Bediener der Tankstellenanlage Betroffene (Stakeholder): andere Tankkunden Vorbedingungen: Fahrzeug benötigt Kraftstoff, benötigter Kraftstoff ist vorhanden Nachbedingung im Erfolgsfall: Fahrzeug bekommt benötigten Kraftstoff 20

Anwendungsfall: Tanken Nachbedingung in Fehlerfällen: Wenn kein Treibstoff vorhanden, dann Tanken nicht möglich. Wenn sich der Tankdeckel nicht öffnen lässt, dann Tanken nicht möglich. Auslöser: Fahrzeug erreicht Zapfsäule Interaktionsfolge: Schritt 1: Fahrer verlässt das Fahrzeug, Schritt 2: Fahrer öffnet den Tankverschluss, Schritt 3: Fahrer wählt die Zapfpistole aus, steckt sie in den Tankstutzen und betätigt den Starthebel, System liefert Treibstoff bis Tank voll oder Tanken abgebrochen wird und startet die Anzeige Schritt 4: Fahrer entnimmt die Zapfpistole und hängt sie ein Schritt 5: Fahrer verschließt den Tank. 21

Anwendungsfall: Tanken Ausnahmen und Fehlerfälle (Extensions): 2: Wenn der Tankverschluss sich nicht öffnen lässt dann Störungsbeseitigung 3: Wenn Pumpe und Zählwerk nicht starten dann Mitteilung an Bedienpersonal 4: Wenn Treibstoff verschüttet wird dann Aufnahme und Beseitigung des Treibstoffes Enthaltene (Included) Anwendungsfälle: ggf. Reinigung der Scheiben Ausführungszeit: 1 bis 3 Minuten Übergeordnete Anwendungsfälle: Tankstellennutzung 22

Ereignisse: Tanken und Einkaufen Fahrzeug erreicht den Tankstellenbereich Welche Zapfsäule bzw. Warteschlange wird ausgewählt? Fahrzeug erreicht Zapfsäule bzw. Wartschlange Fahrer steigt aus und beginnt mit dem Tanken Tanken beendet, zum Tankstellenshop gehen Wird noch im Tankstellenshop eingekauft? Tankstellenshop erreicht/ Beginn Einkauf bzw. Kasse erreicht Beginn Bezahlen Ende Bezahlen Fahrzeug erreicht / Abfahrt / Freigabe der Zapfsäule Tankstellenbereich verlassen 23

Layout des Lego - Modells Maßstab 1 : 50 7 m 13 m 24

Prozesszeiten: Tanken und Einkaufen Prozess Dauer (s) Strecke (m) Zwischenankunftszeit der Fahrzeuge 220 100 Fahrt von Eingang bis Zapfsäule 2,5 0,5 18 24 Tanken 120 60 Gehen von Zapfsäule zum Shop 15 5 10 13 Einkaufen (20%) 110 100 Bezahlen 60 30 Gehen von der Kasse zum Fahrzeug 20 5 15 19 Fahrt von Zapfsäule bis Ausgang 1,5 0,5 5 11 25

Rollenspiel: Tankstelle Nr. E1 E2 E3 E4 E5 E6 E7 E8 E9 E10 E11 1 142 144,6 144,6 227,4 239,7 244,7 244,7 261,5 281,5 283,1 2 188 189,7 283,1 3 222 E1: Erreichen Tankstelle ( ZAZ = 120 + 200 * RN1) E2: Erreichen Zapfsäule bzw. Warteschlange ( Zeit = 2 + RN1) E3: Beginn Tanken E4: Ende Tanken ( Zeit = 60 + 120 * RN1) E5: Erreichen Shop/ Beginn Einkaufen ( Zeit = 10 + 10 * RN1) E6: Ende Einkaufen (5 bzw. Zeit = 10 + 200 * RN1) E7: Erreichen Kasse bzw. Warteschlange E8: Beginn Bezahlen E9: Ende Bezahlen ( Zeit = 30 + 60 * RN1) E10: Erreichen Fahrzeug ( Zeit = 15 + 10 * RN1) E11: Verlassen Tankstelle ( Zeit = 1 + RN1) 26