Frontend Migration from JSP to Eclipse Scout

Ähnliche Dokumente
Integration von Web Services in J EE Anwendungen mit XFire. 1/26 André Janus - Integration von Web Services in J EE Anwendungen mit XFire

Jörg Neumann Acando GmbH

Mit Legacy-Systemen in die Zukunft. adviion. in die Zukunft. Dr. Roland Schätzle

JOHANNES SEITZ Continuous Integration Extreme!

HP ALM. Was gibt es Neues und wo geht die Reise hin. Thomas Köppner, Technical Consultant, HP

MOBILE ON POWER MACHEN SIE IHRE ANWENDUNGEN MOBIL?!

Unternehmensweite IT Architekturen

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, Java Forum Stuttgart 2007

JONATHAN JONA WISLER WHD.global

DIGICOMP OPEN TUESDAY AKTUELLE STANDARDS UND TRENDS IN DER AGILEN SOFTWARE ENTWICKLUNG. Michael Palotas 7. April GRIDFUSION

Übersicht. Eclipse Foundation. Eclipse Plugins & Projects. Eclipse Ganymede Simultaneous Release. Web Tools Platform Projekt. WSDL Editor.

ENTERPRISE MODERNIZATION

Struts 2 Das Imperium schlägt zurück?

Wie ich lernte die API zu lieben. 19. März sic[!]sec GmbH Industriestraße Gröbenzell

Exkursion zu Capgemini Application Services Custom Solution Development. Ankündigung für Februar 2013 Niederlassung Stuttgart

Cleanroom Fog Generators Volcano VP 12 + VP 18

Exercise (Part V) Anastasia Mochalova, Lehrstuhl für ABWL und Wirtschaftsinformatik, Kath. Universität Eichstätt-Ingolstadt 1

TMF projects on IT infrastructure for clinical research

AnyWeb AG

JavaFX im UI-Technologiedschungel

The State of DSpace. DSpace 6, DSpace 7 und die Entwicklung der DSpace-Community

Rene Schneider GEBIT Solutions GmbH. Integrity - ein innovatives Tool zur Acceptance-Test-Automatisierung

What s New? Skype for Business. Dirk THORMANN

TFS Customzing. in der Praxis. Thomas Gugler. seit 2005 bei ANECON. .NET seit 2002 (happy bday!) Schwerpunkte: MCPD.Net 4.0, MCTS TFS, Scrum Master,

GuiXT und mysap ERP. Regensdorf, April 2004 Dr.Gerhard Rodé, Synactive GmbH

Einführung in das Scrum Framework & welche 10 Praktiken helfen, Scrum wirklich gut zu machen

Java Tools JDK. IDEs. Downloads. Eclipse. IntelliJ. NetBeans. Java SE 8 Java SE 8 Documentation

Geistes-, Natur-, Sozial- und Technikwissenschaften gemeinsam unter einem Dach. Programmes for refugees at Bielefeld University

Aufbau eines IT-Servicekataloges am Fallbeispiel einer Schweizer Bank

Introduction to the diploma and master seminar in FSS Prof. Dr. Armin Heinzl. Sven Scheibmayr

+++ Bitte nutzen Sie die integrierte Audio-Funktion von WebEx (Menü Audio -> Integrated Voice Conference -> Start auswählen), um uns zu hören!!!.

ISO Reference Model

Android Testautomatisierung mit dem Framework Robotium

Product Lifecycle Manager

Workflows mit BPMN & Business Rules mit DMN - Open Source und in Action mit Camunda BPM.

Integration of D-Grid Sites in NGI-DE Monitoring

Mögliche Wege Ihrer Legacy-Applikationen in die Moderne mit Bison Technology. Diego Künzi, Produktmanager Bison Technology, Bison Schweiz AG

Andreas Mösching Senior IT Architekt Hewlett-Packard (Schweiz) GmbH HP Banking Service Center Bern

NotesSession.GetPropertyBroker( )

Matthias Schorer 14 Mai 2013

Model-based Development of Hybrid-specific ECU Software for a Hybrid Vehicle with Compressed- Natural-Gas Engine

Android-Testautomatisierung mit Robotium

The Smart Grid Architecture Model and its application for information system design

Produktivität und Zusammenarbeit für Unternehmen

End-to-End Agility Sind Sie schon agil genug? Mag. Christoph Leithner

ISO Reference Model

SAFe in der Entwicklung von Swisscom TV 2.0. Simon Berg TV Development & Technology Swisscom Privatkunden

Industrie 4.0 Predictive Maintenance. Kay Jeschke SAP Deutschland AG & Co. KG., Februar, 2014

DATA ANALYSIS AND REPRESENTATION FOR SOFTWARE SYSTEMS

Corporate Digital Learning, How to Get It Right. Learning Café

Concepts and Strategies for personalized telemedical Biofeedback-Therapies

Eclipse Scout Heute und Morgen. Jérémie Bresson BSI Business Systems Integration AG

Best-in-Class: Agiles Testen mit TestRail und JIRA

Platform as a Service (PaaS) & Containerization

Markus BöhmB Account Technology Architect Microsoft Schweiz GmbH

