28
Chúng tôi thực hành Scrum như thế nào KhoaNV – [email protected]

ScrumLab

Embed Size (px)

Citation preview

Page 1: ScrumLab

Chúng tôi thực hành

Scrum như thế nào

KhoaNV – [email protected]

Page 2: ScrumLab

Chúng tôi thực hành Scrum như thế nào 2

Nội dungO Giới thiệuO Công tác chuẩn bịO Bố trí phòng làm việcO Product BacklogO Xây dựng Sprint BacklogO Họp Scrum Hằng ngàyO Sơ kết SprintO Cải tiến SprintO Thành quả đạt được

Page 3: ScrumLab

Chúng tôi thực hành Scrum như thế nào 3

Giới thiệuO ScrumLab: Nơi học tập, thực hành và trải nghiệm

các dự án phát triển phần mềm với agile\ScrumO Nhóm Z: Phát triển một ứng dụng In-House,

Nhóm gồm 4 thành viên (01 PO, 01 Scrum Master kiêm Dev, 02 Dev). Làm việc vào các buổi chiều 3, 5, 7 hằng tuần (13h30 – 17h30).

O Z đã triển khai dự án ngay từ đầu với Scrum, sau gần 01 năm thực hành với 09 Sprint, độ dài Sprint ban đầu là 3 tuần (9 buổi làm việc) rút xuống còn 2 tuần (6 buổi làm việc).

O Bài trình bày mô tả lại cách Nhóm chúng tôi đã triển khai Scrum tại ScrumLab.

Page 4: ScrumLab

Chúng tôi thực hành Scrum như thế nào 4

Công tác chuẩn bị (1)OScrum Course(4/2011)

Page 5: ScrumLab

Chúng tôi thực hành Scrum như thế nào 5

Công tác chuẩn bị (2)OĐồ nghề: Bảng trắng, Planning

Poker, Index Card, Sticky Note, Bút màu, Giấy trắng, .v.v.

Page 6: ScrumLab

Chúng tôi thực hành Scrum như thế nào 6

Công tác chuẩn bị (3)OCác giá trị cốt lõi của agile\Scrum

luôn hiện diện trong ScrumLab

Page 7: ScrumLab

Chúng tôi thực hành Scrum như thế nào 7

Công tác chuẩn bị (4)OHạ tầng

O Công nghệ phát triển: Java EE 6\JSF 2.0

O Hệ quản trị CSDL: MySQLO Application Server: GlassfishO SVN: Server\ClientO Hudson CIO Redmine

Page 8: ScrumLab

Chúng tôi thực hành Scrum như thế nào 8

Bố trí phòng làm việcBảng công việc

Bàn làm việcTủ sách\tài liệu

Bảng phụ

Biểu đồ Burndown

User Story

Page 9: ScrumLab

Chúng tôi thực hành Scrum như thế nào 9

Product BacklogDự án Z

Page 10: ScrumLab

Chúng tôi thực hành Scrum như thế nào 10

Xây dựng Sprint Backlog (1)OTổ chức Họp kế hoạch Sprint

O Thành phần: PO, SM, Dev (không ai được vắng mặt)

O Khung thời gian: 3 tiếng (Sprint 3 tuần)\2 tiếng (Sprint 2 tuần)

OXây dựng Sprint BacklogO PO xác định Mục tiêu Sprint (Sprint

Goal)O Lựa chọn Story có độ ưu tiên cao từ

Product Backlog và mọi người đều phải hiểu rõ về các Story được đó.

Page 11: ScrumLab

Chúng tôi thực hành Scrum như thế nào 11

Xây dựng Sprint Backlog (2)

O User Story được bổ sung thông tin ở mặt sau

Page 12: ScrumLab

Chúng tôi thực hành Scrum như thế nào 12

Xây dựng Sprint Backlog (3)

O User Story được phân tách thành hạng mục công việc

User Story

Hạng mục công việc

Page 13: ScrumLab

Chúng tôi thực hành Scrum như thế nào 13

Xây dựng Sprint Backlog (4)

O Nhóm chơi Poker để Ước tính thời gian cho các hạng mục công việc được tách nhỏ từ Story

Page 14: ScrumLab

Chúng tôi thực hành Scrum như thế nào 14

Xây dựng Sprint Backlog (5)

O Sprint Backlog hoàn chỉnh trên Bảng công việc (task board)

Mục tiêu Sprint

Page 15: ScrumLab

Chúng tôi thực hành Scrum như thế nào 15

Các quy tắc, thỏa thuận làm việcO Định nghĩa hoàn thànhO Thỏa thuận làm việc

Page 16: ScrumLab

Chúng tôi thực hành Scrum như thế nào 16

Nộp trứng!O Không đúng giờ\Vắng mặtO Gây lỗi SVN

1 trứng = 50K

Page 17: ScrumLab

Chúng tôi thực hành Scrum như thế nào 17

Họp Scrum Hằng ngàyO Thời gian cố định: 13h30 các ngày thứ 3,

5, 7O Địa điểm cố định: ScrumLabO Nhân sự: Scrum Master và Nhóm Phát

