Automated software testing is a key enabler for teams wanting to build high quality software that can be progressively enhanced and continuously released. To ensure development practices are sustainable, automated testing must be treated as a first-class citizen and not all approaches are created equal. Some approaches can accumulate technical debt, cause duplication of effort and even team dysfunctions.
The seven deadly sins of automated software testing are a set of common anti-patterns that have been found to erode the value of automated testing resulting in long term maintenance issues and ultimately affecting the ability of development teams to respond to change and continuously deliver.
Taking the classic seven sins (Gluttony, Sloth, Lust, Envy, Rage, Pride, Greed) as they might be applied to test automation we will discuss how to identify each automated sin and more importantly provide guidance on recommended solutions and how to avoid them in the first place.
A full house for the talk, some really positive feedback and heaps of questions following the talk, so thanks to everyone who attended!
And here are the comments from the feedback cards that were handed in and nothing negative!:
Great speaker, am so glad I came here
Excellent slides, pictures
Very humorous – kept me awake!
Super content, gave me some great ideas to take back to my workplace. THANKYOU!
Great analogy, good tips / info
By far, the absolute best QA session I have attended this week. I wish my entire company could have heard this presentation. It was engaging, meaningful and practical information that I can take directly back to my colleagues. Well done!
Very good session, got a lot out of it – got some good direction, fun presentation
Best session I have attended! Great speaker delivering the content in a very entertaining manner
Excellent session! Craig is a great speaker, content was SO good! Nice I can go get preso and link to templates and materials
Pragmatic testing!! 🙂
Enjoyed the session, this will make me look for other opportunities (tools) for automation testing
Great speaker! Although new to testing sessions, I gained good insight from this session to put into use back at the business! 🙂
This was the most insightful and best talk I’ve attended thus far
Agile Australia 2013 was recently held in Sydney with over 850 attendees and 3 days. Between running a pre-conference workshop, recording interviews for InfoQ, presenting a session and being a MC for a number of sessions, it was a fairly busy time but I did get to sit in on a couple of sessions.
I was once again one of the conference advisors, although this year we introduced the role of Stream Chairs and Reviewers who took the bulk of the review of the 240 plus submissions and, I think, went some way to making the whole selection process more transparent and community driven.
Pre-Conference Workshop – Introduction to Agile
There were a number of pre-conference workshops running on the day before the conference, and on behalf of Software Education I ran an Introduction to Agile workshop for a small but engaged group of people new to Agile. According to the course overview:
This course provides an independent one-day introduction and overview of Agile Software Development. We look at the underlying philosophy and motivation for this trend in software development and examine the core values, principles, practices and techniques that fall under the broad “Agile” umbrella. Independent of any single brand, this course looks at the key factors that are needed to apply Agile effectively and provides an experiential introduction to working this way.
InfoQ Interviews
InfoQ was a media sponsor for Agile Australia this year, and being the Australian based Agile Editor for InfoQ, I undertook the organisation iof the recording of sessions and interviews. I recorded a number of interviews throughout day 1 of the conference and I look forward to seeing them available on InfoQ in the coming months.
Visual Management: Leading With What You Can See
The session I presented with Renee Troughton had a great turnout and plenty of questions afterwards. The slides are available in a separate post.
In relation to the sessions that I attended, here are my notes.
need to see the waves and learn how to surf them, rather than trying to control the waves
cognitive biases – confirmation biases (align with people with same thinking), anchoring (hang on first piece of information), loss aversion (careful not to lose what we already have rather than gain)
dealing with options – teenage decision making (either/or or whether or not), widen the frame (what about both or none of the above), multiple options, patterns
speed and quality are compatible, you learn that you can’t go fast without high quality
Ericsson – the past is not good enough for the future, stop projects because they are big batches
accept uncertainty and learn how to live with it – range estimates over point estimates and manage flow
managing complexity – probe, observe and adjust; dealing with it – flow, obstacle, adjust
wisdom of the crowd, widen the perspective, zoom in/it, look at base rates (probability of success in your market and what makes you different)
why do companies fail – they focus too much on success, take what they have and make it better, forget to look at the big picture and see what the world is doing – Garmin and Magellan lost 70% of their market overnight due to Google Maps on the iPhone
perfection paradox – learn to fail and learn to prevent rather than striving for perfection, resilience is learning to fail
flow depends on your engagement – deeply engaged, no distractions, time evaporates – otherwise you drift between anxiety and boredom depending on your expertise
Keynote: Managing for Serendipity
I was quite looking forward to seeing Dave Snowden and hoping his talk would cement in my mind the Cynefin Framework. His slides are available here.
it is better to have a partial view of the whole, than a complete view of the parts
theory deals better with uncertainity than practice
exaptation (taking something that exists and enable it to a different purpose, usually two unrelated things)
agile manifesto swung too much towards customers and away from how we can educate them
you absorb complexity, don’t delude yourself into thinking you can eliminate it
outliers are where opportunity and threat manifest themselves first – most research and search eliminate them
only way you can understand a complex system is via experimentation.
you want to cycle between complicated and complex, stuff that goes to simple usually becomes complacent and dies
cynics care about your organisation – they are the only ones making noise
meetings should not be used to resolve problems – you get dominant players – you want to to do 5-7 parallel safe to fail experiments
interventions should be coherent, safe to fail, finely grained, tangible – tackle problems oblique (plant different ideas, like managing a teenager), naive (anthropology experts in the Holiday inn), a few high risk high return options
process is what you need to change people (sorry mainfesto), naive if you think you an change one person at a time
micro narratives are what we want (stories developed in workshops are not the same as the discussions around the water cooler)
Keynote: Beyond Budgeting
The highlight of the conference for me was to meet and hear from Bjarte Bogsnes, as I have long been a fan of his Beyond Budgeting work. His slides are available here.
the purpose is not to get rid of budgets, need to change traditional management and the budgeting mindset to make organisations more agile
written into The Statoil Book, but has not reached all corners of the organisation
transparency is a great social control mechanism and good for learning
management recipes – someone has done all the thinking for you, beyond budgeting is not that
we budget for targets, focussing and resource allocation – inefficient and in one number – separate the numbers and be event driven not calendar driven
change the mindset from do I have budget to is this really necessary and how much value it is creating
Statoil abolished annual budgets, but they still have project budgets but can get money at any time (the bank is always open)
need good information to make decisions – current status as well as capacity
use a burn rate rather than a budget, with some variance
use a unit cost, keep exploring as well as you stay within a unit cost
bottom line – good costs create value, eliminate the bad ones
express cost in words rather than dollars as strategic actions and objectives
need to start trusting our people
“the way we deliver is as important as what we deliver”
objective > measure > actions > goals
KPIs – perfects KPIs do not exist, make them ambitions to action
dynamic forecasting – don’t put everybody into the same limited time buckets – some people need small time frames, some people need years
apply pressure to the KPIs – were they ambitious, did you stretch versus low balling, were there outside influences
mechanical link and no judgement between KPIs and performance bonus is dangerous
The Guessing Game: Alternatives to Agile Estimation
Neil Killick has become the voice of the #noestimates discussion in Australia (whether he likes it or not). His slides are available here.
estimation – what am I going to get and when
estimates set an expectation level
in 12 moths time if estimates come true – either by good guessing or by adjusting for over runs
we have known unknowns – can’t predict them and can’t ignore them
use real constraints – what can we build for this money, budgets create a real deadline and bring out creativity
create mini constraints and iterate and learn, come up with a mini solution for what we can do, small iterations to keep options open and diversify our risk
need an a-team that can build solutions continuously
iterative pricing – allows the customer to cut the cord early, possible even with traditional contracts
present customers with expectations of of what they are going to get and when – flexible options
slice things to the same size, avoid story points, count cards – price per feature
story points will be gamed – people will make the burn chart look good
In Conversation with Patrick Eltridge
I was the MC for this session that was a coffee table conversation between Beverley Head and Patrick Eltridge, the CIO of Telstra. When I introduced this session, I made the comment that it was interesting to see how Telstra was progressing on their Agile journey and Patrick was at the conference for his third year now; in the first year we didn’t really believe they would be able to make an Agile transformation and in the second year we weren’t sure how much was fact and fiction. In 2013, they are certainly making their presence felt with over 70 people at the conference, a title sponsorship and a number of sessions being presented.
I did not get to hear all of the session, but hear are some snippets I picked up
IT strategy needs to be driven by the corporate strategy, then creating an environment that can change and people being the best they can be
huge “opportunity” when he joined Telstra
celebrate successes as much as possible – stiffens the spine for the naysayers
reverse mentoring – mentor older staff with younger ones to pass on new thinking and ideas, both sides learn
nations can benefit if agile leadership is successful
simplified scorecards and KPIs – single number of financial performance (EBIT), engagements with stakeholders, employee engagement plus project outcomes
Using task boards or story walls is a key Agile practice, but are you making the most of it? Visual Management is more than just putting cards on a wall, it is a growing style of management that focuses on managing work only by what you can see rather than reports or paper being shuffled around. Visual Management allows you to understand the constraints in the system, mitigate risks before they become issues, report on progress from the micro to the macro. Visual Management can also be used to demonstrate to customers and clients where the work they care about is at. This presentation is all about taking the management of your work to the next stage of transparency. Discover:
* How to identify when your story wall isn’t telling you everything and how to adjust it
* What the three different types of story walls are and which one is more suitable to certain circumstances
* Different ways to visualise your product backlogWhy queue columns and limiting work in progress is so important regardless of whether you are using Scrum or Kanban
* How symbols and tokens can be used to give more information
* What else can you use other than story walls to visualise information
* How to ingrain Visual Management into both the team and management structures of your organisation
* Visualising Your Quality, Testing and Team
* What is systemic flow mapping and why is it important
The talk was also recorded and is available to view on InfoQ.
Lynne Cazaly did an awesome visualisation of the talk!
We had some great feedback from people after the talk as well as via Twitter.
Brisbane Lord Mayor Graham Quirk kicked off the day by reaffirming the Digital Brisbane strategy which already has seen the appointment of a Chief Digital Officer, a visiting entrepreneurs program and a strategy to attract more startups in Brisbane. He was keen to see more success stories in Brisbane, following on from start ups like Halfbrick, the inventors of Fruit Ninja.
Here are my notes from the sessions.
Enabling Entrepreneurship
Tyler Crowley is the first speaker to be brought to Brisbane as part of the visiting entrepreneurs program. Tyler is a well known and respected entrepreneur, best known to me as the co-host of the This Week in Startups podcast. I am not sure if there was meant to be any direction to this session, but it turned out to be a rambling question and answer session.
bring awareness to the community by getting people to tweet for being at an event – you will be surprised how quickly the city will get recognised
startups tend to congregate in the same area – in San Francisco it is around the Twitter office, in Palo Alto it is around University Avenue and in Los Angeles it is around Santa Monica, places that have startup centres benefit due to the cluster effect, cities like Stockholm are suffering because of a lack of this
River City Labs is probably currently the nexus of the community in Brisbane
the crowd funding model is still on the horizon and should be awesome for startups outside Silicon Valley, AngelList just got approval to have a crowd funding model from the SEC in the last week
another company getting acquired in the next 6 months will really put Brisbane on the map
attracting VCs – LA does content very well, San Francisco does social networking very well, so attract the kind of startups to the industry that you do well and get that message out
Brisbane has incubators like River City Labs (private) and ilab (government / university)
documentarians are important – TechZulu in LA and Scobleizer in San Francisco – provides a window to everyone outside, TechZulu is a great model, it took two years as a labour of love until it became profitable, the mainstream media follows when it becomes popular and it will explode
Brisbane is in the frustration phase of funding and media coverage – they will take notice when they become embarrassed by the success of startups and documentarians – currently at the tipping point, it is inevitable!
if your city had a blank canvas – getting a nest is important, support the documentarian, support angel events, support local meetups and events!, hold regular monthly events, calendars and job boards, strategy to attract outsiders to get the “Apple Store effect”
This Week in Startups – is the global meeting place to inspire people
build a startup map of Brisbane, one exists of Australia, maintain a database like CrunchBase
it is time for the banks to wake up and support startups like Silicon Valley Bank who are now spreading as the major banks are asleep at the wheel, there are opportunities for supporting industries to step up
software is eating the world – the biggest bookstore in the world is digital (Amazon), Scrapbooking (Pinterest), Evernote, maps, music, yellow pages, fashion, money, real estate, jobs, etc, etc, etc…
66% of the worlds population are yet to join the Internet
demographics are changing and aging – lots of opportunities in this space as well
lots of online learning opportunities – you can design logos easily via Envato, Stanford University had 170,000 online students enrolled in an Artificial Intleligence course that normally attracted 250 people and the highest achievers were outside Harvard, there are also options like Coursera and Khan Academy amongst others
created Freelancer.com – we are now a service economy, the world is becoming very globalised, crowd sourcing (outsourcing has now turned to crowd sourcing eg. logo design)
sites like RetailMeNot started with $30, Digg started with $60
the first dotcom bust was due to bad business models and a strong reliance on advertising, but in reality we are still in the original boom
Zynga – 96% of users don’t buy anything, the 4% that bought a cow to impress thir friends raised them $1.2 billion
many companies are not ready for growth, a mess internally and financially
there is lots of potential to replace people with algorithms and insights
in Australia we need to find a way to build technical businesses in the financial sector, like we do for mining
enrolments in engineering is down 60% in the middle of a technology boom, we need to start seeding interest back at school level
any job that can be described by an algorithm can be turned into software
Australia is a good place to base a startup, easier to hire people and start a network, but our exchange rate is crippling and if it rises it could become a major problem
you can build a big business targeted at the local market (eg Realestate.com.au), but always think global
options include borrowing from friends, earning a buck first and investing your own money, earning from the bank (usually $2 million and up), funding by credit card, selling something, grants and R&D concessions, pay in 60 / collect in 30 days, angel network, information memorandum by getting close to OEM’s particularly those who you might potentially sell to, Venture Capital but this is decling, crowdsourcing
fund like minded companies to work closely with you
relationships at a strategic level are hard, but can bring rewards in the long term
CFIMITYM – “cash flow is more important than your mother”, business owners are awake at 2am worrying about cash
lean startups work very well for technology types of businesses, cash hungrier models need to exist because we still need to build products like iPads
figure out who in the supply chain cares about your type of business – they are good areas to look for investors
the large amount of successful businesses do not have venture capital funding – should only consider this if it brings value
essential that you break every rule in private funding that you can’t break in the public market
Australian Government has uncapped 45c / dollar R&D tax incentives (quarterly in arrears), then you move to incentives from Commercialisation Australia
Enterprise Connect is great way to take your business through the washing machine – your business needs to be able to stand up to audit
getting a commercialisation grant – it is your onus to prove that your invention works, once that is proved the commercialisation then needs to be tested
make sure when meeting potential funders that you can answer how you are going to solve their problem, also make sure you know all about them, use tools like LinkedIn and be educated, it is just courtesy
important to have front foot sales to fuel the fire but most importantly to get validation from the customer base, it also builds credibility by reinvesting your profits, biggest issue with technical companies in Australia is there an aversion to being a saleman, it is all about selling and if you are not prepared to do this then don’t start!, you are selling yourself not the product
selling is learning – you need to learn what your customer wants and your value proposition
your first role is not to be the CEO but the Chairman of the Board (looks at the business to ensure they have the ideal CEO and are delivering to plan)
find the right people and partner with people who have done his before and hold them to their agreements
the right investors can bring you the introductions to partners, even if they decide not to invest in you
always deliver a good product and don’t piss the customer off – service is still important
raising equity starts with a plan – do this only when you need the funds, it should be the last resort, ensure you have a capitalisation (cap) table so you can understand what will happen to your equity – start with 30% for founders, 30% for management and 30% for investors
always start a business by looking at what it will look like when it is finished
build a better prototype and often it will sell itself, other people will tell you quickly what it is worth
network deeply, meet people twice, ask questions even the ridiculous ones
investors are there to support and provide leadership, when you start pulling out agreements you know things are going wrong, like to know that they have listened
My presentation from Scrum Australia 2013 called “Scrum Masters: The Full Time Role Conundrum” is available on Slideshare.
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
to improve our way of working, we need to fundamentally improve our institutions
how do you develop a car in a garage that gets better mileage and is more aesthetically pleasing
Wikispeed is all volunteers – some highly specialized, some just eager to help
the Wikispeed CNC machine cost $20,00, big auto companies have machines that are over @100,000,000, that is 1/500,000 of the cost! – better not because of the tools but because of the way of working
iterate every 7 days
ideal is to make society a better place
there’s a trend that is disrupting all industries, called Agile, all the 10 big IT companies are all or mostly Agile
manufacturing is like software 10 years ago, products are based on what the customer wanted 10 years ago
XM – extreme manufacturing – what the customer wanted 7 days ago – first manufacturing company to have that model
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)
delegative – group decision, decision leader may delegate decisions to a sub group
democratic – discuss and take a vote
consensus – leader and group together agree based on unanimous decision
consultative – where the group collaborates and consults to a person to make a decision
consensus – all legitimate concerns should be addressed that impact the group, stakeholders all need to be there, it is not a compromise, there is no bargaining, this is and/both thinking
4S – stake, stakeholders, speed and sustainability of a decision
We then created a 2D gradient to map out decison styles – delegate -> democratic -> consultative -> consensus
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)
In keeping with the theme of Agile in non-software, I was very interested in hearing about this initiative from Luke Hohmann from Innovation Games. A copy of his slides from SXSW appear to be similar to those he presented here.
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
After Dark
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.
You must be logged in to post a comment.