Showing posts with label agile. Show all posts
Showing posts with label agile. Show all posts

Sunday, 22 April 2018

Agile In Four Or 4 words

I've been heavily reflecting on last week's post agile in 3 words and I'm not happy enough with it.

So this "Agile In 4 Words" is a response to that previous thought - to bring in a previous previous thought I captured in this older post Open question how.

I think the shortest summary to what is agile - other than "collaborative lightweight working practices" that means many different abstract things to many different people I've tried it on...and gotten nowhere with, is actually:

"How can I help?"

This one induces in the person asking out loud or silently to themselves the team working principles, the proaction, the learning, and more. That lovely "how?" question really opens things up more for everyone!

Especially in response to my earlier attempt "Can I help?" - a simple "No" would stop anyone in their tracks. And that "No" is to be expected when people are massively in a state of focus and don't want any interruptions.

The "simple" introduction of the "How" makes this an engaging question that any team member can get creative with by themselves and come up with more creative suggestions - even innovative practice improvements!

How do you think this is better or worse than the earlier version? Or...indeed..."How can you help?" :-)

How Can I Help Are 4 Key Agile Words
Agile In 4 Words - How Can I Help?

Thankyou for supporting!

Sunday, 15 April 2018

Agile In Three Or 3 Words

How many times have I heard the following from new clients and other coaches telling stories about their "difficult" clients? That's why I crafted this post!

3 Words Of Agile Everyone Can Understand
Agile In 3 Words Is Easy

Actually explaining agile quickly, succinctly and simply for anyone, or any team or any organisation of any size is really easy, if you do the work (inspired by Byron Katie). It's simply you, and everyone in your organisation, and every supplier, client, consultant, advisor, regulator and customer around your organisation offering really often:


"Can I help?"


For agile in 3 words it is as simple as this! The implication is that everyone proacts to help each other all the time with everything from making tea to delivering the most complex system requiring 100's of people interlocking and aligning.

As an agile coach one of the things I look/listen out for when assessing the agile fluency of an organisation is how many times I hear the above line, and especially its followup which is highly noticeable in environments where there is a great deal of proaction - namely:

"Thank you!"


Now, go do the work! Thankyou for reading and supporting! :-)

Sunday, 8 April 2018

My favourite coaching tools: Free online Kolb Learning Styles Assessment

Caveats:
As always when dealing with any kind of model that helps us communicate and understand the abstract world of our minds, our existence and relationships with each other, nicely summarised by George EP Box: "all models are wrong, some are useful".

This is a free assessment, and there are several others that you can freely download. I liked this one as it is a "1 stop shop" document that you print out, fill out, score quickly on the reporting sheet, and finally receive additional insights at the end. And anyone can complete this simply and quickly. 

Required:
Internet access
Printer and 8 pages
Quiet space
10-15 minutes

Step 1:
Give the link or 8 page print-out to the coachee: Kolb Questionnaire. Again I think the best time to do the assessment is in the morning, before work really starts.

Step 2:
When the assessment is complete, the coachee and you will have the coachee's 4 Kolb styles - Activist, Reflector, Theorist and Pragmatist allocated to very strong preference, strong preference, moderate preference, low preference or very low preference.

You now have material you can use to support the coaching goals and plans where learning is required. You also have the approach you need when explaining concepts to the coachee - a real time saver and much more enjoyable experience for you and the coachee as compared to approaching from the worst angle.

Personally, once I realised what my preferred/natural Kolb learning approach was, I realised how I could learn better and more quickly in the same amount of time.

The future no longer belongs to those who learn the fastest. The future now belongs to those who learn the right things the fastest. Kolb learning styles assessment is just another practical tool to help me and my coachees discover their best learning method, and give us some "Slack" to identify what are the right things. Really useful stuff!

Friday, 24 March 2017

Agile Principles 105

So... if I had reached nirvana state of finding "the 1 best method" to teach and learn the agile principles with my previous Agile Principles 104 post in this agile series...why is there an Agile Principles 105?

My thinking continually evolves as my experiences, perspectives, understandings and, most importantly, synthesising, across the variety of things I do and things I know continues. I never stop exploring the boundaries - and the beyond! :)

The muse for this particular approach came from the advice from Peter Senge's "The Fifth Discipline" on how to create a vision for an organisation that the people own and strive towards. Peter's description of the holographic view of an organisation by each individual employee was/is bind mending!


You'll see (I hope) how each of my previous posts, with alternative teaching styles and variety of learning outcomes, informs my next target state. Hence I try new and improved approaches whenever opportunity meets preparation.

In this case, even off the back of the successful approach to learning/teaching the Agile Principles 104, learners returned to their day job and forgot the goodness of their understanding and experience fairly quickly - unless there was a disciplined framework, a management mandate or a positively persistent coach (like me!) agitating them to remember, and to apply in their thinking.

This approach, I hope, causes learners to converge more collectively onto the same shared understanding of the agile principles by folding-in everyone's understanding recursively.

Its extremely beneficial that each team in the organisation evaluates themselves against the their own and their organisation's interpretation of applying the principles. By spending time as a team in "think space" (reflection) goodness follows "for free"/"semi-automagically". That's the beauty of having an aligned collective mindset - energy, thought, creativity and work flows rapidly and positively due to common understanding and knowledge of the "game rules", and in the absence of interference of any kind.

