agile software development in a truly global and distributed setup | kai mäkiperä | ltg-31

17
Volvo Group Headquarters Kai Mäkiperä 1 Speaker Roles Delivery Manager / Sub Portfolio DM Business Sub Portfolio Manager Service Delivery Manager Maintenance Manager Application/Integration Software Architect Scrum Master Application Software Developer Personality Professional Efficient Keen ear Trustworthy Problem solver / Enabler Genuine interest in other cultures and people Special skills Global leadership Working in truly global and distributed teams Building teams Peoples management (finding, hiring, follow up, coaching) Communication and collaboration Chairman Kai Mäkiperä Started with IT in 1997 and have been with Volvo since 2001 Working as a Delivery Manager for Volvo ITS with teams in Sweden, India, Poland, and partly in France, USA, Brazil and China Responsible as DM for the Order Manager solution Enabled distributed teams from scratch for new developments, maintenance and support purposes Big fan of lean and agile practices (both at work and at home ;-) )

Upload: lean-tribe

Post on 09-Apr-2017

1.080 views

Category:

Software


0 download

TRANSCRIPT

Page 1: Agile software development in a truly global and distributed setup | Kai Mäkiperä | LTG-31

Volvo Group HeadquartersKai Mäkiperä1

Speaker

Roles  Delivery Manager / Sub Portfolio DM Business Sub Portfolio Manager Service Delivery Manager Maintenance Manager Application/Integration Software Architect Scrum Master Application Software Developer 

Personality 

Professional Efficient Keen ear Trustworthy Problem solver / Enabler Genuine interest in other cultures and people 

Special skills  Global leadership Working in truly global and distributed teams Building teams Peoples management (finding, hiring, follow up,

coaching) Communication and collaboration Chairman

Kai Mäkiperä

Started with IT in 1997 and have been with Volvo since 2001

Working as a Delivery Manager for Volvo ITS with teams in Sweden, India, Poland, and partly in France, USA, Brazil and China

Responsible as DM for the Order Manager solution

Enabled distributed teams from scratch for new developments, maintenance and support purposes

Big fan of lean and agile practices (both at work and at home ;-) )

Page 2: Agile software development in a truly global and distributed setup | Kai Mäkiperä | LTG-31

Volvo Group Headquarters

Kai Mäkiperä

2015-11-01

Agile software development* in a truly global and distributed

setup

* Software development is the computer programming, documenting, testing, and bug fixing involved in creating and maintaining applications and frameworks involved in a software release life cycle and resulting in a software product.

Page 3: Agile software development in a truly global and distributed setup | Kai Mäkiperä | LTG-31

Volvo Group Headquarters

Order Manager

Flow of work and information

Teams

Successes and improvements

Kai Mäkiperä3

Agenda

Page 4: Agile software development in a truly global and distributed setup | Kai Mäkiperä | LTG-31

Volvo Group Headquarters

Order Manager solution Global System for Order Management of Trucks

“-If you want to purchase a truck it will use OM”

Users: Dealers, Sales Companies, Market Companies and Factory users

> 2500 users worldwide Involved in the factory preparations (parts etc.)

– OM send/receive 50 000 messages / day (ff,rr,ro) Used for Volvo Trucks, Mack Trucks (Australia),

Renault Trucks (Factory: Kaluga), UD trucks (Japan) Used by Sales Markets & Factories globally

Kai Mäkiperä4

Page 5: Agile software development in a truly global and distributed setup | Kai Mäkiperä | LTG-31

Volvo Group Headquarters

ITS Supply(pre prod. work)

ITS Supply(sprint work)External demand ITS Supply

(pre sprint work)ITS Supply

(prod. work)Segmentation

Order Manager Delivery - Flow of work and information

OM PBLQA Env.

SP 1SP 2

SP 3 Prod. Env.

SP 1SP 2

SP 3

BugT CR

Change requestor, End users

Business roles• Process• Architects (information , E2E)• Subject matter experts

E2E roles• Architects• SL, BA, Test • (Senior dev.)

Development roles• Senior dev.,ev. • Tester, Sol.

Leader

Product Owner Team• SL & Key Users• RT, AS, I&O

teams

Production roles:• Runtime and

Support Teams• End users

Flow of work and

information

