Xin chào mọi người. Lại 1 năm rồi mới viết bài.
Dạo gần đây mình đọc được cũng kha khá bài về Scrum ở Viblo nhưng khổ nỗi bài nào cũng nếu không phải dịch từ Scrum Guide thì cũng là trích giáo trình Scrum của bên đào tạo về Scrum/Agile uy tín nhất VN hiện nay. Nội dung của 2 cái này thì hầu như là lý thuyết giống nhau nên mình có cảm tưởng ở đây toàn có lý thuyết thôi chứ chưa chắc mọi người đã hiểu và thực hành đúng(mà thực tế với bệnh nghề nghiệp hay phải mượn code chỗ này vá code chỗ kia thì khả năng lỗi cherry-pick Scrum phổ biến vô cùng). Thế nên mình sẽ viết bài này chia sẻ cho các bạn.
Phạm vi để áp dụng Scrum
Ở cty hiện tại, mình chưa lead 1 dự án nào và có quá nhiều vấn đề trong cuộc sống nên ít nhất dùng kiểm soát cuộc sống ưa tự do hơi quá cái đã.
Và ở đây, để áp dụng thì mình cần phải có 1 cái Product. Mình quyết định setup các mục tiêu trong đời sống thành các product bởi nó cụ thể và có thể định nghĩa được. Nếu như chọn 1 cái product quá mơ hồ thì bạn sẽ mất rất nhiều thời gian cho công đoạn làm rõ nó(cái này sát nhất chắc là công đoạn backlog refinement), hoặc nó quá to khiến product đổ bể. Ví dụ cụ thể ở đây là Professional Scrum Master level 2.
Sprint Planning
Ở bước này thì mình chắc chắn sẽ gặp khó. Lúc mình học để thi PSM 2, mình có những khó khăn gồm: hoàn toàn đi làm fulltime, tuần 3 buổi học tiếng Nhật online tối, thứ 7 và chủ nhật quá mệt để học nên đi chơi, cày phim Siêu nhân, ngủ,.... Nên mình có tối đa 2 buổi tối trong tuần để học và phải tận dụng triệt để 3 tiếng buổi tối từ 8 giờ tới 11 giờ. Về budget cho dự án thì mình chỉ có tiền để thi 1 lần duy nhất thôi. Thi lần 2 thì phải sang tháng sau. Thuận lợi là mình đã có kiến thức sẵn sau 1 năm rưỡi kinh nghiệm làm việc với Scrum/Kanban và bằng PSM level 1 rồi. Vậy nên mình đã lên kế hoạch để học trong vòng 1 tháng. Với các tối học tiếng Nhật thì học xong chịu khó thức làm bài tập nốt, với các tối học Scrum thì tận dụng tối đa thời gian. Từ đó mình lên kế hoạch, chia nhỏ ra các task rồi sau đó lên kế hoạch để làm trong tuần đầu tiên. Sprint Goal tuần đó của mình là tìm được vài bộ đề để luyện tập và làm được ít nhất 1 đề. Definition of Done được set là làm được đúng nhiều câu hỏi(>70%) của các bộ đề ấy. Và timebox các task mình đã đặt ra.
Ngoài ra việc ôn thi chứng chỉ này cũng đặc thù nên mình đã xem có bao nhiêu câu hỏi khi thi, thời gian làm bài là bao nhiêu. Từ đó cũng đặt 1 timebox lỏng cho lần ôn Sprint 1. Tuy nhiên chắc chắn Sprint 2 và Sprint 3 mình sẽ để nó là timebox chặt và đưa vào DoD(Sao nghe cứ hao hao performance quality ấy nhể :v )
Daily Scrum
Mình chia các task vào 1 bảng kanban đơn giản gồm To Do, In Progress và Done. Tất cả các task mình ném vào To Do. Khi đang làm cái nào thì mình kéo từ To Do sang In Progress và bắt đầu làm. Trước mỗi tối học mình quan sát bảng Kanban xem đã xong được phần nào, chưa xong phần nào và đang dang dở cái gì để từ đó biết hôm nay mình phải làm gì và clear cái gì trước tiên
Sprint Review
Đây là bước mình xem lại kết quả test mình đã làm thử so với Sprint Goal xem đã đạt hay chưa. Tất nhiên quá trình học của mình thì toàn đạt được Sprint Goal nên cũng khá đơn giản. Nhưng nếu Sprint Goal không đạt được thì mình sẽ phải có sự điểu chỉnh. Cách review ở đây cụ thể là mình đã làm được bao nhiêu, thời gian tổng mình làm là bao nhiêu, nếu chia ra thì liệu khi đi thi thế có đáp ứng được thời gian không....
Ở bước này mình xác định được luôn còn bao lâu để đạt được Product hoàn chỉnh và sau đó lưu kq cho phần Retro và phần Planning tiếp theo.
Sprint Retrospective
Đây là bước mình lấy kết quả từ Sprint Review để đánh giá, chỉnh sửa lại Definition of Done. Well, rất may mắn là kq của mình cũng ổn ổn nên mình đã tự nâng DoD lên từ 70% lên 80% rồi 100%, đồng thời cũng đặt timebox để quyết tâm chỉ cần 1 lần là xong(hay thuật ngữ chuyên ngành là release bản cuối)
Kết quả
Cứ như vậy thì mình chỉnh mục tiêu để phù hợp hoàn cảnh, nhưng tuân thủ tuyệt đối Definition of Done và không đổi Sprint Goal của bản thân dù bất cứ giá nào và chưa có lần nào huỷ Sprint cả. Kết qủa thì mình đạt được là đây
Tất nhiên ở đây bằng cấp cũng chỉ là phụ, Quan trọng các bạn phải hiểu Scrum và thực hiện được Scrum trong phạm vi nào đó mình kiểm soát được thì Scrum mới thực sự hiệu quả
Bài viết lần này hơi ngắn nhưng rất mong các bạn có thể tham khảo và áp dụng được Scrum hiệu quả