Agile Principles 5th Approach


  • Timebox for 30 minutes
  • Ask the learners to read, write (or complete pre-prepared sentence spines) the 12 agile principles onto index cards or similar, and to rank them from most important (at the top) to the least important (at the bottom). A single list - ranking decisions must be thought through and made according to the available knowledge everyone has at the time!
  • Then ask the learners to self-organise into pairs and to read and discuss each other's rankings and understandings.
    • Now ask the pairs to fold-in their lists. Together they must:
      • Agree the most important principle  and record why
      • Then agree the least important principle and record why
      • Then they need to sort through the remaining 10 to create their own agreed ranked list, similar to Agile Principles 104, and write down Why
  • Then ask the pairs to self-organise into groups of 4
    • Now ask the groups of 4 to fold-in their 2 lists into just 1, and to tease out (and record) the consensus "Why" for each decision they reach
  • Now it becomes recursive - sub-groups keep folding-in together until the entire group of learners is once again 1 group and there is 1 list they all have participated in creating.
    • ie, 4+4 = 8
    • 8+8 = 16
    • 16+16 + 32
  • Yes, as the groups get bigger the fold-ins can take longer, but often there is an emergent consensus pattern that helps the fold-ins stay quick, energised, and positive so in my practice I don't see things slowing down, I see improvements in communication and negotiation emerge rapidly!
  • Any "odd" numbers just fold-in the next round so if you started with 6 in total, you then have 3 pairs, 1 pair observes whilst the other 2 pairs fold-in, and then merge in the final round the 4+2. It is critically important to fold-in 2 lists to create 1, as this speeds up the event and deepens everyone's shared understanding and personal sense of ownership of the final ordering. 
    • Trying to do more than 2 lists at a time, eg 3 lists and 3 groups into 1 creates too much complexity too quickly and often causes people to disengage. There's just a little (too much) friction in the group dynamics that causes energy loss.
  • The final outcomes of this approach are
    • A shared understanding and ownership of the most important to the least important agile principle as understood by the group
    • Clarity and understanding of why the ranking decisions were made
    • Practice in avoiding group conflict by smart structuring of group work which is known to create conflict as everyone's personal perspective is a factor when working with knowledge, experience and mindsets.
    • 2 Artefacts that can be referenced and reviewed inside the office as-and-when the need arises - typically retrospectives (reflection), and escalations (crisis)

  • Now, do the same recursive process for ranking from easiest to hardest to achieve in the organisation.
    • The final outcomes are the same 4 as above, but you have also now agreed a backlog of work that needs to be done for the organisation to become more agile.
      • WIN!

Whilst this approach is similar to the previous, there is something truly amazing about the folding-in of people's perspectives aka consensus. As well as Peter Senge's book, Sam Kaner also describes the diamond of participation model of group consensus that is incredibly useful and insightful!


For more thoughts and approaches to learning or teaching the agile principles, please read my collector post at What Is Agile For. Thankyou!

Monday, 13 March 2017

Agile Principles 104

After trial and error, doing and studying, reflecting and more reflecting from my experiences of teaching the agile principles as described in Agile Principles 101, Agile Principles 102 and Agile Principles 103, a flash of insight came to me after running some facilitated workshops with clients.

One of the reasons I love to teach is because I get to meet so many inspiring people! Another reason is that I learn so much more, and so much quicker as well!  So teaching the agile principles to 1000's has also helped me learn them, and learn about them in so many ways I could never have appreciated the first time I read them!

Anyway, back to this story! I had been facilitating collaborative sessions with different people in different workshops for a few years. One of the great things that work well in collaboration sessions with any number of people, is breaking up the big group of people to work in sub-teams. Depending on the objective, carefully selecting sizes between pairs/triples/quads/pents/6's produce good results, or better results.

I came across the excellent Training From the Back of the Room and The Ten Minute Trainer by Sharon Bowman who puts these kinds of insights across extremely well!

        

In these books and in her training sessions, I learned the new teaching paradigm - "the person doing the most talking is doing the most learning". 

Talking causes us to formulate abstract experiences in our memory into concrete communication efforts - which means we need to more fully understand those vague things we think we know. It also allows us to get validation and/or corrective feedback from others we share with.

For this learning objective, sub-teams of 4 work best. 

The even number causes much more thought, talking and strong consensus by all sub-team members on any range of logical points discussed, as well as greater emotional impact than other sizes.  These sub-teams cause everyone in the entire session to fully engage in the topic because everyone has a voice and much more likely to be heard. It's true! (and it's common sense...) :-)

I mentioned this approach to one of the younger agile coaches I was working with at the time, and he tried it in his next training session. He came back with positive results. In the glow of the successful moment - he also mentioned this approach to a few other agile coaches...and now it is spreading organically. Nice! :-)

I explained this approach to another 1 of my long-term agile collaborators and he has been using it ever since. Chris C convinced me to blog this approach so that everyone gets the benefit. And now I have. Enjoy!


The method

  • Timebox the whole module to 30 minutes
  • Ask the trainees to self-organise into balanced groups of 4 - they need to discuss and figure out what balance means to them. Sometimes it is gender, age or role based, or combinations of all these and more. Balance is always good thing to discuss and dive deeply into.
  • Ask them to self organise the writing of the 12 agile principles down on large super sticky post-its, in a 3 minute timebox. They need to coordinate and work fast together.
  • Ask the teams to rank the agile principles from the most important (at the top) to least important (at the bottom) in single list, in a 5 minute timebox.
  • Ask each team to number each post-it with eg a black pen so that we can know later what the ordering was.
  • 1 person from each group then volunteers to give the entire group a 30 second pitch timebox about why they chose the order they did - highlighting the decision making as well as perhaps any contention in the team.
Sorting The Agile Principles And Making Sense Of Them
Agile Principles Explored By Team

Post Mortem 1: Much deeper understanding of what is important and why to the organisation and how that is reflected in the ordering of the agile principles that cover people, process, technology, customers, market, culture and pretty much every other "lever" an organisation has

    • Optional, fold-in
      • Get each group to pair with another group and then combine their orders into 1 consensus ordering of the 12
        • Repeat until all groups' 12 principles are folded into 1 single consensus list and the big group is whole again. Any odd number group waits until the next round when there will be even number groups again.
    • Update the post-its with their "global" ranking
