Benutzer-Werkzeuge

Webseiten-Werkzeuge


se:extremeprogramming

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

se:extremeprogramming [2008-12-27 21:08]
stefan angelegt
se:extremeprogramming [2014-04-05 11:42]
Zeile 1: Zeile 1:
-====== Extreme Programming ====== 
-Agiler Softwareentwicklungsprozess von Kent Beck. 
- 
-[[http://​c2.com/​cgi/​wiki?​ExtremeProgramming|Wiki von Ward Cunningham]] 
- 
-**nach {[quellen:​Bleek2008|S. 137ff.]}** 
-  * 5 Werte 
-    * Kommunikation 
-    * Rückkopplung 
-    * Einfachheit 
-    * Mut 
-    * Respekt 
-  * 14 Prinzipien 
-    * Menschlichkeit:​ Software wird von Menschen entwickelt 
-    * Wirtschaftlichkeit:​ Softwareprojekte müssen sich lohnen, Nutzen > Kosten 
-    * gegenseitiger Vorteil: Zusammenarbeit anstatt Aurichtung auf eigenen Vorteil 
-    * Selbstähnlichkeit:​ bereits Vorhandenes kann meist auf neue Projekte übertragen werden 
-    * Verbesserung:​ sowohl der Prozess als auch das Produkt werden kontinuierlich weiterentwickelt 
-    * Mannigfaltigkeit:​ unterschiedliche Meinungen und Erfahrungen sind willkommen, da nur so Innovation möglich ist 
-    * Reflexion: Lernen und Verbesserung 
-    * Fluss: die Arbeit soll flüssig von der Hand gehen und nicht ins Stocken geraten 
-    * Gelegenheit:​ Probleme sind Gelegenheiten etwas Neues zu lernen und zu wachsen (positive Grundhaltung) 
-    * Redundanz: bezogen auf das Entwicklungsteam (Stichwort "​Truckfaktor"​) 
-    * Fehlschlag: Probleme und Fehlschläge gehören dazu und müssen akzeptiert werden, da meist nur durch sie bessere Lösungen gefunden werden können (anstatt immer die bewährten Wege zu gehen) 
-    * Qualität: das Team muss sich komplett der Qualität verschreiben und ggfs. gegen andere Faktoren (z.B. Termindruck) entscheiden 
-    * Babyschritte:​ kleine Schritte ergeben im Fehlerfall nur kleine Rückschläge,​ große lassen evtl. das Projekt scheitern 
-    * akzeptierte Verantwortlichkeit:​ jeder Projektteilnehmer muss die ihm übertragene und auch seine implizite Verantwortung erkennen und akzeptieren 
-  * 13 Primärpraktiken 
-    * Sit Together: die Teammitglieder sollten nah beieinander sitzen um die Kommunikation zu optimieren 
-    * Whole Team: das Team muss alle im Projekt benötigten fachlichen und technischen Fähigkeiten umfassen 
-    * Informative Workspace: die Arbeitsumgebung muss über den aktuellen Fortschritt des Projekts informieren (z.B. durch Flipcharts) 
-    * Energized Work: alle Teammitglieder sind engagiert 
-    * Pair Programming:​ zwei Entwickler programmieren im Team 
-    * Stories: Anforderungen werden als Geschichten erfasst 
-    * Weekly Cycle: eine Iteration dauert eine Woche 
-    * Quarterly Cycle: ein Release dauert 3 Monate 
-    * Slack: Entwickler brauchen auch während des Projekts Freiraum um sich über neue, projektferne Dinge zu informieren,​ um neue Anregungen in das Projekt zu bringen und nicht nur noch durch die Projektbrille schauen (und dadurch in anderen Projekten nicht mehr gut einsetzbar sind) 
-    * Ten-Minute Build: ein Build inkl. Tests darf max. 10 Minuten dauern 
-    * Continuous Integration:​ mehrmals am Tag integrieren die Entwickler ihre Änderungen in die Quelltextbasis 
-    * Test-First Programming:​ Tests werden vor dem eigentlichen Code entwickelt 
-    * Incremental Design: beim Entwurf werden immer nur die aktuell relevanten Anforderungen berücksichtigt 
-  * 11 Folgepraktiken 
-    * Real Customer Involvement 
-    * Incremental Deployment 
-    * Team Continuity 
-    * Shrinking Teams 
-    * Root-Cause Analysis 
-    * Shared Code 
-    * Code and Tests 
-    * Single Code Base 
-    * Daily Deployment 
-    * Negotiated Scope Contract 
-    * Pay per Use 
  
se/extremeprogramming.txt · Zuletzt geändert: 2014-04-05 11:42 (Externe Bearbeitung)