SOFTWARE ENGINEERING

Wir entwickeln Software auf der Basis eines praxisorientierten und dynamischen Engineering Prozesses, den wir aus der Praxis heraus entwickelt haben.

  
Schematische Darstellung des von uns verwendeten Entwicklungsprozesses

Wie die Erfahrung zeigt, kann kein noch so detailliert ausformuliertes Pflichtenheft alle Eventualitäten, die sich in der Entwicklungsphase ergeben, vorhersehen. Manchmal führen auch wohlüberlegte Spezifikationen zu Resultaten, die nicht im Sinne des Erfinders gewesen wären.

Unser Engineering Prozess ist darauf ausgelegt, mit solchen Eventualitäten umzugehen und sie positiv im Sinne der Qualität des Endproduktes zu nutzen.

Wir haben hierfür einen Prozess adaptiert, der ursprünglich aus der agilen Softwareentwicklung stammt und als "Agile Change Management" bezeichnet wird. Hintergedanke ist dabei, die Entwicklungsphase in überschaubare Einzelschritte aufzuteilen, die jeweils ein Stück lauffähige und damit bewertbare Software produzieren.

Diese Teilergebnisse werden gemeinsam mit dem Auftraggeber einem Review unterworfen. Sollten sich Erkenntnisse ergeben, die es angeraten erscheinen lassen, die Spezifikation in bestimmten Bereichen zu modifizieren, so kann dies erfolgen, bevor der nächste Entwicklungsschritt in Angriff genommen wird. Konzeptionelle Unzulänglichkeiten werden auf diese Weise rechtzeitig erkannt. Eine Fortpflanzung von Defiziten bis zum Endprodukt wird wirksam verhindert.

Durch solch einen adaptiven Prozess wird vermieden, dass das Entwicklungsergebnis zwar der ursprünglichen Spezifikationen entspricht, sich jedoch nur mit Abstrichen für den geplanten Einsatzzweck eignet.

Die während des Entwicklungsprozesses gewonnenen Erkenntnisse werden genutzt und führen zu einem qualitativ höherwertigen Endergebnis.