Now, ask them to return to their original sub-teams in front of their own post-its. Take all the post-its off the wall to reset the next round of ranking.
  • Ask the team to now rank the agile principles from the easiest (at the top) to the most difficult (at the bottom) to achieve in their environment, in a 5 minute timebox.
  • Again number them, this time in a different colour pen eg green
  • Again ask for a group's volunteer to tell all the others what their ordering is, and why, in a 30 second pitch timebox.
For Agility Your Team Needs To Understand And Decide The Same Way And Priorities Of The Agile Principles
Teams Come Up With Different Agile Principles Priority Orders Based On Their Context and Interpretation


Post Mortem 2: Much deeper understanding of the art of the possible in the organisation as people disagree from their own experience and perspective what is easy and what is difficult. This can be a heated conversation when senior managers are involved but, in terms of creating that shared understanding of reality, invaluable to bring on and manage the friction!

    • Optional, fold-in
      • Precisely as before, "pair" the groups and get them to create a single consensus list of easy to difficult
      • This one will probably require much more time as people generally have totally different perceptions, but this is also the beauty of transparency and shared understanding.

The Final Post Mortem

Deeper ownership, accountability and understanding throughout the aligned trainees - win! Also, the opportunity to use this output to create the initial backlog to become more agile - i.e. transformation begins with everyone on the same starting block/page. Ie, win, win, win!

Many people - myself included - had horrible experiences and/or horrible feedback from our time in school or post-school education. As a result, some became uncomfortable at voicing their opinion or knowledge in front of others. Groups - especially large ones - intimidate most. 


This approach helps everyone to connect with fewer people and share+receive a lot more as a direct result. Hence the learning that happens actually is deeper and hence more useful and usable for trainees. The optional fold-ins suggested, though they take a little longer, cause deep alignment amongst attendees. And you can use this approach for many other topics, and not just for training modules - workshops too!


Definitely this is a great approach, if not the best approach, to teaching and making the agile principles much more "sticky" in the learners' hearts and minds.

For my full collection of hard ground, hard sought, and deeply dug pearls on agile mindset f0undations - please read What Is Agile? Thankyou!

Thursday, 9 March 2017

Agile In A Nutshell Part 3

Okay... I don't know if you noticed... but it is really really hard to really curate an agile in a nutshell post that is quick to read, grasp and move forward. This is partly why I avoided much agile postings over the past decade - it's a very very long piece of string (or rope to hang oneself with)!

:)

The previous 2 attempts at this (Agile In A Nutshell and Agile In A Nutshell Part 2) I like and I teach fluidly. But I also add the following nugget when I am teaching.

Where did these agile manifesto, the 12 agile principles, and especially those 10,000 odd agile practices (half of them technical/technology focused like pair programming; and half of them people/organisation/management/process focused like standup meetings) come from?

Well it's clear where the agile manifesto was written and by whom in 2001 - 17 world-recognised software engineering consultants, coaches, managers and all importantly - practitioners.

And it's clear as well where the agile principles were written and by whom in 2004 - the same experts that formulated the agile manifesto.

But what about those 10,000 agile practices?

The agile practices have been observed by team members, team managers, coaches, consultants, and other observant people ... of high performance teams. These observers have then documented them online, or in books, and have presented them at conferences as well as internally. 


This means that we're still discovering practices all over the shop/place that help organisations become quicker and nimbler.

In my opinion, the smartest organisations are recognising their own unique practices that are giving them competitive advantages, and keeping them secret. The even smarter organisations are making their unique practices transparent and world-wide accessible because they realise others may contribute small tweaks that give even better performance - ala open source.

They also recognise that thinking is really hard to replicate and their organisation as a whole organism is thinking differently and hence behaving differently. Behaviours are easy to observe and replicate, but does not mean you will get the benefit.

Countless stories abound how GM documented all the things Toyota was doing in their factory in Japan and tried to replicate in the US - but failed. And we see that quite a lot industries - competitors hire people from the other organisation (or the same consultancy!) and then try to copy what worked elsewhere - and it usually fails expensively, spectacularly, and hurts a lot of employees, shareholders and stakeholders.

The simplest way to deeply understand this is a story about a piano made by a world famous piano maker. A wood furniture carpentry company decided to move into the piano manufacturing business as they had the same required tools, they could buy the same materials, and they thought they had the same skills required. So they bought a piano and dismantled it, making notes and designs about how to assemble. Then they assembled it back. But once it was back in "1 piece" there was a problem. It did not sound like it had. So they tried to manufacture a new one from their instructions. And they succeeded in making a pretty good replica of a real piano, but once again there was the problem - it did not sound right. So they got out of the piano making business (wisely). They lacked the "secret sauce" of being musically minded and aware how all the complexity of sound generation, amplification, transmission integrated with the different moving complicated parts of a piano.

And that's also what agile is - the practices help - in the same way that knowing what the keys of a piano are what notes. But playing a piece of beautiful music on a piano is differently from knowing things about music and piano operations. Yes the analogy does stretch to "practice is required, and feedback" to get them right.

But more importantly it is the secret sauce - it is the agile mindset that causes these agile practices to evolve into something unique for the organisation and its context. Some practices are individual targeted (like disciplined arrive on time to meetings), some are pair targeted (like pair programming to create, quality assure, reflect, learn, and make better realtime), some are team targeted (like whole team planning game), some are larger organisation targeted (like town hall meetings), some are senior management targeted (like go-and-see/use-your-legs reporting walks). And on and on :)

It is much more important to be agile than to do agile!

For more and deeper thoughts about agile check What Is Agile For You What Is Agile For Us. Thankyou!

Wednesday, 8 March 2017

Agile Principles 103

So I was frustrated with both my previous 2 methods as described in Agile Principles 101 and Agile Principles 102.