Teams / Actors

• File change requests

• Validate business flows and strategic plans

• Analys and suggest high level solution• High level cost• Start a multisolution release project –

coordinate the different solutions their teams to release the expected scope at the same time

Activities

PBI 1

PBI 2

PBI 3

PBI 1PBI 2PBI 3

Sol. D/T Env.SP 1

• Req. Breakdown• Architectural work• Create acc. tests• Cost• Hand-over to

sprint work

• Sprint planning• Design

components• Code & unit test• System integration

& E2E testing• Update artefacts &

release notes• KT to RT and AS

teams• Demo and validate

solution

• E2E regression testing

• Requestor CR validation

• Approvals to go live• KT to RT, AS and

I&O, 1st line teams

• Release into production

• Warranty period• RT team takes

over responsibility• Support teams are

enabled• End users can

conduct their business and bring revenue

Legend:CR – Change requestPBL – Product backlogPBI – Product backlog itemMAS – Market and Sell (Volvo Mega proces)SL – Solution leaderBA – Business AnalystRT – Run time

AS – Application SupportSP – Software packageITS – IT ServicesEnv – EnvironmentI & O – Infrastructure and OperationsTSP – Truck Sales ProcessKT – Knowledge transferE2E – End-2-end

!!!

PrivateDealers

VolvoTrucks

TransportCompany

Kai Mäkiperä5

Internal demand

Bug

T CR

OM CR 1OM CR 2

Solution forumSolution forumBusiness forums

CR 4

CR 5

CR 3CR 1

CR 2

Master PBLITS demand

2 week sprints

End user • Salesmen• In. Dealers • F. Support

$!$!$!Solution XPBL

zzzMarket user

-$Factory support

#!?Salesman/Dealer

0.5-1.5 y to enable change in prod. Approx. 1 year 2-6 months/release 1–2 month/release 1 months full test WeekendDuration CR in

production0 – 5000h? Project sizing around 2000 h 50 – 200 h 8 – 32hChange size

CR 2OM CR 1OM CR 2

Solution YPBL

Page 6: Agile software development in a truly global and distributed setup | Kai Mäkiperä | LTG-31

Volvo Group Headquarters

ITS Supply(pre prod. work)

ITS Supply(sprint work)External demand ITS Supply

(pre sprint work)ITS Supply

(prod. work)Segmentation

Order Manager Delivery - Flow of work and information

OM PBLQA Env.

SP 1SP 2

SP 3 Prod. Env.

SP 1SP 2

SP 3

BugT CR

Change requestor, End users

Business roles• Process• Architects (information , E2E)• Subject matter experts

E2E roles• Architects• SL, BA, Test • (Senior dev.)

Development roles• Senior dev.,ev. • Tester, Sol.

Leader

Product Owner Team• SL & Key Users• RT, AS, I&O

teams

Production roles:• Runtime and

Support Teams• End users

Flow of work and

information

Teams / Actors

• File change requests

• Validate business flows and strategic plans

• Analys and suggest high level solution• High level cost• Start a multisolution release project –

coordinate the different solutions their teams to release the expected scope at the same time

Activities

PBI 1

PBI 2

PBI 3

PBI 1PBI 2PBI 3

Sol. D/T Env.SP 1

• Req. Breakdown• Architectural work• Create acc. tests• Cost• Hand-over to

sprint work

• Sprint planning• Design

components• Code & unit test• System integration

& E2E testing• Update artefacts &

release notes• KT to RT and AS

teams• Demo and validate

solution

• E2E regression testing

• Requestor CR validation

• Approvals to go live• KT to RT, AS and

I&O, 1st line teams

• Release into production

• Warranty period• RT team takes

over responsibility• Support teams are

enabled• End users can

conduct their business and bring revenue

Legend:CR – Change requestPBL – Product backlogPBI – Product backlog itemMAS – Market and Sell (Volvo Mega proces)SL – Solution leaderBA – Business AnalystRT – Run time

AS – Application SupportSP – Software packageITS – IT ServicesEnv – EnvironmentI & O – Infrastructure and OperationsTSP – Truck Sales ProcessKT – Knowledge transferE2E – End-2-end

!!!

PrivateDealers

VolvoTrucks

TransportCompany

