Scrumban.

At the moment, I am helping out on a slightly different team on my project as an “adhoc PO”. While the rest of our project is pretty much scrum all the way, this team works a bit differently. They are not strictly setup as a scrum team with one scrum master and one product owner, as well as development and QA teams. In this case, because of the size of the backlog, we have a pretty large development team that makes it difficult if not impossible to support with just the one product owner.

The main focus for this team is our backlog of “next-in-line-but-not-necessarily-vital” items AKA product maintenance. All of the pieces on this particular backlog are important, relevant and need to get done, but they don’t or didn’t quite fit in any of our scrum lane work over the past few releases. The tricky thing is that all of these items are not as obviously related or structured as the rest of our backlog, hence making it much harder to properly prioritize and stack rank for the PO on the team.

Also, since this team is also responsible for supporting and fixing any new enhancements or bugs that user report or request, the backlog is nowhere near as complete or static as the rest of our scrum lane backlogs. Planning a backlog on shifting sand as it where, meant that our project leadership decided that perhaps scrum wasn’t quite the right model for this team, although they were very keen on continuing down the agile road.

Enter Kanban – a model out of the lean toolbox that is often adopted on the factory shop floor and at it’s most basic form features a just-in-time and off-the-top-of-the-pile approach to development. In essence, the backlog is prioritized and stack ranked and as soon as any developer has an opening, either because they finished their current story or because they have some idle time while working on another story, they pick up the next item from the top of the backlog queue.

Because of this model, stack ranking in Kanban is possibly even more important than in scrum, to ensure that the flow of work doesn’t stop and the production line never breaks. And this is exactly why we decided to not only assign more than one product owner to this team, but also went for the slightly unusual approach of having “adhoc POs” – such as myself – to lend a hand and help groom the backlog to make sure we can maximize the team’s capacity and effectiveness.

I really am looking forward to getting a little more immersed and learn more about Kanban vs Scrum – so far, it’s an interesting new perspective.

 

The post Scrumban first appeared on Agile, Now What?

Advertisements

The Gift of Feedback?

After an interesting conversation among my fellow Product Owners yesterday, I thought today’s post should be about something we always ask for, often receive and are not always happy about: feedback. In the English language of the corporate world, this is often referred to as the “gift of feedback”. For me, this expression always holds a certain sense of irony. While in English “gift” pretty simply means something that is given, in my native language German, “Gift” actually translates as poison.

Of course feedback is always a good thing, after all, what good is anything if I am the only one who thinks so, but there are certainly occasions where feedback can “poison a plan” – a sprint plan for example. Every now and then one of our showcases throws light on some additional feature, nuance and business scenario previously unaccounted for which the scrum team then dutifully investigates, vets and puts on the sprint plan for the next iteration. Perfect agile process, right?

The problem is though, since the showcase is at the end of a sprint, invariably most of the sprint planning for the following sprint has already been done by the team’s PO. Having to incorporate another item that late in the game does not a happy developer make! Agile scrum in itself is already a very challenging process at the best of times and including showcase feedback aka added scope at the last minute before the start of a sprint only increases the pressure.

So, what to do? Unless the basic principle of improving a product by iteration is completely thrown overboard, we must continually ask for feedback, digest it and include in our product moving forward. Otherwise, we are no longer agile, we are just “waterfalling” within a somewhat agile structure. The question remains though, what is the best way to accommodate feedback without disrupting the work for the following sprint? Schedule it to be done later, the following sprint perhaps? Plus, by simply accepting whatever feedback is given to us in a showcase and immediately implementing it in the next sprint, are we missing the opportunity to dive deeper into what we are missing and taking the time to truly understand the customer ask?

What about you – in your scrum process, how do you avoid the “Gift” in feedback?

Scope Creep.

In any kind of project “scope creep” is a term that comes up often. Depending on the kind of project, it may happen rarely or frequently, but in my experience it’s safe to say that there is always a certain level of scope creep, or at the very least, the continuous threat that it may surface.

While scope creep is mostly related to additional development work, further testing required or perhaps another chunk of analysis previously unaccounted for, what I have observed recently is a more subtle kind of scope creep. In fact, it is not even related to the technology or software of our project. Instead, we seem to be suffering some blurring of the boundaries when it comes to our agile scrum process, more specifically the purpose and content of the scrum gatherings.

