XP – eXtreme Programming

Slides:



Advertisements
Ähnliche Präsentationen
Migration von Feldbussen zu PROFINET
Advertisements

Identifizierung und Ausbildung von Führungskräften
Fachhochschule Frankfurt am Main University of Applied Sciences Nibelungenplatz 1 D Frankfurt am Main Ralf-Oliver Mevius.
Risiko-Management im Projekt
Programmieren im Großen von Markus Schmidt und Benno Kröger.
Das Berufsbild des Informatikers
Wachstum + 4,5 % Lohnstückkosten + 3 % Produktivitätszuwachs + 7 %
Von David Keß, Heinrich Wölk, Daniel Hauck
V-Modell XT - Ein Überblick
Agiles Software- Projektmanagement mit XP Dipl.-Ing. F. Papenfuß Prof. Dr. H. Pfüller Universität Rostock.
Software-Lebenszyklus
Teamwork Teamarbeit, Gruppenarbeit
Risiken und Chancen Risiko Beurteilung: Dazu gehört die Identifikationen von Risiken, ihre Analyse und das Ordnen nach Prioritäten. Risiko Kontrolle: Dazu.
Was ist Qualität ? Qualität von Produkten oder Dienstleistungen ist das Gesamtergebnis aller Aktivitäten in jeder Phase des gesamten Leistungsprozesses.
Beispiel: Wasserfallmodell als einfaches Phasenmodell
es gibt (fast) nichts, was nicht anders gemacht werden könnte
Der Umgang mit qualitativ erhobenen Daten: Strategien der Datenanalyse
eXtreme Programming (XP)
Professionelles Projektmanagement in der Praxis
Grundlagen und Konzepte zur Umsetzung
Software Design Patterns Extreme Programming (XP).
Die Bank von morgen - eine neue Welt für IT und Kunden? 23. Oktober 2001.
Kontrollfragen zu Kapitel 1
Fragen können wie Küsse schmecken
Projekt e-com Forsich – Frotschnig – Rixinger
Anpassung des RUP an ein konkretes Projekt - 1
Vorgehensmodelle: Schwergewichtige Modelle
Software Engineering WS 2009
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering SS 2009Folie 1 Objektmodellierung Objekte und Klassen Ein Objekt ist ein Exemplar.
Spezifikation von Anforderungen
Software-Projektführung
Das Wasserfallmodell - Überblick
Software Engineering SS 2009
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering SS 2009Folie 1 Weitere Vorgehensmodelle Der Rational Unified Process RUP –bei IBM.
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering WS 2006 / 2007Folie 1 Agile Vorgehensweisen Hintergrund –in den letzten Jahren hat.
Software Engineering SS 2009
User-Centred Design Kosten und Gewinne des nutzerorientierten Gestaltungprozesses Irene Escudé Capdevila März 2012.
©AHEAD executive consulting, 2007 STAY AHEAD! Auftragsorientierte Mitarbeiter- und Teamentwicklung für Mitarbeitende der Firma … AG.
Fokus Führungskräfte – Gesundheit zum Thema machen
IT-Projektmanagement SS 2013 Prof. Dr. Herrad Schmidt
Probleme lösen „hilf mir!“: ich helfe dir beim Suchen deiner Lösung!
cs108 Programmier-Projekt Präsentation Meilenstein 3
Schneider. Event. Kommunikation.
Projekt: Schüler verbessern ihren Unterricht
Lernen durch Vergleiche
Mag. (FH) Patrick Fritz Methode KAIZEN erstellt von
Rational Unified Process
QFD Quality Function Depolyment
Von Unternehmen und Unternehmern
«Beurteilung der Selbst- und Sozial-kompetenzen»
Level 4Level 5Level 6Level 7Level 8Level 9 Ist dem Veränderungsprozess positiv gegenüber eingestellt Ist offen für neue und außergewöhnliche Ideen und.
Referat „Extreme Programming“
Heike Bergmeyer-Szuba.
Horw Präsentation Themenarbeit SWE Wyder Aaron Studiengang Informatik SS Semester Juni 2008 Ist Design tot? Evolutionäre.
Portfolio im UP Evaluation Weiterentwicklung. Evaluation Unterrichtspraktikanten/innen Betreuungslehrer/innen (Auffrischungskurs) Direktoren/innen.
Wann ist ein Mensch kompetent?
IT Kleinprojekt abwickeln (Modul 306)
Team 8 Eva Reinl, Markus Leimbach
Kurze Rekapitulation aus der Einführungsvorlesung Stunde VII: Planen und Realisieren Manfred Thaller, Universität zu Köln Köln 20. Oktober 2011.
Was ist Quality Function Deployment?
XML Seminar: XP und XML 1 XP and XML Gregor Zeitlinger.
Organisation und Führung
Aufbau einer Projektorganisation
Best of Consulting Project Excellence 2012 Kunden über das Projekt.
DHBW MOSBACH – CAMPUS BAD MERGENTHEIM
Was sind Verbesserungs-Workshops?
Prof. Dr. Winfried Hamel 27 August 2008 The way to the World, X-Zyme GmbH Seite 1 The way to the World Mittwoch, Dr. Shukry Na‘amnieh X-Zyme.
P Erkenntnisgewinnung 5, 10, P Kommunikation 2, 7 P Kommunikation 8
 Präsentation transkript:

