prozessorientierte software-entwicklung · • technologien im team gestalten • systematische...

24
Dr. Hanno Schauer Mons-Tabor-Gymnasium Montabaur Prozessorientierte Software-Entwicklung

Upload: others

Post on 24-Jun-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

Dr. Hanno Schauer Mons-Tabor-Gymnasium Montabaur

Prozessorientierte Software-Entwicklung

Page 2: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

Hoher „Bildungswert“ (Vermittlung von Kernkompetenzen):

• Technologien im Team gestalten

• Systematische Projektarbeit („Ingenieursarbeit“)

• Authentische Anwendung von Modellierungsmethoden

Unterrichtsthema „Software-Entwicklung“

20.05.2015 2 Dr. Hanno Schauer

Page 3: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

Herausforderungen in Praxis und Unterricht

1. Software-Entwicklung:

Page 4: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

„Ein Schüler benötigt 45 Minuten, um eine Ampelschaltung zu programmieren. Wie lange benötigen 100 Schüler, um das Verkehrsleitsystem einer Stadt mit 80 Ampeln zu planen und zu implementieren?“

Eine „Kapitänsaufgabe“ als Problemaufriss

20.05.2015 4 Dr. Hanno Schauer

Große Projekte erfordern ein anderes Vorgehen zur Planung und Durchführung als kleine. !

Page 5: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

Herausforderungen:

• Softwareprojekte betreffen die IT und die (Anwendungs-) Domäne

• Beteiligte mit unterschiedlichem Hintergrund: Auftraggeber, Anwender, Entwickler, …

(Zentrale) Erfolgsfaktoren:

• sorgfältige Analyse des Problemgegenstands

• methodengestützte Softwareplanung

• dediziertes Projektmanagement

Große Softwareprojekte

20.05.2015 5 Dr. Hanno Schauer

Das Programmieren von Software wird in der Praxis häufig nicht als Herausforderung begriffen.

!

Page 6: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

• Komplexität realer Projekte erlebbar machen

• Betonung früher Phasen (Analyse + Entwurf)

• Überforderung von Schüler(inne)n vorbauen (insb. bei Schwächen in Programmierung)

• Zeitliches „Zerfransen“ der Reihe vermeiden

Herausforderungen für den Unterricht:

20.05.2015 6 Dr. Hanno Schauer Es bedarf wohl überlegter Unterrichtskonzepte … !

Page 7: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

Prozessorientierte Software-Entwicklung an einem Beispiel

2. Fallstudie „Häck-Eck“ (Ausschnitt)

Page 8: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

Der Computerladen „Häck-Eck“ vertreibt u. a. kundenspezifisch konfigurierte Computersysteme über zwei Ladengeschäfte und einen Online-Shop.

Seit der Vergrößerung der Belegschaft (auf 20 Personen) häufen sich Reklamationen bezüglich zu langer Lieferzeiten und Falschlieferungen bei konfigurierten Systemen.

Fallstudie „Häck-Eck“: Ausgangssituation:

20.05.2015 8 Dr. Hanno Schauer

Der Geschäftsführer bittet die Computer-AG des örtlichen Gymnasiums um Hilfe. !

Die Computer AG modelliert den Geschäfts-Prozess der Bestellabwicklung als BPMN …

!

Page 9: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

Ist-Prozess (in BPMN) „Bestellabwicklung konfigurierter PC“

20.05.2015 9 Dr. Hanno Schauer

Prozessmodelle sind für Nicht-Informatiker intuitiv verständlich: Kommunikationsinstrument. !

Page 10: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

Prozessmodellierungssprache Business Process Modelling Notation (BPMN)

20.05.2015 10 Dr. Hanno Schauer

Gateway (Verzweigung)

Kontrollfluss

Aktivität / Aufgabe

Ereignis

„Sprechende“ Piktogramme (z.B. händischer Prozess)

Page 11: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

Prozessmodellierungssprache Business Process Modelling Notation (BPMN)

20.05.2015 11 Dr. Hanno Schauer

Gateway (Verzweigung)

Kontrollfluss

Aktivität / Aufgabe

Ereignis

„Sprechende“ Piktogramme (z.B. händischer Prozess)

Was unterscheidet die BPMN von Ablauf- oder Interaktionsbeschreibungssprachen der Informatik?

?

Modellierung automatisierter und menschlicher Tätigkeiten

Möglichkeit, unscharf bzw. unvollständig zu modellieren

