Agile Geschäftsprozeßanalyse (GPA), objektorientierte Analyse & Design (OOA/D) am Beispiel einer Seminarverwaltung

Größe: px
Ab Seite anzeigen:

Download "Agile Geschäftsprozeßanalyse (GPA), objektorientierte Analyse & Design (OOA/D) am Beispiel einer Seminarverwaltung"

Transkript

1 Vortrag am Dienstag, 10. März 2009 Thema Agile Geschäftsprozeßanalyse (GPA), objektorientierte Analyse & Design (OOA/D) am Beispiel einer Seminarverwaltung Referent Dr. Frank Dopatka, GFU Cyrus AG Inhalt Das der GFU ( Ist-Zustand bis 2008 ) GPA/OOA: Story Cards, Use Cases, Aktivitäten, Objekte & Klassen, CRC-Karten, Risk/Value-Priorisierung, Planning Poker : Klassen-, Zustands- & Sequenz-Diagramme : Test Driven Development, Feature Driven Development, Scrum, Pair-Programming, Continous Integration der ideale Ziel ist eine Übersicht über alle Notationen/Verfahren & deren Verzahnung zu erkennen!

2 Das Was existierte bislang? Die GFU Cyrus AG verwendete von 1988 bis Ende 2008 ein in Cobol selbst geschriebenes Programm zur Verwaltung der Kunden, deren Ansprechpartner und zur Dokumentation der Kommunikation von GFU-Mitarbeitern mit den Kunden (Vorgänge). Auch zur Fakturierung verwendet. Über eine Kalenderfunktion wurden die Seminare, Anmeldungen von Teilnehmern, Hotel- & Parkplatzbelegung verwaltet. Folie 4

3 Was existierte bislang? Angebote: in den letzten Jahren in MS Word 97 erstellt Zusätzlich: 8 Jahre altes Programm zur Seminarverwaltung, das in VB6 geschrieben wurde Abgleich mit den Internet-Daten Folie 5 So sah die Kundenverwaltung & Fakturierung aus... Folie 6

4 So sah die Seminarverwaltung aus... Folie 7 Was soll verbessert werden? Das Cobol-Programm berechnet ab 2009 die Kalenderwochen falsch, eine Anpassung ist schwierig im Quellcode durchzuführen. Die Fakturierung soll automatisiert werden. Da keine relat. DB-Struktur verwendet wurde, waren Statistiken über Kurserfolge schwierig, z.b. Gewinn aus Schulungen der Kategorie Java ermitteln. Es sind im Cobol-Programm alte Funktionen vorhanden, die nicht mehr verwendet werden, u.a. - Verwaltung von Lizenznummern und - Verwaltung von Update-Abos...aus Zeiten, in denen bei der GFU noch Cobol-Compiler verkauft wurden. Folie 8

5 Was wird im Vortrag behandelt? Im Folgenden wird exemplarisch gezeigt, wie man mit einer Geschäftsprozeß-Analyse (GPA) einer Objektorientierten Alalyse (OOA) und einem Objektorientierten Design () einen Lösungsansatz für die zu erstellende Software ermitteln kann. Im Fokus steht dabei der Zusammenhang der verschiedenen UML-Diagramme, deren Blickwinkel sowie die Anwendung agiler Methoden bei der Softwareentwicklung. Folie 9 GPA & Story Cards

6 Was macht man in der GPA & OOA? In der Analyse geht es darum, die Anforderungen zu erfassen: Fakten sammeln, darstellen, prüfen Objektorientierte Analysemodell: - fachliche Beschreibung mit OO-Konzepten -hebt das Wesentliche hervor und lässt Unwichtiges weg Bezug zur Informationstechnik ist unerwünscht! OOA-Modell sollte statische & dynamische Aspekte enthalten ( Datenstrukturen & Abläufe) Folie 11 Was sind Story Cards? User Story ( Benutzergeschichte ): - eine in Alltagssprache formulierte Software- Anforderung - bewusst kurz gehalten: nicht mehr als zwei Sätze Jede User Story wird auf eine Story Card geschrieben. Autor: Kunde bzw. User Die Story Card ist die wichtigste Methode, um ein agiles Projekt zu steuern! Aus den Story Cards entwickeln sich in kooperativer Zusammenarbeit mit dem Kunden die Use Cases Workshops Folie 12

7 Inhalt einer Story Card Datum, fortlaufende Nummer Nummer der übergeordneten Story Card Aktivität: neu / Fehler beheben / Funktion erweitern Funktion umgesetzt Priorität (Kunde/) Risiko & Aufwandschätzung kurze, präzise Beschreibung Notizen aktueller Fortschritt: Datum, Status, Aufgabe, Kommentar Folie 13 Exemplarische Story Card: Seminarverwaltung

8 Use Cases Was genau sind Use Cases (Anwendungsfälle)? Interaktion zwischen Akteuren und dem betrachteten System: Dabei soll ein fachliches Ziel erreicht werden! Grafisches UML Use Case: Identifikation der Funktion & der beteiligten Akteure im Vordergrund Informationsgehalt eines graphischen Use Cases ist gering! Use Case Schablone Verlauf textuell beschreiben Bezug zum Geschäftsprozeß Basis kann Story Card sein! Folie 16

9 Perspektiven Use Cases können (wie auch alle anderen UML- Diagramme) in verschiedenen Abstraktions-Ebenen erstellt werden: Wolke Manager-View Drachen Meeres-Spiegel User-View Muschel Fisch Entwickler-View Folie 17 Exemplarischer grafischer Use Case der Seminarverwaltung (Manager-View) Folie 18

10 Etwas detailliertere Darstellung des Use Cases Seminare verwalten Folie 19 Exemplarischer textueller Use Case der Seminarverwaltung Buchen eines Seminars Ziel: Anmeldebestätigung an den Kunden geschickt. Vorbedingung: --- Nachbedingung Erfolg: Kunde ist angemeldet. Nachbedingung Fehlschlag: Mitteilung an Kunden, dass Veranstaltung ausgebucht ist, ausfällt oder nicht existiert. Akteure: Kunde, GFU-MA Auslösendes Ereignis: Anmeldung des Kunden liegt vor. Beschreibung: 1. Kundendaten abrufen 2. Seminar prüfen 3. Anmeldebestätigung erstellen Erweiterung: 1a. Kundendaten aktualisieren 1b. Wenn Kunde MA einer Firma ist, Firmendaten erfassen bzw. wenn vorhanden, dann abrufen und aktualisieren 1c. Zahlungsmoral prüfen Alternativen: 1a. Neukunden erfassen, wenn Kunde noch nicht existiert 1b. Auf alternative Veranstaltungen hinweisen, wenn ausgebucht 1c. Mitteilung Falsche Veranstaltung, falls Veranstaltung nicht existiert und auch nichts ähnliches