Kai Mäkiperä6

Internal demand

Bug

T CR

OM CR 1OM CR 2

Solution forumSolution forumBusiness forums

CR 4

CR 5

CR 3CR 1

CR 2

Master PBLITS demand

2 week sprints

End user • Salesmen• In. Dealers • F. Support

$!$!$!Solution XPBL

zzzMarket user

-$Factory support

#!?Salesman/Dealer

0.5-1.5 y to enable change in prod. Approx. 1 year 2-6 months/release 1–2 month/release 1 months full test WeekendDuration CR in

production0 – 5000h? Project sizing around 2000 h 50 – 200 h 8 – 32hChange size

CR 2OM CR 1OM CR 2

Solution YPBL

Delivery responsibility

Page 7: Agile software development in a truly global and distributed setup | Kai Mäkiperä | LTG-31

Volvo Group Headquarters

ITS Supply(pre prod. work)

ITS Supply(sprint work)

ITS Supply(pre sprint work)

ITS Supply(prod. work)Segmentation

Order Manager Delivery - Flow of work and information

OM PBL

QA Env.

SP 1SP 2

SP 3 Prod. Env.

SP 1SP 2

SP 3

E2E roles• Architects• SL, BA, Test • (Senior dev.)

Development roles• Senior dev.,ev. • Tester, Sol.

Leader

Product Owner Team• SL & Key Users• RT, AS, I&O

teams

Production roles:• Runtime and

Support Teams• End users

Flow of work and

information

Teams / Actors

Activities

PBI 1PBI 2PBI 3

Solution Dev/Test Env.

SP 1

• Req. Breakdown• Architectural work• Create acc. tests• Cost• Hand-over to

sprint work

• Sprint planning• Design

components• Code & unit test• System integration

& E2E testing• Update artefacts &

release notes• KT to RT and AS

teams• Demo and validate

solution

• E2E regression testing

• Requestor CR validation

• Approvals to go live• KT to RT, AS and

I&O, 1st line teams

• Release into production

• Warranty period• RT team takes over

responsibility• Support teams are

enabled• End users can

conduct their business and bring revenue

Legend:CR – Change requestPBL – Product backlogPBI – Product backlog itemMAS – Market and Sell (Volvo Mega proces)SL – Solution leaderBA – Business AnalystRT – Run time

AS – Application SupportSP – Software packageITS – IT ServicesEnv – EnvironmentI & O – Infrastructure and OperationsTSP – Truck Sales ProcessKT – Knowledge transferE2E – End-2-end

!!!

PrivateDealers

VolvoTrucks

TransportCompany

Kai Mäkiperä

7

End users• Salesmen• In. Dealers • F. Support

$!$!$!

2-6 months/release 1–2 month/release 1 months full test WeekendDuration CR in production

50 – 200 h 8 – 32hChange size

CR 2

BugT CR

Rel. 1

Rel. 2?

Rel.?

2 weeksprints

Page 8: Agile software development in a truly global and distributed setup | Kai Mäkiperä | LTG-31

Volvo Group Headquarters

Run timeTeam leaderBLR

7One timeTeam leaderBLR

12E2ETeam leaderBLR/GOT

10

Kai Mäkiperä8

AS / I & O SupportTeam leaderBLR

>10Teams

Dis

cipl

ines

/ R

ples

Architecture/

Development

Cap

abili

ties

& re

spon

sibi

litie

s

Business Analysis

Testing

Other

• Break down business requirements to a level where sprint work can start

• Prepare for E2E tests

• Develop unit tested code

• Test sprint software packages

Leader• Secure competence (hiring, changing, coaching/empowering, rotating OT <-> RT) • Plan work (sprints in OT/RT, AS work, RT work)

• Expert support for production (3rd line)

• Develop unit tested code

• Test sprint software packages

• Deployments / Hot fixing / Patching

• Priority 1 is production

• 2nd line AS (24x5 availability (Standard SLA))

• 2nd line Infrastructure (24x7 availability (Premium SLA))

• Work on incident based on priority• Problem management• Analyze cases and find patterns• Communication• Coordinate cross solution incidents

and problems

Roles

Legend:CR – Change requestPBO – Product backlog ownerASA – Application Software ArchitectSL – Solution leaderSE – Solution ExpertBA – Business AnalystSP– Software package

