Làm việc tổ của dự án
Người phát triển phần mềm thường phàn nàn về người thiết kế: “Chúng tôi đã viết mã rồi thêm mã nữa nhưng bằng cách nào đó chẳng cái gì làm việc. Chung cuộc chúng tôi thấy rằng người thiết kế đã làm nó sai và phí thời gian của chúng tôi.” Người kiểm thử thường phàn nàn về người phát triển: “Chúng tôi đã kiểm thử và rồi nhiều kiểm thử nữa và tìm ra lỗi rồi lại nhiều lỗi hơn. Chung cuộc chúng tôi thấy là người phát triển thậm chí đã không kiểm thử mã riêng của họ mà để cho chúng tôi làm mọi kiểm thử cho họ.”
Một số người làm phần mềm không làm việc của họ mà đẩy nó sang pha tiếp để cho ai đó phải giải quyết nó. Mối quan hệ căng thẳng giữa người thiết kế và người phát triển và người kiểm thử là do việc phân tách bởi nhóm “chức năng” thay vì tổ chức dự án thành tổ “qui trình” với các vai trò và trách nhiệm được xác định.
Một số người quản lí dự án không biết cách xây dựng tổ hiệu quả. Họ dựa trên các chức năng tổ chức hiện có như nhóm phát triển, nhóm kiểm thử, nhóm thiết kế và tổ chức dự án của họ theo cùng cách. Trong trường hợp này, từng chức năng hoàn toàn bị tách rời. Người phát triển không tham gia vào công việc thiết kế hay nói chuyện với người thiết kế mà đợi cho tới khi thiết kế được làm xong và được trao cho họ để viết mã. Người kiểm thử không tham gia vào công việc phát triển hay nói chuyện với người phát triển mà đợi cho tới khi viết mã được làm xong và được trao cho họ kiểm thử. Việc đẩy công việc sang pha chức năng sau tạo ra sự không hài lòng và thất vọng trong dự án phần mềm.
Có những cách để giảm căng thẳng này bằng việc làm những thay đổi trong cách dự án được cấu trúc. Người quản lí dự án phải nhấn mạnh vào làm việc tổ và tạo điều kiện trao đổi trong các thành viên tổ. Người quản lí dự án phải xác định vai trò, trách nhiệm cho các thành viên tổ nơi công việc của họ được tích hợp. Chẳng hạn, người thiết kế chịu trách nhiệm về thiết kế phần mềm nhưng phải khuyến khích người phát triển cùng tham gia vào kiểm điểm thiết kế để hiểu cách thiết kế được cấu trúc. Bằng việc hiểu thiết kế rõ, người phát triển có thể viết mã của họ tốt hơn và nếu cần cung cấp phản hồi cho người thiết kế trong khi kiểm điểm thiết kế. Cùng điều này cũng có thể áp dụng được cho những người phát triển và người kiểm thử để tránh hiểu lầm và lẫn lộn. Toàn bộ tổ dự án phải làm việc cùng nhau hướng tới mục đích chung và mọi thành viên đều phải tuân theo qui trình được xác định. Chính việc của người quản lí dự án là tạo ra điều kiện làm việc thuận lợi cho tổ bằng việc loại bỏ các chướng ngại và xung đột trong các thành viên.
Nền tảng của tổ dự án là tin cậy. Mọi người phải cảm thấy thoải mái thảo luận về quan điểm của họ và nhận phản hồi. Dự án phải có họp tổ thường xuyên nơi các thành viên có thể chia sẻ ý kiến của họ và đề nghị sự hỗ trợ từ người khác. Người quản lí dự án phải chắc mọi người nhận ra những điểm mạnh và điểm yếu của họ. Dự án tốt được tạo nên từ những cá nhân có kĩ năng bổ sung cho nhau chứ không phải là các anh hùng cá nhân. Mọi thành viên tổ đều phải đặt tổ lên đầu. Người quản lí dự án phải chắc mọi thành viên hiểu cách đóng góp của họ là có giá trị nhưng thành công tổng thể bao giờ cũng là thành tựu của tổ.
Dự án phần mềm là công việc làm theo tổ. Không có lãnh đạo dự án mạnh, dự án sẽ không thành công. Tổ chức dự án tương ứng theo qui trình với các vai trò, trách nhiệm được xác định rõ và các kiểm điểm nơi toàn tổ có thể tham gia vào là cách tốt nhất để tránh “hồ nghi và đấu tranh nội bộ”.
Tác phẩm, tác giả, nguồn
- Tác phẩm: Quản lý dự án
- Nguồn: Blog của giáo sư John Vu, Carnegie Mellon University.
- Wiki hóa: https://kipkis.com