- Agile Programmierung -



Ähnliche Dokumente

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Agile Softwareentwicklung

Software Systems Engineering

Agile Softwareprozess-Modelle

Was Sie über SCRUM wissen sollten...

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

10 Jahre agile Softwareentwicklung Wie erwachsen sind wir geworden?

Agile Software-Entwicklung im Kontext der EN50128 Wege zum Erfolg

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

Agiles Design. Dr.-Ing. Uwe Doetzkies Gesellschaft für Informatik mail:

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

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

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

Extreme Programming: Überblick

Software entwickeln mit extreme Programming

Agile Systemadministration (ASA)

ZuuL - Entwicklung eines Adventures

Klausur mit Lösungshinweisen zur Vorlesung Planung und Entwicklung von IuK-Systemen Sommersemester August 2005 Deckblatt Hinweise

Feature-based Programming

Ganzheitliches IT-Projektmanagement

Führung von agilen verteilten Teams

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

ERP-Evaluation systematisch und sicher zum optimalen ERP-System

Warum sich das Management nicht für agile Softwareentwicklung interessieren sollte - aber für Agilität

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

Agile Programmierung: Case Studies

Agiles Testmanagement am Beispiel Scrum

Agile Prozessverbesserung. Im Sprint zu besseren Prozessen

Extreme Programming ACM/GI Regionalgruppe Bremen,

Agile Software Development

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

Softwareentwicklungsprozess im Praktikum. 23. April 2015

Agile Methoden in der Softwareentwicklung

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

Agile Enterprise Development. Sind Sie bereit für den nächsten Schritt?

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

Robert Hartmann Public v1.0 (Feb 2015) Architektur & Agilität - Praxisbericht

Wir nehmen Aufgaben und Ideen wahr. Wir suchen Lösungen zu Ideen.

Bernadette Büsgen HR-Consulting

Referat Extreme Programming. Von Irina Gimpeliovskaja und Susanne Richter

oose. Was (noch) klassische Projekte von Scrum & Co lernen können eine empirische Studie

Agile Werkzeuge für den Produktmanagementzyklus vom Konzept bis zur Auslieferung

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

GPP Projekte gemeinsam zum Erfolg führen

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

Fragebogen zur Nutzung des Angebots der Hochschulbibliothek an elektronischen Medien:

Agile Softwareentwicklung. Referat von Kristina Schrickel Praxisprojekt Ruby Leitung : Ralf Berger

Thomas Schissler Uwe Baumann

Agile Softwareentwicklung mit Scrum

conuno - WIR GESTALTEN FÜR SIE Development Services

Checkliste Webauftritt

Konzentration auf das. Wesentliche.

BIF/SWE - Übungsbeispiel

Agiles REQUIREMENTS ENGINEERING. Peter Hruschka in der Praxis. Mein Ziel ist Ihr Erfolg:!

Informationswirtschaft II Rational Unified Process (RUP)

Informationswirtschaft II

Seminararbeit. Thema: Komponentenbasierte Softwareentwicklung und Hypermedia

Projektmanagement durch Scrum-Proxies

Wer wir sind. Qualität ist das Ergebnis gewissenhafter Arbeit. Denn nur die setzt sich durch. Unser Profil

Neu als stellvertretendes Vorstandsmitglied/Verhinderungsvertreter

WARENWIRT- SCHAFT UND ERP BERATUNG Mehr Sicherheit für Ihre Entscheidung

Finanzbuchhaltung*, lfd. Lohnabrechnungen, Unternehmensberatung für kleine und mittelständische Betriebe

Gemeinsam Software-Lösungen finden. Vom Prototyping bis zur Serienreife.

Entwicklung und Stärkung der persönlichen Kompetenzen!

Software Engineering. Fakultät Elektrotechnik Bachelor-Studiengänge, 4. Semester Prof. Dr.-Ing. Dagmar Meyer

SSI WHITE PAPER Design einer mobilen App in wenigen Stunden

Karriere in der IT und Informatik: Voraussetzungen für den Arbeitsplatz der Zukunft

Project roles and responsibilities

Mit agilen Methoden kommen Sie weiter

