Continuous Integration

Was früher der einfache Buildserver war, ist heute zu einem Prozess geworden welcher eine Entwicklung ganzheitlich unterstützen soll. Agilität in den kurzen Entwicklungszyklen steht dabei oft im Vordergrund ebenso das Ziel einer höheren Code-Qualität mittels schnelleren Buildergebnissen. Zusätzlich gibt es aber noch die Projektsteuerung (siehe Application Lifecycle Management) welche – z.B. im iOS App Kontext gesehen – mehr ist als nur einen „Xcode-Build“-Prozess anzustoßen. CI-Systeme sind Tools welche Phasenübergreifend in den Application Lifecycle eingreifen, diese beschränken sich also nicht mehr nur auf die reine Entwicklungsphase sondern unterstützen den Projektleiter bei der Steuerung und Überwachung eines größeren Spektrums des Projekts.

Ohne nun groß in die Tiefen des Application Lifecycle Managements abdriften zu wollen, hier nun eine kleine Auswahl an Funktionen welche bisher im Fokus meiner CI-Realisierungsprojekten standen:

  • Leichte Erweiterbarkeit der Infrastruktur für neue Build-Technologien (Zukunftsfähigkeit)
  • Lose Koppelung der verwendeten Tools um diese unkompliziert austauschen zu können
  • Schnittstellen zur Anbindung von Dritt-Tools müssen verfügbar sein
  • Einfache Modellierung von Workflows zur Steuerung eines CI-Prozesses
  • Einfaches Reporting welches in den jeweiligen Application Lifecycle einfließen kann (und auch sollte!)
  • Nutzbarkeit für automatisierte Regressionstests (siehe Mobile Testing)
  • Leicht bedienbar für das Team

Wie kann ich Ihnen nun helfen?

Auf Grund meiner jahrelangen Erfahrung in der Entwicklung von Java-Software im Enterprise Umfeld und seit Mitte 2011 nun verstärkt im Bereich der mobilen Apps als meine Kernkompetenz, habe ich in meinen Kundenprojekten zahlreiche Entwicklungsprojekte geleitet welche ein modernes CI-System verwendet haben. In Zusammenarbeit mit Ihrem Entwicklungsteam würde eine CI-Werkzeugempfehlung erstellt werden, welche Ihren Application Lifecycle effizient unterstützen würde. Ich unterstütze Sie somit gerne mit meinen Fähigkeiten als ALM-Engineer um Ihre Unternehmung zum Erfolg zu führen.