11 Aktivitäten, Szenarien & Geschäftsabläufe Wozu Aktivitäts-Diagramme? Geben die Struktur eines Prozesses als Fluss dynamisch wider Heben den Steuerungsfluss von Objekten im Geschäftsprozeß untereinander hervor Werden typischerweise aufgestellt, wenn die Use Cases fertig sind Ziel: grundsätzliche Abläufe darstellen Überschneidung der Ansicht zu einem textuellen Use Case ist groß Alternativ dazu anwenden?! Folie 22

12 Was ist ein Szenario? Eine spezifische Sequenz von Aktionen, die das Verhalten des Systems unter bestimmten Bedingungen beschreibt, z.b.: Login Bestellvorgang Rechnungsstellung Auszahlung von Geld Angebotserstellung Im Allgemeinen: Einen Geschäftsprozess des Unternehmens! Bei der Entwicklung werden alle wichtigen Szenarien in Aktivitäts-Diagrammen fest gehalten. Folie 23 Aktivitäts-Diagramm der Seminarverwaltung: erfolgreiche Anmeldung Kunde 1 Suchbegriff Java Einsteiger in die GFU-Seite eingegeben Seminar auswählen Seminarverwaltung Liste der Seminare zurückgeben pers. Daten eingeben Buchung abschicken :Seminar [status: buchend] [AnzTN=MaxTN-1] Daten prüfen und ggf. abgleichen :Seminar [status: ausgebucht] [AnzTN=MaxTN] Bestätigung der Buchung senden Folie 24

13 Aktivitäts-Diagramm der Seminarverwaltung: fehlerhafte Anmeldung Folie 25 Objekte & Klassen in der Analyse

14 Warum noch Objekt-Diagramme? Objekt-Diagramme besitzen die gleiche Notation wie Klassen-Diagramme, stellen aber konkrete Beispiele/Instanzen dar: - derfrank: Dopatka, Frank, Schmiedeweg,... Kunde: Name, Vorname, Strasse,... In der Praxis als erster Schritt der Analyse leicht verständlich, da anwendungsnah Klassen: Abstraktionen der Objekte auf höherem Niveau! Folie 27 Warum Klassen-Diagramme in der Analyse? Klassen-Diagramme existieren vereinfacht in einer Analyse-Form: Identifikation der Klassen und deren Beziehung zueinander im Vordergrund! Klassen und deren Beziehungen orientieren sich am Geschäftsprozeß nicht plötzlich falsch Beziehungen: textuell beschrieben Folie 28

15 Exemplarisches Objekt-Diagramm: ein Seminar Folie 29 Exemplarisches Objekt-Diagramm: Bezug eines Seminars zu anderen Objekten Folie 30

16 Ausschnitt aus einem Klassen-Diagramm (OOA) der Seminarverwaltung Folie 31 CRC-Karten

17 Wie kommt man an die Objekte & Klassen? Durch Erfahrung! Indem Sie in Gesprächen und Beschreibungen achten auf: - nicht-triviale Hauptwörter (Raum, Kunde,...) Klassen - triviale Hauptwörter, die durch einzelne Zeichenketten, Zahlen oder wahr/falsch darstellbar sind (Name, Mail-Adresse,...) Attribute - Verben (anlegen, buchen, suchen, stornieren,...) Methoden - Ausdrücke wie ist ein bzw. besteht aus Vererbung bzw. Aggregation oder Komposition Folie 33 Was ist eine CRC-Karte? Prinzip einer Class-Responsibility-Collaboration- Karte: für jede Klasse eine Karteikarte erstellen & auf dieser deren Eigenschaften zu notieren Eine solche Karte besteht aus folgenden Bereichen: - Name der Klasse - Aufgaben der Klasse, mit denen die beschriebene Klasse zusammenarbeitet - Rückseite: wichtigste Attribute und Methoden Folie 34

18 Vorteile der CRC-Karten Einfache Handhabung: Problemlos Informationen hinzufügen oder streichen Unabhängig von Programmiersprachen & Tools begrenzte Platz auf die wesentlichen Aufgaben einer Klasse konzentrieren Folie 35 Vorgehensweise Mit dem Kunden typische Anwendungsfälle definieren Use Cases Anwendungsfälle nacheinander durchspielen Aktivitäten Auf den CRC-Karten neue Aufgaben und Partnerklassen festhalten Mit der Zeit ergibt sich ein vollständiges Bild. Wichtig: - Untersuchung aller typischen Anwendungsfälle & Szenarien - Festhalten aller Details Folie 36

19 Beispielhafte CRC-Karte Seminar Klasse Seminar Seminar Aufgaben: Erstellen und verwalten von Seminaren und deren Inhalten. Man soll Seminare suchen können und im Internet veröffentlichen. Man kann sich anmelden, solange die max. TN-Tahl nicht erreicht ist. Abmelden geht auch jederzeit. Die GFU kann notfalls ein Seminar auch stornieren, wenn keine Anmeldung vorliegt oder der geplante Dozent krank ist und kein Ersatz gefunden werden konnte. Partnerklassen: Seminarverwaltung, Rechnung, Termin -> (Raum, Dozent, Anmeldungen -> (Teilnehmer)) Risk-Value Priorisierung & Planning Poker

20 Was wird wie priorisiert & welche Konsequenzen ergeben sich? Bereits bei den Story Cards wurden die Begriffe Priorität, Risiko und Aufwandschätzung für jede Funktionalität (Use Case) erwähnt. Jetzt wissen alle Beteiligten bereits mehr über die Funktionen & Abläufe. So langsam können Sie folgende Fragen beantworten... Folie 39 Was wird wie priorisiert & welche Konsequenzen ergeben sich? Wie wichtig ist unserem Kunden diese Funktionalität? Punkte K Wie wichtig sehen die die Integration der Funktionalität im Kontext der Anwendung?* Punkte P Wie sehen die die Schwierigkeit der technischen Umsetzung (Risiko) der Funktion?* Punkte S Wie (zeit-)aufwendig sehen die die Umsetzung?* Schätzverfahren COCOMO, Lines Of Code, Function Points Preis dieser Funktion * basierend auf ihrer Projekterfahrung Folie 40

21 Womit fängt man jetzt an? K+P: 0-6 S: 0-3 K+P: S: 6-10 K+P: S: 0-3 Man beginnt mit dem höchsten Risiko und dem höchsten Wert! Folie 41 Exemplarische Priorisierung aus der Seminarverwaltung Planning Poker: Zusammen mit dem Kunden die nächsten Schritte planen! Wie detailliert? vgl. eine Scrum-Aufgabe <16 Mannstunden Folie 42

22 Klassen im Design Von den Klassen zum Code In der Design-Form beinhalten Klassen-Diagramme alle notwendigen Methoden und Attribute. mit Modellierungs-Werkzeuge Java- oder C#-Coderümpfe generieren Nur noch mit Funktionalität füllen Auch Beziehungen zwischen Klassen wie ein Kunde hat n Rechnungen können automatisch in Java-Collections abgebildet werden; u.a. mit ObjectIf von MicroTool Folie 44

