Advanced Software Engineering WS0910 Kapitel1. Dr. Dominik Haneberg

Größe: px
Ab Seite anzeigen:

Download "Advanced Software Engineering WS0910 Kapitel1. Dr. Dominik Haneberg"

Transkript

1 Advanced Software Engineering WS0910 Kapitel1 Dr. Dominik Haneberg

2 AGILE METHODEN Advanced Software Engineering 11

3 Inhalte dieses Kapitels Warum agil? Agile Methoden vs. schwergewichtige Prozesse Das Agile Manifesto Agile Werte, Prinzipien, Praktiken und Methodiken XP, Scrum und Crystal Kritische Betrachtung Indikation und Kontraindikation Advanced Software Engineering 12

4 Agil? Warum denn auch das noch? Unified Process [1996] 2009: 30 % der Softwareprojekte voll erfolgreich V-Modell [1986] Wasserfallmodell [1970] Softwarekrise [1968, NATO- Konferenz in Garmisch] Advanced Software Engineering 13

5 Erfolgsgeschichte Software Engineering? Nach 40 Jahren Softwaretechnik hat sich der relative Anteil der erfolgreichen, problematischen und total abgestürzten Projekte nicht signifikant verschoben Andererseits: Softwareprojekte sind heute um Größenordnungen komplexer als vor 40 Jahren Methodischen Fortschritte durch Komplexitätszuwachs verbraucht Andere Sichtweise: Die eingesetzten Prozesse fokussieren nicht auf das, was eigentlich wichtig ist Advanced Software Engineering 14

6 Advanced Software Engineering 15

7 Agile vs. schwergewichtige Prozesse Schwergewichtige Prozesse Dokumentenzentriert Up-Front Design Reglementiert Abarbeitung eines Plans Lange Releasezyklen Agile Prozesse Codezentriert Minimale Analyse zu Beginn Adaptiv, Prozess wird angepasst Ständige Anpassung der Ziele Häufiges Deployment Advanced Software Engineering 16

8 Das Agile Manifest 2001 von vielen Vertretern leichtgewichtiger Vorgehensweisen auf einer Tagung aus der Taufe gehoben Bewusst politisierender Gegenentwurf zu den etablierten Vorgehensweisen Argumentativ stark aus Praxis/Projekterfahrung geprägt Hat viele Unterstützer gefunden Advanced Software Engineering 17

9 Das Agile Manifest Wir entdecken Wege, Software besser zu entwickeln, indem wir es selbst tun und anderen dabei helfen. Durch diese Arbeit haben wir Folgendes zu schätzen gelernt: Individuen und Interaktionen sind wichtiger als Prozesse und Werkzeuge. Funktionierende Software ist wichtiger als umfassende Dokumentation. Die Zusammenarbeit mit dem Kunden ist wichtiger als Vertragsverhandlungen. Sich auf unbekannte Änderungen einzustellen, ist wichtiger als einem Plan zu folgen. Wir schätzen aufgrund unserer Erfahrung die Punkte auf der rechten Seite, aber wir bewerten die Punkte auf der linken Seite höher Advanced Software Engineering 18

10 Werte, Prinzipien, Praktiken, Methodiken Werte Grundsätze, wie Projekte das Problem der Änderungen angehen sollen Prinzipien Konkretisieren Werte und sollen helfen diese umzusetzen Praktiken Konkrete Handlungsempfehlungen für die Softwareentwicklung Methodiken Kombination von Praktiken, die einer bestimmten Philosophie folgt Advanced Software Engineering 19

11 Werte, Prinzipien, Praktiken, Methodiken Advanced Software Engineering 20

12 Änderungskosten Kosten pro Änderung Prädiktive Vorgehensweise Adaptive Vorgehensweise Zeit Advanced Software Engineering 21

13 Die agilen Werte Advanced Software Engineering 22

14 Die agilen Werte Advanced Software Engineering 23

15 Die agilen Werte Advanced Software Engineering 24

16 Die agilen Werte Advanced Software Engineering 25

17 Die 12 agilen Prinzipien Unsere höchste Priorität liegt darin, den Kunden durch frühzeitige und kontinuierliche Auslieferung wertvoller Software zufrieden zu stellen. Das Wichtigste sind die Bedürfnisse des Kunden Aktivitäten darauf ausgerichtet, dass Kunde die Software baldmöglichst einsetzen kann Advanced Software Engineering 26

18 Die 12 agilen Prinzipien Begrüße sich verändernde Anforderungen, selbst wenn sie erst spät bei der Entwicklung auftreten. Agile Prozesse nutzen Änderungen zugunsten des Wettbewerbsvorteils des Kunden. Von Anfang an auf unvorhersehbare Änderungen einstellen Änderungen nicht als Problem verstehen Advanced Software Engineering 27

19 Die 12 agilen Prinzipien Liefere häufig funktionierende Software aus, innerhalb weniger Wochen oder Monate, wobei der kürzeren Zeitspanne eindeutig der Vorzug zu geben ist. Kunde soll neue Funktionalität schnell gewinnbringend einsetzen können Frühes Feedback erlaubt bessere Steuerung Advanced Software Engineering 28

20 Die 12 agilen Prinzipien Geschäftsleute und Entwickler müssen während des gesamten Projekts täglich zusammenarbeiten. Probleme werden durch enge Zusammenarbeit von Domänenfachleuten und Entwicklern früher erkannt Advanced Software Engineering 29

21 Die 12 agilen Prinzipien Baue deine Projekte mit motivierten Mitarbeitern auf. Gib ihnen die Umgebung und die Unterstützung, die sie benötigen und vertraue ihnen, dass sie ihre Arbeit erfolgreich beenden Motivierte Mitarbeiter auswählen Mitarbeiter unterstützen Fachliche Entscheidungen den Mitarbeitern überlassen Advanced Software Engineering 30

22 Die 12 agilen Prinzipien Die effektivste und effizienteste Methode, Informationen einem Entwicklungsteam zukommen zu lassen bzw. innerhalb eines Entwicklungsteams auszutauschen, ist die direkte Kommunikation von Angesicht zu Angesicht. Direkte Kommunikation wirkungsvoller, nonverbale Komponente geht nicht verloren Verständnisschwierigkeiten können oft direkt aufgelöst werden Advanced Software Engineering 31

23 Die 12 agilen Prinzipien Funktionierende Software ist der primäre Maßstab für Fortschritt. Funktionierende Software ist besser als Pläne, wie Software funktionieren könnte Nur durch funktionierende Software kann beurteilte werden, ob das Projekt weiter fortgeschritten ist Advanced Software Engineering 32

24 Die 12 agilen Prinzipien Agile Methodiken fördern die kontinuierliche Entwicklung. Geldgeber, Entwickler und Anwender sollten in der Lage sein, ein beständiges Tempo unbegrenzt beizubehalten. Wenn nachts und in Überstunden entwickelt wird erreicht man nur, dass die dabei produzierten Fehler am Folgetag wieder ausgebaut werden müssen Advanced Software Engineering 33

25 Die 12 agilen Prinzipien Ständige Aufmerksamkeit gegenüber technisch hervorragender Qualität und gegenüber gutem Design erhöht die Agilität. Entwickler sollten technisch up-to-date sein Wissen über technische Fortschritte erlaubt qualitativ bessere Software Advanced Software Engineering 34

26 Die 12 agilen Prinzipien Einfachheit die Kunst, unnötige Arbeit zu minimieren ist essentiell. Leichte Änderbarkeit reduziert Aufwand Einfachheit sorgt für leichte Änderbarkeit Daher alle Artefakte so einfach wie möglich Advanced Software Engineering 35

27 Die 12 agilen Prinzipien Die besten Architekturen, Anforderungen und Designs ergeben sich aus sichselbst-organisierenden Teams. Entscheidungen dem Team überlassen, anstatt sie vorzugeben In der Regel finden weitegehend selbstorganisierende Teams besser Lösungen Advanced Software Engineering 36

28 Die 12 agilen Prinzipien In regelmäßigen Abständen macht sich das Team Gedanken darüber, wie effektiver gearbeitet werden kann und passt sein Verhalten entsprechend an. Es ist wichtig regelmäßig über die eigene Arbeit nachzudenken und Verbesserungsmöglichkeiten auszuloten Es ist praktisch unmöglich, am Anfang die beste Methodik für ein Projekt zu bestimmen Advanced Software Engineering 37

29 Praktiken Meistens konkrete Handhabungsformen, die beschreiben, wie Software entwickelt werden sollte Sind nicht Teil des agilen Manifests Auswahl der Praktiken wird den Methodiken überlassen Großen Anzahl, oftmals mehrere Synonyme für dieselbe Idee Advanced Software Engineering 38

30 Praktiken Nicht alle Praktiken sind bahnbrechend neue Ideen. Viele existieren schon länger (z. B. Refactoring) Einige Praktiken entfalten ihren Nutzen nur im Zusammenspiel mit bestimmten anderen Praktiken, z. B. Refactoring und Regressionstests Eine Methodik ist eine Festlegung einer Menge von Praktiken (die idealerweise einer bestimmten Philosophie folgen) Advanced Software Engineering 39

31 Methodiken Eine Methodik legt für ein Projekt einen bestimmten Satz an Praktiken verbindlich fest P6 P5 P1 P4 P2 P3 Methodik 1 Eine Methodik heißt agil, wenn sie sich an den Werten und Prinzipien des agilen Manifest orientiert Es sind also viele agile Methodiken möglich Advanced Software Engineering 40

32 Methodiken In [Abrahamsson et al.] finden sich vier Eigenschaften, die eine agile Methodik aufweisen muss Inkrementell Kooperativ Unkompliziert Adaptiv P. Abrahamsson et al.: Agile Software Development Methods Review and Analysis, VTT publications, Advanced Software Engineering 41

33 METHODIKDESIGN Advanced Software Engineering 42

34 Warum eine Methodik? Koordination der Projektbeteiligten Vermeidet es Fehler zu wiederholen (Eine Methodik sollte aus ausreichend Erfahrung abgeleitet sein) Vertrauensgewinn beim potentiellen Auftraggeber Advanced Software Engineering 43

35 Methodikdesign Ähnlich zu einem Brunch: Große Auswahl und nicht alles passt zusammen Methodiken sind soziale Konstrukte (Die Konventionen, die die Gruppe akzeptiert) Wie bewertet man Methodiken, um eine gute zu erstellen Elemente Metriken Advanced Software Engineering 44

36 Methodikelemente A. Cockburn: Agile Software Development The Cooperative Game, Addison Wesley, Advanced Software Engineering 45

37 Metriken Erlauben den Vergleich anhand einer Skala Beispiele: Größe der Methodik Zeremonie Gewicht der Methodik (Indikator für Inflexibilität) Problemgröße Kritikalität Sichtbarkeit Stabilität Advanced Software Engineering 46

38 Metriken Größe der Methodik Advanced Software Engineering 47

39 Metriken Zeremonie: Detaillierungsgrad der Artefakte und Toleranz gegenüber Abweichungen Gewicht der Methodik: Produkt aus Größe und Zeremonie Problemgröße: Wie komplex ist das zu lösende Problem Advanced Software Engineering 48

