Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

79
Leveraging Agile on Fixed Fee Projects Tales from the Trenches Marco António Silva Ricardo Jesus

Transcript of Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Page 1: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Leveraging Agile on Fixed Fee ProjectsTales from the Trenches Marco António SilvaRicardo Jesus

Page 2: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

• Consulting Services Team• Focused on building highly innovative custom

solutions• Usually working directly in customer installations• Complex internal processes• Strick quality assurance

• Not easy to implement change…

What is MCS?

Page 3: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Who are we and what do we do? • The soldiers of these tales• Tech guys (and g33ks )• Tech Leads for these tales

Page 4: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Disclaimers

Page 5: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Disclaimers

Page 6: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Disclaimers

Page 7: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Project Codename OVX• Large/Enterprise Project (>4600 hours)• Client facing product• High Risk Project:• Technology Early Adoption• Fixed fee/ “Fixed scope” • Project directly involves (at least) 9 different Customer

Teams• Dependence on 4 other external platforms• Two different project sponsors

Page 8: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Project Codename Arbutus• Client facing product• High Risk Project:• Extremely short timings (11 weeks from zero to production)• Large number of features (84 User Stories)• Fixes fee/ closed scope• Newly formed team• Lighthouse project for the costumer• Geographically dispersed team

Page 9: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 1 – Recruiting the troops

Page 10: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 1 – Recruiting the troops

Page 11: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 1 – Recruiting the troops

0

5

Page 12: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 1 – Recruiting the troopsFollow Your True Colors to the Work You Love

by Carolyn Kalil

ISBN-10: 1893320286ISBN-13: 978-1893320284

Page 13: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 1 – Recruiting the troopsFollow Your Inner Heroes(Tm) to the Work You Love Match Your Personality to Your Career

by Carolyn Kalil

ISBN-10: 0985853069ISBN-13: 978-0985853068

Page 14: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 1 – Recruiting the troops

• Basic skills

Page 15: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 1 – Recruiting the troops

• Basic skills• Commitment

Page 16: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 1 – Recruiting the troops

• Basic skills• Commitment• Involvement

Page 17: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 1 – Recruiting the troops

• Basic skills• Commitment• Involvement• Proactive

Page 18: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 1 – Recruiting the troops

• Basic skills• Commitment• Involvement• Proactive• Out of the box

thinking

Page 19: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 1 – Recruiting the troops

“Technical Skills are important, Culture is Core, Commitment is Vital”

Page 20: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 2 – Plan the battle

Page 21: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 2 – Plan the battle

Page 22: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 2 – Plan the battleEnvisioning

(t+4w)Physical

Architecture Planning(t+6w)Software Architecture (Re)Planning(t+10w)

Software Platform Development (t+16w)

Physical Architecture Deploy (t+16w)

Platform Stability

Rollout

Page 23: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 2 – Plan the battle

• SCRUM• XP• KAMBAN• TDD• FDD• …

Page 24: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 2 – Plan the battle

• Predictability• Fast and easy adoption, few

constraints;• Simple, flat and plain;• Incremental rules;• Easily adoptable to project

scope changes;• Fast results;

Page 25: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 2 – Plan the battleEnvisioning

(t+4w)Physical

Architecture Planning(t+6w)Software Architecture (Re)Planning(t+10w)

Software Platform Development (t+16w)

Physical Architecture Deploy (t+16w)

Platform Stability

Rollout

• PB is based on SoW• PB Prioritization is based

on SDM Milestones• Team is committed to

Milestones• Project progress is

measured on a SoW task basis

Page 26: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 3 – Divided but united

Page 27: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 3 – Divided but united

Page 28: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 3 – Divided but united

• Synchronization• Speed• Productivity• Ownership• Team Spirit

Page 29: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 3 – Divided but united• Conference calls (DM)

Page 30: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 3 – Divided but united• Conference calls (DM)• Synchronized Sprints

Page 31: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 3 – Divided but united• Conference calls (DM)• Synchronized Sprints• The Spy

Page 32: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 3 – Divided but united• Conference calls (DM)• Synchronized Sprints• The Spy• Cross-Pollination

Page 33: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 3 – Divided but united• Conference calls (DM)• Synchronized Sprints• The Spy• Cross-Pollination• Common Principles

and Guideline

Page 34: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 3 – Divided but united• Conference calls (DM)• Synchronized Sprints• The Spy• Cross-Pollination• Common Principles and

Guideline• Feedback loop

Page 35: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 3 – Divided but united• Conference calls (DM)• Synchronized Sprints• The Spy• Cross-Pollination• Common Principles and

Guideline• Feedback loop• Celebrate your

achievements together

Page 36: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 4 – Defining the rules of the Game

Page 37: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

• Team Principles

Tale 4 – Defining the rules of the Game

Page 38: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

• Team Principles

• Daily Standup

Tale 4 – Defining the rules of the Game

Page 39: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

1. Fully tested; (include Unit Tests)2. Accepted by product owner and/or

customer;3. Styled;4. Documented;5. Shippable;

• Team Principles• Daily Standup• Definition of Done

Tale 4 – Defining the rules of the Game

Page 40: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

• Team Principles• Daily Standup• Definition of Done• See it only once

Tale 4 – Defining the rules of the Game

Page 41: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

• Team Principles• Daily Standup• Definition of Done• See it only once• Communication

Tale 4 – Defining the rules of the Game

Page 42: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

