1. Scrum là gì?
Bạn đã hiểu rằng mọi thứ liên quan đến phát triển đều được tiêu chuẩn hóa rồi đúng không? Còn nếu tôi nói với bạn rằng tất cả đều được tiêu chuẩn hóa? Và điều này không chỉ về tên biến và hàm, mặc dù chúng cũng được tiêu chuẩn hóa🤦♂️.
Có một phương pháp phát triển — gọi là Agile và một trong những cách thực hiện phổ biến của nó là Scrum. Scrum còn gọi là framework — nó xác định tất cả các quy trình trong nhóm. Khi nào họp, ai tham gia, nội dung thảo luận, kết quả của cuộc họp cần ghi lại như thế nào 📋.
"Nhưng sao lại cần nhiều tiêu chuẩn thế", — bạn hỏi vậy. Thứ nhất, bạn làm việc trong lĩnh vực công nghệ cao — high-tech, mọi thứ đều hiện đại. Thứ hai, như vậy làm việc với nhau dễ hơn. Và thứ ba, trong tên nghề của bạn là .NET Software Engineer — chú ý từ cuối cùng — kỹ sư. Và bạn sẽ hiểu nguồn gốc của nó.
2. Công việc theo Scrum trông thế nào
Scrum là một phương pháp quản lý dự án linh hoạt, thường dùng trong phát triển phần mềm. Dựa trên các quy trình lặp lại và gia tăng dần 🔁
Scrum chia dự án thành các chu kỳ/phần phát triển gọi là sprint, thường kéo dài từ hai đến bốn tuần. Mỗi sprint bắt đầu bằng việc lập kế hoạch các nhiệm vụ cần hoàn thành, và kết thúc bằng buổi trình bày, nơi nhóm thể hiện kết quả đạt được 🎯.
Các thành phần chính của Scrum gồm vai trò, sự kiện và artefact.
- Vai trò chính — là Product Owner, người xác định yêu cầu của sản phẩm, Scrum Master, người hỗ trợ quy trình theo đúng quy tắc Scrum, và nhóm phát triển, thực hiện công việc.
- Sự kiện chính — là các cuộc họp hàng ngày (daily meetings hoặc daily stand-up), lập kế hoạch sprint, retrospective và demo kết quả công việc.
- Artefact gồm backlog (danh sách nhiệm vụ) của sản phẩm, backlog sprint và phần gia tăng của sản phẩm 📋.
Đừng lo! Dù việc quy định mọi thứ có vẻ hơi đáng sợ, làm việc theo Scrum rất dễ và vui vẻ. Scrum đã giúp giải quyết xung đột chính giữa các nhà phát triển và khách hàng/owner sản phẩm 🤗
Các nhà phát triển luôn muốn yên tĩnh để làm việc thoải mái. Còn owner sản phẩm thì cần thêm tính năng mới, muốn thay đổi gì đó hoặc thử nghiệm 🧪.
Scrum chia nhỏ quá trình phát triển thành các giai đoạn ổn định — gọi là sprint (thường 2 tuần). Trong suốt sprint, các nhà phát triển chỉ làm những nhiệm vụ đã được lên kế hoạch cho sprint đó. Nếu khách hàng cần gấp gì đó, họ sẽ thêm vào sprint kế tiếp 🗓️.
3. Sprint & Scrum Board
Sprint là chu kỳ phát triển chính trong Scrum, kéo dài từ 1 đến 4 tuần. Như đã nói, trong thời gian này, nhóm làm việc theo một danh sách nhiệm vụ cụ thể trong backlog của sản phẩm.
Vào đầu mỗi sprint, sẽ có lập kế hoạch ⏳, nơi nhóm chọn các nhiệm vụ từ backlog của sản phẩm và cam kết hoàn thành chúng. Sprint kết thúc bằng việc trình bày kết quả đã làm và retrospective, nơi nhóm phân tích quá trình làm việc trong sprint và tìm cách cải thiện cho sprint tiếp theo. Cách này giúp cập nhật sản phẩm thường xuyên, phản ứng nhanh với các thay đổi về yêu cầu và ưu tiên.
Trong suốt sprint, các nhà phát triển và owner sản phẩm cần họp để bàn về các nhiệm vụ cho sprint tiếp theo.
Backlog 📚, hay danh sách nhiệm vụ, là danh sách tất cả các công việc cần làm. Trong Scrum, có backlog của sản phẩm — gồm tất cả yêu cầu của sản phẩm (tính năng), và backlog của sprint — gồm các nhiệm vụ đã chọn để thực hiện trong sprint hiện tại. Backlog là tài liệu sống, thường xuyên cập nhật và xem xét để phù hợp với mục tiêu kinh doanh và thị trường.
Người ta thích hiển thị backlog của sprint hiện tại dưới dạng Scrum Board ✅ — một bảng gồm các nhiệm vụ và trạng thái của chúng. Bảng chia thành các cột, thường thể hiện các giai đoạn như "Chờ thực hiện", "Đang làm", "Đang kiểm tra" và "Hoàn thành". Điều này giúp cả nhóm dễ dàng theo dõi tiến trình và phát hiện các khó khăn trong quá trình làm việc.
GO TO FULL VERSION