40 Metriken Kritikalität Größe des Schadens, wenn die Software nicht funktioniert Cockburn unterscheidet u. a. in der Crystal- Methodenfamilie folgende Grade: Klasse C (Comfort) D (Discretionary Money) E (Essential Money) L (Life) Beschreibung Komfort des Benutzer beeinträchtigt Überschaubarer finanzieller Schaden Erheblicher finanzieller Schaden (jenseits der Portokasse) Gefahr für Menschenleben A. Cockburn: Agile Software Development The Cooperative Game, Addison Wesley, Advanced Software Engineering 49

41 Metriken Sichtbarkeit: Wie transparent sind die Vorgänge in einem Projekt Stabilität: Wie hoch ist die Wahrscheinlichkeit einer Veränderung Advanced Software Engineering 50

42 Ansätze für das Design einer Methodik Tailoring: Bestehende Methodik anpassen Kombination: Das Beste aus mehreren Methodiken kombinieren Die Methodik muss ausgewogen und der jeweiligen Situation angemessen sein (keine Überbetonung einzelner Aspekte) Advanced Software Engineering 51

43 Häufige Fehler Eierlegende Wollmilchsau Bisher nicht in Erscheinung getreten Unnötiges Beiwerk mangels Vertrauen Viel hilft viel Advanced Software Engineering 52

44 Häufige Fehler Ideenkill ( Das funktioniert bestimmt nicht. ) Das Prinzip Hoffnung ( Das müsste eigentlich funktionieren. ) Missachtung des Zusammenspiels einzelner Praktiken Vernachlässigung des Faktors Mensch Advanced Software Engineering 53

45 Cockburns 10 Prinzipien 1. Unterschiedliche Projekte erfordern unterschiedliche Methodiken. 2. Übermäßiges Gewicht in der Methodik ist kostspielig. 3. Größere Teams erfordern mehr Kommunikationspraktiken. 4. Projekte mit höherem potentiellen Schaden erfordern mehr Praktiken zur Überprüfung Advanced Software Engineering 54

46 Cockburns 10 Prinzipien 5. Disziplin, Können und Verständnis können nicht durch Verfahren, Formalitäten und Dokumentation ersetzt werden. 6. Interaktive, direkte Kommunikation ist der günstigste und schnellste Kanal zum Austausch von Informationen. 7. Die Zunahme an Kommunikation und Feedbacks reduziert das Bedürfnis nach Dokumentation Advanced Software Engineering 55

47 Cockburns 10 Prinzipien 8. Nebenläufige Entwicklung erhöht die Geschwindigkeit und Flexibilität; serielle Entwicklung verringert die Kosten. 9. In Aktivitäten ohne Flaschenhals ist Effizienz entbehrlich. 10. Bestimmte Praktiken ( Sweet Spots ) beschleunigen die Entwicklung. A. Cockburn: Agile Software Development The Cooperative Game, Addison Wesley, Advanced Software Engineering 56

48 Cockburns Sweet Spots Projekte sollten versuchen, sich soweit wie möglich folgenden Praktiken zu nähern: Für jeden Entwickler nur eine einzige Aufgabe Einsatz von erfahrenen Entwicklern Kleine Teams, deren Mitglieder am gleichen Ort platziert sind Automatische Regressionstests Leichter Zugang zu den Benutzern Kleine Inkremente und häufige Auslieferung an echte Benutzer Advanced Software Engineering 57

49 PRAKTIKEN Advanced Software Engineering 58

50 Praktiken Praktiken sind konkrete Anleitungen, wie Software entwickelt werden soll Praktiken in den meisten Fällen aus Erfahrungswerten aus Projekten abgeleitet Es gibt sehr viele verschiedene Praktiken, keine Methodik nutzt alle Im Folgenden werden einige Praktiken beispielhaft vorgestellt Advanced Software Engineering 59

51 Pair Programming Immer zwei Entwickler an einem Computer Einer hat Tastatur und Maus und entwickelt Code Der Andere überwacht, denkt voraus an die nächsten Schritte Die Partner wechseln wiederholt die Rollen Besetzung der Paare wird regelmäßig gewechselt Advanced Software Engineering 60

52 Refactoring Code ist wie Käse, mit der Zeit beginnt er zu stinken ( code smells ) Refactoring verbessert bestehenden Code, ohne die Funktionalität zu verändern Umbenennen von Klassen Entfernen von redundantem Code Extrahieren von Interfaces Toolsupport wichtig Mehr zu Refactoring später Advanced Software Engineering 61

53 Beispiel zu Refactoring Version 1 Version 2 public class Circle { private double radius; } public void setradius(double radius) { this.radius = radius; } public double getperimeter() { double perimeter = 2 * * radius; return perimeter; } public double getarea() { double area = * Math.pow(radius,2); return area; } Advanced Software Engineering 62

54 Beispiel zu Refactoring Version 1 Version 2 public class Circle { private double radius; public class Circle { public static final double PI = ; } public void setradius(double radius) { this.radius = radius; } public double getperimeter() { double perimeter = 2 * * radius; return perimeter; } public double getarea() { double area = * Math.pow(radius,2); return area; } } private double radius; public void setradius(double radius) { this.radius = radius; } public double getperimeter() { double perimeter = 2 * PI * radius; return perimeter; } public double getarea() { double area = PI * Math.pow(radius,2); return area; } Advanced Software Engineering 63

55 Product Backlog Öffentliche Liste aller Aufgaben, die für das Endprodukt noch getan werden müssen Nicht nur Funktionalität, auch Bugfixes und Dokumentationsbedarf, Alle Einträge werden mit Priorität und Aufwandsschätzung versehen Advanced Software Engineering 64

56 Product Backlog Es muß nicht immer alles elektronisch sein Advanced Software Engineering 65

57 Collective Code Ownership Das Team als Gemeinschaft ist der Besitzer des Codes Jeder kann jeden Teil des Codes jederzeit ändern Wer der ursprüngliche Autor war, ist irrelevant Für alle gelten dieselben Programmierstandards und -richtlinien Hilft den Truckfaktor niedrig zu halten Advanced Software Engineering 66

58 Praktikenbasar Machbarkeitsanalyse (Proof of concept) Anforderungspatterns Glossar Kunde vor Ort MoSCoW-Regel C. Dogs, T. Klimmer: Agile Software Entwicklung kompakt, mitp-verlag, Advanced Software Engineering 67

59 Praktikenbasar Planning Game Prototypen Requirements Management CRC-Karten Designmentor Advanced Software Engineering 68

60 Praktikenbasar Design Patterns Öffentliche Modellpräsentation (Wall of Wonders) Coding Standards Collective Ownership Individual Code Ownership Advanced Software Engineering 69

61 Praktikenbasar Kurze Releases Pair Programming Refactoring Monkey-Tests Regressionstests Advanced Software Engineering 70

62 Praktikenbasar 40-Stunden-Woche Weiterbildung Knowledge-Base/Wiki Selbstorganisierende Teams Tägliches Stand-Up-Meeting Advanced Software Engineering 71

63 Praktikenbasar Timeboxing Anti-Patterns Einfachheit Risikogetriebene Priorisierung Advanced Software Engineering 72

64 METHODIKEN Advanced Software Engineering 73

65 Methodiken gibt s viele XP Adaptive Software Development (ASD) Crystal dx Scrum PP Feature-Driven Development (FDD) Dynamic Systems Development Method (DSDM) Advanced Software Engineering 74

66 Taxonomie von Methodiken Prozessorientiert Mitarbeiterzentriert Werkzeugzentriert Unvollständig XP ASD dx (RUP agil) Agile Modeling (AM) Scrum Crystal Agile Database Techniques (ADT) DSDM Lean Software Development (LSD) FDD Pragmatic Programming (PP) Advanced Software Engineering 75

67 EXTREME PROGRAMMING Advanced Software Engineering 76

68 Extreme Programming Bekannteste Agile Methodik Von Kent Beck, Ward Cunningham und Ron Jeffries 1996 entwickelt Entstand aus Erfahrungen im C3 Projekt (Chrysler Comprehensive Compensation System) von Chrysler XP stellt Entwickler und Kunden in den Vordergrund Praktiken zielen auf Programmierung und Einbindung des Kunden Advanced Software Engineering 77

69 Aspekte Prozess Rollen Praktiken Werte XP Anwendung Advanced Software Engineering 78

70 Werte im XP Kommunikation Nicht mit den Werten des agilen Manifests verwechseln! XP war früher! Mut XP Einfachheit Feedback Advanced Software Engineering 79

71 Prinzipien im XP Unmittelbares Feedback Qualitätsarbeit Einfachheit anstreben Veränderung wollen Inkrementelle Veränderung Advanced Software Engineering 80

72 Prinzipien im XP Lernen lehren Ehrliches Messen Geringe Anfangsinvestition Unmittelbares Feedback Mit leichtem Gepäck reisen Auf Sieg spielen Qualitätsarbeit Einfachheit anstreben An örtliche Gegebenheiten anpassen Veränderung wollen Inkrementelle Veränderung Gezielte Experimente Verantwortung übernehmen Offene, aufrichtige Kommunikation Die Instinkte des Teams nutzen, nicht dagegen arbeiten Advanced Software Engineering 81

73 Rollen Big Boss Kunde Management Geschäftsdomäne Coach Tracker Design/ Programmierung Programmierer Tester Consultant Projektunterstützung Sonstige Rollen Advanced Software Engineering 82

74 Rollen Programmierer Entwickeln Architektur Schreiben Quellcode und Unit Tests Big Boss Verantwortlich für Projekterfolg Grundlegende Entscheidungen Unterstützung für das Team, wenn nötig Nicht an der täglichen Arbeit beteiligt Advanced Software Engineering 83

75 Rollen Coach Vergleichbar mit Teamleiter Führt die Programmierer Zeigt wie XP angewandt wird Verantwortlich für Einhaltung der Ziele Ansprechpartner für Teammitglieder Tracker Historiker Sammelt Daten zur Leistung des Teams Achtet auf mögliche Gefährdung der vorgegebenen Zeitrahmen Advanced Software Engineering 84

76 Rollen Kunde Verwendet später die Software Schreibt Story Cards als Anforderungen Schreibt Akzeptanztests Arbeitet mit den Entwicklern zusammen Tester Unterstützt Kunde beim Formulieren von Tests Verantwortlich für regelmäßige Durchführung der Tests und Veröffentlichung der Ergebnisse Advanced Software Engineering 85

77 Rollen Consultant Externer technischer Sachverstand Advanced Software Engineering 86

78 Ablauf der Entwicklung Der eigentliche Prozess Technische Experimente Einweisung des Kunden Exploration Planung Entwicklung Freigabe Wartung Ende Advanced Software Engineering 87

79 Ablauf der Entwicklung Der eigentliche Prozess Exploration Planning Game Planung der Iteration durch Kunde und Entwickler Planung Entwicklung Freigabe Wartung Ende Advanced Software Engineering 88

80 Ablauf der Entwicklung Der eigentliche Prozess Exploration Festlegung der Architektur Schreiben von Unit und Akzeptanztests Paarweises Programmieren der Software Planung Entwicklung Freigabe Wartung Ende Advanced Software Engineering 89

81 Ablauf der Entwicklung Der eigentliche Prozess Exploration Planung Entwicklung Freigabe Wartung Ende Letzte Tests Performanceoptimierungen Advanced Software Engineering 90

82 Ablauf der Entwicklung Der eigentliche Prozess Exploration Planung Entwicklung Freigabe Wartung Ende Überarbeitung der Software im Produktivbetrieb Advanced Software Engineering 91

