Agile Australia 2009 Day 2 Review

Agile Australia '09Day two of Agile Australia kicked off with a breakfast to discuss facilitation of the open space sessions later in the day, that I was lucky enough to be invited to participate in.

Once again I would have liked to have attended Phil Abernathy’s discussion on agile governance (video), Lachlan Heasman and Jody Podbury’s discussion on Agile Business As Usual (presentation) and unfortunately I was scheduled at the same time as Rowan Bunning’s talk on Agile Mistakes and How To Avoid Them (presentation).

Here is an overview of the sessions I attended:

Keynote – Increasing Business Value Through Simplicity

Jeff Smith, CIO of Suncorp gave this keynote, and whilst I have heard a version of this talk a number of times, it never fails to inspire!

Some of the quotes from the talk included:

  • “There is no technology constraint. The only constraint is constraint of thought”
  • “Every product can be copied, but you can’t copy culture”
  • “We don’t do any actual work as leaders, we create the environment for others to do so”
  • “Leaders must important work is to create a productive environment”
  • “When selecting a team, availability is not a skillset”
  • “Leaders should use passion instead of fear to get things done”
  • “There is no skills shortage, there is a shortage of leadership”
  • “Productive Partnerships – work with people you inspire to be like”

ZDNet also summarised this keynote: http://www.zdnet.com.au/news/software/soa/Free-interns-boost-Suncorp/0,130061733,339299090,00.htm

Lean & Agile In The Large

I have seen this talk by Dave Thomas before as well, but wanted to enjoy it again!

Some of the quotes from the talk included:

  • “Smell is a valid engineering term and will soon be a valid business term”
  • You know you’re agile when you no longer have DOORS, Mercury or MS Project
  • “You can only improve what you can measure”
  • “To be agile all the way up you need to be lean all the way down from the top”
  • You need to have someone on your team who’s seen the movie before to be successful”
  • “You must reach outside your own circle of influence to build a community”
  • “If you happen to think that UML is useful then generate it from your code”
  • Learn your tools. You can’t do TDD unless you know keyboard shortcuts”
  • Done = Acceptance Tested!”
  • A story is a wish unless it has acceptance criteria”
  • Architecture is a role not a job”
  • The ultimate expression of process is a culture where building software is more like playing jazz. People just do it!”
  • Definition of SWAG – “Software Wild Arse Guess”

Understanding Just In Time Requirements To Support Lean Software Development

Martin Kearns from Renewtek delivered this presentation. My key takeaway was to remember to scout ahead to be successful.

  • grow change – yourself -> team -> organisation, need to influence your team, change your world and the world around you
  • Toyota production system – two pillars including Just In Time (JIT), falls down without it
  • JIT is about a need – teams want to understand what they are delivering beyond the sprint
  • takt time – theoretical figure on how long it takes to make a product, compare to total cycle time to look for waste (eg, 2.5 days to build car and 4 weeks to deliver, where is the waste?)
  • continuous flow processing – re-arrange for work-piece flow, kaizen to solve bottlenecks
  • one piece flow helps identify quality, ask these questions in retrospectives
  • batching – push process
  • kanban – pull the work – get team to dictate what they need and when they need it, gets team commitment when you supply their needs
  • power of team based approach – able to direct each other and influence the organisation
  • Ron Jeffries Three C’s – card, conversation, confirmation
  • be aware of never ending stories – chasing tail, not sure what we are creating
  • need to scout ahead – to be productive in the now, need to spend time looking ahead to manage uncertainity
  • 5 levels of agile planning (Rally) – 1) visualise what we want to do 2) need a roadmap to know when things are coming so we can focus on the now, need to trust and challenge the roadmap 3) release – incremetal focussed on an outcome, reflect and recalibrate  4) sprint try to get sustainable pace 5) course correct daily
  • project bridge – how are people going to critique our work
  • people want strategic direction – put a date range around release dates
  • understand concept, then formulate a high level design (can be photo on a wiki), should not be done in sprint planning because it can bring uncertainity, implementation,  specification
  • concept – visualise accomplishments and how to communicate to the team
  • need trust and openness – barriers is not a team
  • take baby steps and work your way through dysfunctions

Lean Thinking for Lean Times

Jason Yip from ThoughtWorks and Alan Beacham from KM&T delivered this presentation. The slides are available here. It was a good overview of Kanban (it allowed me to get that a-ha moment in relation to measuring flow).

  • best source of information is Kanban vs Scrum by Henrik Kniberg
  • most agile shops already have a wall with steps, kanban trying to show full process and make explicit, visualise hand off points, set limits on the capacity (otherwise burden people and nothing actually moves)
  • Corey Ladas – Why Pull Why Kanban – JIT backlog – only do what you can do, lean has articulated what XP folk were talking about
  • event triggers – order point to trigger upstream process so not starved of work
  • size of cards now hard to relate back to customer value (software by numbers – minimal marketable features), so track both on wall (feature and then stories and tasks)
  • standardise size of work items instead of estimating (so just tracking work estimates) – at ThoughtWorks Jason determined everything is 2.25!
  • Kanban – means card or sign – referred to as signboard in a pull system
  • allows to understand consuption rate (how much work in progress)
  • manages amount of work, flow of materials and understand when people work
  • left to right thinking not the way, donlt understand the problem when you start, usually do 80% of project in last 20% of time, kanban brings to the front
  • schedule from right to left, process goes left to right, fixed date and desire, requires innovative thinking
  • kanban is growing trend, challenges fundamental concepts (eg CSM training), has to be suited to the type of work

