16
Pipelining quality best practices, lessons learned and tools for continuous delivery processes 25. Oktober 2017, Markus Tiede – Basler Versicherungen AG

Pipeliningquality - EclipseCon 2020€¦ · Wir machen Sie sicherer. Pipeliningquality best practices, lessons learned and tools for continuous delivery processes 25.Oktober 2017,

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Pipeliningquality - EclipseCon 2020€¦ · Wir machen Sie sicherer. Pipeliningquality best practices, lessons learned and tools for continuous delivery processes 25.Oktober 2017,

Wir machen Sie sicherer.

Pipelining qualitybest practices, lessons learned and tools for continuous delivery processes

25. Oktober 2017, Markus Tiede – Basler Versicherungen AG

Wir machen Sie sicherer.

Page 2: Pipeliningquality - EclipseCon 2020€¦ · Wir machen Sie sicherer. Pipeliningquality best practices, lessons learned and tools for continuous delivery processes 25.Oktober 2017,

Wir machen Sie sicherer.

@MarkusTiede

Page 3: Pipeliningquality - EclipseCon 2020€¦ · Wir machen Sie sicherer. Pipeliningquality best practices, lessons learned and tools for continuous delivery processes 25.Oktober 2017,

www.baloise.ch 325.10.17

Bird's eye view

http://www.datacenterjournal.com/wp-content/uploads/2016/11/devops111116.png

Page 4: Pipeliningquality - EclipseCon 2020€¦ · Wir machen Sie sicherer. Pipeliningquality best practices, lessons learned and tools for continuous delivery processes 25.Oktober 2017,

www.baloise.ch

01 Galileo� OOTB approach

25.10.17 4

n large-scale insurance enterprise project

n4 products CM

n8 Scrum teams for "customization"n ± 75 peoplen POs, SMs, Architects, Developer, Tester, Business Analystsn 1-2 team(s) per productn cross-functional team(s): integration, release

Portal

Page 5: Pipeliningquality - EclipseCon 2020€¦ · Wir machen Sie sicherer. Pipeliningquality best practices, lessons learned and tools for continuous delivery processes 25.Oktober 2017,

www.baloise.ch

02 Overall process� "classic" SCRUM

25.10.17 5

n two week sprints (sync)nbut: harmonized releases

n decoupled from sprint(s)

neverything digitaln knowledge / documentation base

n deeply integrated / coupled

n application lifecyclen CRs, User Stories, Bugs, …

n SourceCodeManagementn Continuous Integration

Page 6: Pipeliningquality - EclipseCon 2020€¦ · Wir machen Sie sicherer. Pipeliningquality best practices, lessons learned and tools for continuous delivery processes 25.Oktober 2017,

www.baloise.ch

03 A journey to production� knowledge and automation is key: Confluence Dashboard

25.10.17 6

Page 7: Pipeliningquality - EclipseCon 2020€¦ · Wir machen Sie sicherer. Pipeliningquality best practices, lessons learned and tools for continuous delivery processes 25.Oktober 2017,

www.baloise.ch

04 Jenkins pipelines (scripted and declarative)� orchestration of environment(s) – CI as code (Job DSL)

25.10.17 7

LB / SSO

PC

o1

o2

coo

BC

o1

o2

coo

CM

o1

o2

coo

Portal

o1

o2

o3

Page 8: Pipeliningquality - EclipseCon 2020€¦ · Wir machen Sie sicherer. Pipeliningquality best practices, lessons learned and tools for continuous delivery processes 25.Oktober 2017,

www.baloise.ch

05 Agile testing pyramid (per coordinate)�goal: fail fast / fail early

25.10.17 8

Page 9: Pipeliningquality - EclipseCon 2020€¦ · Wir machen Sie sicherer. Pipeliningquality best practices, lessons learned and tools for continuous delivery processes 25.Oktober 2017,

www.baloise.ch

06 Coordinates (stack : env)�allow (massive) parallism + bubbling

25.10.17 9

Project+0 TEST INT ACC PROD

Project+1 TEST INT ACC

Project+2 TEST INT ACC

Project+3 TEST INT

LB / SSO

PC

o1

o2

coo

BC

o1

o2

coo

CM

o1

o2

coo

Portal

o1

o2

o3

12 x 12 = 144 individual nodes

Page 10: Pipeliningquality - EclipseCon 2020€¦ · Wir machen Sie sicherer. Pipeliningquality best practices, lessons learned and tools for continuous delivery processes 25.Oktober 2017,

www.baloise.ch

07 Releases�different flavours

25.10.17 10

nMAJ.MIN.MIC.FIXn HOTFIX (e.g. 4.0.1.2)

n 8 – 12h (full regression)

n MICROn < 1 week

n MINORn < 1 month

n MAJORn < 1 year

Project+0 TEST INT ACC PROD

Project+1 TEST INT ACC

Project+2 TEST INT ACC

Project+3 TEST INT

Page 11: Pipeliningquality - EclipseCon 2020€¦ · Wir machen Sie sicherer. Pipeliningquality best practices, lessons learned and tools for continuous delivery processes 25.Oktober 2017,

www.baloise.ch

08 Change and data flow�multi-master branches and tags per repo

25.10.17 11

2.3.2.0.rc1

2.4.0.0.rc1 2.4.0.0.rc2

Page 12: Pipeliningquality - EclipseCon 2020€¦ · Wir machen Sie sicherer. Pipeliningquality best practices, lessons learned and tools for continuous delivery processes 25.Oktober 2017,

www.baloise.ch

09 Change and data flow�"Golden master / copy"-approach

25.10.17 12

Project+3

TEST INT

Project+2

TEST INT ACC

Project+1

TEST INT ACC

Project+0

TEST INT ACC PROD

Page 13: Pipeliningquality - EclipseCon 2020€¦ · Wir machen Sie sicherer. Pipeliningquality best practices, lessons learned and tools for continuous delivery processes 25.Oktober 2017,

www.baloise.ch

10 Tools�inspection, analysis, monitoring

25.10.17 13

n low level – log miningnhigh level – "pure path" analysisn custom level – knowledge graph

Page 14: Pipeliningquality - EclipseCon 2020€¦ · Wir machen Sie sicherer. Pipeliningquality best practices, lessons learned and tools for continuous delivery processes 25.Oktober 2017,

www.baloise.ch

11 2do�aka – pain points

25.10.17 14

nEnvironment as coden Puppet, Anisble & Co

nCode Review per Feature Branchnautomated and manual

n (Test) Data Managementn all or nothing – x TB of datan Highly interconnected data

nLegacy systems / processes (Batches)

Page 15: Pipeliningquality - EclipseCon 2020€¦ · Wir machen Sie sicherer. Pipeliningquality best practices, lessons learned and tools for continuous delivery processes 25.Oktober 2017,

www.baloise.ch

12 Summary� take away

25.10.17 15

n100% digital – linked resources; knowledge basen simultanuous release (train) vs. agile shippable artifactnMulti-(Stack)-(Jenkins)-PipelinesnAgile Test-PyramidnSCM „tag“ driven deploymentsnData Management: Golden Data / Master approachnBuild your own knowledge graph: neo4j

Page 16: Pipeliningquality - EclipseCon 2020€¦ · Wir machen Sie sicherer. Pipeliningquality best practices, lessons learned and tools for continuous delivery processes 25.Oktober 2017,

Making you safer.

https://github.com/baloise