Prof. Dr. Frank Bühler

Lehrgebiet
Advanced Software Engineering

Sprechstunde
nach Vereinbarung

Weitere Funktionen
  • HOBIT-Beauftragter
  • Schul- und Messebeauftragter
  • Studienfachberater

Büro: D15/2.08

Prof. Dr. Frank Bühler ist Professor für Advanced Software Engineering am Fachbereich Informatik der Hochschule Darmstadt. Seine Lehr- und Forschungsinteressen liegen auf den Gebieten von Business Process Management (BPMN, DMN, Workflow-Systeme mit KI-Anbindung), agiler SW-Entwicklung (insbesondere SCRUM, KANBAN und Continuous Integration/Inspection/Delivery) sowie Process Mining und Python-Programmierung.

Darüber hinaus ist Prof. Bühler am Fachbereich Informatik Koordinator für vorhochschulische Aktivitäten und Ansprechpartner für Schulen und Schulkooperationen. Aktuell gibt es eine strategische Kooperation mit der Hochtaunusschule in Oberusel. Auch unterstützt er aktiv das Hessen-Technikum und den Girls' Day am Fachbereich Informatik.
 

Überblick (Profil)

  • Bachelor (FB I):
    - Software Engineering (SE) - nur SS
    - Seminar Wissenschaftliches Arbeiten in der Informatik 2 (WAI2) - nur SS
    - Projekt Systementwicklung (BPSE) - KinderCampus (SS) und FLL (WS)
    - Fortgeschrittene Programmierung mit Python (WS)
  • Bachelor (FB MN):
    - Programmieren III (nur WS)
  • Master (FB I)
    - Business Process Engineering (nur SS)
    - Vertiefende F&E-Studie (siehe hier)
     

     Vorlesungen, die nicht mehr angeboten werden:
     - Objektorientierte Analyse und Design (OOAD)
     - Parallel and Distributed Computing (Master)
     - Edutainment (Master)
     - Master Projekt Systementwicklung (MPSE)
     - Hauptseminar (Mast 3, MN DSc)
     - Prozess- und Systemintegration (Bachelor)
     - Entwicklung von Java EE-Anwendungen mit agilen Methoden (Bachelor)

  • Projekt Systementwicklung (BPSE): 30.7504
    Projektstart: xx. April 2024
    Projekttreffen im SS24: jeweils am Mittwoch 2. + 3. Block (ab 10:15 Uhr)
    KinderCampus: 12.08.2024 bis 23.08.2024 (Mo-Fr, jeweils täglich von ca. 9 Uhr bis ca. 17:30 Uhr)

    SS24 - Projekt "KinderCampus - Lego Mindstorms EV3/Robot Inventor und Raspberry PI"
                Projektorganisation-/leitung: Prof. Dr. Frank Bühler
                Kontakt: frank.buehler@h-da.de
                KinderCampus - Kurse für Einsteiger
                und Fortgeschrittene und Experten
               

    Im Rahmen des angebotenen Projekts geht es um die Vorbereitung/ Konzeption sowie um die Durchführung des KinderCampus 2024 in den letzten beiden Wochen der hessischen Sommerferien. In den angebotenen Kursen lernen Kinder im Alter von 10 bis 16 Jahren das Bauen und Programmieren von verschiedenen Lego-Modellen auf Basis der Lego Mindstorms EV3-Kästen und der Robot Inventor-Sets und des Raspberry PI. Als Programmiersprachen wird die EV3-Software (EV3-G), Scratch sowie Python verwendet.

           Folgende KinderCampus-Kurse sind für 2024 in den zwei Wochen
           vorgesehen:   
           - 2 Grundkurse mit EV3 für Einsteiger und Fortgeschrittene
                (jeweils 5 Tage)
           - 2 Grundkurse mit Robot Inventor für Einsteiger und Fortgeschrittene
                (5 Tage)
           Vorbereitung für 2025: 
           - Expertenkurs mit Raspberry PI/Build Hat + Python + Display
                (5 Tage)

Belegvoraussetzung

