Agile Softwareentwicklung Klassische Erfolgsfaktoren neu verpackt?

Ähnliche Dokumente
Agilität trifft Funktionale Sicherheit

Agile IT-Projekte zum Festpreis ein Widerspruch in sich?

Zusammenarbeit in der agilen Software-Entwicklung. Ansatzpunkte zur Analyse agiler (Software-Entwicklungs-) Teams

Agile und Solution Focus

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

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

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

1 May, Überblick. Agile Softwareentwicklung. Schwierigkeiten. Software Lebenszyklus: was nicht passieren sollte

Sieben süße Versuchungen agiler Produktentwicklung

- Agile Programmierung -

Agile Development vs. Security Requirements

Herausforderungen in der Gestaltung von IT-Verträgen in der agilen Softwareentwicklung

Von SCRUM im Maschinenbauprojekt zum agilen Unternehmen?

Projektmanagement. 10. Agiles Projektmanagement. Norbert Paul Darmstadt,

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

Good Governance in einer agilen Organisation!?

Was Sie über SCRUM wissen sollten...

Whitepaper: Agile Methoden im Unternehmenseinsatz

Hurra wir werden agil aber wie?

Die Foundation-Phase Kombination von RE-Techniken zum Projektstart. Martin Kleckers, Agile Coach Berlin, 26. SEPTEMBER 2018

Prozesse optimieren und Kosten reduzieren in der Fertigungsindustrie. Modular, Individuell, Einfach

Neue Formen der Arbeit bei der Telekom Erfahrungsbericht T-systems

SERVIEW. High Performance IT. die Transformation zu einer agilen, schlanken und verlässlichen IT

Agilität und Adaption Fluch oder Segen der industriellen Softwareentwicklung. Sebastian Graf, PROMATIS software GmbH DOAG 2013, Nürnberg, 08/08/13

Projektmanagement. 10. Agiles Projektmanagement. Norbert Paul Darmstadt,

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

Scrum in Theorie und Praxis.

Agile Softwareentwicklung

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

Einführung von XP in der Praxis

Agil im klassischen Umfeld»

Einfach erfolgreich mit SCRUM

Projektmanagement. Einführung in das agile Projektmanagement. Version: 1.0 Stand:

Projektmanagement und Softwareentwicklung. Nina Stodolka, WS2017/2018

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Agile Softwareprozess-Modelle

Agile (Hardware-) Produktentwicklung als Innovationstreiber

IT- Projekt -Management

Führung von agilen verteilten Teams

Alistair Cockburn: Die Methodenfamilie Crystal

Projekt- Manager. Verdienst: EUR zzgl. Bonus p. a. Ähnliche freie Stellen in Deutschland: ca scrum Master Lehrgangsbeschreibung

Vom dem was Autos und Software GEMEINSAM haben. Diskussionsbeitrag zur Software-Industralisierung. Guido Brune

Drei Kennzeichen eines Projekts

und wie es zur agilen Entwicklung passt

Software Engineering (1)

Erfolgreiche Projekte beginnen mit InLoox. InLoox - Die Projektmanagement-Software für Outlook, Web und Smartphone

Agiles Projektmanagement nur eine Illusion?

Das Eisberg-Prinzip. Frank Lange. Die 4 Ebenen des Widerstands bei der Einführung von Scrum in der Medizintechnik. Agile Med 2014, München.

Herkömmliche Softwareentwicklungsmodelle vs. Agile Methoden

Requirements Engineering für die agile Softwareentwicklung

Agiles Projektmanagement

Mitarbeiter bei ITC seit 17 Jahren Projektleiter und Trainer

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

Strategie und Taktik bei egovernment Vorhaben

ÜBUNG. Einführung in das IT Projektmanagement WS 2008/09. Lehrbeauftragter: Dr. The Anh Vuong Sarah Voß

Seminar Software Engineering

AGILER PROJEKT- MANAGER