83 Ablauf der Entwicklung Der eigentliche Prozess Exploration Planung Entwicklung Freigabe Wartung Schreiben der Abschlussdokumentation Projektabschluss Ende Advanced Software Engineering 92

84 Explorationsphase Werkzeuge kennenlernen Technische Ansätze ausprobieren Kunde bekommt Methodik und seien spätere Rolle erklärt Wenige Wochen bis sehr wenige Monate. Falls mehr Zeit benötigt wird, Projektumfang verkleinern und Projekt so überschaubarer machen [Beck, 2000, Extreme Programming Explained] Advanced Software Engineering 93

85 Planungsphase Kunden und Entwickler entscheiden gemeinsam im Planning Game, welche Funktionalität im nächsten Release enthalten sein soll und wann diese implementiert werden soll Planning Game maximal 1 bis 2 Tage [Beck, 2000, Extreme Programming Explained] Hauptziel der ersten Iteration sollte hauptsächlich eine grobe Architektur des Systems sein Advanced Software Engineering 94

86 Ablauf Planungsphase 1. Kunde formuliert seine Anforderungen auf Story Cards 2. Entwickler schätzen den Aufwand jeder einzelnen Karte und stellen Anhängigkeiten fest (A nicht vor B) 3. Kunde priorisiert die einzelnen Karten (entsprechend seinem Nutzen) 4. Auf Basis von Prioritäten und Aufwänden werden gemeinsam die Karten ausgewählt, die implementiert werden. Ergebnis: Iterationsplan (welche Funktionalität in welcher Iteration) Advanced Software Engineering 95

87 Story Card Advanced Software Engineering 96

88 Story Cards Advanced Software Engineering 97

89 Aufwandsschätzungen Gestern Heute Advanced Software Engineering 98

90 Aufwandsschätzungen Wie schätzt man Aufwände? Alle Teammitglieder sind in den Schätzprozess eingebunden Technische und organisatorische Rahmenbedingungen müssen klar sein Anforderungen dürfen eine gewisse Maximalgröße nicht überschreiten Es werden abstrakte Schätzgrößen verwendet W.-G. Bleek, H. Wolf: Agile Softwareentwicklung, dpunkt.verlag, Advanced Software Engineering 99

91 Schätzpokern Geschätzter Aufwand 1. Jedes Teammitglied erhält eine Farbe 2. Anforderung wird vorgelesen 3. Alle wählen ihre Schätzungskarte aus 4. Schätzung wird verdeckt hingelegt 5. Umdrehen, wenn alle geschätzt haben Diskussionsbedarf Advanced Software Engineering 100

92 Sching-Schang-Schong-Schätzen Funktioniert wie Kinderspiel Schere-Stein-Papier Wertungsskala 1 bis 5 Alle rufen Sching-Schang-Schong und signalisieren dann mit der Hand ihre Schätzung Abweichung mehr als 2: Diskussionsbedarf Advanced Software Engineering 101

93 Hierarchisches Schätzverfahren Wenn die Zahl der User-Stories zu groß wird oder nicht alle User-Stories erfasst werden können, werden beim Schätzen zusätzliche Hierarchieebenen eingezogen Kunde Lösche Kunde Bearbeite Kunde Drucke Kundenliste nach PLZ Zeige Kundenliste an Öffne Kunden aus Liste Prüfe Plausibilität vor Speichern Speichere Kunden User - Stories Subsystem Features Advanced Software Engineering 102

94 Hierarchisches Schätzverfahren Man benötigt mindestens 1 Subsystem, für das alle Features erfasst sind und darunter mindestens 1 Feature, für das alle Stories erfasst sind Zuerst wird Top-Down geschätzt Alle Subsysteme in syep (System effort point) Alle Features in feep Alle Stories in step Dann ermittelt man wie viele Personentage ein step sind (z. B. durch Programmieren einiger Stories) Dann werden Botton-Up die konkreten Aufwände berechnet Advanced Software Engineering 103

95 Beispiel zu hierarchischem Schätzen Kunde Zeige Kundenliste 2 step Bearbeite Kunde 3 feep Öffne Kunden aus Liste 1 step Drucke Kundenliste nach PLZ 2 feep Lösche Kunde 1 feep 2 syep Prüfe Plausibilität vor Speichern 3 step Speichere Kunden 1 step Auftrag Rechnung Lohn 5 syep 2 syep 3 syep Außerdem bekannt: 1 step 2 PT Advanced Software Engineering 104

96 Entwicklungsphase Am Anfang: Entwickler sprechen sich ab, wie in der Iteration vorzugehen ist und wie das grobe Design für die Funktionalitäten auf den Story Cards aussehen soll Implementieren der Funktionalitäten einzelner Story Cards im paarweisen Programmieren und nach dem Test Driven Development (TDD)-Ansatz Tracker beobachtet Fortschritt der Implementierung (um im nächsten Planning Game beim Schätzen der Aufwände zu helfen) Advanced Software Engineering 105

97 TDD Ablauf Unit Test für neuen Code schreiben Refactoring erfolgreich Test ausführen Test nicht bestanden Code schreiben bzw. ändern Test bestanden Refactoring Advanced Software Engineering 106

98 Entwicklungsphase Kommt es in der Iteration zu Unklarheiten, werden diese mit den anderen Entwicklern oder dem Kunde (on-site customer) geklärt Abschloss einer Iteration nach der zuvor festgelegten Dauer (1 bis 4 Wochen). Ergebnis ist funktionierende Software Unit Tests sollte für geringe Fehlerquote sorgen Akzeptanztests werden ausgeführt Advanced Software Engineering 107

99 Entwicklungsphase Akzeptanztests wurden während der Iteration von Kunde und Tester zusammen entwickelt Ist das Ergebnis nicht zufriedenstellend 2 Möglichkeiten Entwickler nehmen kurzfristig Änderungen vor Kunde muss neue Story Card für nächstes Planning Game formulieren Weitere Iteration oder Übergang zu Freigabephase (neues Release), je nach Iterationsplanung Faustregel: 8-10 Iterationen pro Release Advanced Software Engineering 108

100 Akronyme im agilen Umfeld YAGNI: You Ain t Gonna Need It. Keine Technik/Funktionalität/Generalisierung/Abstraktion auf Vorrat KISS: Keep it simple, stupid; DTSTTCPW: Do the simplest thing that could possibly work. Lösungen sollen einfach sein, eine gute Architektur ist zuallererst immer einfach Advanced Software Engineering 109

101 Akronyme im agilen Umfeld DRY: Don t Repeat Yourself; OAOO: Once And Only Once: Eine Entwurfsentscheidung soll sich an genau einer Stelle im Code wiederfinden. SCP: Speaking Code Principle: Code soll seinen Zweck kommunizieren, auch ohne Kommentar und Dokumentation SoC: Separation of Concerns: Jede Klasse soll für ihre Aufgaben zuständig sein, aber eben nur für ihre eine Aufgabe TDA: Tell, Don t Ask: Klassen sollten Funktionalität bereitstellen, nicht nur Daten/Fakten Advanced Software Engineering 110

102 Freigabephase Aktueller Stand (Release-Candidate) wird dem Echtbetrieb übergeben Kunde prüft nochmals genau auf Mängel Entwickler machen Performanceoptimierungen Übergabe an die Anwender Advanced Software Engineering 111

103 Wartungsphase Anpassung der Software an veränderte Bedingungen Beheben von Fehlern Neue Anforderungen werden umgesetzt Software, die bereits im Einsatz ist, erfordert höhere Vorsicht bei Änderungen Advanced Software Engineering 112

104 Endphase Projekt endet, wenn keine weiteren Wünsche seitens des Kunden vorliegen 10- bis 15-seitige Dokumentation zu Software und Quellcode Das ist nicht die Benutzerdokumentation Advanced Software Engineering 113

105 Detailansicht des Prozesses Advanced Software Engineering 114

106 Praktiken des XP (V1) Managementtechniken Kunde vor Ort Programmierstandards Retrospektive Planungsspiel Gemeinsame Verantwortlichkeit Testen Refactoring Einfaches Design Programmieren in Paaren Nachhaltiges Tempo Standup- Meeting Fortlaufende Integration Metapher Kurze Releasezyklen Advanced Software Engineering 115

107 Praktiken des XP (V1) Kunde vor Ort Teamtechniken Programmierstandards Retrospektive Planungsspiel Gemeinsame Verantwortlichkeit Testen Refactoring Einfaches Design Programmieren in Paaren Nachhaltiges Tempo Standup- Meeting Fortlaufende Integration Metapher Kurze Releasezyklen Advanced Software Engineering 116

108 Praktiken des XP (V1) Kunde vor Ort Programmierstandards Programmiertechniken Retrospektive Planungsspiel Gemeinsame Verantwortlichkeit Testen Refactoring Einfaches Design Programmieren in Paaren Nachhaltiges Tempo Standup- Meeting Fortlaufende Integration Metapher Kurze Releasezyklen Advanced Software Engineering 117

109 Weitere Praktiken/Empfehlungen Offene Arbeitsumgebung Advanced Software Engineering 118

110 Weitere Praktiken/Empfehlungen Informativer Arbeitsplatz Advanced Software Engineering 119

111 Weitere Praktiken/Empfehlungen CRC-Karten Advanced Software Engineering 120

112 Weitere Praktiken/Empfehlungen Just Rules Lokale Anpassungen Parties Advanced Software Engineering 121

113 XP V2 Ende 2004 überarbeitete Version von Kent Becks extreme Programming explained Heißt auch XP2 Zusätzlicher Wert: Respekt Jetzt auch Ergänzung um projektspezifische Werte möglich Wikipedia beschreibt XP2: Advanced Software Engineering 122

114 XP V2 Prinzipien Advanced Software Engineering 123

115 XP V2 Praktiken Advanced Software Engineering 124

116 XP V3 Ergänzende Praktiken Echte Kundenbeteiligung Inkrementelles Deployment Team-Kontinuität Schrumpfende Teams Ursprungsursachen- Analyse Gemeinsamer Code Code und Tests Eine Codebasis Tägliches Deployment Vertrag mit verhandelbarem Umfang Bezahlung pro Benutzung Advanced Software Engineering 125

117 Bewertung/Anwendbarkeit XP ist nur für kleine Teams ausgelegt ( 10 Entwickler). XP erfordert hochqualifizierte Mitarbeiter. Die XP-Praktiken sind untereinander stark verkettet. Das erzwingt ein Alles oder Nichts -Vorgehen. Wenn kein Kunde vor Ort möglich, da keiner existent (Software für den Massenmarkt), sollten ausgewählte Teammitglieder diese Rolle Vollzeit übernehmen Advanced Software Engineering 126

118 Bewertung/Anwendbarkeit Gibt es mehrere Kunden, kann es Probleme geben, wenn die Machtverhältnisse nicht geklärt sind Die am häufigsten verwendete agile Methodik, aber fast immer an das Projekt angepasst (und so soll es auch sein!) Advanced Software Engineering 127

119 XP Simulation Advanced Software Engineering 128

120 SCRUM Advanced Software Engineering 129

