• Like
  • Save
Scrum Embedded Systems
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Scrum Embedded Systems

  • 2,866 views
Published

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

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

Published in Technology , Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
2,866
On SlideShare
0
From Embeds
0
Number of Embeds
3

Actions

Shares
Downloads
0
Comments
0
Likes
4

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Scrum Embedded Systems - An experience report from Orlando Scrum Gathering, March 16, 2009 Agile Coaching - team empowerment… Bent Myllerup Scrum Coach, Agile Trainer and Software Development Manager Myllerup Consult, Hasseltoften 11, 8361 Hasselager, DENMARK  +45 2834 9084,  info@myllerup.dk
  • 2. 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 Agile Coaching • Challenges we see today and our next steps - team empowerment…
  • 3. Myllerup Consult My background Agile Coaching - team empowerment…
  • 4. • 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 Agile Coaching • Part of the TC Group with total of 420 people having a turnover of approx USD 100 mill - team empowerment… – Each company within the Group focus on a specific market segment
  • 5. World Locations Lab.gruppen TC Applied Technologies TC Helicon Tannoy TC Electronic TCG Americas TCG Americas TC Japan TC China Tannoy Dubai Tannoy India Agile Coaching - team empowerment…
  • 6. 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 Agile Coaching use of scrum makes the difference - team empowerment… – We have actually added an additional location: California
  • 7. 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 Agile Coaching HD Guitar Fx Instrument Recording Amp - team empowerment…
  • 8. Looking at the team in a Business Area SW eng HW eng Tester PO SM Agile Coaching Beta Test BM - team empowerment… ICT eng Sourcing Marketing Writer Mechanics Procurement
  • 9. 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 Agile Coaching - team empowerment… PO BM
  • 10. The Product Lifecycle at TC Electronic Scrum Agile Coaching Vision Backlog Sprints - team empowerment…
  • 11. Hardware development cycles Additional print spin Schematic, Build prototypes, Mechanical drawings, Layout and verification, Mockup tests and 100% BOM EMC and safety 95% BOM tests Sourcing PCB, Sourcing critical production and Beta test components transport Legend Agile Coaching Team In-circuit test equipment - team empowerment… External Possible corrective Pre-production Verification of Mass production actions after beta Launch and transport pre-production and transport test
  • 12. 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 Agile Coaching – No “them and us” mentality – Quality assurance and test on the whole product - team empowerment… • Scalability – Hardware and software engineers help each other (e.g. building prototypes and do diverse tests)
  • 13. 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 Agile Coaching • You can use nightly builds and tests, but have to test on the target in order to be certain that things actually work! - team empowerment… • Automatically verification of digital processed audio is a science in itself
  • 14. 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, Agile Coaching production and approval related backlog items as well – For each backlog item we specifies an accept or DONE criteria - team empowerment… • We implemented a setup of several build servers connected to our code repository – Mac Based – Windows Based – Embedded (AVR)
  • 15. Handling requirements and monitoring progress in a multi-product BA Common Sprint Backlog Product A Increment Product A Backlog Product B Backlog Product C Backlog Product B Increment Product C Increment Agile Coaching - team empowerment…
  • 16. Business Manager • Is responsible for initiating the product development and the project/product profitability The Scrum Process • Defines user related features and their business value Product Owner 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 at TC Electronic related features Program Manager • 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 ScrumMaster • 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 Daily Scrum: • Ensures that the process is followed. • What have you done since last meeting? • Invites to daily scrum, sprint review and sprint planning • What do you intend to do until next Team • Cross-functional, seven plus/minus two members meeting? 24 hours • What is in your way? • Selects the iteration goal and specifies work results • Has the right to do everything within the boundaries of Prior to the meeting: the project guidelines to reach the iteration goal • Estimate remaining work • Organizes itself and its work • Demos work results to the Business Manager and After the meeting: Program Manager • Re-planning if off schedule Sprint Review: • Demonstration of DONE functionality • Acceptance • Figuring out what is best to do next Sprint Backlog: • Desired functionality selected by Business 2 to 4 weeks Manager and Program Manager Sprint Plan: • Remember the bucket of water approach: ∑Size and complexity <= Team velocity • Defined by the Team Product delivery • Task size <= 2 days • Potentially ready for use Agile Coaching - team empowerment… Sprint Planning: • Business Manager, Program Manager and Team discuss desired functionality Sprint Retrospective: • Team defines necessary tasks in order to develop functionality • Team defines sprint goals and commit to deliver • Team takes pride in what it has • User Stories are discussed (first half) and broken into tasks (second half) accomplished • What went well? • What can be improved? Product Backlog: • Define concrete actions for next sprint • Assess team velocity • 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
  • 17. 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. Agile Coaching • Most of TCE employees are musicians and users them - team empowerment… selves – enforcing high responsibility and awareness of quality
  • 18. 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 MIDI our nightly build and test Control/Logic verification ASIO environment Digital audio verification • SeqZap is easy to use and expand Agile Coaching with customized modules and - team empowerment… interfaces Verdict Report
  • 19. 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” Agile Coaching - team empowerment…
  • 20. 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 Agile Coaching – Individual coaching of key players • The above is based on my experience as a Systemic - team empowerment… Coach
  • 21. The theory behind it Tuckman combined with Katzenbach and Smith: Forming Storming Norming Performing Agile Coaching - team empowerment…
  • 22. Another theory behind it Direction ”Manager” ”Coach” Scope Latitude Top down At eye level Agile Coaching - team empowerment… Relations
  • 23. Ability spotting Agile Coaching - team empowerment…
  • 24. Appreciative team coaching Phase 1: Definition Define what needs to Phase 5: Deliver be explored and Plan how to developed on implement and maintain the changes Phase 2: Discover Focus on best practice. How and when does it Phase 4: Design work in the team. Define concrete Agile Coaching goals - team empowerment… Phase 3: Dreaming Create a shared image of how it should be in the future – what would we like to achieve?
  • 25. 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 Agile Coaching • Improved communication in the team - team empowerment… – It’s okay to ask for and offer help – It’s okay to say “NO!” – There is a positive and appreciative attitude
  • 26. Also: Use the Scrum rituals to foster team identity • Planning • Daily Scrum • Sprint Review • Sprint retrospective Agile Coaching - team empowerment…
  • 27. Sprint reviews Agile Coaching - team empowerment…
  • 28. Next steps • Implement Test Driven Development • Enlarge the team with Procurement and ICT Engineer • Think Lean in the whole organization • ... Agile Coaching - team empowerment…
  • 29. Thank you for your attention www.agilecoaching.dk Agile Coaching - team empowerment…