Scrum là một khung (framework) được xây dựng dựa trên Agile và nó cũng kế thừa tính chất "Cá nhân và sự tương tác hơn là quy trình và công cụ". Để triển khai Scrum thành công, các cá nhân và sự tương tác giữa họ đóng vai trò quan trọng. Trong bài này chúng ta sẽ cùng tìm hiểu các vai trò trong Scrum, họ ăn gì, làm gì và những gợi ý để xây dựng nhóm hiệu năng cao 😋😋
Scrum Team gồm những anh em nào?
Như tui nói ở trển, chúng ta sẽ cùng đi qua các vai trò trong Scrum trước nhé.
Scrum Master (SM)
Scrum Master là ông phải chịu trách nhiệm đảm bảo nhóm Scrum được vận hành đúng, tuân thủ các nguyên lí, các kỹ thuật và quy tắc Scrum nhằm hướng đến kết quả tốt nhất. Scrum Master không trực tiếp tham gia xây dựng sản phẩm nhưng là chất kết dính để các bên phối hợp với nhau cho ra sản phẩm tốt. Scrum Master còn là nhà lãnh đạo theo phong cách phục vụ (Sercvant Leader). Những đối tượng mà Scrum Master phục vụ bao gồm tổ chức, Product Owner, nhóm phát triển.
Công việc của Scrum Master:
- Ăn cơm;
- Tổ chức các cuộc họp hiệu quả cho nhóm;
- Thanh tra và giữ minh bạch thông tin trong suốt quá trình phát triển;
- Tìm kiếm và loại bỏ các trở ngại có thể xuất hiện. Nếu những trở ngại vượt quá khả năng, SM có thể tìm kiếm sự giúp đỡ từ các chuyên gia bên ngoài;
- Liên tục tìm kiếm sự cải tiến để giúp nhóm làm việc hiệu quả hơn, vui vẻ hơn;
- Huấn luyện Scrum cho nhóm.
Trong một vài trường hợp, Scrum Master cũng có thể đồng thời là Developer Team nha. Nhưng không nên để ổng kiêm nhiệm vai trò Product Owner vì sẽ dẫn đến xung đột lợi ích, thiếu khách quan và không đáp ứng được các nguyên tắc của Scrum.
Còn Developer Team và Product Owner là gì thì mấy bạn đọc tiếp ở dưới nghen 😎😎
Product Owner (PO)
Product Owner là người đại diện cho khách hàng (đại diện thôi chớ ổng vẫn thuộc Scrum Team nha). Ổng chịu trách nhiệm định hướng sản phẩm và là người duy nhất chịu trách nhiệm quản lý Product Backlog trong suốt quá trình sản xuất. Nhiệm vụ của Product Owner là tối đa hóa giá trị sản phẩm thông qua việc vận dụng tốt nguồn lực hiện tại.
Công việc của Product Owner:
- Cũng ăn cơm nhưng chủ yếu với khách hàng;
- Tìm hiểu, phân tích kỹ về sản phẩm, lên danh sách các tính năng mong muốn và liệt kê chúng vào Product Backlog.
- Đánh giá và sắp xếp thứ hạng các hạng mục trong Product Backlog theo giá trị giảm dần. Cách tốt nhất là tuân theo quy tắc DEEP cho mỗi hạng mục trên Product Backlog.
- Tối đa hóa lợi nhuận trên vốn đầu tư (ROI): Không chỉ sắp xếp các hạng mục, PO còn phải biết nói “không” với những hạng mục không cần thiết.
- Giữ cho Product Backlog luôn được minh bạch, rõ ràng.
- Giải thích cho Nhóm phát triển hiểu rõ các hạng mục trong Product Backlog.
- Theo dõi tiến độ phát triển sản phẩm, làm việc và giải trình với các bên liên quan.
Developer Team (Nhóm Phát Triển)
Tên gọi là Developer Team nhưng thực chất đó không phải là các lập trình viên đâu nhé, tất cả mọi thành viên có chức năng thiết kế, test, lập trình,... trong team đó đều được gọi chung là Developer Team và họ không có job title như designer, developer, tester đâu 😗😗
Nhóm Phát Triển trong Scrum được thiết kế theo hai đặc điểm là nhóm tự tổ chức và liên chức năng để tối đa hóa sự linh hoạt, sáng tạo và năng suất của nhóm.
Nhóm tự tổ chức là nhóm mà các thành viên được trao quyền. Họ có quyền tự lựa chọn công cụ, phân việc, lên kế hoạch để thực thi công việc và thanh tra lẫn nhau thông qua các phiên họp hằng ngày. Nhóm Scrum không chịu sự chỉ đạo của bất kì ai khác ngoài nhóm, các thành viên tự quản lý lẫn nhau.
Nhóm liên chức năng bao gồm các thành viên có đủ kỹ năng cần thiết để hoàn thành công việc mà không nhờ cậy nguồn lực bên ngoài nhóm. Tui nhắc lại để tránh nhầm lẫn, trong nhóm liên chức năng không có chức danh (job title) mà thay vào đó các thành viên đều là thành viên phát triển (developer). Việc này giúp các thành viên được bình đẳng và có trách nhiệm như nhau đối với sản phẩm.
Ngoài việc trực tiếp làm ra sản phẩm, sự am hiểu của Nhóm Phát Triển là rất quan trọng với thành công của sản phẩm. Nhóm phát triển còn giúp sức cho Product Owner trong việc duy trì Product Backlog bao gồm ước tính kích thước các hạng mục, sự phụ thuộc công nghệ, các yêu cầu liên quan đến bên công nghệ,…
Nhóm phát triển nên có số lượng thành viên lớn hơn 3 và không vượt quá 9 để có thể làm việc, giao tiếp hiệu quả.
Trong dự án thực tế, việc có sự thay đổi thành viên trong nhóm là không thể tránh khỏi nhưng nhóm phải biết rằng việc đó sẽ ảnh hưởng tới năng suất trong ngắn hạn. Mặc dù có đầy đủ chức năng nhưng trong một vài trường hợp Nhóm Phát Triển có thể nhờ các chuyên gia bên ngoài để giải quyết vấn đề của họ.
Okay, vậy giờ làm thế nào để nâng cao hiệu năng nhóm?
Xây dựng đội nhóm hiệu năng cao thành công phụ thuộc bởi rất nhiều yếu tố khác nhau và rất khó để có một cách thức chính xác dẫn đến thành công. Tuy nhiên chúng ta sẽ cùng xem qua các phương pháp và gợi ý để nâng cao tỉ lệ thành công đó. Cùng tìm hiểu nào 🤤🤤
Mô hình Tuckman
Việc nhận diện các giai đoạn của nhóm là quan trọng để đưa ra các quyết định chính xác nhằm đảm bảo nhóm đạt hiệu quả tốt nhất. Bruce Tuckman (một nhà tâm lý học người Mỹ) đã đưa ra một mô hình để giải thích các giai đoạn này. Mô hình Tuckman chia chặng đường của một nhóm thành 5 giai đoạn, Scrum Master cần phải nhận biết nhóm đang ở giai đoạn nào để có hành động phù hợp.
- Forming (Hình thành): Các thành viên hưng phấn với công việc nhưng còn e ngại, quan sát và thăm dò mọi người xung quanh. Hiếm có xung đột trong giai đoạn này. Trong giai đoạn này Scrum Master cần phải tạo điều kiện để mọi người tìm hiểu nhau. Scrum Master nên xây dựng Team Canvas để đi qua nhanh giai đoạn này và chuẩn bị cho giai đoạn tiếp theo.
- Storming (Sóng gió): Các thành viên bắt đầu bộc lộ mình có thể phá vỡ các quy tắc mà nhóm đã thiết lập từ đầu. Trong giai đoạn này, nhóm phải nhận diện và đối mặt với tình trạng của mình để xử lý triệt để các xung đột. Nhà quản lý cần nhận diện giai đoạn sóng gió để theo sát, có điều chỉnh kịp thời và giúp nhóm vượt qua giai đoạn này nhanh nhất có thể.
- Norming (Ổn định): Mọi người bắt đầu chấp nhận nhau, cố gắng giải quyết các mâu thuẫn, tôn trọng lẫn nhau. Scrum Master cần lưu ý rằng giai đoạn Norming có thể đan xen giai đoạn Storming để xác định đúng và có hành động phù hợp.
- Performing (Hiệu suất cao): Sự cộng tác diễn ra dễ dàng. Các thành viên cảm thấy thoải mái khi làm việc nhóm. Tinh thần chủ đạo thể hiện trong giai đoạn này là tinh thần đồng đội. Nếu có thành viên rời khởi nhóm trong giai đoạn này thì cũng không gây ra ảnh hưởng nghiêm trọng.
- Adjourn (Thoái trào): Nhóm hoàn thành nốt công việc của mình và có khả năng không còn duy trì nhóm nữa.
Các đặc điểm của nhóm hiệu năng cao
Dự án Aristotle* của Google đã thực hiện hơn 200 cuộc phỏng vấn với nhân viên, phân tích hơn 250 đặc điểm trong hơn 180 nhóm làm việc tại Google, và tìm ra năm đặc điểm của nhóm hiệu năng cao dưới đây.
- An toàn tâm lý: Văn hóa cởi mở khuyến khích sự phát biểu và tôn trọng lẫn nhau để các thành viên nhóm có thể tự tin đóng góp ý kiến của bản thân mà không sợ bị trừng phạt hoặc chế giễu mình làm sai hay đưa ra một ý tưởng mới.
- Tính liên thuộc: Các thành viên hoạt động vì mục tiêu chung, được trao quyền, làm việc cùng nhau và cam kết vì kết quả chung.
- Cấu trúc rõ ràng: Mục tiêu cá nhân và mục tiêu nhóm cần phải rõ ràng, cụ thể, có tính thử thách và có khả năng hoàn thành.
- Ý nghĩa công việc: Các thành viên thấy được mục đích, đóng góp của bản thân trong công việc hoặc kết quả.
- Ảnh hưởng cá nhân: Cá nhân nhận thấy được rằng họ đang tạo ra sự khác biệt, và quan trọng với công việc chung.
Ngoài những dữ liệu trên, các bạn phải tuân thủ năm giá trị và ba trụ cột của Scrum để xây dựng đội nhóm mình đạt hiệu năng cao nhé. Chúc các bạn thành công 😎😎
Bình luận