software delivery @randstad

30
Software Delivery @Randstad Daan Horn 19-2-2015

Upload: daanhorn

Post on 08-Aug-2015

95 views

Category:

Software


0 download

TRANSCRIPT

Software Delivery @RandstadDaan Horn19-2-2015

Agenda

● Randstad● Why change was needed● First steps● Satisfied?● Next steps

Randstad Holding (2013)

Randstad Groep Netherlands (2013)

Revenue: 2.7 billion

Units: 900

Employees: 4,310

Employed candidates: 80,800 (average per day)

Simplified application landscape

Front/back office(PL/SQL /

Forms)

Planning(.NET)

Service bus(Oracle OSB)

Websites(Hippo / Java)

B2B(Oracle SOA

Suite)

Mobile API(Java)

IDMS(Novell Identity

Manager)

BI(Cognos)

Why change was needed

Many errors during and right after releasesExtremely late nights for release crewLong downtimes for usersSlow time-to-market (8 weeks)

Causes

One big complex release every 8 weeks for all applicationsMany manual release stepsDifferences in DTAP environmentsMany unknown dependencies between release steps

First steps

1. Improve release management2. Improve delivery automation3. Improve delivery visability

Release management

Practice rollouts● Rollout with release crew every 2 weeks on test environment● Each release discussed with release crew afterwards, to come up with

improvements

Know each step and its dependencies● Every step noted in a release runbook● Runbook discussed with release crew before each release

Delivery automation

BuildsCode quality checksDeploysTestsProvisioning

Goal

Automation part 1: Provisioning

Automation part 2: Continuous Integration

Typical flow

Automation part 3: Testautomation

Deploy monitor

Great! Problems solved?

One big complex release every 8 weeks for all applicationsMany manual release actionsDifferences in DTAP environmentsMany unknown dependencies between release steps

Satisfied?

Many errors during and right after releasesExtremely late nights for release crewLong downtimes for usersSlow time-to-market (8 weeks)

Now what? Improve!

Remember the Agile Manifesto

Already doing Continuous Delivery?

Many small releases?!

Focus on flow (pipeline)?

Focus on flow (pipeline)!

DZone Research - 2014 guide to Continuous Delivery

Fresh start

Plans in the making as we speak!Plans include:● Re-evaluation of CI tooling (based on wishes of development and

operational teams) ● Possibly migration to new CD platform● Organizational changes (DevOps)

No formal GO yet!

Mission

Enabling the business to do a rollout at any given time, giving business control over rollouts.

Challenges

Commitment● Everybody is involved and important in the CD becoming successful● No blaming, but taking responsibility and helping each other

Mindset● Code must always be in releasable state● Focus on flow: remove bottlenecks

Minimize dependencies● Build-, deploy- and run-time dependencies● Autonomous teams

Zero downtime● Introduce deployment strategies (blue-green, canary, feature toggles, ...)

Interesting stuff

Contact

Question, suggestions or just bored?Please contact me:[email protected]

I’ll leave you with this...

People will always be demanding better and faster, so keep improving quality and shortening release cycles!