47
Mountain Goat Software, LLC <tên người trình bày> <ngày tháng>

Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Embed Size (px)

Citation preview

Page 1: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

<tên người trình bày><ngày tháng>

Page 2: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

<Tên><Ngày tháng>

Trình bày bở!i

Page 3: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Hirotaka Takeuchi & Ikujiro Nonaka, “The New New Product Development Game”, Harvard Business Review, Tháng 1 - 1986.

“Hướng tiê8p cận…‘chạy tiê8p sức’ đê! phát triê!n sa!n phẩ!m…có thê! xung đột với những mục tiêu vêG tố8i đa tố8c độ và sự uyê!n chuyê!n. Thay vào đó hướng tiê8p cận ‘Bóng bẩGu dục’—các thành viên cùng tung hứng—có lẽ sẽ phục vụ tố8t hởn cho các nhu cẩGu cạnh tranh ngày nay.”

Chúng ta đang thua trong cuộc chạy tiê8p sức

Page 4: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

•Scrum là quy trình nhanh gọn nhằm tập trung đưa ra thành phẩ!m với giá trị sư! dụng cao nhất, trong thời gian ngắn nhất.•Nhằm kiê!m tra nhanh và lặp lại phần mềm thực

sự hoạt động được (2 tuần 1 tháng)•Khách hàng xác lập độ ưu tiên. Nhóm tự tổ chức để xác

định cách tốt nhất để thực hiện các chức năng được ưu tiên cao nhất.•Mỗi 2 tuần đến 1 tháng, mỗi người có thể thấy phần mềm

thực sự hoạt động và quyết định phát hành hay tiếp tục mở rộng trong sprint sau.

Scrum trong 100 từ

Page 5: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

NguốGn gố8c cu!a Scrum• Jeff Sutherland• Bắ8t đẩGu scrums tại Easel Corp,

1993

• IDX với hởn 500 người thực hành Scrum

• Ken Schwaber• ADM

• Scrum được trình bày tại OOPSLA 95 với Sutherland

• Tác gia! cu!a 3 tập sách vêG Scrum

• Mike Beedle• Scrum patterns trong PLOPD4

• Ken Schwaber & Mike Cohn• ĐốGng sáng lập Scrum Alliance nắm

2002, khở!i nguốGn từ Agile Alliance

Page 6: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Scrum được sư! dụng bở!i:•Microsoft•Yahoo•Google•Electronic Arts•High Moon Studios•Lockheed Martin•Philips•Siemens•Nokia•Capital One•BBC•Intuit

•Intuit•Nielsen Media•First American Real Estate•BMC Software•Ipswitch•John Deere•Lexis Nexis•Sabre•Salesforce.com•Time Warner•Turner Broadcasting•Oce

Page 7: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Scrum được sư! dụng trong:

• PhẩGn mêGm thưởng mại

• Phát triê!n phẩGn mêGm trong cống ty

• Phát triê!n phẩGn mêGm theo hợp đốGng

• Các dự án đốGng giá

• Ứng dụng kê8 toán

• Các ứng dụng đạt chứng nhận ISO 9001

• Hệ thố8ng nhúng

• Hệ thố8ng 24x7 với yêu cẩGu đạt thời gian vận hành 99.999%

• Dự án Joint Strike Fighter cho máy bay chiê8n đẩ8u cu!a Mỹ, Anh,Canada

•Phát triê!n Video game•Hệ thố8ng liên quan đê8n nhẩn mạng được FDA phê chuẩ!n

•PhẩGn mêGm điêGu khiê!n vệ tinh

•Websites•PhẩGn mêGm cho các dụng cụ cẩGm tay

•Điện thoại di động•Ứng dụng chuyê!n mạng•Ứng dụng ISV•Một số8 ứng dụng lớn khác

Page 8: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Đặc điê!m

• Nhóm tự qua!n

