Customer Case: WoningNet
WoningNet en Webservices Woonruimtebemiddeling Shared service center Business uitdaging Architectuur visie
Woonruimtebemiddeling Woningzoekende Corporatiemedewerker Corporatiemedewerker schrijft zich in meldt woningen leeg regelt bezichtiging en huurcontract Woningzoekende zoekt woning uit Reacties worden verzameld en op basis van selectieregels rangschikking gemaakt
WoningNet: Shared Service Center Systeem Nieuwbouw DigiZine Woonruimtebemiddeling Procesondersteuning Woningaanbod Sociale huur Vrije sector huur Koop Jongeren eenheden Selectiemodellen Aanbod Loting Optie Directe bemiddeling Kanalen Internet e-mail SMS Call center Rapportage Management informatie Verantwoording Data analyse Enquêtes
Business uitdagingen Back-end applicatie: Oracle Designer/webforms Website: Classic ASP Woonruimtebemiddeling: 1 van de vele processen / applicaties van corporaties Sterke sectorontwikkeling: Corporaties werken achterstand weg Technologische mogelijkheden: Woningzoekende eist betere informatievoorziening
Webservice Architectuur Fleximatch Oracle webforms Website Regio Website Corporatie Website X Systeem Y Regio database Webservices Enterprise service Bus (ESB)
Een goed begin Orienterende sessies tijdens concept fase met solution architect van AMIS. Doelen: Alle uiteindelijk betrokken partijen vroegtijdig aanhaken Architectuur en tooling aan laten sluiten op: probleem, organisatie, skills, huidige en toekomstige wensen, PoC s om technische uitdagingen en (on)mogelijkheden vroegtijdig in te schatten Voorbereiding begonnen juli 2009 Implementatie begonnen oktober 2009
Gekozen oplossing Enterprise Service Bus op basis van Oracle SOA Suite 11g (Mediator, beetje BPEL) Intelligentie/complexiteit in database (validaties, aggregatie / verrijken van data, transacties,..) Dedicated PL/SQL API tbv web services, op basis van Collections en Object Types (dus NIET op basis van XML) DatabaseAdapter verzorgt omzetten van en naar XML Resultaat: weinig development effort nodig voor ESB/service laag
Service implementatie SOA Suite 11g Mediator Existing Backoffice Data & Functionality Database Adapter Dedicated PL/SQL API Enterpise Service Bus
Project uitdagingen Een SOA project is in veel opzichten een IT project als alle andere Toch zijn er veel nieuwe aspecten die vaak in de periferie meekomen met het eerste SOA traject Bij WoningNet waren er duidelijke verschillen op het gebied van: Ontwikkelstraat Design/Build/Test Project Management
Ontwikkelstraat Continuous Integration (Hudson) Ant build&deployment scripts File-based development & versioning (Subversion) Release management (Subversion + Ant) MDS(Meta Data Store)
Design Canonical Datamodel FO/TO (wat beschrijf je in Word, wat in code )
Build Eerst referentie implementatie van één, representatieve service Dan pas opschalen naar meer services Eerste service kost relatief ZEER veel tijd: geeft in eerste helft van project een zorgwekkend voortgangsplaatje maar is typerend voor dit type project. Rework door voortschrijdend inzicht blijft onvermijdelijk
Test Grote vraag: hoe/wat/waarmee/wanneer test je, en wie test wat? Oplossing: Test Suites van SOA Suite 11g voor unit testen van ESB laag Eigen PL/SQL test framework voor unit testen van PL/SQL laag SOAP UI Testplannen voor keten- en performance test Test team ontwikkelt code : Eigen ontwikkelomgeving (Subversion) Stabiele omgeving nodig => releasematig werken
SoapUI Testplan Lifecycle Tester Ontwikkelaar Basis Testplan met Happy Flow testcase Excel met logische testcases Testplan Generator Template Testplan Uitgekleed Testplan met Performance tests Volledig Testplan
Project management Training ontwikkelaars, ontwerpers, testers XML basis training On-the-job coaching Iteraties Standup Sessies Progress Board
WoningNeten AMIS Project in essentie uitgevoerd door eigen IT afdeling WoningNet Architecten Ontwikkelaars Testers Projectleider en manager Ondersteuning door team vanuit AMIS Solution architect tijdens voorbereiding (aantal sessies) Ontwikkelaar/on-the-job coach (1FTE) Infrastructure architect (1 dag/week) Software architect (1 dag/week) Trainer voor basis XML training (éénmalig 2 dagen)
Resultaat Bijzonder soepel lopend project, zeker gezien grote hoeveelheid nieuwe materie. Zeer goede kennisborging binnen WoningNet Oplossing die goed aansluit bij aanwezige skills Perfect uitgangspunt voor toekomstige Perfect uitgangspunt voor toekomstige vernieuwingen en uitdagingen.
Succes-en faalfactoren Bekende materie Veel tijd in voorbereiding en cannoniek datamodel Expertise inhuren Brede basis van eigen ontwikkelaars/architecten Gezamenlijke visie Business-ICT Beperkingen eigen mensen Onervarenheid testteam Onvolledige / oude licentie SOA suite (BPEL) Op verschillende momenten toch aanpassing in generieke laag
Huidige status SOA suite in productie Basislaag en eerste webservice in gebruik Start bouw website begonnen Webservices 1 juni afgerond In Q4 overige regio s afgerond 6 december website Amsterdam live