© Excellent backgrounds/Shutterstock.com
Java Magazin
Stabile Produktion und Betrieb von Software in der Industrie

Ich habe fertig? Nicht ganz!

In Zeiten immer kleiner werdender und schneller evolutionierender Softwaresysteme rückt ein bislang eher stiefmütterlich betrachteter Arbeitsteil eines Entwicklungsteams mehr und mehr in den Fokus: der stabile Softwarebetrieb.

Sascha Rüssel, Joachim Arrasz


Video: Effektive User Stories – Wie Sie Ihre Produktivität in Projekten deutlich steigern können

Keine Software ist einfach fertig. Mit dem ersten Release, der Version 1.0, geht die eigentliche Arbeit erst los. Nun wird sich zeigen, ob das Entwicklungsteam auch den nachhaltigen Betrieb der Lösung im Auge hatte. Um Struktur und Priorität in das Thema zu bekommen, haben wir es in drei einzelne Artikel aufgespalten, die sich auf je eine Anforderung fokussieren (Abb. 1).

Abb. 1: Phasen eines Softwareprojekts

Los geht es mit der Herausforderung, die Weichen für die weitere Entwicklung in einem Projekt zu stellen, obwohl es aktiv in Produktion ist. Man muss Anpassungen an vorhandenen und neuen Features sowie Bugfixes planen. Diese Änderungen sollten die Stabilität der Anwendung weiter verbessern – oder zumindest erhalten. Um das zu erreichen, stellen wir zuerst einmal jene Weichen, mit denen aktuelle Versionen der Entwicklung schneller an den Kunden gebracht werden können. Das erreichen wir über Automatisierung möglichst vieler betriebsrelevanter Themen. Wir bekommen deutlich früher Feedback zu den Änderungen, und der Kunde kann so früher von den Änderungen profitieren. Darüber hinaus schaffen wir es über die Automatisierung, den Menschen als Fehlerfaktor herauszunehmen. Somit entwickeln wir einen stabilen Pfad, um unsere Entwicklungsleistung auch zu installieren. Grundvoraussetzung für einen solchen Pfad ist eine vereinheitlichte Konfiguration.

Was bisher geschahIn einer vorangegangenen Artikelserie im Java Magazin [1] haben wir gezeigt, wie man grundlegende Aspekte der Softwareentwicklung so gestaltet, dass die Software sauber und nachhaltig zu betreiben ist. Dabei haben wir aufgezeigt, wie wichtig unter anderem das so unbeliebte Logging ist. Konkret gingen wir auf Perfomance und Failover bzw. Loadbalancing-Problemstellungen ein und wie man diese Risiken minimieren kann. Wegzaubern geht leider immer noch nicht. Zu guter Letzt haben wir gezeigt, wie wir aus den statistischen Informationen Trends ableiten können, die uns letztlich helfen, eine stabile, produktive Umgebung bereitzustellen.

Es gibt verschiedene Werkzeuge, die uns dabei unterstützen, den Infrastrukturcode vom Businesscode zu trennen und die Konfiguration für verschiedene Umgebungen, Tests und Produktion, aber auch diverse Plattformen herzustellen. Diese Gedanken sollte man sich bereits zu Beginn einer Entwicklung machen.

Ein wichtiger Faktor ist die Laufzeit des Projekts. Lohnt es sich überha...

Java Magazin
Stabile Produktion und Betrieb von Software in der Industrie

Ich habe fertig? Nicht ganz!

In Zeiten immer kleiner werdender und schneller evolutionierender Softwaresysteme rückt ein bislang eher stiefmütterlich betrachteter Arbeitsteil eines Entwicklungsteams mehr und mehr in den Fokus: der stabile Softwarebetrieb.

Sascha Rüssel, Joachim Arrasz


Video: Effektive User Stories – Wie Sie Ihre Produktivität in Projekten deutlich steigern können

Keine Software ist einfach fertig. Mit dem ersten Release, der Version 1.0, geht die eigentliche Arbeit erst los. Nun wird sich zeigen, ob das Entwicklungsteam auch den nachhaltigen Betrieb der Lösung im Auge hatte. Um Struktur und Priorität in das Thema zu bekommen, haben wir es in drei einzelne Artikel aufgespalten, die sich auf je eine Anforderung fokussieren (Abb. 1).

Abb. 1: Phasen eines Softwareprojekts

Los geht es mit der Herausforderung, die Weichen für die weitere Entwicklung in einem Projekt zu stellen, obwohl es aktiv in Produktion ist. Man muss Anpassungen an vorhandenen und neuen Features sowie Bugfixes planen. Diese Änderungen sollten die Stabilität der Anwendung weiter verbessern – oder zumindest erhalten. Um das zu erreichen, stellen wir zuerst einmal jene Weichen, mit denen aktuelle Versionen der Entwicklung schneller an den Kunden gebracht werden können. Das erreichen wir über Automatisierung möglichst vieler betriebsrelevanter Themen. Wir bekommen deutlich früher Feedback zu den Änderungen, und der Kunde kann so früher von den Änderungen profitieren. Darüber hinaus schaffen wir es über die Automatisierung, den Menschen als Fehlerfaktor herauszunehmen. Somit entwickeln wir einen stabilen Pfad, um unsere Entwicklungsleistung auch zu installieren. Grundvoraussetzung für einen solchen Pfad ist eine vereinheitlichte Konfiguration.

Was bisher geschahIn einer vorangegangenen Artikelserie im Java Magazin [1] haben wir gezeigt, wie man grundlegende Aspekte der Softwareentwicklung so gestaltet, dass die Software sauber und nachhaltig zu betreiben ist. Dabei haben wir aufgezeigt, wie wichtig unter anderem das so unbeliebte Logging ist. Konkret gingen wir auf Perfomance und Failover bzw. Loadbalancing-Problemstellungen ein und wie man diese Risiken minimieren kann. Wegzaubern geht leider immer noch nicht. Zu guter Letzt haben wir gezeigt, wie wir aus den statistischen Informationen Trends ableiten können, die uns letztlich helfen, eine stabile, produktive Umgebung bereitzustellen.

Es gibt verschiedene Werkzeuge, die uns dabei unterstützen, den Infrastrukturcode vom Businesscode zu trennen und die Konfiguration für verschiedene Umgebungen, Tests und Produktion, aber auch diverse Plattformen herzustellen. Diese Gedanken sollte man sich bereits zu Beginn einer Entwicklung machen.

Ein wichtiger Faktor ist die Laufzeit des Projekts. Lohnt es sich überha...

Neugierig geworden?


    
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang