>> Thanks for having me.
>> So what do you do here at Microsoft?
>> Well, I’m the Program Manager on the Kanban team in Visual Studio team services and team foundation server.
>> Okay, so what is a Kanban board and why would a team want to use one?
>> Okay, so we’ll start with the word Kanban, right? That was introduced by Toyota back when they were trying to gain efficiencies in their production of cars, obviously.
>> And so basically, what the Kanban board today does is it’s an electronic board for teams to visually manage their work as it goes through the process, whatever that may be.
>> Okay, so it was used in manufacturing for vehicles, what are we doing with them in software?
>> I think sometime, after Toyota really made it popular, a lot of other industries started realizing that the processes, and the bottle necks, and inefficiencies that other industries face could be applied to the same type of.
>> Tool or-
>> Process or something.
>> So we’re using this board to be able to visualize the flow of our work as it starts from inception to being completed, right?
>> Right, exactly.
>> Okay, so I’m a certified Scrum master, a big Scrum fan. And I actually use Kanban boards as part of managing my teams. And one of the things I liked about and the most was something called a WIP limit, right? Which is like Work In Progress, can you talk to us a little bit about what Work In Progress is? And why we would use it?
>> Sure, so a lot of Kanban is about making sure that the cycle time is low. So the inception of that work item into the development phase and then getting to the actual delivery to a customer, right? And Work In Progress limits really help you because they essentially set a way for teams to focus on the items that are actively in development, instead of picking something new. So a team will set a Work In Progress limit for their Kanban board. And if that team goes over the limit, as in they’re picking up new work before finishing else, something else, the board will let you know, and say, hey, why don’t you finish that item? Get it to delivery before you pick up something else.
>> Got it, yeah, I used to have some really clever Scrum teams who would take on all this work. And they would burn it all down to one hour. And they would go grab something else and burn that down to one hour.
>> And by the end of script, it looked like [LAUGH].
>> Eventually, you’ll have a big backlog, yep.
>> Yeah, it looked like we burned a lot of hours, but nothing actually got done. And a WIP limit would have forced them to, before you go and grab that other task, finish the tasks that are in there right now, right?
>> That’s right.
>> And our board is able to do that.
>> Yeah, absolutely.
>> So why don’t you show us what our Kanban board can do?
>> Okay, sure. We’ll just jump into the demo right here. So the first thing I want to point out is the board lives under the work hub here.
>> And I’ll just go straight into full screen mode. And the first thing you’ll see is the new column. Or actually, I’m gonna rename this into my backlog since that’s really what it is. And the backlog column, is there for the product owner, right?
>> And the product owner can go ahead and reorder and reprioritize this. And the team, what the team’s going to do is focus really on the work that’s actively being worked on, right?
>> And what they’ll do is pick up the next item off the top and drag it in to development when they’re ready.
>> And so, that’s very much a pull model, which is different from other past models, which have been very much push.
>> And so as soon as you drag something into development, you’ll notice something about the development column that’s a little bit different. It’s been split into two subcolumns that are doing and done.
>> And the nice thing about the doing and done columns are that when something is in the done column, it lets the other rest of the team know visually that hey, I can pick up that work item and take it into verification.
>> So that’s the indication that I can pull it forward into the next column?
>> Right, exactly.
>> Is the stuff in the done side effect my WIP limit?
>> The stuff in the done side will effect your WIP limit. And the way that team members know that something is done is by actually looking at the definition of done, right?
>> And that’s something that a team can agree to and set a standard for. And so you’ll know that for this work item, the work item’s moved into this column done because it has a polar request, and it’s met all the criteria on the dev checklist.
>> And then, I can move it into the verification column once it’s done.
>> Okay, so why are some of them different colors?
>> The colors are a part of the styling rules, right? And we have a pretty strong, powerful functionality here in the settings, cog over here, that allows you to add styles.
>> To these different cards. And you’ll notice, I have three of them available here today. The one that you’re pointing at, I believe, was the red card on the board. And that’s actually for a P1 bug, right? That means it’s high priority, and so I really wanna get to it quickly. And what I’ve basically done is named the P1 bugs, added a color that’ll really jump at you, right? So red, and then said it so that the role criterias, if this is a priority one bug then make sure that it shows up as red, right? And it’s available here.
>> I see, and then, why are there two different, it seems like there’s two different lanes across there?
>> Why is that?
>> Absolutely, the two different rows are called swim lanes. And swim lanes allow you to group work across the same process, but separate features or maybe even higher priority items, right?
>> And so in this example, we have it set an expedited column, right? And the expedited column basically tells the team hey guys, this is something important. It’s a P1 bug, make sure we pick it up.
>> I see, so there’s a lot of cards on here. Potentially, they could get lost in the shuffle? But by having these other lines.
>> I was gonna pull the important ones that are focused on by my team.
>> Yeah, and I could actually quickly show you that.
>> So when we go into the settings cog here, you’ll see one for swim lanes. And we have our existing swim lanes already. I’m actually gonna add a second one for Microsoft teams. My team just recently did a Integration with teams as you might have heard.
>> So we’ll just add a swim line here. And I’m actually gonna go ahead and also add a column. I wanna go and add a writing-
>> So you’re free to customize almost all the different aspects of this board to fit your teams current needs?
>> Yep, you can add permissions here and set it to team administrators. But yeah, it’s really meant for the team, to empower the team. So I’m gonna go ahead and add that ready call, I added the Microsoft Team Swim Lane. We’ll Save and Close. And you’ll see the board has now added a lane and then that column. And the reason I added the ready column is so that now, instead of having this giant backlog where the team members have to say, okay, is this backlog item meant for the Microsoft teams values stream? Or is it sort of be expedited? I can start dragging items with the teams tag here and prioritizing it in the ready coms. So that my team members down the line, can pick it up as it’s prioritized.
>> So this is almost like a lane where this is the stuff we’ve committed to delivering?
>> And this is the whole back log of everything.
>> That we ever wanted to deliver.
>> And it’s committed to delivering by the value stream, right, or by the feature.
>> Okay, great, so what else can you show us about the board? I notice, it looks like there’s some signal R icon or something up there. So what happens if I’m remote and I’m using this board? Do I get to see these changes in real time?
>> Yeah, yeah, absolutely, so the signal R that, what is it? Radio tower icon.
>> Is meant to let us know that live updates are on.
>> And this is a fairly recent feature, so our live updates are on. And I can actually show you a side by side. Here is the Kanban board available in Microsoft teams on the, what is it? Left or right hand side. [LAUGH]
>> And I’ll pull this guy over, let’s see, pull this guy over here. And let’s say, I’m a remote member of the team, I’m attending Standup via Skype. I can just go ahead and say, hey, I picked up this card, I’m now doing it. And you will see that card move over as well.
>> Got you, and I see it actually automatically got assigned to you too, cuz you’re the person who moved it over there.
>> Yeah, exactly, I picked it up and put it inactive, so yeah.
>> Gotcha, interesting so how else does this tie in? We’re talking about the Kanban board, and we can see that it’s integrated inside of Microsoft Teams. But because it’s a part of team services, I assume it has linkages and traceability through other parts of it. It doesn’t link to branches or poor request. How does that sound?
>> Yeah, absolutely. So let me just go back full screen here, and there’s quite a few abilities actually. So you might have noticed that there’s a couple of this like yellow break down components. So we’ll go there first. I have the ability to add a trial task and decomposed my user story. It can be used as a really quick checklist, so maybe task one, task two. So that’s one option, right? And then the next option is, you can add a test or even create a new branch right off of the card you’re working on.
>> Right? So here you’ve got some tests. So this one, test two. And you have the ability to then go ahead and run those tests. And this is linked to the test case hub in the-
>> Got it.
>> Test hub in VSTS.
>> Got it.
>> That’s correct.
>> Yeah, so being a DevOps guy, I’m kinda thinking what role this plays in the DevOps pipeline? And clearly, this is up in the agile planning where we’re actually deciding what it is we’re gonna create? And this is where we’re defining the value that we wanna then flow through. So does this also integrate with our builds or our release in anyway? Do I see these cards move automatically if a build is successful or a release deploys?
>> Let me see, can I say it? Yeah, I mean we’re in the process. We’re working on some of that stuff. It’s definitely top of the mind for us.
>> So you’ll see those things light up pretty soon, yeah.
>> So where would someone go if they wanted to submit features for what they think your Kanban should be? Is that even like User Voice? Or-
>> Yeah, absolutely, I’m definitely very active on User Voice. And of course, if there’s any issues or anything like that, they can reach out directly to me or there’s the Kinect as well.
>> Got you, so I’m just kinda curious. How does our Kanban boards stack up against other Kanban boards out in the industry? I mean how do we compare ourselves to some of our competition, who I assume, were not the only one with Kanban Boards? How do we go about evaluating hours against others? And how do you feel that we stack up against some of the other Kanban Boards?
>> Yeah, I’m a little biased but I do think that the Kanban board is one of our marquee experiences in Visual Studio Team Services. We’ve done several competes against the likes of Rally and Eventura to make sure that we’re really, the feature parody is absolutely there. I think another thing that’s nice is we’ve got a lot of customization and flexibility on our Kanban boards whereas others are very prescriptive.
>> And so I think that’s been the highlight of the boards, for sure. We’re all about organizational alignment, absolutely. But then the teams have the autonomy to make sure that the board works for their process, instead of just a standard for the entire project.
>> So when you’re looking at a Kanban board, I’m working with a lot of software development teams. There are so many different levels of the organization that are involved in turning an idea into a working piece of software.
>> What level of your organization is using the Kanban board? Is this something your C level exec is looking at? Is this something that your dev team is looking at? Or, who uses this?
>> And is it actually able to be use by different areas of your organization?
>> Yeah, I think the Kanban boards are the best for the teams themselves.
>> If we take it up one step higher, we do have features and epics available as well, if your organization is a little bit smaller in scale. So you can start creating Kanban boards to manage your features. And now, I’ll actually flip over to that as well. So you’ll see, these are the user stories and bugs the team is tracking, right?
>> Then someone like myself or my Manager, Aaron, I’m sure, we might track features, right? And these are shippable increments that are really going out every three weeks for a sprint.
>> So if I flip over to the features board, you’ll see that I have a similar Kanban board with different columns tracking the features that are then gonna go out to customers. So yeah, we do have the hierarchy available as well.
>> All right, so these are the features who are the parents of the items we saw-
>> In the other board?
>> Gotcha, and I asked about things automatically moving, I’m just curious. So if I move all of the children users stories of a particular feature, does that feature then move across the board automatically? Or do I have to come over here and move it?
>> No, however, there is an extension that we built through Microsoft Dev Labs, that does do that.
>> As far as splitting. If once an iteration is finished, you can go ahead and split the feature, and move everything over.
>> To the next one, if it’s not done, or move everything to the done column.
>> Right, so in our marketplace, we have tons of different extensions.
>> And being a DevOps guy, I focus a lot on that inner part, right? The CI and the CD. And I know there’s tons of extensions out there that I can install that enhance my build and enhance my release. But you’re telling me that there’s some of those extensions that also enhance our Kamban experience as well?
>> Yes, absolutely, yeah. So there’s actually an extension point available on the cards themselves. There’s extension points available on the board. So one that I’ve seen that’s pretty neat is the ability to print the cards.
>> And then have it on a physical board with QR codes, right?
>> Very cool.
>> And then you can actually gauge the movement across your electronic board as well as your physical board. So that’s an interesting one. We also just released an open end Excel. And so you’ll see that context menu item available there. So you can open a card in Excel. I know the main scenario for this really is to open a lot of results in a query, and bulk edit them in Excel as well.
>> So there’s definitely a variety of work related extensions available in the marketplace.
>> Very, very cool. And so you said different organizations, at the story level that’s your developers.
>> Maybe your PMs or your Scrum masters, product builders, they might be using it here.
>> Tracking the features, right.
>> But I also see that there’s an epic level, does the hierarchy go to that level as well?
>> Yeah, absolutely, so the epics, and you’ll see that breakdown too, so here. You can tell that this epic has one feature and that feature has been complete, right?
>> Epics generally last a lot longer.
>> They’re more longer than the [INAUDIBLE] so they’re not gonna have the same sort of a constant flow as you might expect down at the user story level. But yeah, the more C level or the more strategic initiatives can be tracked at the epic level.
>> So I notice that when I’m working on a really large application, there’s multiple teams involved. And sometimes even multiple team backlogs that roll up. When you go down to the user story level, can each team have their own view of that Kanban board? Or once you get to the user storage level, everyone shares the same view of that Kanban board?
>> Each team would have their own Kanban board.
>> Got it, got it.
>> Okay, and they can customize it independently of the other teams-
>> Yeah, they can customize it independently of the other teams. And then the nice thing is, just through the linking, we have this ability of filter.
>> And so of course, there’s your basic core filters assign to you can do at me, and find the things that are just assigned to yourself. Or you can filter by iteration or work item type. But the one that I really like is the parent work item which allows you to filter by the feature that the user story is associated with, right?
>> Got you.
>> And so when you’re doing a stand-up you can say, hey, here’s this feature that we really need to get out the door, what’s going on? And you can drill down here, so maybe this-
>> I see.
>> This feature, right? Or you can go down the migrate like a C code. And you can see the work as it’s going across just for that specific-
>> Yeah, it kinda gets rid of all the noise.
>> Unless you focus on one particular item. I also see a search icon that looks on the far right hand side. Yeah, that’s a really quick search. You can do-
>> I see.
>> Quick searches, and it’ll filter the board. You actually have one available in your backlog as well.
>> Let’s say, you’re the product owner, you’re trying to prioritize something. You’ve lost a card somewhere down in your backlog. And you wanna get it back up there, so we have one there available as well, too.
>> Now, traditionally, Kanban is associated with Agile kind of methodologies.
>> And inside team services and TFS, we not only support Agile and Scrum but also CMMI. Is that Kanban on board also available for CMMI template or just only-
>> It’s available out of the box across all three templates. And we’re gonna support the work for as there as well.
>> Awesome, so is there anything else that you want to show us about this particular thing? Or have you touched on a lot of it?
>> I think we’ve touched quite a bit. I do wanna mention the tag colors are another thing that I’ve customized on this view. So block does not out of box red or anything like that. I’ve added that type color and then to use-
>> Sure. Darker green, and performance is a lighter green. The other thing I’d wanna mention is keyboard shortcuts.
>> So if you just shift question mark, you have global keyboard shortcuts, but also shortcuts for the Kanban board. And that’s really great, because you can imagine setting focus onto a single card and being able to move it up and down, your board without really touching your mouse.
>> Perfect, so I see the fractions up here, and these are the actual WIP limits for these particular columns.
>> Are those soft or hard? What I mean by that, is if I’m over my WIP limit and I try to drag something, can it bounce back to let me know that I’m over? Or does it just let me go over my WIP limit?
>> No, we won’t bounce you back but we will give you-
>> I might have to write that extension myself.
>> Yeah, [LAUGH] maybe, we will give you a nice little red indicator, right? So let’s say, I drop it into development, you’ve gone over your WIP limit. So not only does the column title turn red, but you’ll also see that you are a six out of five now, and that you have been read.
>> Gotcha, gotcha. Well, this has been an amazing tour of our Kanban board so I wanna thank you so much for coming.
>> Cool, I’m glad. Thank you so much for having me, it was great.
>> No, my pleasure. So thanks for joining us here on Visual Studio Toolbox/. We’ll see you next time, thanks.
In this episode, Donovan Brown makes his debut as a co-host. He is joined by Sondra Batbold, who shows the Kanban board in Visual Studio Team Services. She shows how quickly you can customize the board to fit your team and how it is integrated with Microsoft Teams.
For more information on the basics of Kanban, see the Visual Studio docs.