AGILE SOFTWAREENTWICKLUNG NACH BERTRAND MEYER (AGILE!)

PRODUKTSPEZIFISCHE SOFTWARE-ENTWICKLUNG. antrimon.com

Trends in der Agilität Dr. Martin Geier

AGILE SOFTWAREENTWICKLUNG MIT ORACLE ADF

Dokumentationen in agilen IT- Projekten. Maximilian Frainzl Juristisches IT-Projektmanagement

Multiprojekt- & MultiproduktLandschaften mit Scrum. Jennifer Vosseler

Klassisches Projektmanagement und agil

AGILER PROJEKT- MANAGER

Agile Softwareentwicklung Scrum vs. Kanban

ANECON. Business Process meets Agile Software Development. DI Ernst Lieber Leiter Geschäftsfeld Softwareentwicklung

Auf einen Blick. Vorwort Über den Autor Danksagung Einleitung Teil I: Die Rollen Teil II: Die Listen...

Software Engineering. Organisation von Softwareentwicklungsprojekten

Agile und schwergewichtige Prozesse wie paßt das zusammen

Softwareprojekt: Agile Softwareentwicklung in einem Open-Source-Projekt. Sommersemester 2016

Value Delivery and Customer Feedback

Success Story. Hamburg Süd. Application Performance Management // Logistik. Eine zukunftsweisende globale IT-Plattform und Anwendungslandschaft

Betriebswirtschaft von Plaut und Software von SAP Eine Erfolgsgeschichte Mag. Herbert Brauneis, 15. November 2016, Hagenberg

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

Projektmanagement. Das Scrum - Framework. Version: 5.0 Stand: Autor: Dr. Olaf Boczan

(WIE) FUNKTIONIEREN WIR MORGEN? RADIKAL AGIL!

Verbundtests von Mobilgeräten und Backend-Systemen. Andreas Bartsch, exept Software AG

WIR LIEBEN AGILITÄT UND VIELFALT. smidignetzwerk. Agilität zum Ausprobieren. Produzieren für Morgen

2.4 Vertragsformen Üblich: Festpreis oder Time & Material

Flipchart-Protokoll. Workshop Testing mit Steam-IT. 18. August 2017, Wylen

Agilität als einzige Chance. Best. Innovatives Projektmanagement High-Speed-Projektmanagement

Agil sein heißt beweglich sein! Organisationaler Wandel und Chancen für das moderne Personalmanagement.

ATLAS: VEREINEN SIE IHRE TEAMS

ahd hellweg data GmbH & Co. KG

goes agile von Menschen die auszogen die Arbeitswelt zu verändern Silke Notheis

Der agile Software Architekt

SCRUM. Agile Development

Aufwandsschätzungen in der agilen Softwareentwicklung

Agile Softwareentwicklung

Inhaltsverzeichnis Einführung... 13

Praktikumsvorbesprechung: Software Engineering WS 07/08

Gemeinsam mehr erreichen.

IT SERVICE MANAGEMENT FÜR AGILE PROJEKTE. Zwischen Agilität und Stabilität Herausforderungen in einer agiler werdenden Organisation

Agile Softwareentwicklung mit Scrum

Software Systems Engineering

GI Fachgruppentreffen RE 2015

Design-Build-Run smarte Lösungen aus einer Hand

Transkript:

Agile Softwareentwicklung Klassische Erfolgsfaktoren neu verpackt? Volker Brosche, Michael Koch, Dr. Achim Selz 1822 S inform Software GmbH OOP 2004 München, 21. Januar 2004 2003 1822 S inform

Inhalt Beispiel für erfolgreiche Softwareentwicklung Agile Softwareentwicklung Klassische Erfolgsfaktoren der Softwareentwicklung Analyse anhand der Prinzipien des agilen Manifests Ergebnisse Seite 2