121 Scrum Facts Scrum ist ein agiles Managementframework Scrum ist nicht auf Softwareprojekte limitiert...und enthält auch keine Praktiken, die vorschreiben, wie die Software entwickelt werden soll Scrum ist von den Ideen des lean management/lean production inspiriert Erstes Scrum-Projekt war 1993 Einer der Väter ist Jeff Sutherland J. Sutherland: Agile Development: Lessons Learned from the First Scrum, in: Cutter Consortium Agile Project Management Advisory Service. Executive Update, Vol. 5, No. 20, Advanced Software Engineering 130

122 Was ist ein Scrum? Scrum (deut. Gedränge ) ist ein Spielzug aus dem Rugby Der Spielzug ist kompliziert, er muss sorgsam einstudiert und orchestriert werden Verlangt disziplinierte Teamarbeit Advanced Software Engineering 131

123 Scrum ist ein empirischer Prozess: inspect and adapt no silver bullet harte Arbeit für alle Beteiligten inspiriert von den Ideen der lean production (japanische Unternehmen, insb. Toyota) ein Versuch Überlastung systematisch zu vermeiden, durch Selbstverpflichtung eines autonomen Teams Advanced Software Engineering 132

124 Vergleich von Entwicklungszyklen Teufelskreislauf Ziele in Gefahr Mehr Kontrollen Mehr Mitarbeiter, längere Arbeitszeiten Schlechte Softwarequalität, schlechte Mitarbeitermoral Advanced Software Engineering 133

125 Vergleich von Entwicklungszyklen Scrum-Kreislauf Umsetzung von Anforderungen in Software regelmäßig überprüfen Die richtigen Maßnahmen ergreifen Probleme und Hindernisse frühzeitig erkennen Ursachen finden, Lösungsoptionen entwickeln Advanced Software Engineering 134

126 Verbesserungen durch Scrum Mitarbeiterzufriedenheit Kundenzufriedenheit Time to market Qualität Produktivität Advanced Software Engineering 135

127 Scrum Alliance Scrum ist stärker institutionalisiert Es gibt Schulungen zum Certified Scrum Master und Certified Scrum Product Owner Advanced Software Engineering 136

128 Scrum im Überblick Product Backlog Sprint Backlog Daily Scrum Auslieferbares Produktinkrement Max. 30 Tage User Story 1 Der User soll irgendwas irgendwas können, und ywar möglichst was interesaaantes Sprint Advanced Software Engineering 137

129 Inkrementelle Innovation Anforderungen an neue Version möglichst minimal Dafür so schnell und häufig wie möglich Funktionalität ausliefern Kein Big-Bang -Release mit umfangreichen neuen Funktionen auf einen Schlag Scrum passt hierfür sehr gut, da jeder Sprint ein Produktinkrement erzeugt Vorgehen: Identifiziere die kleinste Menge an vermarktbaren Merkmalen, die einen echten Mehrwert darstellt Advanced Software Engineering 138

130 Vorteile Inkrementeller Innovation Projektdauer und Time-to-market niedriger Früherer break-even und verbesserter cash-flow Risikominimierung durch Reduktion der notwendigen Investitionen pro Version Höhere Profitabilität (besserer ROI) möglich Bessere Vorhersage der Kundenbedürfnisse und schnellere Rückmeldung Kurze Zyklen helfen, termingerecht zu liefern Advanced Software Engineering 139

131 Rollen in Scrum Team Product Owner Scrum Master Scrum Advanced Software Engineering 140

132 Product Owner Anforderungsbeschreibung und management Releasemanagement und Return on Investment Enge Zusammenarbeit mit dem Team Stakeholder-Management Ist nicht der Kunde Advanced Software Engineering 141

133 Scrum Master: Aufgaben Scrum etablieren Das Team unterstützen Direkte Zusammenarbeit zwischen Product Owner und Team sicherstellen Hindernisse beseitigen Entwicklungspraktiken verbessern helfen Führen durch Dienen Advanced Software Engineering 142

134 Scrum Master: Fähigkeiten Moderation Coaching Erfahrung in der (Software-)Entwicklung Advanced Software Engineering 143

135 Scrum Master sollte idealerweise vom Team bestimmt werden sollte keine Personalverantwortung für die Teammitglieder haben hat eine sich über die Projektdauer ändernde Rolle: Vom Vollzeit-Scrum Master als Change Agent zu Beginn bis zum Teilzeit-Scrum Master, der auch an der Erreichung des Sprint-Ziels mitwirkt, am Ende Advanced Software Engineering 144

136 Team Das Team führt alle Arbeiten aus, die zur Umsetzung der Anforderungen in auslieferbare Produktinkremente nötig sind Entscheidend: Die richtigen Mitarbeiter im Team (Mitarbeiter müssen über das relevante Wissen und die notwendigen Fähigkeiten verfügen) Empfehlung: Die Mitarbeiter bestimmen lassen, in welchem Projekt sie mitarbeiten (bei Google sollen sich die Entwickler für Projekte selbst nominieren) Advanced Software Engineering 145

137 Wie sollte das Team sein? Bevollmächtigt (empowered) Autonom Interdisziplinär besetzt Selbstorganisiert Klein Advanced Software Engineering 146

138 Arbeitsorganisation des Teams Vollzeitmitarbeiter Collocation: Alle Arbeitsplätze in unmittelbarer Nähe, am besten in einem Teamraum Team muss Normen und Standards für die Arbeit formulieren Visueller Arbeitsplatz Advanced Software Engineering 147

139 Das Scrum-Team Echtes Team, keine Ansammlung von Individuen Verfolgt gemeinsam ein Ziel Zeichnet sich durch gegenseitigen Respekt und Verständnis seiner Mitgliederaus, folgt gemeinsamen Normen Mitglieder arbeiten eng zusammen und unterstützen sich gegenseitig Teambildungsprozess erforderlich, ein Team entsteht nicht über Nacht Advanced Software Engineering 148

140 Phasen der Teamentwicklung nach Tuckman Änderung der Teamzusammensetzung Forming Norming Storming Performing Änderung der Teamzusammensetzung Advanced Software Engineering 149

141 und wer macht die Projektleiterjobs? Aufgabenbereich Scope-Management Zeitmanagement Kostenmanagement Kommunikationsmanagement Risikomanagement Qualitätsmanagement Lieferantenmanagement Personalmanagement Scrum-Rollen Product Owner für Produktversion Team für Sprints Product Owner für den Releaseplan Team für das Sprint Backlog Product Owner Product Owner für das Release-Reporting Team für Berichterstattung im Sprint Product Owner mit Input vom Team Product Owner für die Produktleistungsmerkmale Team für qualitätssichernde Maßnahmen Scrum Master für die richtige Anwendung des Prozesses Product Owner und Team Management für die Bereitstellung der Mitarbeiter Team für Produktivität und kontinuierliche Prozessverbesserung Advanced Software Engineering 150

142 Anforderungsgewinnung Anforderungsbeschreibung Umsetzung Traditionelles Vorgehen Anforderungsbeschreibung Umsetzung Sprint 1 Vorgehen in Scrum Sprint n Advanced Software Engineering 151

143 Anforderungsgewinnung Kunde Endanwender Interessenvertreter Product Owner Product Backlog Team Advanced Software Engineering 152

144 Das Product Backlog Nicht fix, sondern ein lebendiges Dokument Entwickelt sich iterativ und inkrementell Scrum kennt keine Change-Requests, dennoch ist es oft nützlich, Änderungen am Product Backlog zu dokumentieren Alle Einträge priorisiert und bzgl. Aufwand geschätzt Advanced Software Engineering 153

145 Das Product Backlog Advanced Software Engineering 154

146 Wie kommt man zum Product Backlog? Produktkonzept Produktidee Product Backlog Advanced Software Engineering 155

147 Das Product Backlog füllen Product Backlog möglichst minimalistisch, dennoch alle wichtigen Anforderungen von Beginn an festhalten Initial mindestens Anforderungen für die erste 2-3 Sprints Zentrale Funktionalität ins Product Backlog, aber auch nichtfunktionale Anforderungen Advanced Software Engineering 156

148 Das Product Backlog füllen Die Einträge im Product Backlog werden unterschiedlich detailliert ausgearbeitet Hoch priorisierte Einträge werden detaillierter erfasst Je höher das Risiko und je niedriger das Domänenwissen des Teams, desto genauer muss eine Anforderung formuliert sein Beschreibungen der Einträge werden über die Zeit verfeinert Advanced Software Engineering 157

149 Themen als Strukturierungswerkzeug Themen gruppieren mehrere inhaltlich zusammenhängende Einträge im Product Backlog Vorteile von Themen Überblick behalten High-level Sicht kann das Priorisieren erleichtern Themen können bei der Freigabeplanung helfen, da für die Endnutzer üblicherweise Merkmalsbündel interessant sind, nicht einzelne Anforderungen. Mit Themen kann der Product Owner leichter überwachen, welchen Fertigstellungsgrad einzelne Merkmalsbündel haben Advanced Software Engineering 158

150 Zum Product Backlog in 5 Schritten 1. Eigenschaften, die aus dem Produktkonzept folgen, sowie Anforderungen, die durch Fokusgruppen, Kundeninterviews, Anforderungsworkshops, ermittelt wurden, kommen in das Product Backlog. 2. Product Owner gruppiert Anforderungen zu Themen 3. Product Owner priorisiert die Themen und ggf. einzelne Anforderungen (in Zusammenarbeit mit dem Team) R. Pichler: Scrum, dpunkt.verlag, Advanced Software Engineering 159

151 Zum Product Backlog in 5 Schritten 4. Product Owner verfeinert die hochprioren Anforderungen (vorzugsweise in Anforderungsworkshops) unter Einbeziehung des Teams 5. Aktualisierung, Verfeinerung oder Löschung existierenden Anforderungen anhand der Ergebnisse nachfolgender Anforderungsworkshops. Neue Themen und Anforderungen werden aufgenommen Advanced Software Engineering 160

152 Anforderungsworkshop Hilfreiches Werkzeug zur Anforderungsgewinnung, ergänzt Fokusgruppen, Interviews, Beobachtung der Anwender Alle Interessenvertreter an einem Tisch Etabliert gemeinsames Verständnis, sorgt für gemeinsame Sprache und adäquate Beschreibung Mehrere vor dem ersten Sprint, regelmäßig während der Sprints um neue Anforderungen zu bestimmen Advanced Software Engineering 161

153 Priorisieren des Product Backlog Warum? Das wichtigste zuerst! Zielgerichtete Verfeinerung der wichtigsten Anforderungen Team weiß, was für den Erfolg des Projekts entscheidend ist und fokussiert darauf Priorisieren ist schwierig! Product Owner muss Kundenbedürfnisse genau kennen und beurteilen, welche Funktionen für erfolgreichen Einsatz entscheidend sind Advanced Software Engineering 162

154 Kriterien für Priorisierung Ziel eines Projekts ist die Generierung von Mehrwert Risiko Wert Kosten Primäre Frage: Wie viel Wert schafft eine Anforderung Priorität Advanced Software Engineering 163

155 Risiken Risiko Unsicher Verursacht Schaden In der Zukunft Beispiele sind Verständnis der Anforderung Architektur und Technologieauswahl Infrastruktur und Prozess Je innovativer ein Projekt, desto mehr Unsicherheit Product Owner und Team identifizieren gemeinsam die Risiken (bei jeder Aktualisierung das Releaseplans) Advanced Software Engineering 164

