Service Virtualization @RABOBANK TMAP Dag 2015
Peter Claassen – RABOBANK Marc van Lint - IBM
Agenda 1. 2. 3. 4. 5. 6.
M
Rabobank Context DevOps Vision Proof en Implementeren Voorbeelden Ervaringen & Best Practices Toekomst
3
Rabobank Context
P
4
Context • Verhoogde eisen aan • Betaalinfrastructuur • Wettelijke verplichtingen • Verandersnelheid • Vervanging legacy systemen • Migratie traject • Platformen • Z Mainframe • Linux • HP Non Stop • Windows • Methodieken • Waterval (heavy on documentation) • Agile P
5
Applicatie Landschap (schematisch)
Extrne partijen
Interne partijen
Extrne partijen
Interne partijen
6
P
Ondersteuning migratie • U-bocht testen automatiseren • Samenwerking met IBM GBS India ten behoeve van automatisch testen • Gebruikte tools: • Eigenbouw tools • Aangeschafte tools (ALM, QTP, RIT) • Maatwerk per applicatie en/of per platform
P
7
Testaanpak Business Process 1
Business Process 2
Business Process 3
Horizontaal APPL 1 Horizontaal APPL 2
Horizontaal APPL 3
P
8
DevOps Vision
M
9
DevOps Vision (1) • Business Drivers • Nieuw kanalen (bv Mobile) • Transactie verwerking in x seconden
• High Complex (Application) Infrastructure • Mainframe / MQ / Cobol • Linux / http / SOAP • Snelheid in delivery - DevOps • Agile • Shift Left • Automation
M
Steer
DevOps Develop/ Continuous Operate Test Feedback
Deploy
10
DevOps Vision (2) • Test Infrastructure Tools •
• • • • •
M
IBM Rational Service Virtualization IBM Rational Team Concert IBM Optim Test Data Management IBM Urbancode Deploy Finaris RapidRep HP ALM
11
Shift Left (Vision) DEV
DEV
Single System & Integration TEST
TEST
ACC
PROD
Multi Systems & Integration TEST
Service Virtualization
P
12
Proof en Implementeren
M
13
Service Virtualization - Proof TEST
APPL1 Linux
APPL3 APPL2
zOS
HP Non Stop
TEST
APPL1
Virtual Service (RIT/RTVS) Linux
TEST
M
APPL1
Virtual Service (RIT/RTVS)
APPL3
14
Architecture - RIT
M
15
Organisatie RIT bij Rabobank Buddy
ETeam Project
Product Support
Product development
Project
Project
Project
M
Development Support
16
Voorbeelden
P
17
Voorbeeld – Driver bericht
M
18
Voorbeeld - praktijkgebruik RIT Appl1
RIT port 3019 proxy
RIT – stub 1
Appl2
RIT port 3018 proxy
RIT – stub 2
RIT port 3017 proxy
RIT – stub 3
Appl3
RIT port 3016 proxy
Stub: orange Live service: blue P
RIT – stub 4
Appl5
Appl4
Kerngetallen • 8 Projecten • 12- personen • 15 – stubs al gemaakt • Half jaar in business met ‘early adaptors’ • 1 maand full operationeel
P
20
Ervaringen en Best Practices
P
21
Ervaringen (1) • Vastleggen en opbouwen ervaringen • Expert Team – Wekelijkse overleggen • Wiki – Dagelijkse updates met ervaringen en voorbeelden • Introductie en gebruik vereenvoudigen • Projecten krijgen buddy uit expert team • SV-Developer – zorg voor tijd allocatie • Interface testing • Eerder interfaces kunnen testen in traject • In keten omgevingen ook negatieve scenario’s testen • Projecten/applicaties kunnen onafhankelijker ontwikkelen en testen • Zoeken van de juiste balans stub complexiteit/functionaliteit • Meer variatie te testen dan andere stubs • Omslagpunt: wanneer is complexiteit en functionaliteit in stub te groot • Duidelijk zijn in: we testen NIET de functionaliteit gebouwd in de stub, maar de applicatie • Testen met ALLEEN een stub is niet voldoende P
22
Ervaringen (2) • Hybride omgevingen geven een uitdaging • Kennis opgedaan op Windows werk niet automatisch op Linux en/of zOS • Security is een uitdaging • Acceptance Test omgeving vs Security criteria vs Productie • Duidelijke afbakening maken waar wel en niet
• Verzamelen van de juiste informatie is lastig! • Technische Interfaces specificaties • Functionele interface specificatie • Onderschatting is een valkuil • RIT is goed, maar goed RIT gebruiken kost tijd. • Een goed ingerichte RIT levert winst in de testen op • Goed embedden van RIT vereist uitgebreidere RIT kennis dan een basis training
kan voorzien IBM kennis werkte uitstekend!
P
23
Best Practices • Accepteer verandering, verander anders niet! • Neem besluiten en accepteer tegenslagen • Maak in de organisatie duidelijk wat je wil bereiken • Leg uit waarom: ze moeten meeveranderen. • Creëer ruimte om SV ontwikkelaars en buddy rollen te hebben • Zorg voor de juiste balans in stub gedrag (beperk de complexiteit) • Geef pas een planning van stub ontwikkeling af als aan alle randvoorwaarden om een stub te
bouwen voldaan is. • Houd IBM betrokken in ‘industrialization’ of SV
M
24
Toekomst? We zijn er al mee bezig!
P
25
Next Steps • Groeien in aantallen projecten dat stubs gaat gebruiken • Uitwerking van strategie om in deelketens met stubs te testen • Eteam: interactie, kennisdeling en kennisniveau verhogen • Interactie tussen testdata, testen en gebruik stubs • Stubs inzetten bij automatisch testen • Gebruik stubs bij performance testen
P
26
RIT in automatisering TD-1
APPL 1
Driver (RIT)
TD-4
APPL 2 TD-2
Driver (RIT)
APPL 3 TD-3
RIT
RIT APPL 4 RIT APPL 5
P
27
Applicatie Landschap (schematisch)
Extrne partijen
Interne partijen
Extrne partijen
Interne partijen
28
P
IT never stops
29