Kollaboration in Programmierprojekten

Über das Projekt

Professionelle Softwareentwicklung wäre ohne Versionskontrollsystem undenkbar: Erst hierdurch werden ganz eigene Möglichkeiten der Kollaboration eröffnet, Datensicherheit hergestellt und die Projektkoordination unterstützt. Ähnliches gilt für den Einsatz von Versionskontrollsystemen (VCS) in der Schule: Kein USB-Stick-Wahnsinn, keine Probleme nach den Ferien, wie "Was war denn nochmal meine aktuelle Version", kein "Mein Mitschüler ist krank, ich komme nicht an unseren Code". Gleichzeitig wird die damit verbundene Fähigkeit zur Versionskontrolle in der heutigen Welt immer wichtiger. Allerdings weisen professionelle Werkzeuge wie git eine enorm hohe Komplexität auf, die selbst professionellen Softwareentwicklern Probleme bereitet, und erschweren jungen Menschen so den Zugang. In diesem Projekt wird ein didaktisch reduziertes Versionskontrollsystem für die blockbasierte Sprache Snap!, basierend auf einer Analyse bestehender Ansätze didaktisch reduzierter sowie professionell genutzter Werkzeuge, konzipiert, realisiert und evaluiert, welches die Vorteile von VCS mit einer intuitiven und einsteigerfreundlichen Nutzung verbindet. Hierdurch können auch Programmieranfänger von den Möglichkeiten eines VCS zur Kollaboration und zum Experimentieren (Tinkern) profitieren und erlernen dabei ganz intuitiv die genuin informatische Formen der Kollaboration, die diese Werkzeuge ermöglichen. Im Rahmen dieses Forschungsschwerpunkts wird untersucht, wie Lernende in Programmierprojekten kollaborieren und welchen Einfluss kollaboratives Arbeiten auf den Entwurf und das Design von Programmen hat.

Publikationen

Seegerer, S., Michaeli, T. & Waite, J. (2021): Collaboration in Programming Projects (Reprint). In: The Big Book of Computing Pedagogy, Raspberry Pi Foundation, Cambridge.

Seegerer, S., Michaeli, T., & Romeike, R. (2020). Investigating How Novices Use and Collaborate with a Version Control System for Block-Based Languages. In LaTiCE2020: The Seventh International Conference on Learning and Teaching in Computing and Engineering, Ho Chi Minh City, VN.

Seegerer, S., Michaeli, T., & Waite, J. (2020). Collaboration in Programming Projects. In Hello World, 13.

Michaeli, T., Seegerer, S., & Romeike, R. (2018). Enabling Collaboration and Tinkering: A Version Control System for Block-based Languages. In Valentina Dagienė Eglė Jasutė (Eds.), Constructionism 2018: Constructionism, Computational Thinking and Educational Innovation: conference proceedings (pp. 395-403). Vilnius, LT.