Previous Next V-Model Official Homepage by IABG  
Mail 0660  

1996-1997-1998-1999-2000-2001-2002-2003-2004

Contents  
  • Title
  • From
  • Date
  •  
  • History
  • Content
  • Links to V-Model
  • Title

    Extreme Programming und das V-Modell (660)

    From

    Michael Erskine

    Date

    Donnerstag, 6. März 2003 21:24

    History

    Mail 0629 PM 1.4 - Wer akzeptiert das Projekthandbuch?

    Mail 0630 Re: PM 1.4 - Wer akzeptiert das Projekthandbuch?

    Mail 0631 Re: PM 1.4 - Wer akzeptiert das Projekthandbuch?

    Mail 0632 Produktstatus Projekthandbuch

    Mail 0633 Prüf-Grundsatz (Was: PM 1.4 - Wer akzeptiert das Projekthandbuch)

    Mail 0634 Re: Prüf-Grundsatz

    Mail 0635 Re: Prüf-Grundsatz

    Mail 0636 Re: Prüf-Grundsatz

    Mail 0637 Re: Prüf-Grundsatz

    Mail 0638 Re: Prüf-Grundsatz

    Mail 0639 Re: Prüf-Grundsatz

    Mail 0640 YAGNI (Re: Prüf-Grundsatz)

    Mail 0641 Software für Händi;-) (Was: Re: Prüf-Grundsatz)

    Mail 0642 anders = besser?!? (Was: Re: Prüf-Grundsatz)

    Mail 0643 Re: Prüf-Grundsatz , XP etc.

    Mail 0644 Re: Prüf-Grundsatz , XP etc.

    Mail 0645 Re: Software für Händi;-)

    Mail 0646 Re: Prüf-Grundsatz , XP etc.

    Mail 0647 Re: Prüf-Grundsatz , XP etc.

    Mail 0648 Re: Prüf-Grundsatz , XP etc.

    Mail 0649 Re: Prüf-Grundsatz , XP etc.

    Mail 0650 Re: Prüf-Grundsatz , XP etc.

    Mail 0652 Agile Methoden versus V-Modell. (War: Re: Prüf-Grundsatz, XP etc:)

    Mail 0657 Agile Methoden im neuen V-Modell

    Mail 0658 Re: Agile Methoden im neuen V-Modell

    Mail 0659 Re: Agile Methoden im neuen V-Modell

    Mail 0660 Extreme Programming und das V-Modell

    Mail 0661 Re: Extreme Programming und das V-Modell

    Mail 0662 GI-Vortrag "Agile Prozesse" in München

    Mail 0663 Re: Extreme Programming und das V-Modell

    Mail 0664 V-Modell am Studienplan?

    Mail 0665 Re: Extreme Programming und das V-Modell

    Mail 0666 Re: Extreme Programming und das V-Modell

    Mail 0667 Re: Extreme Programming und das V-Modell

    Mail 0668 Re: Extreme Programming und das V-Modell

    Mail 0669 Re: Extreme Programming und das V-Modell

    Mail 0671 Re: Extreme Programming und das V-Modell

    Mail 0728 Re: Agile Methoden im neuen V-Modell

    Mail 0729 Re: Agile Methoden im neuen V-Modell

    Mail 0730 Re: Agile Methoden im neuen V-Modell

    Mail 0731 Re: Agile Methoden im neuen V-Modell

    Mail 0732 Re: Agile Methoden im neuen V-Modell

    Mail 0733 Re: Agile Methoden im neuen V-Modell

    Mail 0734 Re: Agile Methoden im neuen V-Modell

    Mail 0735 Re: Agile Methoden im neuen V-Modell

    Content

    Hallo V-Modeller!
    
    Die Diskussion um XP und das V-Modell finde ich interessant. Ich
    antworte vor allem auf Herrn Widmann, der nach Erfahrungen fragte.
    Letztes Jahr haben wir in der Arbeit ein paar Erfahrungen mit XP
    gesammelt. Wir hatten drei Praktikanten, die für uns innerhalb von
    sechs Wochen eine Teamdatenbank entwickelten. Unsere Ziele wurden
    erreicht: das Programm wurde in Kosten und Zeit entwickelt (ist ja
    nicht gerade selbstverständlich...) und wir können besser
    einschätzen, ob XP und das V-Modell sich vertragen.
    
    (Strenggenommen war es kein XP, sondern nur einzelne Praktiken von
    XP. Denken Sie sich das einfach dazu, wenn ich im folgenden von XP
    spreche... Und seien Sie nicht enttäuscht über den Telegrammstil: es
    ist abend und ich bin müde...)
    
    Hier in Kürze unsere Erfahrungen mit XP:
    
    Charakterisierung unseres Projekts:
    - drei Praktikanten als eXtreme Programmers, ohne XP-Wissen,
      ohne vertiefte Visual-Basic-Kenntnisse
    - Auftraggeber: Software-Team aus 5 Personen; ich selbst war
      gleichzeitig XP-Coach und Haupt-Ansprechpartner
    - Zeit: 6 Wochen
    - Ziel: Teamdatenbank
    - Storycards (Anforderungen): höchst unterschiedlich, was
      Umfang, Qualität, Funktionalität betrifft
    
    Die Praktiken:
    
    --- Einfacher Entwurf ---
    Einfache Lösung bedeutet nicht: die erstbeste Lösung. Einfachheit ist
    gut umzusetzen. Einfachheit hat sich in Streitfällen als
    Entscheidungshilfe bewährt: statt zu streiten, ob Lösung A oder
    Lösung B besser ist, lieferte die Frage "was ist einfacher?"
    schnellere Lösungen.
    Aber: manchmal ist es schwierig, *nicht* vorausschauend zu
    programmieren. Besonders wenn man weiß, daß das nächste Arbeitspaket
    viel einfacher wird, wenn man beim aktuellen Arbeitspaket nur die
    "zweit-einfachste" Lösung umsetzt.
    
    --- Refaktorisierung ---
    Dafür blieb wenig Zeit, aber auch wenig Bedarf. Projekt vielleicht zu
    klein.
    
    --- Programmierrichtlinien ---
    Wurden nicht explizit niedergeschrieben, bei 3 Personen erschien es
    auch nicht unbedingt notwendig.
    
    --- Gemeinsame Verantwortung ---
    Hat sich von alleine eingestellt, sowohl beim Code als auch bei den
    Rollen der Personen. Hat prima funktioniert.
    
    --- Paarweises Programmieren ---
    Sehr erfolgreich. Das Wechseln zwischen Programmieren und "Zusehen"
    fand nicht so häufig statt wie vorgeschlagen: statt alle 15 Minuten
    dauerte es bis zu zwei Stunden. Der Nicht-Programmierer empfand es
    als Verschnaufpause. Hoher Kommunikationsaufwand, hoch konzentrierte
    Arbeit. Kaum Codier-Fehler.
    Die Arbeit im Paar führte auch dazu, daß das Wissen des Einzelnen
    schneller wuchs. Innerhalb von 6 Wochen fanden die drei sich sehr gut
    in Visual Basic zurecht und konnten komplexe Aufgaben lösen.
    
    --- Kontinuierliche Code-Integration ---
    Konnte nur rudimentär umgesetzt werden, weil (1) das Team zu klein
    war und (2) keine Testumgebung zur Verfügung stand. Deshalb keine
    Aussage dazu.
    
    --- 40-Stunden-Woche ---
    Die XPler definierten für sich eine Art Kern-Arbeitszeit, während der
    alle drei vor Ort sein sollten. Das Planungsspiel führte dazu, daß
    keinerlei Mehrarbeit notwendig war. Die tägliche/wöchentliche
    Arbeitszeit war völlig im Rahmen der gesetzlichen Arbeitszeiten.
    
    --- Kundenvertreter im Team ---
    Wurde nicht umgesetzt, deshalb keine Aussage dazu. Der Kunde war
    jedoch jederzeit ansprechbar und nur ein paar Türen entfernt.
    
    --- Systemmetapher ---
    Wurde nicht umgesetzt, weil die XPler keinen Sinn darin sahen;
    deshalb keine Aussage dazu. Ich habe bei Nicht-Software-Fragen sehr
    gute Erfahrungen mit Metaphern gemacht.
    
    --- Kleine Releases ---
    Zwei Releases (jeweils drei Wochen); pro Release drei Iterationen
    (jeweils eine Woche); pro Iteration mehrere Arbeitspakete im Umfang
    von einem halben Tag bis maximal 2 Tagen.
    
    --- Planungsspiel ---
    Der Überraschungserfolg! Ohne jede Erfahrung im Planen von Aufwänden
    konnten die XPler die kleinen, selbstgeschnürten Arbeitspakete von
    Anfang an sehr gut abschätzen. Beide Releases wurden rechtzeitig
    fertig und hatten genau den vereinbarten Umfang.
    Für uns als Kunden war es schmerzhaft, Prioritäten zu setzen und
    geliebte Storycards nach hinten zu verschieben, bzw. aufzugeben. Die
    Enttäuschung am Anfang wurde aber dadurch wettgemacht, daß der dann
    vereinbarte Leistungsumfang *vollständig* und fast *fehlerfrei*
    erbracht wurde.
    Für beide Seiten die interessanteste Erfahrung!
    
    --- (Automatisierte) Tests ---
    Wurde nicht umgesetzt, weil keine Testumgebung existierte. Dennoch
    eine Aussage dazu: unbedingt notwendig! Die fehlenden Tests führten
    dazu, daß Schönheitsfehler erst bei der Kundenabnahme entdeckt
    wurden. Der Erfolg der anderen Praktiken war durch die fehlenden
    Tests stets gefährdet. Zumindest haben beide Seiten das so empfunden.
    
    
    
    
    === FAZIT ===
    XP eignet sich dann als Prozeßmodell, wenn die Bedingungen erfüllt
    sind, die die XP-Väter nennen, z.B. unklare/sich ständig ändernde
    Anforderungen, keine explizite Doku notwendig, sehr große Nähe zum
    Kunden, Bereitschaft aller Beteiligten.
    
    ABER: XP ist kein Freibrief für Chaos. Man muß die Praktiken an die
    eigene Situation anpassen und sehr genau umsetzen. Das heißt, man muß
    sich bewußt mit ihnen auseinandersetzen und nicht einfach mit einer
    vagen Vorstellung draufloswurschteln. Das Verständnis für die
    Praktiken kommt aber sehr schnell und vertieft sich mit jeder
    Release. Bei uns hieß das auch: wir haben einzelne Praktiken bewußt
    weggelassen - nicht einfach im Laufe der Zeit fallengelassen.
    
    Bei unserem Projekt haben alle Beteiligten die Zeit sehr intensiv
    empfunden. Die XPler hatten viel Spaß an der Arbeit - und mindestens
    ebenso viel Spaß am Erfolg.
    
    
    
    Zum Schluß noch ein paar (wenige) Worte zum V-Modell:
    
    So unverträglich sind die beiden nicht. Natürlich haben wir in
    unserem XP-Projekt keine explizite Dokumentation, dabei wimmelt es im
    V-Modell nur so von Produkten. Aber wenn man die Gedanken nimmt, die
    (vermutlich) hinter dem V-Modell stehen, dann lassen sich
    Ähnlichkeiten finden.
    
    Beispiele:
    o Storycards sind nichts anderes als SE1/SE2, nur in ungewohnter Form
    (Karteikarten). Sie erfüllen aber viele Kriterien, die an
    Requirements gestellt werden.
    o Die Verfeinerung der Storys in Arbeitspakete entspricht SE3 bis
    SE5.
    o Das paarweise Programmieren vereint die Rollen des Implementierers
    und des Qualitätssicherers auf zwei Personen im ständigen Wechsel -
    aber die Rollen sind klar erkennbar.
    o Automatisiertes Testen sowie die Reihenfolge "Erst der Test, dann
    die Implementierung des Quellcodes" sind im V-Modell möglich; in
    unseren V-Modell-Projekten wird beides immer häufiger gefordert und
    manchmal auch umgesetzt.
    
    Entscheidende Faktoren sind die Sich-ständig-ändernden-Anforderungen
    und die Größe der Projekte. Wenn meine SE1/SE2 sehr gut ist und
    relativ stabil bleibt, dann ist das V-Modell m.M.n. besser geeignet.
    Wenn ich große Projekte habe (mehr als 15 Entwickler oder sehr lange
    Laufzeit), ebenso. Bei kleinen Projekten, die schnelle Ergebnisse
    benötigen und die extrem flexibel auf Änderungen reagieren müssen,
    wäre XP mein Favorit.
    
    
    Vetragen sich XP und das V-Modell? Müssen sie sich überhaupt
    vertragen? Ich sehe beide als Vorgehensmodelle für unterschiedliche
    Zwecke. Wenn es mir nur auf das Ergebnis ankommt, sprich: auf
    funktionierenden Code, dann brauche ich vieles vom V-Modell nicht.
    Wenn ich aber zusätzlich Wartbarkeit, Sicherheit, Nachvollziehbarkeit
    haben möchte, dann würde ich XP nicht vertrauen.
    
    Für beide gilt: das Niederschreiben des Prozesses hilft genauso wenig
    wie das sture Befolgen aller Regelungen. Sowohl XP als auch V-Modell
    funktionieren nur, wenn die Beteiligten den Prozeß verstanden haben
    und ihn bewußt anwenden. Das ist für mich der entscheidende Punkt -
    und nicht die Frage, welcher der Prozesse besser geeignet ist.
    
    
    So, jetzt ist Schluß, mein Abendessen wartet...
    
    Gute Nacht wünscht
    
    Michael Erskine
    Dipl.-Inform., München
    --
    NVLLA DIES SINE LINEA     J.Neudoerffer 1538
    Michael Erskine,    E-Mail: erskine@fbmev.de
    WWW: http://homepages.muenchen.org/bm836197/

    Links to V-Model

    not defined

    Previous Next This page online  •  GDPA Online  •  Last Updated 07.May.2004 by C. Freericks