Giáo trình

Nhập môn Công nghệ phần mềm

Science and Technology

Quản lý dự án

Tác giả: Phạm Thị Quỳnh

Định nghĩa về quản lý dự án

Đặt vấn đề

- Để xây dựng được một hệ thống phần mềm thành công, cần thiết phải quản lý dự án

- Dựa trên hiểu biết của mình, hãy cho biết quản lý dự án là gì?

- Quản lý dự án phần mềm có giống quản lý các dự án khác không?

Quản lý dự án phần mềm là một phần quan trọng của công nghệ phần mềm. Nếu quản lý tốt thì chưa chắc dự án đã thành công, nhưng nếu quản lý tồi thì chắc chắn dự án sẽ thất bại. Dự án thất bại khi phần mềm chuyển giao chậm hơn so với kế hoạch, chi phí lớn hơn dự tính, và không thoả mãn các yêu cầu đề ra.

Quản lý dự án phần mềm có liên quan tới những hoạt động nhằm đảm bảo chuyển giao phần mềm đúng thời hạn, đúng kế hoạch và phù hợp với các yêu cầu của tổ chức phát triển phần mềm.

Quản lý dự án phần mềm có một số đặc trưng khác biệt so với các loại dự án khác:

- Sản phẩm là vô hình. Sản phẩm có khả năng thay đổi linh động.

- Công nghệ phần mềm không được thừa nhận như một quy tắc công nghệ có trạng thái chuẩn mực như các ngành công nghệ khác.

- Quy trình phát triển phần mềm không được chuẩn hoá.

- Nhiều dự án phần mềm là những dự án chỉ làm một lần.

Quản lý dự án là một yêu cầu cần thiết vì phát triển phần mềm luôn phải thoả mãn các ràng buộc về kế hoạch và chi phí đã được xác định bởi tổ chức phát triển phần mềm. Người quản lý dự án phải chịu trách nhiệm lập kế hoạch và theo dõi quá trình thực hiện dự án.

Các hoạt động quản lý

Đặt vấn đề

- Những công việc phải làm trong Quản lý dự án là gì?

- Hãy thảo luận về những công việc đó. Cho biết công việc nào là quan trọng nhất.

Các hoạt động quản lý dự án bao gồm:

- Viết kế hoạch dự kiến: Đây là một công việc khá phức tạp. Nó mô tả mục tiêu của dự án, phương pháp thực hiện, ước lượng thời gian và chi phí …

- Lập kế hoạch dự án: liên quan đến việc xác định các hành động, các mốc thời gian và các sản phẩm được tạo ra.

- Tính chi phí dự án

- Điều hành và xem xét lại dự án: người quản lý phải giám sát quy trình thực hiện dự án, so sánh quy trình và chi phí thực tế với kế hoạch đã định. Nếu điều hành tốt, người quản lý dự án có thể phát hiện và khắc phục được những rủi ro tiềm tàng.

- Lựa chọn và đánh giá cá nhân. Việc lựa chọn nhân viên thích hợp cho một dự án là rất khó khăn. Khi lựa chọn đội dự án, người quản lý dự án có thể gặp phải một số vấn đề sau: ngân sách của dự án không đủ để trả cho những nhân viên có mức lương cao, không có được những nhân viên có kinh nghiệm và trình độ thích hợp, tổ chức muốn chỉ định một số nhân viên mới tham gia vào dự án ...

- Viết báo cáo và trình bày.

Tuy nhiên, ngày nay chúng ta có rất nhiều kỹ thuật và công cụ được sử dụng để hỗ trợ cho việc quản lý dự án phần mềm.

Lập kế hoạch dự án

Mục tiêu

- Hiểu rõ tầm quan trọng của việc lập kế hoạch dự án

- Phải biết rằng ứng với mỗi hoạt động trong quá trình phát triển phần mềm, chúng ta sẽ phải có một bản kế hoạch riêng.

- Nắm được cấu trúc của một bản kế hoạch dự án phát triển hệ thống phần mềm.

Lập kế hoạch dự án có thể là hoạt động tốn nhiều thời gian nhất trong quá trình quản lý dự án. Nó liệt kê các hành động từ pha khởi tạo cho đến khi đưa ra được hệ thống. Kế hoạch phải được theo dõi thường xuyên, nhất là khi có những thông tin hoặc những yêu cầu mới xuất hiện.

Trong quá trình thực hiện dự án, chúng ta có nhiều loại kế hoạch được xây dựng để hỗ trợ cho kế hoạch chính của dự án phần mềm như: kế hoạch chất lượng, kế hoạch thẩm tra, kế hoạch quản lý cấu hình, kế hoạch bảo trì, kế hoạch phát triển nhân sự …

Cấu trúc của bản kế hoạch dự án gồm:

- Phần giới thiệu: mô tả các mục tiêu của dự án và các ràng buộc gây ảnh hưởng tới việc quản lý dự án.

- Tổ chức dự án: mô tả cách tổ chức của đội dự án, bao gồm những ai và những nhiệm vụ gì.

- Phân tích rủi ro: mô tả những rủi ro có thể xảy ra, dự báo khi nào chúng xảy ra và đề xuất chiến lược giảm rủi ro.

- Các yêu cầu về tài nguyên phần cứng và phần mềm: xác định những phần cứng và phần mềm nào cần thiết cho quá trình thực hiện dự án.

