Làm trong các công ty phần mềm, bạn sẽ nghe đi nghe lại mấy chữ này Scrum, Agile, planning poker, Stand up, Sprint. Nó là những thuật ngữ được dùng ám chỉ một quy cách tổ chức công việc, xét độ ưu tiên, và phân phối những công việc này giữa các thành viên trong team.
Agile và Scrum
Agile và Scrum hay đi chung, nhưng nó khác nhau (không lớn lắm).
- Agile là phương pháp được sáng tạo bởi Agile Manifesto, nó là lý thuyết nền tảng
- Scrum là một framework hiện thực hóa từ đóng lý thuyết hầm bà lằng của Agile
Ví dụ đi tập gym, bạn muốn tăng cơ giảm mỡ, trong đó bạn sẽ có rất nhiều dạng bài tập, thích tay to, chân to, ngực to, mông to,... thì có những bài tập khác nhau để chọn. Scrum là một trong những dạng bài tập như thế. Agile là quy định của phòng tập, bạn phải đến đó 3 ngày một tuần, một buổi 2 tiếng.
Về nguồn gốc, Agile được sử dụng rộng rãi trong các công ty Nhật Bản từ những thập niên 70, 80 như Toyota, Fuji, Honda
Vào giữa những năm 90, Jeff Sutherland cảm thấy quá bực bội vì công ty của ông ta liên tục dính những dự án trễ kế hoạch, vượt ngân sách. Anh ấy đi tìm giải pháp cho vấn đề này, đọc thấy Agile, anh bắt đầu "chế" Scrum, và nó nhanh chóng được cộng đồng công nghệ sử dụng rộng rãi.
Scrum dành cho ai
Nói Scrum chỉ thật sự có ích cho kỹ sư, lập trình viên thấy không đúng. Scrum còn mang đến nhiều lợi ích khác cho nhiều loại dự án khác nữa, vì ngay từ đầu người sáng tạo ra Agile không phải để dùng riêng cho ngành phần mềm.
David Matthew có phát biểu: "Nếu bạn đang làm việc trong lĩnh vực marketing, cần viết một văn bản cho dự án, sử dụng Scrum không chỉ giúp bạn cấu trúc bài viết của bạn tốt hơn, nó còn giúp các thành viên trong team hiểu vấn đề tốt hơn"
Scrum đang được dùng rộng rãi bởi FBI, các bạn làm marketing, những đội ngũ xây dựng (đang nói ở nước ngoài nhé). Miễn bạn đang cần làm một sản phẩm, một phần mềm, chiến dịch quảng cáo, Scrum có thể giúp team của bạn vận hành có tổ chức hơn, làm mọi thứ nhanh hơn.
Vai trò và các phần của Scrum
Bạn không cần gì nhiều để bắt đầu với Scrum, bạn chỉ một nơi để tổ chức các ý tưởng của mình, hoặc gọi là Backlog, bạn cần những người cho những vai trò khác nhau, product owner, Scrum master
- Product owner là người quan tâm đến sản phẩm cuối cùng, người có quyền quyết định sản phẩm cuối cùng sẽ có gì. Người này sẽ đảm nhiệm việc tạo backlog - một tập các công việc cần làm, tập các yêu cầu cần có cho sản phẩm. Yêu cầu bắt buộc của Backlog là nó phải có thứ tự ưu tiên, product owner phải quyết định cái nào trước cái nào sau. Ví dụ nếu đang chế một cái xe thì động cơ phải nằm trên mục cao nhất của yêu cầu, được sơn màu đỏ thì có thể nằm ở cuối danh sách.
- Sprint là một khung thời gian cố định mà toàn bộ team phải xong một phần công việc được quy ước trong backlog. Thời gian dài ngắn tùy thuộc vào yêu cầu của team, 2 tuần là lựa chọn phổ biến.
- Daily scrum là một một buổi họp hằng ngày để cập nhập tình hình công việc, còn gọi là Daily stand up
- Kết thúc mỗi Sprint là tổng kết, đánh giá cuối năm học, mọi người xem lại công việc của mình, bàn luận những thứ có thể cải thiện cho Sprint sau.
Như bạn thấy, không có gì yêu cầu đặc biệt về thiết bị hay training để bắt đầu. Phần khó nhất chỉ là phân biệt được từng khái niệm, làm đúng vai trò và đọc kỹ hướng dẫn sử dụng trước khi dùng.
Giống như đánh bài, bạn chỉ tốn 10 phút để học Scrum, nhưng để chơi bài giỏi, bạn cần thời gian và trải nghiệm.
Initializing...