software-entwicklung im team
DESCRIPTION
Presentation held at PHP World 2009 in MunichTRANSCRIPT
![Page 1: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/1.jpg)
23 Dinge,die Sie über Entwicklung in Teams wissen sollten
Stephan Schmidt1&1 Internet AG
![Page 2: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/2.jpg)
Stephan Schmidt
• Software-Entwickler und "Beinahe Pädagoge"
• Kombiniert gerne beides im Beruf
• Head of Web Sales Development bei der
1&1 Internet AG
• Autor, Redner und die ganzen anderen
Sachen
• (außer Consultant)
![Page 3: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/3.jpg)
"Yogi" Berra
• Bürgerlicher Name Lawrence Peter Berra
• Spielte von 1946 bis 1964 professionellen
Baseball in der Major League
• Kein anderer hat die World Series so oft
erreicht und gewonnen
• Bekannt für seine Yogiisms
• Auch kein Consultant
• Eventuell auch Namensgeber für
Yogi-Bear
![Page 4: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/4.jpg)
"In theory there is no
difference between theory
and practice.
In practice there is."
Yogi Berra
![Page 5: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/5.jpg)
Theorie vs Praxis
• Die Präsentation beruht auf meiner
Erfahrung.
• Die Regeln funktionieren in meinen Teams.
• Einige funktionieren in allen Teams, andere
abgewandelt oder auch gar nicht.
• Versuchen Sie, das heute theoretisch
vermittelte Wissen in Ihrer Praxis
anzuwenden.
![Page 6: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/6.jpg)
Es geht um Menschen
![Page 7: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/7.jpg)
Teil 1:Tools und Code
![Page 8: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/8.jpg)
#1
Etablieren Sie
Collective Code
Ownership.
![Page 9: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/9.jpg)
Collective Code Ownership
• Aus dem Extreme Programming.
• Der gesamte Code gehört allen Entwicklern.
• Alle Entwickler sind dazu aufgefordert an
allen Stellen Bugs zu fixen, Refactorings
durchzuführen oder neue Ideen einzubringen.
• Vermeidet Flaschenhälse in ihrem Team.
• Macht den Code besser.
• Sie profitieren von den Stärken aller
Teammitglieder.
![Page 10: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/10.jpg)
#2
Setzen Sie ein Werkzeug
zur Revisionskontrolle
ein.
![Page 11: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/11.jpg)
Revisionskontrolle
• Nur dadurch werden parallel Änderungen
an einem Projekt möglich.
• Es ist egal, welches System Sie einsetzen,
aber tun Sie's.
• CVS
• Subversion
• GIT
• Team Foundation Server
• etc.
![Page 12: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/12.jpg)
" Our similarities are
different."
Dale Berra (Sohn von Yogi Berra)
![Page 13: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/13.jpg)
#3
Standardisieren Sie die
Entwicklungsumgebung
Ihres Teams.
![Page 14: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/14.jpg)
Standardisierung
• Spart Zeit, wenn eine neue Instanz benötigt
wird.
• Idealerweise installiert die EDV-Abteilung
nur noch ein Image für PHP Entwickler
• In vielen Unternehmen schwer einzuführen,
da das Thema religiöse Sprengkraft hat.
• Ist den Stress der Diskussion jedoch trotzdem
wert.
• In unserem Team noch 1 Stunde statt
2 Tagen
![Page 15: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/15.jpg)
#4
Definieren Sie Coding
Standards.
![Page 16: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/16.jpg)
Coding Standards
• Spart Zeit, da sich jeder Entwickler im Code
der anderen Entwickler zurecht findet.
• Hier gilt wieder: Es ist egal, welchen Standard
Sie einsetzen, aber tun Sie's.
• PEAR Coding Standards
• Zend PHP Coding Standards
• Eigene Coding Standards
![Page 17: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/17.jpg)
#5
Stellen Sie sicher, dass
Ihre Standards
eingehalten werden.
![Page 18: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/18.jpg)
Standards forcieren
• Coding Standards sind nur sinnvoll, wenn
sie eingehalten werden.
• Statische Code-Analyse mit PHP_CodeSniffer
überprüft den gesamten Code auf Regel-
verletzungen.
• Sinnvoll: Integration in den Build-Prozess und
die IDE.
• Umstritten: Integration in SVN Pre-Commit-
Hooks oder Deployment.
![Page 19: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/19.jpg)
#6
Führen Sie Code
Reviews durch.
![Page 20: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/20.jpg)
Code Reviews
• Sind nicht einfach einzuführen, Entwickler
sind sensible Geschöpfe.
•Sie schlagen zwei Fliegen mit einer Klappe:
• Ihr Code wird besser.
• Sie lernen voneinander.
• Ihr Team hält besser zusammen.
OK, das waren drei.
![Page 21: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/21.jpg)
#7
Sorgen Sie dafür, dass Ihr
Build reproduzierbar
ist.
![Page 22: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/22.jpg)
Reproduzierbare Builds
• Spart Ihnen Zeit (ja, schon wieder).
• Spart Ihnen Ärger.
• Bei jedem neuen Mitarbeiter müssen diese
Schritte ausreichen:
$ svn co http://example.com/svn/trunk project
$ cd project
$ phing || ant || make
$ // evtl. Apache Config einbinden
$ ./start.sh
![Page 23: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/23.jpg)
"We made too many wrong
mistakes."
Yogi Berra
![Page 24: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/24.jpg)
#8
Tests erlauben Ihrem
Team die Freiheit, Code zu
ändern.
![Page 25: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/25.jpg)
Testen des Codes
• Im Team wird der Code von verschiedenen
Entwicklern erstellt oder modifiziert.
• Tests ermöglichen Entwicklern zu prüfen
ob die Änderungen negative Auswirkungen
hatten.
• Tests nehmen dem Team die Angst,
Änderungen durchzuführen.
• Tests sind außerdem eine gute
Dokumentation.
• Mit "Tests" meine ich nicht manuelle Tests.
![Page 26: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/26.jpg)
"It's like déjà vu all over
again."
Yogi Berra
![Page 27: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/27.jpg)
#9
Integrieren Sie Ihren Build
regelmäßig.
![Page 28: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/28.jpg)
Continuous Integration
• Build wird in regelmäßigen Abständen oder
nach jedem Commit angestoßen.
• Dabei wird immer ein vollständiger Build
erzeugt und alle Unit- und Integrationstests
ausgeführt.
• Fehler werden dadurch sofort entdeckt und
nicht verschleppt.
• Verhindert das Auftreten des "Broken
Window" Phänomens.
• Bereits einige Lösungen für PHP vorhanden.
![Page 29: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/29.jpg)
#10
Nutzen Sie Task-Boards
zur Planung Ihrer
Projekte.
![Page 30: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/30.jpg)
JIRA und Greenhopper
![Page 31: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/31.jpg)
Outlook
![Page 32: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/32.jpg)
#11
Verwenden Sie
nicht für alles ein
elektronisches Tool.
![Page 33: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/33.jpg)
Taskboard v1.0
![Page 34: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/34.jpg)
Taskboard v1.0
![Page 35: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/35.jpg)
Teil 2:Prozesse, Menschen
und Kommunikation
![Page 36: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/36.jpg)
Cowboys und Indianer
![Page 37: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/37.jpg)
#12
Kommunikation
entscheidet in den
meisten Projekten über
Erfolg und Niederlage.
![Page 38: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/38.jpg)
Kommunikation
• Verstehen die Entwickler, was der Kunde
möchte?
• Versteht der Kunde, was der Entwickler
liefern kann?
• Verstehen die Entwickler gegenseitig
wirklich, wie die Schnittstellen aussehen?
• Verstehen die Entwickler, was die
Qualitätssicherung braucht?
![Page 39: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/39.jpg)
"It was hard to have a
conversation with anyone;
there were so many people
talking. "Yogi Berra
![Page 40: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/40.jpg)
#13
Sorgen Sie dafür, dass
genug Möglichkeiten zur
Kommunikation
geschaffen werden.
![Page 41: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/41.jpg)
Kommunikationsmittel
• Treffen von Angesicht zu Angesicht
• Treffen von Angesicht zu Angesicht
• Treffen von Angesicht zu Angesicht
• E-Mails und Instant Messenger
• Projekt-Blogs
• Microblogging / Twitter
• Telefonkonferenzen
• Videokonferenzen
![Page 42: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/42.jpg)
#14
Suchen Sie kreative Wege,
um persönliche
Kommunikation
herzustellen.
![Page 43: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/43.jpg)
Kreative Wege
![Page 44: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/44.jpg)
#15
Gemeinsames Essen
stärkt die Teambildung.
![Page 45: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/45.jpg)
Teambildung
• Gemeinsame private Erlebnisse stärken
das Teamgefühl und fördern die
Zusammenarbeit.
• Das gilt nicht nur für gemeinsame Essen,
jedoch ist der Effekt dabei besonders groß.
• Schaffen Sie Rituale.
![Page 46: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/46.jpg)
#16
Verwenden Sie nicht den
erprobtesten Prozess.
![Page 47: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/47.jpg)
#16
Verwenden Sie nicht den
erprobtesten besten
Prozess.
![Page 48: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/48.jpg)
#16
Verwenden Sie nicht den
erprobtesten besten
neusten Prozess.
![Page 49: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/49.jpg)
#16
Verwenden Sie nicht den
erprobtesten besten
neusten coolsten Prozess.
![Page 50: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/50.jpg)
#16
Verwenden Sie nur den
Prozess, der bei Ihnen
funktioniert.
![Page 51: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/51.jpg)
Prozessmodelle
• Wasserfall-Modell
• Hat in meinen Projekten noch nie
funktioniert.
• Agile Prozesse
• Versprechen deutlich höhere Erfolgs-
chancen.
• Bitte nicht sklavisch einhalten.
• Sprechen Sie nicht nur von Chickens,
Scrum-Master, etc.
![Page 52: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/52.jpg)
#17
Es gibt immer mehr als
nur einen Prozess.
Jutta Eckstein
![Page 53: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/53.jpg)
Verschiedene Prozesse
• Der offizielle Prozess
• entspricht so gut wie nie der Realität.
• Der wahrgenommene Prozess
• ist meist Kombination aus
Wunschdenken und Fehlinterpretation.
• Der tatsächliche Prozess
Machen Sie den Prozess,
der dafür sorgt, dass Sie zu
Lösungen kommen explizit.
![Page 54: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/54.jpg)
"If you don't know where
you're going, you'll wind
up somewhere else."Yogi Berra
![Page 55: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/55.jpg)
#18
Sitzen Sie nicht dem
Irrtum auf, dass "agil" mit
"ungeplant" gleich-
zusetzen ist.
![Page 56: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/56.jpg)
Sie sind es
wirklich nicht.(ganz ehrlich)
![Page 57: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/57.jpg)
#19
Machen Sie Planungen
und Aufwands-
schätzungen im Team.
![Page 58: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/58.jpg)
Aufwandsschätzungen
• Planning Poker kann ein hilfreiches
Mittel sein.
![Page 59: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/59.jpg)
"The future ain't what it
used to be."
Yogi Berra
![Page 60: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/60.jpg)
#20
Nur Teams, die sich an
Veränderungen anpassen,
sind erfolgreich.
![Page 61: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/61.jpg)
Embrace Change
• Die Welt ist im Wandel
• Anforderungen werden sich immer
ändern.
• Technologien und Methodiken auch.
• Nehmen Sie Änderungen freudig an.
• Agile Methoden stellen Ihnen dafür
Werkzeuge zur Verfügung.
![Page 62: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/62.jpg)
#21
Hinterfragen Sie
regelmäßig den Status
Quo.
![Page 63: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/63.jpg)
Der Status Quo
• Wenn sich sowieso alles ändert, dann
sollten Sie die Änderungen möglichst
früh feststellen.
• Oder besser noch: Stoßen Sie die
Änderungen an.
• Erfinden Sie die Sprache, die PHP im Web
ablöst.
• Die Geschichte "Who moved my cheese?"
von Spencer Johnson hilft Ihnen dabei.
![Page 64: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/64.jpg)
"Nobody goes there
anymore. It's too
crowded."Yogi Berra
![Page 65: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/65.jpg)
#22
Verhindern Sie eine Kultur
der Angst.
![Page 66: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/66.jpg)
Kultur der Angst
"Was wären wir sündigen Kreaturen dann
ohne die Angst, diese vielleicht wohltätigste
und gnädigste Gabe Gottes?"
Umberto Eco, "Der Name der Rose"
![Page 67: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/67.jpg)
Kultur der Angst
Sie leben in einer Kultur der Angst, wenn…
• …es gefährlich ist, bestimmte Dinge
auszusprechen.
• …Zielvorgaben so aggressiv sind, dass
diese unmöglich erreicht werden können.
• …Macht über gesunden Menschen-
verstand triumphieren darf.
• …die Leute, die gehen müssen, sind im
Durchschnitt kompetenter als die, die
bleiben.Aus "Spielräume" von Tom DeMarco
![Page 68: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/68.jpg)
" I want to thank you for
making this day
necessary."Yogi Berra
![Page 69: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/69.jpg)
#23
Hören Sie auf Tom
DeMarco, Spencer Johnson
und das Agile Manifest.
![Page 70: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/70.jpg)
" I never said most of the
things I said. "
Yogi Berra
![Page 71: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/71.jpg)
Bücher
![Page 72: Software-Entwicklung Im Team](https://reader034.vdocuments.pub/reader034/viewer/2022052620/5579fe88d8b42a1c0a8b4570/html5/thumbnails/72.jpg)
" It ain't over till
it's over. "
Yogi Berra