Presentation title

Download Report

Transcript Presentation title

3G FW Development SCRUM Experience

Christian Schneider Thomas Neumann Juergen Langer April 24, 2020

INTEL CONFIDENTIAL

Why Scrum?

Due to experiences we made with Waterfall approach!!!

Waterfall

Define Sign-off False security Design Sign-off Develop More uncertainty Sign-off Deploy Uncertainty Surprise!

Timeboxed

Agile

Prioritise, define, design, develop, test Feedback Prioritise, define, design, develop, test Feedback Prioritise, define, design, develop, test Feedback Uncertainty Safer Safe Prioritise, define, design, develop, test 

Agile Scrum

deceivingly simple • Agile Scrum is deceivingly simple. It presents a framework for adaptation instead of a heavyweight methodology. • Very seldom in software is there one best way to do everything. Our processes should not assume otherwise.

3G FW Development SCRUM Experience

1. What was done 2. How it was done 3. What was positive 4. What to improve 5. What we will do next 6. Additional hints

4 INTEL CONFIDENTIAL April 24, 2020

XMM6360 platform breakdown

XMM6360Platform Protocol Stack Component Drivers 3GFW Unit

AM

3GFW Component 3GFW Unit

TLS ..

3GFW Unit

AM ..

2GFW Hardware

5 INTEL CONFIDENTIAL April 24, 2020

SCRUM@3G FW: What was done

