Title: Projekt
Course: Python lernen und anwenden

Es war einmal…

… ein kleiner Bauernhof, der von einer liebevollen Familie bewirtschaftet wurde. Hier lebten zahlreiche Tiere, darunter Hühner, Kühe, Schweine und Schafe. Jeden Tag begannen alle Familienmitglieder ihre jeweilige Arbeit frühmorgens und kümmerten sich um alle Bedürfnisse der Tiere. Die Hühner legten fleißig Eier, die Kühe wurden gemolken, die Schweine gefüttert und die Schafe geschoren.

Eines Tages dachte sich der jüngste Landwirt, dass es schön wäre, wenn er ein spezielles Programm hätte, das ihm bei der Organisation der täglichen Aufgaben auf dem Hof helfen könnte. Das Programm sollte ihm zum Beispiel sagen können, welche Tiere gefüttert werden, ob Eier eingesammelt werden müssen und welche Schafe als nächstes geschoren werden sollten. Auch die Abläufe mit dem Futterlieferanten, der Molkerei, dem Viehhändler möchte die Familie gern erfassen und optimieren. Daher entschließt sie sich entsprechende Hilfe zu organisieren und fragt dich…

Projekt "Unsere kleine Farm"

In den nächsten Wochen bearbeiten wir ein Projekt zum Thema "Unsere kleine Farm". Dieses Projekt gliedert sich in drei typische Phasen einer Software-Entwicklung. Am Ende jeder Phase wird als Meilenstein eine Erarbeitung abgegeben.

Projektidee

In den nächsten Wochen bearbeiten wir in Teams ein Projekt zum Thema "Unsere kleine Farm". Dieses Projekt gliedert sich in drei typische Phasen einer Software-Entwicklung. Am Ende jeder Phase wird als Meilenstein eine Erarbeitung abgegeben. Wir starten mit einer Modellierung "Unserer kleinen Farm". Es soll eine Modellierung der realen Welt eines landwirtschaftlichen Betriebs erfolgen. Hierbei könnten folgende Dinge aus der realen Welt im Modell berücksichtigt werden: Landwirt, Kunde, Raiffeisen-Genossenschaft (Großhändler), Produkte, etc. Einen Ausschnitts dieses Modells werden wir in Python umsetzen.

Vorgehen

Du hast dir mit den Python-Materialien ein Wissensfundament geschaffen, welchen zusammen mit den Kenntnissen über Modellierung geeignet ist, den Projektauftrag zu erfüllen. Die Dokumentation und Umsetzung des Projekts erfolgt mit dem Scrum-Board und den Werkzeugen Diagrams.net und WebTigerPython.

Meilensteine

Die Meilensteine stellen die Ergebnisse der einzelnen Phasen dar.

Meilenstein A: Listen finden

In der ersten Phase erfolgt eine Modellierung der realen Welt eines landwirtschaftlichen Betriebes. Wähle hierbei einen Ausschnitt der realen Welt aus, der ausreichend komplex ist, so dass Elemente in unterschiedlichen Beziehungen zueinander stehen.

Konzentriere dich aber auf die wichtigen Elemente der realen Welt. Im Post-it-Stil sollen die Elemente mit Beispielwerten sowie die Beziehungen zwischen den Elementen mit Hilfe von Diagrams.net modelliert werden. Fasse zuletzt die Elemente zu geeigneten Listen zusammen.

Meilenstein B: Erstellung der Dictionaries

In der zweiten Phase wird das Modell mit Python umgesetzt. Erstelle hierfür die erforderlichen Listen und implementiere die Listen mit den zugehörigen Dictionaries in WebTigerPython.

Meilenstein C: Implementierung der Funktionen

In der dritten Phase werden Funktionen implementiert. Zu jedem Element, das existiert, soll eine Funktion zur Erstellung vorhanden sein. Zusätzlich soll mindestens eine weitere Funktion geplant werden, bei der zunächst ein Struktogramm erstellt wird, das den Algorithmus wiedergibt. Diese Funktion muss mindestens mehrere Typen von Kontrollstrukturen (zwei Typen von Schleifen und Verzweigungen) beinhalten. Danach werden die Funktionen vollständig in WebTigerPython implementiert.

Es war einmal…