AS – Application SupportAST – AS TechnicianASE – AS ExpertPOC– Proof of conceptI & O – Infrastructure and Operations SPOC – Single point of contactKT – Knowledge transferE2E – End-2-endRT – Run time

OT – One time (project team)CM – Configuration ManagerMI – Major incidentWOW – Way of workingKPI – Key performance indicatorSLA – Service Level Agreement

FTEs – Full time employees10

Order Manager Delivery

- Teams

• Solution Leader/Expert

• Business Analyst

• Architect• Test Lead

• Developer• Tester

• Small version of E2E + OT team

• Application Support Experts• Infrastructure Support Experts• Support Technicians

Solution Management• Solution knowledge• Product Backl. Owner

Page 9: Agile software development in a truly global and distributed setup | Kai Mäkiperä | LTG-31

Volvo Group Headquarters

9Kai Mäkiperä

Successes and improvements

+ Skilled leaders

– Brave (can say no)– Empower the team members of the

self managing teams Development (project) and Run time

team– Rotation is enabled– Knowledge transfer– “We are in the same boat”-mindset

Development team– Involvement of senior developers in

pre-sprint activities– Self management

Overall– Staff turn over is quite low (work life

balance, Career opportunities)

Page 10: Agile software development in a truly global and distributed setup | Kai Mäkiperä | LTG-31

Volvo Group Headquarters

10Kai Mäkiperä

Successes and improvements

- Honor the agile approach (mindset and

knowledge) Early stages in the software

development are handled in a waterfall approach

Break down items to correct size (front loading)

Velocity and story point are difficult

Page 11: Agile software development in a truly global and distributed setup | Kai Mäkiperä | LTG-31

Volvo Group Headquarters

Supporting slides

11Kai Mäkiperä

Page 12: Agile software development in a truly global and distributed setup | Kai Mäkiperä | LTG-31

Volvo Group Headquarters

ITS Supply(pre prod. work)

ITS Supply(sprint work)External demand ITS Supply

(pre sprint work)ITS Supply

(prod. work)Segmentation

Order Manager Delivery - Flow of work and information

OM PBLQA Env.

SP 1SP 2

SP 3 Prod. Env.

SP 1SP 2

SP 3

BugT CR

Change requestor, End users

Business roles• Process• Architects (information , E2E)• Subject matter experts

E2E roles• Architects• SL, BA, Test • (Senior dev.)

Development roles• Senior dev.,ev. • Tester, Sol.

Leader

Product Owner Team• SL & Key Users• RT, AS, I&O

teams

Production roles:• Runtime and

Support Teams• End users

Flow of work and

information

Teams / Actors

• File change requests

• Validate business flows and strategic plans

• Analys and suggest high level solution• High level cost• Start a multisolution release project –

coordinate the different solutions their teams to release the expected scope at the same time

Activities

PBI 1

PBI 2

PBI 3

PBI 1PBI 2PBI 3

Sol. D/T Env.SP 1

• Req. Breakdown• Architectural work• Create acc. tests• Cost• Hand-over to

sprint work

• Sprint planning• Design

components• Code & unit test• System integration

& E2E testing• Update artefacts &

release notes• KT to RT and AS

teams• Demo and validate

solution

• E2E regression testing

• Requestor CR validation

• Approvals to go live• KT to RT, AS and

I&O, 1st line teams

• Release into production

• Warranty period• RT team takes

over responsibility• Support teams are

enabled• End users can

conduct their business and bring revenue

Legend:CR – Change requestPBL – Product backlogPBI – Product backlog itemMAS – Market and Sell (Volvo Mega proces)SL – Solution leaderBA – Business AnalystRT – Run time

AS – Application SupportSP – Software packageITS – IT ServicesEnv – EnvironmentI & O – Infrastructure and OperationsTSP – Truck Sales ProcessKT – Knowledge transferE2E – End-2-end

!!!

PrivateDealers

VolvoTrucks

TransportCompany

Kai Mäkiperä12

Internal demand

Bug

T CR

OM CR 1OM CR 2

Solution forumSolution forumBusiness forums

CR 4

CR 5

CR 3CR 1

CR 2

Master PBLITS demand

2 week sprints

