Interview with Al Shalloway

Al Shalloway is an author, founder and Lean-Agile thought leader. It was an enriching experience to discuss with him on Agile Implementations a decade back and now. He also shared his thoughts on growing and developing as a leader, and why teaching and coaching approach needs to evolve with passage of time.

Q.1 What is your definition of being Agile?

Al: Agile is about teamwork (where the team can be small group to the entire organization) towards an agreed upon goal.  People must work together in a respectful, collaborative way. They must also respect the natural laws of product development and understand that planning only goes so far and therefore must always be looking to adjust as needed.

Q2. Do you see any change in Agile implementations a decade back and now?

Al: Yes. Agile has fractionated into a few camps, some not qualifying as Agile at all. There are those who believe the Agile Manifesto is still the basis for the definition of Agile (I am not one of these). There are others who believe Agile is a combination of being and doing in an attempt to improve the way people work and their general effectiveness (I am in this group). And then there are those that call themselves Agile but have either a degree of dogmatism or non-Agile practices to be considered truly Agile.

Q3. What are the challenges to Agile Software projects beyond the single team? How to overcome those?

Al: The biggest centre around lack of alignment and poor eco-systems within which teams work. Agile’s definition centering around the team (the Agile Manifesto mentions the team 17 times, management not at all) doesn’t address these issues. Focusing the realization of value predictably, sustainably and with high quality should be the basis for overcoming these challenges. Don Reinertsen suggests “if you quantify one thing, quantify cost of delay.” This is an important insight – achieve greater value by reducing delay. How to accomplish this depends upon the organization but there are many patterns of solution.

Q4. When Agile approaches doesn’t work?

Al: Most Agile approaches are really sets of practices that may or may not be applicable. Lean, however, will always work. Lean should be the basis for any Agile adoption as well. Lean is based on the following:

  • Take a systems thinking mindset
  • Create environments within which people can thrive
  • Use small batches of work and avoid delays in workflow, feedback and value realization
  • Attend to quality

Q5. How to ensure that you grow and develop as a leader?

Al: The focus needs to be on questioning your long held, cherished beliefs. It is very easy to get into tribes of knowledge. When someone disagrees with you try to see the truth of what they say. There is very likely some. Even if you don’t agree with them understand their perspective.

Q6. Does the coaching and teaching approach also needs to evolve with change?

Al: Definitely. The vast majority of coaching and teaching violates decades of knowledge of how people learn. I believe the Scrum model of “learn the framework, stick to it until you understand it and figure things out” is a very poor one – but one that has been adopted by most everyone except those who promote TDD/BDD/Kanban – all of which have a different adoption style. I believe Agile, having hit the mainstream, needs to start adopting scaled learning methods where people learn over time and in cohorts of their peers.

Q7. One message you have for our readers.

Al: Remember your goal is to improve and help others improve. Everything you learn is a tool for that. Question everything. Set time aside for that.

 

Al Shalloway is the founder and CEO of Net Objectives. With 45 years of experience, Al is an industry thought leader in Lean, Kanban, product portfolio management, Scrum and Agile design. He helps companies transition to Lean and Agile methods enterprise-wide as well teaches courses in these areas. He is a popular speaker at prestigious conferences worldwide. He is the primary author of Design Patterns Explained: A New Perspective on Object-Oriented Design, Lean-Agile Pocket Guide for Scrum Teams, Lean-Agile Software Development: Achieving Enterprise Agility and Essential Skills for the Agile Developer.

Interview with James Grenning

Today, we feature exclusive conversation with one of the original signatories of Agile Manifesto and XP Pioneer – James Grenning. It was our pleasure to converse with him. We learned more about his thoughts on Agile, Birth of Planning Poker, Agile implementation in non-IT environments, and his memories with Mike Beedle.

Let’s read;

Q1. It is said that you were Agile before it was Agile. Please elaborate a little for our readers.

James: I started learning and practicing Extreme Programming late in 1999. The Agile Manifesto was created in 2001.  Simply, XP proceeded the writing of the Agile Manifesto. My opinion is that there would not have been a manifesto, if there was no XP.  The provocative name got people looking at it, mocking it a bit. Though, they took notice and many discovered how it provided a way of working that solved many of the problems individuals, companies and our industry had. With 20 year experience prior to seeing XP, I got the problems and the solutions seemed logical.  

Q2. How was Planning Poker born? How did it transform ‘Estimation’ in past few years?

James: There is a paper on my website describing planning poker. You can get the complete story here https://wingman-sw.com/articles/planning-poker.

Basically, at an early XP planning meeting, our client’s two senior architects would debate for an hour how to implement something and finally write down an estimate. Often the same estimate they mentioned in the first minutes. We had a lot of stories to estimate; all the talking got in the way.  Most the other people around the table were not engaged.