Für die Belegung des Projekts ist es zwingend erforderlich, dass Sie vom 12.08.2024 bis 23.08.2024 (Mo-Fr, jeweils täglich von ca. 9 Uhr bis ca. 17:30 Uhr) für die Durchführung der Kurse Zeit haben. Sollten Sie keine Zeit haben (z. B. wegen Praxisphase oder anderer Verpflichtungen) können Sie an dem Projekt leider NICHT teilnehmen. Idealerweise haben Sie Spaß beim Umgang mit Kindern und sind teamfähig sowie zuverlässig. Auch soltten Sie bereit sein, neue Lego-Modelle zu bauen und zu programmieren. Auch wenn Sie kreative Ideen einbringen möchten oder an technischen Steuerungen Interesse haben, sind Sie bei dem Projekt richtig.

Projektüberblick (Hauptaufgaben im SS 2024 mit Wahlmöglichkeit)
-
Einarbeitung in die Lego-Bausätze Mindstorms EV3 und Robot Inventor
- Einarbeitung in die Programmierung (Symbolbasierte EV3-Software EV3-G, Scratch und Python)
- Evaluierung und Konzeption neuer Modelle und Steuerungen (aktiv + passiv)
- Entwurf von Untergründen inkl. Aufgabenstationen
- Konzeption und Realisierung einer Anwendung auf Basis von Raspberry PI
  (+ Build HAT
 + Display)
- Einarbeitung in Lego Digital BrickLink Studio (-> siehe Bsp.)
- Konzeption und Entwicklung einer Web-Präsenz mit folgenden Technologien:
  React JS+NodeJS+Expressü Mongo DB  (MERN-Stack)
- Durchführung der Kurse (inkl. Aufbau und Abbau, Vorbereitung der Rechner, Betreuung der Kinder und weiterer Dienste)
- Erstellung von Kursunterlagen (Aufgaben- und Lösungshefte, Bauanleitungen, Steckbriefe), bei Python-Aufgaben auch mit Jupyter Notebook

Zusätzliche Projektaufgaben mit Wahlmöglichkeit, z. B.
- Postererstellung
- Video-Erstellung inkl. Drehbuch (während Kurswoche)
- Fotoaufnahmen (während Kurswoche)
- Getränke (während Kurswoche)
- Übernahme von Diensten (z. B. Becher spülen, Akkus laden)
- Pausenspiele (z. B. "Wer hat schon ... gemacht?", Tischtennis, Federball)
- Vorbereitung und Durchführung einer Eltern-Präsentation (während Kurswoche)

Selbstverständlich können Sie weitere eigene Vorschläge einbringen.


Es wird erwartet, dass Sie aktiv in dem Projekt mitarbeiten und bereit sind entsprechende Aufgaben und Rollen während des KinderCampus zu übernehmen, In dem Projekt spielt der Teamgedanke eine wichtige Rolle. Bei Interesse bzw. Fragen können Sie sich gerne auch vorab melden.

S 24 - Fortgeschrittene Programmierung in Python

Termine und Raum
Start der Vorlesung:       15.04.2024 - C23/02.02
Start des Praktikums:     17.04.2024 - 1. Block: D15/01.02 
                                                                   5. Block: D15/00.04
Dozent: Prof. Dr. Frank Bühler


Überblick - Vorlesung
- Einstieg/Organisatorisches
- Grundlagen 
  + Einrichten einer Python-Entwicklungsumgebung mit venv
     und pipenv (PyCharm-IDE)
  + Überblick: typische Einsatzgebiete und Sprachmittel von Python
     (prozedural)        
  + objektorientierte Programmierung in Python 
  + zentrale Datentypen und Datenstrukturen wie
     Listen, List Comprehensions, Tenärer Operator,
     Tuples, Sets und Dictionaries
  + Testen von Python-Programmen
  + weitere Sprachmittel und Konzepte:
     funktionale Programmierung, Ausnahmebehandlung, Type Hinting,
     Generatoren, Iteratoren, Dekorateure
- Vertiefende Anwendungsbereiche
  + Verarbeitung von JSON-Dokumenten und Anbindung an eine
     NoSQL-Datenbank
  + Durchführung einfacher Datenanalysen auf Basis
      der Python-Module Matplotlib, NumPy, Pandas und SciPy  
  + Konzeption und Entwicklung graphischer Oberflächen
      mit PyQt 5/6, OpenCV-Einbindung
  + Konzeption und Entwicklung einer Web-Anwendung auf Basis
     von Django unter Berücksichtigung zentraler Konzepte wie
     URL Routing, MVT, Models/ORM, Formulare
- Zusammenfassung

Überblick - Praktikum
- 17.04.24 - Praktikum 1
                           prozedurale Programmierung (in 2er Teams)
