Wie ITGAIN den Entwicklungsprozess automatisiert hat…

Einführung SCM bei ITGAIN

Während der Hauptfokus der ITGAIN auf dem Beratungsgeschäft liegt, gibt es seit Januar 2016 auch den Bereich "Product Development". Die Kollegen arbeiten hauptsächlich an Pflege und Weiterentwicklung unserer SpeedGain Familie.
Daneben haben sich in den über 15 Jahren ITGAIN einiges an Tools und Hilfsmitteln angesammelt, welche vielleicht mal als kleine Einmann-Projekte gestartet sind und mittlerweile zu ausgereiften Lösungen für den internen Gebrauch herangewachsen sind. Ein Beispiel ist RITA, welche regelbasiert über eine Drools Engine (https://www.drools.org/) unsere zweitägige ITAKADEMIE plant und ein Curriculum für 120 Mitarbeiter, 6+ parallele Tracks und ca. 40 Vorträge und Workshops erstellt.
Um die gesamte Softwareentwicklung innerhalb der ITGAIN flexibler und effizienter zu gestalten, wurde letztes Jahr begonnen, in die Softwareentwicklungsumgebung eine Sammlung von bewährten Open Source Tools zu integrieren und gleichzeitig die Abläufe weitgehend zu automatisieren.
Es kamen zum Zuge:

  • Buildmanager Jenkins (https://jenkins.io/ - steuert Maven und Gradle)
  • Statische Codeanalyse mit SonarQube (https://www.sonarqube.org/)
  • Artifakt Repository Nexus (https://www.sonatype.com/nexus-repository-sonatype)
  • Anforderungsmanagement und Bugtracker Redmine (http://www.redmine.org/)
  • Testmanagement mit Testlink (http://testlink.org/)
  • Testautomation mit Selenium (http://www.seleniumhq.org/)

Das Ganze wurde in vielen einzelnen Docker Containern aufgebaut und miteinander verknüpft; unterstützt von den Versionsverwaltungssystemen SVN und git.
Einige Monaten nach Fertigstellung der ersten Ausbaustufe  wurden unserer Entwickler nach Feedback gefragt. Hier ein paar Zitate des zurückgespiegelten Antworten:

  • "[...] meiner Meinung nach ist unser ITGAIN SCM kostbar. Während der Entwicklung von (interner Produktname) konnten wir einige Bugs mit Hilfe von SonarQube identifizieren."
  • "Insbesondere die aus meiner Sicht weitreichende Automatisierung von SCM hat die Arbeit verbessert."
  • "die Ergebnisse der statische Codeanalyse genutzt. Als Resultat habe ich [...] Code überarbeitet bzw. einen Review unterzogen. Die Produktqualität ist hierdurch gestiegen (subjektiv)."

Wir planen unsere Systeme mit zusätzlichen Bausteinen zu ergänzen und die Automatisierung fortzuführen, um unseren Entwicklern noch besser helfen zu können.
Haben Sie Fragen zu diesem Artikel? Sprechen Sie uns an!

Vaadin 8 ist raus und stellt strenge Anforderungen!

In einem aktuellen Projekt wird das Vaadin Framework in die bestehende Anwendungslandschaft integriert. Dort ist momentan die Version 7.7.7 im Einsatz.
Als Hauptvorteile für den Einsatz werden folgende Punkte genannt:

Kürzere Eingewöhnungszeiten für die Programmierer, da man gerne in der Haus- und Hofsprache Java (und nicht JavaScript) programmiert und das komponentenbasierende Programmiermodell, welches nun eine ansehnliche und modernen Weboberfläche zur Verfügung stellt.

Seit Ende Februar steht nach mehreren Monaten Betaphase offiziell die neue Version 8 des Frameworks zur Verfügung, welches mit den folgenden Hauptfeatures wirbt (Link in English: https://vaadin.com/framework/whatsnew )

  • Änderungen an der API in Richtung Java8 mit funktionalen Interfaces, Lambda/Stream Unterstützung und verbesserte Typsicherheit usw.
  • Performanceoptimierung durch bessere Handhabung von Datencontainer bzw. direktes Dataobjekt-Binding
  • Weniger Boilerplate Code durch „schlauere“ Defaults
  • HTML Imports und Support für HTML5 Features wie Pagestack für die einfachere Vor-/Zurück Navigation
  • Verbessertes Einbinden von Vaadin Addons
  • Viele weitere Detailverbesserungen für Entwickler

Allerdings kommt die Version 8 auch mit einigen relativ strengen Forderungen einher, welche besonders in Legacy Systemen zu einigen Diskussionen führen werden:

  • Java8 (oder neuer) ist eine zwingende Voraussetzung
  • Servlet Container 3 (was zum Beispiel den noch eingesetzten WLS 10.3.x ausschließt)
  • Entfernung der Unterstützung von Legacy Browsern (IE <=10)
  • Wegfall der Tabellenkomponente, nur noch Benutzung des Grids für tabellarische Präsentationen

Im Moment ist der aktuelle Stand des Frameworks 8.0.5, wobei die Minor Versionserhöhungen schon genutzt wurde, die Kinderkrankheiten der 8er Version zu beheben und gemeldete Bugs auszumerzen.

Es gibt ein Migrationstool, welches bei der Anhebung von Projekten von 7 auf 8 hilft – aber für einige Teile wird immer noch Handarbeit nötig sein!

Die umfangreiche Sammlung von Beispielen mit Codeansicht und mannigfaltigen Einstellmöglichkeiten findet sich unter: http://demo.vaadin.com/sampler/

Wenn Sie Fragen zu Vaadin oder dem Artikel haben, sprechen Sie uns bitte an!

Fachartikel zu Hybrides Data Warehouse am Beispiel von Data Vault – Shared Data in einer virtuellen Architektur

Hybrides Data Warehouse am Beispiel von Data Vault - Shared Data in einer virtuellen Architektur

Gemeinsamer Fachartikel von ITGAIN und EXASOL im Magazin BI-Spektrum Ausgabe 05/2016

In der heutigen BI-Welt müssen Anforderungen der Fachbereiche und gesetzliche Vorgaben sowie die Wünsche der Nutzer von Smart Devices an personenbezogenen Daten in Einklang gebracht werden. Anhand des ...

BI-Plattform – Betrieb und Wartung via Managed Application Services der ITGAIN

ITGAIN betreut die Compliance relevante Dokumentation und Prozesse für eine komplette BI-Plattform. Dazu gehören insbesondere:

  • Autorisierungskonzepte für die Plattform für die Applikationen
  • Risikoanalysen und deren Bewertung
  • Business Requirement Konzepte sowie deren technischen Lösungskonzepte
  • Testfälle und Testdokumentationen für Change-Management Aktivitäten

Das Unternehmen hat für seine Geschäftsbereiche eine globale BI-Plattform aufgesetzt und eingeführt. Die Plattform dient als Basis für ca. 20 Anwendungen zur Analyse, Reporting und Datenverarbeitung für die Prozesse Produktabsatz, Controlling und Forschung des Konzerns. Auf der Plattform werden Informationen für mehr als 20.000 Mitarbeiter weltweit vorgehalten. Die Daten haben dabei unterschiedlichen Informationswert. Angefangen von einfachen operativen Information bis hin zu meldepflichtigen Informationen. Der Kunde muss für die Sicherstellung seiner Compliance Anforderungen einen Schutz der Information sicherstellen und betreiben. Dazu müssen neue Anforderungen und Applikation in die Plattform integriert werden.

Neben der Betreuung der Dokumentation führt ITGAIN durch seine Managed Services umfangreiche Tätigkeiten für die Plattform durch, um die Compliance sicherzustellen. Hierzu gehören unter anderem folgende Tätigkeiten:

  • Betreuung von Berechtigungsanfragen & Usermanagement
  • Erstellung von Security Objekten in MicroStrategy und Konfiguration der Security
  • Beratung & Unterstützung bei Projekten die in die Plattform integriert werden sollen zur Umsetzung aller Compliance relevanter Prozesse
  • Beratung & Unterstützung bei der weiteren Verbesserung der Prozesse die Compliance relevante Punkte berühren
  • Umsetzung von Audit-Findings und Abbau dieser in der gesamten Plattform

Neben dem Betrieb der Plattform aus Compliance & IT-Governance Gesichtspunkten berät ITGAIN den Kunden und die Projektteams zur Umsetzung von effizienten Prozessen nach dem COBIT Framework für die BI-Landschaft. ITGAIN ist damit ein wichtiger Dienstleister und Partner für die Aufrechterhaltung des allgemein etablierten Modells der „3 Lines of Defence“ für den Kunden.

Data, data, metadata – DNA of data architecture?

Betrachtung der Metadaten als DNA für eine Daten-Architektur - ITGAIN stellt den Gedanken auf der DW2016 in Zürich zur Diskussion:

D - Documentation
N - Navigation
A - Automation.

Die Zellen verwenden DNA zur Kenntnis und Steuerung, was, wann und wie sie ihren Einsatz durchführen sollen. Gleiches gilt für eine Daten-Architektur: jeder Prozess eines Data Warehouse kann Metadaten verwenden, um zu wissen, was, wann und wie dieser etwas mit den Daten, der Struktur und Logistik zu tun hat. Lauschen Sie dem Gedanken auf der DW2016 am 21.-22. November 2016 in Zürich. ITGAIN begrüßt Sie gerne auf unserer Session vertreten durch Herrn Dirk Lerner.