• Sa!n phẩ!m tiê8n triê!n trong một chuốmi các giai đoạn dài khoa!ng 1 tháng gọi là 1 “cuộc chạy nước rút” (sprints)

• Yêu cẩGu được miêu ta! thành một danh sách “đởn hàng sa!n phẩ!m” (product backlog)

• Khống có kỹ thuật thực hành cụ thê! theo quy định

• Sư! dụng luật sinh đê! tạo mối trường nhanh gọn nhằm phát hành sa!n phẩ!m

• Một loại “quy trình nhanh gọn”

Page 9: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Ba!n tuyên ngốn Agile – Tuyên bố8 vêG các giá trị

Quy trình và cống cụ

Các cá nhẩn với sự tưởng tác

vượt trên

Theo kê8 hoạchDêm thay đố!i

Source: www.agilemanifesto.org

Tài liệu dài dòng

PhẩGn mêGm hoạt động được

Thưởng lượng hợp đốGng

Sự cộng tác cu!a khách hàng

vượt trên

vượt trên

vượt trên

Page 10: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Cẩ8p độ nhiêmu cu!a dự án

Đởn gia!n

Rẩ8t phức tạpHốmn loạn

Phức tạp

Cống nghệ

Yêu cẩGu

Khác xa tho!a thuận

GẩGn đúng với tho!a thuận

Chắ8c

chắ8n

Khống

chắ8c

NguốGn: Strategic Management and Organizational Dynamics T/g: Ralph Stacey trong tập sách Agile Software

Development with Scrum, Tác gia!: Ken Schwaber & Mike Beedle.

Page 11: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Lưu ý: Thuật ngữ (ND)• Sprint backlog

• Danh sách chức nắng cẩGn thực hiện trong 1 sprint

• Product backlog

• Danh sách toàn bộ chức nắng cẩGn thực hiện

• Daily scrum

• Họp nhanh, báo cáo tiê8n độ mốmi ngày

• User Story

• Phát biê!u yêu cẩGu chức nắng theo hướng tiê8p cận cu!a người sư! dụng

Page 12: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Scrum

Cancel

Gift wrap

Return

Sprint2-4 tuẩGn

Return

Mục tiêu trong Sprint

Sprint backlog Sa!n phẩ!m tiêGm nắng

Product backlog

CouponsGift wrap

Coupons

Cancel

24 giờ

Page 13: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Tố!ng quát quy trình

Họp hàng ngày

Sprint backlog

Sa!n phẩ!m tiêGm nắng

Product backlog

giờ

Tuầ�n

Page 14: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Sprints

• Các dự án Scrum tiê8n triê!n qua một chuốmi các “sprints”

• Như các lẩGn lặp cu!a Extreme Programming

• Độ dài từ 2–4 tuẩGn hoặc khoa!ng 1 tháng

• Một khoa!ng thời gian khống đố!i tạo nên một nhịp điệu

• Sa!n phẩ!m được thiê8t kê8t, viê8t mã và kiê!m định trong sprint

Page 15: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Phát triê!n tuẩGn tự vs. Phát triê!n chốGng lặp

Source: “The New New Product Development Game” by Takeuchi and Nonaka. Harvard Business Review, January 1986.

Thay vì chỉ! làm một cống việc tại một thời điê!m… ...Nhóm Scrum lúc nào

cũng thực hiện một chút cu!a mọi việc

Page 16: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Khống thay đố!i trong một sprint

• Kê8 hoạch sprint trong khoa!ng thời gian sao cho khống có sự thay đố!i nào (vêG yêu cẩGu/ chức nắng -ND) trong mốmi sprint

Thay đố!i

Page 17: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Kiê8n trúc Scrum

•Product owner•ScrumMaster•Nhóm

Vai trò

•Lập kê8 hoạch Sprint•Tố!ng kê8t Sprint•Rút kinh nghiệm Sprint•Họp scrum hàng ngày

Nghi thức

