Agile Forest

Find your path to agility with Renee Troughton

There is a world of misinformation out there about Agile. Even I have probably created some misinformation once or twice (not deliberately).

There is probably too much wrong to fix, but I saw a tweet recently that I wanted to tackle. It was originally linking to the Segue Technologies blog:

http://www.seguetech.com/blog/2015/11/03/waterfall-vs-agile-infographic

Naturally some people in the Agile community responded and it is fair to say their response was one of confusion and disbelief. Many thought it was a joke, but I suspected that the creators of the information felt it was a reflection of what they believed to be true and not intended as a joke. I tried to seek clarification to which I got a response:

We develop for a wide range of customers. This is a high level info on 2 different methodologies to show non-developers that there are different approaches.

So it was an honest attempt to educate and provide value. Okay. So let me try to give an honest attempt to re-educate on what I perceive to be some of the errors in this infographic:

 

Agile Pros:

  • Customer approval during all stages:
    Probably just a minor clarification, but approval is a little strong for me. They are involved throughout – what that means is that they agree to the work to be done just in time prior to starting it, then they get to see it when it is nearing completion. In essence, there is a greater focus on building the right product.
  • Great for quick launches:
    Okay, but maybe more importantly, Agile is great for getting a product out quickly and getting feedback immediately from customers to know whether you are on the right track. You can continue to build on this product through subsequent iterations.
    I want to take a moment and comment on the usage of the term “customer” through the infographic – I am concerned that it is referring to a customer in the business as opposed to a real customer who uses the product. Also there is a lack of distinction on project and product throughout.
  • Prioritised by business value:
    Business value is important and should definitely be used as one means of prioritisation, but there are often other considerations used in Agile – Weighted Shortest Job First is a classic example of this. For me, in Agile, prioritisation should include consideration of business value, risk (either technical or implementation), cost, cost of delay and learning value.
  • Customer involvement makes project user focused:
    So customer is now distinguished from users (who are the real customers). It may be a little concern of mine, but I do feel the strong focus in Scrum on the Product Owner role detracts us from making greater efforts to get to know the real customers. Yes teams can work hard to ensure they hear the voice of the real customer, but there is nothing like using only customer data to drive your decisions.

Waterfall Pros:

  • Early agreement on deliverables:
    The natural risk here on early agreement on deliverables (and I think they mean scope rather than deliverables) is that as you learn things through development, the agreement is moot. Build the right product, don’t just build the product that you agreed to that meets no ones needs.
    If the interpretation truly was deliverables and not scope, there is nothing stopping you from having a great understanding of what needs to be done upfront with Agile. Many teams that I have worked with do an activity prior to going into iterations called “Inception”. The purpose of this activity is to have a common understanding about everything that needs to be done (as best could be understood with so much uncertainty in the complex world of software development).
  • No need for customer involvement during development:
    I read this like ‘In software development there is never a need to clarify anything or to get feedback on anything’. Yeah, like that happens, or like that works out to be a great solution. In the early days of Agile when I heard this twelve years ago my response to the business when they said they couldn’t afford to have an ‘onsite customer’ was “okay, then if this project isn’t one of the most important ones for us to focus on as an organisation, that it isn’t critical to invest business experts in for, then it sounds like it isn’t critical enough to invest IT experts in.” The response was always swiftly met with the provision of a good SME.
  • Full scope known in advance:
    Never in the world of software development has scope always been fully known in advance. This is just a fallacy and it should be stopped being used by Waterfall appreciators.
    We never build the same thing twice. As a consequence, software development is not a production line, it is a process of discovery.
  • Known deliverables reduce chance of “piecemeal” effect:
    There are so many great tools out there for dampening the “piecemeal” effect of Agile – let me name just a few: Inception, Story Mapping, Impact Mapping and Feature Parking Lots.

Agile Cons:

  • Disadvantages when team is dedicated full-time on the project:
    Firstly, I am pretty sure there is no rulebook that says teams should be dedicated full-time in Agile. I won’t disagree that it is common practice, nor will I disagree that in almost all instance it is a good thing.
    Secondly, I have done some waterfall projects. People were full time in those too, so it isn’t an Agile thing.
    Thirdly, we have lots of great scientific evidence around the benefits of having team members full-time on work – it reduces context switching, it focuses on getting the work done sooner, thereby delivering value to customers sooner, thereby earning money for the business sooner. If you are interested in learning more about the science take a look at “Product Development Flow” by Don Reinersten. Another good book is “Slack” which talks about the misconception around being 100% utilised.
  • Customer may not have time to be involved:
    I guess the project isn’t very important then.
  • Customer may redefine scope:
    That sounds like a pro rather than a con. Especially if it means we deliver the right thing rather than waste money on building the wrong thing. The biggest waste as described by Lean is building the wrong thing – in software development this accounts for 64% of features developed.
    Edit: in trying to be accurate on this statistic I discovered it was based on a sample of 4 projects. Those sample numbers are definitely not enough to prove anything. Well at least I learnt something new.
  • Quick launches can cause incomplete tasks:
    I don’t know about ‘quick launches’. If this means getting a product to a customer can cause unimplemented scope to occur, then yes I agree it can, and that is a good thing – because we can get value and learn from it. It doesn’t mean that we won’t continue to work on the product, just that when the cost of implementing new features exceeds the benefit then we are probably going to stop. That sounds pretty sensible to me.
    Often in Agile environments we try to automate “launching”. The process of automation inevitably should result in better quality of deployment over time (due to the removal of manual errors) rather than creating more incomplete tasks.