triển, đôi khi có sự tham dự của POO Đảm bảo khung thời gian (không quá 15

phút)O Đứng họp và sử dụng bóng để luân phiênO Đảm bảo chỉ trả lời 03 câu hỏiO Cập nhật Sprint Backlog (Bảng công việc)

và biểu đồ Sprint Burndown

Cập nhật

Sprint B

acklog

Cập nhật

Sprint B

urndown

Page 18: ScrumLab

Chúng tôi thực hành Scrum như thế nào 18

Sơ kết SprintO Tổ chức

O Tiến hành sau khi Sprint kết thúcO Thành phần: PO, SM, Nhóm Phát triển, các

bên liên quan (đôi khi được mời)O Tiến hành nhanh gọn trong vòng một tiếng,

không chuẩn bị nhiềuO Tiến hành

O Trình bày các phần tăng trưởng đã hoàn thành

O Ghi nhận các phản hồi

Page 19: ScrumLab

Chúng tôi thực hành Scrum như thế nào 19

Cải tiến SprintO Tổ chức ngay sau Sơ kết Sprint (cùng buổi chiều)O Rà soát lại toàn bộ Sprint vừa qua, tập trung vào

những gì đã làm tốt\dở trong Sprint vừa rồiO Xác định các hành động cải tiến trong Sprint tiếp

theoO Những điều nhận được từ các buổi Họp Cải tiến

Sprint:O Ước tính điểm cho User StoryO Tách các công việc đủ nhỏO Làm các bản mẫu ngay từ đầuO Chiến thuật chọn task Hướng-Mục-tiêu-SprintO V.v.

Page 20: ScrumLab

Chúng tôi thực hành Scrum như thế nào 20

Một số vấn đềO Thất bại với Sprint đầu tiên

O Nhóm làm việc không Hướng-Mục-tiêu-Sprint

O Cộng tác kém với POO Không làm bản mẫu (prototype)

O Chưa sử dụng các công cụ đo để xác định Tốc độ của Nhóm

O Định nghĩa Hoàn thành ít được cải tiếnO Kiểm thử Tích hợp thực hiện chưa tốt

Page 21: ScrumLab

Chúng tôi thực hành Scrum như thế nào 21

Thành quả (1)OCode chất lượng hơnOCộng tác Nhóm ngày càng chặt chẽOThực hành thuần thục các kỹ thuật:

Lập trình cặp, Phát-triển-Hướng-Kiểm-thử (TDD), Tái cấu trúc Mã nguồn (Code Refactoring)

OPhát hành được sản phẩm cuối mỗi Sprint

Page 22: ScrumLab

Chúng tôi thực hành Scrum như thế nào 22

Thành quả (2)O Ngày bắt đầu dự án: 23/04/2011O Ngày kết thúc dự án: 15/04/2011O Sprints: 09O Số giờ làm việc : ~948h = 118 man-

month (chỉ tính giờ của Dev)O Phát hành có giá trị: 04O Tổng số bug phát hiện sau khi phát hành

04 bản trên: 50

Version 1.0

Page 23: ScrumLab

Chúng tôi thực hành Scrum như thế nào 23

Thống kê (1)O Alpha 1 - 20/09/2011

O Feature: 23O Document: 03 (DB Design, Install Guide,

User Guide)O Sprint phát hành: 5O Bug: 13 O Code:

O Class: 279 (41 Testing Class)O GUI: 280 file(XHTML\CSS\JS\Image)

Page 24: ScrumLab

Chúng tôi thực hành Scrum như thế nào 24

Thống kê (2)O Beta 1 - 17/10/2011

O Feature: 30O Document: 03 (DB Design, Install Guide,

User Guide) được cập nhật mớiO Sprint phát hành: 6O Bug: 04O Code:

O Class: 279 (41 Testing Class)O GUI: 276 file (XHTML\CSS\JS\Image)O Line of Code (LOC): 33292O Methods: 2276

Page 25: ScrumLab

Chúng tôi thực hành Scrum như thế nào 25

Thống kê (3)O Beta 2 - 02/03/2012

O Feature: >30O Document: 03 (DB Design, Install Guide,

User Guide) được cập nhật mớiO Sprint phát hành: 7O Bug: 23O Code:

O Class: 340 (43 Testing Class)O GUI: 299 file (XHTML\CSS\JS\Image)O Line of Code (LOC): 39540 O Methods: 2593

Page 26: ScrumLab

Chúng tôi thực hành Scrum như thế nào 26

Thống kê (4)O 1.0 - 15/04/2012

O Feature: >30O Document: 04 (DB Design, Install Guide, User

Guide, Webservice User Guide)O Online Support SiteO Sprint phát hành: 9O Bug: 10O Code:

O Class: 340 (44 Testing Class)O GUI: 320 file (XHTML\CSS\JS\Image)O Line of Code (LOC): 40903O Methods: 2667

Page 27: ScrumLab

Chúng tôi thực hành Scrum như thế nào 27

Hỏi đáp

Page 28: ScrumLab

Chúng tôi thực hành Scrum như thế nào 28

Xin cảm ơn!

Thông tin liên hệ: Nguyễn Việt KhoaO ScrumLab - FPT–APTECH Hà NộiO Email: [email protected] Điện thoại: 0912 151 629