• Porting of DSDS XMM6360v2 • • implementation from XMM6310 to Dual Sim Dual Standby (DSDS) functionality required to operate a mobile with two SIM cards Porting of strongly changed/reworked code from old code base to new code base with strong refactoring of state machines • Component Verification test case set) (CV) integration and testing on gapped clock emulation environment (based on XMM6310 • Integration and bring-up on XMM6360 platform • XMM6360v3 DSDS implementation has reached S6 milestone in time 6 INTEL CONFIDENTIAL April 24, 2020

SCRUM@3G FW: How it was done (1/4)

Roles • Dedicated SCRUM master (SCRUM trained/certified) • PJM as Product Owner • Cross functional team consisting of • • Involved developers of 3G FW units CV verification owner 7 INTEL CONFIDENTIAL April 24, 2020

SCRUM@3G FW: How it was done (2/4)

Meeting Structure

• Sprint planning

• 2h meeting every two weeks to plan the work

• Daily stand-up

• 15min daily in front of SCRUM board

• Sprint reviews

• 2h meeting every two weeks to showcase the achievements

• Retrospective

• 2h meeting every two weeks to challenge the process • PJM interface to platform (unchanged compared to “standard” process) 8 INTEL CONFIDENTIAL April 24, 2020

SCRUM@3G FW: How it was done (3/4)

Artifacts • Excel product back-log based on “non-SCRUMish” work package break-down (manual synch, maintenance and burn-down charts) 9 INTEL CONFIDENTIAL April 24, 2020

SCRUM@3G FW: How it was done (4/4)

Artifacts • SCRUM board (colored stickers on white board) • picture shows already slightly adapted board (additional “In-Test” column compared to pure SCRUM) 10 INTEL CONFIDENTIAL April 24, 2020

SCRUM@3G FW: What was positive

Top Three • More communication between team members   Solving problems together!

15 min daily stand-up make a difference • Developers/Testers working closer together   Shorter feedback loop Continuous Integration • Team feels more responsible for their work   Better product quality and people are more motivated End-To-End responsibility 11 INTEL CONFIDENTIAL April 24, 2020

SCRUM@3G FW: What to improve (1/2)

• Project was scope and time boxed   In order to respond to change you have to be flexible either team size, schedule or content In agile we usually are flexible on content • Tooling and infrastructure not ready for rapid testing by developer  Manual regression tooling initially not working for every developer   Automated regression not in place (manual FW intake, not working locally) Low bandwidth of regression tool 12 INTEL CONFIDENTIAL April 24, 2020

SCRUM@3G FW: What to improve (2/2)

• Communication to platform not transparent enough to team or vice versa, team not enough involved with customer discussions   Lack of trust in both directions Scaling-Up Scrum!

• Product owner without technical scope does not have deep dive knowledge to give needed review and guidance (as could be provided by e.g. Senior CE/developer)    Increased/unplanned effort for the team members Product owner is essential role in the game Scope of product owner depends on scope of team 13 INTEL CONFIDENTIAL April 24, 2020

SCRUM@3G FW: What we will do next

• SCRUM is a journey  • Continue using SCRUM for further development tasks • Key Learnings  Encourage communication in the team  Involve the team in the planning process  Involvement of testing team in development (early CV verification) • What we will do better   Prioritized backlog is a must-have Chose a fellow engineer as product owner  Get regression infrastructure prepared for increased load 14 INTEL CONFIDENTIAL April 24, 2020

SCRUM@3G FW: Additional hints

• Don’t throw a team into SCRUM-water without coaching and expect everything to work from the beginning – you are trying out something new!

• SCRUM will not solve structural problems or insufficiencies in the organization – it will just make them more visible!

• SCRUM is not the holy bible - as stated by Mary Poppendiek: SRUM is a process that worked fine for a certain company in a certain environment – you should dare to adapt it to your environment!

• Start with the essentials of Scrum and grow your own customized framework as you go .

15 INTEL CONFIDENTIAL April 24, 2020

16

Backup…

Agile Scrum

Product Owner role

Product Owner

• Develops and maintains Product Backlog • Drives sprint planning with team to achieve a ship-able product after each sprint • Interfaces to stakeholder outside the team • • User Customer • Management

Scrum Master

• Moderates the team through the Scrum framework

Agile Scrum

Process view

Retrospective

Process Highlights

• Time boxed sprints, typical 2-3-4 weeks • Three roles: 1. Scrum Master 2. Product Owner 3. Team • Team is not interrupted during sprint • New features may be added to Product Backlog at any time and by everyone.

• Ship-able product after each sprint

SCRUM@3G FW: What was positive

• Sprint-planning, Sprints, Burn-down charts, etc.

 Better tracking of the development/testing progress • Work items are scheduled by team itself  Better work balancing and knowledge sharing • More communication between team members  Solving problems together!

• Less interruptions of the team members during the sprints  Increases the predictability of ‘task done’ • Developers/Testers working closer together  Shorter feedback loop • Team feels more responsible for their work  Better product quality and people are more motivated 19 INTEL CONFIDENTIAL April 24, 2020

SCRUM@3G FW: What to improve (1/2)

• Project was scope and time boxed  even though changed requirements and impact on overall schedule was revealed in team, overall platform schedule did not change • Product backlog was not correctly maintained from the beginning  initial backlog was not maintained and constantly groomed • No tool to support tracking    manual generation of burn-down charts insufficient evaluation at project end e.g. how much effort was spend on maintenance and support accessibility for board on remote sites • Tooling and infrastructure not ready for rapid testing by developer    manual regression tooling initially not working for every developer automated regression not in place (manual FW intake, not working locally) low bandwidth of GC regression tool 20 INTEL CONFIDENTIAL April 24, 2020

SCRUM@3G FW: What to improve (2/2)

• Communication to platform not transparent enough to team or vice versa, team not enough involved with customer discussions  lack of trust in both directions • Product owner without technical scope does not have deep dive knowledge to give needed review and guidance (as could be provided by e.g. Senior CE/developer)  increased/unplanned effort for the team members • Very special project did not allow to have a shippable product each sprint (i.e. shippable product only after complete development phase)   uncertainty when a story is really done not the full advantage of timely testing small change-sets 21 INTEL CONFIDENTIAL April 24, 2020

3G FW Development context

22 INTEL CONFIDENTIAL April 24, 2020

3G FW Development context vs. SCRUM

• Platform is a large scale HW/SW project with high complexity with • many components and parties involved • • • milestone and release plans in place deadlines to meet … we are here… • FW development has started using SCRUM… ? how does a single “Agile” gear integrate in large scale environments?

? what best practices to follow in “Agile” transition phase?

23 INTEL CONFIDENTIAL April 24, 2020

=

3G FW development flow

• Development is done based on a V-model: Platform requirements 3G FW Spec Module F-Spec Module implementation Module test Module review Platform tests VP/GC regression 24 INTEL CONFIDENTIAL April 24, 2020

3G FW development flow - „right side“

• Currently verification done by separately on three levels • Module test (FW internal) • Component Verification by Simulation/Emulation(CV) • Real-life test in target platform (PF) • FW development has started using SCRUM… ? is it a good idea to separate implementation (FW) and first level verification (CV) into two sprints?

? how far up should setting the “done criteria” go?

25 INTEL CONFIDENTIAL April 24, 2020