SARA 1. Project Meeting

WP2. Communication and Dissemination. Wirtschafts- und Wissenschaftsförderung im Freistaat Thüringen

Einführung in Google Web Toolkit

Projektrisikomanagement im Corporate Risk Management

Von$Siebel$zu$Fusion$als$evolu0onärer$Weg$$$$$$$$$$$$$$$$$$$$$$$ Alexander$Doubek$ Senior$Manager$ $

Mail: Web: juergen-schuster-it.de

Microservices. - Integration der Benutzeroberfläche - Version: Orientation in Objects GmbH. Weinheimer Str.

Testers Architects Enterprise Dev Consultants Professionals VB6 Devs Part-Timers Hobbyists Students Enthusiasts Novices

Dr. Bernd Korves October 05, 2015

Ludwin Poertzgen. Legacy Application Modernization

Technologie Apero. Cloud Data Governance und Life Cycle Management für Microsoft SharePoint richtig umsetzen

Webentwicklung mit Vaadin 7. Theoretische und praktische Einführung in Vaadin 7. Christian Dresen, Michael Gerdes, Sergej Schumilo

6. Jahreskongress der IT-Freiberufler: Oracle-Wettbewerbsvorteile durch qualifizierte IT-Ausbildung

SONAS Projekt OwnCloud Speicher

Continuous Delivery in der Realität eines Großunternehmens

Kapitel zu bearbeitende Aufgaben: 6.1 bis :

Value your IT to get IT Value for your Business! Referenten: Harald J. Loydl, Consultant Lionel Pilorget, Basler Kantonalbank

The app the crashes, before the breakpoint is reached: Code to the event:

Erfahrungsbericht zu JBoss SOA Platform 6 Tech Talk 2013, 17. Oktober 2013, Bern

Testmanagement. Marc Müller Principal

OSGi. The Next Generation Java Service Platform. SOA - The Java Way or My classpath is killing me. Michael Greifeneder

Leichtgewichtige Web 2.0-Architektur für komplexe Business-Anwendungen Nicolas Moser PRODYNA AG

MOBILE ENTERPRISE APPLICATION PLATFORM (MEAP)

WE SHAPE INDUSTRY 4.0 BOSCH CONNECTED INDUSTRY DR.-ING. STEFAN AßMANN

Applying Pléiades in the ASAP project HighSens

S23 BPMN 2.0 in der Praxis Vom fachlichen Modell zum ausführbaren Prozess. Bernd Rücker

Software Development Process - Overview

Customer-specific software for autonomous driving and driver assistance (ADAS)

Pilot Project Biogas-powered Micro-gas-turbine

Vocational Education and Training (VET) in Switzerland and Schaffhausen

Transkript:

Frontend Migration from JSP to Eclipse Scout Peter Nüdling Raiffeisen Schweiz Jérémie Bresson, Peter Barthazy BSI Business Systems Integration AG Eclipse Finance Day, Zürich, 31. Oktober 2014 Seite 1

WebKat: A Banking Application WebKat Credit Application Component Maintenance of WebKat too expensive UI built with RTK RTK UI Framework RTK is based on JSP Developed inhouse Not widely used within organisation Maintenance too expensive Seite 2

WebKat: A Banking Application WebKat Business Scope Tragbarkeit Kreditvorlage Darlehensantrag / Vertrag Hypothekarantrag / Vertrag Kontokorrentkreditantrag / Vertrag Produktvereinbarung Darlehen / Hypothek Kautionslimitenantrag Baukreditantrag Bewilligung Freigabe Seite 3

WebKat: A Banking Application Seite 4

The Project WebKat Modernization Focus on UI Provide 1:1 functionality Replace RTK/JSP with Open Source Alternative Goals Reduce WebKat Maintenance Costs Discontinue development of RTK No (re)training of users Seite 5

Project Schedule February to October 2014 MS Description Duration Responsible 0 Project Start BSI 1 Delivery of Software, Ready for Tests +4 Months BSI 2 Initial Acceptance Tests +1 Month Raiffeisen 3 Fixing of all known P1 and P2 +3 Weeks BSI 4 Release Acceptance Tests / Pilot +4 Weeks Raiffeisen 5 Fixing of all Bugs reported until MS 4 +2 Weeks BSI Seite 6

Frontend Migration from JSP to Eclipse Scout Why Eclipse Scout? Seite 7

Why Eclipse Scout? Requirements for RTK Replacement 1. Open Source (Cost control) 2. Actively maintained (Protection of investment) 3. Minimal training for existing developer group (Productivity) 4. Consulting available (Conrolled progress) 5. Support available (Security, reliability) Seite 8

Eclipse Scout Benefits Open Source Simple to learn (based on Java and Eclipse) Long term strategy Increased developer productivity Professional support Seite 9

Live cycle Eclipse Scout Benefits 2-5 Jahre 2 GUI Years 2-5 Jahre 5-10 Years >10 Jahre My Application fancy GUI technology 5-10 Years My Application my fancy GUI Code my App. Code Seite 10 Raiffeisen Schweiz Eclipse Finance Day 2014 Peter Nüdling & Jérémie Bresson

