The Scrum Guide defines the Scrum Team as being made up of three primary roles: Product Owner, Development Team and Scrum Master. The role of the Scrum Master is often misunderstood, particularly by management, so often questions start to get asked such as “can I share the Scrum Master across teams”, “can the Scrum Master do Project Management” and “can the role be rotated”?
In this talk we will take a look at some of the misconceptions around the Scrum Master role, discuss how it fits into the organisational structure and tackle the age-old question of whether the Scrum Master is a full time role. We will also look at an improvement plan template to help Scrum Masters improve in their role.
When XP and Scrum were devised over 10 years ago, they were created to improve the delivery of software development projects. As many enterprises have matured in the Agile adoption, many of the business users on IT projects are now attempting to use Agile approaches on their own non-IT projects.
In this session we will cover using Agile in a non-IT environment and demonstrate how the original XP practices map extremely well over to business processes. And how those in SD can help your business counterparts.
Throughout the talk I will be referencing back to specific examples and case studies that we have experienced
in our organisation as we have rolled out agile processes across the enterprise. We’ll look at:
Agile values for non-software development, including an updated look at the agile manifesto.
Agile principles and why they make good business sense.
Agile practices (such as TDD, standups, retrospectives, storycard elaboration and acceptance criteria
and planning approaches) and how to adapt them effectively into a business process (using case
studies as specific examples).
Mapping the XP, Scrum and Kanban practices to work in a business context.
Agile vs Kanban and how to decide when which is most appropriate.
What a business storycard looks like and why the elaboration and acceptance criteria are important.
Project delivery and how iterative delivery applies (and what delivery looks like in a non-software development project).
The final day of Agile 2012 in Dallas, Texas and a morning of keynotes. It was announced that they had received over 800 submissions and selected 200 presentations. Also interesting was the fact that the band of volunteers have 2 daily scrums and self organise their sessions!
Keynote: Adventures of an Accidental Entrepreneur: A High Tech Teleradiology Venture from India
international teleradiology – started small, covered the night shift at Yale from India, considered too radical for Yale, decided to set up themselves
the one closest to the future has the best view
believe in yourself, if you can see the future and have a dream, push along with it
focussed on quality, first Indian company to get the gold seal
dream big, we are often constrained by the limitations of our own mind – built a big space to house a small company initially
tempted to a million dollar buyout – money is a distraction, could have been a one way street to obscurity (Forbes India article)
struggled with bandwidth, electricity, no senior management to lean on – stick it out
anti-outsourcing sentiment, particularly from the media in the USA, realised that people only remember that you were in the newspaper, not what for
Singapore had a shortage of radiologists – reduced turnaround from 3 days to 1 hour – quality wins, even when competition enters
greatest need is in Africa – use the same domain knowledge for social good
used one reading centre in India to cover multiple hospitals (efficiency of scale), covering USA night in Indian day, also have a team in Israel to have full day coverage
Singapore was using the same technology but a different need (turnaround time rather than coverage)
did not cause job displacement – freed doctors up to cover more patients locally
implemented a 7 minute daily huddle to replace monthly meetings, had to break culture of not reporting bad news – hospitals liked the responsiveness
do eco-friendly visits – use Indian electric cars
HR Consultants said they were doing everything wrong – ignored them, broke existing cultures - hired full time masseuse, wear masks – its not just the paycheck it’s the small things that make people feel wanted
people did not want to work on Sunday – despite double or triple time – need to find innovative solutions and constantly find innovations to stay afloat (Israel)
built own product – if you have a great idea, get help implementing it – RADSpa
internal software group – developers and doctors were not cooperating – told then to treat us like an external client, bid for the work (coopetition – cooperation in competition)
set up a new clinic – no business plan, just a doctor and good quality service - not everything needs a business plan, every thing needs passion – do what you love and the money will follow
manufacturing is slow because the processes are costly to change
the Wikispeed car is built in 8 parts, completely interchangeable
originally started to win the X Prize, came 10th, while other teams were planning, they built tests (TDD) - had initial design on the road in 3 months
our approach – Agile – might be the biggest change since the industrial revolution
all tools to run a distributed team are free, did not exist 10 years ago
newest shop is in New Zealand (none in Australia)
history has been building up to Agile
John Deere – open source modular tractors – call the process frugal engineering, when they built the 8030 tractor despite being over budget and people working over time they thought they had been successful – thinking about Wiki Deere now
MakerPlane – open source aviation project, using Wikispeed model, Boeing looking at their approach
Boeing visited the Wikispeed garage in Seattle – “our tooling is better, but culturally you are so far ahead of us”
Tait Radio- devised using a recorder to record noises for testing of emissions, makes audio devices, now using Scrum to build products - text fixtures are cardboard, had been doing standups, introduced retrospectives and team stewards – developed a product in a week
send middle managers back to product work , analytics and budgeting goo back to weekly funding cycles – get more nimble management
safety iteration – initially took months, now takes days, cost $10k for a crash test so can’t afford to run it every 7 days, but they learn from real test and run simulations every 7 days
went to Detroit auto show – was waiting for sarcasm but got “good job, go get ‘em!”
2013 Roadster reveal – built in 2 sessions at the conference, only one person in the sessions had built a car, used pairing to learn – this vehicle is going to the Boeing museum in Seattle
Team Wikispeed members spend 2-4 hours per week solving social good
actively looking for product owners to find the next social good to join team wikispeed
how do we change financial stupidity? – agile accounting, lean accounting
Day 3 and 4 at Agile 2012 meant a large number of interviews for InfoQ, as well as some podcast interviews and numerous hallway discussions. As a result I have combined both days into one post. Here are my notes from the sessions that I attended.
That Settles It! Techniques for Transparent & Trusted Decision-Making on Your Agile Team
They are a set of values that impact how we will make decisions.
Traps, risks and blunders:
group dynamics – fallacy of the flawed leader, no diversity in the group, inability to consider alternatives, lack of diversity in the group, group-think (striving for consensus that drives down alternatives)
edict – do it, not very sustainable, used 35% of time, worked 38% of the time
persuasion – used 49% of the time, worked 44% of the time
participation – used less than 16% of the time, worked 80% of the time, delegated to a group or sub group
intervention – delegated but group had guidelines and benchmarks to make a decision, used less than 16% of the time, worked 90% of the time
We then talked about values:
trust - contractual (shared goals and boundaries), communication (transparent, honest and frequent communication, walking the talk), competency (respectful of others ability of what they do on the team and learning how we can do better as a team, honour our agreements) – is a key part of making decisions
values for group effectiveness – people need valid information in a timely way to make a free and informed choice, decision rules that enhance internal commitment
Group versus individual decision making:
accuracy – better at group level – more alternatives, diversity, more points of view
acceptance – group
creativity – group
efficiency – individual
speed – individual
We then had some final thoughts and questions:
collaboration pattern – decide how to decide – need to make a decision but know you have made it
common decision rules – delegate, decide without discussion, negotiation, majority vote, spontaneous agreement, arbitrary, consensus leader decides after decision
gradient of agreement – endorse, agree with reservations, disagree cannot support (but won’t block), block
to reach closure – with decision leader decide on how to decide, with the whole group clarify the decision process, close discussion, clarify proposal, poll group using gradient and decision leader decides or chooses further discussion
RAPID – effective organisations have clarity in roles around decision making – recommend, agree, perform, input, decide (like a RAPSI)
San Jose, 10th largest city in the USA, in deficit by $115 million, Luke ran into the mayor on a plane…
games – have a goal, arbitrary constraints, interaction rules, voluntary participation (Jane McGonical) – most people think fun and entertainment when they think game, now we use the term serious games
serious games - advergames (get you to buy stuff eg. Burger King), edutainment (CBS have news footage for school students), news games, simulations, exergames (Nike have a game to escape zombies to entice running), innovation games
executives love games because they involve strategy
San Jose have a yearly planning commission meeting – worse meeting ever, after a powerpoint, all the citizens were given a roll of nickels to vote on the areas that needed attention (the smarter citizens kept the roll of nickels!), got an accountancy firm to count the results, what happens if nobody voted on health care?
convinced them to try an innovation game because you can blame the consultant!
first, what is the problem – had already cut the budget to the bone, so the problem was prioritisation
buy a feature game- give people 40% of the total, give them a ranked list, the reasons for the ranking and the conditions of the acceptance, they can buy what they want but they need to collaborate often
adapted this game to imagine these are the things cut from the budget but we have no money to fund them (green list) and here are the things you can cut from the budget to try and fund them (red list) – the goal of the game was not for everybody to prioritize everything because there are essential services regardless
people respond better with physical money rather than things like poker chips
for a serious game to be serious it must affect the player – they were suggesting things like cutting 5 firemen per truck to 4 to fund anti-gang warfare and park rangers (for example)
each table had 7 citizens, 1 facilitator and 1 observer – used soloid sticks strapped to pant stirrers that were held up to signal questions – blue for police, red for fire, etc… and the head of that department would answer the question, citizens were seated from different districts at a table so they could not gang up on other districts
red items needed 100 percent unanimous agreement at the table
because people are citizens and dealing with real issues they tend to leave their political beliefs out of the discussion
San Jose citizens chose pavement maintenance over libraries – if the mayor went on record to cut libraries then the friends of libraries group would have come out in disagreement but there is no friends of pavements group
planning the first game took three months
when governments say they will cut the budget by 10% they are never specific, made them specify that cut with a smart goal (eg. no new helicopter)
the agile community donated quarter a million dollars of services and materials pro bono
the government took action (reductions in fire, police, delays in libraries and elimination of services) and citizens loved the process
pushed the boundaries in 2012 – tested new taxes, buy one or none and adding new proposals
budget games are better than budget puzzles – about making cuts not about education and they are collaborative
prune the product tree – usually for road mapping, used this to identify community service projects, which got shaped into initiatives which were added into buy a feature that the city would seed funding for but the citizens would need to donate time to implement them
games work for business but needed changes to work for governments – hard to have anonymity in a way the preserves free speech, coordinating large number of players, minimizing bias
gamification – need to ask can the average citizen play this game, need to level citizens up and play more sophisticated games
Innovation Games have a network of facilitators and have built trust, but they don’t have all the people and answers – created Every Voice Engaged
buy a feature works – a shared commitment using a scarce resource, citizens now sign up to community service initiatives using the same ideas
called it a priority budgeting exercise instead of using the word game
all the numbers come from the budget and are reviewed by an independent neighbourhood committee
neighborgoods – reducing consumer goods, sharing materials in the community
draw roadmaps as trees so you can talk about the -illities, show the critical infrastructure at the root
our aspirations as a community should be more than decreasing the length of sprints from 20 minutes to 15 minutes – we can do better!
The final story Luke told was how one disadvantaged woman was almost not going to turn up the session because they had always been a waste of time. At the end of the game she stood up and said that she felt empowered because she ” had the same amount of money as everybody else at the table” and was able to make real decisions. Enough said.
Demanding Technical Excellence and Professionalism
Robert “Uncle Bob” Martin presented this session. I had seen most of this content before and did not hear anything much new (I also had to sneak out 10 minutes early to meet up for an InfoQ interview). What was much more interesting was a discussion I had Andrew Prentice from Atlassian at the Conference dinner about the validity of many of the claims that were made in the session (I think we should strive for them but Andrew seemed to think it depends on time and place and the developer).
bad code, 32000 lines of code in two classes (Order and OrderImpl) – what created that sheer irresponsibility? The fault lies with programmers – they chose to write it that way – that choice is always the wrong choice
our craft is defined – we have been writing the same sort of code for 40 years – assignment statements, if statements and loops
wear the green band – acceptance and willingness to follow my craft and unwillingness to comprimise the craft
These are my expectations from craftsmen:
short iterations – close the feedback loop, down to a week or shorter, deliver working code that passes all the tests and is ready to deploy, programmers should be working in short cycles 20 seconds or less (red-green-refactor loop)
never be blocked – never wait for anyone, if there is a blockage then go and fix the problem, don’t be stymied!
screaming architectures – does your code execute the use case without all the external architectures – should scream I am an accounting system not a Java web system, delay for as long as you can decisions about the database or web server , isolate the business rules so you can switch out the database at a moments notice, use decoupled architecture to focus on business rules, these architectures slow down tests
incremental improvement over grand redesign – grand redesigns tend to expensive and open to failure
clean code – output should always be clean and kept clean, boys scout rule – do a random act of kindness to the code (leave the camp ground cleaner than you found it)
go fast, go well – need to flip the professional bit in your head, the only way to go fast is to do good work
TDD – proportion is growing over the years, can’t write any production code until you have written a unit test, don’t write more of a unit test that is sufficient to fail, don’t write more production code that is sufficient to pass the failing unit test, developers initially find these rules stupid, everything worked a minute ago, always a minute away from working code, don’t want to spend time debugging but want to spend time writing working code, development teams with a long list of defects over a page is not being responsible, confidence to change the code and ship it
100% code coverage – what lower number makes sense, there is no other number that makes sense, personal ethics that the tests have good coverage
QA should find nothing – the QA organisation should wonder why they exist
statistical estimates – use velocity and it is not a failure if you deliver less, predictable team should have a flat velocity
Wednesday night was the Rodeo Circuit which was an opportunity to collect stamps while visiting all the exhibits. I was lucky enough to win a netbook from the Agile Alliance.
organisations have centres of excellence – how do you spread it from the few to the many without screwing it up? (examples – Hendrick Motorsports growing from 2 to 4 teams, McDonalds opening 1,460 stores in China)
shared mindset (what people should and should not do) is crucial to scaling up - Apple has a secrecy mindset, Amazon has an openness mindset, so there is no one right way
a mindset is required to be successful at Agile – going to a talk or reading a book is not enough, you need to grind out the message and do the same thing day after day and live by it (Facebook – employee on boarding is a six week bootcamp where they work on 12-13 short projects, focus is to inject people into the mindset and determine their best fit at the organisation)
the never ending danger is that things might go bad (Onward Memo by Howard Schultz – growth of Starbucks from 1,000 to 13,000 stores, in the rush to get a huge footprint, the mindset got watered down – got excited by growth and left the excellence behind)
Choice Point 1 – More vs Better
voltage loss – things get lost in the translation, sometimes this is worth it because it is half as good as the best but twice as good as it is now
learning curve problem – takes people a while to get good when spreading knowledge from the few to the many
overload problem – burden of the management team in trying to maintain momentum
Choice Point 2 – Alone vs With Others
collaborate with competitors (Glad Press ‘N’ Seal), open source is one extreme, do it alone is the other (everybody at Pixar is an employee, nothing is outsourced
Choice Point 3 – Catholicism vs Buddhism (Replication vs Localisation)
roll out to the masses or a central set of beliefs
replication trap problem – Home Depot is a DIY model and when they rolled it out in China it did not work in their culture
localised solution – Buddhist approach to tweak just as much as needed to make it work
link hot causes to cool solutions – fire up contagious emotions first, humans are irrational, to motivate people get them emotionally cranked up (but the danger is that they get angry) so need to have a solution to cool their energy (watermelon offensive at Stanford for bike safety involved smashed watermelons and subsidized helmets or the first all-hands meeting at Apple after Steve Job’s return where the share price was not good so Jobs declared war on Dell and charged up people to make Apple great or get out)
live a mindset, just don’t talk about it – do actions that are consistent with the direction you want them to go, what we tell them doesn’t matter it is what they do that counts
Hackman’s rule for teams – over 6 people problems arise, more than 10 you are really in trouble, optimum is 4-6 people, Navy Seals and fire teams have 4-5 people, any more is more complicated
Dunbar’s number is 150 (100 to 230) – the cognitive number of relationships we can manage, pirate ships only have about 100 pirates per ship before dividing, Twitter average is about 100-200 followers
as the team gets bigger you spend more time on the dynamics and less time doing the job
little things pack a big wallop – subtle cues mobilise mindsets – design things that people barely notice but have a huge impact on their behaviour (background music, language, smells and sounds affect people’s behaviours)
Kathleen Vohs money research – people are less likely to ask for help or give help, will work alone when money is the object – leads to selfishness and self sufficiency
think about the little cues you are sending
connect people and cascade excellence – get one group to mentor the next to spread the excellence, grow your own replacement to get a promotion (Zynga), make your initial group diverse because more variation will give you a bigger impact
the mindset is the steering wheel and incentives are the juice – money is an incentive but so are pride and shame, how can I embarrass them or how can I make them proud (using mimes to mimic jaywalkers, Ben Horowitz fines people $10 a minute they are late for a meeting – it is not the money that motivates them it is the embarrassment, gets them to pay him on the spot!)
don’t put up with destructive beliefs and behaviours – bad is stronger than good, bad behaviours are ingrained more deeply, to spread excellence you need to stop the behaviours, bad behaviours are 5x worse than the good, destructive team members that can’t be reformed can bring down performance by 30% to 40% because you spend more time dealing with them rather than the work (Barry Feld of Cost Plus World Market would look for two things when visiting a store – greeting me and the customers and are the bathrooms clean)
don’t mistake swarming for scaling – raising awareness is not enough
too fast, too far – when people say they want to scale quick and fast, they are looking for the easy way (you are fighting a ground war not an air war)
When scaling you need to be master of addition and subtraction. – everytime you add something good, you need to remove unnecessary and bad things to make way for the good.
leadership is the next step beyond management – to a soft skills focus
productivity – undermining / resistance -> passive compliance -> active participation -> committed dedication -> passive innovation – move up the scale with good leadership
model desired behaviour – same attributes of a good leader are modeled over many years and in different countries – honest (will not knowingly follow someone who is dishonest), forward looking (describe the future state), competent (don’t want to be embarrassed by our leader), inspiring (The Leadership Challenge), a leader needs to shield the team, remove impediments, carry food and water and re-communicate the vision
create a learning and sharing environment – “if you have two hands to work with and you use one to cover your butt, you only have on hand left to work with”, set an example and admit mistakes and share information, ask questions of your team, make it OK to discuss the bad stuff
share information / power – agile tools allow move from micro management to navigation and communication
challenging the status quo – retrospective, “areas for improvement” works better in some cultures over “what didn’t work well”, retrospective action wheel, gathering lessons learned is one of the most frequently dropped agile practices
innovation and learning – if people are trying hard, then mistakes don’t really matter, Toyota collects lots of ideas with small incentives rather than one big idea
encouraging each other – treat people as volunteers, paying people just incentivises people to show up but volunteers are passionate, say thank you and why you are thanking them and what the benefit was, celebrate interim goals frequently, at the end is too little too late
Leading Conflict: A Systems Intelligence Approach to Conflict Facilitation for Leaders
This workshop presented by Michael Spayd and Lyssa Adkins was one of the highlights of the conference for me. The key takeaway for me was that “everyone is right… partially!” The slides are available here.
The workshop started with a discussion on the conflict we see on teams and then about why we came to the session and what we had hoped to get out of it.
systems oriented leadership – structured, holistic, organic, complex, end to end – move from the work level to a birds eye view
relationship systems intelligence – we are all in relationships – personal, work, departments
the human system is not in alignment with what agile does, leadership begins inside
see conflict through the right view – the right view leads to the right action, everyone is right partially, self organisation happens when all perspectives are represented, conflict is something trying to change in a system and not a problem to be managed
We then had a discussion around what is the benefit of the right view, is it difficult?
what is the difference between finding someone wrong as to finding someone right – go and hunt out why they are right
container – not necessarily physical but made up of behaviours, norms and culture of the team and environment
We then did an informal constellation exercise – 20 people in a circle, put the subject on a piece of paper in the middle, make a statement if it is true stand close, if not true stand away then ask those in the constellation what it means to you, need to talk from experience not what you think, remember people are right partially (take a soft focus). It is called a constellation because it looks like a star in the sky, speak from your experience, only people who wish to speak should
emotional withdrawals – blaming, defensiveness, stonewalling, contempt, excessive advocacy – contempt is most prevalent on software projects
emotional deposits – appreciations (noticing people doing little things, in front of the group), acknowledgements, more inquiry and less advocacy
never praise people for the work they do, but for who they are, turn up acknowledgements and turn down appreciations
appreciative inquiry – look at the strengths of teams
We then had a discussion around our teams positive /negative ratio
dealing with cultural conflict – inquiry openness, use my land your land ” in my land we…, what happens in your land?”
teams move around the quadrants – prison camp is not sustainable, happy camp and sweat shop are intolerant
conflict protocols – team needs to come to consensus, leader needs to take a facilitator / coach role – what is the environment and behaviour we want when we are in conflict, everybody’s job is to call out the protocols when needed, not enforce them
be a facilitator – more helpful than resolving it, keep reviewing the right view beliefs (fake it till you make it), understand your triggers
process the conflict – reframe the conflict” “I wonder what this conflict is trying to tell us”
don’t want debate or vote, a prelude to a discussion to find out what’s true
we get triggered by people who are like us who exhibit behaviours we don’t like
He kicked off the session with a live poll by getting the audience to answer the question “what goes wrong with product ownership” and then got everyone to move around the room based on experience, how well the product owner works (they don’t correlate!), internal versus external product development and the ability to change products
why is there a difference between developers and customers?
single product owners don’t work – whole teams own products
processes aren’t designed for success (including Agile ones)
safety isn’t success – Nordstromare a big successful company so they have lots of rigour around their process, nothing innovative gets through the net, so they built an innovation lab
waterfall model – step after step models have no feedback, Royce was trying to explain why it was a bad idea, experts have been trying to tell us why this is bad since the 70′s, traditional development models are safe
agile is the new waterfall – product owner creates stuff and gives it to someone else – someone to blame like the preceding process in waterfall
velocity isn’t value – being great at delivering software using agile then you should realise that it doesn’t matter, if we build more shit we just have more shit, we are not here to build software we are here to change the world, everything that happens (outcome) is after delivery, so need to maximize this, difficult to measure
underpants gnomes - a meme for something people are building but have no idea why
to get value you must form a hypothesis on how you’ll get it – this is the first shift companies need to make – how will we measure the output
one balanced team not client vendor – if we want to fail we can probably fail cheaper abroad
ideal product should be valuable, usable and feasible, product manager understands the value, UX or BA understands the usable, lead engineer understands the feasible, this is a balanced team – how should we build it, will they use it and how much will it cost
working as a team of comakers, we need to do a lot of mind reading, visibility is not good enough, shared understanding is what we are striving for
discovery complements delivery, morale suffers when we just build stuff, the thrill is seeing how well it works and debating the results and planning the next approach
story maps describe outcomes that we are shooting for
personas – don’t necessarily need to be accurate documentation but facilitate shared understanding
need face time with real people to understand, go watch people work to learn, then build models to map what you learnt (experience or journey map), when users explain a problem that should trigger an idea, share product story or product as part of a regular internal tradeshow
we need to understand the problems and find solutions to get us there, MVP (minimal viable product) should be the least we can build to solve a particular problem,
a newer version of MVP is lean startups (build -> measure -> learn) MVPe, smallest viable experiment so that we can learn and eventually earn
ready for release board – for each card, an explicit measure step and metrics, then before it leaves the board they need to learn
disagree – fewer people to execute, focus on importance, deliver benefits quickly, tackle issues like mobile and embedded
agree – not about how many people are doing this or certifications, there are plenty of problems to solve, a foregone conclusion, let’s tackle the bigger issues, adoption is superficial metric, plenty of challenges beyond pure software development
can you define ALM?
no agreed definition, lean concept of flow, includes the tools and processes
typically think about standard phases but the end to end lifestyle doesn’t work, now need to look at DevOps and cloud now, more complicated to deploy now
ALM tools are a misnomer, output of SDLC, fundamental issues with tools currently, we do not develop and done any more, need to start thinking about products and products have lifecycles
going forward will be more about traceability of past development and operations
worst thing is the name
what should we call ALM instead?
Application Lifestyle Context
Gartner are talking about this internally
nirvana…, once the new taxonomy is decided it will be antiquated, we are here to improve!
dynamic end to end process, software lasts decades longer than we expect it too, needs to sustain life
ripple effects of agile disrupts it
Gartner’s prediction of 80% of software development teams doing agile by 2012, where are we?
at least 80% of all IT organisations have some agile and 20% of large organisations, on everyone’s mind, businesses are talking about it, will probably still be another 10 years because big change takes that long
estimate that 40% of organisations are using agile, has blown past all the other methodologies, businesses realised recently that they’re not innovating
are we seeing issues with organisations part doing agile and part traditional?
often the only way organisations are initially successful, different processes (eg. software and embedded), needs to rolled out staggered and incremental
fair adoption in development teams, but now what does it mean to be a tester, lots of centres of excellence still exist, Facebook deploying every 25 mins scares the heck out of most traditional organisations, companies need to get to the right fit
majority of Agile teams are not purely Agile, use water-scrum-fall, slimming down requirements and deployments is not sprinting, Facebook analogy does not fly with corporate clients
need to begin where people are, approach what is the best for the organisation and adjust for the context
how do you measure effectiveness of Agile methods and compare them?
prefer not to speak about methods but rather patterns and practices, compare using customer satisfation, ROI long term for the organisation, organisations still like function points delivered because it is easier to count
one of the biggest pluses is on quality and that is subjective and hard to measure, metrics that can point like customer satisfaction, rework and defect counts, time to market also better, it is often a leap of faith
velocity interest is going down in industry, but many in the executive suite only think about velocity, a loaded word
don’t know soft value if you don’t baseline, now we just fix metrics inline and not all defects and features are equal, need to measure qualitative benefits to the business, will see more as metrics around Agile evolve
need to pull testing and quality in all the way through, drive better quality and user experiences
describe how you evaluate the tooling landscape?
most observations come from end users, tools aren’t the key most important thing, want to understand where the market is going and what is the right fit
biggest differentiator is picking the right tool for the job and the organisation
there are tools that enhance Agile that were not built for Agile, and there are specialised tools for Agile, vendors do put thought into who they are targeting so you need to listen, we don’t live in a world where everybody gets their tools from a single place
A huge thanks to my friends at Atlassian and Opower who allowed me to tag along to an awesome Tex-Mex joint in Grapevine called Uncle Julios.
With a bit of last responsible moment planning, I made the trek to Dallas (well actually Grapevine) in Texas, USA for the Agile 2012 conference. This year I was once again a reviewer on the Testing and Quality Assurance stage. This was the first year in four years that I did not have a submission accepted, however with my role as an Agile editor for InfoQ, part of my journey was to interview interesting Agile folks on camera (how cool is that!)
When somebody says that things are always bigger in Texas they are not kidding! The Gaylord Texan Hotel and Conference Center is huge, in ways that cannot be explained without seeing it. Everything is accessible without really needing to leave the enclosure (which is great because you don’t need to experience the 110 degree heat outside.
people in health care often perform non-health care scenarios (for a scenario that is unfamiliar to them)
We were then given a clinical scenario to watch in which a doctor is giving a medical update to a parent.
we observed that: the doctor gave out a broad range of data, the senior doctor fled the scene, the doctor was not looking to the parent at eye level, there was lots of technical jargon
our coaching advise to the doctor would be: sit down, don’t be alarming, wait for a response from the parent and address any concerns, focus on the more likely data at the moment, know the patient, get the senior doctor to introduce the new doctor and stick around for the discussion, ask the parent if he has any needs
We then launched into talking about feedback:
judgemental feedback – “I wouldn’t have done that”
non-judgemental feedback – sounds like you are being nice, but are actually statements that make people defensive, “the wolf in sheep’s clothing”, “do you think you could have done better?”
frames (mental models) – context is king, match our context to the other person and determine what frame they are in
ladder of inference – we can observe data and experiences as well as the actions, but everything else is within, are you basing conclusions on something observed or something inferred (The Fifth Discipline Fieldbook)
you need to check in with yourself – are you using observable or inferred data
like the donkey’s balls vide, you need to have a WTF moment – what is your cue? Ask “where’s that from” when you have a mismatch rather than rage with WTF!!!
single loop interaction – inferred frame, “why we think they did it” (do something and get an outcome, repeat) as opposed to double frame interaction asking “why they did it” (do something, get an outcome, learn from the interaction on why)
not all about how you did it, but the way you deliver the message, need to bring to the attention of other person what you saw (your frame), need to understand why they did it
uncover your own thinking, use lots of “I” statements to remove defensive stance, “here is what I noticed”, “here is what I do”
data -> advocacy -> inquiry
balance with inquiry
as a coach if you understand the appropriateness rather than just telling them, you are doing double loop learning
you have a level of knowledge, so you need to understand but still use good judgement
“I noticed…”, “why did you do that?”, “I observed you were polling for status at the scrum… Why did you do that?” In this case, the answer was respecting the time box. Responded, “I understand that…”, “but it is my view that…”, “what do you think about that?”
can also do this with your spouse, teenagers (gets through the pain quicker), can also do via email, it’s not the medium it’s yourself (are you genuinely curious)?
The debrief stages are:
reaction – not “how did that go”, but “how did that feel”, chance to vent about any feelings
description – ensure we are all asking about the same problem, can you give a summary of what happened
analysis – use advocacy / inquiry and ask how that related and expose frames
generalisation – look for outstanding examples, how can we apply this learning to reinforce
Finally, when you hear yourself thinking “WTF!”, balance that with “What’s that from”
Agile Inception Deck – 10 Questions You’d Be Crazy Not To Ask Before Starting Your Project
This workshop was led by Jonathan Rasmusson, author of the Agile Samurai. Much of this workshop was common sense and very close to the Concept process I have been using and teaching for the last few years. His presentation is available here.
product box – what would it look like, what are the features and the related benefits – a list the benefits; b) create a slogan; c) draw your creation
create a not list – focus on what we are not going to resolve – in, unresolved and out of scope
meet your neighbours – your project community is always bigger than you think ,core team -> people to start building relationships with -> then everyone else, stakeholder map
show the solution – pick your architecture when you pick your team, be aware that people bring baggage, knock together a high level architectural diagram, show the challenges to the sponsors (eg. no test instances), also show the out of scope and unresolved architecture, understand gaps of licensing, etc…
what keeps you up at night – risks worth taking and those that aren’t
size it up – we don’t know how big – estimate in month-ers, go through the master story list, it’s a guess, not a commitment, think small, no project should take longer than 6 months
be clear on what’s going to give – the secret of agile is that it does the same thing you do when you have too much to do and not enough time, dropping agile is just dropping cost (“or just sending the problem downstream to another manager” as per someone from the audience), the furious four, agile likes to bend on scope, use trade-off sliders, if they don’t want to make a decision you need to remind them that at some stage someone will make a decision, do other important stuff on a separate slider
what’s it going to take – be clear on your team (who do you need, what skills, make sure you have your stakeholders on there as well to be clear on commitments), clarify who is calling the shots (especially when you have multiple stakeholders) and who will make the final decisions from a customer stakeholder point of view (who is the person with the goal), come up with a rough back of the napkin budget
should be 10 slides in PowerPoint or keynote – clarity, creative, drives conversation, easy to participate
Here is the deck that the table I was working with created:
George Dinwiddie led this session which turned into a lively discussion! I had proposed what I thought was a related session on Specification By Example and had combined them, but the conversation never really had a chance of getting onto that topic!
George expects the business people to be able to read and understand the tests
non-programmers should not be writing automation, it is the programmers responsibility
wants to be able to extract working tests into a step definition rather than needing to rewrite in Ruby (George Dinwiddie)
there is a difference between a specification and testing (Christian Hassa), this is a fundamental shift
building a DSL – talk about terminology and how we explore our domain – essential step
you don’t create a DSL, you build it
not a problem with the toolset but our training in thinking in a procedural way rather than an example way of thinking (Corey Haines
testers new to automation create large scripts because it’s their only hope in creating some sort of repetition (@chzy), it does not take a lot of effort and most business people are open to working this way
enable non-programmers by getting them to come work with us every day (Woody Zuill)
George is helping people make a transition, don’t want people to throw away what they have,
ideal is not to have step definitions call step definitions, Cucumber community is becoming a community of programmers and are moving away from this
Robot Framework is more keyword driven, more aligned to non-programmers, you can also make a mess, “it is a double edged sword” (Elisabeth Hendrickson)
testers like to test the negative cases, should they be expressed at a high level or expressed as a unit test by pairing developers and testers
if you are testers and you cannot write simple Ruby scripts, then you have no place on my team (Corey Haines), this opinion is probably shared by the Cucumber community (George disagreed…)
need to use the same design patterns in both Robot and Cucumber (@chzy)
in an environment that is test centric and BDD, Cucumber is the tool (usually environments with little to no QA), in a business centric environment where you an get the business involved Robot Framework is your tool
Corey works in environments where there is very few Cucumber specifications per scenario, backed by lots of unit tests
Cucumber came out of environments where the team is predominantly developers, hence the desire to drill down to Ruby code sooner
at a large household name company – theyexpect testers to be more technical, happening more in the industry, eliminated the role of tester due to different pay grades (@chzy)
moving traditional organizations to a collaborative way of working is hard (@chzy)
wants simple refactorings that are are a bridge from one place to another (George Dinwiddie)
at a startup Joseph was at, tests were taking up to 8 hours to run and costs for distributed architecture was high
Forward Internet (London) – let developers do what they want – by not testing they could be faster and more interactive than their competitors – did testing in Production, a risk that sometimes things could fail – testing should not block deployment
in some situations it is just worth hacking it out, particularly in a lean startup
if it is faster to rewrite rather than maintain it, then don’t write tests (Fred George via Corey Haines)
a big question of this is the skill level of your developers – do you have the skill level to make the choice to not do it (Corey Haines), primary impact of success is the skill level of your developers
Scribd – were having trouble with test speed and found out the developers were scared of breaking the PDF (which is the heart of the business) – they separated the PDF out to speed up development (so developers weren’t worried about breaking it)
quick delivery – need the quick feedback cycle to make this work, simulate production
need effective tests – small suite of tests that are 5-10 minutes long
test what you are most scared of
Silicon Valley’s issue is hiring – Facebook is stealing developers from Google because they hire good people and enable them to just hack it out
2 software industries – small companies and large corporations, very different worlds
question everything – can only do this if you have experienced it before and understand it
The second keynote was supposed to be Mark “Bomber” Thompson from the Essendon Football Club but he was an unexplained no show. After an impromptu thankyou speech from me and breaking the conference for an early break, James Hird arrived to substitute and did an impromptu talk. As a result of the scheduling changes, I unfortunately did not get to see much of either session.
time machine pattern – work an iteration or more ahead of the development team
UX is primarily about design, we are in two different worlds
embed the time machine pattern within Scrum
personas – focus on the pragmatic face of our users (David Hussman) – synthesise what we understand at the moment
added to GWT… Given I am a role AND I VALUE, When… Then…
grooming is the forgotten ceremony
involved the users in planning poker – got clear perspective in the context of their environment]
demo became a cognitive walk through
Emerging Paradigms in Software Testing
I was MC for this session for Kristan Vingrys from ThoughtWorks. I have known Kristan for a number of years, and I resonate very closely with his views on testing and testers. His slides are available here.
ATDD is a good way to break down the barriers between developers and testers
need to change focus to preventing defects rather than finding defects – measure yourself that more defects is bad
fast feedback – embrace continuous integration, automation and the test pyramid
involve everyone – crowd source your problems, tests are an asset, version control your test cases
change focus from how I prevent this going into production onto how I get this into production
build pipeline- stage build to run different tests in different stages in the pipeline
tester needs to inform the team of quality, not be responsible for quality
target testing to things that are changing, not just scatter gun
it’s about the principles, not the practices
test code is code – treat it like any other code
it’s important to know what you are not covering, more than what we are covering (Model Based Testing)
Design Eye For A Dev Guy
I was MC for this session delivered by Julian Boot from Majitek. This was one of the highlight sessions that I attended at the conference and as I remarked when thanking Julian, it reaffirmed how much I don’t know about good design. His slides are available here.
focus on data over labels – make the data bigger, keep your headings close to your data so you don’t get lost
hierarchy of actions, but use them properly
colour – use a designer, but if not use 3 colours in one shade and two others (using three grey is the best pro tip and two others)
let design be your brand, don’t overuse the brand
Agile Executive: The Naked Truth!
I was MC for this session led by Kelly Waters from ThoughtWorks and author of the All About Agile blog. I unfortunately did not get to see much of this presentation, the slides for which are available here.
I was MC for this session delivered by Tony Young from Integrated Research. This session was designated as “Expert” but there is nothing in this that I could see that made it that level. His slides are available here.
Agile Australia 2012 was held a few weeks ago at the Hilton on the Park Melbourne in front of a record (and venue busting) 850 attendees. This year I had the privilege of being a plenary session host and speaker, present at two workshop sessions and be an MC at a number of different sessions.
Furthermore, I was a member of the advisory committee with the role of program overview along with the usual duties of reviewing and shepherding conference speakers. This year the review process was open to comments and voting from the community and overall I think we ended up with a good mix of proposals.
With all my duties I was quite busy this year, but here are my notes from day 1.
Keynote: When The Stakes Are High
Dr. Fiona Wood, Plastic Surgeon and Director of the WA Burns Unit, was the keynote speaker and undoubtedly for many people was the highlight of the conference. The advisory committee (and particularly Martin Kearns) had been aiming to get somebody from the medical profession for a couple of years, and her talk was nothing short of inspiring.
Mainframe Test Automation Within SCRUM – How Did We At The BNZ Get It To Work?
Bram Surti and Rob White from BNZ delivered this session. Essentially I was interested to see if they did anything different to what I had already tried myself in this space. Sadly, I didn;t learn much new, but I was pleased to see they were using a lot of the same tools and approaches that I had used myself in this space. Their slides are available here.
as a leader we don’t have all the answers, but we know we can do better
Kinder Surprise in relation to people - wrapper is the actions of people, but it is a thin layer, peel off the actions you get to the attitudes that govern what we do, apply a bit of pressure and you get to the values, open up the inner canister and you get to people’s belief system
don’t really understand our belief system until you are challenged by somebody else’s - a good example of this is people and their attitudes to attending meetings – you may need to understand what drives people
child – react to world around you as if you were a child (when I grow up, I wish, I want)
parent – react like a parent based on imprints of how our parents reacted (should, ought, could)
adult (analytical side - who, what, why, I think)
even if you know yourself, you don’t know jack! – people talking on the same plane have harmonious discussions, they break down across the positions (what people know about the world)
Practical Kanban for Software Development
I was MC for this session delivered by Perryn Fowler from ThoughtWorks. I had high hopes for this talk as Kanban is still not well understood in the wder community. It covered a lot of good topics (and, as he stated at the top, the talk was the thoughts of Perryn), but it fell victim to running out of time for the meaty stuff and unfortunately was a little rushed at the end. Furthermore, his slides do not seem to be available either.
Kanban is not just cards on a wall, even though literally it is a visual indicator
Kanban is not an entire methodology, it is a technique
Kanban is a tool to tackle particular situations and problems, we often treat these situations as normal, but there is a better type of normal
limiting your WIP, the manageable level is probably a lot lower than you think
Kanban dots – stick them on your wall to indicate WIP
Kanban is about stop starting and start finishing
utilisation is not throughput, high utilisation damages throughput
Kanban is working as a team
business goal burnup – when do we start making revenue – keep your eyes on the prize
we are trying to achieve flow – Kanban will make poor flow visible
layered teams (multiple technologies) – technical layer stories don’t make sense and teams get out of synch, use task cards for the work and put WIP limit on the cards
reduce WIP to learn about your process
bugs and rework – it counts towards WIP, can put in the development or test column, whatever you are most comfortable with
blocked is nothing we as a team can do anything with – does not count towards the WIP limit
people will cheat – the rules aren’t important, it is the principles you want to achieve
use a green sticky for done rather than a done swim lane
small cards gives us good flow
Kanban will feel like it is causing problems, it is just making it visible
Value and Culture OVER Practices and Processes – Driving Agility at Bankwest
I was MC for this session delivered by Sandra Dalli and Sarah McAllister from BankWest. I really enjoyed this session. They kicked off the session with a great video with music and time lapse pictures (unfortunately it does not seem to be available publicly). Most enjoyable was their honesty about their journey and this mistakes they made along the way (they started by spending three months in a cubicle writing a document about Agile!). It also appears that their slides are not available currently.
systematic desensitisation – common technique for getting rid of fear
we always plan to succeed, so we don’t plan for failure
failure is a really great learning tool – if you made the failure you know it, the hard part is sharing with the team
taking fear of failure to the brink that you don’t know what to do is really bad
retrospectives give you a coping mechanism – share with others and make it better
continuous integration – fail early and stop the line
automated testing – removes doubt, they fail for a good reason
showcases – we find out we are going to fail early
sustainable pace – a failure because we still get a crunch at the end of the project, allows us to build slack because you can’t run at 100%
it’s about learning not winning
continuous delivery – you can go to production at any time, remove the fear of go live
aim for simplicity and feedback
fail cake – if you break something, you need to buy cake for the team, nobody is afraid of cake, nobody can yell at you with a mouthful of cake!
Safe To Fail
I was thrilled to be MC to Phil Abernathy (he was my MC last year and I have worked alongside him for a number of years). He had a great set of slides at the start of this talk to illustrate his experience. Given I knew the content of this talk quite well I did not take any notes, but I did like his analogy around the $100 strategy (for every $100 spent, where did it go – pull the strategic levers to figure out where you can change, these become your strategic programs). His slides are available here.