Inhalt Beispiel für erfolgreiche Softwareentwicklung Agile Softwareentwicklung Klassische Erfolgsfaktoren der Softwareentwicklung Analyse anhand der Prinzipien des agilen Manifests Ergebnisse Seite 3

Beispiel für erfolgreiche Softwareentwicklung Die 1822 S inform Software GmbH Softwarehaus für maßgeschneiderte Lösungen Ausschließlich Projektgeschäft, kein Produktgeschäft Softwareentwicklung überwiegend für die Finanzdienstleistungsbranche Webarchitekturen, Integration von Legacy-Systemen 50 Mitarbeiterinnen und Mitarbeiter In 2003 ca. 10,4 Mio Umsatz Großer Anteil Stammkunden Seite 4

Beispiel für erfolgreiche Softwareentwicklung Projekte der 1822 S inform in 2003 Alle termingerecht Alle im vereinbarten Budget Alle in tadelloser Qualität Seite 5

Inhalt Beispiel für erfolgreiche Softwareentwicklung Agile Softwareentwicklung Klassische Erfolgsfaktoren der Softwareentwicklung Analyse anhand der Prinzipien des agilen Manifests Ergebnisse Seite 6

Was ist agil? Merriam-Webster Dictionary: Main Entry: ag ile Pronunciation: 'a-j&l, -"jil Function: adjective Etymology: Middle French, from Latin agilis, from agere to drive, act -- more at AGENT Date: 1581 1 : marked by ready ability to move with quick easy grace 2 : having a quick resourceful and adaptable character <an agile mind> Duden: a gil [lat.] flink, beweglich, behände; A gi li tät Flinkheit, Beweglichkeit Seite 7

Was ist Agility? (1) Agility-Team Buxtehude: Agility ist eine verhältnismäßig junge Hundesportart, die ihren Ursprung in England hat. Agility ist ein dem Springreiten nachempfundener Sport, bei dem Hund und Mensch als Team immer wieder neue Aufgaben in einem Parcour mit hundgerechten Geräten erfüllen müssen. [ ] Aber nicht nur die Behendigkeit von Hund und Hundeführer ist wichtig für das Ausüben von Agility, sondern auch ein großes Maß an Harmonie zwischen diesen Beiden. [ ] Wichtig ist auch zu erwähnen, daß den Hunden beim Agility nichts unnatürliches abverlangt wird, sondern sämtliche Bewegungsabläufe im Wesentlichen denen der Jagd im Rudel entsprechen. Seite 8

Was ist Agility? (2) Bevor man jedoch mit seinem Hund ein gezieltes Agility- Training beginnt, sollte es für jeden Hundeführer eine Selbstverständlichkeit sein, seinen Hund einem Gesundheitscheck beim Tierarzt zu unterziehen[ ]. Diese Vorsorgemaßnahmen sind wichtig, weil Hunde wegen der Freude am gemeinsamen Sport und Spiel ihre Schmerzen meistens erst sehr spät anzeigen. Seite 9

Das Manifest der Agilen Software-Entwicklung Durch das Entwickeln von Software und indem wir anderen bei der Entwicklung helfen, erschließen wir bessere Wege der Software- Entwicklung. Durch diese Arbeit haben wir folgende Werte zu schätzen gelernt: Individuen und Interaktionen sind wichtiger als Prozesse und Werkzeuge. Funktionierende Software ist wichtiger als umfassende Dokumentation. Kundenzusammenarbeit ist wichtiger als Vertragsverhandlungen. Auf Änderungen reagieren ist wichtiger als einem Plan zu folgen. Wir schätzen die Punkte auf der rechten Seite, aber wir bewerten die Punkte auf der linken Seite höher. (Kent Beck, Alistair Cockburn, Martin Fowler et al., Feb 2001) Seite 10

Inhalt Beispiel für erfolgreiche Softwareentwicklung Agile Softwareentwicklung Klassische Erfolgsfaktoren der Softwareentwicklung Analyse anhand der Prinzipien des agilen Manifests Ergebnisse Seite 11