Waterfall Cons:

  • Customer only sees final product and could be unhappy:
    In the waterfall projects I have been on with limited customer involvement the ‘could’ has occurred in 100% of instances.
  • Customer has trouble visualising project in early stage:
    This happens with either approach. We don’t know what we just don’t know.
  • Late changes cause going over project budget:
    Again could happen with either approach. Agile projects should reduce or dampen this effect by delivering the higher value work sooner. But I have to be fair, in my experience most projects I have seen (be them Agile or Waterfall) have had overruns of time (not in production delivery necessarily, but overall effort expenditure). Going over project time often means going over project budget. I feel however our focus on budget/time as indicators to success are sub-optimal, but maybe that is a blog post of the future.
  • Late changes extend project timeline:
    As above.

What should factor in your decision – customer preference, project size, customer budget, time to market, customer availability:

  • No, you should just always use Agile. I know this sounds dogmatic and like I am a cool-aid person, but when it comes to mitigating delivery risk there really is no alternative to Agile. If you want to deliver with greater success, less risk and with the greatest chance of getting the outcome you want you need to use Agile, it just really is that simple.

 

 

When I was in Washington for the Agile Alliance 2015 conference I met up with Craig Smith and Christopher Avery for a podcast (unfortunately for me half way through). It was my first real introduction to the Leadership Gift and Responsibility Model. I had heard Craig talk to about the Leadership Gift a few times but the conversation intrigued me.

Recently I have started to have a look in depth about what a fully comprehensive leadership training program would look like and remembering the conversation in Washington I set aside some time to watch the youtube video on The Leadership Gift.

The following are my random notes that I took as I watched the video. They will likely seem contextually disconnected and out off place but I write the notes in the spirit of Non Violent Communications appreciation – to give clarity of what I give thanks for.

So the basic model is as such:

resp_process_big

 

 

 

 

 

 

 

 

 

  • The importance of moving the “inversion layer” eg the layer of management that deals with where teams transcend across coloured layers (as described in Fredrick Laloux’s Reinventing Organisations Book). Eg a green Agile team and amber management – the Scrum Master is the person who is often affected by the inversion layer. The goal should be to NOT have an inversion layer.
  • A reference to complexity and uncertainty (making me think of Cynefin)
  • Accountability does not mean responsibility (resonated)
  • Do we make commitments visible?
  • The responsibility process demonstrates how we use language when things go through (key message)
  • Justify = “that’s just the way it is around here”, “there’s nothing I can do about it” (important classification)
  • Impediments = a conception of elements beyond our control (but are they really???)
  • Responsibility is the place of freedom – of control and power in ones mind (key message).
  • Shame is socially considered a level of responsibility, but it is not (aha moment for me).
  • When we are truly responsible when something goes wrong we acknowledge it but more importantly we focus on what we have done to fix it, to stop it from occurring again and what still needs to be done, or what is outstanding (key message)
  • High performing teams – go beyond their accountabilities, have highly successful outcomes & have a great time doing it
  • Reference to Chris Argyris & Double loop learning (re-hearing what I learnt a few years ago)
  • We weren’t born with perfect knowledge and we won’t die with it either (loved this quote)
  • … but we can learn through experimentation, trial and error (again reinforcing lean startup to process belief)
  • Get off shame by forgiving yourself
  • There is no personal growth when you are living below the line, ie doing obligation, shame, justification, blame or denial
  • What to do? Firstly intention – create a desire to get above the line with free will. Secondly have awareness – a life long pursuit. Thirdly confront yourself – what change is needed based on awareness. (key message)
  • Winning is about meeting an achievement not beating others (similar messaging as Non Violent Communication)
What is a Minimal Viable Agilist?

What is a Minimal Viable Agilist?

I have been doing some hiring lately. The two roles I have been hiring for are a Scrum Master and a Business Analyst. I used the opportunity to test my recruitment questionaire – questions that I am expecting the organisation to ask in the future when I am no longer there in order to ensure that they are getting quality candidates into the roles.

The questions had some basic Agile bits, the sort to ensure that we were getting people who culturally understood T-shaping, the values and principles of Agile – not that they had to ring them off by rote, but they knew and understood what it felt like to experience them.

