ni.com introduction to agile and scrum speaker/author: paul packebush section manager, corporate...

18
ni.com Introduction to Agile and Scrum Speaker/Author: Paul Packebush Section Manager, Corporate Metrology Author: Logan Kunitz Staff Calibration Engineer

Upload: bret-orton

Post on 15-Dec-2015

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Ni.com Introduction to Agile and Scrum Speaker/Author: Paul Packebush Section Manager, Corporate Metrology Author:Logan Kunitz Staff Calibration Engineer

ni.com

Introduction to Agile and Scrum

Speaker/Author: Paul Packebush

Section Manager, Corporate Metrology

Author: Logan Kunitz

Staff Calibration Engineer

Page 2: Ni.com Introduction to Agile and Scrum Speaker/Author: Paul Packebush Section Manager, Corporate Metrology Author:Logan Kunitz Staff Calibration Engineer

2ni.com

Process Emerges to Stop Chaos

• No one loves process, but it feels good compared to the pain of chaos

• Developers are unable to adapt quickly• Developers are extremely good at following the existing

process, and process adherence is the value system• Process starts to trump flexibility

Page 3: Ni.com Introduction to Agile and Scrum Speaker/Author: Paul Packebush Section Manager, Corporate Metrology Author:Logan Kunitz Staff Calibration Engineer

3ni.com

Agile Development

Page 4: Ni.com Introduction to Agile and Scrum Speaker/Author: Paul Packebush Section Manager, Corporate Metrology Author:Logan Kunitz Staff Calibration Engineer

4ni.com

Agile is not a process

• You cannot do Agile, but you can be Agile

Page 5: Ni.com Introduction to Agile and Scrum Speaker/Author: Paul Packebush Section Manager, Corporate Metrology Author:Logan Kunitz Staff Calibration Engineer

5ni.com

Manifesto for Agile Software Development

http://www.agilemanifesto.org

• Individuals and interactions • over processes and tools

• Working software• over comprehensive documentation

• Customer collaboration• over contract negotiation

• Responding to change• over following a plan

Page 6: Ni.com Introduction to Agile and Scrum Speaker/Author: Paul Packebush Section Manager, Corporate Metrology Author:Logan Kunitz Staff Calibration Engineer

6ni.com

12 Principles behind the Agile Manifesto

1. Early and continuous delivery of valuable software 2. Welcome changing requirements3. Deliver working software frequently4. Teams work together daily5. Trust motivated individuals to get the job done 6. Face-to-face conversation7. Working software as primary measure of progress8. Sustainable development9. Continuous attention to technical excellence and good

design10. Simplicity11. Self-organizing teams generate best end products12. Teams reflect regularly and adjust behavior accordingly

http://www.agilemanifesto.org

Page 7: Ni.com Introduction to Agile and Scrum Speaker/Author: Paul Packebush Section Manager, Corporate Metrology Author:Logan Kunitz Staff Calibration Engineer

7ni.com

What is Scrum?

A framework to help teams work in an Agile way

• TransparencyoEveryone knows the project state

• InspectionoOngoing reflection on status

• AdaptabilityoTeam decides how to quickly adapts to changes

Scrum is not a process it is a framework to get work done

Page 8: Ni.com Introduction to Agile and Scrum Speaker/Author: Paul Packebush Section Manager, Corporate Metrology Author:Logan Kunitz Staff Calibration Engineer

8ni.com

Scrum values

• Commitment• Team has great control of its destiny

• Focus• Fewer deliverables at a time

• Openness• Express concerns and status often

• Respect• Working together sharing in success and failures

• Courage• Teams feel empowered to undertake greater challenges

Page 9: Ni.com Introduction to Agile and Scrum Speaker/Author: Paul Packebush Section Manager, Corporate Metrology Author:Logan Kunitz Staff Calibration Engineer

9ni.com

Scrum vs. Waterfall

Waterfall:

Scrum:

DesignAll Features

Develop Deploy

Feature A*Design*Dev*Deploy

Feature B*Design*Dev*Deploy

Feature C…

Page 10: Ni.com Introduction to Agile and Scrum Speaker/Author: Paul Packebush Section Manager, Corporate Metrology Author:Logan Kunitz Staff Calibration Engineer

10

ni.com

Scrum vs. Waterfall

