29
Agile Coaching - team empowerment… Scrum Embedded Systems Orlando Scrum Gathering, March 16, 2009 Myllerup Consult, Hasseltoften 11, 8361 Hasselager, DENMARK +45 2834 9084, [email protected] Bent Myllerup Scrum Coach, Agile Trainer and Software Development Manager - An experience report from

Scrum Embedded Systems

Embed Size (px)

DESCRIPTION

My Orlando 2009 Scrum Gathering presentation on how we have implemented Scrum in a HW and embedded SW environment at TC Electronic.

Citation preview

Page 1: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Scrum Embedded Systems

Orlando Scrum Gathering, March 16, 2009

Myllerup Consult, Hasseltoften 11, 8361 Hasselager, DENMARK +45 2834 9084, [email protected]

Bent MyllerupScrum Coach, Agile Trainer and Software Development Manager

- An experience report from

Page 2: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Presentation outline

• The background for implementing Scrum at TC Electronic (TCE)

• The challenges in combining embedded software development and Scrum

• How we responded to the challenges

• Challenges we see today and our next steps

Page 3: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

My background

Myllerup Consult

Page 4: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

• Established in 1976 by John and Kim Rishøj, making quality guitar effects pedals

• Market leader in professional signal processing

– approximately 80% of all broadcasted music has at some point been processed by TC equipment

• Customers include performers/musicians, broadcast, studios, live and installations

• Key technologies include in particular digital effects and other signal processing

• Part of the TC Group with total of 420 people having a turnover of approx USD 100 mill

– Each company within the Group focus on a specific market

segment

Page 5: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

World Locations

TCG Americas

TC Helicon

TCG Americas

TC Applied Technologies

Tannoy TC Electronic

Lab.gruppen

TC China TC Japan

Tannoy IndiaTannoy Dubai

Page 6: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

How TC Group discovered Scrum

• We had a burning platform in non-performing device drivers for our product line of audio interfaces– Engineers were distributed across the world (India, Canada and

Denmark) with lack of prioritization, direction and communication

• Temporary collocation and Scrum made the difference and showed by example that Scrum actually works

• Executives now see Scrum as a major key to success and “surviving” the financial crisis

• Engineers are still distributed across the world, but the use of scrum makes the difference– We have actually added an additional location: California

Page 7: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

The organizational environment at TCE

• The product development department in TCE is divided into three business areas, who are responsible for their own product portfolio

• The monthly Steering Group Meeting the whole team meet with management to discuss “state of the nation” and decide on approaches and actions

Steering Group = Management

Guitar Fx Instrument Amp

HD Recording

Page 8: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Looking at the team in a Business Area

BM

SW eng

HW engTester

PO SM

ProcurementMechanicsICT eng MarketingSourcing

Beta Test

Writer

Page 9: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Why did we split the PO role?

• The coordinating with procurement calls for traditional project management skills for the PO

• The market calls for musician like attitude of the PO

• We have found it hard find persons who possesses both skills

BM

PO

Page 10: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

The Product Lifecycle at TC Electronic

Scrum

Vision Backlog Sprints

Page 11: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Hardware development cycles

Schematic,Mechanical drawings,Mockup tests and95% BOM

Sourcing critical components

Layout and100% BOM

Build prototypes, verification,EMC and safety tests

Sourcing PCB,production and transport

Pre-production and transport

In-circuit test equipment

Beta test

Mass production and transport

Launch

Additional print spin

Verification of pre-production

Possible corrective actions after beta test

Team

External

Legend

Page 12: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Benefits of having the hardware developers on the team as well

• Mutual commitment towards a common goal – Delivery of the embedded product

• Synergy between hardware and software in design and problem solving– Making the right solution at the right place and at the right price

• Improved quality– No “them and us” mentality

– Quality assurance and test on the whole product

• Scalability– Hardware and software engineers help each other (e.g. building

prototypes and do diverse tests)

Page 13: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Challenges in applying Scrum in embedded projects at TC Electronic

• When the cross functional team includes hardware engineers, the whole team experiences constraints to external resources:

– Producers of prototypes (printed circuit boards and mechanical prototypes)

– The production plant (in circuit test equipment, sourcing of components, preproduction)

– Safety and Electromagnetic Compatibility (EMC) certified test centers

• You can use nightly builds and tests, but have to test on the target in order to be certain that things actually work!

• Automatically verification of digital processed audio is a science in itself

Page 14: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

How we responded to the challenges

• Intensive coaching and teambuilding

• The idle time when awaiting prototypes to be produced makes especially the hardware developers players in several projects in parallel– Instead of having team members defocused on several projects, we

made the team responsible for the portfolio plan – one prioritized sprint backlog for several projects

• Product backlog– We love user stories, but found a need for adding technical,

production and approval related backlog items as well

– For each backlog item we specifies an accept or DONE criteria

• We implemented a setup of several build servers connected to our code repository– Mac Based

– Windows Based

– Embedded (AVR)

Page 15: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Handling requirements and monitoring progress in a multi-product BA

Pro

duct

A B

acklo

g

Pro

duct

B B

acklo

g

Pro