And then there were the role specific questions. For the Scrum Masters the test predominantly comprised a series of pictures with a question per picture. An example (without showing the picture) was “Take a moment to orient yourself to this wall – what issues do you see with the team/the work?”

If the Scrum Master applicant passed the basic Agile questions and the wall picture questions, stage three was getting them to demonstrate facilitating in a mock scenario.

Somewhat thankfully our search for a Scrum Master didn’t last too long – candidates that recruiters passed through to us all failed abismally. All of them didn’t even pass through the first stage to begin asking the picture based questions. Feeling despondent we did the whole ‘Who do we know who can do the job and are actively looking?’ thing. Interestingly they passed all three components of the test quickly.

So then the challenge was finding a Business Analyst, and that was indeed difficult. We had resumes without even a reference to the word ‘stories’, ‘Agile’ or ‘Scrum’ being put forward by recruiters despite being exceptionally clear that we were looking for Business Analysts who had strong experience in an Agile environment.

There were a couple that got through to stage two testing – but they were few and far between, many of our interviews got cut at 10 or 15 minutes.

It was very frustrating; we weren’t asking questions that were hard – we were asking questions that anyone who cares about being good at their job should be able to know the answers to.

So let me put this as simple as I can – if you aspire to be an Agile Business Analyst, or you think you are worthy of being an Agile Business Analyst and selling yourself as one, then these are the things I feel you should be able to answer (naturally these questions are more fluidic and are asked when a conversational element exposes their relevancy):

  1. How do you decompose something down from a big idea to something that can be delivered by the team?
  2. What qualities does a good user story have?
  3. How do you know when a user story is small enough?
  4. If you had a user story that was too big, what are the different strategies you would think of/use to try and break it down further?
  5. What is the difference between Acceptance Criteria and Definition of Done?
  6. On average how many Acceptance Criteria do you have per user story?

If the answers to the above questions are correct then the interview goes onto stage two – scenario testing. Similar to the Scrum Master test we provide a simple User Story and ask the person to define some Acceptance Criteria. Then we ask them to look at a number of poorly formed User Stories and tell us what is wrong with them.

Stage three, like the Scrum Master is practical, asks for a demonstration of analytical and breakdown skills through a scenario, ultimately to test facilitation skills and on the spot thinking.

Now I won’t reveal the answers to the questions above, but if you feel like giving a try and responding in the comments you are welcome to. Additionally I have left out some of the thinking processes that we have been looking for but I can reveal that answers like “I just do what I did back in waterfall – I talk to people and write the requirements. Business Analysis is no different in Agile than in a Waterfall environment,” is probably not going to get you the job.

But through all these interviews what I was most surprised with was how little people cared about the quality of their skills in their chosen profession. I am often frustrated and don’t know the answer as to why people know so little about their profession. Here are some possible root causes I have conceived of but I don’t know which is the right answer (I suspect it varies based on the person):

  1. I am too busy doing my job to learn how to be more effective in it (too much work)
  2. I work hard when at work, in my down time I don’t want to think about work or read about things related to my job, I just want to relax
  3. I studied at school and for my degree, I was so glad when that was over I didn’t really want to study anymore
  4. I am awesome and don’t need to know any more/get better
  5. I am sick of people telling me what to do and how to do it, I am just going to do the smallest thing I have to in order to get my paycheck.
  6. Understanding this change threatens my job in some way
  7. I get by, no one else has commented on how I do my job

And so the ultimate question that it came down to in the interviews were “What is a Minimum Viable Agilist?” To me it is a person that cares about their craft, that understands the value of spending time to make themselves better and in doing so making the product better.

Firstly I apologise for getting a little slack with my blog. When I do presentations I tend to invest a lot of time in them and consequently a lot of other items get de-prioritised. Since my last blog I have presenting at the Agile Games Conference in Boston, at the HR Game Changer conference in Melbourne and at Agile Alliance 2015 Conferencein Washington. If you would like to take a look at any of my presentations feel free to visit my slideshare page.

I am hoping I will have a quieter six months in order to focus on a few projects such as finishing my Agile Forest Book, finishing a Visual Management book I am co-authoring with Craig Smith and getting a production quality Agile Bootstrap kit together which has Agile posters, cards for the usual ceremonies and cards for a training wall. If you are interested in being involved in any of these projects (ie reviewing or just want to know when they are done) then feel free to contact me at: renee@unbounddna.com.