Live cycle Eclipse Scout Benefits 2-5 Jahre >10 Jahre 2 GUI Years 5-10 Years Scout >10 Jahre 5-10 Years My Application My Application fancy GUI technology Scout Framework Scout gen. Code my Scout App. Code my App. Code Seite 11 Raiffeisen Schweiz Eclipse Finance Day 2014 Peter Nüdling & Jérémie Bresson

Frontend Migration from JSP to Eclipse Scout Eclipse Scout Highlights Seite 12

Eclipse Scout Actively maintained https://www.openhub.net/p/eclipsescout 12 Month Summary: Oct 22 2013 Oct 22 2014 1015 Commits Down -133 (11%) from previous 12 months 42 Contributors Up +9 (27%) from previous 12 months. Seite 13

Eclipse Scout Open Source Seite 14

Eclipse Scout Multi Device Support Seite 15

Eclipse Scout Strong Tooling Seite 16

Eclipse Scout Client Server Architecture Seite 17

Frontend Migration from JSP to Eclipse Scout The Migration Approach Seite 18

Migration: Manual Approach Completion Required Level Project Duration Time Seite 19

Migration: Automated Approach Completion Required Level Project Duration Time Seite 20

Migration: Mixed Approach Completion Required Level Auto Manual Migration Benefit Time Seite 21

Migration: Example for automated JSP Migration <td> <label><%=getstring("fld_v_zinssatzabweichung_grund")%></label> <select property= > <optionscollection codegroup=cde_grp_d2k_1074_zins_abweichung_begr /> </rctl:select> </td> public class ZinssatzAbweichungGrundField extends AbstractSmartField<Long>{ /** * jsp: code type = 'CDE_GRP_D2K_1074_ZINS_ABWEICHUNG_BEGR */ @Override public TextCodeAbs getconfiguredtextcode(){ return new ZinsAbweichungBegrCodeType(); } } @Override public String getconfiguredlabel(){ return TEXTS.get("Grund"); } Seite 22

Migration: Example for manual JSP Migration <td> <label><%=getstring("fld_v_zinsstufe_bezeichnung")%></label> <select property= > <optionscollection codegroup="<%= uiformlimiten.getproduktelimiten().getzinsstufegroup()%>" /> </select> </td> public class ZinsstufeField extends AbstractSmartField<Long>{... /** * jsp: <optionscollection name="wkatdynamichtmlhelper.dyn_code_request_id" valid="false"/> */ public TextCodeAbs getconfiguredtextcode(){ // TODO: code type = 'uiformlimiten.getproduktelimiten().getzinsstufegroup()' return null; }... } Seite 23

Migration: Principle of Migrator private void createform(...) { JavaType formtype = new JavaType(formFile, superclass,...); for (ScoutXmlElement elem : parent.getchildren()) { String name = elem.getname().tostring(); if ("text".equals(name)) { createfieldstring(parenttype, formtype, elem); } else if ("number".equals(name)) { createfieldnumber(parenttype, formtype, elem); } else if ("select".equals(name)) { createfieldsmartfield(parenttype, formtype, elem); }... }... formtype.write(); } private JavaType createfieldsmartfield(javatype parenttype, JavaType formtype, ScoutXmlElement elem, MessageKey label) {... JavaType t = new JavaType(parentType, "class", jid, new Object[]{ABSTRACT_SMART_FIELD.getName() + "<Long>"}, null); addfieldgetter(t, formtype, jid); addexecchangedvalue(t, elem);... } Seite 24

Frontend Migration from JSP to Eclipse Scout Outlook / Lessons Learned Seite 25

Bestehende Benutzeroberfläche WebKat (JSP) Seite 26 Raiffeisen Schweiz Eclipse Finance Day 2014 Peter Nüdling & Jérémie Bresson

Neue Benutzeroberfläche Seite 27 Raiffeisen Schweiz EAMKON Stuttgart, 17./18. April 2012 Erik Odenwald, Leiter IT Unternehmensarchitektur, Raiffeisen Schweiz

Next Steps (nach dem Projekt) Refactoring Backend der Komponente «WebKat» Migration restlicher technologiefremder Benutzeroberflächen «Kreditabwicklung» Seite 28 Raiffeisen Schweiz EAMKON Stuttgart, 17./18. April 2012 Erik Odenwald, Leiter IT Unternehmensarchitektur, Raiffeisen Schweiz

DIALBA Scout GUI as web interface Seite 29 Raiffeisen Schweiz Eclipse Finance Day 2014 Peter Nüdling & Jérémie Bresson

Lessons learned Viel Zeit mit den Backend verloren. Projekt mit automatisierten Migration anzufangen hat sich bewährt. Scope möglichst eng und klar definieren. Schnell mit einen kleinen Packet in Produktion zu gehen ist wichtig. Zusammenarbeit ist nötig und hat gut funktioniert. Seite 30 Raiffeisen Schweiz EAMKON Stuttgart, 17./18. April 2012 Erik Odenwald, Leiter IT Unternehmensarchitektur, Raiffeisen Schweiz