We took a break and when we got back together, I asked participants to take a note card and write their estimate on the card, then simultaneously reveal their estimates.  (Deciding then showing helped to avoid bias of verbal estimates. a.k.a. telegraphing) After a little while people were holding what looked like a poker hand. Planning poker was born.  I wrote about it and posted it on Object Mentor’s website. Mike Cohn read my paper and asked if he could put it in his book and started giving away decks of planning poker cards at conferences.

In retrospect, planning poker was a pragmatic solution to a problem in a planning meeting.  We studied and practiced structured problem solving as part of Total Quality Management (TQM) at Teradyne in the 1980s. We learned various communication and problem solving techniques.  One was brainstorming, but not out loud. Given a question or a problem, everyone would write their ideas for solutions or causes on post it notes or note cards. The we would group common solutions and discuss the possibilities and merits of each proposal.

In verbal brainstorming, often ideas immediately get shot down.  This tends to make people not express their ideas. It also biases the participants when the loudest or senior person dominates.  The day of the first planning poker game, the two ‘experts’ dominated and no one else had a voice.

In a nutshell, planning poker was initially solving the problem of people in agreement talking too much and dominating the effort.

Q3. Which one thing, you think today’s Agile Practitioner’s are missing while implementation? Please share one of your experiences addressing such issue.

James: Most Agile adoptions I see first adopt management and planning practices.  Developers struggle because they lack knowledge and skill incremental engineering.  This is a a formula for pain and unhappiness.

Q4. If you have to introduce application of TDD to embedded C to a novice, what benefits would you like to highlight?

James: The initial problem being solved by TDD is that programmer make mistakes, many per hour.  TDD helps detect many mistakes immediately thus preventing code and product defects. The opposite of TDD is Debug Later Programming.  In DLP, programmers write code and debug it later. How long does it take to find the cause of a bug? It’s big unanswerable question. The TDD cycle is very predictable. You can read a comparison TDD vs DLP here: https://wingman-sw.com/articles/the-physics-of-test-driven-development.

TDD also produces a regression test suite virtually for free.  Another driver for TDD is the need to automate tests. You can read why Manual Test is Unsustainable here: https://wingman-sw.com/articles/manual-test-is-unsustainable

These are only the started benefits.  In the hands of a knowledgable and skilled software engineer, TDD has many more benefits.  The experienced practitioners tell me TDD’s test let you change your mind about design and safely refactor for you needs software’s changing needs.

Q5. When developing the Agile Manifesto, have you ever thought that it would be implemented beyond the IT Industry? How do you feel when you see Agile being implemented in HR, Marketing and other non-IT practices?

James: For starters, we never thought anyone would notice or care about the Agile Manifesto.  As far as applying the principles in other areas, I think it is pretty natural. People work incrementally. Some say it cannot work for embedded software.  I don’t share that opinion. It works for embedded software, it can work other places. You’ve heard of the wiki-speed car? A group of people are building a car using Scrum techniques.

Be it hardware, software, or mechanical, something is being invented. Incremental learning and building is part of the process.  

Q6. Agile Transformations has been an emerging trend in past few years in various domains. What it would be after Agile? Do you feel  the need of any changes in Manifesto with time?

James: The Agile Manifesto is a historic document.  As far as I know, none of the authors are interested in changing it.  That’s not to say that Agile should not change and evolve. It should. Don’t worry about the Manifesto.  It’s fine. How people adopt Agile needs to evolve. I’d like to see a big emphasis in the industry to embracing high-quality incrementation engineering approaches, those embodied in XP are a great start.

Q7. What are your plans for 2019? What should we expect coming from Wingman Software?

James: I’m cutting back my travel a bit being more selective, working with clients that really want to improve how they collaborate and engineer their products.

I’ve been doing an Industrial Internet of Things (IIoT) prototype with my brother’s company.  I think there are some important concepts in how to approach the problem and how to keep code independent of the ecosystem I’m using. That will be a topic.

I’ve had some wonderful family things that have gotten in the way of writing.  I’ve got ideas I’d like to share. Hopefully I’ll get back to writing.

Q8. Mike Beedle’s sudden demise has been a shock for Agile Community. Please share your fond memories with him while developing Agile Manifesto.

James: It is sad and tragic that Mike was taken so senselessly.  

Mike and I skied together one of the afternoons at the meeting that created to the Agile Manifesto. We skied some very tough tree runs in that famous Utah knee-deep powder.  It is a fond memory.

Mike and I did not cross paths a lot professionally.  Though he was a respected man in Agile and Chicago, the city that is my home.

 

James W. Grenning is one of the original signatories of Agile Manifesto. He trains, coaches and consults worldwide.  He started developing software in last 70s after avoiding computers from high school to early college years. He had worked in both technical and management practices to development teams.

He had authored much read book ‘Test-Driven Development for Embedded C’. James is one of the few experts in applying TDD to embedded C. With his 1.5 decades of training,coaching, and practicing TDD in C, C++, Java, and C# he will lead you from being a novice in TDD to using the techniques that few have mastered. Any C or C++ programmer can use this book to learn the whys and hows of TDD.