2. Mục tiêu và nhiệm vụ nghiên cứu
2.2.1. Thực hiện theo mô hình thác nước
Mô hình thác nước (tiếng Anh: waterfall model) lần đầu tiên được ông Winston W. Royce xuất bản vào năm 1970. Nó cũng đư ợc gọi là một mô hình vòng đời tuyến tính tuần tự. Nó rất đơn giản để hiểu và sử dụng. Trong một mô hình thác nước, mỗi giai đoạn phải được hoàn tất trước khi giai đoạn tiếp theo có thể bắt đầu và không có sự chồng chéo trong các giai đoạn.
Mô hình Royce nguyên gốc có các pha theo đúng thứ tự sau:
• Xác định yêu cầu - Project Planning - Requirements definition. • Thiết kế - Design.
• Xây dựng (“triển khai”, “mã hóa”, “viết mã”) – Development. • Liên kết - Integration
• Kiểm thử và Chỉnh sửa (kiểm nghiệm) - Testing • Cài đặt - Installation/Acceptance
• Bảo trì -Maintenance
Các giai đoạn tuần tự trong mô hình Waterfall là:
• Yêu cầu thu thập và phân tích: Tất cả các yêu cầu có thể có của hệ thống được phát triển. Khi hoàn tất giai đoạn này, sẽ chuyển sang giai đoạn tiếp theo.
• Thiết kế hệ thống: Các thông số kỹ thuật yêu cầu từ giai đoạn đầu tiên được nghiên cứu trong giai đoạn này và thiết kế hệ thống được chuẩn bị. Thiết kế hệ thống giúp xác định phần cứng và yêu cầu hệ thống giúp trong việc xác định cấu trúc hệ thống tổng thể.
• Thực hiện: Với đầu vào từ thiết kế hệ thống, hệ thống được phát triển đầu tiên trong chương trình nhỏ được gọi là các đơn vị, được tích hợp trong các giai đoạn tiếp theo. Mỗi đơn vị được phát triển và thử nghiệm cho các chức năng của nó được gọi là đơn vị kiểm tra.
• Hội nhập và kiểm tra: Tất cả các đơn vị phát triển trong giai đoạn thực hiện được tích hợp vào một hệ thống sau khi thử nghiệm của từng đơn vị. Bài tích hợp toàn bộ hệ thống được kiểm tra cho bất kỳ lỗi và thất bại.
• Triển khai hệ thống: Sau khi thử nghiệm chức năng và được thực hiện, sản phẩm được triển khai trong môi trường khách hàng hoặc phát hành vào thị trường.
• Bảo trì: Có một số vấn đề mà đi lên trong môi trường client. Để khắc phục những vấn đề bản vá lỗi được phát hành. Ngoài ra để tăng cường các sản phẩm tốt hơn một số phiên bản được phát hành. Bảo trì được thực hiện để cung cấp những thay đổi trong môi trường của khách hàng.
Hình 2.5. Mô hình thác nước
Ưu điểm :
• Mô hình này là đơn giản và dễ dàng để hiểu và sử dụng.
• Nó rất dễ dàng để quản lý do sự cứng nhắc của các mô hình - mỗi giai đoạn có phân phối cụ thể và một quá trình xem xét.
• Trong mô hình này các giai đoạn xử lý và được hoàn thành tại một thời điểm. Giai đoạn không trùng nhau.
• Mô hình thác nước hoạt động tốt cho các dự án nhỏ hơn, dễ dàng để sắp xếp công việc.
Nhược điểm :
• Một lượng lớn rủi ro và sự không chắc chắn.
• Không phải là một mô hình tốt cho các dự án phức tạp và hướng đối tượng.
• Mô hình khó triển khai cho các dự án dài và liên tục.
• Không thích hợp cho các dự án mà các yêu cầu đang ở mức độ trung bình đến nguy cơ cao của việc thay đổi. Vì vậy, rủi ro và sự không chắc chắn là cao với mô hình quy trình này.
Các giai đoạn: Theo mô hình phát triển thác nước, một dựán CNTT thường sẽđược chia ra làm 7 giai đoạn, bao gồm:
o Công việc 1: Yêu cầu.
o Công việc 2: Phân tích.
o Công việc 3: Thiết kế.
o Công việc 4: Xây dựng.
o Công việc 5: Kiểm thử.
o Công việc 6: Nghiệm thu.
o Công việc 7: Bao trì.
Các giai đoạn này sẽảnh hưởng trực tiếp tới kết quả của dự án.
Phương pháp PERT:
Đối với từng giai đoạn, ta coi toàn bộ các công việc sẽ được thực hiện tuần tự, như vậy thời gian của từng giai đoạn sẽ là tổng của toàn bộ các công việc sẽ được thực hiện trong giai đoạn đó.
Từđó ta sẽ xác định được các giá trị:
o Thời gian lạc quan1: Thời gian ngắn nhất của từng giai đoạn cần để hoàn thành các công việc
o Thời gian bi quan2: Thời gian dài nhất của từng giai đoạn cần để hoàn thành các công việc
o Thời gian thực hiện trong điều kiện bình thư ờng: Thời gian cần thiết để hoàn thành giai đoạn.
o Phần trăm từng giai đoạn: Phần trăm thời gian cần để thực hiện từng giai đoạn so với tổng thời gian của toàn dự án.
Ví dụ:
Một đội dự án X khi thực hiện các dựán CNTT có lưu lại thời gian thực hiện các dựán đã được xử lý như bảng sau:
Giai đoạn Thời gian lạc quan1 (a) Thời gian bi quan2 (b) Công việc 1: Yêu cầu 3 9 Công việc 2: Phân tích 2 8 Công việc 3: Thiết kế 3 7 Công việc 4: Xây dựng 2 9 Công việc 5: Kiểm thử 4 10
Công việc 6: Nghiệm thu 7 15
Công việc 7: Bảo trì 4 12
Bảng 2.4. Bảng xử lý dữ liệu theo mô hình thác nước
Từ các số liệu đã được thống kê trong bảng, ta sẽ đi tính các thông số trong phương pháp PERT:
- Thời gian trung bình: tm
Te = 𝑎𝑎+4𝑚𝑚+𝑏𝑏 6
Đặc biệt: Trong trường hợp không xác định được thời gian thực hiện công việc trong điều kiện thường m, thì:
Te = 2∗𝑎𝑎+3∗𝑏𝑏 5 - Độ lệch chuẩn: DLC = 𝑏𝑏−𝑎𝑎 6 - Phân phối xác suất Z Z = 𝑡𝑡−𝑡𝑡𝑚𝑚 𝐷𝐷𝐷𝐷𝐷𝐷
- Xác suất của toàn giai đoạn
So sánh phân phối Z với bảng phân phối xác suất Gauss đểxác định xác suất: x 0 1 2 3 4 5 6 7 8 9 0,0 0,5000 0,5040 0,5080 0,5120 0,5160 0,5190 0,5239 0,5279 0,5319 0,0359 0,1 5398 5438 5478 5517 5557 5596 5636 5675 5714 0753
0,2 5793 5832 5871 5910 5948 5987 6026 6064 6103 6141 0,3 6179 6217 6255 6293 6331 6368 6406 6443 6480 6517 0,4 6554 6591 6628 6664 6700 6736 6772 6808 6844 6879 0,5 6915 6950 6985 7019 7054 7088 7123 7157 7190 7224 0,6 7257 7291 7324 7357 7389 7422 7454 7486 7517 7549 0,7 7580 7611 7642 7673 7704 7734 7764 7794 7823 7852 0,8 7881 7910 7939 7967 7995 8023 8051 8078 8106 8133 0,9 8159 8186 8212 8238 8264 8289 8315 8340 8365 8389 1,0 8413 8438 8461 8485 8508 8531 8554 8577 8599 8621 1,1 8643 8665 8686 8708 8729 8749 8770 8790 8810 8830 1,2 8849 8869 8888 8907 8925 8944 8962 8980 8997 9015 1,3 9032 9049 9066 9082 9099 9115 9131 9147 9162 9177 1,4 9192 9207 9222 9236 9251 9265 9279 9292 9306 9319 1,5 9332 9345 9357 9370 9382 9394 9406 9418 9429 9441 1,6 9452 9463 9474 9484 9495 9505 9515 9525 9535 9545 1,7 9554 9564 9573 9582 9591 9599 9608 9616 9625 9633 1,8 9641 9649 9656 9664 9671 9678 9686 9693 9699 9706 1,9 9713 9719 9726 9732 9738 9744 9750 9756 9761 9767 2,0 9772 9778 9783 9788 9793 9798 9803 9808 9812 9817 2,1 9821 9826 9830 9834 9838 9842 9846 9850 9854 9857 2,2 9861 9864 9868 9871 9875 9878 9881 9884 9887 9890 2,3 9893 9896 9898 9901 9904 9906 9909 9911 9913 9916 2,4 9918 9920 9922 9925 9927 9929 9931 9932 9934 9936 2,5 9938 9940 9941 9943 9945 9945 9948 9949 9951 9952 2,6 9953 9955 9956 9957 9959 9960 9961 9962 9963 9964 2,7 9965 9966 9967 9968 9969 9970 9971 9972 9973 9974
2,8 9974 9975 9976 9977 9977 9978 9979 9979 9980 9981 2,9 9981 9982 9982 9983 9984 9984 9985 9985 9986 9986 3,0 9987 9987 9987 9988 9988 9989 9989 9989 9990 9990 3,1 9990 9991 9991 9991 9992 9992 9992 9992 9993 9993 3,2 9993 9993 9994 9994 9994 9994 9994 9995 9995 9995 3,3 9995 9995 9995 9996 9996 9996 9996 9996 9996 9997 3,4 9997 9997 9997 9997 9997 9997 9997 9997 9997 9998 3,5 9998 9998 9998 9998 9998 9998 9998 9998 9998 9998 3,6 9998 9998 9999 9999 9999 9999 9999 9999 9999 9999 3,7 9999 9999 9999 9999 9999 9999 9999 9999 9999 9999 3,8 9999 9999 9999 9999 9999 9999 9999 9999 9999 9999 3,9 1,0000 1,0000 1,0000 1,0000 1,0000 1,0000 1,0000 1,0000 1,0000 1,0000 Hình 2.6. Phân phối xác suất Gauss
Như vậy, từ bảng số liệu trên, sau khi áp dụng phương pháp PERT, ta sẽ tính được thời gian trung bình từng giai đoạn, độ lệch chuẩn và phần trăm thời gian có để thực hiện giai đoạn đó. Bảng 2.5 cho thấy được kết quả:
Giai đoạn Thời gian lạc quan (a) Thời gian bi quan (b) Thời gian trung bình (tm) Độ lệch chuẩn Phần trăm thời gian Công việc 1 3 9 6.6 1.00 12.63 Công việc 2 2 8 5.6 1.00 10.53 Công việc 3 3 7 5.4 0.67 10.53 Công việc 4 2 9 6.2 1.17 11.58 Công việc 5 4 10 7.6 1.00 14.74 Công việc 6 7 15 11.8 1.33 23.16 Công việc 7 4 12 8.8 1.33 16.84
Trường hợp: Đội dự án X nhận một đơn đặt hàng với nội dung: Xây dựng một phần mềm B, với sốlượng module 8, thực hiện trong khoảng thời gian 70 ngày. - Từ khoảng thời gian trong yêu cầu của khách hàng ta sẽ tính được khoảng thời gian cần thiết cho từng giai đoạn để dự án hoàn thành đúng theo yêu cầu. - Sau khi đã xác đ ịnh được thời gian t cho từng giai đoạn, tiếp tục sử dụng phương pháp PERT để tính các giá trị Z rồi đưa ra xác suất cho từng giai đoạn.
Giai đoạn Thời gian trung bình (tm) Độ lệch chuẩn t Phân phối Z Xác suất Công việc 1 6.6 1.00 8.84 2.24 98.75 Công việc 2 5.6 1.00 7.37 1.77 96.16 Công việc 3 5.4 0.67 7.37 2.95 99.84 Công việc 4 6.2 1.17 8.11 1.63 94.84 Công việc 5 7.6 1.00 10.32 2.72 99.67 Công việc 6 11.8 1.33 16.21 3.31 99.95 Công việc 7 8.8 1.33 11.79 2.24 98.75
Bảng 2.6. Bảng kết quả theo mô hình thác nước 2
Như vậy, ta đã thu đư ợc kết quả là xác suất hoàn thành từng giai đoạn trong quá trình triển khai dựán, để dựán hoàn thành đúng số ngày định ra trong yêu cầu, thì các giai đoạn thực hiện dự án phải hoàn thành đúng tiến độ.
Từ đó, xác suất hoàn thành dự án sẽ là xác suất có điều kiện. Kết quả xác suất hoàn thành dự án sẽ là: 88.45%