Klassische Erfolgsfaktoren der Software-Entwicklung Quellen: Die Entwicklung von Software-Systemen: Prinzipien, Methoden, Sprachen, Werkzeuge. (Helmut Balzert, 1982) In diesem Buch wird [ ] der Versuch gemacht, allgemeingültige Prinzipien in den Vordergrund zu stellen, die unabhängig von Methoden und Sprachen bei jeder Software-Entwicklung beachtet werden sollen. Wien wartet auf Dich! ( Peopleware ) (Tom DeMarco u. Timothy Lister, 1987) Der Faktor Mensch im DV-Management Seite 12

Inhalt Beispiel für erfolgreiche Softwareentwicklung Agile Softwareentwicklung Klassische Erfolgsfaktoren der Softwareentwicklung Analyse anhand der Prinzipien des agilen Manifests Ergebnisse Seite 13

Prinzipien hinter dem agilen Manifest Die 17 Unterzeichner des Agile Manifesto konnten sich auf 12 Prinzipien einigen, die hinter diesem Manifest stehen. Auf detaillierteren Ebenen war keine Einigung mehr möglich. 12 Prinzipien als Grundlage des Vergleichs mit den klassischen Erfolgsfaktoren aus Balzert und DeMarco : Prinzipien des agilen Manifests Klassische Erfolgsfaktoren Erfolgsfaktoren der 1822 S inform Seite 14

Prinzipien Nr. 1 + 2 Die höchste Priorität liegt darin, den Kunden durch frühe und zahlreiche Lieferungen hochwertiger Software zufrieden zu stellen. Funktionierende Software muss regelmäßig geliefert werden, innerhalb weniger Monate, wobei der kürzeren Zeitspanne eindeutig der Vorzug zu geben ist. Im Rahmen der Software-Entwicklung bedeutet Prototyp ein funktionsfähiges Produkt, das bereits vor der Entwicklung des endgültigen Software-Produkts vorliegt. (Balzert) Releasezyklen von 2 bis 6 Monaten. Dabei Ca. 30% Analyse als Aufwandsprojekt Ca. 70% Umsetzung als Festpreisprojekt Seite 15

Prinzip Nr. 3 Funktionierende Software ist der primäre Maßstab für den Fortschritt. Notwendig zur Planung gehört die Kontrolle, d. h. das möglichst lückenlose Messen des Entwicklungsfortschritts am Plan. [ ] Meilensteinberichte oder Projektstatusberichte dienen zur Information des Projektleiters. (Balzert) Analyse: Status anhand fertiggestellter Dokumente Projekte in vertrautem Kontext: Status durch Statusberichte Projekte in neuem Kontext: Status anhand fertiggestellter Software Seite 16

Prinzip Nr. 4 Veränderte Anforderungen sollten immer positiv aufgenommen werden, selbst wenn sie sich erst spät in der Entwicklung zeigen. Agile Verfahren nutzen Änderungen zum Wettbewerbsvorteil des Kunden. [ ] ein System [muß] so strukturiert sein, daß Änderungen während der Systementwicklung und am fertigen System überschaubar und leicht durchführbar sind. (Balzert) Reduzierung der Änderungsanforderungen durch gute Analyse Sammlung der Änderungsanforderungen für nächstes Release Seite 17

Prinzip Nr. 5 Geschäftsleute und Entwickler arbeiten täglich gemeinsam im Projekt. Erstellung der Anforderungen im Dialog mit dem Auftraggeber und u. U. den Benutzern. (Balzert) Analyse als eigenes Aufwandsprojekt Softwareentwickler verfügen auch über Fachwissen Im Realisierungsprojekt fachliche Ansprechpartner beim Kunden Seite 18

