Artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com 10 Gründe für das...

Preview:

Citation preview

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

10 Gründe für das Fehlschlagen von

Softwareprojekten

Thomas Schissler, artiso AG

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Wer bin ich?

Thomas SchisslerSoftware-Architekt und Projektleiter artiso AG

Schwerpunkte sind Team Foundation Server

Entwicklungsprozesse

Software-Architektur und Software Design

Leiter der .net Developergroup Ulm (www.dotnet-ulm.de)

Blog : http://www.artiso.com/problog

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Wer sind Sie?

Was machen Sie?

Produktentwicklung

Auftragsprogrammierung

Interne Entwicklung

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Wer sind Sie?

Welche Position haben Sie?

Entwickler

Projektleiter

Sonstiges?

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Wer sind Sie?

Wie definieren Sie ein fehlgeschlagenes Software-Projekt?

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Wer sind Sie?

Waren Sie schon mal an einem fehlgeschlagenen Software-Projekt beteiligt?

Termin oder Budget um mehr als 50% überschritten

Termin oder Budget um mehr als 100% überschritten

Kunde unzufrieden

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

1 Zunehmende Komplexität

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Problemsituationen

Bewährte Prozesse werden beibehalten obwohl das Umfeld sich verändert hat

Moderne Softwareentwicklung erfordert geänderte Team- und Projektstrukturen die aber wiederum geeignete Prozesse voraussetzen.

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Komplexität

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Komplexität beherrschen

Spezialisten vs. Generalisten

Über Prozesse relevante Themen addressieren

Risiken erkennen und vorbeugen

Abstraktion durch Tool-Unterstützung

Komplexität reduzieren

Dokumentation

Architektur

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

2 Unklare Spezifikation

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Problemsituationen

Kunde akzeptiert implementierte Lösungen nicht

Fehlende Basis für aufwandsabschätzung

Entwickler hat keine genaue Beschreibung der Funktion für die Implementierung

Tester stellen Spezifikationslücken fest

Ewige Nacharbeiten

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Textliche Spezifikation

Kunden sollen gelöscht werden können. Der Lösch-Vorgang kann durch das Kontext-Menü, durch ein Icon in der Symbol-Leiste oder durch die Entfernen-Taste auf der Tastatur ausgelöst werden. Beim Löschen eines Kunden soll zunächst geprüft werden, ob der Kunde Aufträge zugeordnet hat. Ist dies nicht der Fall, kann der Kunde sofort gelsöcht werden. Andfernfalls muss geprüft werden, ob alle Aufträge die dem Kunden zugeordnet sind abgeschlossen sind. Hat der Kunde nicht abgeschlossene Aufträge zugeordnet, so kann der Kund zu diesem Zeitpunkt nicht gelöscht werden und dies soll durch eine entsprechende meldung angezeigt werden. Bei ausschließlich abgeschlossenen Aufträgen soll zunächst der Anwender gefragt werden, ob alle Aufträge zum Kunden ebenfalls gelöscht werden sollen. Wird diese mit Ja bestätigt, werden zunächst die Aufträge und anschließend der Kunde gelöscht. Andernfalls wird der Lösch-Vorgang für den Kunden abgebrochen.

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Workflow Diagramme

Kontext Menu Tree

Icon Symbol-

leiste

Tastatur Entf

Hat Kunde Aufträge?

Kunde löschen

Wollen Sie Aufträge löschen?

Alle Aufträge abgeschlossen

Ja

Kunde löschen

Ja

Löschen nicht möglich

Nein

Löschen? Aufträge löschenJa

Nein

Fertig

Nein

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Funktionsbaum

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Test als Spezifikation

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

3 Unzureichende

Planung

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Problemsituationen

Aufwand und Termine werden nur grob geschätzt, der Kunde pocht aber auf die Einhaltung

Der Aufwand um die Planung zu pflegen ist viel zu hoch

Der aktuelle Projektstatus wird aus dem Bauch beurteilt

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Aufwandsabschätzung

Voraussetzung ist eine detaillierte Spezifikation

Anforderungen werden in Lösungen überführt

Lösungen werden verfeinert und in Aufgaben heruntergebrochen

Aufwand für Aufgaben abschätzen (in Stunden)

Tests wie Aufgaben einplanen

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Aufwandsabschätzung

DEMO

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Terminplanung

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

4 Fehlendes Projekt-

Controlling

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Problemsituationen

Budget ist fast aufgebraucht, aber es fehlen noch wichtige Funktionen

Zugesagte Termine können nicht eingehalten werden

Die Funktionen sind fertiggestellt aber es bleibt keine Zeit zum Testen