23 Von den Klassen zum Code Folie 45 Beispiel: Together Edition for SAP NetWeaver Developer Studio

24 Einige Klassen im Design aus der Seminarverwaltung Seminarverwaltung - Seminare: ArrayList - instance: Seminarverwaltung + getinstance(): Seminarverwaltung + suche (String Inhalt): Seminar + suche (Long ID): Seminar... * Seminar - ID: Long - Zustand: Enum {existiert, buchend, ausgebucht, durchgeführt, storniert, gelöscht} - Kurzbeschreibung: String - Inhalt: String - SeminarZiel: String - Ort: String - Dauer: Byte - minanztn: Byte - maxanztn: Byte -Preis: Decimal + Daten anzeigen (): String + Daten aktualisieren (Date von,...): String + anmelden (Termin T, Teilnehmer TN) + abmelden (Termin T, Teilnehmer TN) + stornieren (Termin T) + entfallen (Termin T) + Termin hinzufügen(date von, Date bis) Folie Seminar-Termin -von: Date - bis: Date + DozentZuweisen (Dozent d) + RaumZuweisen (Raum r)... * 0: individuelles In-House Seminar Zustands-Diagramme

25 Wieso noch Zustandsdiagramme? Sicht auf alle möglichen Zustände eines Objektes bezieht sich auf genau eine Klasse Zustandsübergänge treten i.d.r. dadurch auf, dass das betreffende Objekt angetriggert wird Methodenaufruf Prinzipiell kann jede Methode eines Objektes jederzeit aufgerufen werden: Methodenaufruf Y im Zustand X erlaubt??? Zustandsdiagramm wenn nicht erlaubt Exception Folie 49 Sichere Automaten! Vollständige Zustandsautomaten... Robustheit der Software: im Alltag werden oft einzelne Methodenaufrufe in bestimmten Zuständen vergessen Ein Objekt ist gegen seinen Zustandsautomaten testbar Folie 50

26 Zustands-Diagramm aus der Seminarverwaltung Ein Objekt der Klasse Seminar : Folie 51 Sequenz-Diagramme

27 Aktivitäten vs. Sequenzen Aktivitäts-Diagrammen: Abläufe aus Sicht des Geschäftsprozesses mit deren Zuständigkeiten modelliert Fachliches Modell Nun wurden bereits Klassen, deren Methoden und Beziehung ermittelt... Sequenz-Diagramm: Darstellung des technisch modellierten Ablaufs darstellen Technisches Modell Ablauf von Nachrichten von Objekten untereinander durch gegenseitige Methoden- Aufrufe Auslöser: Akteur, der einen Use-Case initiiert Sequenz-Diagramm aus der Seminarverwaltung: Buchung vornehmen

28 Test Driven Development & Feature Driven Development Was ist Testgetriebene Entwicklung? Ziel: Software-Tests vor den zu testenden Komponenten erstellen! Erstellte Unit-Tests sind Grey-Box-Tests statt klassischer White-Box-Tests Unit-Tests und mit ihnen getestete Units werden stets parallel entwickelt. eigentliche Programmierung in kleinen & wiederholten Schritten eine Iteration (Dauer: wenige Minuten) hat drei Hauptteile: Folie 56

29 Was ist Testgetriebene Entwicklung? 1. Schreiben Sie einen Test für das erwünschte fehlerfreie Verhalten, das implementiert werden soll. Dieser Test wird erst einmal nicht erfüllt bzw. es gibt den Code gibt es noch gar nicht. 2. Änderen/schreiben Sie den Code mit möglichst wenig Aufwand, bis nach dem anschließend angestoßenen Testdurchlauf alle Tests bestanden werden. 3. Räumen Sie im Code auf (Refactoring): - Wiederholungen entfernen - Code abstrahieren - Code nach Konventionen ausrichten testen! Folie 57 Test-Entwurf aus der Seminarverwaltung Test: Seminar anlegen Vorbedingung: --- prüfbare Nachbedingung Erfolg: Seminar wurde mit seinen Daten in der Seminarverwaltung aufgenommen und eine neue Seminar-ID wurde vergeben. Nachbedingung erwarteter Fehlschlag: Seminar mit diesem Titel existiert bereits. Test: Seminar buchen Vorbedingung: Seminar existriert bereits und ist zum gewählten Termin nicht ausgebucht prüfbare Nachbedingung Erfolg: Kunde wurde als TN in die Liste der TN zum gewählten Termin aufgenommen Nachbedingung erwarteter Fehlschlag: Meldung Nicht möglich: Kunde hat noch >3 offene Rechnungen! Folie 58

30 Was ist Feature-getriebene Entwicklung? FDD wird eingesetzt, um ein (großes) zeitkritisches Projekt (z.b. 15 Monate, 50 Entwickler) durchzuführen. Jedes Feature stellt einen Mehrwert für den Kunden dar. Die Entwicklung wird anhand eines Feature-Plans organisiert. Eine wichtige Rolle spielt der Chef-Architekt, der ständig den Überblick über die Gesamtarchitektur und die fachlichen Kernmodelle behält. Folie 59 Prozesse der Feature-getriebenen Entwicklung 1. Entwicklen Sie ein Gesamtmodell: - Konsens über Inhalt und Umfang des zu entwickelnden Systems - fachliche Kernmodell grobe Use Cases 2. Erstellen Sie eine Feature-Liste: - nach dem einfachen Schema <Aktion> <Ergebnis> <Objekt> - Bsp.: Berechne Gesamtsumme der Verkäufe - max. zwei Wochen zur Realisierung Risk/Value & Planning Poker Folie 60

31 Prozesse der Feature-getriebenen Entwicklung 3. Planen Sie jedes Feature - Reihenfolge der Realisierung festlegen - Fertigstellungstermine je Geschäftsaktivität - Projektleiter, Entwicklungsleiter sowie Senior- beteiligt 4. Entwurf jedes Features - Entwicklerteams zuweisen - Erstellung von Sequenz-Diagrammen - erste Klassen- und Methodenrümpfe 5. Ausprogrammierung der Features & TDD Folie 61 Scrum

32 Was ist Scrum? Das Gedränge : agiles Vorgehensmodell Meetings, Artefakten, Rollen & Werten folgt dem Prinzip der Schlanken Produktion (lean production) Teammitglieder organisieren ihre Arbeit weitgehend selbst & wählen auch die eingesetzten Entwicklungswerkzeuge und -Methoden Entwicklung ist sehr komplex im Voraus weder in große abgeschlossene Phasen noch in einzelne Arbeitsschritte (Granularität von Mannstunden) planbar Selbst-Organisation! Folie 63 Grundlegende Begriffe des Scrum Zentrales Element ist der Sprint: Umsetzung einer Iteration (ca. 30 Tage) Vor dem Sprint: Produkt-Anforderungen des Kunden in einem Product Backlog sammeln beinhaltet alle Funktionalitäten, die der Kunde wünscht Priorisierung der Funktionen Hoch priorisierte Features: von den Entwicklern im Aufwand geschätzt ins Sprint Backlog übernehmen: - enthält alle Aufgaben, um das Ziel des Sprints zu erfüllen - eine Aufgabe: < 16 Stunden - längere Aufgaben: in Teilaufgaben zerlegen

