Software Engineering for Smart Data Analytics & Smart Data Analytics for Software Engineering
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
teaching:projectgroups:ast:2020:praxis_der_agilen_softwareentwicklung [2020/03/27 09:22] Lars Reimann |
teaching:projectgroups:ast:2020:praxis_der_agilen_softwareentwicklung [2021/03/15 10:41] (current) Günter Kniesel |
||
---|---|---|---|
Line 4: | Line 4: | ||
===== Agile Softwareentwicklung in der PG AST ===== | ===== Agile Softwareentwicklung in der PG AST ===== | ||
- | Unabhängig von der [[Themenstellung|inhaltlichen Themenstellung]] eines Projektes ist es für Softwareentwickler wichtig, in der Lage zu sein, ein Projekt organisieren, planen und durchführen zu können. Das umfasst eine Vielzahl von Fähigkeiten: | + | Unabhängig von der [[Themenstellung|inhaltlichen Themenstellung]] eines Projektes ist es für Softwareentwickler wichtig, in der Lage zu sein, **ein Projekt organisieren, planen und durchführen** zu können. Das umfasst eine Vielzahl von Fähigkeiten: |
* Mit Kunden zu sprechen und deren Wünsche zu verstehen, | * Mit Kunden zu sprechen und deren Wünsche zu verstehen, | ||
* daraus konkrete Anwendungsfälle zu distillieren, | * daraus konkrete Anwendungsfälle zu distillieren, | ||
Line 16: | Line 16: | ||
* mit dem Team die eigene Arbeitsweise zu reflektieren, Probleme zu identifizieren und Verbesserungen Ihres Prozesses zu beschließen. | * mit dem Team die eigene Arbeitsweise zu reflektieren, Probleme zu identifizieren und Verbesserungen Ihres Prozesses zu beschließen. | ||
- | Primäres Ziel der Projektgruppe ist, Ihnen diese Fähigkeiten praktisch zu vermitteln indem Sie einmal pro Woche einen vollen 8-Stunden-Tag lang an einem Projekt mitarbeiten, in dem agile Softwareentwicklung (s. Vorlesung und https://agilemanifesto.org/) praktiziert wird. Dabei begleiten wir Sie bei der Bewältigung der [[Themenstellung|inhaltlichen Aufgabenstellung]] indem wir Ihnen: | + | Primäres Ziel der Projektgruppe ist, Ihnen diese Fähigkeiten praktisch zu vermitteln indem Sie **einmal pro Woche einen vollen 8-Stunden-Tag lang** an einem Projekt mitarbeiten, in dem **agile Softwareentwicklung** (s. Vorlesung und https://agilemanifesto.org/) praktiziert wird. Dabei begleiten wir Sie bei der Bewältigung der [[Themenstellung|inhaltlichen Aufgabenstellung]] indem wir Ihnen: |
* einen **Prozessmentor** zur Verfügung stellen, der Ihnen Techniken agiler Softwareentwicklung genau dann erklärt (oder in Erinnerung bringt), wenn Sie sie gerade brauchen und Sie bei deren Umsezung durch das gesamte Semester begleitet, Ihnen hilft zu reflektieren, was Ihnen die Techniken bringen, wie Sie sie für ihr eigenes Team am sinnvollsten anpassen können, was die Konsequenzen ihrer Vorgehensweise sind / waren und wie Sie sie verbessern können; | * einen **Prozessmentor** zur Verfügung stellen, der Ihnen Techniken agiler Softwareentwicklung genau dann erklärt (oder in Erinnerung bringt), wenn Sie sie gerade brauchen und Sie bei deren Umsezung durch das gesamte Semester begleitet, Ihnen hilft zu reflektieren, was Ihnen die Techniken bringen, wie Sie sie für ihr eigenes Team am sinnvollsten anpassen können, was die Konsequenzen ihrer Vorgehensweise sind / waren und wie Sie sie verbessern können; | ||
- | * einen realen **Kunden** zur Verfügung stellen, der an der [[Themenstellung|inhaltlichen Aufgabenstellung]] interessiert ist, Sie fachlich berät bis Sie alle Anforderungen ausreichend verstanden haben, Ihre Ergebnisse sobald verfübar umgehend ausprobiert (Akzeptanztesting) und Ihnen dazu Feedback liefert; | + | * einen realen **Kunden** zur Verfügung stellen, der an der [[Themenstellung|inhaltlichen Aufgabenstellung]] interessiert ist, Sie fachlich berät bis Sie alle Anforderungen ausreichend verstanden haben, Ihre Ergebnisse sobald sie verfübar sind ausprobiert (Akzeptanztesting) und Ihnen dazu Feedback liefert; |
- | * einen **technischen Experten** zur Verfügung stellen, der Ihnen die notwendigen technischen Hintergründe vermittelt und immer ansprechbar ist, wenn Sie es brauchen. Statt langer, umfangreicher, theoretischer Schulungen von denen 90% wieder verpuffen, bis Sie sie in der Praxis umsetzen, lernen Sie wie effektiv es ist, wenn jemand Sie genau dann an die Hand nimmt, wenn Sie ein konkretes Problem haben, und Sie mit der gelernten Lösung sofort produktiv in Ihrem Arbeitsablauf weitermachen können. | + | * einen **technischen Experten** zur Verfügung stellen, der Ihnen die notwendigen technischen Hintergründe vermittelt und immer ansprechbar ist, wenn Sie es brauchen. Statt langer, umfangreicher, theoretischer Schulungen von denen 90% wieder verpuffen, bis Sie sie in der Praxis umsetzen, lernen Sie wie effektiv es ist, wenn jemand Sie genau dann an die Hand nimmt, wenn Sie ein konkretes Problem haben und Sie mit der gelernten Lösung sofort produktiv in Ihrem Arbeitsablauf weitermachen können. |
- | So lernen Sie drei der wichtigen Rollen die in einem erfolgreichen Team zusammenspielen schon im Studium kennen. Dadurch, dass wir diese Rollen stellen, haben Sie die Möglichkeit, sich auf die zwei essentiellen Rollen zu konzentrieren, die man im Berufsalltag als Erste von Ihnen erwartet werden wird: | + | So lernen Sie drei der wichtigen Rollen die in einem erfolgreichen Team zusammenspielen schon im Studium kennen. Dadurch, dass wir diese Rollen stellen, haben Sie die Möglichkeit, sich auf die **zwei essentiellen Rollen** zu konzentrieren, die man im Berufsalltag als Erste **von Ihnen erwartet** wird: |
* **Entwickler**, der in der Lage ist, in einem agilen Team produktiv mitzuarbeiten und | * **Entwickler**, der in der Lage ist, in einem agilen Team produktiv mitzuarbeiten und | ||
- | * **Teamleiter**, der zusätzlich in der Lage ist, ein agiles Team zu organisieren, zu planen, Pläne zu verifizieren und anzupassen, Diskussionen im Team zu moderieren, etc. Jeder Teilnehmer / jede Teilnehmerin wird für eine Iteration (drei Wochen) selbst die Teamleiter-Rolle übernehmen und so Erfahrungen sammeln, die Ihnen im Studium sonst nicht vermittelt werden. Als Teamleiter/in werden Sie für die jeweilige Iteration verantwortlich sein, angefangen mit dem Kundengespräch, der Moderation des Prozesses, der Planung und Aufwandsschätzung, der laufenden Kontrolle (per **burn-down-chart**) des Fortschritts bis zur Integration, Auslieferung an den Kunden und schließlich Retrospektive der Iteration mit dem Team, um den Prozess zu reflektieren und zu verbessern. | + | * **Teamleiter**, der zusätzlich in der Lage ist, ein agiles Team zu organisieren, zu planen, Pläne zu verifizieren und anzupassen, Diskussionen im Team zu moderieren, etc. |
+ | |||
+ | Um die Teamleiter-Rolle zu üben wird jeder Teilnehmer / jede Teilnehmerin für eine Iteration (drei Wochen) selbst Teamleiter sein und so Erfahrungen sammeln, die Ihnen im Studium sonst nicht vermittelt werden. Als Teamleiter/in werden Sie für die jeweilige Iteration verantwortlich sein, angefangen mit dem Kundengespräch, der Moderation des Prozesses, der Planung und Aufwandsschätzung, der laufenden Kontrolle (per **burn-down-chart**) des Fortschritts bis zur Integration, Auslieferung an den Kunden und schließlich Retrospektive der Iteration mit dem Team, um den Prozess zu reflektieren und zu verbessern. | ||