Speaker_Badge_200pxAnyway, this blog post is to endeavoring to talk about my high level observations of attending the Agile Alliance 2015 in Washington, so lets kick it off:

  • It was my first foray to this conference. Comparing it in size to Agile Australia which has over 1000 attendees, Washington has near the 2500 attendee mark. Despite this, it didn’t feel like an impersonal event. With sit down lunches, dinners and breakfasts, round tables and activity filled sessions galore and lots of open space to have conversations, I felt that there were plenty of opportunities to get to know people that I have connected with on twitter, but also new people that I have never met before.
  • Conference venue was great, I loved the natural light in the corridors. Hotel and hotel staff were great. Food was considerably below standard of Agile Australia but that could be my expectations on freshness and I do appreciate that all meals were provided with no requirement for me to source food elsewhere.
  • The cost of the conference is quite extreme when coming from Australia, especially when you consider lost contract time and the two day travel time. I have submitted for three years in the hopes to have my ticket and accommodation covered before I finally got accepted. Without these perks I am not sure if I would make the trip. That said, I do believe attending the conference in the US  is something every enterprise agile coach in Australia should do sometime in their life – the experience is definitely worth it.
  • I had for a while thought that with the US crossing the chasm before Australia that the level of knowledge, expertise and experience would be significantly noticeable. The reality was it was very similar. Partly this could be because 40% of participants are new to the conference, but for the most part the problems and potential solutions we are dealing with in Australia is very similar to the US. In some ways it is reassuring that the divide is not so significant.
  • Some of the key themes coming out of the conference include:
    1) lots on scaling. It seemed like every second person had their own scaling method. What I appreciate about this is that the creation of such frameworks and methods suggests we still have problems that need solving so I don’t expect to see this explosion of frameworks slowing down. That said, the attempt to make money through certifications is a concern for me. I am supportive of open source frameworks, but the personal expense of having to be certified in so many methods is ridiculous.
    2) lots on collaborative learning – there are many people other than myself experimenting with different approaches to a few days of training in order to get better outcomes for organisations.
    3) lots on improv – safe, quick games to get learning outcomes of value
    4) lots on leadership and enterprise agility (as you would expect) with quite a few references to Fredrick Laloux’s work on reinventing organisations
  • I liked the longer sessions at the US conference but think the split would be better if it was 60 mins for a talk and 90 mins for an interactive session. I did really enjoy the number of interactive sessions, but on the downside, I went to a few where the learnings coming out of them were inhibited by the low knowledge and capability level of people at the table I was sitting at. I feel if you go to a session with someone who is an expert in that domain it would be worthwhile to actually hear what their solutions are to problem rather than hearing guesses of potential solutions from participants.
  • I was surprised by the number of organisations in the US doing Agile ‘in the dark’. Their committment to growing an Agile organisation was to send it’s people to the conference (which don’t get me wrong, is great), but that is where it stopped. They wouldn’t pay for coaches, nor even pay for training, so basically it is like doing Agile when blind. I’m not saying this won’t work, however I believe that it will take longer and the road will be much bumpier. If they make these choices knowingly then so be it (but I suspect they don’t understand the impact and risk of their decisions).
  • I understand there was a coach open space on the weekend before. I would have preferred a 4 day conference with the fifth day for coach open space.
  • I am not quite sure about the 13 streams in a row format – sessions seemed to be very unbalanced with a handful of people to full. I can appreciate that sizing rooms in advance is tricky if not impossible. I guess it gave enough flexibility to have a few choices in case your first preference was full or didn’t meet what you were looking for. Part of the problem was with sessions being so long it often took quite a  while to see if the session was going where you would hope it would. Maybe my lesson learnt out of this is to do some pre-reading of the presentations beforehand and picking from a shortlist of three based on that.

So if you attended Agile 2015 and feel like I have missed the point or you simply want to comment then feel free to reply in the comments below.

 

The world of Agile training and mentoring is intriguing me at the moment.  This is how most of us have done it in large organisations for a long while –

  • We build in powerpoint or prezi these gorgeous training decks and train up people new to Agile
  • We outsource our training to groups who do the same as the above
  • We build intranets, wikis or documents worth of content on “how to do <insert Agile activity here>”
  • We teach the “Shu” rulebook without constantly re-enforcing the need to progress to “Ha”
  • We have embed games to re-enforce and experience learnings from training sessions
  • We mentor through SODOTO (See One, Do One, Teach One), but often never get to the TO bit

We talk a lot about innovation and radicalizing the business and yet some of the training techniques we still use are from 1990s. How many Scrum Masters open up this content and use it? How many Scrum Masters experiment and adapt how they work? How transparent, engaging and interactive is this content? Playing games and implementing SODOTO is a great start to interactivity and real-time knowledge sharing, but can we do more?

Recently I have had an awesome opportunity at Charter Hall innovate, experiment and enhance the experience of learning differently. Rather than build decks I have spent many hours building an interactive wall to people new to Agile. It is more an experience than a training session. It is one massive wall that flows a conversation about Agile quite naturally before the tour moves further into the working space.

The “basics” tour has the following elements:

  1. The background of Agile
  2. The Agile Values
  3. The Agile Principles
  4. The Agile Process
  5. The Agile Roles
  6. The Portfolio Wall
  7. The Pipeline Activities Wall
  8. One of the Project Walls

