Hai loại mô hình xây dựng nhóm làm việc: không tập trung/dân chủ và tập trung/tự động. Một loại phái sinh từ hai loại trên là không tập trung kiểm soát được.
Các mô hình tạo nhóm làm việc :
- Nhóm làm việc theo nghiệp vụ (Business team) : đây là mộtmô hình phổ biến nhất bao gồm một người đứng đầu về kỹ thuật hướng dẫn tất cả các thành viên còn lại. Những thành viên này có vai trò và trạng thái đồng đều nhau. Mô hình theo kiểu phân cấp và có một người đứng đầu từng nhóm nhỏ làm người liên hệ chính. Hệ thống này có khả năng thích nghi và tổng quát hóa lên từ hệ thống nhỏ. Một phái sinh của kiểu nhóm này là dạng mô hình dân chủtrong đó tất cả các thành viên của nhóm đều có thể ra quyết định.
- Nhóm siêu sao- lập trình: kiểu lập nhóm của hãng máy tính IBM từ những thập kỷ 70 và còn được gọi là ‘nhóm phẫu thuật’. Mô hình này đặt một siêu sao lên làm nhân vật chính còn những thành viên còn lại được tổ chức để thực hiện những công việc phụ trợ cụ thể phục vụ cho công việc của người đứng đầu đó ví dụ như lập trình phòng bị, dẫn đường,
85
quản trị hệ thống, luật sư ngôn ngữv.v... Khó khăn của loại nhóm này là khó đạt được sự thỏa mãn của cả hai nhóm người : siêu sao và phần còn lại của đội. Loại này chỉ thích hợp với những dự án có mục đích sáng tạo hoặc thực thi một cách khéo léo.
- SWAT team : nhóm có kỹnăng cao, các kỹnăng này phù hợp với mục tiêu của dự án và các thành viên thường làm việc cùng nhau. Mô hình này được áp dụng đối với đội xây dựng chiến lược an toàn cho SWAT và đội kiểm tra hiệu năng của Oracle.
Với những đội có sốlượng thành viên lớn, vấn đề giao tiếp cần thiết giữa các thành viên trong đội sẽ tăng theo cấp số nhân hay tăng the bình phương số lượng thành viên. Ví dụ có 50 lập trình viên trong một nhóm thì số kênh giao tiếp giữa các thành viên lên tới 1200. Vì thế, việc truyền thông hay giao tiếp trong đội cần được chính thức hóa và chuẩn hóa theo mô hình nào đó để đảm bảo việc lan truyền là nhanh nhất, hiệu quả nhất và tốn ít công sức nhất. Một mô hình lan truyền hay được áp dụng là mô hình phân rã, phân chia nhóm thành nhiều nhóm nhỏ với sốlượng thành viên tối ưu, thường là nhỏhơn 10.
Kích cỡ tối ưu của một nhóm làm việc là 4-6 người trong đó có một người quản lý và còn lại là các lập trình viên. Nhóm nhỏ có thể làm tăng khả năng hiểu lẫn nhau và hiểu công việc kỹ càng hơn, các thiết kế, công việc đảm bảo chất lượng, thực thi phát triển hệ thống đều dựa trên kích cỡ nhóm lập trình mới dễ quản lý.