Unsere Produkte. Wir automatisieren Ihren Waren- und Informationsfluss. Wir unterstützen Ihren Verkaufsaußendienst.

Wir sind für Sie da. Unser Gesundheitsangebot: Unterstützung im Umgang mit Ihrer Depression

Grundprinzipien der agilen Softwareentwicklung

Festpreisprojekte in Time und in Budget

Zwei ungleiche Geschwister

Projektmanagement im Wandel

Model-Driven Development in Scrum-Projekten

GRUNDLAGEN UND ZIELE DER REVISION

Inhalt. 3.1 Der inkrementelle Entwurf im Überblick Flache Aufwandskurve Qualitätskriterien für den inkrementellen Entwurf...

Beratung, Projektmanagement und Coaching

Ziel-, Zeit- und Selbstmanagement

Lösungen zum Test objektorientierter Software

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

Im Rahmen seiner Beratertätigkeit veröffentlicht er Artikel und hält Vorträge und Schulungen zu diesen und weiteren Themen.

Zukunft der WfbM Positionspapier des Fachausschusses IV

Kompetenz. rund um. Ihren. Entwicklungsprozess. Über uns. Technische Software. Modellbasierter Test. Prüfplätze. Automatisierung.

Von der Gegenwart mit Vollgas in die agile Zukunft!

Erfolgreiche Realisierung von grossen Softwareprojekten

AGILES Software Engineering in der COUNT IT. Testautomatisierung in der agilen Softwareentwicklung

Skriptum. zum st. Galler

Interpretation des agilen Manifest

Beraten? Begeistern!

IT-Unternehmensarchitektur Übung 01: IT-Strategie

IT-Basics 2. DI Gerhard Fließ. Vorgehensmodelle

Neue Funktionen in Innovator 11 R5

Checkliste. Erfolgreich Delegieren

Die Post hat eine Umfrage gemacht

Ökonomik der Agrar und Ernährungswirtschaft in ILIAS

Transkript:

Fachhochschule Dortmund Fachbereich Informatik SS 2004 Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Thema: - - Vortrag von Michael Pols Betreut durch: Prof. Dr. Frank Thiesing Übersicht Kernfragen die im Rahmen des Vortages geklärt werden sollen: 1. Warum brauchen wir Agilität? 2. Was bedeutet Agilität? 3. Was ist agile? 4. Welche Methoden unterstützen agile? 5. Wo kommen agile Verfahren zum Einsatz? Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -2-1

Kernfrage Warum brauchen wir Agilität? Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -3- Notwendigkeit von Agilität Projektrisiken Anforderungen des Kunden sind zu Beginn eines Projekts unklar Falsche Interpretation der Kundenwünsche Falscher Funktionsumfang Anforderungen und Technologien können sich ändern Unrentable Systeme Zielabweichung Konsequenz: - Termin- und Budgetüberschreitung - Projektabbruch - unzufriedene Kunden, unzufriedene Entwickler - Imageverlust Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -4-2

Notwendigkeit von Agilität Lösungsmöglichkeit Einsatz agiler Prozesse und Methoden! Im Fokus agiler Prozesse stehen: - der Kunde selbst - der wirtschaftliche Nutzen des Kunden - sich entwickelnde Anforderungen - die schnelle Erzeugung von Ergebnissen Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -5- Kernfrage Was bedeutet Agilität? Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -6-3

Leitbild Wir stellen: Das Manifest Menschen und Zusammenarbeit über Prozesse und Werkzeuge; Lauffähige Software über umfangreiche Dokumentation; Zusammenarbeit mit dem Kunden über Vertragsverhandlungen; Reaktion auf Änderungen über starre Befolgung eines Planes. Obwohl Letztere ihren Wert haben, bewerten wir Erstere höher. Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -7- Prinzipien Unsere höchste Priorität ist es, den Kunden durch frühzeitige und kontinuierliche Auslieferung nützlicher Software zufrieden zu stellen. Begrüße sich ändernde Anforderungen, selbst spät in der Entwicklung. Prozesse machen Änderungen als Wettbewerbsvorteil des Kunden nutzbar. Liefere lauffähige Software häufig aus, alle paar Wochen bis alle paar Monate, unter Bevorzugung kürzerer Abstände. Geschäftsleute und Entwickler müssen während des ganzen Projekts täglich zusammenarbeiten. Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -8-4