- Bảng thống kế công việc: xác định các công việc, từng mốc thời gian và kết quả của từng công việc.

- Lịch biểu của dự án: lịch biểu cho thấy sự phụ thuộc giữa các hành động, thời gian ước tính để đạt tới mốc và phân công công việc cho từng người. Mốc là điểm cuối của một hành động trong quy trình. Ví dụ, trong mô hình thác nước cho phép ta định nghĩa các mốc của tiến trình một cách rõ ràng.

- Các kỹ thuật điều hành và báo cáo

Lịch biểu của dự án

Mục tiêu

- Phải hiểu rõ lập lịch biểu dự án là làm gì?

- Nắm được một số quy tắc và các gợi ý khi lập lịch biểu

- Có khả năng áp dụng biểu đồ cột, sơ đồ mạng để xây dựng lịch biểu

- Có thể sử dụng một số công cụ hỗ trợ lập lịch biểu như: M.Excel, M.Project …

Lập lịch biểu dự án là một trong những công việc khó khăn nhất đối với người quản lý dự án. Người quản lý phải chia dự án thành nhiều nhiệm vụ, ước lượng thời gian và tài nguyên cần thiết để hoàn thành từng nhiệm vụ.

Khi lập lịch biểu, người quản lý nên tổ chức các công việc song song để sử dụng tối ưu lực lượng lao động và tối thiểu hoá sự phụ thuộc lẫn nhau giữa các nhiệm vụ để tránh sự chậm trễ khi một nhiệm vụ phải đợi nhiệm vụ khác hoàn thành.

Chất lượng của lịch biểu phụ thuộc vào hiểu biết và kinh nghiệm của người quản lý. Tuy nhiên, khi lập lịch biểu chúng ta phải chú ý tới các vấn đề sau:

- Việc ước lượng mức độ khó của một vấn đề nào đó và xác định chi phí để giải quyết nó là rất khó khăn.

- Khả năng sản xuất không tương ứng với số lượng người làm việc trong một nhiệm vụ.

- Bổ sung thêm người vào dự án sẽ làm cho nó chậm hơn vì giao tiếp trong dự án trở lên quá tải.

- Những sự việc xảy ra ngoài mong đợi.

Chúng ta sử dụng các ký pháp đồ hoạ để minh hoạ cho lịch biểu của dự án. Sử dụng biểu đồ giúp ta thấy rõ cách chia dự án thành nhiều nhiệm vụ. Các nhiệm vụ không nên quá nhỏ, chúng nên được thực hiện trong vòng một hoặc hai tuần.

Ví dụ

Giả sử có một loạt các hoạt động Ti, thời gian thực hiện từng hoạt động và sự phụ thuộc lẫn nhau giữa các hoạt động được liệt kê như bảng dưới đây. Hãy thực hiện các yêu cầu sau:

1.Xây dựng mạng các hoạt động

2. Xây dựng biểu đồ nhằm biểu diễn các hoạt động theo dòng thời gian

3. Biểu đồ phân công công việc

Kết quả thực hiện ví dụ

Mạng hoạt động Theo thời gian Theo công việc

Quản lý rủi ro

Mục tiêu

- Phải hiểu được rủi ro luôn luôn có thể xảy ra trong dự án và không thể lường trước được

- Nắm được một số loại rủi ro thường gặp

- Biết được các hoạt động cần thực hiện trong quản lý rủi ro.

Quản lý rủi ro liên quan tới việc xác định rủi ro và lập ra các kế hoạch để tối thiểu hoá ảnh hưởng của chúng tới dự án.

Sau đây là một số loại rủi ro thường gặp trong quá trình phát triển hệ thống phần mềm:

- Rủi ro của dự án có ảnh hưởng tới lịch biểu và tài nguyên của dự án

- Rủi ro của sản phẩm ảnh hưởng tới chất lượng hoặc hiệu năng của phần mềm sẽ được xây dựng.

- Rủi ro thương mại sẽ ảnh hưởng tới tổ chức xây dựng phần mềm.

Để quản lý rủi ro, chúng ta cần phải thực hiện các hoạt động sau:

- Phát hiện rủi ro: Phát hiện các loại rủi ro có liên quan đến: công nghệ, con người, tổ chức, các yêu cầu, ước lượng.

- Phân tích rủi ro: Đánh giá các khả năng xảy ra rủi ro và tính nghiêm trọng của nó nếu nó xảy ra.

- Lập kế hoạch rủi ro: Xem xét từng rủi ro và phát triển chiến lược để quản lý nó. Bao gồm các chiến lược như: phòng tránh - giảm khả năng xảy ra rủi ro, tối thiểu hoá - giảm ảnh hưởng của rủi ro, kế hoạch bất ngờ - kế hoạch này để dành cho khi rủi ro xảy ra.

- Kiểm soát rủi ro: Đánh giá từng rủi ro đã được xác định một cách thường xuyên để xác định khả năng nó có thể xảy ra hay không và cũng đồng thời đánh giá mức độ ảnh hưởng của nó. Những rủi ro chính nên được thảo luận tại các cuộc họp quản lý tiến trình.

Đánh giá:
0 dựa trên 0 đánh giá
Nội dung cùng tác giả
 
Nội dung tương tự