33 Meetings, Review & Retrospektive Täglich: Daily Scrum Meeting (max. 15min.) Team stellt sich gegenseitig folgende Fragen: Bist du gestern mit dem fertig geworden, was du dir vorgenommen hast? Welche Aufgaben wirst du bis zum nächsten Meeting bearbeiten? Gibt es ein Problem, das dich blockiert? Meetings, Review & Retrospektive Nach einem Sprint: Ergebnis einem informellen Review unterziehen: Team & Kunden Ergebnis des Sprints (laufende Software) vorführen Kunde prüft, ob das Sprint-Ergebnis seinen Anforderungen entspricht: Änderungswünsche Product Backlog Folie 66

34 Meetings, Review & Retrospektive Retrospektive: zurückliegende Sprint-Phase betrachten; zunächst wertfreien Rückblick auf die Ereignisse Teilnehmer notieren die wichtigen Ereignisse auf Zetteln. Anschließend schreiben die Teilnehmer Antworten auf die Fragen - Was war gut? (Best practice) - Was könnte verbessert werden? (Verbesserungspotential) Jedes Verbesserungspotential wird priorisiert und mit Zuständigkeiten versehen. Folie 67 Pair Programming

35 Wie funktioniert Pair Programming? jeweils zwei an einem Rechner einer schreibt den Code, der andere: - nachdenken über die Problemstellungen -Code kontrollieren Probleme sofort ansprechen sofort lösen Rollen abwechseln & Zusammensetzung der Paare häufig ändern Ziel: Erhöhung der Software-Qualität Folie 69 Vorteile des Pair Programming Höhere Disziplin: Paare entwickeln eher an der richtigen Stelle & machen kürzere Pausen Besserer Code: Man entwickelt man sich weniger leicht in Sackgassen. Höhere Moral: spannender & interessanter als alleine Collective Code Ownership: alle erlangen Wissen über die gesamte Codebasis, die gemeinsam erstellt wurde Folie 70

36 Vorteile des Pair Programming Mentoring: Jeder hat Wissen, das andere nicht haben. einfache Wissensverbreitung Team-Bildung: Leute lernen sich gegenseitig schneller kennen Zusammenarbeit verbessert Weniger Unterbrechungen: Paare werden seltener unterbrochen. Folie 71 Continous Integration

37 Motivation Unit-und Modul-Tests... mit Werkzeugen wie JUnit mitlerweile automatisiert erstellbar! Wie können höhere Tests - z.b. Integrationstest, gehandhabt werden???? Motivation Gerade wenn bei der Integration der Komponenten Design-Fehler entdeckt werden, ist dies entsprechend teuer! Folie 74

38 Die Idee der Continous Integration Kontinuierliche Integration: regelmäßiges, vollständiges Neubilden & Testen einer Anwendung Änderungen in die Versionsverwaltung einchecken Gesamtsystem neu bauen & automatisch testen alle Tests erfolgreich: Änderungen an die nächste Stufe geben Tests scheitern: Änderungen zurücknehmen (Rollback) zur Korrektur vorlegen Folie 75 Werkzeuge zur Continous Integration Voraussetzung: - Versionsverwaltungssystem - zeitnahes Check-In - nur funktional vollständige Blöcke eingecheckt Das Java-basierte CruiseControl hilft bei der Umsetzung der CI: - Benachrichtigung per , - Nutzung von Apache Ant & anderen Werkzeugen - Web-Oberfläche: aktuellen und vorherigen Zustand der Software anzeigen Folie 76

39 Der ideale Kunde & Mit welchen Kunden funktionieren agile Methoden (nicht)? experimentierfreudig selbst erhebliche Ressourcen aufwenden Worin besteht das Gewek?... das durch den vereinbarten Preis erworben wird Kunde verzichtet auf formale Spezifikation und bindendes Angebot Es darf nicht die Mentalität das machen wir mal eben nebenbei vorherrschen Folie 78

40 Mit welchen Kunden funktionieren agile Methoden (nicht)? Vertreter des Kunden darf selbst nicht gezwungen sein, seinen Vorgesetzten eine - Planung im Vorfeld - Erfüllung bestimmter Funktionen zu festgelegten Terminen zu berichten "Kunde vor Ort"-Prinzip Mitarbeiter des Kunden benötigen selbst einen erheblichen Wissensumfang Sind diese Personen entbehrlich? Folie 79 Mit welchen n funktionieren agile Methoden (nicht)? : sehr gute Fähigkeiten häufige Änderungen umfangreiche fahrung geeignete Werkzeuge ausgeprägtes Ego: große Überzeugung von richtigen Lösungen Besitzdenken des geschriebenen Codes äußert: Nicht jeder kann damit umgehen, dass sein Code von anderen verändert wird Folie 80

41 Mit welchen n funktionieren agile Methoden (nicht)? XP weist eine Reihe von Merkmalen auf, - die hohe Disziplin erfordern TDD & CI, permanante Refactorings, Programmieren in Paaren - und andere, die eine gewisse Disziplinlosigkeit fördern das Auslassen von Spezifikation Folie 81 Vielen Dank für Ihre Aufmerksamkeit! Noch Fragen? Quellen des Vortrags: Wikipedia <http://de.wikipedia.org> Vorlesung Einführung in die Informatik II <http://www.bs.informatik.uni-siegen.de/www/lehre/ss09/ei2/index_html> Fowler, Scott: UML konzentriert; 2. Auflage; Addison Wesley Verlag; ISBN Helmut Balzert: Lehrbuch der Software-Technik: Software-Entwicklung; 2. Auflage; Spektrum-Verlag; ISBN Booch, Rumbaugh, Jacobson: Das UML Benutzerhandbuch; Addison-Wesley Verlag; ISBN

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

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

Unsere Kunden erzählen keine Geschichten. Ursula Meseberg microtool GmbH Berlin

Unsere Kunden erzählen keine Geschichten. Ursula Meseberg microtool GmbH Berlin Unsere Kunden erzählen keine Geschichten Ursula Meseberg microtool GmbH Berlin Unsere Kunden erzählen keine Geschichten Ein modellbasierter Prozess für die Anforderungsanalyse im Vorfeld agiler Produktentwicklung

Mehr

Agile Softwareentwicklung mit SCRUM

Agile Softwareentwicklung mit SCRUM Agile Softwareentwicklung mit SCRUM PMI MUC 01. März 2010 Referent: Gerhard Held mehr als 35 Berufsjahre in der Softwareentwicklung im Projektmanagement und verwandten Themen... Gründe für das Scheitern

Mehr

3.4 Unified Process. 1999 Ivar Jacobson, Grady Booch, James Rumbaugh: The Unified Software Development Process.

