Agile: Developing Software at the Pace of Information

34
Agile: Developing Software at the Pace of Information STEVE NUNZIATA, PMP, ACP, CSM, CSP, SAFE SPC PRINCIPAL AGILE COACH, BLUE AGILITY APRIL 9 TH , 2015

Transcript of Agile: Developing Software at the Pace of Information

Page 1: Agile: Developing Software at the Pace of Information

Agile: Developing Software at the Pace of InformationSTEVE NUNZIATA, PMP, ACP, CSM, CSP, SAFE SPC

PRINCIPAL AGILE COACH, BLUE AGILITY

APRIL 9TH, 2015

Page 3: Agile: Developing Software at the Pace of Information

Agenda

What is Agile

Agile Success.. And Failure

Agile Context in DevOps

Page 4: Agile: Developing Software at the Pace of Information

Agility… and the Pace of Information

Page 5: Agile: Developing Software at the Pace of Information

Why Agile?

$1 Billion Dollar Writedown

NO Customer Feedback

“there's no reason to buy the Surface. Between the confusing Windows 8.1 interface and its lack of apps, you're much better off with the iPad, Nexus 7, or just about any other Android tablet.”

Quote: http://www.businessinsider.com/surface-2-review-2013-10

Page 6: Agile: Developing Software at the Pace of Information

What is ‘Agile’, Anyway?

Adaptive planning

Evolutionary development

Early delivery

Continuous improvement

Rapid and flexible response to change

Page 7: Agile: Developing Software at the Pace of Information

The Agile Manifesto – A Statement of Values

Individuals and

Interactions

Working

Software

Customer

Collaboration

Responding to

Change

Processes and Tools

Comprehensive

Documentation

Contract Negotiation

Following a

Plan

OVER

OVER

OVER

OVER

Page 8: Agile: Developing Software at the Pace of Information

The 12 Agile Principles

Image: http://www.nwizard.ro/programming/12-principles-of-agile-software-development/

Page 9: Agile: Developing Software at the Pace of Information

The Agile Umbrella of Methodologies

Page 10: Agile: Developing Software at the Pace of Information

Agile Adoption & Maturity

“nine women can't make a baby in one month”.Fred Brooks, “The Mythical Man-Month”

Page 11: Agile: Developing Software at the Pace of Information

And to Prove it - Quotes from ‘The Field’

“We have our Daily Standup every Friday.”

“We demonstrate our work every two weeks, just without the primary customer.”

“No, really, the project was 90% complete last week. Now we’re about 60% complete.”

“Our first Sprint was Analysis, our second Sprint was Design... We hope to Code in our third.”

Page 12: Agile: Developing Software at the Pace of Information

Takeaway: What is Agile?

Image: http://www.agile-minds.com/agile-defined/

Page 13: Agile: Developing Software at the Pace of Information

Agenda

What is Agile

Agile Success… And Failure

Agile Context in DevOps

Page 14: Agile: Developing Software at the Pace of Information

The Lean Economics of Software Development

Batch Sizes

Impact of Queues

Optimization

Page 15: Agile: Developing Software at the Pace of Information

Batches in Software Development

Software Knowledge

Page 16: Agile: Developing Software at the Pace of Information

Value of Small Batches

Reduces Risk & Variability

Shortens Cycle Time – Market & Feedback

Co-Location (Information Exchange)

Good Infrastructure – Critical to Sustain

Page 17: Agile: Developing Software at the Pace of Information

Optimizing Batch Size

Image: (www.tacitknowledge.com)

Page 18: Agile: Developing Software at the Pace of Information

Traditional Execution - WaterfallMonths 1-3

Months 7-9

Months 4-6

Months 10-12

Page 19: Agile: Developing Software at the Pace of Information

Agile Execution - The Scrum Cycle

NOT a QUEUE!Small Batch of

Software

Small Batch of

Information

Page 20: Agile: Developing Software at the Pace of Information

Success with Agile…

Learning Cycle Graphic: www.romanpichler.com/

Page 21: Agile: Developing Software at the Pace of Information

Impact of Queues

Page 22: Agile: Developing Software at the Pace of Information

Impact of Queues – Software Development

Page 23: Agile: Developing Software at the Pace of Information

Optimization

Context Switch Graphic: http://blog.codinghorror.com/the-multi-tasking-myth/

Page 24: Agile: Developing Software at the Pace of Information

Quotes from ‘The Field’ - Revisited

“We have our Daily Standup every Friday.”

“We demonstrate our work every two weeks, just without the primary customer.”

“No, really, the project was 90% complete last week. Now we’re about 60% complete.”

“Our first Sprint was Analysis, our second Sprint was Design... We hope to Code in our third.”

Page 25: Agile: Developing Software at the Pace of Information

Agenda

What is Agile

Agile Success… And Failure

Agile Context in DevOps

Page 26: Agile: Developing Software at the Pace of Information

DevOps - DefinedHandshake between Development and Deployment Operations

Developers are agents of change; Operations generally averse to change (system down time, etc…)

Deployment processes may introduce new defects and incompatibilities

Page 27: Agile: Developing Software at the Pace of Information

DevOps – Impediments to AgilityOperations often involved late in the product development cycle

Time and effort to configure and enable Production-like systems

Conflicting Metrics & Measures

….disrupts flow!

Page 28: Agile: Developing Software at the Pace of Information

Opportunities for DevOps

If releasing is expensive & risky, we release seldom.

If releasing is cheap & safe, we release often.

LARGE BATCH

SMALL BATCH

Page 29: Agile: Developing Software at the Pace of Information

Opportunities for DevOps

Utilize Near Production Systems -

Frequently

Validate System

Quality -Continuously

Deploy Frequently

with Repeatable and Reliable

Processes

Rapid Service Virtualization

(Cloud)

Collaboration between

Developers and

Operations Teams

Page 30: Agile: Developing Software at the Pace of Information

Remember…

What’s the best way to eat an Elephant?

One bite at a time.

Page 31: Agile: Developing Software at the Pace of Information

Alamo AgilistasNext Meetings:

Thursday, May 14th @ Perico’s I-10

“Scaling Professional Scrum”

Friday, June 19th @ The County Line, I-10

“Developing Software at the Pace of Information”

Sign up on EventBrite - $10 discount code for May –

‘InnoTech’

Sign up for the group on LinkedIn – Alamo Agilistas

Page 32: Agile: Developing Software at the Pace of Information

Alamo AgilistasAgile Summer Nights Series!

Wednesday Nights @ Geekdom, San Antonio

(see site for details)

5/27 Information Radiators

6/10 Agile Planning

6/24 The Agile Leadership Journey

7/08 Kanban

7/22 Dev Ops

8/05 Agile Engineering Practices

Page 33: Agile: Developing Software at the Pace of Information

Questions

Page 34: Agile: Developing Software at the Pace of Information