Een overzicht van vier veelgebruikte agile delivery modellen
Hoe Canon Europe zich heeft voorbereid op 'continuous delivery' - Rob Biesters
-
Upload
canon-nederland-nv -
Category
Technology
-
view
241 -
download
1
Transcript of Hoe Canon Europe zich heeft voorbereid op 'continuous delivery' - Rob Biesters
FOCUS OP INSPIRE
WELKOM
Rob BiestersLead Business IT ConsultantCanon Europe N.V.
WIE BEN IK?• Al meer dan 20 jaar actief in Document
Management in verschillende werkzaamheden
• De laatste 10 jaar als team lead binnen document implementatie projecten binnen Océ en Canon Europe
• Bij Océ in een klein team• Bij Canon in een groter team met externe
partijen (on- en offshore)
CANON EUROPE• Canon Europe is een dochtermaatschappij
van Canon Inc. uit Japan, een international innovatief bedrijf en leverancier van imaging solutions
• Canon Europe draagt voor ongeveer 1/3 bij aan de globale omzet van Canon. Er werken ruim 17.000 mensen verdeeld over Europa, Midden-oosten en Afrika (EMEA)
• Canon Europe is al ruim 60 jaar actief in Europa
HET UNITY PROJECT
• In 2010 heeft Canon Océ officieel overgenomen• Rond 2012-2013 werd gestart met het grootste project binnen Canon om
de IT-omgevingen van Canon-Europe en Océ te integreren en te vernieuwen
• Voor Document Management werd besloten om de ontwikkeling weer in eigen beheer te gaan doen i.p.v. deze over te laten aan externe partij
• Daarna volgde een onderzoek om te kijken wat de beste oplossing was
PRODUCTEN KEUZE PROCES
• Er is gekozen voor een oplossing die host independent is, met Canon producten, en Quadient Inspire voor de documenten generatie
• Cosmos (workflow engine)• Inspire Designer (documenten generatie)• Therefore (archief)
• Deze oplossing is geheel nieuw opgezet naar business specificaties en afgestemd op de Canon Way of Working
UITDAGINGEN
• Het bouwen van een nieuw platform • Het generen/afdrukken/versturen/archiveren van 25 mio
documenten/jaar • Het ondersteunen van ruim 25 landen en talen per document type
• Slimme opzet om het aantal verschillende templates minimaal te houden
• Rekening houden met de verschillende juridische eisen per land• Het strikte release proces bij Canon Europe• Omschakeling naar een Agile werkproces
OPBOUWEN VAN EEN NIEUW PLATFORM
• In eerste instantie hebben we gewerkt aan het beschikbaar stellen van de functionaliteit om documenten te genereren, te distribueren en te archiveren
• Deployments richting de productie server waren in het begin manuele acties• Veel problemen met afstemming• Fouten oplossen kostte veel tijd
RELEASE MANAGEMENT BIJ CANON (1)
• Canon werkt met verschillende release straten• Er zijn 8 verschillende document management servers die allemaal
een eigen functie hebben• Als voorbeeld één van de release straten (DTAP) met daarbij de
verantwoordelijkheden
Development team
DEV TST ACC PRD
Technical application management
RELEASE MANAGEMENT BIJ CANON (2)
• Ontwikkelaars krijgen alleen leesrechten op ACC/PRD omgevingen en kunnen op deze servers geen veranderingen doorvoeren
• Voor handmatige deployments moet er precies omschreven zijn wat er moet gebeuren zodat “iemand” van het Technical Application Management team dit kan uitvoeren
DEV TST ACC PRD
Instructie Resources
DeveloperTechnical App Manager
Functional App Manager
HANDMATIGE DEPLOYMENTS
• Handmatige deployments worden bij Canon uitgevoerd door een Technical Application Manager. Daarna worden de testen uitgevoerd door een Functional Application Manager
• Handmatige deployments mogen maar beperkt aantal keren per week worden gedaan
• Deze werkwijze is foutgevoelig omdat de instructie niet altijd correct begrepen of uitgevoerd wordt
DEV TST ACC PRD
Instructie Resources
DeveloperTechnical App Manager
Functional App Manager
AUTOMATISCHE DEPLOYMENTS
• Als eerste stap heeft het ontwikkelteam de deploymentsgeautomatiseerd waarin een package wordt gemaakt die volledig automatisch wordt geïnstalleerd
• De rol van de Technical App Manager wordt nu beperkt tot het starten van het automatische proces en het controleren van het resultaat
DEV TST ACC PRD
Package
Technical App ManagerFunctional App Manager
Developer
IN MEER DETAIL
DEV TST ACC/RIN PRD
Developer Package
SVN
Change Management
System
Jenkins
Release manager
Package
Technical App Manager
Automatic deploymentAutomatic deployment
DPA team
Test exit report
AUTOMATISCHE TESTEN
• Om ook de rol van de Functional App Manager te beperken is er zijn er automatische testen ontwikkeld
• Deze testen worden automatisch gestart nadat een package op een server is geïnstalleerd en bepalen mede het eindresultaat van de deployment
• Handmatige testen zijn zoveel mogelijk beperkt• De Functional App Manager geeft na elke deployment een GO/ NO
GO aan de hand van de test resultaten
VOORDELEN (1)
• Het ontwikkel team gebruikt de automatische testen om een aanpassing uit te testen
• Een goede testset is zeer belangrijk, voor elke aanpassing/defect wordt er gekeken of er een test beschikbaar is. Zo niet, dan wordt die toegevoegd
• Voor elke wijziging wordt de hele testset afgetest. Als alles correct is wordt de referentie set aangepast.
• Elke package bestaat uit aanpassingen, en een aangepaste test- en referentie set
VOORDELEN (2)
• Tijdens het installeren van de nieuwe package wordt gecontroleerd of alle benodigde resources vernieuwd zijn
• Nadat een package geïnstalleerd is wordt automatisch een test gestart waarin alle testresultaten automatisch vergeleken worden met de referentie set
• Het streven is “first time right” en automatisering• In het ontwikkelteam is er veel aandacht voor test-driven ontwikkelen,
het testen/controleren voordat de aanpassing richting productie gaat• Automatische deployment mogen meer frequent worden gedaan• Geen handmatige acties meer nodig, op upgrades na
VERDERE AUTOMATISERING
• Op elke server, behalve op productie, wordt een complete test gestart om 04.00 uur in de morgen.
• Het ontwikkel team controleert elke dag of alle servers een positieve testresultaat hebben. Is dat niet het geval dan wordt het probleem onderzocht en opgelost
LEUK WEETJE
• Tijdens de automatische testen worden een groot aantal documenten gegeneerd.
• Voor elke taal/land combinatie is er een test, evenals voor elke specifieke document subtype en uitzondering.
• De referentie set bevat een overzicht van gecontroleerde en correcte documenten
• Via Inspire worden de documenten pixel nauwkeurig vergeleken. Bij de minste afwijking wordt er een fout gerapporteerd.
• Voor deze document vergelijking heeft het ontwikkel team een eigen Inspire design gebouwd
DOCUMENT COMPARE
SAMEN GEVAT
DANK VOOR UW AANDACHT