Bài số 8: Quản lý tài nguyên con người của dự án
Các vị trí trong nhóm thực hiện dự án
3- Phát triển nhóm 4- Lãnh đạo
Các vị trí trong nhóm thực hiện dự án
- Lập trình viên (là các kỹ sư hệ thống) phân chia thành nhiều cấp quản lý khác nhau phụ thuộc vào kỹ năng lập trình của từng thành viên
+ nhóm trưởng kỹ thuật (technical lead) + kiến trúc sư hệ thống
+ lập trình viên và lập trình viên nhiều kinh nghiệm
- Kỹ sư đảm bảo chất lượng dự án (QA: người kiểm tra dự án) bao gồm vị trí quản lý QA, phụ trách trực tiếp một nhóm QA (QA lead), nhân viên đảm bảo chất lượng (QA)
- Người quản trị cơ sở dữ liệu bao gồm quản trị hệ thống cơ sở dữ liệu, người lập trình cơ sở dữ liệu, người thiết kế mô hình cơ sở dữ liệu
- Kỹ sư quản lý cấu hình của hệ thống phát triển dự án - Kỹ sư mạng, quản trị hệ thống
- Nhà phân tích nghiệp vụ kinh doanh của hệ thống cần xây dựng: đây là người sẽ làm việc trực tiếp với khách hàng để lấy yêu cầu về nghiệp vụ cần xây dựng cho hệ thống phần mềm.
- Người thiết kế giao diện với người sử dụng
- Người thiết lập kiến trúc trao đổi thông tin trong hệ thống
- Người viết tài liệu cho hệ thống (bao gồm vị trí biên tập và chuyên gia viết tài liệu) - Giám đốc dự án
- Còn một số vị trí đặc thù khác nữa tùy theo từng dự án ví dụ như giám đốc quản lý cấu hình, người kiểm thử hệ thống, người phụ trách phân phối sản phẩm tới khách hàng Nói chung tập các vị trí trong mỗi dự án là khác nhau tùy thuộc vào tính chất và kích cỡ của dự án. Với những dự án nhỏ thì thường một thành viên thường phải đảm nhận một hoặc hai, ba vị trí để giảm chi phí cho dự án, bởi vì công việc của một vị trí không đủ cho một người thực hiện một cách đều đặn hàng ngày.
Với bài tập lớn trong trường, sinh viên nên thảo luận để quyết định lựa chọn những vị trí thích hợp cho dự án thử nghiệm của nhóm mình. Việc lựa chọn phụ thuộc nhiều vào bản chất
91
của sản phẩm bạn cần xây dựng và ngân sách của dự án. Các câu hỏi sau có thể làm cho việc lựa chọn đó dễ dàng hơn:
+ Độ lớn của dự án thế nào?
+ Dự án có thiên về xây dựng giao diện với người sử dụng không? Có liên quan nhiều tới dữ liệu không?
+ Dự án có quản lý và cài đặt phần cứng không?
+ Bạn có cần quản lý một trung tâm điều hành cho dự án không? + Loại dự án là gì?
Đội ngũ làm việc của dự án thường không cố định về kích cỡ và cấu trúc. Thành viên của nhóm phát triển dự án và số lượng người của nhóm thay đổi tùy theo nhu cầu về nhân lực tại từng thời điểm phát triển dự án. Sinh viên có thể tham khảo hình vẽ dưới đây để hình dung được nhu cầu nhân lực trong các giai đoạn thực tế của dự án so với bản kế hoạch. Giai đoạn xây dựng chương trình thường là chiếm nhiều nhân lực hơn dự tính nhất, còn các giai đoạn còn lại có thể ít hơn hoặc bằng dự tính.
Ngoài lý do số lượng của đội ngũ dự án có thể thay đổi theo nhu cầu nhân lực của các giai đoạn, số lượng này còn có thể thay đổi do các thành viên có thể xin rút khỏi dự án vì một lý do nào đó và cũng sẽ có trường hợp gia nhập dự án để đáp ứng nhu cầu nhân lực.
Giám đốc dự án cần có kế hoạch về thời điểm và cách thức thực hiện cho việc rút khỏi dự án (roll-off) hay đưa người thêm vào (roll-on). Đối với việc thêm người vào dự án, giám đốc dự án có thể thuê hoặc dự trữ tài nguyên nhân lực từ trước. Khi một thành viên mới gia nhập nhóm của dự án, một khoảng thời gian đệm (ramp-up time) cần được xác lập để thành viên đó có thời gian học hỏi về công ty và về dự án. Nếu thành viên mới đó là một người còn ít kinh nghiệm thì khoảng thời gian này cần đủ lớn để đảm bảo rằng thành viên đó có đủ thời gian, còn với người nhiều kinh nghiệm hơn thi khoảng thời gian đó có thể rút ngắn lại. Đối với việc rút khỏi dự án của một thành viên, một khoảng thời gian đệm cần thiết cũng cần
92
được thiết lập để chuyển đổi những tri thức về công việc của người hiện tại cho người thay thế, để viết những tài liệu cần thiết để hướng dẫn và chuyển giao sản phẩm, kỹ thuật và những hiểu biết của thành viên hiện tại, để dọn dẹp những thứ không cần thiết của thành viên cũ trước khi chuyển đi.
Để quản lý nguồn nhân lực một cách hiệu quả, giám đốc dự án cần lập một bản kế hoạch về
nhóm làm việc như một phần trong bản kế hoạch tổng thể ban đầu cho việc phát triển phần mềm. Nội dung của bản kế hoạch về nhân lực này bao gồm
- các vị trí cần thiết, số lượng cần thiết với mỗi vị trí, khi nào cần và vị trí đó là nhân viên nào.
- thông tin về việc gán nhân viên nào và vị trí nào với ngày bắt đầu và kết thúc công việc, cùng với chi phí/lương trả cho vị trí đó
- thư mục dự án : đơn giản là một bản danh sách liệt kê những thành viên trong nhóm phát triển dự án và thông tin để tiện liên lạc
- kích cỡ của nhóm phụ thuộc vào ngân sách của dự án và một số các yếu tố khác nữa.
Cấu trúc của nhóm dự án