The principles behind the learning wall are quite simple:

  • Create a natural flowing experience
  • Introduce concepts with visual drawings to enable better retention
  • Make the process introduction really simple, bare bones, but…
  • Have the ability to drill through into detail without it overloading the audience. This would help when having more detailed role training.
  • Make everything transparent, no content is hidden in a tool
  • Break up content so that as things change it is a simple matter of changing one small picture

Now before I show you the pictures of what I have created I do want to highlight some intended future changes:

  • Extend the values section to include the Scrum values and the company values
  • Make pictures for the Agile Principles
  • Add in Lean Principles
  • Add in an “other section at the tail end”
  • Maybe add in a visual around all the different Agile methods, edgy and support methods
  • In addition to the wall I am also building a series of agenda cards – these are re-usable packs for Scrum Masters and coaches to use for workshops and key Agile activities (eg Iteration Planning, Retrospective, etc). These cards have some spares so that facilitators can adapt away from the standard set of agenda ideas. On the back of the cards are tips of the purpose of agenda activity and how it could be facilitated.
    What does this mean for a new facilitator? Well they have the clear activities they need to do with how to do it without having to open up a tool (which they don’t ever do), but most importantly this is real time – exactly when they need it. It also provides great clarity to everyone else in the room around what is happening and what still needs to happen when it is utilised as a backlog against a simple wall of “To Do”, “Doing” and “Done”.

Anyway, now for the pictures of the Learning Wall (it runs right to left due to the entrance point, but normally I would have preferred a left to right run). Taken from the right:

_DSC2108

 

Taken from the left:

_DSC2098

The Agile Values (some references taken from Rally’s awesome values picture):

_DSC2071

The Agile Principles:

_DSC2074

The Agile Process (note this is naturally a very specific organisational tailoring, I am by no means saying this is the one and only process for Agile). Specifically, this is the bare bones view. The number of iterations is just for an example.

_DSC2079

And now the interactive version (note how the interaction points line up with the number of iterations).

_DSC2076

With a detailed closeup on the iteration portion:

_DSC2077

A high level overview of the Agile Roles. The three key Scrum Roles are here – Scrum Master, Product Owner and the Team. In addition I have added in our organisational specific governance roles which includes a high level organisational wide steering group, a Business Scrum and the PMO. Again I would like to highlight that some changes have been made to normal roles to suit the specific culture and needs of the organisation.

_DSC2081

Detail on the Scrum Master role (interactive side showing):

_DSC2093

Detailed view on the Product Owner role (bare bones side):

_DSC2089

Detailed view on the Product Owner role (interactive side):

_DSC2094

Detailed view on the Team role (bare bones side):

_DSC2087

The Business Scrum role:

_DSC2086

The Steering Group role:

_DSC2090

The PMO role:

_DSC2085

And that is the Agile Learning Wall! Please feel free to comment on any thoughts and suggestions to enhance the route of complete transparency and no tools that I am on.

I would like to thank both Nicki Doble and James Doust from Charter Hall who gave their support for my experimentation and for their willingness to expose to the world what we are doing.

 

Over the years the roles associated with agile transformations has grown and changed. Fifteen years ago the only roles that existed were those that were associated with being within an Agile team – the Product Owner and Scrum Master. agilecoach

The Scrum Master role hasn’t really changed over this time – it has always been clearly in their remit that they are responsible for training, mentoring and coaching the team in Agile and for ensuring the Scrum process is understood and enacted. So how is it that about five years ago the role called ‘Agile Coach’ came about, and more importantly, what does it mean?

In Australia, partly the distinction was made initially not because it meant something different to a Scrum Master, but because a lot of organisations and transformationalists didn’t want to tie themselves solely to Scrum. This meant that a more general sounding name was needed and Agile Coach came about from that. Over time though, in my personal opinion, it has indeed changed to have some differentiation from the Scrum Master role.

The predominant difference I see between the Scrum Master role and the Agile Coach is not the responsibilities but the experience. Because anyone can do a two day CSM and call themselves a ‘Scrum Master’ there has been a gap of a lot of people who know only the very basics and those that know in reality, through practical application and experience what works and what does not. An alternative to look at it is the broad spectrum of Scrum Masters who are in Shu trying to mentor and coach a team without the skills to be able to do it, versus those that are in the tail of Ha, or even starting to hit Ri. What ‘Agile Coach’ gave us was a means to be able to differentiate between someone who had done a two day course and someone who had lived and breathed transforming teams for a few years.

If I was to put some clear differences into bullet points it would look something like this:

Scrum Master

  • Done a 2 day CSM/PSM course
  • Applied Agile to a single team, once or up to a few times
  • Reading the basic Agile books
  • Basic knowledge of values, principles, process, practices and techniques of Scrum, XP and Kanban

Agile Coach

  • Done potentially more certifications (or been mentoring, coaching and training teams for more than five years)
  • Been mentoring, coaching and training teams for more than three years
  • Starting to read most of the key Agile and Lean books
  • Applying knowledge from a variety of methods including scaling methods, lean and systems thinking
  • Uplifting capability of multiple teams through working closely with several Scrum Masters at once
  • Training, coaching, mentoring and advising not just teams but also leaders
  • Tries to resolve complex departmental waste issues