•Product backlog•Sprint backlog•ĐốG thi Burndown

Cống cụ

Page 18: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Scrum framework

•Lập kê8 hoạch Sprint•Tố!ng kê8t Sprint•Rút kinh nghiệm Sprint•Họp scrum hàng ngày

Ceremonies

•Product backlog•Sprint backlog•ĐốG thị Burndown

Artifacts

•Product owner•ScrumMaster•Nhóm

Vai trò

Page 19: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Product owner

• Xác định tính nắng cu!a sa!n phẩ!m

• Quyê8t định ngày và nội dung cho mốmi lẩGn phát hành

• Chịu trách nhiệm vêG lợi nhuận cu!a sa!n phẩ!m (ROI)

• Xác định độ ưu tiên cho các chức nắng dựa trên số8

liệu thị trường

• Thay đố!i độ ưu tiên và chức nắng cho mốmi lẩGn lặp

(nê8u cẩGn) 

• Chẩ8p nhận hay loại bo! kê8t qua! cống việc

Page 20: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

ScrumMaster

• Đại diện qua!n lý dự án

• Chịu trác nhiệm đưa ra các giá trị và thực hành theo Scrum

• Gia!i quyê8t các khó khắn

• Ba!o đa!m nhóm hoạt động hê8t cống suẩ8t và hiệu qua!

• Tạo sự hợp tác chặt chẽ giữa các vai trò, chức nắng

• Giúp nhóm tránh kho!i sự can thiệp từ bên ngoài

Page 21: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Nhóm

•Thường từ 5 – 9 người

•Vai trò đan xen nhau:• Lập trình viên, kiê!m định viên, thiê8t kê8

user experience, etc.

•Pha!i là thành viên toàn thời gian• Có thê! có ngoại lệ (ví dụ: qua!n trị CSDL)

Page 22: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Nhóm

•Tự qua!n

• Tố8t nhẩ8t là khống có chức danh, đối khi, rẩ8t hiê8m cũng có thê! có

•Thành viên nhóm chỉ! nên thay đố!i giữa các sprints (khống đố!i trong suố8t 1 sprint – ND)

Page 23: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

•Product owner•ScrumMaster•Team

Roles

Kiê8n trúc Scrum

•Product backlog•Sprint backlog•ĐốG thị Burndown

Artifacts

•Lập kê8 hoạch Sprint•Tố!ng kê8t Sprint•Rút kinh nghiệm Sprint•Họp scrum hàng ngày

Nghi thức

Page 24: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Họp lập kê8 hoạch Sprint

Mục tiêuSprint

Sprint

backlog

Các điêGu kiện

Kha! nắng cu!a nhóm

Product backlog

Cống nghệ

Sa!n phẩ!m hiện tại

Page 25: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Lập kê8 hoạch Sprint• Nhóm chọn ra các mục có thê! cam kê8t hoàn tẩ8t từ Product Backlog

• Sprint backlog được tạo ra• Các tác vụ được xác định và ước lượng

thời gian hoàn tẩ8t (1-16 giờ)

• Cộng tác, khống pha!i là việc riêng cu!a ScrumMaster

• Thiê8t kê8 ở! cẩ8p cao

Là người lên kế hoạch kỳ nghỉ, tôi

muốn thấy hình ảnh của các khách sạn.

Là người lên kế hoạch kỳ nghỉ, tôi

muốn thấy hình ảnh của các khách sạn.

Viê8t code chức nắng (8 hours)Viê8t code giao diện (4)Viê8t cở cẩ8u kiê!m định (4)Viê8t code lớp foo(6)Cập nhật các kiê!m định hiệu suẩ8t (4)

Page 26: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Họp scrum hàng ngày

•Thống số8• Hàng ngày

• 15 phút

• Họp đứng

•Khống pha!i đê! gia!i quyê8t vẩ8n đêG• Ai cũng có thê! tham dự