The Inter-Sprint Break

Simon Bristow from Acnoex delivered this presentation. The presentation is available here. My key takeaway were the many techniques used throughout the sprint and in the break.

  • Aconex – have a break between sprints
  • Scrum is unstopbbale momentum
  • a holiday or time to kick back – no!
  • 3 week sprints, sprint planning at start and demo at the end
  • start sprint on Tuesday and finish on Thursday – so 2 day break
  • benefits – teams were stressed and burning out but then got extra benefits
  • track at retrospectives the mood-o-meter and stress-o-meter – mood started high, dropped low throughout sprint and raised at end of sprint again and stress low but raises at end of sprint
  • team used to have 6 month releases, now they think 3 weeks is too long
  • asked team to draw pictures on how they thought sprint went
  • were looking for consistent level of mood and stress
  • distractions and flow – always other stuff during the day not related to doing sprint work, when you take somebody away from task there is waste as they ramp back up, made rule that meetings were moved into inter-sprint breaks such as management one on ones, brown bags still run at lunchtime because it is useful
  • collaboration – classic IT/business divide but also discipline silos (test, UI, middleware) – moved to a cross functional team, used scrums of scrums
  • in intersprint break – strategic planning, technical debt for discipline, information sharing, improvements in tools (changed toolset from JUnit to TestNG in two days and got immediate improvements)
  • paying down technical debt – argue that if technical debt is important it should be in our sprint backlog, but this only allowed them to focus on parts of the system they were changing and not the system as a whole
  • war on warnings – complier warnings
  • testivus – refactor or add new tests
  • QA deathmatch – find a bug get a point, fix a bug get a point and prizes for most points, fun activity and some competition, keeping the garden free of weeds
  • innovation – need time to breed creation
  • hackathon – like Atlassian Fedex day – can do anything with any technology for any purpose, demo something that can improve product or look at new tools, gets creative juices flowing, lets IT show the business we can tackle anything
  • extended to researcharama – like hackahton but not to produce prototype but present research to increase knowledge of teams
  • looking to do howhardi gras – answer question how hard would it be? response, take some of those questions to pick it up and have a crack at solving it
  • things you get for free – product reflection, think about team actions from retrospective, admin catchup
  • things to watch – don’t make it too long or sluggish to get back to sprint, activities for all, clear outcome and purpose, have a champion
  • during the sprint keep sustainable pace and don’t use intersprint break as excuse to leave things
  • sell to business – constant sprinting understood and can cause burn out, started with hackathon to demonstrate importance
  • draw a map of sprint to find major events (PC broken, etc), then get team to draw their mood on top
  • use a thumbs up, thumbs down, OK in standups
  • sprintometer – identify how we are travelling visually, get somebody to move this at the end of the sprint
  • called Gatorade Breaks elsewhere
  • have already determined the game team will play in the break, maybe should ask team what they want to play, been based on what has been going on in the organisation
  • have a tendency when sprints go bad to use break to catch up , champion needs to ensure that they get the activity done
  • transparent and business aware of release cycle and to use break for distractions, trying to hammer distractions and bad flow
  • prioritise BAU work in backlog, must talk to Scrum Master, for silo teams have to constantly remind managers that speaking to a team member affects productivity
  • all sprints synchronised, originally thought it was good idea to stagger for room bookings, etc, but all teams together ended up working much better

After The Consultants Leave

Adam Mostyn from BT Financial delivered this presentation. The slides are available here. It was interesting to hear the successes and failures in what I thought to be an environment that would not be receptive to agile.

  • Phew, go back to what we did before
  • started in 2006, not looking for agile but for bright people to attack a skills shortage
  • showcases worked well (especially beer and pizza to get people in!)
  • storywall worked well to see progress
  • user stories, standups both stuck
  • product owner did not stick – went back to old way of handing requirements over, showcases fell by wayside, sprints fell by the wayside because not ingrained in culture
  • did not have education and understanding what agile meant – business had thirst but projects started to fail
  • have resistance from business – need to convince it is a methodology that has rules
  • need to convince that agile is a journey and not a switch
  • ensuring that they have qualified Scrum Masters on every project team, otherwise will fall into same hole
  • trying to define the role of product owner
  • fun, so engages and empowers staff

Achieving Project Success With Agile

The session I presented, I think got a reasonable turnout for the last session of the conference on a Friday afternoon. The slides are available in a separate post, but are also available here.

Agile Open Space

I facilitated a session on agile technical issues (amongst 13 simultaneous discussions). We discussed TDD, automated testing, pair programming amongst other topics.