Suddenly! I found myself with a group of complete agile newbies and I realised I had the opportunity to experiment with a 3rd method to try and help them understand these really concise pearls of modern management wisdom - the agile principles. By this stage in my career and experience I had convinced myself that the agile principles were just as relevant for software as for any other knowledge work taking place with large numbers of unknowns and lack of certainty. The plan-do-study-adjust collaboratively is remarkably effective in all conditions and circumstances where we're doing something new (more than 10% different from previous experience)!

My third approach involved the learners reading them, leaving them on screen, and then asking targeted questions. I was hoping that by causing all the learners to think and reflect on their own situation, using the principles as some kind of wise "flashlight", they would have flashes of insight!

Questions that I asked:
  • Which agile principles were they achieving in their work 100%?
    • And why?
  • Which agile principles were they not achieving in their work 100%?
    • Why?
  • Which principles were they achieving between 0-50%?
    • Why?
  • Which principles were they achieving between 50-100%?
    • Why?
  • Would you be agile if you followed 11 principles 100%?
    • Why or why not?
  • Of those that were not 100% in practice, which 1 putting fully into practice would bring the most benefit?
    • Why?
    • Which would bring the second most benefit?
      • Why?
      • Which would bring the third most?
        • Why?
  • And which would bring the least benefit?
    • Why?

Typical answers that I received

A lot of concerned faces, puzzled frowns and a handful of the class beginning to figure this stuff out. Reviewing these responses made me cringe - I am sure often my look of disbelief crept past my ability to control my responses. Reader beware!

Which agile principles achieving 100% and why?


  • Retrospectives (the last one) - because "our Scrum Master makes us".
  • Delivery of working software - because "that's what we're here to do". (note, no mention of trying to deliver quicker - with an emphasis on the shorter timescale)


Which agile principles not achieving 100% and why? 


  • Business people and developers did work closely, but not everyday - because "the business people were too involved or important for the business to operate without them".
  • Sustainable development - because "our company encourages a good work-life balance, and we only come in for the weekend once per month, or work late nights 1-2 nights per week".
  • We do welcome changing requirements but not near the deadline - because "then we would never finish".

Which principles achieving 0-50% and why?

  • Technical excellence, best designs, and simplicity - because "we don't have time to improve".
  • Build projects around motivated people and support them - because "we hire professionals and they have to adapt to our ways of working".
  • We think we do satisfy our customers of our business - because "we don't know them and are not allowed to talk to them" or "knowing - that's someone else's job"

Which principles achieving 50-100% and why?


  • Communication is good, we do face-to-face whenever people are close - but not if they are on a different floor, different building up the street, in another town, a different country or timezone - because "travel is expensive and wastes a lot of time" and "we need email trails for audit/regulatory purposes" or "we need emails for our monthly, quarterly or annual appraisals".
  • We like software showcases, but we have a lot of reporting on the side/top of that - because "governance is required" or "regulatory" or "comfort factor for senior managers" or "good publicity for the good work we're doing"

Would you be agile if you were only achieving 11 agile principles out of the 12 - why or why not?

"Yes! Because that's pretty good, it's like 91-92%!" - note, no mention of which one is not being achieved! Just a simple, naive response to the a multi-choice answer sheet. No deeper thinking evidenced.

and

"No! Because there would not be 12 principles if following 11 made an organisation quicker and nimbler!" - note, although this answer is better than the "Yes", this is still insufficient/a bit naive as the principles are a set of cause-and-effects that together create the synthesis required to be quicker and nimbler. It takes deep thought and putting into practice for some time to fully "feel" agile.

Which principles should be our top 3 to put into practice ASAP, and why? 

The only typical responses I got from this question were that there were no patterns. Every organisation has a different context, with different problems (and size of same problems), prioritised differently and solutioned differently. This is expected. Asking the "Why" for each did cause good conversations between the trainees and really helped people clarify their assumptions and perspectives. So too was the conversations around benefit, and benefit to whom. Good stuff!


Which principle would bring the least benefit and why? 

Again, a total myriad of responses - the only pattern being that everyone fell for this "trick question".
Yes, like most agile things, with teams being in unique contexts, "it depends" is always the right answer. But that helps no one quickly!

Once the trainees had convinced themselves of 1 least beneficial principle, I always constructed a causal model that showed they had picked the most beneficial principle to them. Why this complete opposite approach? I was trying to highlight all the other ways of thinking about things, and highlight that they needed to learn more than their default model in order to achieve agile for their organisation and for themselves.


Benefits of this teaching/learning approach

Was better, slightly, than the previous two attempts.
There was some good discussion going on.

Consequence of this teaching/learning approach

The causal model for the 1 principle they believed would bring them least benefit seemed to cause hostility. Just because Copernicus had a model that proved the planets went around the Sun, did not win the hearts and minds of those who believed the Sun and the planets went around the Earth, especially not those with their own thinking and being models based on the incorrect one!

Several folks dis-engaged from this - I suspect because it is such abstract stuff and it is hard to think about abstract things with people who have different contexts entirely. It's hard enough to make sense of things with people who are on the same page with you let alone from different teams/streams of work!

Post mortem

This teaching/learning method also did not work as I had hoped. Despite many nods, smiles and hope-filled looks that seemed promising, nothing happened after the training session.

I did not see changes in thinking patterns, problems stated, solutions proposed or behaviours. There was no increase in flow of value nor deepening of team trust, no sighting of a high-performance shift or team. No one was picking up the seeds or threads and putting any of the collective wisdom onto the agenda and getting faster.

I had to keep researching, thinking, reflecting and trying different things as no one is really talking or writing about this stuff - how to reach critical mass across the whole world! To see what I have tried, tested and concluded so far, read further: What Is Agile For You, What Is Agile For Us. Thankyou!

Tuesday, 7 March 2017

Agile In A Nutshell Part 2

Okay, so I tried (really really hard) to capture the essence of the vast topic "agile" in my Agile In A Nutshell post earlier ... but something is bothering me. Really.

So I hope you don't mind if I give a second dimension to this massive multi-dimensional concept! This stuff is BIG!