End users• Salesmen• In. Dealers • F. Support

$!$!$!Solution XPBL

zzzMarket user

-$Factory support

#!?Salesman/Dealer

0.5-1.5 y to enable change in prod. Approx. 1 year 2-6 months/release 1–2 month/release 1 months full test WeekendDuration CR in

production0 – 5000h? Project sizing around 2000 h 50 – 200 h 8 – 32hChange size

CR 2OM CR 1OM CR 2

Solution YPBL

Page 13: Agile software development in a truly global and distributed setup | Kai Mäkiperä | LTG-31

Volvo Group Headquarters

2nd line Support

OM 2nd

End users

Kai Mäkiperä13

Legend

Sales company

Market users

Dealers

Factory (Order)

1st line Support

Dealer Business Support

3rd line Support

OM 3nd

- IT Support?- Business support?- Severity?- Can we solve the case or

should we escalate?- Work around?

Vendor Support

Microsoft , Oracle, IBM

etc.

External company

Volvo Business

Volvo ITS

2nd/3rd Support

Infrastructure Support

Business Support

E2E experts

Business Support

Key user network

- Appointed in the End user area

- Should be able to handle business questions, how-to etc.

- In close cooperation with the E2E team

- Can give business support if needed

- Responsible for the training of relevant business stakeholders

- Working 24x7- Only infrastructure

related support (servers, db, integrations etc.)

- Limited solution knowledge

- Monitoring of business critical transactions

- Working 24x5 + Sat-Su for Major incidents (SLA)

- Resolution times depends on SLA (2h,4h,8h, 32h)

- Must solve >75% of all IT cases

- Business cases can be solved as well

- Kanban- CI- KPIs (incidents, trends etc.)

- Working 0430-1430 CET + on-call for major incidents (SLA)

- Resolution times depends on SLA (2h,4h,8h, 32h)

- Must solve >75% of all IT cases

- Business cases can be solved as well

- Deep investigations- Monitoring- Kanban- CI- KPIs (incidents, trends as

low possible)

Order Manager Delivery - Support flows

Page 14: Agile software development in a truly global and distributed setup | Kai Mäkiperä | LTG-31

Volvo Group Headquarters

The Product Backlog Iceberg

Sprint / Current Delivery

Assumed Next Delivery

Priority

High

Low

Future Deliveries

ValueCostRisk

QualityProduct Owner

2012-06-21 IS-GDP Plug-in - Agile IT-Solution Delivery, Version 2.014

Page 15: Agile software development in a truly global and distributed setup | Kai Mäkiperä | LTG-31

Volvo Group Headquarters

The Sprint Backlog

Product Owner prioritizes the Product Backlog – Into the Sprint Backlog

Consists of all planned tasks for the current sprint

Development team estimates the work effort in hours using Lichtenberg for each test case

The sprint backlog content is not possible to change during a sprint

Sprint

Assumed Next Delivery

Future Deliveries

Product BacklogSprint Backlog

2012-06-21 IS-GDP Plug-in - Agile IT-Solution Delivery, Version 2.015

Page 16: Agile software development in a truly global and distributed setup | Kai Mäkiperä | LTG-31

Volvo Group Headquarters

Run timeTeam leaderBLR

7One timeTeam leaderBLR

12E2ETeam leaderBLR/GOT

10

Kai Mäkiperä16

SupportTeam leaderBLR

5 I & OTeam leaderBLR

5Teams

Dis

cipl

ines

/ R

ples

Architecture/

Development

Cap

abili

ties

& re

spon

sibi

litie

s

Business Analysis

Testing

Other

• Br. down of bus. requirements

• Solution quality (perf., code review)

• Coding (poc, prototyping)

• Break down of business requirements

• Develop unit tested code

• Light BA

• Test sprint software packages

Leader• Secure competence (hiring, changing, coaching/empowering, rotating OT <-> RT) • Plan work (sprints in OT/RT, AS work, RT work)

3rd AS• Analysis work of production

incidents• Monitoring and tuning

RT development team• Develop unit tested code based

on RT PBL• Deployments / Hot fixing /

Patching• Priority 1 is production

• Test sprint software packages including hotfixing / patching

• Hand over and KTs to AS teams

• Capability enabled by senior developers (above)

