209 lines
6.4 KiB
Plaintext
209 lines
6.4 KiB
Plaintext
0
|
|
00:00:08,240 --> 00:00:13,280
|
|
After watching this video, you'll be able to distinguish between Agile and Scrum, define the
|
|
|
|
1
|
|
00:00:13,280 --> 00:00:17,680
|
|
key characteristics of the Scrum methodology, and describe the steps in the Scrum process.
|
|
|
|
2
|
|
00:00:19,360 --> 00:00:25,360
|
|
Agile and Scrum are two words that many people use interchangeably, but there really is a difference.
|
|
|
|
3
|
|
00:00:26,000 --> 00:00:32,640
|
|
Agile is a philosophy. It is not perscriptive. It's a philosophy for doing work. Scrum
|
|
|
|
4
|
|
00:00:32,640 --> 00:00:39,840
|
|
is a methodology. It is perscriptive. It's a methodology for working in an agile fashion. So,
|
|
|
|
5
|
|
00:00:39,840 --> 00:00:45,360
|
|
what is Scrum? Well, it's a management framework for doing incremental product development.
|
|
|
|
6
|
|
00:00:46,000 --> 00:00:52,880
|
|
It emphasizes small, cross-functional, self managing teams. And it provides a structure of
|
|
|
|
7
|
|
00:00:52,880 --> 00:01:00,000
|
|
roles and rules, and artifacts, and we're going to learn about all of those. It also uses these fixed
|
|
|
|
8
|
|
00:01:00,000 --> 00:01:05,680
|
|
length increments that are called sprints. We're going to get into sprints in a moment. And it has
|
|
|
|
9
|
|
00:01:05,680 --> 00:01:13,040
|
|
a goal of building an increment each time through a sprint, a potentially shippable increment each
|
|
|
|
10
|
|
00:01:13,040 --> 00:01:18,800
|
|
time through that iteration. Very, very important that you get stuff in your customers' hands early.
|
|
|
|
11
|
|
00:01:20,400 --> 00:01:28,080
|
|
So, I like to say, "Easy to understand, difficult to master." There's not a lot of rules in Scrum,
|
|
|
|
12
|
|
00:01:28,080 --> 00:01:33,440
|
|
but somehow it's really, really hard to do. And I attribute it to being a ballerina, like,
|
|
|
|
13
|
|
00:01:33,440 --> 00:01:38,720
|
|
all you have to do is dance on your toes, right? How hard could it be? Well, we all know
|
|
|
|
14
|
|
00:01:38,720 --> 00:01:45,760
|
|
it takes years to gain the muscle memory and build up your muscles to be able to dance on your toes.
|
|
|
|
15
|
|
00:01:45,760 --> 00:01:52,800
|
|
It's not as easy as it looks, and Scrum is the same way. Not as easy as it looks. So, my advice
|
|
|
|
16
|
|
00:01:52,800 --> 00:01:58,240
|
|
is if you've never done it before, hire somebody on the team who has, have someone to guide you,
|
|
|
|
17
|
|
00:01:58,240 --> 00:02:05,600
|
|
someone to mentor you, because it is a lot harder than it looks. So, let's talk about the sprint. A
|
|
|
|
18
|
|
00:02:05,600 --> 00:02:12,080
|
|
sprint is one iteration through the design, code, test, deploy cycle, right? So, you're doing these
|
|
|
|
19
|
|
00:02:12,080 --> 00:02:17,280
|
|
mini iterations. It's kind of like the software delivery lifecycle. In a mini inner iteration.
|
|
|
|
20
|
|
00:02:18,720 --> 00:02:22,560
|
|
Every sprint should have a goal, right? You should, everybody should, understand what is
|
|
|
|
21
|
|
00:02:22,560 --> 00:02:27,600
|
|
it we're trying to build with this increment. What should this increment do at the end of the sprint?
|
|
|
|
22
|
|
00:02:28,160 --> 00:02:32,000
|
|
And then the Sprints are usually two weeks long, some people say two to four weeks,
|
|
|
|
23
|
|
00:02:32,560 --> 00:02:37,920
|
|
I find four weeks to be far too long. A lot of things can change in four weeks, right? Remember
|
|
|
|
24
|
|
00:02:37,920 --> 00:02:42,240
|
|
small, want to work in small batches. And so, I think it's really important to try to keep your
|
|
|
|
25
|
|
00:02:42,240 --> 00:02:46,960
|
|
sprints to two weeks, some people get them down to one. That's a little too fast for me, but two weeks
|
|
|
|
26
|
|
00:02:46,960 --> 00:02:53,440
|
|
seems to be a good goal to make your sprints. So, let's look at the steps in the scrum process.
|
|
|
|
27
|
|
00:02:54,080 --> 00:02:58,240
|
|
You've got the product backlog. This is the list of all the stories
|
|
|
|
28
|
|
00:02:58,240 --> 00:03:02,160
|
|
of everything you ever want to do with your product. This is it, this is everything,
|
|
|
|
29
|
|
00:03:02,160 --> 00:03:08,000
|
|
it's kind of your to-do list of everything you might want to do. Then we've got something called
|
|
|
|
30
|
|
00:03:08,000 --> 00:03:12,640
|
|
backlog refinement, that's when we go through the product backlog. And we groom the stories to
|
|
|
|
31
|
|
00:03:12,640 --> 00:03:16,400
|
|
make sure that they're sprint ready because we want to start doing planning on those stories.
|
|
|
|
32
|
|
00:03:17,280 --> 00:03:23,760
|
|
Then, we have a planning meeting where we produce a sprint backlog. Notice the sprint backlog is
|
|
|
|
33
|
|
00:03:23,760 --> 00:03:29,200
|
|
smaller than the product backlog. The sprint backlog is just those stories that we want to
|
|
|
|
34
|
|
00:03:29,200 --> 00:03:34,480
|
|
accomplish in the next sprint, in the next two weeks. So we take from that product backlog,
|
|
|
|
35
|
|
00:03:35,040 --> 00:03:40,720
|
|
pare it down into a sprint backlog of just the stories to execute in the next sprint. And then
|
|
|
|
36
|
|
00:03:40,720 --> 00:03:46,800
|
|
we start our two week sprints. And every day we get together and do the daily Scrum or the daily
|
|
|
|
37
|
|
00:03:46,800 --> 00:03:51,520
|
|
stand-up where everybody gets to answer three questions. What did you do yesterday? What are
|
|
|
|
38
|
|
00:03:51,520 --> 00:03:55,440
|
|
you going to do today? And is there anything blocking you or impeding you from getting up
|
|
|
|
39
|
|
00:03:55,440 --> 00:04:00,080
|
|
further? So you go through that every day for two weeks, build your sprint.
|
|
|
|
40
|
|
00:04:00,080 --> 00:04:05,840
|
|
And then finally, hopefully, you've got a valuable shippable increment at the end of that process.
|
|
|
|
41
|
|
00:04:07,120 --> 00:04:11,600
|
|
Agile development is iterative. You're going to go through this again and again.
|
|
|
|
42
|
|
00:04:11,600 --> 00:04:17,760
|
|
Design, code, test, deploy, design, code, test, deploy. I mean, this is this is what you do
|
|
|
|
43
|
|
00:04:17,760 --> 00:04:22,720
|
|
in every sprint. And notice, you know, you've got to have some kind of deploy, it's not enough
|
|
|
|
44
|
|
00:04:22,720 --> 00:04:27,440
|
|
to just do design, code, and test, design, code without deploying it and getting feedback,
|
|
|
|
45
|
|
00:04:27,440 --> 00:04:32,560
|
|
right? So, so every sprint you make a plan, you go through the software delivery lifecycle
|
|
|
|
46
|
|
00:04:33,200 --> 00:04:38,080
|
|
cycle, and then you deploy that application and you get some feedback from the customer
|
|
|
|
47
|
|
00:04:38,080 --> 00:04:45,840
|
|
that is input to the next plan to go through the next cycle. In this video, you learn that Scrum is
|
|
|
|
48
|
|
00:04:45,840 --> 00:04:51,360
|
|
a methodology that follows the Agile philosophy. The Scrum management framework provides structure
|
|
|
|
49
|
|
00:04:51,360 --> 00:04:57,760
|
|
through defined roles, meetings, rules and artifacts. It also prescribes small
|
|
|
|
50
|
|
00:04:57,760 --> 00:05:03,680
|
|
cross-functional, self-organizing teams. Uses fixed length iterations called sprints,
|
|
|
|
51
|
|
00:05:03,680 --> 00:05:09,840
|
|
and produces a potentially shippable product increment with every iteration.
|
|
|