In addition to the two roles above, another one seems to have entered the agile vernacular in the last two years – that of an Enterprise Agile Coach. So lets take a look at my personal opinion of differentiates an Enterprise Coach:

Enterprise Agile Coach

  • Has led an agile transformation or whole divisions at one or more organisations
  • Has had a team of Agile Coaches working with them to undertake the transformation
  • Defines the organisation’s Agile framework and ensures that buy-in exists at all levels to the change
  • Has read most of the key Agile and Lean books, has started reading practices and techniques that are outside the Agile community including modern management, complexity, finance, metrics, behavioural and organisational change.
  • Training, coaching, mentoring and advises not just teams and leaders but high level executive and c-suite managers
  • Tries to resolve complex organisational waste issues including governance, finance and HR.

So in conclusion, for those of you that were confused about the difference in the roles, I hope this helps. If I have missed anything or you feel that according to your views I have mis-representated something than feel free to comment below. The responsibilities and experience levels noted above are purely my opinion and based on what I have seen and experienced around me in Australia and New Zealand.

In product development the definition of Minimal Viable Product (MVP) is

The product with the highest return on investment versus risk

Popularised by Eric Ries it subtly changes to

The smallest thing you can build that lets you quickly make it around the build/measure/learn loop

I must profess I have a few issues the MVP concept.

mad-scientistMy first is the term. The term MVP is all well and good for you version 1.0 of your product, but what exactly is your next cycle through the loop called – is it called a Minimal Viable Product as well? Why do we not refer to the refinement or further iterations of the build, measure, learn (BML) loop as Minimal Viable Increments? Or better yet, BML increments? We know from using Lean Startup that we rarely get the product right first go, so we should have some simple term that talks about getting it closer to right shouldn’t we?

My second issue with MVP as a concept is that people forget that there is a life cycle to products if you do manage to be successful post the Startup phase. Let’s go through the scenario – you build your first MVP, you increment on it through build, measure learn, you begin to realise customer value, customer growth and manage to retain customers, you increase business revenue; in essence, your startup starts to succeed. Then your customers continue to grow. Suddenly your little tiny product is not handling the growth. You need to desperately take what was a tactical solution and industrialise it, strengthen it so that it can handle the next stage of growth. Your minimal tactical product just isn’t cutting it, it simply isn’t viable anymore. At this point in time the increments from a BML perspective need to focus on operational sustainability – how can you build a platform to sustain an acceptable performance? I call these minimal strengthening increments.

My third issue with MVP is that if you are doing it in a non startup environment – ie an intrapreneur in an already existing and flourishing business, is how to deal with reputational risk. In these large corporate organisations you need to worry about compliance to major standards, either in the country or internationally, you may also need to worry about how your existing shareholders feel about a non polished product out in the marketplace. It is for this reason that you could venture down the path of white-labeling the product, ie taking your brand off it and registering it under a smaller shell of the company, but often it means that the MVP becomes not so very minimal as the company is unwilling to incur reputational risk.

My fourth and final issue with MVP is the very difficult balance between MVP and minimal viable experience (MVE). Sure you could put a product out there to begin learning from, but if the content or the experience of the product is not compelling enough then you are going to risk turning away customers and that comes back to reputational risk for large corporations. Some call this a minimal lovable product.

Don’t get me wrong, I love Lean Startup, but in conclusion, if you are applying it into a corporate environment it is not going to be enough to ensure success and many different considerations need to me made. In a large and established organisation consider the minimal viable increment, the minimal viable experience, the minimal riskable product, and the minimal strengthening increments.

Inventory waste. It is one of the eight forms of Lean waste. It is work in progress or finished goods which are not having value added to them.

In software development inventory waste is best represented in the queued activities in between the hand offs from individual to individual. If using a complicated board, you would represent the full flow or value stream for delivering stories. This would normally contain columns such as “Ready for Development” or “Ready for Testing”. A build up of one or two items in these columns isn’t necessarily bad, but when moderate to large queues start to appear it is symptomatic of constraint or flow issue within the team.

In teams doing Kanban well, they are limiting their work in progress across both the active and the queueing columns (ie “In X” and “Ready for Y” columns).

What a Hotspot board does is visually highlight the inventory waste areas of the team’s flow. Rather than structuring flow going across via the headers or columns, it balances the zones of the board so that the inventory waste areas are all in the center part of the board – ie the key focal area of your eye, highlighting the criticality of watching these waste points by backing the zone in red.

HSB1HSB2

There are a few potential downsides to such a board:

1) Swimlanes become difficult to utilise as a visual technique (as flow bounces around the board)

2) Visual fixation on only the hotspot results in the “In X” activities having reduced focus. This could result in high WIP of in flight work being ignored which would definitely not be a good thing.