• Understand requirements for technical items and defects

• Understand if solution in prod. works according to reqs.

• CM capabilities for full delivery

• Provide development capacity upon need from OT team

• 2nd line AS (24x5 availability (Standard SLA))• 2nd line Infrastructure (24x7 availability

(Premium SLA))• Work on incident based on priority• Problem management• Analyze cases and find patterns• Communication• Coordinate cross solution incidents and

problems• Give KTs to other teams earlier in chain

Roles

Legend:CR – Change requestPBO – Product backlog ownerASA – Application Software ArchitectSL – Solution leaderSE – Solution ExpertBA – Business AnalystSP– Software package

AS – Application SupportAST – AS TechnicianASE – AS ExpertPOC– Proof of conceptI & O – Infrastructure and Operations SPOC – Single point of contactKT – Knowledge transferE2E – End-2-endRT – Run time

OT – One time (project team)CM – Configuration ManagerMI – Major incidentWOW – Way of workingKPI – Key performance indicatorSLA – Service Level Agreement

FTEs – Full time employees10

Order Manager Delivery

- Teams

• Team enables tested, documented, running SP every second week with daily builds

• Solution Leader/Expert

• Business Analyst• Architect• Test Lead

• Developer• Tester

• Small version of E2E + OT team

• Solution Support Experts

• Support Technicians

• Infrastructure Support Experts

• Support Technicians

Solution Management• Solution knowledge• Product Backl. Owner

• Br. down of bus. Reqs. to test cases

• Synch testing activites with surrondings

Page 17: Agile software development in a truly global and distributed setup | Kai Mäkiperä | LTG-31

Volvo Group Headquarters

Run timeTeam leaderBLR

7One timeTeam leaderBLR

12E2ETeam leaderBLR/GOT

10

Kai Mäkiperä17

SupportTeam leaderBLR

5 I & OTeam leaderBLR

5Teams

Dis

cipl

ines

/ R

ples

Architecture/

Development

Cap

abili

ties

& re

spon

sibi

litie

s

Business Analysis

Testing

Other

• Br. down of bus. requirements

• Solution quality (perf., code review)

• Coding (poc, prototyping)

• Break down of business requirements

• Develop unit tested code

• Light BA

• Test sprint software packages

Leader• Secure competence (hiring, changing, coaching/empowering, rotating OT <-> RT) • Plan work (sprints in OT/RT, AS work, RT work)

3rd AS• Analysis work of production

incidents• Monitoring and tuning

RT development team• Develop unit tested code based

on RT PBL• Deployments / Hot fixing /

Patching• Priority 1 is production

• Test sprint software packages including hotfixing / patching

• Hand over and KTs to AS teams

• Capability enabled by senior developers (above)

• Understand requirements for technical items and defects

• Understand if solution in prod. works according to reqs.

• CM capabilities for full delivery

• Provide development capacity upon need from OT team

• 2nd line AS (24x5 availability (Standard SLA))• 2nd line Infrastructure (24x7 availability

(Premium SLA))• Work on incident based on priority• Problem management• Analyze cases and find patterns• Communication• Coordinate cross solution incidents and

problems• Give KTs to other teams earlier in chain

Roles

Legend:CR – Change requestPBO – Product backlog ownerASA – Application Software ArchitectSL – Solution leaderSE – Solution ExpertBA – Business AnalystSP– Software package

AS – Application SupportAST – AS TechnicianASE – AS ExpertPOC– Proof of conceptI & O – Infrastructure and Operations SPOC – Single point of contactKT – Knowledge transferE2E – End-2-endRT – Run time

OT – One time (project team)CM – Configuration ManagerMI – Major incidentWOW – Way of workingKPI – Key performance indicatorSLA – Service Level Agreement

FTEs – Full time employees10

Order Manager Delivery

- Teams

• Team enables tested, documented, running SP every second week with daily builds

• Solution Leader/Expert

• Business Analyst• Architect• Test Lead

• Developer• Tester

• Small version of E2E + OT team

• Solution Support Experts

• Support Technicians

• Infrastructure Support Experts

• Support Technicians

Solution Management• Solution knowledge• Product Backl. Owner

• Br. down of bus. Reqs. to test cases

• Synch testing activites with surrondings