Vielen Dank für die Zusendung Ihrer Anfrage! Eines unserer Teammitglieder wird Sie in Kürze kontaktieren.
Vielen Dank, dass Sie Ihre Buchung abgeschickt haben! Eines unserer Teammitglieder wird Sie in Kürze kontaktieren.
Schulungsübersicht
Grundlagen des agilen Denkens
- Das Agil-Manifest und dessen Relevanz außerhalb der Softwareentwicklung
- Vergleich von agilen mit klassischen Wasserfall- und planbasierten Entwicklungsmodellen
- Scrum-Rollen, -Ereignisse und -Artefakte im Zusammenhang mit akademischen Projektzyklen
- Kanban und flussorientierte Managementansätze für Forschungs- sowie Lehrmanagementteams
- Auswahl geeigneter hybrider agiler Ansätze für ingenieurwissenschaftliche und gestalterische Umfelder
Agiles Planen und Zusammenarbeiten
- Erstellung von User Stories sowie Definition von Akzeptanzkriterien für ingenieurwissenschaftliche Fragestellungen
- Möglichkeiten der Priorisierung im Backlog: MoSCoW-Methode, Bewertung nach Aufwand und Nutzen, risikobasierte Sortierung
- Sprintplanung sowie Schätzverfahren in Teams außerhalb des Softwarebereichs
- Retrospektiven und kontinuierliche Verbesserungsprozesse im akademischen Umfeld
- Kollaborationswerkzeuge und -boards für interdisziplinäre Arbeitsgruppen
Einführung in die DevOps-Kultur
- Verständnis von DevOps: Überwinden von Trennlinien zwischen Entwicklung und Betrieb
- Das CALMS-Modell: Kultur, Automatisierung, Effizienz, Messbarkeit, Wissensaustausch
- DevOps-Anwendungen in Forschungslaboren, Bauingenieurteams sowie Architekturbüros
- Aufbau einer konstruktiven Fehlerkultur und funktionierender Feedbackmechanismen an Hochschulen
- Berücksichtigung ethischer, sicherheitstechnischer und rechtlicher Aspekte bei der Einführung von DevOps im akademischen Bereich
Versionsverwaltung und gemeinsames Code-Management
- Grundlagen von Git für reproduzierbare ingenieurwissenschaftliche und gestalterische Arbeiten
- Branching-Strategien: Trunk-basiertes Vorgehen, Feature-Branches sowie eine vereinfachte Variante des GitFlow-Modells
- Pull Requests, Peer-Reviews sowie Verantwortlichkeiten für Code im Lehrteam
- Verwaltung nicht-kodierter Ressourcen: CAD-Dateien, BIM-Modelle sowie Simulationsdatensätze
- Strukturierung von Repositories zur Organisation von Lehrmaterial und Studierendenprojekten
Kontinuierliche Integration und Build-Automatisierung
- Grundsätze der kontinuierlichen Integration und deren Anwendung auf kompilierte Software sowie Scripte im Ingenieurbereich
- Einrichtung automatisierter Erstellungsprozesse für Programme, Simulationen sowie Dokumentationen
- Wesentliche Phasen des Pipeline-Ablaufs: Kompilierung, Paketierung, Lint-Prüfungen und Vorab-Kontrollen
- Überblick über gängige CI-Systeme: GitHub Actions, GitLab CI sowie Jenkins
- Bewältigung von großen Datenmengen, Caching von Abhängigkeiten sowie parallele Ausführung mehrerer Aufgaben
Softwarequalität und statische Analyse
- Begriffsbestimmung der Softwarequalität: Wartbarkeit, Zuverlässigkeit, Nutzerfreundlichkeit sowie Effizienz
- Relevante Code-Metriken: Zyklomatische Komplexität, Kopplungsgrad, Kohäsion und Duplizierungen im Quellcode
- Einsatz von statischen Analysewerkzeugen für Python, Java, C++ sowie weitere gängige Programmiersprachen der Ingenieurwissenschaft
- Relevanz von Dokumentation: Verwendung von Docstrings, Standardvorgaben zu READMEs sowie lebendigen Dokumenten
- Eingliederung qualitätsorientierter Prüfungen in die CI-Pipeline – ohne Studierende dabei zu überfordern
Teststrategien und Testdesign
- Das Testpyramiden-Konzept: Unit-, Integrations-, System- und Akzeptanztests
- Schreiben von Unit-Tests für Berechnungen, Simulationen sowie Hilfsprogramme im Ingenieurbereich
- Einführung in Test-driven Development (TDD) und behavior-driven Development (BDD)
- Nachbildung externer Systeme: Sensoren, APIs oder Finite-Elemente-Solver zur Verwendung im Testszenario
- Strukturierung von Test-Suiten für Projekte interdisziplinärer Studierendengruppen
Testautomatisierung und kontinuierliches Testen
- Automatisierte Ausführung von Tests im Rahmen von CI/CD-Pipelines
- Berichterstattung zu Testergebnissen, Definition angemessener Abdeckungswerte sowie Handhabung instabiler Tests
- Einsatz property-basierter Tests und Fuzzing-Techniken zur Analyse komplexerer Ingenieuralgorithmen
- Regressionsverfahren zur Kontrolle sich weiterentwickelnder Studienaufgaben
- Leistungs- und Belastungstests für simulierte sowie rendergestützte Anwendungen im Bereich Ingenieurwesen und Design
Grundsätze der kontinuierlichen Auslieferung und Bereitstellung
- Unterschiede zwischen Delivery und Deployment sowie Konzepte zur Stufenentwicklung von Software-Artifacts
- Gängige Implementierungsmuster: Blue-Green-Deployment, Canary-Releases sowie Feature Toggles
- Anwendung der Prinzipien kontinuierlicher Auslieferung bei der Veröffentlichung wissenschaftlicher Arbeiten, Lernplattformen oder Apps
- Einführung in Docker-Container zur Gewährleistung reproduzierbarer Entwicklungsumgebungen im Ingenieurwesen
- Grundlagen des Infrastruktur-as-a-Code-Konzepts: Deklarative Verwaltung von Laborumgebungen und Cloud-Ressourcen
Beobachtbarkeit, Überwachung und Feedbackmechanismen
- Protokollierung, Messwerterfassung sowie Tracing-Verfahren bei akademischer Software oder Simulationen
- Einrichtung leichtgewichtiger Monitoring-Systeme für Studierendenprojekte und Forschungswerkzeuge
- Nutzung von Rückmeldedaten zur kontinuierlichen Verbesserung von Lehrmaterial und Laborübungen
- Erstellung übersichtlicher Dashboards sowie Warnmeldungen passend zu akademischen Anforderungen
- Überprüfungs- und Rückrollprozesse nach Implementierungen neuer Software oder Designs
Sicherheit und bewährte Qualitätsstandards
- Einführung in sicheres Programmieren: Validierung von Eingaben, Authentifizierungsmechanismen sowie Schutz sensibler Informationen
- Scannen von Abhängigkeiten auf Schwachstellen und Verwaltung kompatibler Open-Source-Softwarepakete
- Achtung auf Lizenzbestimmungen bei Softwareprodukten für Lehrzwecke oder Publikationen
- Datenschutzaspekte im Umgang mit Daten von Studierenden und Forschungsdaten
- Entwicklung einer sicherheitsorientierten Arbeitskultur innerhalb ingenieurwissenschaftlicher und gestalterischer Ausbildungsprogramme
Umsetzung der Praktiken in lehrbare Module
- Ausgestaltung agiler Projektaufgaben für Studierende aus den Bereichen Systemtechnik, Bauingenieurwesen, Gestaltung und Architektur
- Erstellung von Bewertungskriterien zur gleichzeitigen Messung von Prozess- sowie Ergebnisqualität
- Einrichtung vorkonfigurierter Template-Repositories für den Einsatz durch Studierende, inklusive bereitgestellter CI-Einstellungen
- Stufenweise Einführung von DevOps-Grundlagen über einen gesamten Semesterverlauf hinweg
- Evaluation der Arbeitsleistung von Studierendengruppen anhand realistischer Qualitäts- und Automatisierungskriterien
Auswahl geeigneter Werkzeuge unter Berücksichtigung akademischer Rahmenbedingungen
- Bewertung kostenfreier Open-Source-Tools für Abteilungen mit begrenztem Budget
- Einbindung in bestehende Lernplattformen, Speichersysteme sowie Laborinfrastrukturen
- Bewältigung technischer Verschuldung bei langfristig genutzten Forschungssoftware-Archiven
- Einarbeitung von Studierenden und Lehrenden mit unterschiedlichstem technischen Hintergrundwissen
- Langfristige Erhaltbarkeit der Prozesse auch dann, wenn zentrale Mitwirkende den Hochschulbereich verlassen oder ausgetauscht werden
Voraussetzungen
- Grundsätzliche Kenntnisse von Softwareentwicklungskonzepten
- Vertrautheit mit allgemeinen ingenieurwissenschaftlichen oder gestalterischen Arbeitsabläufen
- Erfahrung im Umgang mit Computern für akademische oder projektbezogene Arbeiten
Zielgruppe
- Professoren und Dozenten aus den Bereichen Systemtechnik, Bauingenieurwesen, Gestaltung und Architektur
- Akademische Mitarbeitende, die ihre Lehre mit aktuellen branchenrelevanten Methoden modernisieren möchten
- Forschungsleiter sowie Laborkoordinatoren, die Technologie in den Unterricht einbinden wollen
42 Stunden
Erfahrungsberichte (2)
Craig war extrem engagiert im Training und hat stets darauf geachtet, dass wir aufmerksam sind. Er passte die Beispiele an unsere täglichen Aktivitäten an und gab immer eine Antwort, wenn danach gefragt wurde, auch wenn die Information nicht im Präsentationsmaterial enthalten war.
Ecaterina Ioana Nicoale - BOOKING HOLDINGS ROMANIA SRL
Kurs - DevOps Foundation®
Maschinelle Übersetzung
Hoher Einsatz und Fachwissen des Trainers
Jacek - Softsystem
Kurs - DevOps Engineering Foundation (DOEF)®
Maschinelle Übersetzung