To overcome this second issue and to align more closely with one of Kanban’s key pricinples, limit work in progress, I extended the idea of the Hotspot board to become the Twister board (yes like the game with spots).

The Twister board re-introduces work in progress limits in three ways – HSB3

  1. In the hotspot zone itself
  2. In the active flow states – visually highlighting the actual kanban availability through the existence of the circles
  3. In the active flow states – visually highlighting the risk of hitting to top threshold of work in progress through colour – green =  all good, orange = getting close, red = upper threshold of work in progress being met

Note: pictures are examples only of flow and work in progress limits. As always, apply this contextually to your work and teams.

The 1670 saying by John Ray’s A collection of English proverbs

The early bird catcheth the worm

is well understood by many. The phrase conjures up a picture of birds sleeping and waiting whilst the one that leaves it’s nest early to scourge for food will be more likely to succeed in having a full stomach. catch-the-worm-early-bird

But take a step back and think it through a little. Is there a higher likelihood of worms the earlier a bird rises? What are the other birds doing? Does getting up earlier mean a longer duration of scouting ability unimpeded by competition?

Worms don’t have eyes and hence do not detect the rise and fall of the day. In this respect the worms are always there, it is merely the availability of sunlight that enables the worm to be detected. Where I live there seems to be an abundance of worms after rainfall, otherwise it is slim pickings.

I think the essence of the proverb is really about competition and that engaging an activity with reduced competition has a higher likelihood of success.

It made me think about the submissions process on a number of conferences like Agile Australia. A few weeks ago I got together with the other stream reviewers that we have in The Basics stream. We spent time pouring over the submissions made to date, trying to get to a similar set of assessment conditions and talking about the feedback that we would give. We have a great opportunity in this stream to give awesome feedback as for the very first time all reviewers are in the same city so we can physically meetup on a regular basis and communicate in a very Agile way.

The number of submissions to date in both this stream, and even the conference overall, have been trickling in. I know what happens after seeing it year after year – most of the submissions come in the last week. Whether this is because people are waiting to see if they can submit on a niche topic or because everyone used to be the sort of people in high school that would do their assignments at the eleventh hour (yes I was one of those people too), it discombobulates me that we do this in the Agile community.

It discombobulates me in two ways –

  1. Agile is based upon early delivery and fast feedback cycles. If any community in the world should cherish being the early bird and getting rapid feedback it should be us – and yet most submissions come in the last two days.
  2. We, as reviewers can give much more considered and thoughtful feedback the earlier we see the submission. The more feedback you get…. guess what – the more opportunities you have to course correct the submission. The more opportunities you have to course correct the submission – the more likely you are going to be hitting the target of what the reviewers are looking for. The more likely you are going to be hitting the target of what the reviewers are looking for – the greater the opportunity to make it into the short list to present.

And so, I plead with you – if you are keen to present in Agile Australia, please submit now and not in the last week!

TeamTypes

Scrum as implemented within teams is something that many of us have been doing for a while. It isn’t a simple implementation, but we have done it for over a decade. As teams begin to invest in applying Scrum at scale, the complicated quickly becomes complex. Methods such as LeSS, Enterprise Scrum, SAFe, DAD and Spotify are good examples of where people have aimed to return this complex set of activities back to complicated.

But they are all missing the realisation of a very simple concept, that all people and teams are not created equal. Sure there is a vast appreciation in these methods of the concept of teams – teams that are autonomous, fully empowered to work with their Product Owner to deliver customer value. These teams, often known as feature teams, pull items of larger work off a portfolio backlog, a backlog recognised to often be owned by someone further up the organisational chain of decision making.

However, where are the technical leaders in this? Where are the managers, be it project managers, or people leaders? Some would argue that in a truly agile organisation such roles shouldn’t exist, and maybe a more lean or autonomous organisation would seek ways to immediately remove these roles. But in a transformation, when so much is in flux, when there are already so many risks of change around, maybe there is another way.

What could the alternative be? What if we could be more tolerant and respect people’s roles and the value that they could provide in these roles?

This blog post is dedicated to such an approach and seeks to discover and highlight the concept of team types.

 

Feature Delivery Teams

The first team type is the one that we all know best. This is the team that does Kanban or Scrum, or whatever else in order to deliver value to customers. This type of team commonly works off a Product Owned backlog.

Interestingly, at scale they can be either one of many teams delivering as part of a product centric focussed tribe or part of a project centric focussed tribe. Which approach of tribal grouping – project versus product would depend on multiple factors.

This team should also be accountable for the outcomes that they deliver to production – work is not considered complete until the benefits have been realised through hypothesis validation, and any production incidents are also owned and resolved by this team. In simple terms, rather than passing off their problem to another group who only do fail and fix, this team “fixes whatever problems it may create”. In this respect, the team will have a clear desire on good quality software and reducing technical debt because they will also own the maintainability of the code. If technical debt or refactoring is ignored by the Product Owner, they will acutely feel the pain of it further down the line and consequently better appreciate the balance of feature delivery with quality.