Waterfall:

Scrum:

DesignAll Features

Develop Deploy

Feature A*Design*Dev*Deploy

Feature B*Design*Dev*Deploy

Feature C…

Feature A.1

Feature B.1…

Page 11: Ni.com Introduction to Agile and Scrum Speaker/Author: Paul Packebush Section Manager, Corporate Metrology Author:Logan Kunitz Staff Calibration Engineer

11

ni.com

Scrum at a Glance

Page 12: Ni.com Introduction to Agile and Scrum Speaker/Author: Paul Packebush Section Manager, Corporate Metrology Author:Logan Kunitz Staff Calibration Engineer

12

ni.com

Scrum Implementation Case Study• NI Calibration Business Case

• Long development cycles• Schedule slippage• Need for new HW product calibration support• Growing backlog of products requiring calibration support• Simply adding headcount is not a sustainable solution

Approach• Transitioned from Waterfall development process to

Agile / Scrum software development process

• Challenges• Distributed Scrum Team• Defining “Finished”

Page 13: Ni.com Introduction to Agile and Scrum Speaker/Author: Paul Packebush Section Manager, Corporate Metrology Author:Logan Kunitz Staff Calibration Engineer

13

ni.com

Distributed Scrum Team Challenges

• Scrum dictates close, daily interaction of team members

• Distributed teams are a reality for global companies• Primary challenges with distributed scrum team

• Isolation of remote team members during meetings – lacking engagement in the meetings

• Visual tools (i.e. white-board for tracking tasks) not accessible by remote team members

• Team size (keeping daily meeting length short)

Product Owner

ScrumMaster

Developers Developers

Austin, TX Hungary

NI Calibration Team

Page 14: Ni.com Introduction to Agile and Scrum Speaker/Author: Paul Packebush Section Manager, Corporate Metrology Author:Logan Kunitz Staff Calibration Engineer

14

ni.com

Distributed Scrum Team Recommendations• Avoid meeting rooms

• Everyone meets from their desk

• Shared “cloud-based” tool for white board

• Scrum team size: < 10 • Keep daily meetings <15 minutes

Page 15: Ni.com Introduction to Agile and Scrum Speaker/Author: Paul Packebush Section Manager, Corporate Metrology Author:Logan Kunitz Staff Calibration Engineer

15

ni.com

Defining “Finished”

• Scrum dictates a “finished” product or feature at the end of each sprint

• What is “Finished”• The feature is complete and ready to be released

• Why is this a problem?• 8 to 12 weeks to develop and test a typical feature

(doesn’t include integration testing - another 2 to 8 weeks)

• Scrum sprint length = 4 weeks• Our features usually can’t be split into sub-features

that are individually shippable

• It will take 2 to 3 sprints to demonstrate progress for most of our features

Page 16: Ni.com Introduction to Agile and Scrum Speaker/Author: Paul Packebush Section Manager, Corporate Metrology Author:Logan Kunitz Staff Calibration Engineer

16

ni.com

Example: Splitting Feature into User Stories

Product Development & Testing

8 weeks

Integration / Release Testing

2 to 12 weeks

Sub feature Development & Testing

Sub feature Development & Testing

Sub feature Development & Testing

Final Development Testing

2 wks

“Finished”Ready for Integratio

n

“Finished” “Finished” “Finished”

2 wks 2 wks 2 wks

Sprint #1 Sprint #2

Page 17: Ni.com Introduction to Agile and Scrum Speaker/Author: Paul Packebush Section Manager, Corporate Metrology Author:Logan Kunitz Staff Calibration Engineer

17

ni.com

Example: Calibration Procedure

• Full procedure includes several verification steps

• Split overall feature by verification step into smaller user stories

• “Finished” for each story

• Fully developed• Fully tested• Fully reviewed

• Feature releases once all user stories are complete

Page 18: Ni.com Introduction to Agile and Scrum Speaker/Author: Paul Packebush Section Manager, Corporate Metrology Author:Logan Kunitz Staff Calibration Engineer

21

ni.com

Conclusion

NI Calibration Team Performance After Using Agile / Scrum

• Improved time between product updates• Handled one-off customer feature request by doing a

mid-cycle release with the new feature. Minimum impact to existing product release schedule.

• Ability to meet release targets with improved accuracy