Agile Is Now An Umbrella Term For All Approaches That Put Healthy Humans Collaborating To Succeed
Agile In A Nutshell - Agile Is Now An Umbrella Term


Agile as a mindset and a movement started out in the software development and delivery space. But my first brush with "agile" as a concept was when I was studying business management in South Africa around 2003. The South African management textbook that mentioned "agile companies" stated that the future of businesses relied on them becoming more agile to keep up with customer needs. Although this was after we had implemented much of eXtreme Programming (XP), it was still before (because South Africa has/had very slow internet connectivity, and expensive imported books were scarce) the big software movement really got going worldwide.

I reckon it is likely that the line in that South African management textbook had been inspired by The New New Product Development Game written by the great management scientists Hirotaka Takeuchi and Ikujiro Nonaka in 1986.

But skip to the here and now nutshell point:

Agile is now an umbrella term to mean all of the agile manifesto, agile principles, agile frameworks, agile practices, agile tools, agile approaches.



Basically, any abstract or tangible thing that helps an organisation or an individual, be quicker or nimbler, in delivering value to the end customer. Usually this begins with the mind/thinking framework being applied by the people to the challenges they're responding to.

In other words, it is more important to be agile, than to do agile. For more practical thoughts on agile checkout my collection of teaching/learning agile at What Is Agile For. Thankyou for supporting!

Thursday, 2 March 2017

Agile In A Nutshell

By the dictionary definition:

agile - quick and nimble

This is totally normal for a gymnast or a professional athlete in a sport like basketball, squash, surfing - one has to be in a constant state of dynamic balance. Able to go in a direction at speed, and also to change direction without loss of speed.

More like a fish! Catching prey (Opportunities!) using its deep swimming skills (Strengths!) (Capabilities!!). Evading being prey (Threats!), especially from its upstream or blind sides (Weaknesses!).

(Strengths, Weaknesses, Opportunities and Threats being the words behind the useful business and delivery technique called SWOT analysis!)

Agile Is A Mindset Of Teamwork, Mutual Respect, Proactiveness, To Succeed
Agile In A Nutshell Is A Mindset Of A [Successful] Fish (?Nemo?)


Unlike a cheetah - the world's fast land animal with really impressive speed, acceleration and space required to hit [terminal] velocity statistics! (terminal for the prey, that is, not for the cheetah!)
Agile Is Quick And Nimble Together
Agile In A Nutshell Is Not Being A Mindset Of A Cheetah, That Misses Its Prey!

What this means for a person in an organisation - not much. It's not so useful to be the one dynamic balanced player in an organisation where no one else is. The capability is usually lost in the inertia of the group that is not thinking, deciding, and moving in the same way.

But, for an organisation that is truly agile - like a high performance team - the benefits are great. The whole organisation is quick and nimble - able to chase market opportunities, and able to shift product, features, target new markets, respond to customers, manage crises well and innovate constantly because everyone is playing the same game together.

That's what people are after. The agile models, frameworks, practices, principles and everything else are just helpful indicators along the journey to creating and organisational culture, and a team mindset that produces great results.

It's more important to be agile, than to do agile.


How many people does it take to create an agile organisation? All of them.
Where do you start? Every leader - formal and informal.
Which leader do you start with? Wherever you identify the "early adopter" psychographic.
What do you whilst you're not agile enough yet - ie not quicker and nimbler that the market place or your competition? Introspect and reflect on ways to become quicker and nimbler, and hope you still have enough time to prevent your organisation's (inevitable) extinction.

How do you control the feelings of anxiety or panic? Develop your own capabilities so that you are quicker and nimbler and have skills that are transferable to other industries or competitors that are quicker and nimbler than your current organisation.

That's being agile, in a nutshell! :-)

Agile In A Nutshell Is Quick And Nimble As An Organisation
Agile In A Nutshell Is Quick And Nimble Mindset


For more, check out What Is Agile For! Thankyou!

Thursday, 23 February 2017

Agile Coach Interview And Selection Questions

Years ago I was hiring agile coaches, and working closely with a hiring partner who was really really (!) good at finding talent. I had no time, he had some time and was keen to help me in any way we could figure out how. I knew agile, he knew recruitment. I knew coaching, he knew people.

The first round questions that I designed then still hold true today. I was inspired by Joel Spolsky's 12 questions candidates should ask their potential employer before deciding to join back in 2000. It may be a little old in some circles by today's standards, but it is still insightful imho:

The Joel Test:
  1. Do you use source control?
  2. Can you make a build in one step?
  3. Do you make daily builds?
  4. Do you have a bug database?
  5. Do you fix bugs before writing new code?
  6. Do you have an up-to-date schedule?
  7. Do you have a spec?
  8. Do programmers have quiet working conditions?
  9. Do you use the best tools money can buy?
  10. Do you have testers?
  11. Do new candidates write code during their interview?
  12. Do you do hallway usability testing?
The neat thing about The Joel Test is that it’s easy to get a quick yes or no to each question. And that's what I needed from my first round interview questions that anyone, even a non-agile-skilled or non-agile-knowledgeable person could use. So I came up with 24 quick questions, and we got some truly great candidates making it through the face-to-face screenings.
One of the most (perhaps THE MOST) important things about an agile coach is their experience. Money can't buy experience. Reading about other people's experiences, or attending courses based on other people's experiences is not the same as having the direct hands-on "did the best I could with the information and knowledge I had at the time, and nothing worked...until...after much persistence and many failures something worked!"

All experience is relevant. I am wincing at how arrogant I was when I was younger thinking that attitude mattered more than experience. They are equally important - it all depends on the problem space and time! The thing about people without experience in a particular space, is that they don't know what they don't know. My 24 questions highlighted things that were relevant for the different openings we had going at various times. A quick 10 minute Yes/No followed by a few initial typical HR availability, package suitability, location, role etc matching minutes and wallah - 1x effective initial screening for very cheap!