When we first started working in the scrum module, a great emphasis was placed on making sure we setup the correct cadence of meetings. As per the scrum model, we dutifully setup daily standups, regular retrospectives and sprint planning sessions and of course end of sprint showcases to demonstrate the development completed to our stakeholders for feedback.

The one meeting where I have noticed a big change over the course of the past weeks and months is the showcase. It seems that we slowly but surely move away from the true essence of showing a live demo for the respective scrum teams, so our stakeholders and other teams can see the progress, the decisions made and provide feedback on the same. Instead, it seems the meetings is morphing into more of a general project update session.

Not that getting an update on what other teams are up to is not valuable time for everyone involved, it most certainly is, however I wonder whether the scrum showcase is really the right forum or whether we should try to go back to purely focusing on the demo of new software and put a stop to this new kind of “scope creep”…

Innovate!

I was going to write a proper post today, now that I am back in the office, but then I found the below article and I felt compelled to share it. In my opinion, it is such an accessible and apt description of what it takes to innovate that I think can enlighten and inspire anyone to try doing things in an agile way.

5 Steps to build a more innovative organization by The Staffing Advisor

Thinking about agile? Don’t hesitate, innovate!

Location. Location. Location.

Over the next few weeks, I am lucky enough to be on location on the beautiful Island of Tasmania – better yet, I am here on vacation. 🙂

Since I don’t particularly want to spend my time writing about work while relaxing with my family, instead I will share some thoughts from others in the agile community.

Today:  Distributed Collocation.. an Oxymoron? by AccuRev

I hope you like it – see you in a few weeks!

User Advantage.

A big part of agile development is engaging users, regularly and frequently, to get feedback on the product developed to date. Since our product spans multiple user groups in many different locations, it is not always the easiest thing to get a good subset of users together to evaluate what we have done so far.

Even the simple choice of choosing the location can be quite a challenge. Do we meet at our corporate office? Do we spread out and schedule various sessions on location? Do we just run the whole thing via video conference?

While we have done various versions of the above, the one thing we have yet to try out is do the entire interaction online instead of in person. The one main benefit of trying this out is fairly obvious, it would save the project both time and money if everyone could simply run the meeting(s) from their own location. No lengthy plane journeys to foreign locations, no rental of meeting space, no expensive printing of workshop materials. Sounds great! …or does it!?

Perhaps an approach like this might work if our entire user base was American. (I realize I’m going to stereotype a little bit here, and I apologise in advance if I offend anyone in the process.) In my experience, our American user base is very engaged, very critical and not shy to voice their opinion. For them, having a few shorter online sessions to review the product might actually work quite nicely. They can work it in to their day-to-day and still provide the valuable feedback we really need.

However, a significant portion of our users are based in Asia. And Asia is a completely different story. Not that our users aren’t as engaged or keen to share their feedback, they are, but they are also a lot more reserved and more careful about what they share. Also, a lot of them are newer to the software and have never been involved in feedback sessions before, unlike their American counterparts. For me and my team this means we need to spend some time making them comfortable to really say what they think, not what they think we want to hear.

In the end, it’s up to us to find the right balance and approach for each of our user groups, and to make sure we don’t accidentally favor some of them, only because they make more noise…

Root Cause.

I read a few interesting blog posts recently about the value of root cause analysis when investigating product defects. I myself am actually a fan of the principle, since there is nothing more infuriating for a user than having a problem fixed without understanding how to avoid it in future.

However, sometimes a root cause analysis simply doesn’t help in avoiding or even fixing the problem as Mike Cohn so beautifully describes in this post:  http://www.mountaingoatsoftware.com/blog/root-cause-analysis-of-the-failure-of-root-cause-analysis

This doesn’t exactly convince me to never do a root cause analysis again, but it certainly makes me wonder whether we sometimes spend too much time analyzing that could be better spent fixing the problems right in front of us…

Instead, it is a lovely reminder that one solution most definitely does not fit all – and that we have to be a little more creative in trying to figure out what went “wrong”.