Beratung
Selbst als Projektleiter in der Verantwortung stehend kennen wir die
Probleme, die im Rahmen einer Softwareentwicklung auftreten aus eigener
Erfahrung. Schon früh haben wir deshalb auf Vorgehensmodelle, Methoden
und CASE-Werkzeuge gesetzt. Heute können wir auf Erfahrungen in allen
Bereichen zurückgreifen. Herstellerunabhängig sind wir in der Lage, aus
dem vorhandenen Angebot von Methoden, Werkzeugen und Prozessen eine
adäquate Lösung zu entwickeln, die Rücksicht auf die individuelle
Situation des Kunden nimmt. Hierbei setzen wir bewusst folgende
Schwerpunkte:
Anforderungsmanagement
Ca. 75 % des gesamten Fehlerbehebungsaufwands entstehen durch ungenaue, unvollständige oder
widersprüchliche Anforderungen. Wir bieten Unterstützung in der Phase
des Requirements-Managements, helfen bei der Organisation der
Anforderungen und unterstützen bei der adäquaten Dokumentation. Um den
Überblick zu behalten, helfen wir Ihnen auch beim Einsatz eines
entsprechenden Werkzeugs, und das von der Auswahl über Installation und
Schulung bis hin zum Coaching.
Phasenmodelle
Der oberste Organisationsgrundsatz lautet Angemessenheit. Viele
Entwicklungsprojekte scheitern daran, dass diesem Fakt nicht Rechnung
getragen wird. Ohne etablierte Aufbau- und Ablauforganisation sind
komplexe Softwareentwicklungen nicht realisierbar. Wir können auf
Erfahrungen mit den best dokumentierten Vorgehensmodellen, wie dem
Rational Unified Process (RUP) oder dem Entwicklungsstandard des Bundes,
dem V-Modell 97 zurückgreifen. Auch hier gilt, dass der Erfolg sich nur
einstellen kann, wenn nicht einfach vorgefertigte Schablonen verwendet
werden, sondern mit Augenmaß der Prozess auf die jeweiligen
Gegebenheiten maßgeschneidert wird.
OOAD
Kein Hausbau ohne Grundriss, keine Elektronik ohne Schaltplan, keine Maschine ohne Explosionszeichnung.
Selbst jedes Eigenbauregal wird für den Zusammenbau mit detaillierter Aufbauanleitung geliefert.
Dagegen ist die durchgängige Dokumentation von Funktionen und Daten in der Softwareentwicklung noch
längst keine Selbstverständlichkeit. Dabei besteht seit der Definition der Unified Modeling Language
(UML) zum ersten Mal ein akzeptierter Standard zur objektorientierten Analyse und Design.
Hierdurch ist erstmalig eine adäquate Methode zur technischen Analyse und zur Modellierung der
Systemarchitektur gegeben. Praktisch ohne zusätzlichen Aufwand entsteht die dazugehörige
Dokumentation. Erweiterungen können so schneller implementiert werden, die Fehleranfälligkeit wird
verringert, die Wartbarkeit erhöht.
Werkzeuggestützte Softwareentwicklung
Moderne Softwareentwicklungswerkzeuge erlauben eine wesentlich höhere Integration der Entwicklungsphasen
Anforderungsanalyse, Entwurf, Implementierung und Test als es herkömmlicherweise möglich ist.
Nichtsdestotrotz entspricht die Werkzeugnutzung in der Praxis oft noch nicht den technischen Möglichkeiten.
Investitionen in Werkzeuge und Ausbildung bei schwer zu quantifizierendem Nutzen schrecken oftmals ab.
Hinzu kommt, dass bei dem täglichen Projektstress ohnehin keine Zeit für Neues bleibt.
Die Berater von deckstein consulting kennen diese Situation und versuchen deshalb nicht ein Standardprogramm zu
implementieren, sondern orientieren sich an den konkreten Wünschen und Bedürfnissen des Kunden. So werden
Restriktionen, die sich aus einem Projektablauf ergeben, genauso berücksichtigt wie aufbauorganisatorische
Eigenschaften von Unternehmen oder begrenzte Budgetvoraussetzungen. Es gibt immer einen Weg!
Qualitätssicherung
Dass eine erfolgreiche Qualitätssicherung nicht nur entscheidend für jede Kundenzufriedenheit ist,
sondern auch Schlüssel für eine effiziente Softwareentwicklung, wird von vielen Unternehmen, die
Software entwickeln, nicht wahrgenommen. Dass sich nicht nur Programme sondern auch Anforderungen
testen lassen, ebenso wenig. Die Mitarbeiter von deckstein consulting definieren Qualitätssicherung
immer im Kundenkontext. Sie suchen nach kostengünstigen Möglichkeiten und wählen aus dem vorhandenen
Spektrum die jeweils optimale aus. Hierbei beherrschen sie wiederum sowohl Methode als auch
Werkzeug.
Konfigurations- und Änderungsmanagement
Welche Version ist bei welchem Kunden im Einsatz? Ist ein bestimmter Fehler schon gemeldet, priorisiert,
behoben oder getestet worden? Welche Programmversion verwendet welche Reportversion? Welches Feature wird
in welche Programmvariante implementiert? Die Beantwortung dieser Fragen ist nicht nur für Projektleiter
von Interesse. Je größer das Vorhaben, umso unverzichtbarer ist ein funktionierendes Konfigurationsmanagement
für einen reibungslosen Entwicklungsablauf. Eine Analyse der bestehenden Strukturen ist dabei Voraussetzung
für die Verbesserung des Konfigurations- und Änderungsmanagements in der Kundenumgebung. Die Verknüpfung der
verschiedenen Entwicklungsphasen, organisatorische Regelungen und eine entsprechende Werkzeugunterstützung
bilden dabei die Struktur, die auch größere Software-Vorhaben ermöglichen.