3.4 Unified Process. 1999 Ivar Jacobson, Grady Booch, James Rumbaugh: The Unified Software Development Process. 1999 Ivar Jacobson, Grady Booch, James Rumbaugh: The Unified Software Development Process. 1996 Philippe Kruchten: Rational Unified Process Produkt der Firma Seit 2002 Teil des IBM Konzerns Objektorientiertes

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

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

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

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

Softwareentwicklungsprozesse. 18. Oktober 2012

Softwareentwicklungsprozesse. 18. Oktober 2012 Softwareentwicklungsprozesse 18. Oktober 2012 Überblick Was soll ein Softwareentwicklungsprozess leisten? Überblick über Softwareentwicklungsprozesse Welche gibt es? Warum gibt es mehrere? Diskussion:

Mehr

09.01.14. Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML)

09.01.14. Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML) Vorlesung Programmieren Unified Modeling Language (UML) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Unified Modeling Language (UML)

Mehr

YAKINDU Requirements. Requirements Engineering, Management and Traceability with Eclipse. Lars Martin, itemis AG. itemis AG

YAKINDU Requirements. Requirements Engineering, Management and Traceability with Eclipse. Lars Martin, itemis AG. itemis AG YAKINDU Requirements Requirements Engineering, Management and Traceability with Eclipse Lars Martin, itemis AG Agenda YAKINDU Requirements Motivation: Warum Requirements Engineering? Grundlagen: Requirements

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

Inhaltsverzeichnis. Inhaltsverzeichnis... I. 1 Problemstellung... 1. 2 V-Modell... 1. 2.1 Allgemeines... 1. 2.2 Anwendung des V-Modells...

Inhaltsverzeichnis. Inhaltsverzeichnis... I. 1 Problemstellung... 1. 2 V-Modell... 1. 2.1 Allgemeines... 1. 2.2 Anwendung des V-Modells... Inhaltsverzeichnis Inhaltsverzeichnis... I 1 Problemstellung... 1 2 V-Modell... 1 2.1 Allgemeines... 1 2.2 Anwendung des V-Modells... 3 3 SCRUM-Modell... 4 3.1 Allgemeines... 4 3.2 Anwendung des SCRUM-Modells...

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

Agiles Testmanagment. Hugo Beerli bbv Software Services AG. Luzern, September 2011. www.bbv.ch

Agiles Testmanagment. Hugo Beerli bbv Software Services AG. Luzern, September 2011. www.bbv.ch Agiles Testmanagment Hugo Beerli bbv Software Services AG Luzern, September 2011 Product Backlog (Agenda) 1) Warum System Tests 2) Agile Arbeitsmethode Stand up Meeting 3) Vorteile der agilen Methode 4)

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

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

OO-Design. Klausur FHF * WI1 / WI2 * SS 2000 MUSTERLÖSUNG

OO-Design. Klausur FHF * WI1 / WI2 * SS 2000 MUSTERLÖSUNG OO-Design Klausur FHF * WI / WI2 * SS 2000 MUSTERLÖSUNG Aufgabe : (28 Punkte) - Ergänzen Sie zum Fallbeispiel "Seminaranmeldung" (s. Anhang) das vorgegebene Use-Case- Diagramm um die fehlenden Use Cases,

Mehr

Projektmodell Softwareentwicklung: Unified Software Development Process / Unified Process (Teil I)

Projektmodell Softwareentwicklung: Unified Software Development Process / Unified Process (Teil I) Projektmodell Softwareentwicklung: Unified Software Development Process / Unified Process (Teil I) Historisch Kulturelle Informationsverarbeitung Hauptseminar: KLIPS 2.0 Dozent: Prof. Dr. Thaller Referent:

Mehr

Software-Entwicklung

Software-Entwicklung Software-Entwicklung SEP 96 Geschichte der Programmierung Aufgaben von, Anforderungen an Programme mit der Zeit verändert 1 Programmierung über Lochkarten z.b. für Rechenaufgaben 2 maschinennahe Programmierung

Mehr

SOFTWARETECHNIK. Kapitel 7 Vorgehensmodelle. Vorlesung im Wintersemester 2012/13 FG System- und Software-Engineering Prof. Dr.-Ing.

SOFTWARETECHNIK. Kapitel 7 Vorgehensmodelle. Vorlesung im Wintersemester 2012/13 FG System- und Software-Engineering Prof. Dr.-Ing. SOFTWARETECHNIK Kapitel 7 Vorgehensmodelle Vorlesung im Wintersemester 2012/13 FG System- und Software-Engineering Prof. Dr.-Ing. Armin Zimmermann Inhalt Vorgehensmodelle Sequenzielle Modelle Iterative

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

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

Agilität selbst erfahren. Agile Softwareentwicklung in der Praxis: Jetzt bewerben für das erste Agile Code Camp 2013!

Agilität selbst erfahren. Agile Softwareentwicklung in der Praxis: Jetzt bewerben für das erste Agile Code Camp 2013! Agilität selbst erfahren. Agile Softwareentwicklung in der Praxis: Jetzt bewerben für das erste Agile Code Camp 2013! Sie wollen alles über agile Softwareentwicklung wissen? Wie können Sie agile Methoden

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

Software Engineering mit Übungen. Franz-Josef Elmer, Universität Basel, HS 2015

Software Engineering mit Übungen. Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering mit Übungen Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering 2 Organisation Ort: Seminarraum 05.002, Spiegelgasse 5 Ablauf: 15:15 Vorlesung Prüfung: Schriftlich,

Mehr

Agile Software-Entwicklung: Überblick

Agile Software-Entwicklung: Überblick Agile Software-Entwicklung: Überblick Stefan Diener / Apr 18, 2007 / Page 1 Inhalt Historie Agiles Manifest Agile Prinzipien Agile Methoden Agile SW-Entwicklungsprozesse Stefan Diener / Apr 18, 2007 /

Mehr

Kapitelübersicht. Was ist So#waretechnik? Historische Entwicklung der So9waretechnik Prinzipien, Methoden, Werkzeuge. Was bedeutet Objektorien+erung?

Kapitelübersicht. Was ist So#waretechnik? Historische Entwicklung der So9waretechnik Prinzipien, Methoden, Werkzeuge. Was bedeutet Objektorien+erung? Kapitelübersicht Was ist So#waretechnik? Historische Entwicklung der So9waretechnik Prinzipien, Methoden, Werkzeuge Was bedeutet Objektorien+erung? ObjektorienCerte Analyse und Design die Objektmodellierung

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

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

Übungsaufgaben zum Software Engineering: Management

Übungsaufgaben zum Software Engineering: Management Übungsaufgaben zum Software Engineering: Management Grundbegriffe: Aufgabe 1: Aus welchen Disziplinen setzt sich das Software Engineering zusammen? a. Informatik b. Physik c. Psychologie d. Chemie e. Geologie

Mehr

