 Is this is this working? Can you hear me? Is this working? Yes wave I seem so much quieter than Purnima, which never ever happens Do I need to talk into it a bit closer? That's not awkward at all. I Didn't turn it on My technological skills. I know I'm post-technical, but my technical skills do extend do extend to turning microphones on Are we good? Okay, I can talk loud. It's fine as Purnima said I've been a teacher. I have a teacher voice Which my kids really really love Hi Singapore. It is wonderful to be here not least because I'm from Melbourne Ask me what the weather is like in Melbourne right now It was two degrees the other day, so I'm really enjoying defrosting a little bit I am today going to talk a little bit about agile things Who here works on an agile project? Really? Why is not everybody's hand up nobody admits to doing anything other than agile these days come on It's like yeah, mate you agile. Yep. I'm agile. What about you? Yep. I'm agile as well. We're all agile here But well, that's much louder. Awesome. I don't have to yell Don't hold back on questions You know bring it on because some of these things are probably going to be slightly unpopular opinions But I hope I will give you a few ideas of things you can try In your place of work. So my story begins once upon a time when agile and I were younger and I was working in a team that was agile ish Except that we had these horrible deadlines and you know managers beating us and we lost weekends and we lost sleep And it was horrible and at the same time I was reading all about agile Projects and you know, there's the sustainable pace and you just kind of cruise along and there was none of this This horrible death march and I thought well, that's because real agile projects don't have deadlines, right? We're doing it wrong and Then I left that organization and went to another organization, which was a product-focused Organization and they had a really good idea about how agile should work and everybody was you know working independently and it was all marvelous and We still had deadlines so that was a bit weird and I thought what's going on So in my case there were government related Deadlines end dates for things. I mean just because your projects running late They're not going to move the end of the tax year for you. It's going to stay where it is so I was working on two of these projects making tax digital which is a project based out of the UK and Simpler bass, which is a project in Australia Both of them are tax related and yes The government isn't going to move dates for you because you are late But maybe you're working to meet another kind of event related date, right? Like they're not going to move the date of the Grand Prix Chinese new year is not moving for you, you know The Oscars isn't going to change because your website's not ready or Perhaps there's some sort of race against your competition in my case. I was working at zero. There's another company called MYO B Slightly similar things if one hears that somebody's bringing out this new feature. It's like quickly get it before they do So there's a bit of a race to market Or maybe there's some kind of staffing dependency Baby due dates also aren't moving for you. You need to work around this Or perhaps your company has made a really big announcement of something that you're going to deliver So I worked at zero. We had giant conferences called zero con where they would come and tell you what what features are coming And you know Once you've made an announcement like that. You can't really go back on it or you get something like this So this is a site called Ellen Musk today. It's devoted entirely to tracking the promises that he's made on Twitter You know, how's he going little red things? You know, how many days behind he is and yet this is kind of a joke site, right? But I have found hell hath no fury like a customer scorned Okay, so where did this impression come from? Everybody who tweeted the previous slide can now retweet this one to prove that I'm not an idiot Okay, this is not in the agile manifesto They talk about sustainable pace, but they don't say we value not having deadlines over having deadlines So What what is the reasons? Why do people think this? I know this is what I thought, right? Maybe other people think the same thing. Why would you think that? My first theory is There's a lot of companies that we get told, you know Just sort of held up as this is a really good agile company You may have heard of the Spotify model. Huh? Anybody heard of that? You know, we have Spotify Facebook Netflix Twitter, you know These kind of companies that we're told these are the companies that do it, right? But you know, do they do it, right? You you they they never tell you when they're gonna give you a new thing You just get this thing and suddenly nothing works anymore. And you know if it's Google Yeah, sometimes you have an option to switch back like here's your new calendar It doesn't really work the way the other one did but you can switch back Well, it's just as well because you took away half my features But you know, sometimes you just get something like this. Who's on Twitter? New Twitter. Yeah People hate it. They really really hate it. It's made itself worse than it already was Hate it. Hate it. Hate it Let's do a survey anybody like new Twitter. Yeah, not really There's a whole hashtag for people hating it So in summary, yeah dumpster fire new Twitter sucks And this is what happens when you just Foist these changes on people You know, can your company do that? No company. I've ever worked in I've worked in Financial companies banks. You can't just go. Hey, here's your new internet bank. You see ya. Sorry. You can't pay your rent You know, you can't do that The second thing is a lot of people associate Deadlined with a guy like this. I don't know who's seen a movie called office space But this is the boss and he comes in and this is what he tells you. Yeah I'm gonna have to get you to go ahead and come in on Saturday and yeah, Sunday, too I mean, this is this is deadline guy, right? so people associate the whole thing of deadlines with Working over time maybe a mini waterfall thing where you kind of have that last-minute push You know and you think wow if if if we had a more agile work environment the deadlines and this guy would go away But it's it's not gonna happen So what do we do? This is this is from Josh Patogi Who is a guy who I always seem to quote in my slides because he put this on LinkedIn right when I was writing this and I thought yeah, this is what people think deadline driven development We're uncovering bitter ways of developing software by making people work overtime So my question is does it have to be like this? I mean, we've just seen why deadlines exist and they're kind of inescapable in some contexts But surely we can do something better than think we've got to work overtime We still need to be able to cope with the idea that somebody's gonna ask you when will it be done? Is it done yet? How about now when will it be done because these questions have to be answered Okay, so obviously the answer is estimates, right? If only we did this right then we would know when we would finish easy But to many managers the idea that you have an estimate means that you have an actual and then I Can compare them and tell you how bad you are because your estimate was off and You know, that's the end of the world. You should learn to estimate better Actually heard one of my managers say this and I think just a little bit died inside Because do you really want to spend time getting better at estimating? You know you get better at what you practice of all the skills that you need Is this really a skill that you want to get better at? If if you've ever heard of Tom and Mary pop and dick they have a book called lean software development And this was their definition of waste in software development It's anything that doesn't add value to a project and that value is determined by the customer Now I don't know about you but as a customer if I get a product. I don't go well It's pretty good, but I think their estimating was not not on you know I don't see that you it's not really adding value to the to the project So if we're looking at lean ways of working if something is waste we want to try and eliminate it We don't want to add more of it and practice it I'm not going to say no estimates because if you write hashtag no estimates on Twitter trolls come This is true. We we were having a a conversation about a night out for drinks in Melbourne amongst the agile community Said to somebody what time are you gonna be there? He said I don't really know not haven't worked it out yet Hashtag no estimates ha ha ha boom trolls Well, you know you really should plan at your project. I'm going we're talking about going for drinks. Why are you here? So I won't say that but what I will say is that you should think about spending less time on your estimates not more Okay, I hear you thinking that sounds good, but what should we do instead? I? Think what we want to get to if my clicker would go. Oh, there we go. We want to make our work simple Transparent and predictable and we want my slide to advance There we go simple transparent and predictable as possible. I will pause because people are taking photos Okay So Neil Killick says that predictability is improved by behaving and delivering more predictably Not by getting better at making predictions So if you're working in an agile way, you've probably heard this kind of thing before We want to try and deliver something valuable small and valuable get it into the hands of customers get some feedback and iterate and repeat and do that in a predictable way, which was the whole intention of Something like scrum with the two weeks things. It's trying to get something out every two weeks and to be predictable So probably a lot of people have seen this drawing before it's kind of a classic thing that gets dragged out from time to time it's a drawing by Henrik Neiberg and I Want you to think about it in terms of what happens when you hit a deadline as you're going along, right? So if you are if you're tasked with say Building something that gets somebody faster than walking your customer wants to get from A to B And I want it to be faster than walking you might say here's a skateboard and you deliver it That was easy to make you give it to them and they go. Yeah, you know what? That's pretty good I like the wheels, but it's a little bit wobbly and to be honest. It's not much better than walking So you go, okay, cool. I'll put a handle on it. So you don't feel a bit wobbly Here's a scooter and so forth and so on Now in your customer's mind, they might have really wanted a car They really want a car when they said they wanted to get somewhere faster. They were thinking a car and If you go across the top and you hit straight to car What's going to happen if you're just here at step three and the deadlines approached, right? I've hit the deadline on the top thing. I Got nothing you can do nothing with that. It's a bunch It's a two-wheels and an axle or something whereas down the bottom I didn't get them the real thing that they were hoping for But I've got them something they can use and it's still faster than walking. So I think If we're following the bottom sort of path our deadline has impacted us less Does that make sense? It sounds really good in theory. It's a bunch of pictures of you know things with wheels Okay, great. So how do we do this predictable delivery thing? My first recommendation is story mapping has has anybody used story mapping heard of it Yep, not very many people There's a book called user story mapping which I think is a really really bad title for this book because you go Yes, story mapping whatever But it's actually a really great book for any Role anybody who has to work in development if you use Stories or if you're doing agile things Really really good book has a whole bunch of stuff in it but basically the idea of a story map is that without using Technical terms or jargon you are literally telling a story of what the user is going to do with your system So across the top you have tasks that are higher level tasks that you can break down Underneath that are the tasks broken down into simple steps that are just verb one verb phrases and then The order that things happen runs left to right as you'd be reading in English So the example that they use in the book which people most people can relate to is I could do a story map of Getting ready to go to work This is a typical exercise if you ever go to a class where they talk about story mapping They say okay plan out. I'm getting ready for work in the morning, and you might start out You know one one big task might be getting cleaned up Task that got into that category could be having a shower doing my hair Shaving putting the makeup on cleaning glasses, whatever And then you can kind of lay that out now the other thing about this is you really do it in a group Right because everybody has different things even something as simple as getting ready for work in the morning different people do things differently So it's really a collection of ideas that you want But when you're when you're done, and you've had a whole bunch of conversations. It's something. That's really simple It's wasn't easy to do but it's simple and you if you put it on a wall like in this picture Anybody can walk past. What are you working on? Oh, this is the thing that we're working on And it's really quite easy to explain how that's laid out So it's simple and it's transparent Once you have your or your map laid out you can literally draw a line underneath it So again, this is from Jeff Patton's book He also has a website that some of this stuff is available for free so you can literally draw a line underneath it and identify a set of tasks that form a goal for that user so You know it's a slice so one slice might be you give them a skateboard and get feedback from that and then the next slice Something better the scooter and so forth and so on so you want to go from something That's good enough and you really have to focus and it's if you've heard the term MVP minimum viable product It's something like that just something you can get to a customer so that they can give you some feedback on it and Then you give them something better and so on and so on and the idea is that at some point if you hit Your deadline and you run out of time They've still got something they can use It's not. Oh, sorry. We all have to flog ourselves to death because they've got nothing So this is an example from real life This was our storyboard or part of it when we were working on the making packs digital project and The cards don't have anything on them. So your eyes are working. I blurted out just in case and You can see that we had a compliance goal So that was meeting the minimum legal requirements from the HMRC, which is the tax Office in the UK and in order to do that. We had to actually pull out features that they'd previously had Nobody wants to do that. Nobody wants to take stuff away from customers But we really had to focus on delivering that minimum compliance goal in order I mean because if we didn't hit that that's it. We would be out of business in the UK Which zero did not want to be out of business in the UK So we had to focus on that and then the next we added some stuff back in so our users were a little bit happy So there's a little smiley face and then we added More and more until we got to the the whiz bang all bells and whistles version So again because our board was not very big. It's pretty high level at this point But you can see how it kind of matches that previous slide Does anybody use JIRA? Here everybody heard of JIRA if you because you can't be agile with your JIRA, right? Okay, you don't hate JIRA. You hate whoever set it up for you. Trust me There is an add-on called the snappy name of easy agile story map for JIRA Marketing Honestly, they haven't paid me But if you are using story maps and you are using JIRA Pay the extra money and get this thing because what it lets you do is if you've sat down and you've got this beautiful big physical wall And maybe you have some people that work for a moat or some people that work from home I don't know if you've ever been in a meeting where people are talking to a physical wall and you're looking at the screen going What does it say? I can't see that. Well, just bring it close up. Oh, you know It's nice to have JIRA sometimes and this lets you mimic your physical wall Which is also great because now your slices can look like a releases in JIRA Or maybe like sprints and everything kind of ties nicely in together So this thing really makes things easier So the next thing story points Now we've got our map of user tasks and stories. I Don't know about you, but I've sat in far too many meetings where there's two people Arguing about whether a story is a three or a five and you're sitting there going, please kill me now or even better People say, okay, so it's gonna take me a week. So that makes it a three Yeah, it's a three because it'll take me a week and then you get to the other end and somebody's gone That's a nine. So a nine is what is that? That's two weeks. Why are you spending time translating time into story points? And then story points back to time. I thought this is crazy. What's extra work? Why are we doing this? But then I thought no, I can't say that Because story points agile. I need story points or I'm not agile, right? heresy And then I saw this So this is Ron Jeffries and he says your stories can be one two or two big days not points And I thought that's cool. I like that. You might be wondering. Who is this Ron Jeffries guy? Um, it's his fault So he has spent a lot of time apologizing for story points read his blog follow him on Twitter, he's awesome and now he says It's better to break the work down into stories that are as small and as uniform as possible And maybe they're one day two days If they're not one day or two days, they're too big break it down some more or Neal killix rule of thumb is if you are using acceptance criteria you use one story for every acceptance criteria on And then once you've started in the habit of Working on small stories and trying to make them all the same size You don't need story points anymore because you can just count how many stories you have Which is easier? Because I can count, you know, I don't want to add up So you can actually even configure JIRA to use story counts instead of story points So that's removing another level of complexity, which I thought was awesome So then you can start looking at things like cycle time, which is how long it takes Something to get from one point like the beginning like from to do into in progress or doing All the way into released or done done or set free or whatever your last column is right Your throughput is then the number of stories completed per iteration. So again, I can just count them It's easy and this is more into lean theory and a little bit less away from agile I guess even though they should be the same so teams with shorter cycle times are likely to have higher Throughput and according to the theory of constraints. This is the best way to optimize and For those of you in JIRA land Here is your control chart where you can check on your team cycle time Your goal is to try and get these green dots closer together and to make this shaded area thin Which tells you that your stories are all pretty close and you also probably don't want to take a week to do each story Okay forecasting now that we've started to become predictable We can safely assume that what we did yesterday is going to be like what we did today is going to be like what we Do tomorrow so whether is a good example of this if I'm in Singapore and summer yesterday It was hot chance of rain today is hot chance of rain tomorrow hot chance of rain, right? Melbourne no good luck could be anything Cyclone rain hail who knows so bearing in mind that this is a model all models are wrong But some are useful. There's a number of different ways you can do this. So our good friend JIRA Says based on your last velocity for three spin sprints It will take you six more to complete this epic. So, okay, that's that's okay But we can do better Probabilistic forecasting is where you are looking at what is the chance of something happening? so for rain, what is the chance of it raining tomorrow for Software it's what is the chance of finishing on or before my date? You know, we are 85 percent certain will be done by the 5th of August or I'm 65 percent certain or rain tomorrow The good news is that this require this this relies on The input parameters being in exact which is great because we're guessing a lot of this stuff, right? now Using Arthur C. Clark's Clark's third law, which says any sufficiently advanced technology is looks like magic This has a lot of maths. So this is my magic crystal ball If you follow this link it takes you to a github repository which was put together by a guy named Troy McGinnis and It has a treasure trove of Excel spreadsheets that do all kinds of marvelous calculations for you And my crystal ball was called the throughput forecaster Which does a whole bunch of things? It duplicates some of the things that We already have in JIRA. So if you're in JIRA, you can do even less work Which is great. And if you don't have JIRA, you can get this spreadsheet to do some work for you. So yes, take a photo. It's magic Guaranteed to please managers. So this is how easy it is the sheet has a lot of instructions Which will help you it has a lot of extra information has a lot of really cool graphs If you're interested in maths and statistics, I am interested in having the sheet do the work for me so What you put in is your start date how many stories are left which in my case I can get from JIRA and if you're splitting your stories, which we were You can either split them as part of your guess So one team I was working with did t-shirt sizing So small story medium large and we thought well if it's large it might break up into three on The low end five on the high end. So we just put some guesses in here, and I love that. It's called a guess It's really obvious. I'm not estimating anymore. I'm just guessing Or else you can put a split rate. You can say every one story that goes in. I think two are going to come out Then you tell it what your Iteration time is so this team was Kanban So we did one week another team was doing two-week sprints. So put two weeks in there The last thing is I can either use historical data Which is what their throughput has been previously if I think it says seven weeks or more worth of data That's just another sheet that literally has number of things completed per iteration Don't have that fine put in another guess and then Magic a beautifully color-coded chart guaranteed to please Managers who like beautifully color-coded charts So what it's done is a Monte Carlo simulation, which statistics people know what that is for the rest of us mere mortals It's actually using your input to calculate In this case 500 times all the possible outcomes and work out What are the chances of you getting it all done? within these dates and then it tells you the probability of that so This was so amazing for such little work and then as we used it like most things you use it over time You can see how's it going? Is it is it close adjust tweak? And in our case it was really quite quite accurate Accurate enough and the fact that it provides a range is really good because now you can start talking about Confidence as well as time which is another thing that Jeff Patton talks about, you know, what would you bet? Would you bet me lunch? You know, maybe would be would you bet me your car? Yeah, I don't know. What about your house? You know, so now I'm talking about time and confidence So Troy says answering the right questions to a transparent degree of certainty with as little effort as possible is the gentle art of forecasting So now we've got simple Transparent and it provides an indicator of our predictability. So thanks Troy. I've never met him But if I do I owe him a beer because that forecaster is amazing Okay, so the TLDR Deadlines happen. We need to be able to find nicer ways of coping. We need to try and spend less time estimating not more Try story mapping even in Jira to help break up and visualize our work Try using story counts instead of story points try focusing more on throughput and cycle time and less about velocity and Try the magical throughput forecaster to estimate confidence as well as time My disclaimer This is stuff that we try to work for us. I don't want people to go Oh, this is the new way we have to do agile now throw away your story points You need to try things and see what works for you Everybody's context is different. So I'm hoping I've given you some ideas of things that you can try out see if it works inspect and adapt Now if you want to know more about how to manage your work in an agile way while you're still dealing with is it done yet? And when will it be done? These people have got posts. They've got books. They've got blog sites They are awesome. I have stolen all their ideas, which is great and a lot of it is free, which is even better Okay, so is it done yet? Yeah 29 minutes So Yep and talk to me afterwards and there's my Twitter thingy so you can message me if you think of it later. That's fine. Okay In our case we weren't really working with the tax agencies we had to develop a product So it was really only the deadline that was mandated. They had rules It was like, okay You're building something that small businesses need to be able to send us tax returns It has to comply with this this this and this and they really didn't care It was a parcel fail thing you either had it done by the deadline and they could do it Or you would be not allowed to submit and or your customers would not be allowed to submit their tax returns Which would be really bad. So yeah, we didn't really have to work with the tax Agency at all. So dodged a bullet That's a whole nother talk that needs that note I that that needs whoever wants to meet a go and rant on that I'm I'm happy to but no no, I don't have time for that really honestly It's a team sport. So I I like to look at the team output rather than individual people There's a whole yeah, that's a whole nother topic of of how you can work well with the team and I have I have opinions so Sorry to shun your question, but it would take it take me too long The next question is who brings down tasks into smaller story points Oh The classic consulting answer of it depends Ideally, it's a conversation But I think in a lot of cases if it's something that the developer has to work on then they're the one that's gonna say You know if I pick up a story and I look at it go, whoa, this is really big I need to break this up into three stories. I mean as a product owner going to go No, you can't do that. I mean, they're the ones doing the work So in a lot of cases, I think developers if you pick up a card that's part of working on the card is identifying that it's a monster Okay, that's cool Here for a good time not a long time. Yep He's not my uncle anymore. He's dead to me. Okay, sorry Uncle Bob believes in Agile has failed. What is your opinion? Mr. Martin. Mr. Martin. Yeah, okay I think a lot of it is misused and I think that you know the whole Agile is dead It fits into testing is dead and a lot of that sort of thing I guess it just shows you can take any any good thought and and use it for evil I don't I don't think Agile is dead. I think You know, yeah, you can misuse it. So yeah He just likes being controversial Some people honestly, I've been we were called an agile team facilitator when I was at zero because we didn't have to do scrum Which was great. I think sometimes if you have a good one It can help if I just found a scrum set in the bottom of a cereal packet And then I came in and tried to tell you how to do stuff that could be bad So yeah, sometimes it's very helpful even if it's just to help people focus a little bit Not every team needs a full-time scrum coach So yeah, it's again something that can be very helpful and sometimes it can be very awful I think a lot of good Agile coaches and or scrum masters or whatever Their Goal is to be no longer needed Which is possibly a good thing Well because it means that the team is doing it without you and you don't need to be there going Did you remember to fill out your TPS report or whatever, you know Yeah, ask me questions. I don't buy it cool. Thank you