156 Wert-Risiko-Matrix Risiko Hoch Vermeiden Als erstes Niedrig Zuletzt Als zweites Niedrig Hoch Wert Advanced Software Engineering 165

157 MuSCoW Einteilung Must have Should have Could have Won t have Advanced Software Engineering 166

158 Mehr zu Anforderungen Eine Anforderung sollte die INVEST-Eigenschaften haben Independent Negotiable Valuable Estimable Small Testable Advanced Software Engineering 167

159 Risiken Identifizierte Risiken werden analysiert, Gegenmaßnahmen werden zu neuen Einträgen im Product Backlog Keine Analyse möglich Anforderung hoch priorisieren und im nächsten Sprint umsetzen Ein solches Vorgehen hilft vermeiden, dass Risiken erst spät wirksam werden. Ein early-fail ist dabei nicht ausgeschlossen Scrum ist ein risikoorientierter Ansatz Advanced Software Engineering 168

Advanced Software Engineering WS0910 Kapitel1. Dr. Dominik Haneberg

Advanced Software Engineering WS0910 Kapitel1. Dr. Dominik Haneberg Advanced Software Engineering WS0910 Kapitel1 Dr. Dominik Haneberg AGILE METHODEN 20.10.2009 Advanced Software Engineering 2 Inhalte dieses Kapitels Warum agil? Agile Methoden vs. schwergewichtige Prozesse

Mehr

Advanced Software Engineering WS0910 Kapitel1. Dr. Dominik Haneberg

Advanced Software Engineering WS0910 Kapitel1. Dr. Dominik Haneberg Advanced Software Engineering WS0910 Kapitel1 Dr. Dominik Haneberg AGILE METHODEN 15.12.2009 Advanced Software Engineering 11 Inhalte dieses Kapitels Warum agil? Agile Methoden vs. schwergewichtige Prozesse

Mehr

Advanced Software Engineering WS0910 Kapitel1. Dr. Dominik Haneberg

Advanced Software Engineering WS0910 Kapitel1. Dr. Dominik Haneberg Advanced Software Engineering WS0910 Kapitel1 Dr. Dominik Haneberg AGILE METHODEN 07.12.2009 Advanced Software Engineering 11 Inhalte dieses Kapitels Warum agil? Agile Methoden vs. schwergewichtige Prozesse

Mehr

Agile Softwareprozess-Modelle

Agile Softwareprozess-Modelle Agile Softwareprozess-Modelle Steffen Pingel Regionale Fachgruppe IT-Projektmanagement 2003-07-03 Beweglich, Lebhaft, Wendig Was bedeutet Agil? Andere Bezeichnung: Leichtgewichtiger Prozess Manifesto for

Mehr

- Agile Programmierung -

- Agile Programmierung - Fachhochschule Dortmund Fachbereich Informatik SS 2004 Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Thema: - - Vortrag von Michael Pols Betreut durch: Prof. Dr. Frank Thiesing Übersicht

Mehr

Extreme Programming. Universität Karlsruhe (TH) Fakultät für Informatik Lehrstuhl für Programmiersysteme. Forschungsuniversität gegründet 1825

Extreme Programming. Universität Karlsruhe (TH) Fakultät für Informatik Lehrstuhl für Programmiersysteme. Forschungsuniversität gegründet 1825 Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Extreme Programming Agiles Manifest Individuen und Interaktion wichtiger als Prozesse und Werkzeuge Laufende Software wichtiger als vollständige

Mehr

Agile Entwicklung nach Scrum

Agile Entwicklung nach Scrum comsolit AG Hauptstrasse 78 CH-8280 Kreuzlingen Tel. +41 71 222 17 06 Fax +41 71 222 17 80 info@comsolit.com www.comsolit.com Agile Entwicklung nach Scrum Seite 1 / 6 Scrum V 1.0 1. Wieso Scrum Die Entwicklung

Mehr

Extreme Programming: Überblick

Extreme Programming: Überblick Extreme Programming: Überblick Stefan Diener / Apr 18, 2007 / Page 1 Prinzipien Rollen Planung Implementierung Praktiken weitere Vorgehensweisen Grenzen Inhalt Stefan Diener / Apr 18, 2007 / Page 2 Prinzipien

Mehr

Projektmanagement. Dokument V 1.2. Oliver Lietz - Projektmanagement. Probleme bei Projekten

Projektmanagement. Dokument V 1.2. Oliver Lietz - Projektmanagement. Probleme bei Projekten Projektmanagement Agile Methoden: Extreme Programming / Scrum Dokument V 1.2 Probleme bei Projekten Viel Arbeit, die an den Zielen vorbeigeht Viel Dokumentation für f r unbenutzte Bestandteile Fehlende

Mehr

Agile Methoden. David Tanzer. Oliver Szymanski

Agile Methoden. David Tanzer. Oliver Szymanski Agile Methoden David Tanzer Oliver Szymanski Ziel von Softwareentwicklung Anforderungen zuverlässig und effizient in lauffähige Software verwandeln. Ziel von Softwareentwicklung Bedürfnisse des Kunden

Mehr

extreme Programming Eine Einführung mit Empfehlungen und Erfahrungen aus der Praxis dpunkt.verlag Henning Wolf Stefan Roock Martin Lippert

extreme Programming Eine Einführung mit Empfehlungen und Erfahrungen aus der Praxis dpunkt.verlag Henning Wolf Stefan Roock Martin Lippert Henning Wolf Stefan Roock Martin Lippert extreme Programming Eine Einführung mit Empfehlungen und Erfahrungen aus der Praxis 2., überarbeitete und erweiterte Auflage dpunkt.verlag 1 Einleitung 1 1.1 Die

Mehr

Agiles Projektmanagement nach Scrum mit Projektron BCS - Erfahrungsaustausch -

Agiles Projektmanagement nach Scrum mit Projektron BCS - Erfahrungsaustausch - Agiles Projektmanagement nach Scrum mit Projektron BCS - Erfahrungsaustausch - Prof. Dr. Roland Petrasch, Beuth Hochschule für Technik prof.beuth-hochschule.de/petrasch Stefan Lützkendorf Projektron GmbH

Mehr

Software Engineering. 4. Methodologien. Franz-Josef Elmer, Universität Basel, HS 2014

Software Engineering. 4. Methodologien. Franz-Josef Elmer, Universität Basel, HS 2014 Software Engineering 4. Methodologien Franz-Josef Elmer, Universität Basel, HS 2014 Software Engineering: 4. Methodologien 2 Wie den Entwicklungsprozess organisieren? Dokumentieren Verwalten Instandhalten

Mehr

Scrum for Management Praxis versus Theorie oder Praxis dank Theorie. ALM Day 26.Oktober 2011 Urs Böhm

Scrum for Management Praxis versus Theorie oder Praxis dank Theorie. ALM Day 26.Oktober 2011 Urs Böhm Scrum for Management Praxis versus Theorie oder Praxis dank Theorie ALM Day 26.Oktober 2011 Urs Böhm Übersicht Kurze Situationsübersicht Diskussion Prozesse Challenges in der SW-Entwicklung Wie geht Scrum

Mehr

SCRUM. Software Development Process

SCRUM. Software Development Process SCRUM Software Development Process WPW 07.08.2012 SCRUM Poster www.scrum-poster.de Was ist Scrum? Extrem Schlanker Prozess 3 Rollen 4 Artefakte Wenige Regeln Die Rollen Product Owner Der Product Owner

Mehr

AGILE SOFTWAREENTWICKLUNG NACH BERTRAND MEYER (AGILE!)

AGILE SOFTWAREENTWICKLUNG NACH BERTRAND MEYER (AGILE!) HOCHSCHULE ESSLINGEN FAKULTÄT INFORMATIONSTECHNIK STUDIENGANG SOFTWARETECHNIK UND MEDIENINFORMATIK AGILE SOFTWAREENTWICKLUNG NACH BERTRAND MEYER (AGILE!) WISSENSCHAFTLICHE PRÜFUNG WOJCIECH LESNIANSKI 22.01.2016

Mehr

MSP: Methoden des Software-Entwicklungsprozesses

MSP: Methoden des Software-Entwicklungsprozesses WS 2005/06 Mastermodul CS 5002 MSP: Methoden des Software-Entwicklungsprozesses Teamentwicklung extreme Programming Projekttagebuch Prof. Dr. Klaus Quibeldey-Cirkel Fachhochschule Gießen-Friedberg Forming

Mehr

SCRUM. Vertragsgestaltung & Vertragsorientierte Projektdurchführung. Katharina Vierheilig Vorlesung: Juristisches IT-Projektmanagement 08.01.

SCRUM. Vertragsgestaltung & Vertragsorientierte Projektdurchführung. Katharina Vierheilig Vorlesung: Juristisches IT-Projektmanagement 08.01. SCRUM Vertragsgestaltung & Vertragsorientierte Projektdurchführung Katharina Vierheilig Vorlesung: Juristisches IT- Agile Softwareentwicklung SCRUM 2 SCRUM Agiles Manifest Individuen und Interaktion Prozesse

Mehr

30 Multiple Choice-Fragen - pro Frage gibt es immer 1-4 richtige Antworten

30 Multiple Choice-Fragen - pro Frage gibt es immer 1-4 richtige Antworten SCRUM Foundation MUSTERPRÜFUNG Closed Book, d.h. keine Hilfsmittel zulässig Dauer: 60 Minuten 30 Multiple Choice-Fragen - pro Frage gibt es immer 1-4 richtige Antworten Beispiel für die Bewertung Annahme

Mehr

Taking RM Agile. Erfahrungen aus dem Übergang von traditioneller Entwicklung zu Scrum

Taking RM Agile. Erfahrungen aus dem Übergang von traditioneller Entwicklung zu Scrum Taking RM Agile CLICK TO EDIT MASTER OPTION 1 Erfahrungen aus dem Übergang von traditioneller Entwicklung zu Scrum Click to edit Master subtitle style Christian Christophoridis Requirements Management

Mehr

Inhaltsverzeichnis. Ralf Wirdemann. Scrum mit User Stories ISBN: 978-3-446-42660-3. Weitere Informationen oder Bestellungen unter

Inhaltsverzeichnis. Ralf Wirdemann. Scrum mit User Stories ISBN: 978-3-446-42660-3. Weitere Informationen oder Bestellungen unter Ralf Wirdemann Scrum mit User Stories ISBN: 978-3-446-42660-3 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-42660-3 sowie im Buchhandel. Carl Hanser Verlag, München 1 Einführung.....................................

Mehr

Empirische Evidenz von agilen Methoden. Seminar in Software Engineering Wintersemester 03/04

Empirische Evidenz von agilen Methoden. Seminar in Software Engineering Wintersemester 03/04 Empirische Evidenz von agilen Methoden Seminar in Software Engineering Wintersemester 03/04 Agenda Einleitung Bedeutung von agil Kurzübesicht agiler Methoden Überprüfung des (agilen) Erfolges Ausgewählte

Mehr

1 Einleitung 1. 1.4 Mehr Informationen zu Scrum... 6. 1.5 Danke... 6. 3 Die Rollen 9

1 Einleitung 1. 1.4 Mehr Informationen zu Scrum... 6. 1.5 Danke... 6. 3 Die Rollen 9 ix 1 Einleitung 1 1.1 Was ist Scrum?......................................... 1 1.1.1 Agiles Managementframework....................... 1 1.1.2 Empirischer Prozess................................ 2 1.1.3

