Softwareentwicklung

innowerk entwickelt seit vielen Jahren Softwaresysteme in äußerst dynamischen Marktumfeldern für namhafte Konzerne und führende Unternehmen aus dem Mittelstand. Auch Startups zählen zum Kundenstamm der innowerk. In vielen Projekten wurden umfangreiche Erfahrungen mit unterschiedlichen agilen Software-Entwicklungsansätzen gesammelt (zum Beispiel mit SCRUM siehe nachfolgende Abbildung).

Besonders bewährt haben sich an die jeweilige Kundensituation angepasste SCRUM-Modelle für mittelgroße bis große Projekte oder Lean & Kanban für kleinere, besonders schnelle Projekte.

Angepasst bedeutet, dass diese Vorgehensweisen in der Regel nicht 1:1 nach Lehrbuch, sondern mit Verstand angewendet werden. Vorteile wie zum Beispiel Fokus auf Softwareerstellung oder frühes Kundenfeedback werden gezielt genutzt, Nachteile und Risiken werden minimiert.

So wurde zum Beispiel in einem SCRUM-Softwareprojekt mit vielen Schnittstellen zu Nachbarsystemen die Rolle Integrationsmanager zusätzlich definiert, um die Integration in die Kundenlandschaft von Sprint zu Sprint sicher zu stellen. In jedem innowerk Softwareprojekt gibt es zudem einen Architekten, der die übergreifenden technischen Konzepte verantwortet sowie deren Konsistenz und Transparenz im Team sicherstellt.

In innowerk Projekten entsteht generell eine technische und fachliche Dokumentation bzw. wird von Sprint zu Sprint inkrementell fortgeschrieben. Diese fällt nicht dem Label der „Agilität“ zum Opfer, da die Dokumentation Voraussetzung für die häufig viele Jahre dauernde Release-Weiterentwicklung und die Einhaltung der Architekturprinzipien oder der Coding-Guidelines ist. Continuous Delivery, Continuous Integration und Testautomatisierung sind weitere wichtige Faktoren zur Absicherung einer raschen und qualitativ hochwertige Softwareentwicklung bei innowerk. Gleiches gilt für automatische Codeanalysen mit Werkzeugen wie SonarQube/Sonar way oder dem StyleCop/ReSharper.