Probleme im Projekt werden zu spät erkannt

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Projektcontrolling = Plan – Ist-Vergleich

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Statusaktualisierung

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Zeit-Controlling

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Budget-Controlling

DEMO

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

5 Entscheidungen

aufschieben

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Problemsituationen

Längst bekannte Probleme verursachen einen hohen Anpassungsaufwand

Anpassungen und Fehlerbehebungen müssen über Gewährleistung erbracht werden

Architektur- oder Technologieentscheidungen stellen sich als problematisch heraus

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Probleme möglichst früh addressieren

Regelmäßige Reviews einführen

Erkannte Probleme dokumentieren und deren Lösung planen, nicht aufschieben

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

6 Kommunikation

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Problemsituationen

Missverständnisse führen zu Mehraufwand

Keine konsistente Code-Qualität bei mehren Entwicklern

Kommunikation zwischen Tester und Entwickler ist zu aufwändig

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Contract First Design

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Kommunikation Tester Entwickler

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

7 Qualitätsprobleme

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Problemsituationen

Die Entwicklung verläuft planmäßig, jedoch das Testen und die Fehlerbehebung dauert wesentlich länger als angenommen.

Der Kunde findet im Test-Betrieb zu viele Fehler

Nach Monaten wird festgestellt, dass Ergabnisse, mit denen gearbeitet wurden, falsch waren.

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Testplanung

Planung Implementierung Testen

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Testplanung

Planung Implementierung Testen

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Testplanung

Planung Implementierung

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Testplanung

PlanungImplementierung

Testen

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Testplanung

Iteration

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Test-Methoden

Integration Tests

Manual Tests

UI-Tests

Unit-Tests

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Testaufwand

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

8 Feature Creep

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Problemsituationen

Budget und Termin reichen nicht aus, als Begründung werden ungeplante zusätzliche Funktionen angegeben – aber welche waren das nochmals genau?

Die Architektur-Basis passt irgendwann nicht mehr zu den aktuellen Funktionen

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

UI Driven Development

SenderSenderSender

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

UI Driven Development

SenderSenderSender

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

UI Driven Development

SenderSenderSender

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

UI Driven Development

SenderSenderSender

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

UI Driven Development

SenderSenderSender

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

UI Driven Development

SenderSenderSender

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

UI Driven Development

SenderSenderSender

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Puffer-Verwaltung

DEMO

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

9 Falsche Prioritäten

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Problemsituationen

Punkte die für den Kunden wichtig sind, werden erst erkannt, wenn diese durch den Kunden bemängelt werden.

Probleme werden zu spät im Projekt erkannt und behoben

Entwickler fokusieren sich zu stark auf Technologie-Themen

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Prioritäten richtig festlegen

Den Kunden fragen, was ihm wichtig ist

Prioritäten regelmäßig reviewen

Prioritäten im Team Kommunizieren

Prioritäten betreffen meist nicht-technische Aspekte

Requirement Management

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

V-Modell

User Requirements

Function Specification

Software Design

Developer Tests

Unit-Tests

Acceptance Tests

Implemen-tation

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Requirements und Features

Feature

Tasks

Risks

Tests

Bugs

Feature

Tasks

Risks

Tests

Bugs

Requirement

Requirement

Requirement

Requirement

Requirement

Requirement

Specification Specification

TasksTasks

RisksRisks

TestsTests

Tasks

Risks

Tests

Tasks

Risks

Tests

Module

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Requirement Decomposition

Requirements aufnehmen

Features und Module

definieren

Spezifikation erstellen

Risiken analysieren

Aufgaben planen

Implementieren und Testen

Business Cases

Vision Use Cases

Nicht funkt. Requirements

Tasks / Testanf.

Code / Tests

Qualitäts-dokumente

URFS

SD RADT

AT

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Agiles vs. Klassisches Prozessmodell

Start ZielZiel

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Agiles vs. Klassisches Prozessmodell

Start ZielZiel

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

10 Unterschätzte Technologie-komplexität

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Problemsituationen

Durch den Einsatz einer modernen Technologie hätte Entwicklungsaufwand eingespart oder Vorteile beim Betrieb der Software realisiert werden können

Beim Einsatz einer neuen Technologie ist die Einarbeitszeit deutlich höher als geplant oder die implementierten Lösungen sind nicht ideal.

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Gutes Risiko-Management, Eskalationsszenarien einplanen

Zeit für Evaluierung neuer Technologien einplanen

Durch Architektur Entkopplung ermöglichen

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Fazit

artiso solutions GmbH | Oberer Wiesenweg 25 | 89134 Blaustein | info@artiso.com

Fragen ???

Gerne jetzt.

Oder gerne per Mail an Tschissler@artiso.com

Mein Blog: http:// www.artiso.com/problog

Recommended