Mehr

Scrum mit User Stories

Scrum mit User Stories Ralf Wirdemann Scrum mit User Stories HANSER Inhaltsverzeichnis 1 Einführung 1 1.1 Warum dieses Buch? 2 1.2 Struktur und Aufbau 3 1.3 Dankeschön 5 1.4 Feedback 5 2 Beispiel: Scrumcoaches.com 7 2.1 Das

Mehr

extreme Programming (XP) Hermann Götz Sergij Paholchak Agenda Was ist XP? Grundprinzipien Der Entwicklungsprozess Die Projektplanung Praktiken Vorteile und Nachteile Wann macht XP Sinn für ein Projekt?

Mehr

Inhaltsverzeichnis. Ralf Wirdemann. Scrum mit User Stories ISBN: 978-3-446-41656-7. Weitere Informationen oder Bestellungen unter

Inhaltsverzeichnis. Ralf Wirdemann. Scrum mit User Stories ISBN: 978-3-446-41656-7. Weitere Informationen oder Bestellungen unter Ralf Wirdemann Scrum mit User Stories ISBN: 978-3-446-41656-7 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-41656-7 sowie im Buchhandel. Carl Hanser Verlag, München 1 Einführung.....................................

Mehr

Einführung in das Scrum Framework & welche 10 Praktiken helfen, Scrum wirklich gut zu machen

Einführung in das Scrum Framework & welche 10 Praktiken helfen, Scrum wirklich gut zu machen Einführung in das Scrum Framework & welche 10 Praktiken helfen, Scrum wirklich gut zu machen Wer bin ich Kurse und Vorträge mit Jeff Sutherland und Ken Schwaber Verschiedene Kurse der Scrum.org Professional

Mehr

Effiziente Steuerung von BI-Projekten - Agiles Projektmanagement vs. klassische Vorgehensmodelle. Windhoff Software Services GmbH www.wind-soft.

Effiziente Steuerung von BI-Projekten - Agiles Projektmanagement vs. klassische Vorgehensmodelle. Windhoff Software Services GmbH www.wind-soft. Effiziente Steuerung von BI-Projekten - Agiles Projektmanagement vs. klassische Vorgehensmodelle Folie 2 Agenda Projektmanagement: Ziele und Methoden Agile Methoden: Scrum Agile Methoden im BI Umfeld PM

Mehr

Scrum technische Umsetzung und kaufmännische Rahmenbedingungen

Scrum technische Umsetzung und kaufmännische Rahmenbedingungen Scrum technische Umsetzung und kaufmännische 9. Darmstädter Informationsrechtstag 2013 Darmstadt, 15. November 2013 Franziska Bierer 2 andrena ojects ag Gründung 1995 Standorte in Karlsruhe und Frankfurt

Mehr

Agiles Projektmanagement nur eine Illusion?

Agiles Projektmanagement nur eine Illusion? Fachgruppe IT-Projektmanagement, Stuttgart, 11.4.2014 Dirk Jahnke, Managing Consultant Agenda These: Sprint 1: > Motivation > Versuch einer Definition Agiles Projektmanagement Sprint 2: > Vergleich mit

Mehr

Agiler Healthcheck. Dieter Bertsch & Sabine Canditt Agile Center Allianz Deutschland München / Januar 2013

Agiler Healthcheck. Dieter Bertsch & Sabine Canditt Agile Center Allianz Deutschland München / Januar 2013 Agiler Healthcheck Dieter Bertsch & Sabine Canditt Agile Center Allianz Deutschland München / Januar 2013 Inhalt 1 2 3 Motivation Existierende Healthchecks Agiler Healthcheck der Allianz "Der Glaube an

Mehr

Software- Projektmanagement. Dokument V 1.2-2010. Oliver Lietz - Projektmanagement. Projektmodelle im Vergleich. Agil Extreme Programming /

Software- Projektmanagement. Dokument V 1.2-2010. Oliver Lietz - Projektmanagement. Projektmodelle im Vergleich. Agil Extreme Programming / Software- Projektmanagement Management- und Phasen-Modelle Vom Wasserfall bis Extreme Programming / Scrum Dokument V 1.2-2010 Projektmodelle im Vergleich Klassisch Wasserfall -Modell Spezifikation/Pflichtenheft

Mehr

Extreme Programming ACM/GI Regionalgruppe Bremen, 12.6.2001

Extreme Programming ACM/GI Regionalgruppe Bremen, 12.6.2001 Extreme Programming ACM/GI Regionalgruppe Bremen, 12.6.2001 Tammo Freese OFFIS, Oldenburg freese@acm.org http://www.tammofreese.de Frank Westphal unabhängiger Berater westphal@acm.org http://www.frankwestphal.de

Mehr

Projektmanagement Vorlesung 12/ 13

Projektmanagement Vorlesung 12/ 13 Folie 1 Projektmanagement Vorlesung 12/ 13 Prof. Adrian Müller, PMP FH Kaiserslautern phone: +49 6332 914-329 http://www.fh-kl.de/~amueller Folie 2 Inhalte Agile Modelle Manifesto Übersicht XP Prinzipien

Mehr

Agile Programmierung - Theorie II SCRUM

Agile Programmierung - Theorie II SCRUM Agile Programmierung - Theorie II SCRUM Arne Brenneisen Universität Hamburg Fakultät für Mathematik, Informatik und Naturwissenschaften Seminar Softwareentwicklung in der Wissenschaft Betreuer: Christian

Mehr

(und was wir davon lernen können!)

(und was wir davon lernen können!) extreme Programming (und was wir davon lernen können!) extreme Programming Eine Einführung - basierend auf Kent Beck: extreme Programming explained Addison Wesley (2000) http://www.extremeprogramming.org

Mehr

Einführung in Scrum. Agiles Projektmanagement. Martin Krüger 27.04.2011 Entwicklung von Workflowanwendungen

Einführung in Scrum. Agiles Projektmanagement. Martin Krüger 27.04.2011 Entwicklung von Workflowanwendungen Einführung in Scrum Agiles Projektmanagement Martin Krüger 27.04.2011 Entwicklung von Workflowanwendungen Warum Agiles Projektmanagement? Scrum Empfehlungen Das Seminar Planbarkeit Warum Agiles Projektmanagement?

Mehr

den sicherheitskritischen Bereich Christoph Schmiedinger Frankfurter Entwicklertag 2015 24.02.2015

den sicherheitskritischen Bereich Christoph Schmiedinger Frankfurter Entwicklertag 2015 24.02.2015 Agile Methoden als Diagnose-Tool für den sicherheitskritischen Bereich Christoph Schmiedinger Frankfurter Entwicklertag 2015 24.02.2015 Über mich Berufliche Erfahrung 3 Jahre Projektabwicklung 2 Jahre

Mehr

Referat Extreme Programming. Von Irina Gimpeliovskaja und Susanne Richter

Referat Extreme Programming. Von Irina Gimpeliovskaja und Susanne Richter Referat Extreme Programming Von Irina Gimpeliovskaja und Susanne Richter 1.) Was ist XP? Überlegte Annäherung an Softwareentwicklung Prozessmodell für objektorientierte Softwareentwicklung erfordert gute

Mehr

SCRUM. Legalisierung der Hackerei? GI Regionalgruppe Dortmund 07.12.2009 Dipl.-Inform. (FH) Dirk Prüter. Dirk.Prueter@gmx.de

SCRUM. Legalisierung der Hackerei? GI Regionalgruppe Dortmund 07.12.2009 Dipl.-Inform. (FH) Dirk Prüter. Dirk.Prueter@gmx.de SCRUM Legalisierung der Hackerei? GI Regionalgruppe Dortmund 07.12.2009 Dipl.-Inform. (FH) Dirk Prüter Dirk.Prueter@gmx.de Überblick Was ist SCRUM Wie funktioniert SCRUM Warum lohnt es sich, SCRUM anzuwenden

Mehr

Software Engineering

Software Engineering Software Engineering Prof. Adrian A. Müller, PMP Fachbereich Informatik und Mikrosystemtechnik Fachhochschule Kaiserslautern, Standort Zweibrücken Prof. A. Müller, FH KL Software Engineering WS '11/'12

Mehr

Agile Management Einführung in agiles Management

Agile Management Einführung in agiles Management Agile Management Einführung in agiles Management Agile Management Agile Management-Methoden Einführung Agile Management PQRST e.u. - Ing. Erich Freitag Version 25.06.2013 Lernziele Den Unterschied zwischen

Mehr

Extreme Programming. Frank Gerberding LINEAS Informationstechnik GmbH Theodor-Heuss-Straße 2 D-38122 Braunschweig

Extreme Programming. Frank Gerberding LINEAS Informationstechnik GmbH Theodor-Heuss-Straße 2 D-38122 Braunschweig Extreme Programming Frank Gerberding LINEAS Informationstechnik GmbH Theodor-Heuss-Straße 2 D-38122 Braunschweig Stand: 11.06.2007 LINEAS Gruppe - Zahlen und Fakten LINEAS Gruppe Branche Software- und

Mehr

Water-Scrum-Fall Ein Entwicklungsprozess mit Zukunft? Bernhard Fischer

Water-Scrum-Fall Ein Entwicklungsprozess mit Zukunft? Bernhard Fischer Water-Scrum-Fall Ein Entwicklungsprozess mit Zukunft? Bernhard Fischer Wasserfall vs. Agile: Eine Erfolgsstory 2 Umsetzung agiler Prinzipien Entwicklungsprozess 2009 30.6% 13.4% 20.6% 35.4% Agil Iterativ

Mehr

Software entwickeln mit extreme Programming

Software entwickeln mit extreme Programming Martin Lippert Stefan Roock Henning Wolf Software entwickeln mit extreme Programming Erfahrungen aus der Praxis dpunkt.verlag Inhaltsverzeichnis 1 Einleitung 1 1.1 Die XP-Werte 4 1.2 Die XP-Prinzipien

Mehr

Agile Software-Entwicklung: Überblick und Techniken. Prof. Dr. Stefan Kowalewski Dr. Carsten Weise 1/29

Agile Software-Entwicklung: Überblick und Techniken. Prof. Dr. Stefan Kowalewski Dr. Carsten Weise 1/29 Agile Software-Entwicklung: Überblick und Techniken Prof. Dr. Stefan Kowalewski Dr. Carsten Weise 1/29 Kapitel I Der agile Ansatz 2/29 Agilität agil = flink, beweglich geringer bürokratischer Aufwand wenige

Mehr

Projektmanagement durch Scrum-Proxies

Projektmanagement durch Scrum-Proxies Cologne Intelligence GmbH Projektmanagement durch Scrum-Proxies Integration von Vorgehensmodellen und Projektmanagement 17. Workshop der Fachgruppe WI-VM der Gesellschaft für Informatik e.v. Stuttgart,

Mehr

Herkömmliche Softwareentwicklungsmodelle vs. Agile Methoden

Herkömmliche Softwareentwicklungsmodelle vs. Agile Methoden vs. Agile Methoden Christoph.Kluck@Student.Reutlingen University.de Medien und Kommunikationsinformatik Agenda Einführung Vorgehensmodelle Herkömmlich agil Resümee Klassische Probleme Nachgereichte Anforderungen

Mehr

Agile Software-Entwicklung im Kontext der EN50128 Wege zum Erfolg

