1 00:00:06,837 --> 00:00:08,678 - So let's talk about some ways 2 00:00:08,678 --> 00:00:12,845 we can reduce the time it takes to complete the end game. 3 00:00:13,988 --> 00:00:16,591 One of the things that I like to do is use retrospectives, 4 00:00:16,591 --> 00:00:19,563 and we mentioned that before, is to say, 5 00:00:19,563 --> 00:00:23,736 "What were some of the problems, and how did we do that?" 6 00:00:23,736 --> 00:00:26,276 Lisa, I know that you have at least 7 00:00:26,276 --> 00:00:28,635 one story to contribute to this. 8 00:00:28,635 --> 00:00:30,183 - Many, many stories, but this is 9 00:00:30,183 --> 00:00:32,561 the most recent story on my team. 10 00:00:32,561 --> 00:00:34,890 We really would like to go to 11 00:00:34,890 --> 00:00:38,723 a daily delivery to production, and currently, 12 00:00:39,604 --> 00:00:42,132 our manual regression checking that we have 13 00:00:42,132 --> 00:00:44,659 tens of thousands of automated tests, 14 00:00:44,659 --> 00:00:47,135 we still have a lot of checklists 15 00:00:47,135 --> 00:00:49,480 to go through manually at the end, 16 00:00:49,480 --> 00:00:52,934 and that could take us anywhere from 45 minutes 17 00:00:52,934 --> 00:00:55,812 to longer if we find some problems, 18 00:00:55,812 --> 00:00:57,832 and we don't want to do that every day, 19 00:00:57,832 --> 00:01:01,165 so we took a step back and thought about 20 00:01:02,624 --> 00:01:05,267 what risks do we want to make sure that we cover, 21 00:01:05,267 --> 00:01:07,529 we drew our architecture on a whiteboard, 22 00:01:07,529 --> 00:01:09,136 we started looking at the areas 23 00:01:09,136 --> 00:01:11,275 we thought were the most risky, and we put them 24 00:01:11,275 --> 00:01:13,598 in a spreadsheet and prioritized them, 25 00:01:13,598 --> 00:01:16,534 and we've written stories to make sure 26 00:01:16,534 --> 00:01:19,291 we have automated test coverage for these different things, 27 00:01:19,291 --> 00:01:21,219 so in some cases we might have to write some new tests, 28 00:01:21,219 --> 00:01:23,123 we're using a bit of a different approach, 29 00:01:23,123 --> 00:01:25,554 and in some cases we can still use our old tests, 30 00:01:25,554 --> 00:01:29,768 so we can take advantage of that, but we really turn that 31 00:01:29,768 --> 00:01:32,335 into actual feature development, if you will. 32 00:01:32,335 --> 00:01:33,326 - Okay. 33 00:01:33,326 --> 00:01:35,581 That really makes a lot of sense. 34 00:01:35,581 --> 00:01:36,801 By the way, I really like the way 35 00:01:36,801 --> 00:01:38,550 you use your virtual whiteboard, too. 36 00:01:38,550 --> 00:01:40,558 It makes me feel much better. 37 00:01:40,558 --> 00:01:44,076 So the very first day I walked into this one team, 38 00:01:44,076 --> 00:01:47,233 they had just released to the customer 39 00:01:47,233 --> 00:01:49,606 to do their user acceptance testing. 40 00:01:49,606 --> 00:01:53,336 I walked in and I start asking my questions, and I go, 41 00:01:53,336 --> 00:01:56,156 "So when are we going to get it back 42 00:01:56,156 --> 00:01:58,748 "from the user acceptance testing so that we can 43 00:01:58,748 --> 00:02:01,183 "get it ready to put into production?" 44 00:02:01,183 --> 00:02:04,372 And they said, "Six weeks," and I went, "Six weeks? 45 00:02:04,372 --> 00:02:06,684 "But our release cycle is three months. 46 00:02:06,684 --> 00:02:08,801 "We're going to be halfway through." 47 00:02:08,801 --> 00:02:12,968 It made no sense to me, and so I asked why it took so long. 48 00:02:14,023 --> 00:02:17,055 What the problem was was that the person who was doing 49 00:02:17,055 --> 00:02:20,276 the user acceptance testing was fitting it into 50 00:02:20,276 --> 00:02:24,158 her regular job, and it turned out that she was doing 51 00:02:24,158 --> 00:02:27,132 bits and pieces, because it was her regular job 52 00:02:27,132 --> 00:02:29,145 that she was trying to work around. 53 00:02:29,145 --> 00:02:30,498 Well, I came up with an idea. 54 00:02:30,498 --> 00:02:32,809 We started talking about it in our retrospective, 55 00:02:32,809 --> 00:02:36,829 and I said, "How about," and thankfully, 56 00:02:36,829 --> 00:02:39,320 everybody bought into it, including Julie-- 57 00:02:39,320 --> 00:02:43,487 that was our UAT person-- and so, every Friday afternoon, 58 00:02:44,417 --> 00:02:48,041 Julie started coming for an hour, one hour every week, 59 00:02:48,041 --> 00:02:50,647 and she would pair with me, and I would show her 60 00:02:50,647 --> 00:02:52,916 what we had been doing for the week, 61 00:02:52,916 --> 00:02:55,582 so at the end of the next cycle, 62 00:02:55,582 --> 00:02:59,419 when we went to give it to her, she said, "You know what, 63 00:02:59,419 --> 00:03:02,103 "I don't need six weeks, I only need three weeks," 64 00:03:02,103 --> 00:03:04,621 because she was much more confident, and I went, 65 00:03:04,621 --> 00:03:07,081 "Not good enough, not good enough," 66 00:03:07,081 --> 00:03:09,285 so we talked a little bit more about it. 67 00:03:09,285 --> 00:03:13,627 What we did was we brought her own desk, her own computer, 68 00:03:13,627 --> 00:03:15,498 and every Friday afternoon, she would come 69 00:03:15,498 --> 00:03:18,031 and she would spend a couple of hours 70 00:03:18,031 --> 00:03:21,540 and test herself what we had been doing. 71 00:03:21,540 --> 00:03:24,829 When we asked her the next release cycle, 72 00:03:24,829 --> 00:03:28,624 how long she needed, her answer was, 73 00:03:28,624 --> 00:03:33,237 "I will take a day off work, put it in our test system, 74 00:03:33,237 --> 00:03:36,314 "and I will finish it by the end of the day," 75 00:03:36,314 --> 00:03:39,582 the reason being that she had confidence in what it was 76 00:03:39,582 --> 00:03:40,763 because she had been doing it, 77 00:03:40,763 --> 00:03:43,263 so don't wait to the end game. 78 00:03:44,551 --> 00:03:47,640 If you can bring that kind of testing in earlier, please do. 79 00:03:47,640 --> 00:03:50,373 It can make all the difference in the world. 80 00:03:50,373 --> 00:03:52,545 Let's continue with a summary now. 81 00:03:52,545 --> 00:03:55,631 This lesson was about planning for testing. 82 00:03:55,631 --> 00:03:58,306 It's important to understand your context. 83 00:03:58,306 --> 00:04:00,479 How much is enough? 84 00:04:00,479 --> 00:04:03,545 - [Lisa] We talked about models to get the whole team 85 00:04:03,545 --> 00:04:07,479 thinking and provide visuals for our quality attributes 86 00:04:07,479 --> 00:04:09,781 and the testing that we want to get done. 87 00:04:09,781 --> 00:04:12,945 We talked about how the agile testing quadrants 88 00:04:12,945 --> 00:04:15,338 help us think about all different types of testing 89 00:04:15,338 --> 00:04:17,899 beyond just the functional testing that we most likely 90 00:04:17,899 --> 00:04:20,021 are going to think about first, 91 00:04:20,021 --> 00:04:23,200 and we talked about planning release activities early 92 00:04:23,200 --> 00:04:26,196 and doing what's necessary in the end game. 93 00:04:26,196 --> 00:04:28,009 - [Host] Next, we'll take about ways 94 00:04:28,009 --> 00:04:32,176 to build shared understanding through early testing.