!

… zurück zu unserem Beispiel …

Page 12: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

Analyse-Phase: Analyse des Ist-Prozesses

20.05.2015 12 Dr. Hanno Schauer

Viele händische Tätigkeiten

Papiergebundene Datenhaltung und

-übermittlung

Keine Information über Teileverfügbarkeit.

Fertigungsplanung erst bei Teileverfügbarkeit

Lieferzeiten können nicht zugesagt werden

Page 13: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

Die „Produktidee“

20.05.2015 13 Dr. Hanno Schauer Was bedeutet dies für die Organisation „Häck-Eck“? ?

Page 14: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

Software verändert die Domäne, in der sie eingesetzt wird.

Bspw. im betrieblichen Umfeld:

• Arbeitsabläufe und (Geschäfts-) prozesse

• Anzahl Arbeitskräfte

• Benötigte Fertigkeiten und Fähigkeiten der Mitarbeiter

• Neu- / andersartige Dienstleistungen und Produkte

• Sogar: Neue Branchen

Technologiefolgen

20.05.2015 14 Dr. Hanno Schauer

Technologiefolgen müssen (mit-) geplant werden. !

Page 15: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

Entwurfs-Phase 1 – Prozessorganisation: Reorganisierter (Geschäfts-) Prozess

20.05.2015 15 Dr. Hanno Schauer

Es gibt viele denkbare Lösungen! (Tipp: Schülerlösungen „diskursiv“ vergleichen!)

!

Page 16: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

Entwurfs-Phase 2 – Domänenmodell: BPMN erweitert um ein Klassendiagramm

20.05.2015 Dr. Hanno Schauer 16

Benötigte Informationen (i. W. Attribute) und Services

(Methoden) ableiten:

Page 17: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

Entwurfs-Phase 2 – Implementierungsmodell:

20.05.2015 17 Dr. Hanno Schauer Ergänzung weiterer Konzepte (Klassen / Module), die für den Betrieb der Software notwendig sind.

Page 18: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

Eine Software-Entwicklungsmethode für den Unterricht

3. ProKlaMation : Prozesse – Klassen – Automation

Page 19: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

ProKlaMation: Modelle der Analyse- und Design-Phase

20.05.2015 19 Dr. Hanno Schauer

Modellgetriebene Softwareentwicklung Klar abgegrenzte Meilensteine

!

Tipp: „Debugging-Aufgaben“

Page 20: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

• Zentrale Sichtweise in Technik und Organisation (Berufsleben)

• Fokus auf Analyse und Entwurf

• Gut verständlich (auch für Schüler(innen) mit Schwächen in der Programmierung)

• Alleinstellungsmerkmal der (Schul-) Informatik (Bildungskanon)

Fazit 1: Prozesse als Unterrichtsgegenstand

20.05.2015 20 Dr. Hanno Schauer

Page 21: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

• Authentisch – Orientierung an Informatik-Praxis

– Prototypisch auch für Methoden anderer Ingenieursberufe

• „Gestaltungsorientiert“ – Planung und Modellierung im Vordergrund

– Explizite Berücksichtigung organisationaler Veränderungen

• Systematisch: Klar abgegrenzte Phasen und Meilenstein-Ergebnisse – Unterrichtsreihen gut strukturierbar

– Keine durchgängigen Beispiele erforderlich

Fazit 2: Die Methode „ProKlaMation“

20.05.2015 21 Dr. Hanno Schauer

Page 22: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

Fragen? Vielen Dank!

[email protected]

Page 23: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

Bildungsserver Rheinland-Pfalz

bildung-rp.de/

Suchbegriff: „Prozessorientierte Softwareentwicklung“

infodaktik.de (ab Herbst 2015)

Unterrichtsmaterialien

Page 24: Prozessorientierte Software-Entwicklung · • Technologien im Team gestalten • Systematische Projektarbeit („Ingenieursarbeit“) • Authentische Anwendung von Modellierungsmethoden

Modellierungswerkzeuge

• Microsoft Visio (BPMN,

Klassendiagramme)

• yEd (BPMN,

Klassendiagramme)

• Violet UML Editor (Klassendiagramme)

Modellierungswerkzeuge +Entwicklungsumgebung (nur Klassendiagramme)

• BlueJ

• JavaEditor

• AmaterasUML/Eclipse

Tools für Analyse und Design

20.05.2015 24 Dr. Hanno Schauer