- 24.04.24 - Praktikum 2
                            objektorientierte Programmierung,
                            List Comprehensions (in 2er Teams)
- ab 08.05.24 - Praktikum 3-10
                            frei definiertes Python-Projekt (in 4er Teams)
                            Nutzung von Gitlab
- 10.07.24 - Projektpräsentationen (Testate)

Nützliche Links
- W3Schools Python-Tutorial: https://www.w3schools.com/python/
- The python Tutorial: https://docs.python.org/3/tutorial/index.html
- Tutorialspoint: https://www.tutorialspoint.com/python/index.htm

 

WS 24/25 - Bachelor-Projekt "First Lego League Challenge - Regionalwettbewerb"

Projekt Systementwicklung (BPSE): 30.7504
Projektorganisation-/leitung: Prof. Dr. Frank Bühler,
Kontakt: frank.buehler@h-da.de
               (für evtl. Fragen vor/während der Belegphase
                stehe ich gerne zur Verfügung)


Projektziel:
Konzeption und Durchführung des FLL-Regionalwettbewerbs für die Region Darmstadt für die Saison 24/25., siehe https://www.first-lego-league.org/de/challenge-2023-24/darmstadt

Projektstart: Oktober 2024
Projekttreffen im WS24/25: jeweils am Mittwoch 2. + 3. Block (ab 10:15 Uhr)

Beschreibung
Bei dem Bachelorprojekt geht es um die Ausrichtung der First Lego League in der Region Darmstadt durch den Fachbereich Informatik für die kommende Saison 2024/25 (voraussichtlich am 25. Januar 2025).
Die First Lego League, abgekürzt FLL, ist ein weltweites Bildungsprogramm für Kinder und Jugendlichen im Alter von 9 bis 16 Jahren. An diesem Wettbewerb nehmen 14 Schulklassen mit ca. 120-140 Schülern teil. Im Rahmen des Roboterwettbewerbs müssen diese Schulklassen verschiedene Aufgaben in unterschiedlichen Kategorien durchführen. So muss die Schulklasse eine Forschungsaufgabe bearbeiten und am Wettbwerbstag vorstellen. Höhepunkt des Programms ist der Roboterwettbewerb, bei denen die Teams ihre in den Wochen davor entwickelten Lego-Mindstorms-Roboter (RCX, NXT, EV3, Robot Inventor oder Education Spike Prime) verwenden, um auf einem Spielfeld vielfältige Aufgaben lösen. Alle Aufgaben sowie das Roboter-Design werden von einer Jury bewertet. Weitere Infos findet man hier. Eine eindrucksvolle Lösung von Aufgaben des Roboter Game (mit der maximal zu erreichenden Punktzahl) ist hier zu sehen.


Belegvoraussetzung

Für die Belegung des Projekts ist es zwingend erforderlich, dass Sie am 24.01.2025 (Aufbau, nachmittags ab ca. 16 Uhr) und am 25.01.2024 (Wettbewerbstag von 8 Uhr bis ca. 21:30 Uhr) für die Durchführung des Wettbewerbs Zeit haben. 


Projektaufgaben
- Einarbeitung in Lego Sets inkl. Programmierung (Scratch - siehe hier und Python - siehe hier) sowie in Raspberry PI+Build Hat und Python - siehe hier)
- Erarbeitung von Musterlösungen für die Wettbewerbsaufgaben
- Einarbeitung in die Bewertung der verschiedenen Aufgaben (Robot Game, Forschungsfragen, Robot Design Process und Grundwerte), Schiedsrichterschulung
- Planung des Wettbewerbstags (Raumplanung, Hinweisschilder, Zeitplanung, Materialplanung, Rollenkonzept, Bewertungseingabe, Aufbau der Spieltische etc.)
- Bühnen- und Medientechnik (Mikrofon, Projektion, Aufnahme der Robot Games und Anzeige mit Rasperry PI Cam auf Beamer und Youtube, Beleuchtung, Durchsagen, Musik)
- Video- und Fotoaufnahmen während Wettbewerbstag (inkl. Bereitstellung für Teilnehmer)
- Öffentlichkeitsarbeit (z.B. Postererstellung, Einwerben von Sponsoren und Infos an Schulen) 

Kontakt

Prof. Dr. Frank Bühler

Kommunikation Schoefferstrasse 8b
64295 Darmstadt
Büro: D15, 208

frank.buehler@h-da.de

1

Sprechstunde
nach Vereinbarung