Objektorientierter Softwareentwurf mit UML. Ricardo Hernández Garcia, Joachim Palmer 1. Ausgabe, Januar 2010. Grundlagen. Neubearbeitung 2010

Objektorientierter Softwareentwurf mit UML. Ricardo Hernández Garcia, Joachim Palmer 1. Ausgabe, Januar 2010. Grundlagen. Neubearbeitung 2010 Ricardo Hernández Garcia, Joachim Palmer 1. Ausgabe, Januar 2010 Objektorientierter Softwareentwurf mit UML Grundlagen Neubearbeitung 2010 PGOS2010 I Objektorientierter Softwareentwurf mit UML - Grundlagen

Mehr

Test-Driven Developement Eine Einführung

Test-Driven Developement Eine Einführung Test-Driven Developement Eine Einführung 2007 by Tobias Hagen Im Rahmen der Veranstaltung Aktuelle Themen der Informatik bei Prof. Dr. Friedbert Kaspar Hochschule Furtwangen University Übersicht Einführung...

Mehr

Inhalt: Version 1.7.5

Inhalt: Version 1.7.5 Inhalt: Objekte ohne Methoden Objekte mit einfachen Methoden Objekte und Methoden mit Parametern Objekte und Methoden mit Rückgabewert Objekte mit einem Array als Attribut Beziehungen zwischen Objekten

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

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

Scrum und Use Case Analyse. Agilität versus schwergewichtiger Analyse, ein Widerspruch?

Scrum und Use Case Analyse. Agilität versus schwergewichtiger Analyse, ein Widerspruch? Scrum und Use Case Analyse Agilität versus schwergewichtiger Analyse, ein Widerspruch? 1 Über den Autor Praktiziert seit 1987 Aikido Jap. Kampfkunst Prinzipien Kraft aufnehmen, umlenken Angriff Ausweichen

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

PRÜFUNG. Grundlagen der Softwaretechnik

PRÜFUNG. Grundlagen der Softwaretechnik Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner PRÜFUNG Grundlagen der Softwaretechnik Name: Matrikelnummer: Note: Prüfungstag: 21.09.2012 Prüfungsdauer:

Mehr

3. Vorgehensmodelle Software Engineering. Prof. Dr. Bernhard Humm Hochschule Darmstadt, 23. Oktober 2006

3. Vorgehensmodelle Software Engineering. Prof. Dr. Bernhard Humm Hochschule Darmstadt, 23. Oktober 2006 3. Vorgehensmodelle Software Engineering Prof. Dr. Bernhard Humm Hochschule Darmstadt, 23. Oktober 2006 Agenda Agenda Übersicht V-Modell Rational Unified Process Extreme Programming Fazit, Literatur, Kontrollfragen

Mehr

Requirements Engineering Gastdozent: David Kurmann Modul: SWE SS08 Datum: 14 April 2008 Autor: Marco Röösli

Requirements Engineering Gastdozent: David Kurmann Modul: SWE SS08 Datum: 14 April 2008 Autor: Marco Röösli Requirements Engineering Gastdozent: David Kurmann Modul: SWE SS08 Datum: 14 April 2008 Autor: Marco Röösli Inhaltsverzeichnis 1 Rückblick auf Requirements Engineering Teil 1... 2 1.1 Was ist Requirements

Mehr

PRÜFUNG. Grundlagen der Softwaretechnik

PRÜFUNG. Grundlagen der Softwaretechnik Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner PRÜFUNG Grundlagen der Softwaretechnik Musterlösung Name: Matrikelnummer: Note: Prüfungstag:

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

Orientierte Modellierung mit der Unified Modeling Language

Orientierte Modellierung mit der Unified Modeling Language UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language Michael Hahsler Ziel dieses Seminars Verständnis von Objekt-Orientierung Was sind Klassen? Was ist Vererbung?

Mehr

Scrum und professionelles Requirements Engineering

Scrum und professionelles Requirements Engineering Scrum und professionelles Requirements Engineering Dr. Martin Mandischer (Prokurist, Professional Scrum Trainer) Jens Trompeter (Vorstand, Certified Scrum Professional) Gründung im Jahr 2003 Mehr als 160

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

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

Was fehlt Scrum? 31. März 2014 Erich Oswald CTO Ergon Informatik AG

Was fehlt Scrum? 31. März 2014 Erich Oswald CTO Ergon Informatik AG Was fehlt Scrum? 31. März 2014 Erich Oswald CTO Ergon Informatik AG Scrum ist eine Erfolgsstory Aus der Praxis entstanden Nachweislich erfolgreich Gut geeignet für komplexe Probleme Produktentwicklung

Mehr

Software Engineering Interaktionsdiagramme

Software Engineering Interaktionsdiagramme Software Engineering Interaktionsdiagramme Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Nachrichtenaustausch Welche Nachrichten werden ausgetauscht? (Methodenaufrufe)

Mehr

Globale Scrum Retrospektive

Globale Scrum Retrospektive SWP: Spieleprogrammierung Fachbereich Mathematik und Informatik Globale Scrum Retrospektive Do, Hoang Viet(do@mi.fu-berlin.de) Freie Universität Berlin, SoSe 2012 Was ein Softwareprojekt nicht ist! Keine

Mehr

Übungen zur Softwaretechnik

Übungen zur Softwaretechnik Technische Universität München Fakultät für Informatik Lehrstuhl IV: Software & Systems Engineering Markus Pister, Dr. Bernhard Rumpe WS 2002/2003 Lösungsblatt 1 17. Oktober 2002 www4.in.tum.de/~rumpe/se

Mehr

UML Diagramme. Aktivitätsdiagramm