• Chỉ! có thành viên nhóm, ScrumMaster, product owner được nói

•Đê! tránh các cuộc họp khống cẩGn thiê8t khác

Page 27: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Mốmi người tra! lời 3 cẩu

•Khống pha!i đê! báo cáo cho ScrumMaster• Mà là cam kê8t với mọi người (vêG cống việc – ND)

Tôi đã làm gì hôm trước?1

Tôi sẽ làm gì hôm nay?2

Các trở ngại?3

Page 28: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Họp tố!ng kê8t sprint

•Nhóm trình bày những gì đã đạt được

•Thường theo kiê!u trình diêmn các chức nắng hoặc kiê8n trúc mới

•Khống chính thức• Chuẩ!n bị trong 2 giờ

• Khống dùng slides

•Toàn bộ nhóm tham dự•Mời thêm bẩ8t cứ ai

Page 29: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Họp rút kinh nghiệm Sprint•Định kỳ xem xét cái được/ chưa được

•Thường từ 15–30 phút•Thực hiện sau mốmi sprint•Toàn bộ nhóm tham dự• ScrumMaster

• Product owner

• Nhóm

• Có thê! có khách hàng và những vai trò khác

Page 30: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Bắ8t đẩGu / Kê8t thúc/ Tiê8p tục

•Nhóm tha!o luận những điêGu mà mình muố8n:

Bắ8t đẩGu thực hiệnKhống thực hiện

nữaTiê8p tục thực

hiện

Page 31: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

•Product owner•ScrumMaster•Team

Roles

Kiê8n trúc Scrum

•Sprint planning•Sprint review•Sprint retrospective•Daily scrum meeting

Ceremonies

•Product backlog•Sprint backlog•ĐốG thị Burndown

Cống cụ

Page 32: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Product backlog•Là các yêu cẩGu•Danh sách chức nắng mong muố8n cu!a dự án

•Trường hợp lý tưở!ng, sẽ thê! hiện mốmi mục mang một giá trị cụ thê! cho người sư! dụng hay khách hàng cu!a sa!n phẩ!m

•Được thiê8t lập độ ưu tiên bở!i product owner

•Ở! mốmi sprint, sẽ được thiê8t lập lại độ ưu tiên

Đẩy là product backlog

Đẩy là product backlog

Page 33: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Một ví dụ product backlog

Các mụcƯớc tính

Cho phép khách đặt chốm 3Là một khách hàng, tối muố8n hu!y đặt chốm

5

Là khách hàng, tối muố8n đố!i ngày đặt chốm.

3

Là nhẩn viên khách sạn, tối có thê! tạo báo cáo RevPAR (revenue-per-available-room)

8

Ca!i tiê8n xư! lý ngoại lệ 8... 30... 50

Page 34: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Mục tiêu cu!a sprint•Phát biê!u ngắ8n vêG cống việc sẽ tập trung trong sprint. Ví dụ:

Ứng dụng CSDL

Dịch vụ tài chính

Khoa học đời số8ngHốm trợ chức nắng cẩGn thiê8t cho nghiên cứu dẩn số8 di truyêGn học

Hốm trợ nhiêGu chỉ! số8 kỹ thuật hởn cống ty ABC. Hốm trợ thời gian thực và streaming dữ liệu

Cho phép ứng dung chạy với SQL Server bên cạnh Oracle.

Page 35: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Qua!n lý sprint backlog

• Mốmi người tự đắng ký cống việc cho mình

• Cống việc sẽ khống được phẩn cống

• Mốmi ngày sẽ cập nhật thời gian dự trù hoàn tẩ8t cống việc

Page 36: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Qua!n lý sprint backlog

• Mọi thành viên có thê! thêm, xóa, thay đố!i sprint backlog

• Thê! hiện cống việc cho sprint

• Nê8u cống việc khống rõ ràng, nên đưa vào sprint backlog với thời gian nhiêGu hởn và chia nho! đê! thực hiện