XP – eXtreme Programming Phänomene der „Softwarekrise“ Terminverzögerungen Projektabbruch Fehlerrate System wird unrentabel Geschäftsprozesse werden falsch verstanden Geschäftsprozesse ändern sich Falsche Funktionsfülle Personalwechsel Gegenmaßnahme: XP Ursprung: Daimler Chrysler Software Engineering SS 2009

XP – eXtreme Programming Was ist „extrem“? – alles, was sich bewährt hat wird „extrem“ betrieben Software Engineering SS 2009

XP – eXtreme Programming Hoffnungen: Kostenreduktion bei Änderungen Software Engineering SS 2009

XP – eXtreme Programming Bedeutung der Planung Software Engineering SS 2009

XP – eXtreme Programming Vorteile der XP-Anwendung: Projektrichtung kann einfacher an Umfeld angepasst werden unklare Punkte können aufgeschoben werden (keine unsichere Investitionen) Projekt kann mit Marktwachstum wachsen Bei Einstellung des Projektes besteht trotzdem ein funktionstüchtiges Zwischenrelease Der Kunde bekommt den Featureumfang mit der von ihm gewollten Priorität Software Engineering SS 2009

Software Engineering SS 2009 XP – Theorie die vier Variablen in XP-Projekten Kosten Qualität Zeit Umfang  „magisches Quadrat“ Software Engineering SS 2009

Software Engineering SS 2009 XP – Theorie die vier (sieben) Werte von XP Kommunikation: mangelnde Kommunikation ist häufige Ursache für Scheitern eines Projektes  Förderung von Kommunikation (z.B. Pairprogramming, tägl. Meetings (im Stehen), Kommunikation mit dem Kunden) Einfachheit: es wird die einfachste Möglichkeit gewählt, ein Problem zu lösen und nur das wird realisiert. Einfachheit reduziert Kommunikationsbedarf erhöhte Kommunikation liefert „einfachere“ Lösungen Software Engineering SS 2009

Software Engineering SS 2009 XP – Theorie die vier (sieben) Werte von XP Feedback: z. B. durch Partner beim Pairprogramming durch automatische Modultests am Ende des Tages der Kunde durch häufige Releases Mut: jeder soll erkannte Probleme angehen, um den Erfolg des Projektes zu sichern es werden nur die Probleme angegangen, die momentan wirklich vorliegen Eliminierung von überflüssigem Code Software Engineering SS 2009

Software Engineering SS 2009 XP – Theorie die vier (sieben) Werte von XP (Respekt) vor den anderen Projektmitgliedern (Interesse) am Lernen (Qualitätsbewußtsein) Software Engineering SS 2009

Software Engineering SS 2009 XP – Theorie XP-Prinzipien Umsetzung der Werte in konkrete Anwendungsvorschläge Unterscheidung in primäre und sekundäre Prinzipien Primär: unmittelbares Feedback Streben nach Einfachheit inkrementelle Veränderungen Änderungen willkommen heißen Qualitätsarbeit leisten Software Engineering SS 2009

Software Engineering SS 2009 XP – Theorie XP-Prinzipien Sekundär: Lernen lehren kleine Anfangsinvestitionen Spielen, um zu gewinnen (keine Sanktionen bei schlechten Nachrichten) gezielte Experimente offene, ehrliche Kommunikation Verantwortung übernehmen an örtliche Gegebenheiten anpassen ehrliches Messen Software Engineering SS 2009

Software Engineering SS 2009 XP – Theorie Rollen Kunde aktive Mitarbeit Vorgabe der Ziele (User-Stories auf Storycards) Formulierung von Akzeptanztests Kritikfähigkeit (Einfluss, aber keine Kontrolle) Entwickler, Programmierer Teamfähigkeit: Teamerfolg steht über Einzelerfolg Kommunikationsfähig und –bereitschaft Software Engineering SS 2009

