Tổng quan lập lịch dự án phần mềm và quản lý rủi ro trong lập lịch dự án; quản lý rủi ro trong dự án phần mềm; mô hình quản lý dự án dựa trên kỹ thuật lập lịch PERT và mạng Bayes; xây dựng phương pháp mô hình hóa rủi ro trong lập lịch pert tích hợp đánh giá mức độ hoàn thành dự án phần mềm.
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
LUẬN VĂN THẠC SĨ
Nghiên cứu mô hình hóa rủi ro lập lịch dự án sử dụng các ước lượng mức độ hoàn thành dự án
ĐINH QUANG BẮC Ngành : Công nghệ thông tin
Giảng viên hướng dẫn: PGS TS Huỳnh Quyết Thắng
Viện: Công nghệ thông tin và Truyền thông
Trang 2TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
Ngành : Công nghệ thông tin
Giảng viên hướng dẫn: PGS TS Huỳnh Quyết Thắng
Viện: Công nghệ thông tin và Truyền thông
Chữ ký của GVHD
HÀ NỘI, 10/2019
Trang 3CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
BẢN XÁC NHẬN CHỈNH SỬA LUẬN VĂN THẠC SĨ
Họ và tên tác giả luận văn: Đinh Quang Bắc
Đề tài luận văn: Nghiên cứu mô hình hóa rủi ro lập lịch dự án sử dụng các ước lượng mức độ hoàn thành dự án
Chuyên ngành: Công nghệ thông tin
Mã số HV: CB160532
Tác giả, Người hướng dẫn khoa học và Hội đồng chấm luận văn xác nhận tác giả đã sửa chữa, bổ sung luận văn theo biên bản họp Hội đồng ngày26 tháng
10 năm 2019 với các nội dung sau:
1 Luận văn cần xác định rõ ràng hơn nữa về động cơ, mục tiêu nghiên cứu để từ đó phát biểu được bài toán và nêu được ý nghĩa của phương pháp
đề xuất
+ Mô tả rõ hơn trong chương 1, mục 1.2 và 1.3
+ Chưa có tóm tắt nội dung của các chương
+ Nội dung mô hình PERTBN trình bày thiếu dẫn dắt (chương 2, mục 2.4.1)
+ Phương pháp EVM đi thẳng giới thiệu các bước thực hiện mà chưa có
mô tả tóm tắt ý tưởng, nội dung và phương pháp (chương 2, mục 2.5.1)
+ Cần trình bày cô đọng với sự phân tích ưu nhược điểm của Pert, bayes và EVM, tích hợp EVM ( chương 3, mục 3.2, 3.4)
+ Cần làm rõ mục tiêu các vấn đề quan tâm trong Quản lý rủi ro trong lập lịch dự án vì nó khác quản lý dự án phần mềm (chương 2, mục 2.2)
+ Thêm nhược điểm của PERT (chương 2, mục 2.1.2)
+ Cần làm rõ bảng 2.2.2 đưa ra 22 rủi ro theo 5 nhóm thuộc rủi ro dự án phần mềm đâu là rủi ro lập lịch dự án
2 Khắc phục các sai sót về chính tả, logic trong trình bày:
Trang 4+ Đã thực hiện hiệu chỉnh chú thích các bảng, đã đánh số các công thức trong luận văn
+ Đã hiệu chỉnh các lỗi Error ! Reference source not found, trích dẫn tới các tài liệu tham khảo trích dẫn
+ Đã bổ sung một số từ viết tắt vào bảng chữ viết tắt như BN
+ Đã chỉnh sửa Hình 3.11 thành tiếng Việt để trình bày rõ hơn
+ Chỉnh sửa các lỗi chính tả
3 Làm rõ kết quả thử nghiệm
Đã bổ sung phân tích kết quả thử nghiệm của 5 dự án (chương 4 mục 4.1)
Ngày tháng năm 2019
PGS.TS Huỳnh Quyết Thắng Đinh Quang Bắc
CHỦ TỊCH HỘI ĐỒNG
TS Nguyễn Thị Thu Trang
Trang 5LỜI CẢM ƠN
Để hoàn thành Luận văn Thạc sĩ của mình, Tôi xin gửi lời cảm ơn chân thành đến Ban Giám Hiệu, Viện Đào Tạo Sau Đại Học, Viện Công Nghệ Thông Tin và Truyền Thông cùng các Giảng viên trường Đại Học Bách khoa Hà Nội đã nhiệt tình truyền đạt những kiến thức quý báu cho tôi trong suốt quá trình học tập và hoàn thành Luận văn Thạc sĩ
Tôi xin gửi lời cảm ơn tới PGS.TS Huỳnh Quyết Thắng Người trực tiếp chỉ bảo, hướng dẫn tôi trong suốt quá trình nghiên cứu và hoàn thành Luận văn Thạc sĩ
Tôi xin chân thành cảm ơn các anh, chị đồng nghiệp đã giúp đỡ tôi trong suốt quá trình thực hiện đề tài
Sau cùng tôi xin gửi lời biết ơn sâu sắc đến người thân trong gia đình đã luôn tạo điều kiện tốt nhất cho tôi trong suốt quá trình học cũng như thực hiện luận văn
Do thời gian có hạn và kinh nghiệm nghiên cứu khoa học chưa nhiều nên luận văn còn nhiều thiếu soát, rất mong nhận được ý kiến góp ý của Thầy/Cô và các anh chị học viên cũng như các đồng nghiệp
Hà Nội, ngày….tháng….năm 2019
Học viên
Đinh Quang Bắc
Trang 6MỤC LỤC
DANH MỤC HÌNH VẼ iii
DANH MỤC BẢNG iv
DANH MỤC TỪ VIẾT TẮT v
CHƯƠNG 1 GIỚI THIỆU ĐỀ TÀI 1
1.1 Đặt vấn đề 1
1.2 Mục tiêu, nhiệm vụ, đối tượng, phạm vi và phương pháp nghiên cứu đề tài 2
1.3 Bố cục luận văn 2
CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 4
2.1 Lập lịch dự án phần mềm và quản lý rủi ro trong lập lịch dự án 4
Kỹ thuật định đường găng CPM 4
Kỹ thuật xem xét và đánh giá chương trình - PERT 6
Một số so sánh đánh giá giữa CPM và PERT 12
Các kỹ thuật mô phỏng 12
2.2 Quản lý rủi ro trong dự án phần mềm 13
Một số mô hình quản lý rủi ro 14
Các yếu tố rủi ro trong lập lịch dự án 16
2.3 Định lý Bayes và mạng Bayes 18
Định lý Bayes 19
Mạng Bayes 19
2.4 Mô hình quản lý dự án dựa trên kỹ thuật lập lịch PERT và mạng Bayes 21
Mô hình nút trong mạng PERTBN 22
Mô hình cấu trúc của mạng PERTBN 23
2.5 Phương pháp quản trị giá trị thu được EVM 24
Ý tưởng về tiếp cận sử dụng EVM 24
Các tham số chính 25
Các độ đo hiệu suất 26
Các độ đo dự đoán 26
Phân tích ưu nhược điểm của EVM 26
2.6 Kết chương 27
Trang 7CHƯƠNG 3 XÂY DỰNG PHƯƠNG PHÁP MÔ HÌNH HOÁ RỦI RO TRONG LẬP LỊCH PERT TÍCH HỢP ĐÁNH GIÁ MỨC ĐỘ HOÀN
THÀNH DỰ ÁN PHẦN MỀM 28
3.1 Xây dựng mô hình rủi ro bằng mạng Bayes 28
3.2 Tích hợp mô hình mạng Bayes các rủi ro vào lập lịch PERT 30
3.3 Bài toán đánh giá mức độ hoàn thành dự án phần mềm 32
3.4 Tích hợp các chỉ số của phương pháp quản trị giá trị thu được 33
Giá trị dự kiến của đường kế hoạch cơ sở dự án (PV) 33
Ba độ đo chính PV, EV, AC 34
Độ đo thời gian kế hoạch ES 36
Đo lường hiệu suất của một dự án 37
Dự đoán chi phí hoàn thành 40
Dự đoán thời gian hoàn thành dự án 42
3.5 Kết chương 44
CHƯƠNG 4 THỬ NGHIỆM VÀ ĐÁNH GIÁ 46
4.1 Xây dựng phần mềm thử nghiệm 46
4.2 Dữ liệu thử nghiệm 50
4.3 Kết quả thử nghiệm 56
4.4 Kết chương 59
CHƯƠNG 5 KẾT LUẬN 60
5.1 Những kết quả đạt được: 60
5.2 Những hạn chế, thiếu sót: 61
5.3 Hướng phát triển 61
Trang 8DANH MỤC HÌNH VẼ
Hình 2.1 Cách biểu diễn các chỉ tiêu trên nút 8
Hình 2.2 Sơ đồ mạng dự án mở rộng trung tâm 8
Hình 2.3 Mạng dự án ES và EF 9
Hình 2.4 Mạng dự án với LS và LF 10
Hình 2.5 Biểu diễn quan hệ trong mạng Bayes 20
Hình 2.6 Mô hình mạng Bayes trong từng nút công việc 23
Hình 2.7 Mạng PERTBN trong mô hình chuỗi đơn 23
Hình 2.8 Mạng PERTBN cho chuỗi tập trung 24
Hình 2.9 Mạng PERTBN cho chuỗi phân tán 24
Hình 2.10 Ba thành phần quan trọng của EVM 25
Hình 3.1 Mô hình mạng Bayes các rủi ro tác động lên từng công việc 30
Hình 3.2 Mô hình tích hợp mạng rủi ro vào lập lịch PERT 32
Hình 3.3 Ví dụ về một mạng lưới công việc của một dự án 33
Hình 3.4 Đường kế hoạch cơ sở sớm nhất của dự án tại 33
Hình 3.5 Đường cong PV (S-curve) 34
Hình 3.6 Tiến độ thực hiện dự án thực tế ở thời điểm kết thúc 7 tuần 34
Hình 3.7 Các đường cong S của PV, EV và AC 35
Hình 3.8 Minh họa tính toán ES tại tuần thứ 7 của dự án 36
Hình 3.9 Tiến độ dự án ở tuần thứ 7 38
Hình 3.10 Một ví dụ về đường kế hoạch cơ sở (phía trên) và tiến độ thực tế (phía dưới) bị chậm tiến độ 2 tuần 39
Hình 3.11 So sánh giữa SPI và SPI(t) 40
Hình 3.12 dự đoán chi phí (EAC) và thời gian (EAC(t)) hoàn thành dự án 44
Hình 4.1 Giao diện khi mở chương trình 49
Hình 4.2 Giao diện kết quả dự án 49
Hình 4.3 Mạng PERTBN của toàn bộ dự án 50
Hình 4.4.Giao diện dự đoán thời điểm hoàn thành dự án 50
Hình 4.5 Biểu đồ kết quả dự án 1 56
Hình 4.6 Biểu đồ kết quả dự án 2 57
Hình 4.7 Biểu đồ kết quả dự án 3 57
Hình 4.8 Biểu đồ kết quả dự án 4 58
Hình 4.9 Biểu đồ kết quả dự án 5 59
Trang 9DANH MỤC BẢNG
Bảng 2.1 Danh mục các hoạt động 7
Bảng 2.2 Lịch trình hoạt động của dự án mở rộng trung tâm 11
Bảng 2.3 Những rủi ro trong dự án phần mềm 17
Bảng 2.4 Sự khác nhau giữa suy diễn tần số và suy diễn Bayes 18
Bảng 2.5 Tóm tắt các thuộc tính cho mô hình PERTBN 22
Bảng 3.1 Mô hình mạng rủi ro bằng mạng Bayes 28
Bảng 3.2 Ví dụ các tham số chính của dự án tại Hình 3.5 34
Bảng 3.3 Ba tham số EVM chính và bốn độ đo hiệu suất 38
Bảng 3.4 Dữ liệu EVM cho ví dụ tại Hình 3.10 39
Bảng 3.5 Tổng quan về các dự đoán chi phí dựa trên EVM 41
Bảng 3.6 Ví dụ tổng hợp các dự đoán chi phí dựa trên EVM 41
Bảng 3.7 Tổng quan về các phương pháp dự đoán thời gian EVM 42
Bảng 3.8 Tổng quan về các dự đoán thời gian EVM theo ví dụ 44
Bảng 4.1 Mẫu dữ liệu đầu vào 47
Bảng 4.2 Dữ liệu dự án 1 51
Bảng 4.3 Dữ liệu dự án 2 52
Bảng 4.4 Dữ liệu dự án 3 53
Bảng 4.5 Dữ liệu dự án 4 54
Bảng 4.6 Dữ liệu dự án 5 54
Bảng 4.7 Kết quả dự đoán dự án 1 56
Bảng 4.8 Kết quả dự đoán dự án 2 57
Bảng 4.9 Kết quả dự đoán dự án 3 58
Bảng 4.11 Kết quả dự đoán dự án 4 58
Bảng 4.12 Kết quả dự đoán dự án 5 59
Trang 10DANH MỤC TỪ VIẾT TẮT
CPM Critical Path Method
PERT Program and Evaluation Review Technique
ES Earliest Start
EF Earliest Finish
LF Lastest Finish
DAG Directed Acyclic Graph
PMI Project Management Institute
OBS Object Breakdown Structure
BCWS Budget Cost for Work Schedule
ACWP Actual Cost of Work Performed
CPI Cost Performance Index
SCI Schedule Cost Index
Trang 11PCWR Planned Cost of Work Remaining
PDWR Planned Duration of Work Remaining
BN Bayesian network
(mạng Bayes)
Trang 12BẢNG CHỈ DẪN CÁC CÔNG THỨC
PT 2.1 7
PT 2.2 7
PT 2.3 19
PT 2.4 19
PT 3.1 31
PT 3.2 31
PT 3.3 31
PT 3.4 31
PT 3.5 36
PT 3.6 37
PT 3.7 37
PT 3.8 37
PT 3.9 39
PT 3.10 39
PT 3.11 40
PT 3.12 41
PT 3.13 42
PT 3.14 43
PT 3.15 43
Trang 14CHƯƠNG 1 GIỚI THIỆU ĐỀ TÀI
Trong chương này, Luận văn đưa ra được vấn đề quan trọng, cấp thiết của việc nghiên cứu, Mục tiêu, nhiệm vụ, đối tượng, phạm vi và phương pháp nghiên cứu đề tài
1.1 Đặt vấn đề
Trong thời kỳ hội nhập kinh tế mạnh mẽ như hiện nay, một trong những ngành nghề quan trọng nhất, làm nền tảng cho các ngành nghề khác chính là công nghiệp phần mềm Do đó sự phức tạp của các phần mềm chức năng cũng tăng mạnh theo yêu cầu thực tế Vì vậy, cần phải đề cao quản lý phát triển dự án phần mềm
Quản lý dự án phần mềm bao gồm các công việc: Khởi tạo dự án, Lập kế hoạch dự án, Triển khai, Giám sát và kiểm soát, Kết thúc dự án Trong đó, lập kế hoạch dự án chính là công việc đầu tiên mà người quản lý dự án phần mềm cần thực hiện Dự án phần mềm có thành công hay không phụ thuộc rất lớn vào thành công của Lập lịch dự án Trước đây, do những kiến thức quản lý dự án còn chưa được phổ biến, việc lập lịch dự án chưa được coi trọng Tuy nhiên, với những kiến thức về quản lý dự án hiện nay, việc lập lịch dự án được xem là công việc quan trọng bậc nhất trong quản lý dự án nói chung và quản lý dự án phần mềm nói riêng Lập lịch dự án tốt đồng nghĩa với việc dự án được phân bổ nguồn lực một cách hiệu quả, sự chậm trễ trong công việc được giảm tới mức thấp nhất và quan trọng nhất là đem đến thành công cho dự án Muốn làm được điều đó thì một trong những công việc đòi hỏi người quản lí phải làm tốt đó là dự đoán và kiểm soát được các rủi ro tiềm ẩn trong dự án Dự đoán và kiểm soát được rủi ro
từ bước lập lịch dự án giúp cho người quản lí có cái nhìn thực tế hơn về lịch trình
dự án, đánh giá, kiểm soát được các rủi ro và có sự phân bổ nguồn lực, thời gian hợp lí đối với các công việc trong dự án
Điều cần thiết ở đây là cần có một phương pháp hỗ trợ người quản lý dự án phần mềm trong việc Lập lịch dự án, giúp họ có một cái nhìn chính xác về yếu tố rủi ro ảnh hưởng trực tiếp tới các công việc của dự án từ đó có sự phân bổ tài nguyên hợp lí hơn trong lập lịch
Hiện nay, có khoảng nửa triệu người quản lý dự án thực hiện khoảng một triệu dự án phần mềm mỗi năm Tuy nhiên, một phân tích cho thấy khoảng một phần ba các dự án có chi phí và thời gian hoàn thành vượt hơn 125% so với kế hoạch Một trong những lý do quan trọng nhất mà các dự án không hoàn thành như kỳ vọng là do quản lý dự án không phù hợp Để thoát khỏi tình trạng này người quản lý dự án phải biết cách quản lý dự án cho thật hiệu quả mà một trong
số đó chính là việc áp dụng các công cụ để dự đoán chi phí và thời gian hoàn thành dự án tại bất kỳ thời điểm nào của quá trình thực hiện dự án
Trang 151.2 Mục tiêu, nhiệm vụ, đối tượng, phạm vi và phương pháp nghiên cứu đề tài
Mục tiêu: Luận văn được thực hiện nhằm nâng cao kết quả dự đoán mức
độ hoàn thành dự án phần mềm qua việc xây dựng mô hình hóa quản lý các rủi ro trong lập lịch PERT và tích hợp các chỉ số của phương pháp quản trị giá trị thu được EVM Từ các kết quả trên chúng sẽ được áp dụng vào thực tế để người quản trị dự án dự đoán được các rủi ro, kịp thời điều chỉnh kế hoạch cho phù hợp với từng công việc, đồng thời giúp người quản trị dự án biết cách quản lý dự án cho thật hiệu quả, tiết kiệm tài nguyên, nguồn lực và các chi phí quản lý đáp ứng khả năng nâng cao chất lượng dự đoán mức độ hoàn thành các dự án phần mềm
Nhiệm vụ luận văn:
- Tìm hiểu tổng quan về lập lịch dự án phần mềm, kỹ thuật CPM và PERT
- Tìm hiểu về mô hình quản trị rủi ro sử dụng mạng Bayes
- Tìm hiểu phương pháp ước lượng hoàn thành dự án sử dụng EVM
- Xây dựng phương pháp mô hình hóa rủi ro trong lập lịch dự án sử dụng PERT tích hợp phương pháp đánh giá mức độ hoàn thành dự án phần mềm
- Chạy thử nghiệm với 5 bộ dữ liệu thực tế và đánh giá
Đối tượng: Luận văn tìm hiểu về hệ thống quản lý và phân tích các phương
pháp lập lịch dự án, các rủi ro và mạng Bayes Trong đó, luận văn tập trung vào nghiên cứu phương pháp lập lịch PERT, bộ 19 rủi ro và quản lý theo mạng Bayes
và các chỉ số quản trị giá trị thu được EVM, dự đoán tại thời điểm hoàn thành của một dự án phần mềm
Phạm vi: Quản trị dự án phần mềm
Phương pháp nghiên cứu: Luận văn nghiên cứu một cách tổng quan về
các dự án đã được triển khai Đặc điểm, ưu điểm và nhược điểm của từng phương pháp lập lịch như CPM, PERT Nghiên cứu về mạng Bayes để xây dựng
mô hình quản lý rủi ro theo mạng Bayes và kết hợp với các ước lượng mức độ hoàn thành dự án Bộ dữ liệu dùng để đánh giá được lấy từ các dự án thực tế đã được triển khai
1.3 Bố cục luận văn
Chương I: Giới thiệu đề tài
Luận văn đưa ra được vấn đề quan trọng, cấp thiết của việc nghiên cứu, Mục tiêu, nhiệm vụ, đối tượng, phạm vi và phương pháp nghiên cứu đề tài
Chương II: cơ sở lý thuyết
Trang 16Tìm hiểu chi tiết, so sánh các phương pháp lập lịch dự án đưa ra lựa chọn phương pháp nghiên cứu hô hình quản lý dự án dựa trên kỹ thuật lập lịch PERT
và mạng Bayes Bên cạnh đó, luận văn cũng nghiên cứu kết hợp mô hình quản lý
dự án dựa trên kỹ thuật PERT và phương pháp quản trị giá trị thu được EVM Tìm hiểu và nghiên cứu quản lý rủi ro trong lập lịch dự án: Có cái nhìn tổng quan
về mạng Bayes, mô hình quản lý dự án dựa trên kỹ thuật lập lịch PERT và bayes, phương pháp quản trị giá trị thu được EVM
Chương III: Xây dựng phương pháp quản trị rủi ro trong lập lịch PERT tích hợp đánh giá mức độ hoàn thành của dự án phần mềm
Từ cơ sở lý thuyết đã nghiên cứu ở chương II, luận văn xây dựng phương pháp quản trị rủi ro bằng mạng Bayes, tích hợp mô hình rủi ro vào lập lịch Pert Đánh giá mức độ hoàn thành dự án phần mềm dựa trên các chỉ số quản trị giá trị thu được EVM
Chương IV: Xây dựng công cụ và thử nghiệm
Tiến hành xây dựng công cụ từ phương pháp đã trình bày ở chương 2, Chương 3, luận văn tập trung vào việc mô tả thiết kế của công cụ và đặc biệt là chạy thử nghiệm, đánh giá hiệu quả mà công cụ mang lại
Chương V: Kết luận và hướng phát triển
Trong chương này luận văn sẽ tóm tắt các kết quả đã đạt được, các đóng góp và các khó khăn trong quá trình làm luận văn, cũng như hướng phát triển tiếp theo cho đề tài luận văn
Trang 17CHƯƠNG 2 CƠ SỞ LÝ THUYẾT
Tìm hiểu chi tiết, so sánh các phương pháp lập lịch dự án đưa ra lựa chọn phương pháp nghiên cứu hô hình quản lý dự án dựa trên kỹ thuật lập lịch PERT
và mạng Bayes Bên cạnh đó, luận văn cũng nghiên cứu, phương pháp quản trị giá trị thu được EVM
2.1 Lập lịch dự án phần mềm và quản lý rủi ro trong lập lịch dự án
Lập lịch dự án nói một cách đơn giản là tách phần việc tổng thể thành các hoạt động và đánh giá thời gian cần thiết để hoàn thành các hoạt động đó, và người quản trị dự án cũng phải ước lượng được các nguồn lực cần thiết cho mỗi hoạt động
Để quản lý được lịch biểu dự án thì người quản lý dự án cần nắm được trình
tự logic của từng nhiệm vụ và ngày tháng bắt đầu kết thúc cho từng nhiệm vụ Lịch biểu giúp cho ta suy ra ngày tháng
Quản lý rủi ro dự án bao gồm việc xác định, giám sát, kiểm soát và đo lường Rủi ro dự án này tập trung vào một thành phần đặc biệt quan trọng của quản lý rủi ro, cụ thể là các khía cạnh định lượng Các tiêu chí đánh giá sự thành công hay thất bại của một dự án là: chi phí, thời gian và chất lượng Trong thực
tế là do hạn chế về dự án, những đánh đổi cần phải được thực hiện mà thường dẫn đến chỉ có hai trong ba tiêu chí được đáp ứng Tuy nhiên, thực tế là do hạn chế về dự án, những đánh đổi cần phải được thực hiện mà thường dẫn đến chỉ có hai trong ba tiêu chí được đáp ứng
- Điều cần thiết là một cách tiếp cận mới để đánh giá rủi ro định lượng đáp ứng các yêu cầu sau:
- Có khả năng mô hình hóa và đo lường giữa thời gian, chi phí và chất lượng, trong đó có một cách để có thể trả lời những câu hỏi như đề cập trước đây
- Có khả năng để tính toán một số rủi ro tổng thể cho dự án đó
- Năng động, tức là có thể đưa vào thông tin mới để sửa đổi nó dự báo và đánh giá cho điểm rủi ro tổng thể
- Có khả năng nắm bắt được khái niệm về nhân quả như khả năng tránh rủi
ro bằng cách sử dụng điều khiển và mitigants Lý tưởng nhất có thể nắm bắt cơ hội cũng như rủi ro từ đó sẽ có tác động vào sự thành công chung của dự án
- Có khả năng định lượng
- Các phương pháp có thể được sử dụng cả bởi những người dùng không
có kiến thức toán học / thống kê
Sau đây là 1 số kĩ thuật lập lịch phổ biến
Kỹ thuật định đường găng CPM
Phương pháp CPM (hay còn gọi là đường Găng / đường tới hạn) là một phương pháp lập kế hoạch theo sơ đồ mạng CPM ra đời năm 1957 và được áp dụng lần đầu tiên cho các dự án bảo trì nhà máy của Công ty DuPont Phương pháp này tập trung chính vào mối quan hệ giữa chi phí và thời gian
Trang 18CPM xác định con đường dài nhất trong mạng được gọi là con đường găng bằng cách tính toán hoạt động các thông số thời gian Bất kỳ sự chậm trễ trong một hoạt động trên đường găng sẽ làm chậm toàn bộ dự án Các đường hoạt động
mà không phải là đường găng có thể bị chậm trễ nếu người quản lý đã lên kế hoạch linh hoạt, mà không nhất thiết phải trì hoãn dự án
CPM mô hình hóa các hoạt động và sự phụ thuộc của chúng Do đó, một hoạt động không thể bắt đầu cho đến khi những hoạt động liên quan trước nó kết thúc Những hoạt động này cần phải được hoàn thành trong một chuỗi, với mỗi giai đoạn được hoàn thành trước khi giai đoạn tiếp theo có thể bắt đầu
Phương pháp Đường găng hay phương pháp tổ chức thực hiện công việc theo sơ đồ mạng về bản chất là phương pháp tổ chức thực hiện công việc theo các công việc trọn gói (Work package) hay chính là tổ chức theo dự án (có thể là đơn lẻ hay duy nhất) Trong gói công việc trọn gói, các công việc vẫn được phân theo chuyên môn, nhưng đơn lẻ và có thể là duy nhất không thể hợp thành dây chuyền, do những lao động chuyên nghiệp tương ứng làm Tuy nhiên, các công việc chuyên môn trong gói công việc được thực hiện với một biên chế lao động không cố định, có thể thay đổi biên chế lao động từ đó thời lượng thực hiện các công việc chuyên môn này cũng thay đổi theo Phương pháp Đường găng không chú trọng tới tính định biên của các tổ đội chuyên nghiệp, mà chú trọng tới tính găng (tức là tính căng thẳng, khẩn trương của các công việc chuyên môn khác nhau trong gói công việc dự án) Phương pháp Đường găng được áp dụng cho mọi loại dự án (là những nỗ lực thực hiện công việc một cách hữu hạn theo một dạng đơn đặt hàng nào đó (ví dụ như: hợp đồng, ), chứ không phải là sản xuất hàng hóa hàng loạt theo kiểu công nghiệp), bao gồm cả dự án xây dựng
Khác với 2 phương pháp tổ chức thực hiện công việc là: phương pháp tổ chức theo tổ đội lao động chuyên nghiệp (Line of Balance-LoB) và phương pháp
tổ chức thực hiện công việc theo dây chuyền, trong Phương pháp Đường găng tức là phương pháp tổ chức thực hiện công việc trọn gói, cả thời lượng thực hiện của các công tác lẫn các thời điểm bắt đầu và kết thúc của mỗi công tác có thể được thay đổi linh hoạt
Thời lượng thực hiện của các công tác trên mỗi phân đoạn có thể thay đổi, khi thay đổi (thêm bớt) biên chế tổ đội lao động chuyên nghiêp Phương pháp Đường găng cho phép một loại công tác chuyên môn được thực hiện với khối lượng công tác như nhau trên 2 phân đoạn công việc khoán gọn (trọn gói), có thể được thực hiện với số lượng biên chế lao động chuyên nghiệp khác nhau, và do
đó thời lượng thực hiện công tác chuyên môn đó trên mỗi phân đoạn là khác nhau Điều này là không thể ở phương pháp tổ chức theo tổ đội chuyên nghiệp,
và đặc biệt là không thể có ở phương pháp tổ chức thực hiện công việc theo dây chuyền
Trong phương pháp Đường găng, thời điểm bắt đầu và kết thúc của mỗi công tác chỉ bị ghim cố định trên trục thời gian, khi mà công tác đó là những công tác găng (chúng nằm trên đường găng), còn nếu chúng không nằm trên
Trang 19đường găng thì thời điểm bắt đầu và kết thúc của chúng có thể thay đổi trôi nổi trong khoảng thời gian dự trữ toàn phần
Nhưng ngay cả các công tác găng cũng có thể thay đổi thành các công tác không găng và ngược lại công tác không găng có thể thành công tác găng, đồng thời với việc thay đổi đường găng, nếu như ta thay đổi thời lượng thực hiện công tác của các công tác găng này (thay đổi bằng cách tăng giảm biên chế tổ đội chuyên nghiệp) Do vậy, thời điểm bắt đầu và kết thúc của các công việc găng cũng chỉ là cố định một cách tương đối trong phương pháp Đường găng
Phân tích ưu nhược điểm của kỹ thuật CPM
Ưu điểm:
- CPM được phát triển chủ yếu cho các dự án công nghiệp với thời gian các hoạt động đã biết một cách chắc chắn CPM cho phép việc chọn lựa giảm thời gian hoạt động bằng cách bổ sung nguồn nhân lực và tài nguyên, với chi phí gia tăng
- Đặc điểm nổi bật của CPM là việc thoả hiệp thời gian và chi phí cho nhiều hoạt động dự án khác nhau
Kỹ thuật xem xét và đánh giá chương trình - PERT
Kỹ thuật xem xét và đánh giá dự án PERT cũng là một phương pháp nằm trong nhóm hoạch định đường tới hạn PERT được áp dụng chính thức vào năm
1958 trong việc hoạch định và kiểm soát hệ thống khí giới của Hải quân Mỹ Sau
đó áp dụng rộng rãi cho các công ty xây dựng và các loại hình công ty khác
Sơ đồ mạng là sơ đồ bao gồm toàn bộ khối lượng các công việc của một dự
án, nó xác định một cách logic trình tự kỹ thuật và mối quan hệ về tổ chức giữa các công tác sản xuất, ấn định thời gian thực hiện của các công tác và tối ưu hoá
kế hoạch đề ra Trong quá trình quản lý và thực hiện dự án, ta vẫn có thể điều chỉnh sơ đồ mạng cho phù hợp với yêu cầu thực tế
Phương pháp xem xét và đánh giá dự án PERT, phương pháp này sử dụng
mô hình xác suất, theo đó thời gian hoàn thành công việc được cho dưới dạng hàm phân phối xác suất
PERT và CPM giống nhau về phương pháp cơ bản, nhưng chúng khác nhau
về ước tính thời gian của các công tác Đối với mỗi công tác trong phương pháp PERT, ba thời gian ước tính được kết hợp với nhau để xác định thời gian hoàn thành công tác mong đợi và phương sai của nó Do đó, điểm khác biệt của PERT
Trang 20là khả năng xử lý rủi ro trong thời gian thực hiện một hoạt động Thay vì có một đánh giá đơn cho mỗi hoạt động rời rạc như CPM, PERT sử dụng phân bố xác suất Beta Ba phép ước lượng (thời gian lạc quan, thời gian dễ xảy ra và thời gian
bi quan) được sử dụng để tính thời gian mong đợi và độ lệch chuẩn của hoạt động :
Công thức ước lượng thời gian trung bình PERT :
- Thời gian mong đợi:
Các bước vẽ sơ đồ PERT
Qui trình quản lý theo phương pháp PERT được thực hiện theo các bước sau:
Bước 1: Xác định các hoạt động của dự án và dự kiến thời gian hoàn thành
cho mỗi hoạt động
Nhận biết các hoạt động, xác định mối quan hệ liên kết giữa chúng và dự kiến thời gian hoàn thành mỗi hoạt động có ý nghĩa quan trọng trong việc áp dụng phương pháp điều hành PERT
Sau đó, phải xác định các hoạt động ngay trước, tức là những hoạt động phải được hoàn thành để bắt đầu các hoạt động khác Đối với dự án mở rộng trung tâm, gồm các hoạt động, trình tự và thời gian hoàn thành của từng hoạt động như trên Bảng 2.1 Danh mục các hoạt động
Chú ý: Để thuận tiện cho việc trình bày trên mạng dự án, mỗi hoạt động
cần ký hiệu đơn giản: A, B,C hay được đánh số: 1,2,3
Bước 2: Thiết lập mạng dự án nhằm mô tả các hoạt động và các hoạt động
ngay trước của các hoạt động như đã nêu trong bước 1
Ví dụ: Danh mục các hoạt động của dự án mở rộng Trung tâm X
Bảng 2.1 Danh mục các hoạt động
Hoạt
Hoạt động ngay trước
Thời gian
Trang 21E Chuẩn bị thủ tục xây dựng A 1
Hình 2.1 Cách biểu diễn các chỉ tiêu trên nút
Nỗi nút thường được ký hiệu bằng đường tròn hay hình chữ nhật
Trên mỗi nút, ngoài trừ nút bắt đầu (Start) và nút kết thúc (Finish), đều có thể trình bày nhiều thông tin liên quan đến từng hoạt động Tùy theo mục tiêu khác nhau mà mỗi nút được trình bày khác nhau Đối với tài liệu này, mỗi nút có những dạng và những thông tin như Hình 2.1
Hình 2.2 Sơ đồ mạng dự án mở rộng trung tâm
Trang 22Khi có mạng dự án, thực hiện việc đánh số thứ tự cho mỗi nút và ghi ngay thời gian hoàn thành của mỗi hoạt động
Chú ý khi vẽ nên tránh các cung cắt nhau
Với dự án mở rộng trung tâm, mạng dự án được mô tả như Hình 2.2
Bước 3:Tính thời điểm bắt đầu sớm (ES) và hoàn thành sớm (EF) cho mỗi
hoạt động
Theo hướng tiến, tính ES và EF cho từng hoạt động theo các qui tắc:
Thời điểm hoàn thành sớm của mỗi hoạt động theo công thức:
EFj=ESj+tj Thời điểm khởi công sớm: Thời điểm khởi công sớm của một hoạt động bằng giá trị lớn nhất trong các thời điểm hoàn thành sớm của tất cả các hoạt động ngay trước nó và được tính bằng công thức:
Theo hướng lùi, tính LF và LS cho từng hoạt động theo các qui tắc:
Thời điểm hoàn thành muộn của hoạt động cuối cùng bằng thời điểm hoàn thành dự án sớm
Thời điểm khởi công muộn của mỗi hoạt động được tính theo công thức:
LSj=LFj-tj
Trang 23Thời điểm hoàn thành muộn: Thời điểm hoàn thành muộn của một hoạt động là giá trị nhỏ nhất trong các thời điểm khởi công của tất cả các hoạt động ngay sau hoạt động đó và được tính bằng công thức như sau:
LFi=Min{LSj} mọi j>i Đối với dự án mở rộng trung tâm, kết quả như Hình 2.4
Bước 5: Tính thời gian dự trữ mỗi hoạt động, hoạt động găng và đường
găng
Thời gian dự trữ chính là thời gian một hoạt động có thể chậm trễ mà không làm tăng thời gian hoàn thành của dự án Thời gian dự trữ của hoạt động j được tính theo công thức sau:
Sj=LSj-ESj=LFj-EFj
Hoạt động găng là hoạt động có thời gian dự trữ bằng không Trong dự án
mở rộng trung tâm, hoạt động găng gồm có A, E, F, G, I
Trong thực tiễn điều hành dự án, các hoạt động găng cần giám sát chặt chẽ bởi vì sự chậm trễ trong bất kỳ một hoạt động găng nào cũng sẽ kéo dài thời gian hoàn thành dự án
Hình 2.4 Mạng dự án với LS và LF
Bước 6: Hình thành bảng lịch trình hoạt động
Căn cứ vào kết quả của các bước trên hình thành bảng lịch trình hoạt động gồm những thông tin cơ bản như: hoạt động, các thời điểm, thời gian dự trữ, hoạt động găng Với dự án mở rộng trung tâm bảng lịch trình hoạt động như trên
Trang 24Bảng 2.2 Lịch trình hoạt động của dự án mở rộng trung tâm
Hoạt động ES LS EF LF Slack Đường găng
Nguyên tắc thiết lập PERT
Khi lập sơ đồ PERT phải tuân thủ theo những nguyên tắc sau:
Nguyên tắc vẽ:
- Mỗi hoạt động ứng với mỗi nút
- Ngoài các nút thể hiện các hoạt động cần vẽ thêm nút bắt đầu (Start) và nút kết thúc (Finish) trong mạng dự án
- Khi vẽ, các cung hoạt động phải tránh hiện tượng cắt chéo nhau để tránh rắc rối và nhầm lẫn
- Các nút phải được đánh số thứ tự từ trái sang phải
Ưu điểm của kĩ thuật PERT
- Ưu điểm lớn nhất của PERT là việc sử dụng phương pháp thời gian biến đổi nên phạm vi ứng dụng rộng rãi hơn, linh hoạt hơn, sử dụng cho cả những dự
án mới chưa có định mức
- Cung cấp nhiều thông tin chi tiết
- Thấy rõ công việc nào là chủ yếu, có tính chất quyết định đối với tổng tiến
độ của dự án để tập trung chỉ đạo
- Thấy rõ mỗi quan hệ phụ thuộc giữa các công việc và trình tự thực hiện chúng
Trang 25Về mặt nhược điểm:
- Việc thiết lập sơ đồ tốn nhiều thời gian khi dự án có quá nhiều công việc
- Cần người có kinh nghiệm trong việc xác định thời gian cho mỗi công việc
Một số so sánh đánh giá giữa CPM và PERT
Từ các trình bày ở trên có thể tổng hợp một số ưu nhược điểm của 2 phương pháp như sau:
- CPM sử dụng phương pháp xác định thời gian tất định bởi vậy thường được dùng cho các dự án mà trước đây đã thực hiện, hay các công việc tương tự chúng
- Trên cơ sở xem thời hạn hoàn thành mỗi công việc không đổi Thật ra trong thực tế để xây dụng thường gặp nhiều yếu tố tác động Vì vậy, thời hạn hoàn thành các công việc nhiều khi không cố định
- CPM cho phép đánh giá khả năng đánh đổi giữa chi phí thực hiện một công việc một cách bình thường với khi đẩy nhanh công việc với chi phí cao hơn
để kết thúc sớm hơn
- Còn phương pháp PERT lại đưa yếu tố không xác định (hay còn gọi là yếu
tố ngẫu nhiên) vào, khi ước lượng thời gian thực hiện các công việc và thời gian hoàn thành dự án, do đó nó rất phù hợp với những trường hợp số liệu ban đầu và các công việc đang được nghiên cứu thực hiên chưa có định mức, các dự án tạo
ra sản phẩm mới, dự án mới, nghiên cứu phát triển R&D, mà trước đây chưa có
dự án nào thực hiện PERT chú trọng tới thời gian thực hiện dự án và xác suất hoàn thành dự án đúng hạn, thời gian hoàn thành sớm nhất, muộn nhất của dự án
- Trong luận văn này, tôi muốn đi sâu vào nghiên cứu kiểm soát thời gian trong lập lịch dự án nên tôi đã quyết định chọn kĩ thuật PERT với sự phù hợp của
nó để lập kế hoạch và kiểm soát thời gian
là xem xét đồng thơi sự kết hợp của các yếu tố, có tính tới mối quan hệ của các yếu tố đó Bởi vậy đây là phương pháp khá phức tạp đòi hỏi người phân tích phải
có kinh nghiệm, kỹ năng thực hiện tốt với sự trợ giúp kỹ thuật của máy tính Các công cụ quản lý rủi ro dự án sau đây áp dụng phương pháp Monte Carlo:
• Pertmaster Project Risk
• @Risk
• Deltek Risk+
Trang 26• Risk+ from S/C Solutions Inc
• Crystall Ball
• Risky Project Professional 2.1
• PROAct
• Project Risk Analysis
Phương pháp mô phỏng Monte Carlo bao gồm:
- Lựa chọn các biến làm biến quan trọng đưa vào mô hình phân tích (dựa trên cơ sở phân tích độ nhạy để đưa vào các yếu tố có ảnh hưởng lớn tới dự án)
- Xác định mô hình biến động của các yếu tố ảnh hưởng trong mối quan hệ của chúng với biến ngẫu nhiên
- Xác định các xác suất
- Sử dụng mô hình mô phỏng xác định các kết quả phân tích
- Các kết quả này giúp cho việc đánh giá dự án được chính xác
Tuy nhiên, phương pháp này có một số hạn chế: đó là khó ước lượng về xác suất xảy ra Điều này dẫn đến kết quả là việc sử dụng các xác suất chủ quan là khó có thể tránh được Mặt khác, mối quan hệ giữa các biến có thể rất phức tạp Mặc dù đây là phương pháp hay nhưng nó đòi hỏi một lượng thông tin rất lớn về
dự án xem xét Bởi vậy nếu sử dụng phương pháp này phải tốn nhiều chi phí và thời gian
Một công cụ tiên tiến hơn là PertMaster sử dụng mô phỏng không chỉ cho việc đối phó với bất định trong thời gian và chi phí dự án, mà còn cung cấp cả một quy trình phân tích rủi ro đầy đủ
Các phương pháp khác được phát triển để thay thế các phương pháp trên trong việc hoạch định và kiểm soát dự án, như Critical Chain Project Management (CCPM)
2.2 Quản lý rủi ro trong dự án phần mềm
Nhiều dự án quy mô lớn không thành công do thiếu phân tích các rủi ro liên quan mà thường dẫn đến leo thang chi phí, sự chậm trễ và chất lượng sản phẩm kém Hiện nay, sự nhận thức về những thất bại dự án được nâng cao do những thất bại được công bố công khai nhiều hơn [6]
Quản lý rủi ro dự án bao gồm việc xác định, giám sát, kiểm soát và đo lường Các tiêu chí đánh giá sự thành công hay thất bại của một dự án là: chi phí, thời gian và chất lượng, thường được gọi là The Iron Triangle Lý tưởng nhất, mỗi người quản lý dự án muốn dự án của họ đáp ứng cả ba tiêu chí trên Tuy nhiên, thực tế là do hạn chế về dự án, những đánh đổi cần phải được thực hiện
mà thường dẫn đến chỉ có hai trong ba tiêu chí được đáp ứng, như ngụ ý của Tam Giác Sắt Nhiều yếu tố cần được xem xét khi quyết định có nên thỏa hiệp về thời gian, chi phí và / hoặc chất lượng Vấn đề là không phải luôn luôn có thể thay đổi một trong những yếu tố này mà không có tác động đến một hoặc nhiều yếu tố khác Ví dụ, giảm thời gian này có thể có tác động nghiêm trọng đến chi phí và / hoặc chất lượng
Trang 27Câu hỏi mà các nhà quản lý dự án thực tế phải đối mặt:
- Nếu tôi chỉ có đủ khả năng nguồn lực tối thiểu, chất lượng sản phẩm có thể để đạt được là bao nhiêu?
- Những nguồn lực cần thiết để đạt được chất lượng cao nhất có thể?
- Nếu tôi có nguồn lực hạn chế và tôi muốn chất lượng cao nhất, bao nhiêu chức năng làm cần phải giảm?
Quản lý rủi ro dự án phần mềm đóng một vai trò quan trọng trong việc quản
lý dự án phần mềm thành công Trong thực tế, tất cả các giai đoạn của vòng đời phát triển phần mềm (SDLC) là những nguồn tiềm năng của các rủi ro liên quan đến phần mềm Có một số yếu tố nguy cơ phần mềm ảnh hưởng đến toàn bộ quá trình phát triển phần mềm Tuy nhiên, tìm mối tương quan giữa các yếu tố nguy
cơ và kết quả của dự án là trọng tâm chính của các nghiên cứu hiện tại về phân tích rủi ro phần mềm
Quản lý rủi dự án phần mềm là một công việc rất phức tạp và quan trọng trong việc phát triển dự án phần mềm Các nghiên cứu cho thấy toàn ngành công nghiệp, chỉ có 16,2% số dự án phần mềm là đáp ứng về thời gian và ngân sách Còn lại 52,7% được điều chỉnh giảm chức năng và 31,1% bị hủy bỏ trước khi hoàn thành Lý do chính cho là thiếu quản lý rủi ro phần mềm thích hợp [5] Do
đó, quản lý rủi ro phần mềm đã được sử dụng rộng rãi bởi vì quản lý rủi ro trong phát triển phần mềm sẽ đảm bảo rằng dự án phần mềm có hiệu quả và nó sẽ được hoàn thành đúng thời hạn, trong phạm vi ngân sách và phát triển phần mềm có chất lượng cao [5]
Một số mô hình quản lý rủi ro
- Mô hình quản lí rủi ro của Boehm
Boehm đề xuất một mô hình phát triển phần mềm đã được riskdriven Sức mạnh của mô hình, được gọi là mô hình xoắn ốc gốc (Boehm, 1988), loại bỏ rủi
ro từ giai đoạn phát triển phần mềm ban đầu, thay vì gặp rào cản của dự án ở giai đoạn sau Boehm mở rộng mô hình xoắn ốc ban đầu của mình bằng cách sử dụng
mô hình Lý thuyết W (Win-Win) (Boehm and Ross, 1988, Boehm and Bose, 1994)[3], nhằm mục đích thỏa mãn các mục tiêu và mối quan tâm của các bên liên quan Mô hình Win-Win còn hỗ trợ xác định rủi ro, độ phân giải và giám sát liên tục các rủi ro Mặc dù chiến lược của Win-Win có thể không phải lúc nào cũng có thể thực hiện được, nhưng nó là một đóng góp quan trọng để thu hút các bên liên quan trong quá trình quản lý rủi ro
Thực tiễn quản lý rủi ro bao gồm hai bước cơ bản [3]: Đánh giá rủi ro và Kiểm soát rủi ro, mỗi bước có ba bước Đánh giá rủi ro liên quan đến việc xác định rủi ro, phân tích rủi ro và ưu tiên rủi ro Kiểm soát rủi ro bao gồm lập kế hoạch quản lý rủi ro, phân tích rủi ro và giám sát rủi ro
- Mô hình quản lí rủi ro SEI
SEI đã đưa ra một khuôn khổ quản lý rủi ro toàn diện bao gồm ba nhóm sau: Đánh giá rủi ro phần mềm, Quản lý rủi ro liên tục và Nhóm quản lý rủi ro [3]
Trang 28Đánh giá Rủi ro Phần mềm liên quan đến nhận biết, phân tích, liên lạc và các chiến lược làm giảm nhẹ quản lý rủi ro phần mềm Phân loại rủi ro bao gồm rủi ro trong yêu cầu, rủi ro trong thiết kế, rủi ro viết code và kiểm thử, rủi ro hợp đồng….Quản lý rủi ro liên tục dựa trên nguyên tắc để cung cấp các quy trình, phương pháp và công cụ để liên tục quản lý rủi ro trong tất cả các giai đoạn của vòng đời phần mềm
Mặt khác, nhóm quản lý rủi ro liên quan đến sự phát triển của các phương pháp luận, các chương trình và các công cụ trong sự phát triển mối quan hệ giữa khách hàng và nhà cung cấp
Tất cả ba nhóm thực hành này đều hữu ích cho nhau Chẳng hạn, theo cách tiếp cận theo nhóm để quản lý rủi ro giúp liên tục quản lý rủi ro
- Mô hình quản lí rủi ro sử dụng mạng Bayes
Nhiều nghiên cứu dựa trên BN đã được tiến hành để tạo điều kiện quản lý rủi ro cho các dự án phần mềm Ví dụ, Fan và Yu đề xuất một thủ tục dựa trên
BN sử dụng một vòng lặp thông tin phản hồi để dự đoán rủi ro tiềm ẩn, xác định các nguồn rủi ro và tư vấn cho việc điều chỉnh tài nguyên động Drew Procaccino
et al Yêu cầu các chuyên gia có kinh nghiệm cung cấp những hiểu biết về các vấn đề phi kỹ thuật quan trọng sớm ban đầu trong phát triển phần mềm Họ đã trình bày các mối quan hệ thông qua một BN, có thể được sử dụng để xác định chuỗi các sự kiện quan trọng để thành công và dự đoán xác suất thành công trong phát triển phần mềm [14]
Một BN thường bao gồm một đồ thị chu kỳ trực tiếp (DAG), mô tả cấu trúc mạng, và một tập hợp các bảng xác suất có điều kiện (CPTs), đó là các thông số mạng Ba cách phổ biến để xây dựng BN là:
- Chỉ định DAG và CPT theo cách thủ công theo ý kiến chuyên gia (còn được gọi là kiến thức chuyên môn hay kiến thức miền)
- Tự động học DAG và CPT bằng các thuật toán khác nhau dựa trên dữ liệu quan sát
- Xây dựng DAG theo ý kiến chuyên gia theo cách thủ công hoặc tự động học DAG sử dụng ý kiến chuyên gia dưới dạng các ràng buộc / hạn chế về cấu trúc và sau đó học CPT từ dữ liệu quan sát
Mạng được xây dựng bằng thủ công bởi các chuyên gia, phù hợp với các nguyên nhân xác minh (kiến thức chuyên môn) Loại mạng này phù hợp để phân tích rủi ro nhưng chắc chắn sẽ dẫn đến sự thiên lệch chủ quan giữa các chuyên gia khác nhau Do đó, cần chú ý nhiều hơn đến cách học tự động BN dựa trên dữ liệu quan sát Ngay cả với việc tích hợp các kiến thức chuyên môn như các ràng buộc về cơ cấu, vẫn còn tồn tại một số khó khăn trong việc phân biệt mối tương quan và mối quan hệ nhân quả trong mạng lưới cuối cùng Trong quản lý rủi ro
dự án phần mềm, mối tương quan và quan hệ nhân quả thường được sử dụng nhầm lẫn với nhau; phân tích nhân quả chưa bao giờ được quan tâm đầy đủ Theo Pearl , "việc giải thích các đồ thị không mạch lạc trực tiếp là những giả định về tính độc lập không nhất thiết ngụ ý nhân quả", và trong các ứng dụng tình báo
Trang 29thống kê và nhân tạo, các DAG thường được sử dụng làm công cụ giải thích nhân quả để tính đến các dữ liệu được quan sát
Nếu quản lý rủi ro tiến hành mà không phân biệt mối tương quan giữa mối quan hệ nhân quả, thì rất khó phân bổ thời gian và nguồn lực cho nguồn nguy cơ chủ yếu của kết quả dự án; do đó, kiểm soát rủi ro sẽ không hiệu quả
Việc áp dụng các BN về quản lý rủi ro dự án có những ưu điểm sau:
- BN có thể mô hình không chắc chắn và cung cấp ước lượng xác suất
- Kết hợp dữ liệu lịch sử với kinh nghiệm của chuyên gia hoặc kiến thức sẵn có
- Mô hình các mối quan hệ nhân-quả một cách trực quan, và do đó giúp xác định các nguồn nguy cơ, cung cấp kiến thức rõ ràng cho việc phân tích rủi ro và lập kế hoạch
- Được sử dụng để phân tích "what-if" để khám phá ảnh hưởng của sự thay đổi ở một số nút trên sự thay đổi trong các nút khác
- Được sử dụng để phân tích độ nhạy, chẩn đoán, dự đoán, phân loại, và lý luận nhân quả, trong số những người khác
Nhận thấy được những ưu điểm của phương pháp sử dụng mạng Bayes nên tôi đã quyết định lựa chọn mạng Bayes để thực hiện nghiên cứu luận văn về quản
lí rủi ro trong lập lịch dự án của mình Lý thuyết về định lí Bayes và mạng Bayes
sẽ được tôi trình bày ở phần 2.3
Các yếu tố rủi ro trong lập lịch dự án
Với sự phát triển trong quá trình triển khai dự án phần mềm, luôn luôn các các sự việc không chắc chắn hay yếu tố rủi ro là điều dễ gặp phải Chính vì thế, công việc quản lý dự án được xem là việc nhằm giảm thiểu các rủi ro ở mức thấp nhất, chắc chắn cho dự án có thể kết thúc về thời gian triển khai cũng như chất lượng hay sự hài lòng từ phía khách hàng Ngày nay, việc quản lý dự án phần mềm là ngành thông dụng trong kinh tế công nghệ phần mềm Về mặt thực tiễn,
có các thay đổi tự nhiên từ phần mềm, các hình thức quản lý dự án mới đã được nêu ra như là công cụ tốt và hỗ trợ hiệu quả cho việc phát triển dự án phần mềm Các phương pháp này nhằm đến mục tiêu duy nhất: dự án được đảm bảo đúng đúng hạn Tại một góc nhìn khác cho vấn đề này là việc kiểm soát quản lý rủi ro như thế nào cho hiệu quả Một số nghiên cứu chỉ ra rằng công việc quản lý dự án chính là quản lý rủi ro
Đã có một số nghiên cứu về rủi ro trong dự án phần mềm (B W Boehm,1991; H.-M Lee,1999; G Buyukozkan and D Ruan,2010;v.v.v) Dựa trên các nghiên cứu này, Shih-Tong Lu and Shih-Heng Yu[4] đã đưa ra danh sách 22 nhân tố rủi ro theo 5 nhóm chính : rủi ro về tổ chức, rủi ro về công nghệ phát triển, rủi ro trong hệ thống nhân sự, rủi ro trong việc tích hợp tài nguyên, rủi
ro trong yêu cầu hệ thống Chi tiết về các rủi ro được trình bày trong Bảng 2.3 Tôi nhận thấy trong danh sách 22 yếu tố này, tuy rằng là rủi ro của cả dự
án, tuy nhiên đều trực tiếp ảnh hưởng đến thời gian của dự án Như vậy, 22 yếu
Trang 30tố này cũng chính là các yếu tố rủi ro cần khảo sát khi lập lịch dự án và được tôi lựa chọn sử dụng
Lack of organizational maturity
Ghép nối giữa phần mềm và phần cứng Inadequate scheduling and cost estimation Lập kế hoạch và dự toán chi phí không đủ
Rủi ro trong hệ
thống nhân sự
Reliance on a few key personnel Phụ thuộc vào nhân viên chủ chốt Unavailability of key staff or project manager Không có nhân viên chính hoặc người quản lí Lack of staff experience and technology Nhân viên thiếu kinh nghiệm và kỹ thuật Lack of staff commitment, low morale Thiếu sự cam kết của nhân viên , tinh thần thấp Instability and lack of continuity in projectstaffing Không ổn định và thiếu liên tục trong nhân sự dự án
Rủi ro trong việc
Trang 31Shortfalls in externally furnished components Thiếu hụt các thành phần được cung cấp từ bên thứ ba
Rủi ro trong yêu
Dựa trên bộ rủi ro này, tôi sẽ tiến hành xây dựng mạng rủi ro sử dụng trong nghiên cứu của mình
2.3 Định lý Bayes và mạng Bayes
Thuật ngữ “Bayesian”được đưa vào sử dụng phổ biến trong những năm
1950, mặc dù nguồn gốc của các phương pháp Bayesian là năm 1763, khi Thomas Bayes công bố bài báo của mình (Bayes 1763) [1] Trong suốt thế kỷ 19, khi các nhà toán học và triết học tiếp tục tranh luận về ý nghĩa của xác suất, ý tưởng về “xác suất nghịch” (tức là suy luận ngược từ dữ liệu đến các thông số) đã chiếm ưu thế trong thực tế ứng dụng của thống kê (Fienberg 2006) Những năm
1950, đã có một mối quan tâm mới trong lý thuyết thống kê quyết định và cơ sở
đã dẫn đến sự phát triển xung quanh vai trò của “xác suất chủ quan” và các công
cụ thống kê mới cho suy luận khoa học và ra quyết định Trong những thập kỷ sau các ứng dụng của thống kê Bayes phát triển thông qua số lượng bài báo được công bố và người sử dụng Kỷ nguyên của phương pháp Bayes bắt đầu vào cuối năm 1980 khi sự ra đời của phương pháp Chain Monte Carlo Markov (MCMC ) thực hiện các tính toán Bayes có thể cho vấn đề kích thước thực tế Kể từ đó phương pháp Bayes đã lan truyền nhanh chóng vào một lượng lớn các lĩnh vực ứng dụng
Sự khác biệt giữa phương pháp cổ điển và Bayes như sau [8]:
Bảng 2.4 Sự khác nhau giữa suy diễn tần số và suy diễn Bayes
Trang 32Thực tế, hầu hết các sự kiện bất định thường không có các dữ liệu lịch sử trước liên kết với chúng và cho dù là có dữ liệu lịch sử của chúng thì nó vẫn được cung cấp bởi các quyết định chủ quan trước khi nó được sử dụng để ước lượng sự bất định Do vậy chúng ta sẽ không thể dựa vào phương pháp suy diễn tần số để ước lượng được sự bất định mà thay vào đó, phương pháp Bayes sẽ được sử dụng
H là giả thuyết, E là sự kiện liên quan đã xảy ra (gọi là hypothesis)
P(H) là xác suất xảy ra giả thuyết H (gọi là prior probability)
P(E|H) là xác suất của sự kiện E xảy ra khi giả thuyết H đã xảy ra (gọi là likelihood function)
P(H|E) là xác suất của giả thuyết H xảy ra khi sự kiện E đã xảy ra (gọi là posterior probability)
P(E) là xác suất xảy ra sự kiện E (gọi là marginal probability), nó có thể được tính như sau: P(E) = P(E|H)P(H) + P(E|¬H)(P(¬H) trong đó ¬H là phần bù của H
Nhìn chung, với n là giả thiết độc lập lẫn nhau H1,H2,……,Hn với P(Hi) ≠
0 với 1 ≤ i ≤ n, công thức tổng quát của định lí Bayes là :
Mạng Bayes
Định nghĩa mạng Bayes
Mạng Bayes bao gồm một tập hợp các nút (biểu diễn các biến) và một tập các cạnh có hướng (biểu diễn cho những ảnh hưởng quan hệ nhân quả giữa các biến) giữa các biến [7] Mỗi biến có một tập hữu hạn các trạng thái loại trừ lẫn nhau Các biến cùng với các cạnh tạo thành một đồ thị có hướng không có chu trình (DAG) ( một đồ thị có hướng không có chu trình nếu không có đường đi có
gán một bảng xác suất điều kiện Nếu biến không có nút cha thì bảng quy về xác suất không điều kiện (Xác suất tiên nghiệm)
Trang 33Một đặc tính quan trọng của BNs là khả năng biểu diễn phân phối xác suất
chung cho tất cả các biến dưới dạng gắn kết Điều này được thực hiện bằng cách sử dụng chuỗi quy tắc, mà căn cứ trong một BN phân phối xác suất đầy đủ chung là kết quả của tất cả các xác suất điều kiện cụ thể tại các
BN ( Jensen , 1996) :
Biểu diễn xác suất chung càng ngắn gọn làm cho xác suất được tính dễ dàng hơn
Biểu diễn mạng Bayes
Một BNs chứa một tập các đỉnh (biểu diễn các biến) và một tập các cạnh có hướng (biểu diễn mối quan hệ nhân quả giữa các biến) giữa các biến Mỗi biến
có một tập giới hạn các trạng thái riêng có quan hệ lẫn nhau Các biến cùng với các cạnh tạo nên một đồ thị có hướng không có chu trình (DAG) Mỗi biến A với cha B1,… Bn, một bảng xác suất có điều kiện P(A|B1,… Bn) được xác định Nếu biến nào mà không có node cha thì bảng xác suất sẽ thành xác suất không điều kiện P(A)
Một khả năng quan trọng của BNs là biểu diễn phân phối xác suất hợp P(A1,… ,An) cho tất cả các biến A1,….,An Xác xuất của nó là: P(A1,…,An) =
ΠiP(Ai|A1, … , An)
Ngoài các tính chất cơ bản của BN, một BN còn là một mô hình có tính đồ thị Cấu trúc của mạng được thể hiện rõ qua mối đồ thị bằng việc sử dụng 3 loại kết nối chung là kết nối theo dãy, phân nhánh, hoặc là hội tụ như hình vẽ dưới đây:
Hình 2.5 Biểu diễn quan hệ trong mạng Bayes
BNs cung cấp một phương pháp mạnh mẽ để biểu diễn tri thức, nó làm chúng phù hợp cho phần lớn các vấn đề liên quan tới sự bất định và việc suy luận xác suất
Xây dựng một mạng Bayesian
Xây dựng một BN cho môt miền của ứng dụng bao gồm ba bước chính:
- Xác định các biến có tầm quan trọng, cùng với xác suất trạng thái của chúng
- Xác định các mối quan hệ giữa các biến và biểu diễn chúng trong một cấu trúc đồ thị
- Đánh giá xác suất cần thiết cho phần định lượng của nó
Trang 34Ba bước trên về nguyên tắc, thực hiện một sau một cái khác Tuy nhiên,xây dựng một BN thường một mặt đòi hỏi một cân bằng cẩn thận giữa mong muốn, mặt khác mô hình rủi ro trên các lần thử cần thiết để xây dựng, bảo trì,và suy luận theo xác suất trong các mạng Do đó trong thực tế, xây dựng một BN là một quá trình lặp lại các bước đó cho đến khi đạt được một mong muốn
Bước ban đầu (xác định các biến) không phải lúc nào cũng đơn giản Heckerman đưa ra những điều sau đây như một hướng dẫn để xác định các biến [7]:
- Xác định chính xác các mục tiêu của mô hình
- Xác định các quan sát có thể có liên quan đến vấn đề
- Xác định tập con nào của quan sát là quan trọng (xem xét sự phức tạp của mạng) để mô hình
Trong khi phát triển của một BN, các biến (các nút) có thể dễ dàng thêm vào hoặc sửa đổi Trạng thái của đồ thị của BNs cho phép các biến được thêm một các dễ dàng hoặc loại bỏ mà không ảnh hưởng nhiều đến phần còn lại của mạng
Sau khi xác định các biến, bước tiếp theo là xây dựng các phần đồ thị của mạng Điều này đòi hỏi xác định sự phụ thuộc xác suất giữa các biến đại diện và thể hiện chúng trong cung có hướng Hướng của các cung cần phải được xác định một cách cẩn thận (Neil et al 2000) đưa ra năm loại lý luận giữa các biến, được gọi là cách diễn đạt (tức là định nghĩa /tổng hợp, nguyên nhân - kết quả, đại lượng), như một hướng dẫn cho xây dựng mạng
Khi một BN được xây dựng, chúng ta có thể để xác định xác suất khác nhau của những sự quan tâm từ mô hình Các xác suất này không được lưu trữ trực tiếp trong mô hình,và vì thế cần phải được tính toán Vì một BN bao gồm một tập hợp các biến xác định một phân phối xác suất chung cho các biến, chúng ta có thể (về nguyên tắc) sử dụng các BN để tính xác suất của bất kỳ mối quan tâm
2.4 Mô hình quản lý dự án dựa trên kỹ thuật lập lịch PERT và mạng Bayes
Lịch trình dự án bao gồm các nút công việc tương đối, có thể được chia thành: nút ban đầu, nút tiền nhiệm ngay trước nút kế tiếp ngay sau và nút kết thúc Trong phương pháp quản lý dự án PERT, nút tiền nhiệm ngay trước và nút
kế tiếp ngay sau tương đối về thời gian và thời gian của dự án có sự phân bố xác suất Do đó, việc quản lý tiến độ dự án dựa trên PERT và mạng Bayes phải đáp ứng các yêu cầu sau [2]:
- Tính suy luận 2 chiều:
Trên thực tế, mô hình PERT bao gồm hai phần: Một là suy luận tích cực về thời gian bắt đầu sớm nhất của mỗi nút bằng cách sử dụng lý thuyết tối đa hóa để xác định sự phân bố xác suất của thời điểm bắt đầu sớm nhất của mỗi nút; cái còn lại là suy luận tiêu cực về thời gian bắt đầu muộn nhất của mỗi nút bằng cách sử dụng lý thuyết giảm thiểu để xác định phân bố xác suất thời điểm bắt đầu muộn nhất của mỗi nút Do đó, mô hình được thiết lập phải là một mô hình hỗn hợp, có thể mô tả không chỉ quá trình suy luận tích cực của thời điểm bắt đầu sớm nhất
Trang 35của nút mà còn là quá trình suy luận tiêu cực của thời gian bắt đầu muộn nhất của nút
- Thể hiện được mối quan hệ
Ngoài nút đầu và nút cuối, mô hình PERT cũng bao gồm nút tiền nhiệm ngay trước và nút kế nhiệm ngay sau, được bố trí trên cơ sở thời gian, yêu cầu công cụ mô hình hóa phản ánh mối quan hệ bên trong hệ thống và có hiệu quả liên kết luồng thông tin và đặc điểm cấu trúc
- Thích ứng với thay đổi
Việc truyền tải thời gian của dự án PERT là một quá trình động Khi một thủ tục thay đổi trên con đường găng, đường găng này có thể không còn là đường găng nữa Do đó, quá trình tìm kiếm đường găng cũng là một quá trình động
- Thích hợp với tính toán mô phỏng
Do tính phức tạp, tính động và không chắc chắn của mô hình PERT nên rất khó để mô hình được xác lập để có được thời gian tối ưu hóa dự án của toàn bộ
dự án bằng cách tính tay Kỹ thuật mô phỏng là một phương pháp hiệu quả để giải quyết vấn đề này
Mô hình nút trong mạng PERTBN
Trước tiên, một phương pháp mới được đề xuất đó là sự kết hợp giữa PERT
và BN Phương pháp PERTBN ra đời, cung cấp một cách tiếp cận hiệu quả và linh hoạt cho mô hình để giải quyết các yếu tố ảnh hưởng đến thời gian, tiến độ thực hiện dự án
Trong phần 2.1.2 sơ đồ PERT là sơ đồ bao gồm toàn bộ khối lượng công việc của một dự án Mỗi hoạt động trong mạng PERT được ứng với 5 nút trong
BN, đại diện cho các thông số thời gian của các hoạt động như sau:
t(i): Thời gian của thủ tục i
tES(i) : thời gian bắt đầu sớm nhất
tEF(i): thời gian kết thúc sớm nhất
tLS(i): thời gian bắt đầu muộn nhất
tLF(i): thời gian kết thúc muộn nhất
Bảng 2.5 Tóm tắt các thuộc tính cho mô hình PERTBN
Nút Kiểu Xắc suất điều kiện
t(i) Số n tES(i) Số Max{tEFj} (j: hoạt động đứng trước) tEF(i): Số tES + t(i)
tLS(i): Số tLF – t(i) tLF(i): Số Min{tLSj} (j: hoạt động kế tiếp)
Do đó, PERTBN có thể được chia thành hai phần: Một là để áp dụng nút đầu vào đại diện cho thời gian và thời gian bắt đầu sớm nhất của thủ tục và áp dụng nút đầu ra để đại diện cho thời gian hoàn thành sớm nhất của thủ tục, cho thấy mối quan hệ của thời gian thủ tục sớm nhất, khác là áp dụng nút đầu vào để
Trang 36biểu diễn thời gian và thời gian kết thúc mới nhất của thủ tục và áp dụng nút đầu
ra để biểu diễn thời gian bắt đầu muộn nhất của quy trình, cho thấy mối quan hệ của thời gian thủ tục muộn nhất Toàn bộ PERTBN của thủ tục i cuối cùng có thể
đạt được như Hình 2.6
Hình 2.6 Mô hình mạng Bayes trong từng nút công việc
Mô hình cấu trúc của mạng PERTBN
Theo các đặc điểm sắp xếp cụ thể của các công việc trong mô hình PERT, mối quan hệ tuần tự giữa mỗi công việc có thể được chia thành các chuỗi đơn, tập trung và phân tán Do đó, các phương pháp mô hình PERTBN tương ứng với từng loại sắp xếp công việc như sau:
Mô hình PERTBN của mô hình tập trung thể hiện trong Hình 2.8 Ở đây, ta
có thể thấy công việc 3 sẽ có 2 công việc tiền nhiệm là công việc 1 và 2
Trang 37Hình 2.8 Mạng PERTBN cho chuỗi tập trung
- Phân tán
Mô hình PERTBN phân kỳ được thể hiện trong Hình 2.9 Ở đây, ta thấy
công việc một có 2 công việc kế nhiệm là 2 và 3
Hình 2.9 Mạng PERTBN cho chuỗi phân tán
2.5 Phương pháp quản trị giá trị thu được EVM
Ý tưởng về tiếp cận sử dụng EVM
Từ khởi đầu của một dự án và trong suốt các giai đoạn của nó, người quản
lý dự án và đội ngũ quản lý dự án phải giải quyết nhiều câu hỏi Các câu hỏi thường gặp nhất đến từ những người phải đối mặt với tiến độ và chi phí dự kiến của dự án Ví dụ, chúng ta đang đi trước tiến độ hay chậm tiến độ? Làm thế nào chúng ta sử dụng thời gian có hiệu quả? Khi nào chúng ta có thể hoàn thành dự
Trang 38án? Chúng ta đang trong trong ngân sách hay đã vượt ngân sách? Chúng ta phải
sử dụng thế nào các nguồn một cách có hiệu quả? Chúng ta phải sử dụng thế nào các nguồn còn lại một cách có hiệu quả? Chi phí dự án có khả năng là bao nhiêu? Khi dự án kết thúc chúng ta sẽ đảm bảo được ngân sách hay sẽ bị vượt ngân sách? Chi phí cho công việc tồn đọng là bao nhiêu?
Vì vậy, có thể dự tính được thời gian và chi phí trong các dự án và đưa ra một câu trả lời chính xác cho những câu hỏi như trên là rất quan trọng đối với bất
kỳ một nhà quản lý dự án nào EVM là một công cụ đắc lực có khả năng giải quyết các câu hỏi trên và do đó mang lại lợi ích đáng kể cho người quản lý dự án
và đội ngũ quản lý dự án
EVM được hình thành đầu tiên bởi các kỹ sư kỹ nghệ tại Hoa Kỳ, như Fredrick W Taylor, Henry L Gantt, và những kỹ sư khác vào những năm cuối thế kỷ 19 Họ so sánh “tiêu chuẩn kế hoạch” với “tiêu chuẩn kiếm được” và “chi tiêu thực tế” trong khái niệm ban đầu của họ, và xác định “sai lệch chi phí” như
là sự khác nhau giữa chi phí thực tế cho công việc thực hiện và giá trị của công việc thực hiện theo chi phí kế hoạch
Hình 3.3 chỉ ra các thành phần chính của một phân tích EVM, chia thành ba lớp chính:
Hình 2.10 Ba thành phần quan trọng của EVM
Các tham số chính
Bốn tham số chính của EVM được cho bởi các đường như dưới đây:
- Giá trị kế hoạch (PV - Planned Value): là đường ngân quỹ cơ sở theo từng giai đoạn (thời gian), thể hiện kết quả thực hiện theo kế hoạch, thường được gọi
là Chi phí ngân sách cho các công việc theo kế hoạch (BCWS)
- Chi phí thực tế (AC - Actual Cost): là chi phí tích lũy đã chi trong thực tế
ở thời điểm cho trước, thường thể hiện bởi Chi phí thực tế cho các công việc đã thực hiện (ACWP)