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

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

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

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

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

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

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

Ü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

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 - Testung ETIS SS05

Software - Testung ETIS SS05 Software - Testung ETIS SS05 Gliederung Motivation Was ist gute Software? Vorurteile gegenüber Testen Testen (Guidelines + Prinzipien) Testarten Unit Tests Automatisierte Tests Anforderungen an Testframeworks

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

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

- 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

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

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

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

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

Vorlesung Programmieren

Vorlesung Programmieren 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

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

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel. EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.de/~mtr FRAGEN / ANMERKUNGEN Vorlesung Neue Übungsaufgaben MODELLIERUNG

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

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

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

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

Use Cases. Use Cases

Use Cases. Use Cases Use Cases Eigenschaften: Ein Use Case beschreibt einen Teil des Verhaltens eines Systems aus externer Sicht (Formuliert in der der Fachsprache der Anwendung) Dies geschieht, indem ein Systemdialog beschrieben

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

Einführung in die Informationsverarbeitung Teil Thaller. Stunde VII: Planen und Realisieren

Einführung in die Informationsverarbeitung Teil Thaller. Stunde VII: Planen und Realisieren Einführung in die Informationsverarbeitung Teil Thaller Stunde VII: Planen und Realisieren Manfred Thaller, Universität zu Köln Köln 18. Dezember 2014 Rekapitulation Der Gang der Argumentation 1. Der Rohstoff:

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

Gliederung des Vortrages

Gliederung des Vortrages Gliederung des Vortrages Unified Modeling Language Rational Rose Sergej Schwenk Oktober 1999 0. Einführung 1. Historie 2. Der Entwicklungsprozeß 3. UML 3.1 Anwendungsfalldiagramme 3.2 Klassendiagramme

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

Lehrbuch der Softwaretechnik: Basiskonzepte und Requirements Engineering

Lehrbuch der Softwaretechnik: Basiskonzepte und Requirements Engineering Helmut Balzert Lehrbuch der Softwaretechnik: Basiskonzepte und Requirements Engineering 3. Auflage Unter Mitwirkung von Heide Balzert Rainer Koschke Uwe Lämmel Peter Liggesmeyer Jochen Quante Spektrum

Mehr

Software Engineering Analyse und Analysemuster

Software Engineering Analyse und Analysemuster Software Engineering Analyse und Analysemuster Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Klassendiagramme in der Analyse Im Rahmen der Anforderungsanalyse

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

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

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

Objektorientierte Analyse (OOA) Inhaltsübersicht

Objektorientierte Analyse (OOA) Inhaltsübersicht Inhaltsübersicht Einführung Anforderungen an die UML-Diagramme Verhalten: Use-Case-Diagramm Verhalten: Aktivitätsdiagramm Verhalten: Zustandsautomat Struktur: Klassendiagramm Seite 1 Einführung In der

Mehr

Fachhochschule Wiesbaden, FB Design Informatik Medien Studiengang Allgemeine Informatik Vorlesung im SS 2007

Fachhochschule Wiesbaden, FB Design Informatik Medien Studiengang Allgemeine Informatik Vorlesung im SS 2007 Softwaretechnik Fachhochschule Wiesbaden, FB Design Informatik Medien Studiengang Allgemeine Informatik Vorlesung im SS 2007 1 Ziele Die Analyse einer softwaretechnischen Problemstellung nach objektorientierten

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

Unified Modeling Language (UML)

Unified Modeling Language (UML) Kirsten Berkenkötter Was ist ein Modell? Warum Modellieren? Warum UML? Viele, viele Diagramme UML am Beispiel Was ist ein Modell? Ein Modell: ist eine abstrakte Repräsentation eines Systems, bzw. ist eine

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

Einführung in Generatives Programmieren. Bastian Molkenthin