Agile Software-Entwicklung im Kontext der EN50128 Wege zum Erfolg Herzlich willkommen Agile Software-Entwicklung im Kontext der EN50128 Wege zum Erfolg Heike Bickert Software-/Systemingenieurin, Bereich Quality Management Braunschweig // 17.11.2015 1 Agenda ICS AG Fragestellungen

Mehr

Extremes Programmieren

Extremes Programmieren Extremes Programmieren Übersicht, Demonstration, Erfahrungen ACM/GI Regionalgruppe Hamburg, 19.1.2001 Frank Westphal unabhängiger Berater westphal@acm.org http://www.frankwestphal.de Tammo Freese OFFIS,

Mehr

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum C A R L V O N O S S I E T Z K Y Agile Vorgehensmodelle in der Softwareentwicklung: Scrum Johannes Diemke Vortrag im Rahmen der Projektgruppe Oldenburger Robot Soccer Team im Wintersemester 2009/2010 Was

Mehr

Andrea Grass & Dr. Marcus Winteroll oose Innovative Informatik GmbH. Geschäftsprozessmanagement und Agilität geht das zusammen?

Andrea Grass & Dr. Marcus Winteroll oose Innovative Informatik GmbH. Geschäftsprozessmanagement und Agilität geht das zusammen? Andrea Grass & Dr. Marcus Winteroll oose GmbH Geschäftsprozessmanagement und Agilität geht das zusammen? Agenda I. Wozu eigentlich BPM? II. Vorgehen und Rollen im abpm III. Methoden und Techniken IV. Resümee

Mehr

MURCS Wir machen jetzt Scrum, aber das Meeting passt leider nicht und einen PO haben wir irgendwie auch nicht...

MURCS Wir machen jetzt Scrum, aber das Meeting passt leider nicht und einen PO haben wir irgendwie auch nicht... MURCS Wir machen jetzt Scrum, aber das Meeting passt leider nicht und einen PO haben wir irgendwie auch nicht... Ina Einemann @IEinemann Ulf Mewe @mewflu 2 Praxisbeispiele Tourismus Logistik 3 ANALYSE

Mehr

Scrum in der Praxis (eine mögliche Umsetzung)

Scrum in der Praxis (eine mögliche Umsetzung) Scrum in der Praxis (eine mögliche Umsetzung) ALM Talk, 26. Oktober 2011 Stefan Stettler Ausgangslage Viele Projektbeteiligte Verkauf, Entwickler, PM, Designer, Ergonomen Unterschiedliche Sichten und Vorstellungen,

Mehr

Scrum. Agile Software Entwicklung mit. Agile Software Entwicklung mit. Scrum. Raffael Schweitzer 18. November 2003

Scrum. Agile Software Entwicklung mit. Agile Software Entwicklung mit. Scrum. Raffael Schweitzer 18. November 2003 Agile Software Entwicklung mit Raffael Schweitzer 18. November 2003 Agenda Einleitung Was ist? Wie funktioniert? Einsatzbereiche Erfolgsfaktoren Fazit Agenda Einleitung Was ist? Wie funktioniert? Einsatzbereiche

Mehr

RE bei agilen Methoden

RE bei agilen Methoden 1 RE bei agilen Methoden Dipl. Inform. stefan.roock@itelligence.de it Workplace Solutions GmbH Vogt-Kölln-Strasse 30 22527 Hamburg Germany Agiles Manifest We are uncovering better ways of developing software

Mehr

Projektplanung für Softwareprojekte: KLIPS 2.0 Prof. Dr. Manfred Thaller WS 2011/12 3.11.2011 Dana Wroblewski

Projektplanung für Softwareprojekte: KLIPS 2.0 Prof. Dr. Manfred Thaller WS 2011/12 3.11.2011 Dana Wroblewski Projektplanung für Softwareprojekte: KLIPS 2.0 Prof. Dr. Manfred Thaller WS 2011/12 3.11.2011 Dana Wroblewski 1. Was heißt Agil 2. Scrum? Grundbegriffe 3. Wer benutzt Scrum 4. Vorteile & Nachteile von

Mehr

myscrum Scrum in der Praxis Markus Schramm compeople AG Frankfurt

myscrum Scrum in der Praxis Markus Schramm compeople AG Frankfurt myscrum Scrum in der Praxis Markus Schramm compeople AG Frankfurt Überblick Agilität und Scrum Grundlagen der agilen Softwareentwicklung Rahmenbedingungen bei der Einführung eines agilen Projektvorgehens

Mehr

Praxisbericht: Agil skalierte Produktentwicklung im regulierten Umfeld. Andreas Becker, Uwe Valentini Agile-by-HOOD 19.02.2014

Praxisbericht: Agil skalierte Produktentwicklung im regulierten Umfeld. Andreas Becker, Uwe Valentini Agile-by-HOOD 19.02.2014 Praxisbericht: Agil skalierte Produktentwicklung im regulierten Umfeld Andreas Becker, Uwe Valentini Agile-by-HOOD 19.02.2014 Reguliertes agil-skaliertes Umfeld Product Daily Definiton of Done Planning

Mehr

Agiles Projektmanagement mit Scrum

Agiles Projektmanagement mit Scrum Agiles Projektmanagement mit Scrum Josef Scherer CSM, CSP Lösungsfokussierter Berater josef.scherer@gmail.com 2009, Josef Scherer Scherer IT Consulting Freiberuflicher Scrum Coach Lösungsfokussierter Berater

Mehr

ISO 13485 konforme Entwicklung medizinischer Software mit agilen Vorgehensmodellen

ISO 13485 konforme Entwicklung medizinischer Software mit agilen Vorgehensmodellen ISO 13485 konforme Entwicklung medizinischer Software mit agilen Vorgehensmodellen Bernhard Fischer Fischer Consulting GmbH MedConf 2009 Folie 1 Wie soll Software entwickelt werden? MedConf 2009 Folie

Mehr

RE-Metriken in SCRUM. Michael Mainik

RE-Metriken in SCRUM. Michael Mainik RE-Metriken in SCRUM Michael Mainik Inhalt Agile Methoden Was ist SCRUM? Eine kurze Wiederholung Metriken Burn Down Graph Richtig schätzen Running Tested Features WBS/ Earned Business Value Business Value

Mehr

Agiles Projektmanagement - auch geeignet für Nicht-IT-Projekte? PMI Prof. Dr.-Ing. Holger Günzel 14.09.2012

Agiles Projektmanagement - auch geeignet für Nicht-IT-Projekte? PMI Prof. Dr.-Ing. Holger Günzel 14.09.2012 Agiles Projektmanagement - auch geeignet für Nicht-IT-Projekte? PMI Prof. Dr.-Ing. Holger Günzel Verglühte die Raumfähre Columbia durch einen unflexiblen Projektmanagementprozess? Rückblick: 2003 verglühte

Mehr

Wie viel Geschäftsprozess verträgt agile Softwareentwicklung?

Wie viel Geschäftsprozess verträgt agile Softwareentwicklung? @LeanAgileScrum #LASZH LAS Conference 2012 Sponsoren Wie viel Geschäftsprozess verträgt agile Softwareentwicklung? Marcus Winteroll 16:15 Auditorium Organisationsteam Patrick Baumgartner (Swiftmind GmbH)

Mehr

Einführung in SCRUM. Helge Baier 21.01.2010

Einführung in SCRUM. Helge Baier 21.01.2010 Einführung in SCRUM Helge Baier 21.01.2010 Helge Baier Master of Computer Science (Software Engineering) über 10 Jahre Erfahrung in der Software Entwicklung Zertifizierung zum Scrum Master (2009) praktische

Mehr

Das Who s Who der agilen Methoden Golo Roden

Das Who s Who der agilen Methoden Golo Roden Das Who s Who der agilen Methoden Golo Roden www.goloroden.de www.des-eisbaeren-blog.de Über mich > Wissensvermittler und Technologieberater >.NET, Codequalität und agile Methoden > MVP für C#, zweifacher

Mehr

Extremes Programmieren

Extremes Programmieren Extremes Programmieren Übersicht, Demonstration, Erfahrungen ACM/GI Regionalgruppe Hamburg, 16.3.2001 Frank Westphal unabhängiger Berater westphal@acm.org http://www.frankwestphal.de Tammo Freese OFFIS,

Mehr

READY-STEADY-DONE! Der Product Owner are you READY for agile?!

READY-STEADY-DONE! Der Product Owner are you READY for agile?! READY-STEADY-DONE! Der Product Owner are you READY for agile?! Susanne Mühlbauer HOOD GmbH Büro München Keltenring 7 82041 Oberhaching Germany Tel: 0049 89 4512 53 0 www.hood-group.com -1- Neue Ideen sind

Mehr

Der Business Analyst in der Rolle des agilen Product Owners

Der Business Analyst in der Rolle des agilen Product Owners Der Business Analyst in der Rolle des agilen Owners HOOD GmbH Susanne Mühlbauer Büro München Keltenring 7 82041 Oberhaching Germany Tel: 0049 89 4512 53 0 www.hood-group.com -1- Inhalte Agile Software

Mehr

Wir erledigen alles sofort. Warum Qualität, Risikomanagement, Gebrauchstauglichkeit und Dokumentation nach jeder Iteration fertig sind.

Wir erledigen alles sofort. Warum Qualität, Risikomanagement, Gebrauchstauglichkeit und Dokumentation nach jeder Iteration fertig sind. Wir erledigen alles sofort Warum Qualität, Risikomanagement, Gebrauchstauglichkeit und Dokumentation nach jeder Iteration fertig sind. agilecoach.de Marc Bless Agiler Coach agilecoach.de Frage Wer hat

Mehr

Lösungen zum Test objektorientierter Software

Lösungen zum Test objektorientierter Software Lösungen zum Test objektorientierter Software Pieter van den Hombergh Fontys Hogeschool voor Techniek en Logistiek Software Engineering 14. März 2013 HOM/FHTeL Lösungen zum Test objektorientierter Software

Mehr

Agiles Projektmanagement. erklärt in 30 Minuten! IT-Forum Agiles Projektmanagement, NIK 29. Juni 2011. Thomas Hemmer

Agiles Projektmanagement. erklärt in 30 Minuten! IT-Forum Agiles Projektmanagement, NIK 29. Juni 2011. Thomas Hemmer Agiles Projektmanagement erklärt in 30 Minuten! IT-Forum Agiles Projektmanagement, NIK 29. Juni 2011 Thomas Hemmer Chief Technology Officer thomas.hemmer@conplement.de conplement AG, Nürnberg 2 conplement

Mehr

Wie funktioniert agile Software-

Wie funktioniert agile Software- Wie funktioniert agile Software- Entwicklung mit SCRUM Zürich, 8. Mai 008 Jean-Pierre König, namics ag Software Engineer Bern, Frankfurt, Hamburg, München, St. Gallen, Zug, Zürich www.namics.com Agenda»

Mehr

Projekt: Requirements Engineering Sommersemester 2002. Anforderungsspezifikation im X-Treme Programming

Projekt: Requirements Engineering Sommersemester 2002. Anforderungsspezifikation im X-Treme Programming Projekt: Requirements Engineering Sommersemester 2002 Vortrag von Bernd Simmchen Anforderungsspezifikation im X-Treme Programming Gliederung 1 XP Eine kurze Einführung 2 Anforderungsspezifikation Klassisch