The very few who made it to face-to-face interviews which were experiential and enjoyable for both the coaches and the candidates highlighted the right candidates each time! Happy daze! (especially compared to traditional candidate screening processes and pains)

Rob's Agile Team Member or Agile Coach 24 Question Assessment:
  1. Do/did you use source control?
  2. Do/did you not use source control?
  3. Can/could you make a build in one step?
  4. Can/could you not make a build in one step?
  5. Do/did you make daily builds?
  6. Do/did you not make daily builds?
  7. Do/did you have a bug database?
  8. Do/did you not have a bug database?
  9. Do/did you fix bugs before writing new code?
  10. Do/did you not fix bugs before writing new code?
  11. Do/did you have an up-to-date schedule?
  12. Do/did you not have an up-to-date schedule?
  13. Do/did you have a spec?
  14. Do/did you not have a spec?
  15. Do/did programmers have quiet working conditions?
  16. Do/did programmes not have quiet working conditions?
  17. Do/did you use the best tools money can/could buy?
  18. Do/did you not have the best tools money can/could
  19. Do/did you have testers?
  20. Do/did you not have testers?
  21. Do/did new candidates write code during their interview?
  22. Do/did new candidates not write code during their interview?
  23. Do/did you do hallway usability testing?
  24. Do/did you not do hallway usability testing?
After you have all the "yes" and "no" responses to these, you will know the level of "modern" and "old" styles of developing and delivering software. Now you get to decide how to direct the rest of the experiential based interview if you decide to let the candidate through to face-to-face more investment round(s).

I advise experiential interviewing during the face-to-face as it is a case of "under stress, we regress", and a lot of coaching can be quite stressful as very little is under the control of the coach who is at best influencing the situation! And any coach who has not mastered conflict management and resolution skills, personal attacks, helping people overcome their own anxieties etc can be quite damaging to your organisation.

f you're more focused on a coach who's technical background is less interesting, you could take a look at the coaching levels and the types of coaching and design similar Yes/No questions to try and understand the tangible hands-on experiences a personal, executive, soft skills, etc coach has.

I suggest at the beginning of the face-to-faces to do some spot-checks to check that whatever Yes/No questions you screened with were correctly interpreted, and that the candidate's response was accurate before proceeding into the simulation(s). Some people, you know, will say anything to get a role! :O

After the simulation assessment(s), ensure you and your assessment team form and document your own, subjective, fact-based, Delphi-style, assessments of each candidate.

My final question for the candidates: Ask each candidate face-to-face what their opinion is of the other candidates. You'll be or not surprised how many candidates know, or know of, the other candidates, and their face-to-face opinions can be quite informative! Also insightful is how they react to those coaches they don't know or know of.

So hopefully by now you have collected all the minimal data points to make a more informed decision about finding the right candidate - a round peg for a round hole / a square peg for a square hole - for your people's (!!) needs. Remember, past performance is no guarantee about future performance. But also remember this is a critical role to match the right person to - as any change agent will by the nature of the role be disrupting people's comfort zone(s). Including your own often.

Good luck with your search and selection process!

Lastly, please let me know how it all works out for you and your organisation. Remember the most important (top) line of the Agile Manifesto reframed is a bit like "we're doing it, and by doing it we discover new and better ways of doing it, and we share with others what we have learned so that we all benefit". That's "agile"!

Thankyou for supporting!

Monday, 20 February 2017

Agile Principles 102

I was looking around for how to make my teaching of the agile principles much better than my and the class's experience of them as per "industry standard" captured in my earlier post: agile principles 101.

Somewhere along my many readings over the years, I came across an article describing changes to the teaching method for fire fighter training used somewhere in the US (to the best of my recollection). I've hunted for the reference but have not found it again (yet) unfortunately.

The fire fighter training story went along the lines of teaching trainees by having them watch videos of fire fighter crews operating in various scenarios and then facilitated debriefing of the elements that made each crew successful. Apparently this change to the previous training method was marginally better as there was a minor percent improvement in successful rescues / blazes extinguished / fire fighter injuries and deaths.

Then someone discovered that a small change to the content produced much better results. Instead of showing the trainees scenarios that were successful and then debriefing, they showed unsuccessful scenarios and then debriefed the errors. 

Scenarios where fire fighters in their rush to save took personal risks, overlooked snagged hosepipes, did not operate the hosepipes and ladders effectively as 1 team, etc. And the result of these individual, and at first glance, minor errors, rescues failed, blazes were not extinguished and fire fighters were injured or died. Debriefings of these failure scenarios caused the trainees to learn (a lot) more, and (a lot more) quickly, which was quickly demonstrated by these new crews having much higher percentage success rates, and most importantly, fire fighter injury and death rates!

Similarly in the UK, I've heard that people who've had driving points deducted from their licences are shown videos of accidents that were caused by speeding drivers, intoxicated drivers, drivers in non-roadworthy vehicles, etc. Learning from the bad impacts us more, and teaches us good.

So...I thought I would apply this principle to teaching the agile principles.

For many many classes, I spent a few more minutes on the same slide I used previously (how lucky to not have to "waste" any more precious slides on this foundation to the whole huge "agile umbrella of knowledge"!



This time I did not reveal the "masterpiece single slide" in a single click. Instead I made use of PowerPoint's fly-in, appear, and other "On Click" events to have the bullets appear as required (some lines are longer or more complex than others, so give the trainees a few extra seconds to read and understand, occasionally - I am such a nice trainer!)

So now I had the class read 1 principle at at time, and after everyone finished reading the current principle I asked the class - "What effects would happen if you/we did this?". Followed by "And what effects would happen if you/we didn't do this?".

Typically the 24 DO DON'T outcomes (which I hoped were deep realisations embedded forever in the learners' consciousnesses) were similar to below:

Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.