… ein kleines Hotel, das von einer liebevollen Familie betrieben wurde. Hier gab es zahlreiche Gästezimmer, ein Restaurant und viele Freizeitangebote. Jeden Tag begannen alle Familienmitglieder ihre jeweilige Arbeit frühmorgens und kümmerten sich um alle Bedürfnisse der Gäste. Die Zimmer wurden gereinigt, das Frühstück zubereitet, Reservierungen bearbeitet und Veranstaltungen organisiert.
Eines Tages dachte sich der jüngste Familienmitglied, dass es schön wäre, wenn sie ein spezielles Programm hätten, das ihnen bei der Organisation der täglichen Aufgaben im Hotel helfen könnte. Das Programm sollte ihnen zum Beispiel sagen können, welche Zimmer gereinigt werden müssen, ob neue Reservierungen eingegangen sind und welche Veranstaltungen als nächstes geplant werden sollten. Auch die Abläufe mit den Lieferanten, dem Restaurant und der Rezeption möchte die Familie gern erfassen und optimieren. Daher entschließt sie sich, entsprechende Hilfe zu organisieren und fragt dich…

Projekt "Hotel Irgendwo"

In den nächsten Wochen bearbeiten wir ein Projekt zum Thema "Hotel Irgendwo". Dieses Projekt gliedert sich in drei typische Phasen einer Software-Entwicklung. Am Ende jeder Phase wird als Meilenstein eine Erarbeitung abgegeben.

Projektidee

In den nächsten Wochen bearbeiten wir in Teams ein Projekt zum Thema "Hotel Irgendwo". Dieses Projekt gliedert sich in drei typische Phasen einer Software-Entwicklung. Am Ende jeder Phase wird als Meilenstein eine Erarbeitung abgegeben. Wir starten mit einer Modellierung "Hotel Irgendwo". Es soll eine Modellierung der realen Welt eines Hotelbetriebes erfolgen. Hierbei könnten folgende Dinge aus der realen Welt im Modell berücksichtigt werden: Hotelpersonal, Betten-Management, Rezeption, Restaurant, Dienstleistungen wie z.B. Kartenverkauf für Kulturveranstaltungen, etc. Einen Ausschnitts dieses Modells werden wir in Python umsetzen.

Vorgehen

Du hast dir mit den Python-Materialien ein Wissensfundament geschaffen, welchen zusammen mit den Kenntnissen über Modellierung geeignet ist, den Projektauftrag zu erfüllen. Die Dokumentation und Umsetzung des Projekts erfolgt mit dem Scrum-Board und den Werkzeugen Diagrams.net und WebTigerPython.

Meilensteine

Die Meilensteine stellen die Ergebnisse der einzelnen Phasen dar.

Meilenstein A: Listen finden

In der ersten Phase erfolgt eine Modellierung der realen Welt eines landwirtschaftlichen Betriebes. Wähle hierbei einen Ausschnitt der realen Welt aus, der ausreichend komplex ist, so dass Elemente in unterschiedlichen Beziehungen zueinander stehen.

Konzentriere dich aber auf die wichtigen Elemente der realen Welt. Im Post-it-Stil sollen die Elemente mit Beispielwerten sowie die Beziehungen zwischen den Elementen mit Hilfe von Diagrams.net modelliert werden. Fasse zuletzt die Elemente zu geeigneten Listen zusammen.

Meilenstein B: Erstellung der Dictionaries

In der zweiten Phase wird das Modell mit Python umgesetzt. Erstelle hierfür die erforderlichen Listen und implementiere die Listen mit den zugehörigen Dictionaries in WebTigerPython.

Meilenstein C: Implementierung der Funktionen

In der dritten Phase werden Funktionen implementiert. Zu jedem Element, das existiert, soll eine Funktion zur Erstellung vorhanden sein. Zusätzlich soll mindestens eine weitere Funktion geplant werden, bei der zunächst ein Struktogramm erstellt wird, das den Algorithmus wiedergibt. Diese Funktion muss mindestens mehrere Typen von Kontrollstrukturen (zwei Typen von Schleifen und Verzweigungen) beinhalten. Danach werden die Funktionen vollständig in WebTigerPython implementiert.

Hinweis für die Lehrkraft:

Zur leichteren Erreichbarkeit und Übersicht ist auch ein Ausdruck des Scrum-Boards in Erwägung zu ziehen.

Quelle: Deeper Learning Workbook, S. 108

Auf dem Scrum-Board sollen alle Projektschritte festgehalten werden und helfen, die Prozesse gut zu steuern und zu koordinieren.

Quelle: Deeper Learning Workbook