MobileRobotK4/Education/bahan ajar/agile/IBM CD0116EN Agile and Scru.../1/3.1.1.5_Agile_Principles-en...

209 lines
6.4 KiB
Plaintext

0
00:00:06,720 --> 00:00:10,720
After watching this video, you'll be able to define the Agile philosophy,
1
00:00:10,720 --> 00:00:15,920
describe the characteristics of agile, and explain the philosophy of the Agile Manifesto.
2
00:00:17,520 --> 00:00:24,000
So, what is agile? Agile is an iterative approach to project management that allows teams to be
3
00:00:24,000 --> 00:00:30,160
responsive and deliver value to their customers quickly. Notice I said iterative. Unlike other
4
00:00:30,160 --> 00:00:35,280
planning approaches where we plan out an entire year's worth of work with agile, we plan out
5
00:00:36,080 --> 00:00:40,400
small increments, and they get feedback from the customer to see if they like what we're doing.
6
00:00:40,400 --> 00:00:46,560
And then we adjust as we go along. So what are some defining characteristics? Well,
7
00:00:46,560 --> 00:00:51,680
agile emphasizes this adaptive planning. As I said, we don't plan out an entire year,
8
00:00:51,680 --> 00:00:57,760
we just plan out a small iteration, to see if we can deliver something of value to the customer,
9
00:00:57,760 --> 00:01:04,240
and get feedback and see what they like. That allows us to do evolutionary development. So our
10
00:01:04,240 --> 00:01:09,120
development is evolving over time. We're building... instead of building the whole thing up at once,
11
00:01:09,120 --> 00:01:15,440
we're building it in small increments. And then we evolve as we go and respond as we go. This gives
12
00:01:15,440 --> 00:01:21,120
us the opportunity to do early delivery, very key. If you're developing iterations, and you're
13
00:01:21,120 --> 00:01:26,640
not delivering to your customer, you're not being agile, early delivery is a key component of being
14
00:01:26,640 --> 00:01:32,080
agile. Putting something in the customers hands, getting feedback from them to understand, do they
15
00:01:32,080 --> 00:01:36,720
like it? Should we pivot should we persevere. This is really, really a critical defining
16
00:01:36,720 --> 00:01:42,640
characteristic of being agile, over just doing iterative development. That leads us to continuous
17
00:01:42,640 --> 00:01:47,680
improvement. So now we can continuously improve as a team, we continuously improve the product
18
00:01:47,680 --> 00:01:52,080
that we're delivering, right, because we have the opportunity to get feedback from our customer,
19
00:01:52,080 --> 00:01:58,160
because we delivered it. And that allows us to be responsive to change. So as changes happen,
20
00:01:58,160 --> 00:02:02,960
and changes, always do, customers always have changing requirements, we can respond to those
21
00:02:02,960 --> 00:02:07,040
changes, because we haven't planned too far in advance, the customer sees the progress we've
22
00:02:07,040 --> 00:02:12,320
made, and then we can re-plan very, very quickly, and be responsive to what a customer needs.
23
00:02:14,160 --> 00:02:20,800
This brings us to the Agile Manifesto. The Agile Manifesto says we have come to value individuals
24
00:02:20,800 --> 00:02:26,240
and interactions over processes and tools, working software over comprehensive documentation,
25
00:02:26,960 --> 00:02:33,280
customer collaboration over contract negotiation, and responding to change over following a plan.
26
00:02:33,840 --> 00:02:38,640
This is the important part. That is, while there's value in the items on the right,
27
00:02:38,640 --> 00:02:43,360
we value the items on the left more. It doesn't mean that we don't have processing tools,
28
00:02:43,920 --> 00:02:49,280
it just means that we value interacting amongst ourselves and with our customers more than the
29
00:02:49,280 --> 00:02:54,400
process and tools. It doesn't mean we don't document. Documentation is important so that people
30
00:02:54,400 --> 00:03:00,480
understand how to use your product. But we can't ship documentation. So let's not lose the focus.
31
00:03:00,480 --> 00:03:05,760
Working software is what we're here to deliver. It doesn't mean that we don't negotiate contracts,
32
00:03:05,760 --> 00:03:09,920
we still have contracts, but we want to collaborate with the customer. As things
33
00:03:09,920 --> 00:03:14,880
change, we want to be responsive, which means we... not that we don't have plans,
34
00:03:14,880 --> 00:03:19,200
but we value responding to change over simply following the plan.
35
00:03:20,960 --> 00:03:26,880
Agile software development then, is an iterative approach to software development, that conforms to
36
00:03:26,880 --> 00:03:31,520
the Agile Manifesto, we want to make sure that we're keeping those four things in the manifesto,
37
00:03:31,520 --> 00:03:37,040
you know, on our minds a whole time. We also want to make sure that we emphasize flexibility,
38
00:03:37,840 --> 00:03:41,040
interacting with our peers, interacting with our customer,
39
00:03:41,040 --> 00:03:45,760
and having a high level of transparency, so that everybody knows what everyone else is working on.
40
00:03:45,760 --> 00:03:50,400
Everybody feels responsible for delivering value to the customers, this is critically important.
41
00:03:51,200 --> 00:03:55,680
And then finally, we use small, co-located cross-functional,
42
00:03:55,680 --> 00:03:59,840
self organizing self managing teams, we're going to talk a lot about this during this course.
43
00:04:01,920 --> 00:04:09,120
The key takeaway here is to build what is needed, not what was planned. If you build what was
44
00:04:09,120 --> 00:04:13,200
planned and the customer doesn't like it, why did you bother building it? It's really, really
45
00:04:13,200 --> 00:04:18,560
important to make sure that as needs change, and they will, you want to build what's needed from the
46
00:04:18,560 --> 00:04:24,560
customer regardless of what was planned, we could always replan and be responsive to change. In this
47
00:04:24,560 --> 00:04:29,760
video, you learn that agile is an iterative, collaborative approach to software development
48
00:04:29,760 --> 00:04:36,400
using small cross functional teams. The agile approach emphasizes flexibility, interactivity,
49
00:04:36,400 --> 00:04:42,640
and transparency. The Agile Manifesto describes the core values of Agile: individuals and
50
00:04:42,640 --> 00:04:47,840
interactions over processes and tools, working software over comprehensive documentation,
51
00:04:47,840 --> 00:04:53,931
customer collaboration over contract negotiation and responding to change over following a plan.