There are three points that need to be highlighted for feature delivery teams:

  • The backlog, owned by a single person, the Product Owner
  • This backlog will contain Features and User Stories for the team to work on. This work is expected to provide an outcome that results in either increased customer value, increased customer growth, increased customer retention, increased business revenue or increased cost avoidance. In high feature outcome focussed teams, increased business revenue or increased cost avoidance, are usually related to customer centric features. In a more balanced team, for example one with a stronger devops focus, some features are less direct functional and are more focussed on increased customer retention through reliability and availability of performance. But this balance, or sliding of focus is probably worthy of a separate blogpost.
  • The team’s regular cadence around their transparency of work, often known as a Daily Scrum, Daily Standup or a Huddle, is focussed on the individual work items, blockers to progress and potentially the current team goal.

Project Support Team

Not necessarily applicable in all organisations, if the Agile transformation hasn’t tackled removal of the term “Project”, or if it simply makes more sense to bundle together like business goals that cross cut multiple products, then the project support team is an important team to recognise for the value that it provides.

Common activities that this team will own include:

  • Managing (solving and potentially further escalating) risks and roadblocks escalated up from the feature delivery teams associated with the project
  • Raising risks and issues to the Product Support team if they are more globally impacting than the project itself
  • Managing the project financials
  • Maintaining user experience consistency across all of the feature teams associated with the project
  • Managing cross team dependencies
  • Maintain the Project Delivery Roadmap and definition of the Minimal Viable Project

There are three points that need to be highlighted for the Project Support Team:

  • The backlog, is owned by a Chief Product Owner, with Feature Delivery Teams executing on the items in the Portfolio backlog through their work with their Product Owner. Arguably the activity of portfolio backlog management could be considered a Project Support Team responsibility, but clear accountability lies with the Chief Product Owner.
  • This portfolio backlog will contain significantly large enough activities for a Feature Delivery Team to break down and work on. These could be loosely called “Features” or may be even bigger and called “Initiatives” and “User Stories”. Most of the Project Support Team’s work however is risk and issue management and such doesn’t exist as a backlog but should equally be managed in a transparent manner.
  • The team’s regular cadence, more commonly known as a Scrum of Scrums, is focussed on mitigating risks and issues.

Product Support Team

In the duel relationship with the Project Support Team, the Product Support Team is an important group of people who own the multi-team related risks, issues and release activities related to the Product (sometimes considered a platform or channel).

Common activities that this team will own include:

  • Managing (solving and potentially further escalating) holistic risk to the product based on release drivers from the feature delivery teams
  • Aligning marketing campaigns to potentially drive down multiple messages being released at the same time for the same product
  • Working with other areas of the organisation to prepare them for release readiness
  • Demonstrating to all teams working on the Product the recent changes- think of this as a multi team Sprint Demonstration so that if teams are working on different projects they have the opportunity to be aligned with how the product is changing
  • UX consistency, patterns, standards and alignment where multiple feature delivery teams are impacting the same product zones
  • Architectural vision and guidance (note execution should be with the feature delivery teams)
  • Performance and penetration testing
  • Capability uplift of teams with respect to critical changes to either the product or process to deliver on the product

In a number of cases, the greater the amount of automation that this team or the feature delivery teams can build in to reduce the above activities, the better – especially when it comes to release and testing automation. Note that I haven’t even mentioned production acceptance regression testing as I do fully expect the feature delivery teams to build up this suite.

In SAFe, this is where the Release Train Engineer and the Architecture related elements may fit in, but I don’t really see this team as delivering architectural features, they are responsible for product delivery capability.

There are three points that need to be highlighted for the Product Support Team:

  • The backlog, unlike the Project Support Team, is likely a multi Product Owner scenario, with the full Product Support Team driving and agreeing to priority.
  • This backlog will contain activities for the team to work on. These could be loosely called “Features” and “User Stories”, but the customer in most of this work is not going to be an end user and is more likely to be an internal customer such as the Project Support Teams, the Feature Delivery Team, Marketing, IT Service Centre, Risk or Compliance areas of the organisation. This work is expected to provide an outcome that results in either increased customer retention (through minimised interruptions/updates), or increased cost avoidance (through risk avoidance).
  • The team’s regular cadence, more commonly known as a Scrum of Scrums, is focussed on mitigating risks and issues, transparency and execution of both release management and of capability uplift activities.

Conclusion

I understand that many people will read this blog and go “that’s not very Agile”, but the reality is that a transformation doesn’t happen overnight and unless you have a horde of Agile Coaches going across massive 30,000 people, you are going to have to pick and choose battles, with those battles often not immediately targeting both governance, finance and human resources sections of the organisation.

This is a way of an intermediary step until you may be ready to transform systemic organisationally wide dysfunctions.