Einführung in Generatives Programmieren. Bastian Molkenthin Einführung in Generatives Programmieren Bastian Molkenthin Motivation Industrielle Entwicklung *!!*,(% % - #$% #!" + '( & )!* Softwareentwicklung Rückblick auf Objektorientierung Objektorientierte Softwareentwicklung

Mehr

Inhaltsverzeichnis. Literatur. 4 Rational Unified Process [JBR98, Kru03] und UML [BRJ02, FS00, Bal01]

Inhaltsverzeichnis. Literatur. 4 Rational Unified Process [JBR98, Kru03] und UML [BRJ02, FS00, Bal01] Inhaltsverzeichnis 1 Einleitung 4 1.1 CVS (Concurrent Version System) [Pru03, Zee02, Ced05]....... 5 1.2 Eclipse als Java Entwicklungsumgebung................. 22 2 Planungsmethoden 29 2.1 Definitionsphase..............................

Mehr

RUP Analyse und Design: Überblick

RUP Analyse und Design: Überblick Inhaltsverzeichnis Übersicht [, 2, 8] 3. Vorgehensweise............................... 5 2 Planungsmethoden 37 2. Definitionsphase.............................. 6 3 Rational Unified Process [5, 6] und

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

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

Systemanalyse. - Seminar für AI/DM 3 im Wintersemester 2004/05 -

Systemanalyse. - Seminar für AI/DM 3 im Wintersemester 2004/05 - Systemanalyse - Seminar für AI/DM 3 im Wintersemester 2004/05 - Prof. Dr. Hans-Jürgen Steffens (by courtesy of Prof. Dr. Thomas Allweyer) Fachbereich Informatik und Mikrosystemtechnik Fachhochschule Kaiserslautern,

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

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

Eingangskriterien Fachexperten, Chefprogrammierer und der Chefarchitekt wurden ausgewählt.

Eingangskriterien Fachexperten, Chefprogrammierer und der Chefarchitekt wurden ausgewählt. Feature Driven Development (FDD) Dieses Dokument ist die Übersetzung der Original-FDD-Definition von Jeff De Luca (http://www.nebulon.com), http://www.nebulon.com/articles/fdd/latestprocesses.html Übersetzt

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

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

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden. Grundwissen Informatik Objekt Attribut Methoden Als Objekte bezeichnet man alle Gegenstände, Dinge, Lebewesen, Begriffe oder Strukturen unserer Welt ( Autos, Räume, Bakterien, Lehrer, Schüler, Kunden,

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

Guido de Melo 5.2.2007 Fachvortrag, Uni Ulm UML 2.0. Für den Einsatz in der Praxis

Guido de Melo 5.2.2007 Fachvortrag, Uni Ulm UML 2.0. Für den Einsatz in der Praxis Guido de Melo 5.2.2007 Fachvortrag, Uni Ulm UML 2.0 Für den Einsatz in der Praxis Seite 2 Überblick 1. Ziele 2. Warum das alles? 3. Was ist UML 4. Diagrammarten 5. Umfeld Seite 3 1. Ziele 1. Ziele dieses

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

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

Softwaretechnik. Fomuso Ekellem WS 2011/12

Softwaretechnik. Fomuso Ekellem WS 2011/12 WS 2011/12 Inhalt Wiederholung Weitere Begriffe Programmierung im Großem (Programmierung von Software als Ganzes) Prozess-Modelle 2 Wiederholung: Prozesse Prozesse sind hierarchische Gruppierungen von

Mehr

Softwarearchitekturen I Softwareentwicklung mit Komponenten

Softwarearchitekturen I Softwareentwicklung mit Komponenten Softwarearchitekturen I Softwareentwicklung mit Komponenten Detlef Streitferdt Technische Universität Ilmenau TU-Ilmenau, Softwaresysteme / Prozessinformatik, KBSE Softwarearchitekturen I 1 Beispiel: Bibliothekssystem

Mehr

Software- und Systementwicklung

Software- und Systementwicklung Software- und Systementwicklung Seminar: Designing for Privacy 11.11.2009 Moritz Vossenberg Inhalt Vorgehensmodelle Wasserfallmodell V-Modell Phasen (Pflichtenheft) UML Klassendiagramm Sequenzdiagramm

Mehr

Schritt-für-Schritt-Anleitung Verlosungen mit feripro - Teilnehmer

Schritt-für-Schritt-Anleitung Verlosungen mit feripro - Teilnehmer Liebe Kinder und liebe Jugendliche, diese Anleitung soll euch Schritt für Schritt durch den Anmeldeprozess mit feripro führen. Solltet ihr dennoch an einem Punkt nicht weiterkommen oder andere Fragen haben,

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

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. Agile Vorgehensweise / Scrum. Version: 1.0 Stand: 23.06.2016

Projektmanagement. Agile Vorgehensweise / Scrum. Version: 1.0 Stand: 23.06.2016 Projektmanagement Agile Vorgehensweise / Scrum Version: 1.0 Stand: Lernziel Sie können in eigenen Worten darstellen warum Agilität notwendig ist. Sie können mit eigene Worten das Framework Scrum beschreiben.

Mehr

UML - Tutorial. Hubert Baumgartner. www.inso.tuwien.ac.at

UML - Tutorial. Hubert Baumgartner. www.inso.tuwien.ac.at UML Tutorial UML - Tutorial SS 06 Hubert Baumgartner www.inso.tuwien.ac.at INSO - Industrial Software Institut für Rechnergestützte Automation Fakultät für Informatik Technische Universität Wien Inhalt

Mehr

Trotz Agilität nicht ins Abseits geraten Modellierung in einem agilen Umfeld. Susanne Mühlbauer, Philip Stolz, HOOD GmbH MID Insight 2012

Trotz Agilität nicht ins Abseits geraten Modellierung in einem agilen Umfeld. Susanne Mühlbauer, Philip Stolz, HOOD GmbH MID Insight 2012 Trotz Agilität nicht ins Abseits geraten Modellierung in einem agilen Umfeld Susanne Mühlbauer, Philip Stolz, HOOD GmbH MID Insight 2012 Agenda 1. Scope, Motivation und Begriffsklärung 2. Modellierung

Mehr

Softwarepraktikum SS 2005 Inhalt - VL 10. Softwaretechnik. Softwareentwicklungszyklus (2) Wasserfallmodell. Softwareentwicklungszyklus

Softwarepraktikum SS 2005 Inhalt - VL 10. Softwaretechnik. Softwareentwicklungszyklus (2) Wasserfallmodell. Softwareentwicklungszyklus Softwarepraktikum SS 2005 Inhalt - VL 10 1 Softwaretechnik 2 Anforderungsanalyse 3 Systemmodelle Softwaretechnik Technische Disziplin, mit dem Ziel, kosteneffektiv Softwaresysteme zu entwickeln Techniken

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

Softwaretechnik (WS 11/12)

Softwaretechnik (WS 11/12) Universität Augsburg, LSt. Softwaretechnik, K. Stenzel, H. Seebach, G. Anders Softwaretechnik (WS 11/12) Lösungsvorschlag 5 Aufgabe 1 (System Behavior: System Sequence Diagrams) (10/5 Punkte) a) Was sind

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

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

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

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

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

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

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

Unit Tests mit Junit 4. Dario Borchers

Unit Tests mit Junit 4. Dario Borchers Unit Tests mit Junit 4 Dario Borchers Agenda Warum testgetriebene Entwicklung von Software? - Motivation Was ist testgetriebene Entwicklung? - Prozess der testgetriebenen Entwicklung - Arten von Tests

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

Scrum. Übung 3. Grundlagen des Software Engineerings. Asim Abdulkhaleq 20 November 2014

Scrum. Übung 3. Grundlagen des Software Engineerings. Asim Abdulkhaleq 20 November 2014 Grundlagen des Software Engineerings Übung 3 Scrum Asim Abdulkhaleq 20 November 2014 http://www.apartmedia.de 1 Inhalte Scrum Wiederholung Was ist Scrum? Übung: Scrum Workshop (Bank Accounts Management

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

Agiles Testen. Handwerkszeug zur Prävention von Fehlern und technischen Schulden. Entwicklertag 2014. Lars Alvincz, Daniel Knapp

Agiles Testen. Handwerkszeug zur Prävention von Fehlern und technischen Schulden. Entwicklertag 2014. Lars Alvincz, Daniel Knapp Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp 2 Agenda Ziel dieses Vortrags Grundzüge des agilen Testens Voraussetzungen

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

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

Vergleich von klassischer und agiler Entwicklungsmethodik anhand der Entwicklung eines in Statemate simulierbaren Modells eines Türsteuergeräts

Vergleich von klassischer und agiler Entwicklungsmethodik anhand der Entwicklung eines in Statemate simulierbaren Modells eines Türsteuergeräts Vergleich von klassischer und agiler Entwicklungsmethodik anhand der Entwicklung eines in Statemate simulierbaren Modells eines Türsteuergeräts Experiment an der Uni Ulm im SS 2003 berblick Motivation

Mehr

Verfeinerung der Use Case-Dokumentation

Verfeinerung der Use Case-Dokumentation Verfeinerung der Use Case-Dokumentation 4.3 Im ersten Schritt werden in den Use Cases nur die Hauptaufgaben des Systems beschrieben Zur Dokumentation der Use Cases gehört zunächst nur eine grobe kurze

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

Ü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

6. Modellierung von Informationssystemen. 6.1 Einleitung 6.2 Konzeptuelles Modell 6.3 OASIS Spezifikation 6.4 Execution Model 6.

6. Modellierung von Informationssystemen. 6.1 Einleitung 6.2 Konzeptuelles Modell 6.3 OASIS Spezifikation 6.4 Execution Model 6. 6. Modellierung von Informationssystemen Spezialseminar Matr. FS 2000 1/10 Volker Dobrowolny FIN- ITI Quellen: Oscar Pastor, Jaime Gomez, Emilio Insfran, Vicente Pelechano The OO-Method approach for information

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

Kundenanforderungen dokumentieren

Kundenanforderungen dokumentieren Requirements Engineering Kundenanforderungen dokumentieren Bereich Anforderungen Aktivität Kunden-Anforderungen erheben Ziele Gesteigerte Kundenzufriedenheit Dokumentation der genauen Erwartungen des Kunden

Mehr

Block R (Rahmen): SE Aktivitäten 21.10.04 2. Vorlesung Methoden des Software Engineering. Block R Rahmen Aktivitäten der Software-Entwicklung

Block R (Rahmen): SE Aktivitäten 21.10.04 2. Vorlesung Methoden des Software Engineering. Block R Rahmen Aktivitäten der Software-Entwicklung Block R (Rahmen): SE Aktivitäten 21.10.04 1 Vorlesung Methoden des Software Engineering Block R Rahmen Aktivitäten der Software-Entwicklung Martin Wirsing Einheit R.2, 21.10.2004 Block R (Rahmen): SE Aktivitäten

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

Dr. Hanno Schauer Mons-Tabor-Gymnasium Montabaur. UML-Klassendiagramme als Werkzeug im Unterricht

Dr. Hanno Schauer Mons-Tabor-Gymnasium Montabaur. UML-Klassendiagramme als Werkzeug im Unterricht Dr. Hanno Schauer Mons-Tabor-Gymnasium Montabaur UML-Klassendiagramme als Werkzeug im Unterricht Blitzlicht? In welcher Programmiersprache(n) unterrichten Sie?? In welchem Umfang unterrichten Sie Objektorientierung??

Mehr

Machbar? Machbar! 07.10.2010

Machbar? Machbar! 07.10.2010 TANNER AG 2010 TANNER AG Kemptener Straße 99 D-88131 Lindau (B) Telefon +49 8382 272-0 Fax +49 8382 272-900 www.tanner.de info@tanner.de Agile Softwareentwicklung im regulativen Umfeld. Machbar? Machbar!

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

Kapitel 4: Dynamische Analyse mit FUSION. SoPra 2008 Kap. 4: Dynamische Analyse mit FUSION (1/30)

Kapitel 4: Dynamische Analyse mit FUSION. SoPra 2008 Kap. 4: Dynamische Analyse mit FUSION (1/30) Kapitel 4: Dynamische Analyse mit FUSION SoPra 2008 Kap. 4: Dynamische Analyse mit FUSION (1/30) Dokumente der dynamischen Analyse Analyse des Systemverhaltens (dynamischer Aspekt). Zu entwickeln sind:

Mehr

Softwaretechnikpraktikum SS 2004. Qualitätsmanagement I. 1. Überblick. Qualität. Qualitätsmerkmal

Softwaretechnikpraktikum SS 2004. Qualitätsmanagement I. 1. Überblick. Qualität. Qualitätsmerkmal Softwaretechnikpraktikum SS 2004 Qualitätsmanagement I 5. Vorlesung 1. Überblick Planungsphase Definitionsphase Entwurfsphase Implem.- phase Fragen Was ist Qualität? Wie kann man Qualität messen? Wie kann

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

Evaluation of Database Design and Reverse Engineering Tools for a Large Software System

Evaluation of Database Design and Reverse Engineering Tools for a Large Software System Evaluation of Database Design and Reverse Engineering Tools for a Large Software System Anne Thomas TU Dresden Dr. B. Demuth Pre Press GmbH (Dresden) T. Reuter Gliederung Einleitung Vorgehensweise Kontext

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