Dự án phần mềm là một đối tượng quản lý phức tạp và có nhiều đặc trưng riêng. Đó là một hệ thống phức hợp của các mối quan hệ công việc – công việc, con người – công việc, con người
Trang 1CHƯƠNG 5 - MÔ HÌNH TÍCH HỢP QUẢN LÝ DỰ ÁN PHẦN MỀM
5.1 Cơ Sở Tích Hợp
Do mỗi phương pháp riêng lẽ không thể giải quyết tốt tất cả các vấn đề của dự án, sự kết hợp hai phương pháp sẽ nâng cao hiệu quả quản lý dự án Mội phương pháp có những đặc điểm và thế mạnh riêng (được phân tích và so sánh trong Chương 4) Các kết quả này sẽ được sử dụng để xác định lĩnh vực áp dụng của từng phương pháp
Bảng 5.1 Các vấn đề trong quản lý dự án mỗi phương pháp sẽ giải quyết
Phương pháp truyền thống Mô phỏng liên tục
Thời gian thực hiện, bắt đầu và kết thúc dự án hay một công việc trong dự án
Mô tả và phân công công việc Tổ chức dự án, tổ chức công việc:
ai làm công việc gì và vào thời gian nào
Nguồn lực và chi phí cần cho dự án hay một công việc
Thực hiện và điều hành dự án Theo dõi, kiểm soát tiến độ, kết
quả đạt được (earning value), chi phí được sử dụng
Các vấn đề mang tính chính sách và chiến lược Thử nghiệm, đánh giá tác động của các chính sách So sánh các quyết định và lựa chọn giải pháp
Phù hợp với việc khảo sát và đánh giá ảnh hưởng của các thay đổi và biến động trong dự án
Khảo sát được các yếu tố mềm (soft factors): vấn đề liên quan đến con người, năng suất, giao tiếp…
Phân tích sau dự án
Trang 2Mô phỏng liên tục có cái nhìn tổng quát (thay vì chi tiết) cho toàn bộ dự án, tập trung vào các vấn đề về con người và các chính sách quản lý Phương pháp truyền thống có cái nhìn chi tiết đối với các thành phần của dự án Phương pháp truyền thống dễ thực hiện nhưng khó kiểm chứng, trong khi ta có thể giả lập các mô hình của mô phỏng liên tục với những điều kiện khác nhau, cho phép tạo ra cái nhìn rõ ràng và xác thực hơn về dự án mới
Các mô hình mô phỏng liên tục không cho biết công việc nào sẽ được thực hiện, thời gian hoàn thành công việc và ai sẽ làm công việc đó, như phương pháp truyền thống Tuy nhiên mô phỏng liên tục cho phép khảo sát ảnh hưởng của các yếu tố như thay đổi yêu cầu, sự điều chỉnh, chất lượng, năng suất và tinh thần làm việc
Khi hiểu rõ ưu và nhược điểm của mỗi phương pháp, nhà quản lý dự án sẽ sử dụng cả hai để nâng cao hiệu quả quản lý dự án Mục tiêu của mô hình tích hợp là giúp nhà quản lý dự án trả lời các câu hỏi sau:
cụ thể của dự án?
Tuy nhiên việc sử dụng chung hai phương pháp cũng có nhiều khó khăn:
Mỗi phương pháp có cách tiếp cận khác nhau, đôi khi các giả định là trái ngược
Mỗi phương pháp có những công cụ và kỹ thuật riêng
Các kỹ thuật của mô phỏng liên tục vẫn chưa được hoàn thiện
Để khắc phục các vấn đề này, mô hình tích hợp mới sử dụng các giải pháp sau:
Trang 3 Chia nhỏ các công việc: để mỗi công việc chỉ cần một phương pháp để
áp dụng
Giảm sự liên kết: Các thành phần của mô hình không quá phụ thuộc lẫn
nhau Điều này cho phép các thành phần thay đổi hoặc bổ sung các mô hình mô phỏng liên tục mới sau này mà không ảnh hưởng nhiều đến các bộ phận khác của mô hình tích hợp
5.2 Mô hình tích hợp 5.2.1 Giới thiệu mô hình
Mô hình tích hợp mới bao gồm:
Một tập các công việc quản lý dự án phần mềm, mỗi công việc có các hướng dẫn về phương pháp thực hiện (được mô tả trong bảng 5.2)
Một số hướng dẫn về cách áp dụng mô hình tích hợp (được mô tả trong phần 5.2.2)
Mô tả một số mô hình mô phỏng liên tục trong mô hình tích hợp (được mô tả trong phần 5.3)
Trang 4Bảng 5.2 Các công việc của quản lý dự án phần mềm và phương pháp thực hiện
Các công việc của quản lý dự án phần mềm Phương pháp truyền thống
Mô phỏng liên tục A GIAI ĐOẠN LẬP KẾ HOẠCH DỰ ÁN
2 Kế hoạch nhân sự
2.2 Bố trí nhân sự, phân công công việc X
3 Kế hoạch về tiến độ
B GIAI ĐOẠN THỰC HIỆN DỰ ÁN
2 Thay đổi và bổ sung nhân sự
2.2 Sắp xếp lại nhân sự và công việc X
3 Thay đổi yêu cầu
Trang 53.2 Bố trí, điều chỉnh công việc X
4 Thay đổi thiết kế
Chọn phương pháp phù hợp cho từng công việc (truyền thống hay mô phỏng liên tục), dựa vào ưu và nhược điểm của mỗi phương pháp
Trang 6 Dựa vào kỹ thuật của mỗi phương pháp để đưa ra cách thức thực hiện từng công việc
Trang 7Bảng 5.3 Cách thức thực hiện từng công việc
Các công việc của quản lý dự án Mô tả A GIAI ĐOẠN LẬP KẾ HOẠCH
DỰ ÁN
và mức độ áp dụng quy trình kiểm soát chất lượng cho từng dự án cụ thể, nhà quản lý có thể biểu diễn các quy trình đó thành các sơ đồ nhận thức (cognitive map) hay mô hình mô phỏng liên tục để phân tích các hiệu ứng và thử nghiệm để chọn ra phương án tối ưu
2 Kế hoạch nhân sự
2.1 Chiến lược phân phối nguồn lực Sử dụng mô phỏng liên tục để so sánh giữa các phương án và tìm ra chiến lược tối ưu cho:
Nhân lực cho kiểm tra phần mềm Nhân lực cho kiểm soát quy trình Kế hoạch bổ sung và thay đổi nhân lực
2.2 Bố trí nhân sự, phân công công việc
Sử dụng sơ đồ Gantt, ma trận trách nhiệm và biểu đồ nhân lực để bố trí nhân sự và phân công công việc
3 Kế hoạch về tiến độ
3.1 Kế hoạch giao hàng Dùng các mô hình mô phỏng liên tục để
Trang 8đánh giá các tác động của sự can thiệp từ phía khách hàng và áp lực công việc Từ đó lập kế hoạch giao hàng để giảm thiểu các tác động này
3.2 Sắp xếp công việc Sử dụng sơ đồ Gantt, sơ đồ PERT để lập kế hoạch làm việc chi tiết
công việc, quy trình báo cáo
B GIAI ĐOẠN THỰC HIỆN DỰ ÁN
tiến độ thực hiện công việc thể hiện trên sơ đồ Gantt
2 Thay đổi và bổ sung nhân sự
2.1 Đánh giá hiệu quả Dùng các mô hình mô phỏng liên tục để phân tích hiệu quả, đánh giá và so sánh các phương án:
Số lượng và kinh nghiệm của nhân lực cần bổ sung
Thời gian bổ sung
So sánh bổ sung nhân sự với các phương án khác: làm thêm giờ, tăng thêm thời gian, giảm khối lượng công việc
Trang 92.2 Sắp xếp lại nhân sự và công việc Điều chỉnh lại sơ đồ Gantt, ma trận trách
nhiệm và biểu đồ nhân lực
3 Thay đổi yêu cầu
3.1 Đánh giá các tác động Dùng mô hình mô phỏng liên tục để phát hiện và đánh giá các tác động của sự thay đổi
3.2 Bố trí, điều chỉnh công việc Chuyển các hiệu ứng tìm được thành thời gian và chi phí Điều chỉnh kế hoạch thực hiện trên sơ đồ Gantt và phân công lại công việc
4 Thay đổi thiết kế
4.1 Đánh giá ảnh hưởng Dùng mô hình mô phỏng liên tục để đánh giá các tác động của các thiết kế bị thay đổi và các công việc nảy sinh
4.2 Thay đổi kế hoạch Tính toán thời gian và chi phí cho các tác động và công việc mới nảy sinh Điều chỉnh kế hoạch thực hiện trên sơ đồ Gantt và phân công lại công việc
5 Giải quyết các vấn đề nảy sinh
5.1 Xác định vấn đề Xác định các khó khăn và vấn đề từ các báo cáo và họp định kỳ
5.2 Tìm nguyên nhân của vấn đề Sử dụng các sơ đồ nhận thức để mô tả vấn đề và các quan hệ, các vòng phản hồi để tìm kiếm nguyên nhân của vấn đề
Trang 105.3 Tìm giải pháp Tìm giải pháp từ kinh nghiệm hay từ các sơ đồ của 5.2
Dùng mô phỏng liên tục để tìm và đánh giá hiệu ứng của các giải pháp để chọn lựa phương án tối ưu
5.4 Lập kế hoạch thực hiện giải pháp
Chuyển giải pháp thành WBS, sơ đồ Gantt, PERT
5.5 Thực hiện giải pháp
C GIAI ĐOẠN KẾT THÚC DỰ ÁN
hoàn thành
lệch và tìm kiếm các tác động dẫn đến các sai lệch đó
5.2.2 Phương pháp áp dụng
Ap dụng trong dự án
Yêu cầu của việc áp dụng mô hình tích hợp là người áp dụng phải hiểu được:
Phương pháp tư duy hệ thống
Một số kỹ thuật mô phỏng liên tục
Mô hình tích hợp
Trang 11 Mục tiêu của việc áp dụng mô hình tích hợp
Ứng dụng đầu tiên của mô phỏng liên tục là hỗ trợ quá trình ra các quyết định trong dự án Người ra quyết định có thể dùng mô phỏng liên tục để thử nghiệm các phương án Sau khi ra quyết định thì áp dụng các công cụ của phương pháp
truyền thống để thi hành
Ứng dụng thứ hai là tư duy hệ thống và các công cụ của mô phỏng liên tục cho phép nhà quản lý tìm ra nguyên nhân các sai lệch nhằm đưa ra phương án giải quyết chính xác
Do đó trong mô hình tích hợp, mô phỏng liên tục thường được áp dụng trong giai đoạn đầu của công việc
Quy trình áp dụng mô hình tích hợp trong một công ty gia công phần mềm
1 Xác định nhu cầu về phương pháp mới bằng cách liệt kê các vấn đề quản lý xảy ra trong nhiều dự án và được lặp lại nhiều lần
2 Huấn luyện về tư duy hệ thống và mô phỏng liên tục:
3 Giới thiệu mô hình tích hợp
7 Huấn luyện cho toàn công ty
8 Ứng dụng cho tất cả các dự án trong toàn công ty
9 Đánh giá kết quả và tiếp tục tối ưu mô hình
5.3 Một số mô hình mô phỏng liên tục
Bảng 5.4 Một số mô hình mô phỏng liên tục được đưa vào mô hình tích hợp
Trang 12MÔ HÌNH TÁC GIẢ MỤC TIÊU
Mô hình Khảo Sát Quy Trình Kiểm Soát Chất Lượng
John D.Sterman và Nelson P.Repenting [5]
Phân tích hiệu quả của sự phân phối nguồn lực trong dự án
Mô hình Khảo Sát Định Luật Brooks
Ray Madachy và Denton Tarbet [3]
Phân tích các tác động của việc bổ sung nhân sự
Mô hình Quản Lý Nhân Sự
Ray Madachy và Denton Tarbet [3]
Khảo sát các tác động của việc luân chuyển nhân sự, tuyển dụng…
Mô hình đánh giá tác động của sự thay đổi thiết kế
Terry Williams, Colin Eden, Fran Ackermann, Andrew Tait [22]
Đánh giá các tác động (trực tiếp và gián tiếp) lên toàn bộ dự án do sự thay đổi thiết kế tạo ra
Mô hình đánh giá tác động của hành vi khách hàng lên dự án
Alexandre G.Rodrigues và Terry Williams [18]
Phân tích các tác động của khách hàng lên sự ổn định của dự án và các hiệu ứng đối với tiến độ, chất lượng
Phần sau sẽ mô tả chi tiết các mô hình này theo các nội dung sau:
Mục đích của mô hình Giới thiệu mô hình Trường hợp áp dụng Kết luận
Các mô tả này sẽ giúp cho việc áp dụng mô hình thuận tiện và dễ dàng hơn
Trang 135.3.1 Quy trình kiểm sốt chất lượng
Mục đích của mơ hình
Vai trị của quy trình kiểm sốt chất lượng trong dự án
Nên dành bao nhiêu nguồn lực cho việc kiểm tra sản phẩm và cải tiến quy trình
Giớithiệu mơ hình
Phần lớn lỗi được tạo ra do các sai sĩt của quy trình Do đĩ nếu dự án áp dụng các quy trình hiệu quả và các thành viên trong dự án đều được huấn luyện về quy trình phát triển phần mềm và quy trình chất lượng thì các sai sĩt sẽ được giảm thiểu
Khối lượngcông việchoàn thành
Khối lương côngviệc chưa hoànthành theo tiến độKhối lượng công việc hoàn
thành đạt chất lượng
Nỗ lực làmviệc
Nỗ lực sữa lỗi
Ngồn lực đểsửa lỗi
Khối lượng công việctheo kế hoachVấn đề nảy sinhVấn đề được giải quyết
Sữa lỗiTạo lỗi
(B2)Sửa đổi
Hình 5.1 Mơ hình khảo sát quy trình (a) [5]
Nhà quản lý dự án phải so sánh giữa lợi ích và chi phí của việc đầu tư cho quy trình cải tiến/kiểm sốt chất lượng:
Trang 14 Chi phí:
o Nhân lực dành cho việc cải tiến quy trình
o Thời gian huấn luyện cho các thành viên trong dự án
o Nỗ lực thực hiện quy trình kiểm soát chất lượng
Lợi ích:
o Giảm thời gian kiểm tra và sữa lỗi
Mô hình sau cho thấy nếu nhiều nguồn lực được dành cho việc sửa lỗi thì nguồn lực dành cho việc giải quyết các vấn đề của quy trình giảm đi (do hạn chế về nguồn lực), dẫn đến sai sót tiếp tục được tạo ra và không thể giảm được số lượng nhân lực để sửa lỗi
Trang 15Khối lượngcông việchoàn thành
Khối lương côngviệc chưa hoànthành theo tiến độKhối lượng công việc hoàn
thành đạt chất lượng
Nỗ lực làmviệc
Nỗ lực sữa lỗi
Ngồn lực đểsửa lỗi
Nguồn lực sẵn cóVấn đề nảy sinhVấn đề được giải quyết
Sữa lỗiTạo lỗi
(B1) Làmnhiều hơn
(B2)Sửa đổi
(R1a)Tái đầu
(B4) Tậptrung vàokhối lượnghoàn thành
(R1b)Tái đầu
Trang 162 Đầu tư nguồn lực cho việc sửa lỗi sẽ giảm các sai sót trong sản phẩm cuối cùng
3 Đầu tư nguồn lực cho các hoạt động cải tiến quy trình sẽ có tác động dài hạn bằng cách nâng cao hiệu quả của quy trình, từ đó giảm tỷ lệ sai hỏng được tạo ra
5.3.2 Mô hình khảo sát định luật Brooks
Mục đích của mô hình
Mục đích của mô hình là khảo sát định luật Brooks bằng mô hình mô phỏng liên tục, nhằm hiểu rõ các tác động của việc thay đổi nhân sự trong dự án phần mềm
Giớithiệu mô hình
Một nhận định nổi tiếng của của Fred Brooks (1975): “Thêm người vào một dự
án phần mềm đang bị trễ sẽ càng làm nó trễ hơn” (Adding manpower to a late software project makes it later) với những lý giải về huấn luyện và giao tiếp
(training and communication overhead)
Mô hình được xây dựng với một số giả định:
Thành viên mới sẽ cần sự huấn luyện từ các thành viên cũ có kinh nghiệm Nhiều người sẽ cần nhiều giao tiếp (communication)
Năng suất trung bình của các thành viên cũ luôn cao hơn các thành viên mới
Trang 17Yêu cầu củadự án
Sản phẩmphần mềm
Huấn luyện
Nhân viên cókinh nghiệm cần
cho huấn luyện
Trao đổi giữa cácthành viên
Năng suất trong điềukiện bình thường
Thành viên
nghiệmTốc độ xây dựng phần mềm
Tốc độ bố trí nhân sựTốc độ thu thập kinh nghiệm
Số lượng thànhviên mới
Thời gian của cácthành viên mới
Hình 5.3 Mơ hình khảo sát định luật Brooks [3]
Ngày giao hàngNgày hoàn thành dự
Thời giancòn lại
Tỷ lệ thời gian cần cho phốihợp công việc
Số nhân viên
Sự chênh lệch thờigian
-Thời gian
Hình 5.4 Các tác động của sự bổ sung nhân sự [3]
Khi cần tăng khối lượng cơng việc lên 20%, các nhà quản lý dự án thường yêu cầu tăng thêm 20% thành viên Tuy nhiên mơ hình cho thấy sau khi bổ sung nhân sự,
Trang 18khối lượng công việc sẽ giảm xuống, sau đó sẽ dần dần tăng thêm nhưng sẽ không bao giờ đạt 20%:
Các thành viên mới cần thời gian huấn luyện
Các thành viên cũ phải dành thời gian huấn luyện các thành viên mới Các thành viên mới gây ra nhiều sai hỏng hơn, do đó nỗ lực sữa lỗi sẽ tăng
lên
Thêm thời gian để giao tiếp và trao đổi làm giảm thời gian thực hiện dự án Do sự bổ sung nhân sự cần thời gian để phát huy hiệu quả, nếu thời gian còn lại của dự án quá ngắn sẽ không có tác dụng
(lifecycle) trong dự án Ta vẫn có thể thêm người trong giai đoạn đầu của dự
án Ta có thể làm rõ định luật Brooks như sau: “Thêm người vào một dự án
phần mềm đang bị trễ sẽ càng làm nó trễ hơn, nếu thêm quá nhiều trong giai đoạn sau của dự án” (Adding manpower to a late software project makes it later if too much is added too late)
5.3.3 Mô hình quản lý nhân sự trong dự án
Mục đích của mô hình
Điều chỉnh mô hình định luật Brooks để hỗ trợ việc ra các quyết định về :
Thuê mướn và luân chuyển nhân sự
Khảo sát vấn đề luân chuyển nhân sự giữa các dự án
Trang 19Giớithiệu mơ hình
Mơ hình bao gồm một số vịng phản hồi:
Tỷ lệ lỗi phát sinh phụ thuộc vào kinh nghiệm của các thành viên trong dự án
Năng suất tỷ lệ với kinh nghiệm nhưng sẽ giảm khi số lượng các thành viên trong dự án tăng lên
Thời giansửa lỗi
Phát sinhlỗi
Kế hoạch&ø nỗ lựcthực hiện
Nguồn nhân lực
Mức kinhnghiệm
Trao đổi trongdự án
Năng suấtÁp lực
giao hàng
Hình 5.5 Mơ hình quản lý nhân sự trong dự án [3]
Trường hợp áp dụng
Giai đoạn áp dụng:
Hoạch định dự án: hoạch định nhân sự
Thực hiện dự án: quyết định điều chỉnh nhân sự
Trang 20Kếtluận
Mô hình cho thấy trong một số trường hợp, sự tăng thêm người sẽ có hiệu quả và một số trường hợp không có kết quả Mô hình cũng cho thấy việc tuyển dụng một người thường mất trên hai tháng Do đó kế hoạch tuyển dụng nên được hoạch định trước một cách phù hợp
Mô hình cũng cho thấy sự chuyển đổi nhân sự thường mai lại hiệu quả kém Cả hai dự án đều phải dành thời gian cho việc huấn luyện người mới và tăng số lượng các trao đổi (communication)
Ngoài ra, hiệu quả khi một người làm nhiều việc đồng thời cũng thấp hơn so với khi làm một công việc tại một thời điểm
5.3.4 Quan hệ với khách hàng
Mục đích của mô hình
Khảo sát các tác động của khách hàng lên dự án trong giai đoạn thực hiện và đánh giá các ảnh hưởng của các tác động đó lên chất lượng và khả năng hoàn thành dự án
Đề xuất một số giải pháp để hạn chế các tác động đó
Giớithiệu mô hình
Các tác động của hành vi khách hàng lên dự án:
Ràng buộc về thời gian
Các yêu cầu về báo cáo tiến độ
Sự chậm trễ trong việc duyệt/thông qua các tài liệu
Sự chậm trễ trong việc cung cấp các thông tin cần thiết
Thay đổi yêu cầu, phạm vi của dự án