Software Engineering SS 2009 XP – Theorie Rollen Coach zuständig für Disziplin Führen ohne zu bevormunden zu starke Führung steht im Gegensatz zu den XP Prinzipien Terminmanager verfolgt Projektstatus sammelt Aufwand der einzelnen Personen Reaktion und Einleitung von Gegenmaßnahmen bei Abweichungen vom Plan Messen und Kontrollieren von Prozessleistungen Software Engineering SS 2009

Software Engineering SS 2009 XP – Theorie Rollen Projektmanager (untergeordnete Bedeutung) präsentieren von Projektergebnissen Tester Unterstützung des Kunden eigentliche Aufgabe wird vom Programmierer erledigt Berater Nebenrolle: ist Ansprechpartner bei technischen Problemen, die das Wissen der einzelnen Entwickler übersteigt gefordert sind Generalisten, wenige Spezialisten Software Engineering SS 2009

XP – Projekteinteilung Release: Iterative Vorgehensweise Projektdauer wird in kurze Releasezyklen (einige Monate) unterteilt Kunde und Entwickler legen in Planungsspiel die Funktionen fest (Releaseplan) Änderungen durch den Kunden sind explizit vorgesehen Iteration: Release wird in Iterationen unterteilt (1- 3 Wochen) ->Iterationsplanung sehr viele lauffähige Zwischenreleases Software „reift“ unter Beobachtung des Kunden Software Engineering SS 2009

XP – Projekteinteilung Vergleich verschiedener Methoden Software Engineering SS 2009

XP – Projekteinteilung Planung Planung wichtig, aber nicht nur am Anfang Flexibilität im Umgang mit Kundenanforderungen haben Priorität Planung erfolgen iterationsbezogen Planung erfolgt im Planungsspiel Kunde formuliert seine Anforderungen auf User Cards Entwickler schätzt Aufwand ab. Software Engineering SS 2009

XP – Projekteinteilung Langzeitplanung nur in groben Zügen Stand up meeting jeden Tag 5 Minuten wer hat was gemacht, welche Probleme, nächste Schritte keine Lösungen Planungsfehler  Reduktion der Anforderungen Terminprobleme  Reduktion des Umfanges nur 40 h –Woche, keine Überstunden  Erhalt der Kreativität Software Engineering SS 2009

Software Engineering SS 2009 XP – Entwicklung Überblick Software Engineering SS 2009

Software Engineering SS 2009 XP – Entwicklung Design: konsequentes Refactoring gegen sich ändernde Kundenanforderungen Wegen häufiger Änderungen „einfaches Design“ nach 4 Regeln einfaches Design muss alle Testanforderungen bestehen, die die Kundenanforderungen validieren das Design muss jede Idee ausdrücken, die der Entwickler zum Ausdruck bringen muss kein Programmcode darf doppelt vorhanden sein das einfachste Design besitzt am wenigsten Klassen und Methoden einfaches Designwenig Aufwand bei Test und Refactoring Refactoring Verbesserung des Codes und des Designs keine neuen Funktionen, nur Verbesserung Software Engineering SS 2009

Software Engineering SS 2009 XP – Entwicklung Programmierung Pairprogramming: ein Entwickler codiert, der andere kontrolliert Rollen werden gewechselt Erfahrungsaustausch trotz Pairprogramming Kostenreduktion um 12 – 15% Programmierstandards einheitliches Aussehen von Quellcodes Testen Unit Tests Entwickler verfassen Testspezifikation Codierung bis alle Tests erfolgreich sind Akzeptanztest Validierung der Kundenanforderungen Verantwortlich: der Kunde Software Engineering SS 2009

Software Engineering SS 2009 XP – Grenzen Voraussetzungen Unternehmenskultur keine risikobehaftete Projekte, da aus Sicherheitsgründen ständige Releases nicht möglich kleine Teams (-12 Entwickler), sonst Kommunikations- und Koordinationsprobleme Gewaltentrennung: geschäftliche Entscheidungen fällt der Kunde, technische der Entwickler Persönlichkeitsprofil der Entwickler (hohe Sozialkompetenz, Selbstdisziplin) erfahrenes Team automatisierte Tests Software Engineering SS 2009

Software Engineering SS 2009 XP – Grenzen Nachteile fehlendes Risikomanagement keine Dokumentationspflicht, die aber oft vom Gesetzgeber gefordert wird es kann schnell Chaos entstehen Software Engineering SS 2009