• Cập nhật cống việc còn lại khi hiê!u thêm vêG cống việc đó

Page 37: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Một ví dụ sprint backlog

Cống việcCống việcViê8t code giao diện

Viê8t code chức nắng

Kiê!m thư! chức nắngViê8t trợ giúp trực tuyê8nViê8t lớp foo

MonMon8

16

8

12

8

TuesTues4

12

16

8

WedWed ThurThur

4

11

8

4

FriFri

8

8

Thêm ghi chép lốmi

8

10

16

8

8

Page 38: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Một ví dụ đốG thị sprint burndown

Giờ

Page 39: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Giờ

40

30

20

10

0Mon Tue Wed Thu Fri

Cống việcCống việcViê8t code giao diệnViê8t code chức nắngKiê!m tra chức nắngViê8t trợ giúp trực tuyê8n

MonMon8

16

8

12

TuesTues WedWed ThurThur FriFri4

12

16

7

11

8

10

16 8

50

Page 40: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Kha! nắng mở! rộng

• Thống thường, mốmi nhóm có 7 ± 2 người

• Kha! nắng mở! rộng tùy từng nhóm

• Các yê8u tố8 trong mở! rộng

• Loại ứng dụng

• Độ lớn cu!a nhóm

• Độ phẩn tán cu!a nhóm

• Độ dài cu!a dự án

• Scrum từng được sư! dụng trong các dự án trên 500 người

Page 41: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Mở! rộng bằng cách tố! chức theo Scrum cu!a các scrums

Page 42: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Scrum cu!a scrums cu!a scrums

Page 43: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Xem thêm

•www.mountaingoatsoftware.com/scrum

•www.scrumalliance.org

•www.controlchaos.com

[email protected]

Page 44: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Đọc thêm• Agile and Iterative Development: A

Manager’s Guide t/g Craig Larman

• Agile Estimating and Planning t/g Mike Cohn

• Agile Project Management with Scrum t/g Ken Schwaber

• Agile Retrospectives t/g Esther Derby và Diana Larsen

Page 45: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Đọc thêm• Agile Software Development Ecosystems t/g

Jim Highsmith

• Agile Software Development with Scrum t/g Ken Schwaber vàMike Beedle

• Scrum and The Enterprise t/g Ken Schwaber

• Succeeding with Agile t/g Mike Cohn

• User Stories Applied for Agile Software Development t/g Mike Cohn

Page 46: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

QuyêGn sở! hữu

•Miêmn phí:• Chia se! ―sao chép, phẩn phát, chuyê!n giao

• Thay đố!i―đê! đáp ứng cống việc

•Theo các điêGu kiện• Ghi công. Bạn phải ghi công tác phẩm theo cách thức quy định của

tác giả hoặc người cấp phép (nhưng không hàm ý họ chứng thực bạn hoặc việc sử dụng tác phẩm của bạn).

•QuyêGn cu!a tác gia! vẩmn là cao nhẩ8t

• Đê! có thêm thống tin http://creativecommons.org/licenses/by/3.0/

Page 47: Mountain Goat Software, LLC. Mountain Goat Software, LLC Trình bày bởi

Mountain Goat Software, LLC

Thống tin liên lạcMike Cohn

[email protected]

www.mountaingoatsoftware.com

(720) 890-6110 (office)

Mike Cohnmike@mountaingoatsoftwar

e.comwww.mountaingoatsoftware

.com(720) 890-6110 (office)Bạn có thể, xóa phầ/n này

hay bầ2t cứ slide nào

nhưng bạn pha,i ghi rõ

nguồ/n thồng tin trong bài

trình bày cu,a bạn. Đặt

logo và tển cồng ty (ở,

góc trái bển dưới) hoặc

dành riểng một slide nểu

rõ nội dung (hay một phầ/n

nội dung) là từ nguồ/n

này. Xin ca,m ởn.