UML Diagramme. Aktivitätsdiagramm Di, 15. April 2008 Thema: Requirements Techniken (Teil 3) Vorlesung von David Kurmann Autor: Oliver Röösli oliver.roeoesli@stud.fhz.ch UML Diagramme Aktivitätsdiagramm Das Aktivitätsdiagramm (engl. activity

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 Software Development

Agile Software Development Dipl. Wirtsch. Ing. Alexander Werth Methoden der Softwareentwicklung 6-1 Agile Manifest Individuen und Interaktion statt Prozessen und Tools. Funktionierende Software statt umfangreicher Dokumentation.

Mehr

Softwaretechnik WS 2013/14. Fomuso Ekellem

Softwaretechnik WS 2013/14. Fomuso Ekellem WS 2013/14 Organisatorisches Dozentin : Ango (Raum 2.250) Fragen und Übungen: mathe_ekellem@yahoo.com (Nur hier, sonst wird nicht bewertet) Folien: http://www.gm.fh-koeln.de/~afomusoe/softwaretechnik.html

Mehr

Software-Lebenszyklus

Software-Lebenszyklus Software-Lebenszyklus Inhalt Vorgehensmodell/Phasenplan Wasserfallmodell WAS-Beschreibung WIE-Beschreibung Weitere Phasenmodelle: Spiral-Modell, V-Modell, RUP Extreme Programming SW-Qualitätssicherung

Mehr

Sascha Schreier. Softwaretechnik: Übung 11.12.09

Sascha Schreier. Softwaretechnik: Übung 11.12.09 Sascha Schreier Softwaretechnik: Übung 11.12.09 Unklarheiten und Fragen Sascha Schreier 11.12.2009 # 2 Systementwurf: Objektentwurf + Einbettung in die Systemumgebung (Pakete, DB, GUI, ) So viele verschiedene

Mehr

Literatur. 3. Erste Schritte in der Objektorientierte Analyse mit CRC-Karten. Die Rolle von Entwurfsmethoden in der Softwareentwicklung.

Literatur. 3. Erste Schritte in der Objektorientierte Analyse mit CRC-Karten. Die Rolle von Entwurfsmethoden in der Softwareentwicklung. 3. Erste Schritte in der Objektorientierte Analyse mit Literatur Obligatorische Literatur Zuser Kap 9 Weiterführende Literatur Scott Ambler. The Object Primer. Cambridge University Press. Gutes Kapitel

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

Objektorientierte Analyse und Design

Objektorientierte Analyse und Design Folien basieren auf folgendem Buch: Objektorientierte Analyse und Design Kernziele: Strukturen für erfolgreichen SW-Entwicklungsprozess kennen lernen Realisierung: Von der Anforderung zur Implementierung

Mehr

Projektmanagement Vorlesung 14/ 15: Wiederholung ausgewählter Themen zur Klausurvorbereitung. Prof. Adrian Müller, PMP, PSM-1, CSM FH Kaiserslautern

Projektmanagement Vorlesung 14/ 15: Wiederholung ausgewählter Themen zur Klausurvorbereitung. Prof. Adrian Müller, PMP, PSM-1, CSM FH Kaiserslautern Projektmanagement Vorlesung 14/ 15: Wiederholung ausgewählter Themen zur Klausurvorbereitung Prof. Adrian Müller, PMP, PSM-1, CSM FH Kaiserslautern phone: +49 631/3724-5329 http://www.hs-kl.de/~amueller

Mehr

Praxisbericht und Demo-Projektabwicklung mit der ATLASSIAN Toolchain und Continuous Integration. Markus Stollenwerk, Noser Engineering AG

Praxisbericht und Demo-Projektabwicklung mit der ATLASSIAN Toolchain und Continuous Integration. Markus Stollenwerk, Noser Engineering AG Praxisbericht und Demo-Projektabwicklung mit der ATLASSIAN Toolchain und Continuous Integration Markus Stollenwerk, Noser Engineering AG Agile Softwareentwicklung Crash-Kurs Markus Stollenwerk, 27.9.2013

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

Projektmanagement. Projektmanagement

Projektmanagement. Projektmanagement Projektmanagement Dipl.-Ing. Oliver Lietz Was ist ein Projekt? Projektmanagement Eindeutiges Ziel Individuell (einmalig) Begrenzt (Anfang und Ende) Komplex (keine Routineaufgabe) Warum Projektmanagement

Mehr

ZuuL - Entwicklung eines Adventures

ZuuL - Entwicklung eines Adventures ZuuL - Entwicklung eines Adventures im Rahmen der Uni-Tage 2009 Team 120 Universität Hamburg 16./17. November 2009 Team 120 (Universität Hamburg) ZuuL - Entwicklung eines Adventures 16.11.09 1 / 21 Übersicht

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

1 Objektorientierte Software-Entwicklung

1 Objektorientierte Software-Entwicklung 1 Objektmodellierung 1 Objektorientierte Software-Entwicklung Prof. Dr. Heide Balzert Fachbereich Informatik Fachhochschule Dortmund Heide Balzert 2000 2 Lernziele Wissen, was unter objektorientierter

Mehr

Semester: -- Workload: 300 h ECTS Punkte: 10

Semester: -- Workload: 300 h ECTS Punkte: 10 Modulbezeichnung: Modulnummer: BWIT IT Management Semester: -- Dauer: Minimaldauer 1 Semester Modultyp: Wahlpflicht Regulär angeboten im: WS, SS Workload: 300 h ECTS Punkte: 10 Zugangsvoraussetzungen:

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

Klausurvorbereitung Software Engineering I @ TFH Berlin

Klausurvorbereitung Software Engineering I @ TFH Berlin Teil 1 Einführung in Software Engineering Definition: Was ist Software Engineering? Unter Software Engineering (SE) versteht man den systematischen, disziplinierten und in seiner Größe abschätzbaren Ansatz,

Mehr

Werte und Prinzipien der agilen Softwareentwicklung

Werte und Prinzipien der agilen Softwareentwicklung 1 Was ist Scrum? Scrum ist ein einfaches Projektmanagement-Framework, in das Entwicklungsteams selbstbestimmt erprobte Praktiken einbetten. Der Rahmen sieht einen empirisch, iterativen Prozess vor, bei

Mehr

Whitepaper. Automatisierte Akzeptanztests mit FIT. Einleitung. Die Bedeutung von Akzeptanztests

Whitepaper. Automatisierte Akzeptanztests mit FIT. Einleitung. Die Bedeutung von Akzeptanztests Automatisierte Akzeptanztests mit FIT Einleitung Dieses beschreibt, wie man Tests aus Anwender-/Kundensicht mit dem Open-Source-Werkzeug FIT beschreibt und durchführt. Das ist für Kunden, Anwender und

Mehr

Agile Softwareentwicklung. Yelve Yakut

Agile Softwareentwicklung. Yelve Yakut Agile Softwareentwicklung Yelve Yakut Index Projekte Vorgehensmodelle Agilität Scrum Feature Driven Development 20.05.08 Agile Softwareentwicklung #2 Projektplanung Von 210 Projekten im Zeitraum von 1997

Mehr

Kapitel 2: Der Software-Entwicklungsprozess

Kapitel 2: Der Software-Entwicklungsprozess Wie konstruiert man Software? Kapitel 2: Der Software-Entwicklungsprozess SoPra 2008 Kap. 2: Der Software-Entwicklungsprozess (1/10) Der Software-Entwicklungs-Prozess Historisches 1960JJ adhoc Techniken

Mehr

Softwareentwicklung mit UML

Softwareentwicklung mit UML Softwareentwicklung mit UML Die Unified Modeling Language im Projekteinsatz 2.12.2003, Seite 1 Übersicht 1 Einleitung 2 Die Unified Modeling Language (UML) 3 Vorgehensmodelle und UML 4 Ausblick 4.1 UML

Mehr

Fabian Schmengler, Dr. Nikolai Krambrock

Fabian Schmengler, Dr. Nikolai Krambrock Fabian Schmengler, Dr. Nikolai Krambrock Herausforderungen bei Konzeption und Test von Magento-Modulen Wechsel von C# zu Magento Ursprünglich Entwicklung von Thick-Client Applikationen mit C# Vollständiger

Mehr

- Antipatterns - der Softwareentwicklung. Tanja Brockmeier

- Antipatterns - der Softwareentwicklung. Tanja Brockmeier - Antipatterns - der Softwareentwicklung Tanja Brockmeier Antipatterns Definition Antipatterns: sind eine häufige wiederkehrende Lösungen, die fehlerhaft sind und Merkmale mit sich bringen, die unerwünscht

Mehr

Grob- und Detailplanung bei der Implementierung nutzen

Grob- und Detailplanung bei der Implementierung nutzen Softwarearchitektur Grob- und Detailplanung bei der Implementierung nutzen Bereich Realisierung Aktivität Softwareinkrement realisieren Ziele Vermitteln einer Orientierungshilfe für alle Entwickler Etablierung

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

Teststrategie festlegen und Teststufen aufeinander abstimmen

Teststrategie festlegen und Teststufen aufeinander abstimmen Testen Teststrategie festlegen und Teststufen aufeinander abstimmen Bereich Projektplanung und -steuerung Aktivität Projekt planen Ziele Effiziente Testausführung Vermeidung von doppelter Arbeit schnell

Mehr

Analyse und Entwurf objektorientierter Systeme

Analyse und Entwurf objektorientierter Systeme Analyse und Entwurf objektorientierter Systeme Teil 3 Modellbildung in der Analysephase 3.1 Statische und dynamische Notationselemente Modul WI111: Objektorientierte Programmierung Fachrichtung Wirtschaftsinformatik

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

Projektmanagement. Vorlesung von Thomas Patzelt 8. Vorlesung

Projektmanagement. Vorlesung von Thomas Patzelt 8. Vorlesung Projektmanagement Vorlesung von Thomas Patzelt 8. Vorlesung 1 Möglicher Zeitplan, Variante 3 26.03. Vorlesung 1, Übung Gr.2 28.05. Keine Vorlesung, Pfingstmontag 02.04. Keine Vorlesung, Hochschultag 04.06.

Mehr

Objektorientierter Software-Entwurf Die Unified Modeling Language 4 1

Objektorientierter Software-Entwurf Die Unified Modeling Language 4 1 Objektorientierter Software-Entwurf Die Unified Modeling Language 4 1 Die Unified Modeling Language Die UML (hier in der Version 0.9) ist ein Satz von Notationen zur Beschreibung objektorientierter Softwaresysteme.

Mehr

Der Unified Process ist ein generischer Prozeß zur objektorientierten Software- Erstellung

Der Unified Process ist ein generischer Prozeß zur objektorientierten Software- Erstellung Unified Process Eine Einführung von Hannes Fischer Fischer Software Elfenstr. 64 70567 Stuttgart Deutschland Copyright 2000 Hannes Fischer Unified Process Wie wird heute gearbeitet? Der Unified Process

Mehr

Agiles Requirements Engineering mit Scrum. Rainer Fetscher Neuss, 16. November 2010

Agiles Requirements Engineering mit Scrum. Rainer Fetscher Neuss, 16. November 2010 Agiles Requirements Engineering mit Scrum Rainer Fetscher Neuss, 16. November 2010 1 Inhalt A. Vorstellung Creditreform B. Grundprinzipien in SCRUM C. IST-Stand D. Ausgangssituation E. Der Weg F. Fazit

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

Scrum Einführung. SWP: Spieleprogrammierung Fachbereich Mathematik und Informatik

Scrum Einführung. SWP: Spieleprogrammierung Fachbereich Mathematik und Informatik SWP: Spieleprogrammierung Fachbereich Mathematik und Informatik Scrum Einführung Do, Hoang Viet(do@mi.fu-berlin.de) Freie Universität Berlin, SoSe 2013 Rollen Product Owner Definiert die Ziele Product

Mehr

Test. Dipl. Wirtsch. Ing. Alexander Werth 9-1

Test. Dipl. Wirtsch. Ing. Alexander Werth 9-1 Test Dipl. Wirtsch. Ing. Alexander Werth 9-1 Phasen der Problemdefinition Anforderungsanalyse Spezifikation Entwurf Implementation Erprobung Wartung Methoden der 9-2 Software Test / Erprobung Messen der

Mehr

Einführung in die Softwaretechnik 9. Softwareprozesse

Einführung in die Softwaretechnik 9. Softwareprozesse 9. Softwareprozesse Klaus Ostermann (Mit Folien von Christian Kästner, Gabriele Taentzer und Wolfgang Hesse) 1 Agenda Wie kommt man vom Kundenwunsch zur fertigen Software? Wie strukturiert man ein Softwareprojekt?

Mehr

Softwareentwicklungspraktikum Sommersemester 2007. Testdokumentation

Softwareentwicklungspraktikum Sommersemester 2007. Testdokumentation Softwareentwicklungspraktikum Sommersemester 2007 Testdokumentation Auftraggeber Technische Universität Braunschweig

Mehr

Einführung in die SWE

Einführung in die SWE Einführung in die SWE Inhalte der Vorlesung Allgemeine Ziele der Lehrveranstaltung Entwickeln einer kleinen Applikation nach professionellem Vorgehensmodell Erlernen des objektorientierten Herangehens

Mehr

Checkliste für Scrum-Meetings

Checkliste für Scrum-Meetings Checkliste für Scrum-Meetings Gesamtdarstellung 2 Produktvision teilen 3 Estimating 4 Planning 1 - Das WAS 5 Planning 2 - Das WIE 6 Daily Scrum 7 Das Review 8 Die Retrospektive 9 Artefakte 10 GOagile!

Mehr

Feature Driven Development

Feature Driven Development Driven Development Die andere agile Methode Dipl.-Inform. Henning Wolf henning.wolf@it-agile.de Überblick Warum mit FDD beschäftigen? Woher kommt FDD? Was ist FDD? 5 (Teil-)Prozesse Rollenmodell Vorteile

Mehr

Übungsblatt 4: Requirements Engineering (2) (für die Übungswoche 14.11. 18.11.2011)

Übungsblatt 4: Requirements Engineering (2) (für die Übungswoche 14.11. 18.11.2011) Übungsblatt 4: Requirements Engineering (2) (für die Übungswoche 14.11. 18.11.2011) Daueraufgabe: Fünf in Fünf Präsentationsaufgabe. Bereiten Sie eine fünfminütige Präsentation vor, in der Sie die fünf

Mehr

UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18

UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18 UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18 Software Testing Automatisiert Manuell 100% 70% 1 Überwiegender Teil der Testing Tools fokusiert auf automatisiertes Testen Microsoft

Mehr

Software Engineering (SE) 2) Phasenübergreifende Verfahren

Software Engineering (SE) 2) Phasenübergreifende Verfahren Software Engineering (SE) 2) Phasenübergreifende Verfahren Prof. Dr. Anja Metzner Hochschule Augsburg, Fakultät für Informatik Kontakt: anja.metzner@hs-augsburg.de Studiengang IBac 1 (Stand: 01.10.2014),

Mehr