Kĩ năng quản lí dự án phần mềm
Bởi vì công nghệ thay đổi rất nhanh chóng, các nhà chuyên nghiệp phần mềm muốn thành công phải liên tục cải tiến kĩ năng của họ. Trong số họ, người quản lí dự án phần mềm cần đào tạo thích hợp hơn vì dự án phần mềm đang trở nên ngày càng lớn và phức tạp hơn. Mục đích của mọi dự án phần mềm là chuyển giao sản phẩm đúng thời gian, trong ngân sách, đáp ứng các chức năng được yêu cầu và chất lượng như được khách hàng xác định.
Người quản lí dự án phần mềm phải biết cách làm việc với khách hàng để hiểu nhu cầu doanh nghiệp của họ; họ phải có kĩ năng trong phát triển kế hoạch dự án và phân công gói công việc cho các thành viên tổ. Họ phải có kĩ năng trao đổi để thảo luận, giải thích và báo cáo trạng thái cho khách hàng, người quản lí. Họ phải biết cách quản lí các hoạt động hàng ngày, theo dõi tiến bộ, giám sát hiệu năng, và giải quyết với các rủi ro dự án. Có nhiều điều mà người quản lí dự án phần mềm phải học để đảm bảo rằng dự án sẽ thành công.
Điều thứ nhất người quản lí dự án phần mềm phải học là cách làm việc với khách hàng. Có nhiều kiểu khách hàng: Một số người dễ làm việc với khách hàng và một số thì không. Một số không biết cách giải thích rõ các yêu cầu và một số thậm chí còn không biết họ muốn gì. Không hiểu rõ ràng các yêu cầu, sẽ không thể nào bắt đầu được dự án. Đó là lí do tại sao người quản lí dự án phần mềm phải có kĩ năng trao đổi tốt như nghe tích cực và biết cách hỏi các câu hỏi để thu được yêu cầu. Có vài kĩ thuật để làm điều này như đề nghị khách hàng kể chuyện về cách họ muốn dùng hệ thống (như, chuyện người dùng, kịch bản người dùng v.v.). Kĩ thuật khác là xây dựng bản mẫu và để khách hàng dùng nó và đưa ra phản hồi để thu được yêu cầu đúng v.v.
Điều thứ hai người quản lí phần mềm phải học là giải quyết với thay đổi. Vì khách hàng thường yêu cầu thay đổi, người quản lí dự án phần mềm phải biết cách giải quyết nó một cách thích hợp. Người quản lí không có kinh nghiệm sẽ chấp nhận mọi thay đổi và chịu hậu quả về chi phí cao, trễ lịch và sản phẩm chất lượng kém.
Người quản lí dự án phần mềm có kinh nghiệm sẽ thương lượng thay đổi bằng việc cho khách hàng thông tin phụ về tác động của thay đổi và để cho họ quyết định. Tôi thường khuyên sinh viên đáp ứng: “Chúng tôi có thể làm thay đổi đó nhưng chúng tôi cần ông hoặc để trễ thay đổi tới lần đưa ra sau; hoặc cho chúng tôi nhiều thời gian hơn, nhiều tài nguyên hơn để thực hiện thay đổi. Ông có thể cần xoá bớt yêu cầu tương đương khác để chúng tôi có thể hội tụ vào thay đổi mới. Chúng tôi cần quyết định của ông sớm để cho chúng tôi có thể bắt đầu ngay. Ông có thể cho chúng tôi quyết định của ông vào ngày hôm sau được không?” Câu trả lời đơn giản đó sẽ buộc khách hàng phải nghĩ về tác động và việc bù trừ vì họ phải quyết định. Phần lớn các lần, họ bỏ các yêu cầu thay đổi vì họ không muốn ra quyết định khó khăn.
Điều thứ ba người quản lí phần mềm phải học là kĩ năng xây dựng tổ, bao gồm cách phát triển tổ có động cơ mà sẽ làm việc hợp tác với nhau. Có một tổ mạnh và có quyết tâm sẽ cho người quản lí dự án phần mềm tin tưởng bám theo kế hoạch khi kế hoạch là đúng, thay đổi kế hoạch khi nó sai; và được chuẩn bị để ra quyết định đúng khi cần. Điều đó yêu cầu khả năng lãnh đạo của người quản lí dự án phần mềm để hướng dẫn tổ hoàn thành mục đích dự án. Không có làm việc tổ và hợp tác bởi cả tổ hay từng thành viên trong tổ, dự án không thể thành công. Người quản lí dự án phần mềm thiếu kinh nghiệm thường bắt đầu dự án bằng cách tự mình làm việc trên bản kế hoạch rồi phân công nhiệm vụ cho các thành viên tổ và giám sát tiến bộ của tổ. Người quản lí dự án phần mềm có kinh nghiệm bao giờ cũng bắt đầu với việc xây dựng tổ bằng việc đem tổ tới cùng nhau thảo luận về mục tiêu của dự án. Khi mọi người trong tổ cảm thấy thoải mái với các mục tiêu thì người quản lí có thể thảo luận với tổ về cách tiếp cận tốt nhất cho dự án. Bằng việc để cho các thành viên tổ tham gia vào trong việc ra quyết định, tổ cảm thấy rằng họ được cam kết với dự án; họ cảm thấy rằng đây là dự án của họ, không phải là dự án của người quản lí. Bằng việc có thảo luận dự án sớm, người quản lí dự án phần mềm tìm vài giải pháp trước khi lựa chọn giải pháp tốt nhất. Thông tin được thảo luận cùng tổ bao giờ cũng dẫn tới quyết định tốt hơn và phân công tổ tốt hơn.
Bởi vì hoạt động lập kế hoạch dự án dựa trên quyết định tập thể, tổ cảm thấy rằng họ tham gia vào lập kế hoạch của dự án. Bằng việc cho phép các thành viên tổ nói lên ý kiến của họ, bằng việc để họ giúp phát triển bản kế hoạch, bằng việc để họ ước lượng công việc mà họ phải làm, dự án có công việc tổ được cam kết, điều đưa tổ vượt qua các khác biệt cá nhân và cố gắng vì thành công của dự án.
Vài năm trước, một sinh viên viết cho tôi: “Khi tôi học lớp quản lí dự án phần mềm của thầy, tôi tự hỏi mình: “Sao mình cần học môn này? Có lẽ mình chẳng bao giờ dùng nó vì mình chỉ muốn viết mã, không muốn quản lí dự án.” Say khi tốt nghiệp, tôi đã làm việc như người phát triển phần mềm trong ba năm rồi được đề bạt làm người quản lí dự án phần mềm. Vào lúc đó, thái độ của tôi thay đổi và tôi muốn chức vụ đó. Đột nhiên tôi nhận ra rằng tôi đã không biết cách quản lí dự án vì tôi đã không chú ý mấy trong lớp. May mắn là tôi vẫn còn tài liệu lớp của thầy, bộ slide bài giảng của thầy và phân công đọc thêm. Tôi để ra hai tuần ôn tập lại mọi thứ rồi áp dụng vào dự án. Bởi vì nó là dự án nhỏ, mặc dù tôi phạm phải vài sai lầm nhưng chúng không mấu chốt. Dự án hoàn thành thành công. Tôi trở lại và ôn lại tài liệu của thầy lần nữa và thấy rằng hầu hết các sai lầm tôi phạm phải đều đã được nhắc tới ở đó cho nên tôi học cách cải tiến kĩ năng của tôi. Bây giờ sau vài dự án thành công, tôi biết giáo dục đại có có giá trị làm sao đối với tôi. Tôi muốn nói với mọi sinh viên rằng không cái gì các bạn học là phí hoài cả; sớm hay muộn bạn sẽ cần nó. Học tập chăm chỉ và giữ tài liệu trường học của bạn vì bạn chưa bao giờ biết khi nào bạn sẽ cần chúng.”
Có kĩ năng để làm việc với khách hàng, giải quyết với các thay đổi và xây dựng tổ mạnh là các kĩ năng nền tảng mà mọi người quản lí dự án phần mềm phải có để quản lí thành công dự án phần mềm.
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