Um den dynamischen Projekte-Anforderungen gerecht zu werden kommt ein Vorgehensmodell zur Software-Entwicklung zum Einsatz, welches sich an agile Software-Entwicklungs-Prozesse wie SCRUM oder XP orientiert. Bei Groß-Projekten unserer Kunden haben wir Expertise mit Rational Unified Process (RUP). Ziel ist es, die Produktion von Software fortwährend zu verbessern, um maximale Qualität bei minimalem Aufwand zu erreichen. Dies geht einher mit einer umfassenden projektbezogenen Ausbildung und Schulung unserer Mitarbeiter.
Um die Produktivität auf hohem Niveau halten zu können und gleichzeitig die Anzahl der Fehler die erst im produktiven Einsatz auftreten zu minimieren, wird die Software-Entwicklung in vier Phasen aufgeteilt.
In der Entwicklungs-Phase kann der SW-Entwickler jede beliebige Codeänderung lokal durchführen ohne negative Auswirkungen auf das restliche Team befürchten zu müssen.
Diese lokalen Entwicklungsstände werden in der Integrations-Phase in einem gemeinsamen Sourcecode-Repository zusammengeführt und das Zusammenspiel der einzelnen Komponenten getestet. Essentiell für den Erfolg ist dabei eine weitgehende Automatisierung dieser Schritte. Dieses wird durch den Einsatz Continuous-Integration Plattformen wie Hudson oder CruiseControl erreicht. Die Qualität und das Refactoring wird des Weiteren durch eine weitreichende Testabdeckung gewährleistet.
In der Staging-Phase wird die Software in einer Umgebung getestet, die möglichst exakt die Gegebenheiten beim Kunden widerspiegelt. In dieser Phase können auch Aktivitäten wie Demonstrationen oder Produkt-Schulungen Berücksichtigung finden.
Schließlich werden die erstellten Software-Artefakte in der Production-Phase beim Kunden produktiv gestellt.