duct

C B

acklo

g

Com

mon S

pri

nt

Backlo

g

Product A Increment

Product BIncrement

Product CIncrement

Page 16: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Business Manager

The Scrum Processat TC Electronic

• Cross-functional, seven plus/minus two members

• Selects the iteration goal and specifies work results

• Has the right to do everything within the boundaries of the project guidelines to reach the iteration goal

• Organizes itself and its work

• Demos work results to the Business Manager and Program Manager

Team

• Ensures that the team is fully functional and productive

• Enables close cooperation across all roles and functions and removes barriers

• Shields the team from external interferences

• Ensures that the process is followed.

• Invites to daily scrum, sprint review and sprint planning

ScrumMaster

• Is responsible for portfolio and project planning

• Is responsible for the project budget (expenses, deliveries and time schedule)

• Initiates and maintains Product Backlog, and prioritizes features according to business values

• Facilitates making an absolute prioritization between features from various projects

Program Manager

• Is responsible for initiating the product development and the project/product profitability

• Defines user related features and their business value in the Product Backlog

• Can change user related features and their business values at every sprint planning meeting

• Accepts or rejects work results with respect to user related features

24 hours

2 to 4 weeks

Daily Scrum:• What have you done since last meeting?• What do you intend to do until next

meeting?• What is in your way?

Prior to the meeting:• Estimate remaining work

After the meeting:• Re-planning if off schedule

Sprint Review:• Demonstration of DONE functionality• Acceptance• Figuring out what is best to do nextSprint Backlog:

• Desired functionality selected by Business Manager and Program Manager

• Remember the bucket of water approach: ∑Size and complexity <= Team velocity

Sprint Planning:• Business Manager, Program Manager and Team discuss desired functionality• Team defines necessary tasks in order to develop functionality• Team defines sprint goals and commit to deliver• User Stories are discussed (first half) and broken into tasks (second half)

Sprint Retrospective:• Team takes pride in what it has

accomplished• What went well?• What can be improved?• Define concrete actions for next sprint• Assess team velocity

Product delivery• Potentially ready for use

Sprint Plan:• Defined by the Team• Task size <= 2 days

Product Backlog:• Described in User Stories with acceptance criteria’s. Story size <= half a sprint• Prioritized by the Program Manager and Business Manager• Maintained by the Program Manager• Estimated by the team (Planning Poker)• Anyone can contribute

Prod

uct

Ow

ner

Page 17: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Testing…

• Unit test– Hard to implement on legacy code

– We start new projects with a TDD approach

• System test– We are incorporating SeqZap from Sequanto in order to perform

automated test on target

• Beta test– We have a corps of beta testers who test products in action before

product launch.

• Most of TCE employees are musicians and users them selves – enforcing high responsibility and awareness of quality

Page 18: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Automated test on embedded platforms

• We are using SeqZap from Sequanto for script based automated test on target

• We are planning to incorporate it into our nightly build and test environment

• SeqZap is easy to use and expand with customized modules and interfaces

Verdict Report

MIDIControl/Logic verification

AESDigital audio verification

Page 19: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Changing the mindset

From: “This simply isn’t possible in a hardware environment”

To: “We couldn’t have made this great product with out it”

Page 20: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Breaking down boundaries with coaching and teambuilding

• Scrum is more than just roles and rituals– So in order to be successful, you must foster high performance

teams

• We did (and are still doing) a lot of intensive coaching and teambuilding. Some examples are:– Team awareness exercises

– Ability spotting

– Team coaching after principles taken from Appreciative Inquiry

– Conflict resolution

– Individual coaching of key players

• The above is based on my experience as a Systemic Coach

Page 21: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

The theory behind it

StormingForming Norming Performing

Tuckman combined with Katzenbach and Smith:

Page 22: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Another theory behind it

Relations

Direction

Latitude

Scope

Page 23: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Ability spotting

Page 24: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Appreciative team coaching

Phase 5: DeliverPlan how to

implement and maintain the

changes

Phase 4: DesignDefine concrete

goals

Phase 3: DreamingCreate a shared image of how it should be in

the future – what would we like to

achieve?

Phase 2: DiscoverFocus on best practice. How and when does it

work in the team.

Phase 1: Definition Define what needs to

be explored and developed on

Page 25: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

What we have gained through coaching and teambuilding

• A shorter path to performing teams

• Hardware developers have bought into using Scrum as the development process– And they actually like it

• Individual minded team members have broken down the mental walls they have been hiding behind

• Improved communication in the team– It’s okay to ask for and offer help

– It’s okay to say “NO!”

– There is a positive and appreciative attitude

Page 26: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Also: Use the Scrum rituals to foster team identity

• Planning

• Daily Scrum

• Sprint Review

• Sprint retrospective

Page 27: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Sprint reviews

Page 28: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Next steps

• Implement Test Driven Development

• Enlarge the team with Procurement and ICT Engineer

• Think Lean in the whole organization

• ...

Page 29: Scrum Embedded Systems

Ag

ile C

oach

ing

-te

am

em

po

werm

en

t…

Thank you for your attention

www.agilecoaching.dk