Mehr

Praktische Erfahrungen beim Einsatz des Vorgehensmodells "SCRUM" bei AGFA HealthCare

Praktische Erfahrungen beim Einsatz des Vorgehensmodells SCRUM bei AGFA HealthCare Praktische Erfahrungen beim Einsatz des Vorgehensmodells "SCRUM" bei AGFA HealthCare SCRUM Praktische Erfahrungen beim Einsatz des Vorgehensmodells "SCRUM" eines Entwicklerteams von AGFA HealthCare 2 Praktische

Mehr

SCRUM. Scrum in der Software Entwicklung. von Ernst Fastl

SCRUM. Scrum in der Software Entwicklung. von Ernst Fastl SCRUM Scrum in der Software Entwicklung von Ernst Fastl Agenda 1. Die Entstehung von Scrum 2. Überblick über den Prozess 3. Rollen 4. Meetings 5. Artefakte 6. Fragen & Antworten Agenda 1. Die Entstehung

Mehr

Ganzheitliches IT-Projektmanagement

Ganzheitliches IT-Projektmanagement Ganzheitliches IT-Projektmanagement Kapitel 2 nach dem Buch: Ruf, Walter; Fittkau, Thomas: "Ganzheitliches IT-Projektmanagement" Wissen - Praxis - Anwendungen R. Oldenbourg Verlag München - Wien 2008;

Mehr

Gelebtes Scrum. Weg vom Management hin zur Führung

Gelebtes Scrum. Weg vom Management hin zur Führung Gelebtes Scrum Weg vom Management hin zur Führung Herausforderungen Was ist Scrum? Wer? Pigs Chicken Bild: http://www.implementingscrum.com/ Nein Danke, ich würde da voll drinstecken, aber du wärest

Mehr

Scrum E I N F Ü H R U N G

Scrum E I N F Ü H R U N G Scrum EINFÜHRUNG Was ist Scrum? Agiles Vorgehensmodell Grundüberzeugungen Erste Tendenzen Mitte der 80er Jahre Grundidee: Entwickeln in Inkrementen Parallelen zur Lean Production Agiles Manifest Jeff Sutherland

Mehr

Agile Methoden bei der Entwicklung medizinischer Software

Agile Methoden bei der Entwicklung medizinischer Software Agile Methoden bei der Entwicklung medizinischer Software Bernhard Fischer Fischer Consulting GmbH Fischer Consulting GmbH Technologie-Forum 2008 Folie 1 Wie soll Software entwickelt werden? Fischer Consulting

Mehr

Agile Softwareentwicklung mit Scrum

Agile Softwareentwicklung mit Scrum Agile Softwareentwicklung mit Scrum Einführung und Überblick zum agilen Softwareentwicklungsprozess Scrum März 2006 Robert Schmelzer, DI(FH) E-Mail: robert@schmelzer.cc Web: http://www.schmelzer.cc Einführung

Mehr

Hilfe, mein SCRUM-Team ist nicht agil!

Hilfe, mein SCRUM-Team ist nicht agil! Hilfe, mein SCRUM-Team ist nicht agil! Einleitung: Laut unserer Erfahrung gibt es doch diverse unagile SCRUM-Teams in freier Wildbahn. Denn SCRUM ist zwar eine tolle Sache, macht aber nicht zwangsläufig

Mehr

extreme Programming (XP)

extreme Programming (XP) Softwaretechnik SS2005 Tobias Giese Masterstudiengang Informatik HS-Harz Agenda Allgemeines Vorgehensmodell Kommunikation und Arbeitsphilosophie Entwicklungsphasen / Extreme Rules Planung Entwurf Implementierung

Mehr

Klassische vs. agile Methoden der Softwareentwicklung

Klassische vs. agile Methoden der Softwareentwicklung Klassische vs. agile Methoden der Softwareentwicklung Vorgetragen am 03. November 2004 durch Jonathan Weiss Emel Tan Erstellt für SWT Methoden und Werkzeuge zur Softwareproduktion Agenda I. Einleitung

Mehr

Requirements Engineering für die agile Softwareentwicklung

Requirements Engineering für die agile Softwareentwicklung Johannes Bergsmann Requirements Engineering für die agile Softwareentwicklung Methoden, Techniken und Strategien Unter Mitwirkung von Markus Unterauer dpunkt.verlag Inhaltsverzeichnis 1 Einleitung 1 1.1

Mehr

Markus Schramm compeople AG Frankfurt

Markus Schramm compeople AG Frankfurt Markus Schramm compeople AG Frankfurt Scrum kurz vorgestellt Bedeutung für agile Teams Kompetenzen und Zuständigkeiten Zusammenhang mit Softskills Transition Markus Schramm compeople AG 2 Individuen und

Mehr

Compact Scrum Guide. Agile Coach / Business Consultant @ Prowareness Contact: o.mann@prowareness.de, 0176-52845680

Compact Scrum Guide. Agile Coach / Business Consultant @ Prowareness Contact: o.mann@prowareness.de, 0176-52845680 Compact Scrum Guide Author: Oliver Mann, Role: Agile Coach / Business Consultant @ Prowareness Contact: o.mann@prowareness.de, 0176-52845680 Compact Scrum Guide Inhalt 1. Was ist Scrum und wofür wird es

Mehr

2 Überblick über den Scrum-Ablauf, die Rollen, Meetings, Artefakte und Prinzipien 17

2 Überblick über den Scrum-Ablauf, die Rollen, Meetings, Artefakte und Prinzipien 17 xiii 1 Historie, Vorteile und Eignung von Scrum 1 1.1 Historie............................................... 1 1.1.1 Scrum-Teams nach Nonaka und Takeuchi.............. 1 1.1.2 Erste Scrum-Projekte in

Mehr

3. Vorgehensmethoden/Prozessmodelle

3. Vorgehensmethoden/Prozessmodelle 3. Vorgehensmethoden/Prozessmodelle Vorgehensmethode/Prozessmodell: Ablauforganisation des Projektes für eine effektive und zielgerichtete Softwareentwicklung Wasserfallmodell Spiralmodell Agiles Vorgehen

Mehr

Soft Skills als Erfolgsfaktoren im anforderungsorientierten, agilen Projektmanagement am Beispiel der IT- Softwareentwicklung

Soft Skills als Erfolgsfaktoren im anforderungsorientierten, agilen Projektmanagement am Beispiel der IT- Softwareentwicklung Soft Skills als Erfolgsfaktoren im anforderungsorientierten, agilen Projektmanagement am Beispiel der IT- Softwareentwicklung Moderatorin: Sabine Bernecker- Bendixen sof- IT & Personal Best! www.sof- it.de

Mehr

XP, Scrum, Crystal, FDD:

XP, Scrum, Crystal, FDD: XP, Scrum, Crystal, FDD: Welche agile Methode passt zu uns? Henning Wolf Christoph Kemp Was ist Agilität? Teil 1: Das agile Manifest We are uncovering better ways of developing software by doing it and

Mehr

Agile Softwareentwicklung

Agile Softwareentwicklung Agile Softwareentwicklung Werte, Konzepte und Methoden von Wolf-Gideon Bleek, Henning Wolf 2., aktualisierte und erweiterte Auflage Agile Softwareentwicklung Bleek / Wolf schnell und portofrei erhältlich

Mehr

Sind wir nicht alle ein bisschen agil? Dipl.-Inform. Tammo Freese xpdays, Karlsruhe, 22. November 2004

Sind wir nicht alle ein bisschen agil? Dipl.-Inform. Tammo Freese xpdays, Karlsruhe, 22. November 2004 Sind wir nicht alle ein bisschen agil? Dipl.-Inform. Tammo Freese xpdays, Karlsruhe, 22. November 2004 Das Manifest der agilen Softwareentwicklung Ähnliche Werte bei XP, ASD, Crystal, DSDM, FDD, Scrum,...

Mehr

Agiles EAM. Agiles Enterprise Architecture Management. Mit Weitsicht zur Übersicht. Matthias Heinl Senior Consultant IT-Architekturen IT-Strategien

Agiles EAM. Agiles Enterprise Architecture Management. Mit Weitsicht zur Übersicht. Matthias Heinl Senior Consultant IT-Architekturen IT-Strategien Agiles EAM Agiles Enterprise Architecture Management Mit Weitsicht zur Übersicht Matthias Heinl Senior Consultant IT-Architekturen IT-Strategien coniatos AG IT-Management Consulting Wiesbaden Agenda Einleitung

Mehr

Agile Embedded Projekte mit Scrum & Kanban. Embedded Computing Conference 2012 Urs Böhm

Agile Embedded Projekte mit Scrum & Kanban. Embedded Computing Conference 2012 Urs Böhm Agile Embedded Projekte mit Scrum & Kanban Embedded Computing Conference 2012 Urs Böhm Der Ingenieur Urs Böhm Dipl.-Ingenieur Elektrotechnik Projektingenieur VDI Certified ScrumMaster urs.boehm@noser.com

Mehr

Extreme Programming. Referat von Viktoria Schwarzhaupt und Andrea Schuhmann

Extreme Programming. Referat von Viktoria Schwarzhaupt und Andrea Schuhmann Extreme Programming Referat von Viktoria Schwarzhaupt und Andrea Schuhmann 1. Was ist XP - Prozessmodell für die objektorientierte Softwareentwicklung - leichter Softwareentwicklungsprozess Analyse Design

Mehr

Agiles Testmanagement am Beispiel Scrum

Agiles Testmanagement am Beispiel Scrum Agiles Testmanagement am Beispiel Scrum SEQIS Software Testing Know-How Weitere Termine 16. September Testmanagement mit externen Partnern 21.Oktober Software unter Druck: Erfolgsfaktoren bei Last- und

Mehr

SCRUM. Agile Softwareentwicklung mit Scrum Semesterprojekt: Zug um Zug

SCRUM. Agile Softwareentwicklung mit Scrum Semesterprojekt: Zug um Zug SCRUM Agile Softwareentwicklung mit Scrum Semesterprojekt: Zug um Zug Rollen Product Owner (WIR): Definition von Produkt-Features (User Stories) Priorisieren der Features für die nächsten Sprints Scrum

Mehr

Softwareentwicklungsprozesse optimieren. wie Sie die Vorteile klassischer und agiler Methoden erfolgreich kombinieren

Softwareentwicklungsprozesse optimieren. wie Sie die Vorteile klassischer und agiler Methoden erfolgreich kombinieren Softwareentwicklungsprozesse optimieren wie Sie die Vorteile klassischer und agiler Methoden erfolgreich kombinieren Dipl.-Inform. Dipl.-Math. Wolfhart Grote Software Ring e. G., Erlangen 25. Oktober 2007

Mehr

Lean, Agile & Scrum. Josef Scherer. Sponsoren. Agilität Scrum Grundlagen Erfahrungsaustausch. 10:30 12:00, ETH Zürich, E6

Lean, Agile & Scrum. Josef Scherer. Sponsoren. Agilität Scrum Grundlagen Erfahrungsaustausch. 10:30 12:00, ETH Zürich, E6 Lean, Agile & Scrum Conference Sponsoren Josef Scherer Scrum für Einsteiger Agilität Scrum Grundlagen Erfahrungsaustausch 10:30 12:00, ETH Zürich, E6 Vorstellung Erfahrung fh mit Scrum? Agile Kultur Agiles

Mehr