Prinzipien Baue Projekte um motivierte Individuen herum auf. Stell ihnen die benötigte Umgebung und Unterstützung zur Verfügung und vertraue auf sie. Die effizienteste und effektivste Methode der Übermittlung von Informationen an und innerhalb eines Entwicklungsteams ist das persönliche Gespräch. Lauffähige Software ist das wichtigste Maß für den Projektfortschritt. Prozesse fördern die dauerhafte Entwicklung. Sponsoren, Entwickler und Nutzer sollten ein konstantes Tempo unbegrenzt einhalten können. Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -9- Prinzipien Beständiges Achten auf ausgezeichnete technische Fertigkeiten und gutes Entwerfen steigert die Agilität. Schlichtheit ist wesentlich. Die besten Architekturen, Anforderungen und Entwürfe stammen von selbstorganisierenden Teams. In regelmäßigen Abständen denkt das Team darüber nach, wie es effektiver werden kann, und passt sein Verhalten dementsprechend an. Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -10-5

Prozesse Prozesse der Softwareentwicklung Organisation Projektmanagement Systemanalyse Architektur Dokumentation Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -11- Kernfrage Was ist agile? Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -12-6

Wesensmerkmale agiler Testgetriebene Entwicklung Best Practices Code Konventionen Refactoring Design-by-Contract Offen-Geschlossen-Prinzip Vermeidung von Redundanz Fortlaufende Integration Ergebnisorientierung Get it right the last time Aufbau von Kompetenz Code Reviews Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -13-...... als Einzelprozess existiert gar nicht... wird durch die verwendete Methode definiert... wird in der Literatur nicht verwendet Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -14-7

Kernfrage Welche Methoden unterstützen agile? Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -15- Methoden Wesensmerkmale agiler Methoden Iterativ & Inkrementell Kooperativ Einfach Adaptiv Die wichtigsten Methoden im Überblick AM ASD ARTE Crystal DSDM FDD ISD LP PP RUP Scrum XP Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -16-8

XP: Rollen Management Big Boss Kunde Coach Tracker Customer Tester Programmer Entwicklungsteam Expert Unterstützung Andere Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -17- XP: Praktiken Short Releases Project Management Planning 40-hour-week Game Just Rules Impementation Coding Standards Metaphor Refactoring Pair Programming Simple Design Open Workspace SCM Collective Code Ownership Continuous Integration Validation & Verification Continuous Testing On-Site Customer Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -18-9

XP: Prozesse Stories Releases Priority List Analysis & Design Pair Programming Plan for Tests Code Tests & continous integration Customer Acceptance Collective Database Customer Feedback Continuous Customer Tests Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -19- Kernfrage Wo kommen agile Verfahren zum Einsatz? Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -20-10

Einsatzmöglichkeiten Verfahren eignen sich bedingt oder gar nicht für: große Projektteams verteilte Entwicklung Entwicklung sicherheitskritischer Systeme Entwicklung großer, komplexer Systeme Entwicklung von wiederverwendbaren Komponenten Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -21- Ende Vielen Dank für die Aufmerksamkeit! Fragen oder Kommentare? Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -22-11

Literatur & Quellen [Balzert, 1998] H. Balzert; Lehrbuch der Software-Technik; Spektrum, Akad. Verl., 1998 [Beck, 2000] K. Beck; Extreme Programming Explained; Addison-Wesley, 2000 [Hruschka et al., 2002] P. Hruschka, C. Rupp; Software-Entwicklung für Embedded Real-Time Systems mit der UML; Carl Hanser Verl., 2002 [Hruschka et al., 2004] P. Hruschka, C. Rupp, G. Starke; Agility kompakt; Spektrum Akad. Verl., 2004 [Hunt et al., 2003] A. Hunt, D. THomas; Der pragmatische Programmierer; Carl Hanser Verl., 2003 [Starke, 2002] G. Starke; Effektive Software-Architekturen Ein praktischer Leitfaden; Carl Hanser Verl., 2002 Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Michael Pols -23-12