Migration SAP Web-GUI

Migration und Weiterentwicklung einer Web-Anwendung für die Bearbeitung von SAP-Workflows

Branche: Softwarehersteller/Systemintegratoren

Kunde: Systemhaus, Thurgau

Zielsetzung:

Das Schweizer Systemhaus mit internationaler Kundschaft im D-A-CH-Raum entwickelt und vertreibt u.a. eine zur Browser-basierten Nutzung der hauseigenen SAP-Erweiterungen geeignete Java-basierte Web-Anwendung. Im Zuge der Produktpflege war diese zu aktualisieren.

Insbesondere sollten Backend- und Frontend-Komponenten für die Nutzung der aktuellen Servlet API 3.0 optimiert werden, und die Module waren auf die aktuellen Versionen von Java 7 und Tomcat 7 zu migrieren. Zudem waren alle verwendeten 3rd-Party Bibliotheken und die in den Build-Prozessen benötigten Maven Plug-Ins zu aktualisieren und gleichzeitig Architektur, Build-Prozesse sowie Installationsroutinen einer Review zu unterziehen.

Umsetzung:

In einer initialen Bestandsaufnahme wurden zunächst mögliche Inkompatibilitäten identifiziert und eine geeignete Vorgehensweise definiert. Anschliessend wurden die Schichten der Anwendung unter Berücksichtigung der gewonnenen Erkenntnisse sukzessive migriert, wobei simultan erste Optimierungen implementiert wurden, bspw.:

  • Verbesserung der Wartbarkeit durch Reengineering redundanter Bestandteile, insbesondere durch deren Entkopplung und die Auslagerung in separate Maven-Artefakte
  • Steigerung der Performance und Verbesserung der Wartbarkeit durch Refactoring obsoleter, redundanter und inperformanter Code-Strukturen
  • Steigerung der Zuverlässigkeit der JUnit-Tests durch Auflösung plattformabhängiger Code-Fragmente
  • Evaluierung von Frameworks zur Erstellung eines plattformunabhängigen grafischen Installers und Entwicklung eines Prototypen

Architektur:

  • Plattformunabhängige, Java-basierte Web-Anwendung
  • Serviceorientierte Mehrschichtenarchitektur mit Kommunikations-, Persistenz-, Logik- und Präsentations-Layern

Tätigkeit:

Analyse, Konzeption, Implementation

Produkte und Technologien:

Spring, Hibernate, Maven, Java SE/EE, SOA, WebServices, SOAP, REST, Apache CXF, JAX-WS, JUnit, WebDAV, Sardine, Apache Tomcat, Xalan, Xerces, H2DB, JDBC, Win Batch, VBS, SAP JCo, Orbeon Forms, XML, XSL, HTML, CSS, JS, MyEclipse IDE, SVN, Nexus, Redmine PMS