DO:        Happier users getting valuable features earlier
DON'T: We don't satisfy our users, sooner or later we lose our jobs

Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.


DO:        The development team adapt whatever we/they do to accommodate users' changing minds
DON'T: We build the wrong thing, we don't satisfy our users, sooner or later we lose our jobs

Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.


DO:        Happier users getting features preferably every few weeks or few months
DON'T: We give our users unusable software quarterly, half-yearly or annually only, we (in)frequently upset our users, we lose our jobs.


Business people and developers must work together daily throughout the project.

DO:        The business and developers work together and become 1 balanced team
DON'T: Business and development don't understand each other, don't know each other, don't work as a team, so the environment is low trust, low knowledge, low productivity, work and value does not flow, and people are stressed and unhappy. No one is satisfied with anyone, including ourselves, blame game is played often, so eventually we lose our jobs or we leave our (bad) jobs.

Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.

DO:        Hire good people, support them, they are super motivated and do the best job they can
DON'T: Don't support our people, give them bad environment(s) in which to do complex work, don't support them, and continuously interfere with how they do what we ask for. People get frustrated, and either they leave their jobs, or eventually lose their jobs because they're just blocked from doing (enough) good.

The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

DO:       Less documentation, fewer/no hand-offs, more quality conversation which is better for conveying difficult abstract details and concepts to each other. More productivity time.
DON'T: Convey information to each other in the least efficient and least effective ways, resulting in miscommunications, misunderstandings, and a lot of wasted time, effort and money. All this waste results in unhappy business people, we lose our jobs.

Working software is the primary measure of progress.

DO:       Everyone believes the development team's progress "report" as it is clearly running in front of eyes and fingers, or not, and hence everyone can plan more confidently based on realtime, real, information.
DON'T: Measure progress by some other means - maybe Red-Amber-Green "traditional" governance reports, Earned Value Burnups, (C)RAID Logs, and we plan based on those abstractions of progress, and quite often those abstractions are not reality and may be quite stale at moment of understanding. And when progress reports are not reality, a lot of wasted time, effort and money goes into that "cottage industry" for negative Return-On-Investment (ROI) and the organisation's plans are wrong. This results in unhappy business people, and ... job losses.

Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.

DO:        Everyone goes together and works together. Few surprises. No late night and weekend work for anyone. Morale stays high and energy levels are protected and nourished.
DON'T: People work late nights, weekends, get tired, get grumpy, produce bad quality plan/artefacts/tests/requirements/analysis/code/architecture/designs/workshops/sessions/meetings/etc. Boom-and-bust cycles. People miss their personal lives, they leave their jobs. Quality suffers, the users and company suffers, and ... job losses.

Continuous attention to technical excellence and good design enhances agility.

DO:        Our codebase remains cheap to maintain, nice for people to work in and learn from, and we can realistically and constantly "welcome changing requirements, even late in development" from Principle 2 above. :-)
DON'T: Our legacy codebase becomes expensive to modify, it is no longer "soft"ware, it has become "hard"ware, and people hate working in it because little changes require great effort and introduce great uncertain risks that developers are unable to easily (if even possible) mitigate and hence the developers appear to go slower (but actually they're doing a lot more difficult cognitive work!). It creates cognitive dissonance in developer's minds and this is tiring and annoying, so they get sick of it physically due to stress and sickness rates are higher than "normal", developers/analysts leave temporarily on long-term illness, or leave the role, or something blows up in production, and after a short period of job creation (Operations needs more people to deal with poor Change/Development/Tech/etc outputs) ... eventually job losses.

Simplicity--the art of maximizing the amountof work not done--is essential.

DO:        We keep things simple, we save effort, time and money, so more productivity and happier users!
DON'T: We overcomplicate things, waste a lot of effort, time and money, sometimes even make quality worse. We maximise workload, decrease creativity and innovation, and people leave their jobs, or we lose in the market place and eventually lose our jobs because our competition is quicker with new features and products.

The best architectures, requirements, and designs emerge from self-organizing teams.

DO:        The team knows their design, requirements and architecture inside-out, back-to-front and can confidently do things at speed, knowing "where the skeletons are buried", and where they risk nothing, a little, some, more, a lot, or "bet the whole farm" - when they have to.
DON'T: The worst architecture and worst requirements are pushed onto the team who don't understand or know them evenly or equally well, and hence unintentionally build the wrong things in the wrong ways and nothing integrates or works properly, or worst developers paint the whole codebase into a corner. The users and business people get upset as the investment is lost, developers ... lose their jobs.

At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.


DO:      We continuously learn and improve and become stronger as a team - we become a high performance team that can do anything.
DON'T: We keep doing the (every) thing(s), the same way(s), we never get better, we never modernise our skills, we get bored, we are boring, we are overtaken by other teams, we look bad in comparison, we ... lose our jobs.

In a nutshell, the benefits of this teaching/learning agile principles approach are:

  1. The trainer can "tick the box" on the "we covered the basics" section / poorly defined learning outcomes
  2. Only 1 slide!
  3. Only 1 page to print for the pack for the attendees! Save the trees! Save the planet!
  4. It's much better than just a single slide of reading and a short FAQ (aka  agile principles 101) before moving on as some of the learners do engage with the thinking process and take some of the messages into consciousness!
  5. There is some interaction with the trainees!

The consequences of this teaching/learning agile principles approach are:

  1. Not enough positive effect or impact on the learners
  2. Some negative impact on many learners as they begin to feel that agile is being forced on them, that it's "go agile or lose my job". "People don't resist change, they resist being changed." - Peter Senge
  3. Some learners feel left out and/or confused by this session - seriously only 1-3 louder folks engage passionately with this approach
  4. Learners realise the trainer might not be a good one or the training content might not be good

Post mortem: 

Did you notice who gets more benefit from teaching the agile principles like this? Who is not getting benefit? What about all the negativity taste in the mouth at the end? 