Prinzip Nr. 6 Bauen Sie ihr Projekt um einzelne motivierte Mitarbeiter herum auf. Geben Sie diesen Mitarbeitern die Umgebung und die Unterstützung, die sie benötigen, und vertrauen Sie darauf, dass sie ihre Arbeit gut machen. gute Leute einstellen diese glücklich machen, damit sie bleiben sie möglichst frei arbeiten lassen (DeMarco) Vielseitige und wechselnde Aufgaben für alle Management by Objectives Eigenverantwortliche Teams Seite 19

Prinzip Nr. 7 Die effizienteste und effektivste Methode zur Informationsübermittlung für und innerhalb eines Entwicklungsteams besteht in der direkten Kommunikation. Die kontrollierte dezentralisierte Organisationsstruktur [ ] Jeder kommuniziert mit jedem und tauscht auch seine erstellten Teilprodukte [ ] aus. (Balzert) Keine räumlich verteilte Entwicklung Kleine Teams bzw. Teilteams von max. 7 Leuten Open-Door-Policy Seite 20

Prinzipien Nr. 8 und 9 Die besten Architekturen, Anforderungen und Designs entwickeln sich in Teams, die sich selbst organisieren. Ständige Aufmerksamkeit gegenüber technisch hervorragender Qualität sowie gutem Design verbessert die Agilität. Änderbarkeit (modifiability): Grad, in dem ein Produkt den Einbau von Änderungen erleichtert, wenn die Art der gewünschten Änderung festgelegt ist. (Balzert) Eigenverantwortliche Teams Projektkultur der Zielorientierung Rolle Chefarchitekt Refactoring nach Releasezyklen Seite 21

Prinzip Nr. 10 Agile Prozesse fördern nachhaltige Entwicklung. Geldgeber, Entwickler und Benutzer sollten endlos ein beständiges Tempo beibehalten können. (Keine Entsprechung) Regelmäßige Releasezyklen (2 3 pro Jahr) Berechenbare Projekte durch Termin- und Budgettreue Wochenendarbeit ist absolute Ausnahme Seite 22

Prinzip Nr. 11 Schlichtheit - die Kunst, die Menge der nicht geleisteten Arbeit zu maximieren - ist essenziell. (Keine Entsprechung) Schlankes Vorgehensmodell, das jeweils an Projektsituation angepasst wird Kein unnötiges komplexes Design der Anwendungen Seite 23

Prinzip Nr. 12 Die Teams müssen in regelmäßigen Abständen darüber beraten, wie sie noch effektiver arbeiten können und ihr Verhalten dann entsprechend anpassen. Qualitätssicherung durch Kollegen: In Firmen, in denen qualitätssichernde Maßnahmen unter den Mitarbeitern aktiv betrieben werden [ ] gibt es einen natürlichen Trend zur Vereinheitlichung von Methoden. (DeMarco) Refactoringprojekte Entwicklerworkshops Kaffeeküche Seite 24

Inhalt Beispiel für erfolgreiche Softwareentwicklung Agile Softwareentwicklung Klassische Erfolgsfaktoren der Softwareentwicklung Analyse anhand der Prinzipien des agilen Manifests Ergebnisse Seite 25

Ergebnisse Einige agile Prinzipien sind nicht neu, einige schon. Ohne gute, selbstständige, motivierte Mitarbeiter lassen sich die agilen Prinzipien nicht umsetzen. Die angewendeten Prinzipien und das eingesetzte Vorgehensmodell müssen zur Projektkultur im Unternehmen passen. Seite 26

Ergebnisse im Kontext der 1822 S inform Die Branche und die Kunden sind mit entscheidend dafür, wie agil Software entwickelt werden kann. Permanente, insb. späte Änderungsanforderungen können durch den Einsatz der selben guten Mitarbeiter für Analyse und Entwicklung und geeignet kurze Releasezyklen stark eingeschränkt werden. Seite 27

Vielleicht sind Sie schon agil, ohne es zu wissen? Vielen Dank für Ihre Aufmerksamkeit! http://www.1822-s-inform.de/ 2003 1822 S inform