• Team Principles• Daily Standup• Definition of Done• See it only once• Communication• No Wastes

Tale 4 – Defining the rules of the Game

Page 43: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

• Team Principles• Daily Standup• Definition of Done• See it only once• Communication• No Wastes• Have Fun

Tale 4 – Defining the rules of the Game

Page 44: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 5 – Team Room

Page 45: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

“Zen Zone”

Page 46: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

“Zen Zone”• Whiteboard: support

brainstorms, discussions, explanations, etc

Page 47: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

“Zen Zone”• Whiteboard: support brainstorms,

discussions, explanations, etc• Phones in silence mode

(mandatory)

Page 48: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

“Zen Zone”• Whiteboard: support brainstorms,

discussions, explanations, etc• Phones in silence mode (mandatory)• No “dummy” conversations

permited, unless requested (allowed 1m for "steam release“)

Page 49: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

“Zen Zone”• Whiteboard: support brainstorms,

discussions, explanations, etc• Phones in silence mode (mandatory)• No “dummy” conversations

permited, unless requested (allowed 1m for "steam release“)

• Team sponsored fruit basket (keep that sugar levels in check )

Page 50: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Team Room - OVX

Page 51: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 6 – Self improving team

Page 52: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 6 – Self improving team• No Policing the Team

Page 53: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 6 – Self improving team• No Policing the Team• But you still need to

enforce the rules…

Page 54: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 6 – Self improving team

Page 55: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 6 – Self improving team• Game like principle of

penalization• Every team member is

onboard• Pocket money fines for

Team Principles violations

• Code principles/standards violations are fined as well

• Edge cases are resolved by team vote

• New principles may be born from edge cases

• But most important of all…

Page 56: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 6 – Self improving team

Talk about the Money pig

Page 57: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 7 – Leave no bug behind

Page 58: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 7 – Leave no bug behind• "Black sheep“: dedicated team

member responsible to address bugs, troubleshoot and support of previous release

Page 59: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 7 – Leave no bug behind• "Black sheep“: dedicated team

member responsible to address bugs, troubleshoot and support of previous release

• Shields the team from “release noise”, helping to keep team focus and velocity

Page 60: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 7 – Leave no bug behind• "Black sheep“: dedicated team

member responsible to address bugs, troubleshoot and support of previous release

• Shields the team from “release noise”, helping to keep team focus and velocity

• “Black sheep” has reduced/zero capacity for current sprint.

Page 61: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 8 – Tag, You’re It

Page 62: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 8 – Tag, You’re It• Scrum Master: The team

facilitator !

Page 63: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 8 – Tag, You’re It• Scrum Master: The team facilitator!• All team members have

practiced to be a Scrum Master

Page 64: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 8 – Tag, You’re It• Scrum Master: The team facilitator!• All team members have practiced

to be a Scrum Master• Lessons Learned: rotating SM

increased common knowledge and sprints quality!

Page 65: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 8 – Tag, You’re It• Scrum Master: The team facilitator!• All team members have practiced

to be a Scrum Master• Lessons Learned: rotating SM

increased common knowledge and sprints quality

• Demands commitment!

Page 66: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 9 – Quality is Non Negotiable

Page 67: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 9 – Quality is Non Negotiable• Test, test, and more

tests…

Page 68: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 9 – Quality is Non Negotiable• Test, test, and more tests…• Continuous integration

and Deployment

Page 69: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 9 – Quality is Non Negotiable• Test, test, and more tests…• Continuous integration and

Deployment• Pair Programing

Page 70: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 9 – Quality is Non Negotiable• Test, test, and more tests…• Continuous integration and

Deployment• Pair Programing• Code review

Page 71: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 9 – Quality is Non Negotiable• Test, test, and more tests…• Continuous integration and

Deployment• Pair Programing• Code review• Code Analysis

Page 72: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Tale 9 – Quality is Non Negotiable• Test, test, and more tests…• Continuous integration and

Deployment• Pair Programing• Code review• Code Analysis

• Trust the team

Page 73: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Getting weapons to fight the battles• Visual Studio Online: project

backlog dashboard

Page 74: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Getting weapons to fight the battles• Visual Studio Online: project

backlog dashboard• Team managed tasks using

post-its on the wall

Page 75: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Getting weapons to fight the battles• Visual Studio Online: project

backlog dashboard• Team managed tasks using

post-its on the wall• Tasks updated on project

portal at end of day

Page 76: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Getting weapons to fight the battles• Visual Studio Online: project

backlog dashboard• Team managed tasks using

post-its on the wall• Tasks updated on project

portal at end of day• Every check-in gated a

build: “Silly” broken builds often lead to “penalization”

Page 77: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

Getting weapons to fight the battles• Visual Studio Online: project

backlog dashboard• Team managed tasks using

post-its on the wall• Tasks updated on project

portal at end of day• Every check-in gated a build:

“Silly” broken builds often lead to “penalization”

• Continuous integration: makes cross team integration easier, tests the deployment process and creates trust and improves quality

Page 78: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

• Adopting a new methodology• “Slow is smooth, Smooth is fast”! (D. Rhea)

• Team is core!! Not processes or Tools• Experiment, test, fail, and learn

• It’s possible!

Battle Debrief

Page 79: Tales from the Trenches – Leveraging Agile on Fixed Fee Projects

© 2014 Microsoft Corporation. All rights reserved.

Thank You

Marco António [email protected]

Ricardo [email protected]