"go agile, or lose your job!" is not a positive message nor a reasonable call to action! Look how well "Stop smoking, or die!" or "Lose weight, or die!" is working in the health industry. It's not that these things are not true to some degree, it's that they're also false to some degree. And the framing does not allow for that "shade of gray" - so people can spot just one counter example and choose (with logic) to disbelieve all of what the principles are trying to encourage understanding of.

This approach does not work well enough. A negative call to act only works when the person called this way really believes that they will actually die otherwise (a gun to the head, and someone's finger on the trigger, and no doubt they will pull it unless you do as they say), and even then, a substantial number of people (and in team work, you only need 1 to be out of alignment) will freeze or flee in different direction. Some will evenly actively fight against it - sabotaging, cynical outbursts, campaigning, using Schopenhauser's methods to win any argument. 

A handful of learners will become more aware of the big picture and hence will support because they believe. But that's not good enough unfortunately!

Also, the summary interpretations are a HUGE gap from what the principles are actually saying!

Users and customers are not always the same thing! The market place - the fact that every software team member is facing off to the market place no matter if they are the networking engineer, database guru, feature team member, scrum master, product owner or any other role required to get the software Done, is overlooked - even in this approach. And this is fundamental - that's why the highest priority is called out so explicitly at Number 1 position!

Every line of code or configuration or content that in some way supports the objectives of the business' service to its customers is either "for" or "against" success in the market place. The principles are trying to make "IT" folks aware of this, as most are blissfully friends with their computer and that's most of the extent of the engagement with the firm they work for. They can't see the tight chain of inter-dependence that truly exists between how quickly and cleanly and consistently they work, with how well the end customer perceives the company.


This approach is more effective than the industry standard agile principles 101, but it causes a lot of hostility quite quickly and hence is simply not effective.

Don't teach or try to learn the agile principles this way. Rather use this as a thought experiment (or 12) once you have taught or learned them in a more positive way. I'm documenting my experiences via my earlier post What Is Agile For so if you are interested, read the other methods linked there!

Thankyou for reading! Let me know what you think!

Friday, 17 February 2017

Timebox Rules For Better Time Management

For many years I studied techniques and practices of time management. Partially for my own sanity, and partially in an effort to help my team or the organisation I was consulting or coaching become quicker and nimbler (aka "agile"). I picked up lots of cool one-liners like "survival of the fittest" is incorrect in modern management philosophy - these days it is about "survival of the ones who learn only the right things the fastest".

We Don't Have Time Means We Have Strategic Conflict! We Use Timeboxing To Make This Transparent And Improve The Situation For All!

So on my journey I realised I also had to study prioritisation theory and practices. Surprising to me at the time, time management and prioritisation are 2 sides of the same coin effectively - especially in light of what it takes to survive (let alone thrive)!

Although there is a good Timeboxing writeup on wikipedia, I found it was too theoretical and not usable for people who had not tried many different options, nor did they want to read all the references to understand how to implement!

The below rules I came up with for my experiential training modules are really simple. I have yet to see any better that really help a group or team of people to focus on the most important thing(s) for the most amount of time available.

Timebox Rules For Better Time Management

I think I was inspired by deep reflections on how the agile Scrum framework and how we learn from our errors to come up with these rules that have helped me and many others who have followed them over the years.

Sometimes I vary the ordering by placing #3 nearer the end but for this timeboxing writeup it seems clearer where it is now:
1. Set the end time
2. Everyone watches the remaining time
3. Break large timeboxes into smaller timeboxes
4. Breadth or overview 1st
5. Depth or detail 2nd
6. Stop when time's run out
7. Don't worry - trust the process and stay with it

By following this guideline, the most important thing(s) have been covered, and you can always iterate or run another timebox again if you need to. (ie, use common sense, always!)

The main thing this framework helps with, is moving individuals and people forward. The brain is a muscle, so the more you and your team practice my timebox rules, the more you will get out of this, and achieve.

For example, a 30 minute meeting to make 2 decisions starting at 10am.

1. Welcome everyone and set the visible timer on the table/wall so that everyone knows that the end time is the end time. This is meeting is serious. (30 seconds)
2. Ask everyone to focus on the remaining time and to remain "in the meeting/room" and help everyone stay on focus of the timebox. (30 seconds)

There are now 29 minutes remaining.

3. Start a 3 minute overview timebox to ensure everyone's initial thoughts are heard before going into details. Agree the order of importance of the 2 decisions ("there can be only 1 priority 1")

There are now 26 minutes remaining.

4. Start a 5 minute timebox on the first decision that needs to be made
(assume the group is unable to decide)

There are now 21 minutes remaining.

5. Start a 2nd 5 minute timebox on the second decision that needs to be made
(assume the group is unable to decide)

There are now 16 minutes remaining.

6. Ask everyone to silently reflect on what they have learned or know about decision 1 for 1 minute
7. Ask everyone to silently reflect on what they have learned or know about decision 2 for 1 minute

There are now 14 minutes remaining.

8. Start a 5 minute timebox on decision 1 again
(assume still no decision)

There are now 9 minutes remaining.

9. Start a 2 minute timebox on decision 1
(assume a decision)

There are now 7 minutes remaining.

10. Start a 5 minute timebox on decision 2
(sometimes magic happens, and you don't need the whole timebox!)
(assume people all unanimously agree within 2 minutes)

There are now 5 minutes remaining.

11. Thank all and end the meeting early. DO NOT DRIFT INTO "any other business" or "miscellaneous agenda items". End the meeting. If people want to social then social, but it's no longer a meeting and make that clear!

For further motivation to help you and your team learn this best time management system, check my earlier post on No Time To Improve. Timeboxing gives you the time for doing the right things right.

Thankyou for reading! :-)

A smarter SMART for even better collaborative Objectives (including OKRs)

My favourite coaching tools: SMART Acronym Another Update