Bài giảng Kỹ nghệ phần mềm - Nguyễn Văn Vỵ - Bài 10: Dự án, xác định dự án

Xác minh (Verification)

Kiểm tra xem phần mềm làm ra có dúng đặc tả (yêu

cầu, thiết kế) hay không

 Thẩm định (Validation)

kiểm tra xem phần mềm có đáp ứng yêu cầu ng-ời

dùng không

?éây là2 hoạt động cốt yếu để đảm bảo chất l-ợng

phần mềm, diễn ra suốt quá trình phát triển

pdf49 trang | Chuyên mục: Công Nghệ Phần Mềm | Chia sẻ: dkS00TYs | Lượt xem: 2191 | Lượt tải: 0download
Tóm tắt nội dung Bài giảng Kỹ nghệ phần mềm - Nguyễn Văn Vỵ - Bài 10: Dự án, xác định dự án, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
g loại này là “suy luận hợp lý theo ca kinh 
nghiệm”(khoa CNTT, ĐHCN)
 Ưu: chính xác khi có đủ dữ liệu cụ thể
 Nhược: Không thể thực hiện khi không có dự án 
tương tự
Bộ môn Công nghệ phần mềm – ĐHCN 26
NguyễnVănVỵ
Ví dụ: Phương pháp kinh nghiệm 
Bài toán: triển khai 1 phần mềm cập nhập 4 loại báo cáo sai 
hỏng trong sản xuất của các cơ sở và đưa ra 4 báo cáo: tổng 
hợp, phân loại và phân tích sai hỏng theo kỳ. 
Bảng phân tích ước lượng
Giai đoạn Xác định yêu 
cầu
Phân tích 
thiết kế
Lập trình 
k.thử
Cài đặt, 
bảo trì
Tông 
cộng
Kinh nghiệm 20% 30% 30% 20% 100%
Dự án 10% 40% 40% 10% 100%
Ngày công 6Æ8 24 24 6 62
lương bình quân 6tr/tháng, làm 20 ngày Æ 300.000đ/ngày
Chi phí dự án: 300ng x 62ngày x 130% = 24.180.000đ
Bộ môn Công nghệ phần mềm – ĐHCN 27
NguyễnVănVỵ
Phân tích điểm chức năng (FPA)
 A. Albrecht thuộc IBM đã phát triển phương pháp phân tích 
điểm chức năng (FPA- function point analysys)
 Mục đích: ước lượng số dòng lênh - LOC (lines of code) của 
hệ thống:
LOC của hệ thống
= FPs của hệ thống x LOC/FP của ngôn ngữ
Trong đó: FPs- điểm chức năng
LOC/FP: số dòng lệnh cho
1 chức năng theo ngôn ngữ
Bộ môn Công nghệ phần mềm – ĐHCN 28
NguyễnVănVỵ
Phương pháp điểm chức năng (FPs) 
Bao gồm các bước:
1.Tính điểm chức năng của 5 loại tiêu biểu:
y Số kiểu người dùng nhập vào: I 
y Số kiểu người dùng xuất ra: O
y Số kiểu người dùng yêu cầu: E 
y Số giao diện ngoại vi: F
y Số files liên quan: L
Bộ môn Công nghệ phần mềm – ĐHCN 29
NguyễnVănVỵ
Ví dụ: tính điểm chức năng
Một thành phần của hệ thống quản lý kho bao gồm chức năng 
‘thêm 1 bản ghi’,’ xóa 1 bản ghi’, hiển thị 1 bản ghi’,’ sửa 1 
bản ghi’, ‘in 1 bản ghi’, như vậy có:
„ 3 kiểu nhập vào
„ 1 kiểu xuất ra (hiển thị)
„ 1 giao diện ngoài (in)
các điểm chức năng này được gắn với độ phức tạp tương ứng 
cho mỗi loại chức năng
Bộ môn Công nghệ phần mềm – ĐHCN 30
NguyễnVănVỵ
2. Với mỗi kiểu chức năng, ước lượng độ phức tạp & nhân với số 
đặc trưng rồi cộng lại.
• Độ phức tap có 3 mức: Đơn giản, Trung bình, Phức tạp
• Xác định và tính trọng số điều chỉnh cho mỗi loại (Fi) 
• Tính tổng toàn bộ số điều chỉnh điểm chức năng (ΣFi)
 Phương pháp điểm chức năng 
Hệ số phức tạp 
Các kiểu chức năng Thấp Tr.bình Cao 
kiểu nhập vào 3 4 6
kiểu xuất ra 4 5 7
 File chương trình 7 10 15
Giao tiếp ngoài 5 7 10
Tìm kiếm 3 4 6
Bộ môn Công nghệ phần mềm – ĐHCN 31
NguyễnVănVỵ
Tính tổng các điểm chức năng của ví dụ:
Ví dụ: tính điểm chức năng
Kiểu chức năng số lượng hệ số phức tạp điểm ch.năng
kiểu nhập vào 3 x 3
4
7
5
Tìm kiếm 0 x 3 = 0
= 9
kiểu xuất ra 1 x = 4
 File chương trình 1 x = 7
Giao tiếp ngoài 1 x = 5
Tổng FPs 25
Bộ môn Công nghệ phần mềm – ĐHCN 32
NguyễnVănVỵ
3. Để tính FPs, trước hết xác định các Fi . Khi trả lời câu 
hỏi đối với ví dụ, ta xác định được: F4 = 4, F10 = 4, các 
Fi còn lại gán giá trị 0, nên: ΣFi = 4 + 4 = 8
4. Tính điểm chức năng theo công thức 
FPs = tổng điểm x (0,65+0.01xΣFi)
 Trong đó 0.65 và 0.01 là hệ số theo kinh nghiệm.
 Phương pháp điểm chức năng 
Nếu hệ thống sử dụng ngôn ngữ C (hệ số= 128), ta có ước 
lượng số dòng lệnh:
LOC = 128 x { 25(0,65+0.01x 8)} = 128x18,25 = 2336
Bộ môn Công nghệ phần mềm – ĐHCN 33
NguyễnVănVỵ
 Điểm đối tượng (OP:object point) 
  OP thay cho điểm chức năng khi dùng 4GL đối tượng ở 
đây ≠ ngôn ngữ hướng đối tượng
  Là sự đánh giá tổng hợp của các yếu tố (đối tượng) trong 
phần mềm, số màn hình độc lập (giao diện), số các báo cáo 
cần tạo (yêu cầu), số các module cần phải phát triển bằng 
4GL
  Nó dễ dàng đánh giá từ đặc tả yêu cầu, nên có thể ước 
lượng từ giai đoạn sớm của dự án
Bộ môn Công nghệ phần mềm – ĐHCN 34
NguyễnVănVỵ
Mô hình ước lượng COCOMO
 COCOMO (COstructive COst Model) dùng ước 
lượng công sức, thời gian, số người phát triển dựa 
trên kích cỡ phần mềm (LOC).
 Sử dụng cho các phần mềm lớn
 Cơ sở của mô hình:
y Công sức: E = a * Lb
y Thời gian: T = c * Ed
y Sô ngươi : N = E/T
Trong đó:
L: số dòng lệnh (KLOC)
a, b, c, d: tham số
Bộ môn Công nghệ phần mềm – ĐHCN 35
NguyễnVănVỵ
COCOMO: các bước tiến hành
1. Xác định kiểu dự án (cơ sở chọn tham số):
 organic: cấu trúc rõ ràng, môi trường quen: dễ
 semi-detached: nhiều ràng buộc chức năng, môi trường 
& ứng dụng lạ: khó hơn
 embeded: hệ thống gồm cả cưng-mềm, phức tạp, ràng 
buộc chặt chẽ, cần nhiều kinh nghiệm: khó
2. Phân rã môđun chức năng & ước lượng số dòng 
lệnh từng môđun
3. Tính lại số dòng lệnh trên cơ sở tái sử dụng
4. Tính nỗ lực phát triển E cho từng mô đun
Bộ môn Công nghệ phần mềm – ĐHCN 36
NguyễnVănVỵ
5. Tính lại E dựa trên độ phức tạp của dự án, độ tin 
cậy, độ lớn CSDL & yêu cầu về tốc độ, bộ nhớ
6. Tính thời gian và số người tham gia
Đặc trưng ứng dụng a b c d
organic 3.2 1.05 2.5 0.38
semi-detached 3.0 1.12 2.5 0.35
embeded 2.8 1.2 2.5 0.32
Bảng 
tham số 
cơ sở
COCOMO: các bước tiến hành
Bộ môn Công nghệ phần mềm – ĐHCN 37
NguyễnVănVỵ
Ví dụ về COCOMO
Ví dụ: Phần mềm có kích cỡ 33.3 KLOC, mức 
khó là tương đối (semi-detached), nên
Chọn: a = 3.0 b = 1.12 c = 2.5 d = 0.35
Tính toán ta được:
E = 3.0 * 33.31.12 = 152 người-tháng
T = 2.5 * E0.35 = 14.5 tháng
N = E/T = ~ 11 người
Bộ môn Công nghệ phần mềm – ĐHCN 38
NguyễnVănVỵ
Khó khăn trong ước lượng
y áp dụng các mô hình khác nhau
y tiến hành ước lượng nhiều lần
y ước lượng lại khi dự án tiến triển
y thảo luận, lấy ý kiến chung
 Các thông số không trực quan
 Khó đánh giá tính đúng đắn của tham số
 Không có mô hình tổng quát
 Các kỹ thuật ước lượng đang thay đổi
 Thiếu tham số tham khảo (số thống kê)
Bộ môn Công nghệ phần mềm – ĐHCN 39
NguyễnVănVỵ
 Độ chính xác của ước lượng
4x
.
.
XuÊt phÈm
x.®.yªu cÇu ThiÕt kªKh¶ thi M∙ ho¸
2x
0.25x
0.5x
Bộ môn Công nghệ phần mềm – ĐHCN 40
NguyễnVănVỵ
 Đánh giá khả thi về kinh tế
 Phân tích khả thi về kinh tế được thực 
hiên thông qua phân tích chi phí - lợi 
nhuận của dự án được chọn.
 Quá trình phân tích tiến hành qua 3 bước:
 Nhận biết và ước lượng các khoản mục chi 
phí và thu nhập của việc thực hiện dự án 
 Biểu diễn bằng đơn vị có thế so sánh được
 Tính các chỉ tiêu hiệu quả, so sánh & đánh 
giá
Bộ môn Công nghệ phần mềm – ĐHCN 41
NguyễnVănVỵ
Phân tích chi phí và lợi nhuận
Thu nhập hệ thống mang lại chỉ khi nó vận hành. nên 
cần tính cho mỗi năm (5 năm).
Thu nhập chia làm 3 loại:
 Thu nhập trực tiếp thấy được (tangible)
 Thu nhập gián tiếp có thể đánh giá được và
 Thu nhập tiềm năng (không nhìn thấy-intangible)
Khi phân tích hiệu quả kinh tế thường chỉ có thể
tính đươc 2 loại đầu tiên.
Lợi nhuận = thu nhập – chi phí
Bộ môn Công nghệ phần mềm – ĐHCN 42
NguyễnVănVỵ
Một chỉ tiêu quan trọng của đầu tư là hệ số hoàn 
vốn (return on investment – ROI)
ROI =
hay thời gian hoàn vốn:
T (hoàn vốn) = năm
Các số này được đem so sánh với số trung bình 
tương ứng của ngành. Nếu lớn hơn hoặc bằng thì
dự án đầu tư là có hiệu quả
1
ROI
Hệ số hoàn vốn
Lợi nhuận bình quân năm 
Tổng đầu tư
Bộ môn Công nghệ phần mềm – ĐHCN 43
NguyễnVănVỵ
Ví dụ: phân tích chi phí-lợi nhuân
Loại hình Công việc thực hiện Số tiền($)
Chi phí 1 lần Phát triển 65.000
Chi phí 1 lần Phần cứng 50.000
Chi phí hoạt động Bảo trì 2.000/năm
Tiết kiệm (thu) Liên quan đến tự động đặt hàng 12.000/năm
Tiết kiệm (thu) Tính toán chính xác chuyên chở 15.000/năm
Tiết kiệm (thu) Quản lí thông tin, tài nguyên tốt hơn 12.000/năm
Bảng chi phí và thu nhập của dự án lựa chọn
Bộ môn Công nghệ phần mềm – ĐHCN 44
NguyễnVănVỵ
Ví dụ: phân tích chi phí- lợi nhuận
NămChỉ tiêu 0 1 2 3 4 5
- Thu nhập 
- Hệ số chuyển đổi 
(tỷ lệ chiết khấu 12%)
Thu nhập quy đổi
0 
1
0
39,000
0.89286
34,821
39,000
0.79719
65,912
39,000
0.71778
93,671
39,000
0.63552
118,457
39,000
0.56759
140,586 140,586
- Chi phí 1 lần
- Chi phí bảo trì
- hệ số chuyển đổi 
(tỷ lệ chiết khấu 12%)
- Chi phí quy đổi năm
Tổng chi phí tích luỹ
115,000
0
1
115,000
2,000
0.89287
1,786
116,786
2,000
0.79714
1,594
118,380
2,000
0.71178
1,424
119,804
2,000
0.63352
1,271
121,075
2,000
0.56743
1,135
122,210 122,210
Thu nhập ròng/năm 33,04 64,32 92,25 117,2 139,5 446,237
Hệ số hoàn vốn 0.24
tổng cộng
Bộ môn Công nghệ phần mềm – ĐHCN 45
NguyễnVănVỵ
 Đánh giá hiệu quả kinh tế
 Như vậy, sau hơn 4 năm hòa vốn (ROI =0,24).
 Lợi ích thấy được chưa đưa vào là giảm lao động
 Lợi ích không thấy được: tăng chất lượng quản lý, đáp ứng 
được với quy mô tăng lên không cần đầu tư
BIỂU ĐỒ TÍNH ĐIỂM HÒA VỐN
0
20
40
60
80
100
120
140
160
1 2 3 4 5
năm
$
thu nhập
chi phí t.lũy
Bộ môn Công nghệ phần mềm – ĐHCN 46
NguyễnVănVỵ
Những mốc lớn lịch trình dự án
Mốc lớn lịch trình cần chỉ ra:
 Thời gian kết thúc dự án
 Các giai đoạn chính đánh dấu bằng việc kết thúc 1 giai đoạn 
với sản phẩm của nó và thời gian lịch tương ứng
 Các mốc lớn thường được chọn lập lịch là:
 Kỹ nghệ hệ thống
 Xác định yêu câu
 Thiết kế
 Lập trình-kiểm thử đơn vi
 Kiểm thử thẩm định
 Cài đặt và vận hành
Bộ môn Công nghệ phần mềm – ĐHCN 47
NguyễnVănVỵ
Ví dụ: lịch trình dự án
Lịch trình phát triển hệ thống quản lý kho(bản đầu tiên)
Thiết kế vật lý
2 12 tuần
28/7/97 17/10/97
Mã hoá
3 6 tuần
20/10/97 28/11/97
Kiểm thử
4 3 tuần
1/12/97 19/12/97
Làm tài liệu
5 1 tuần
Đào tạo
6 1 tuần
Chuyển đổi/vận hành
7 4 tuần
21/12/97 17/01/98
Thiết kế lôgic
1 4 tuần
30/6/97 25/7/97
Bộ môn Công nghệ phần mềm – ĐHCN 48
NguyễnVănVỵ
C©u hái «n tËp
1. Dù ¸n lμ g×? c¸c ®Æc tr−ng?
2. Môc tiªu, ph−¬ng ch©m qu¶n lý dù ¸n lμ gi?
3. C¸c ho¹t ®éng vμ c¸c chøc n¨ng qu¶n lý dù ¸n?
4. Nªu tiến tr×nh x¸c định dự ¸n - b¶n ®Ò xuÊt dù ¸n?
5. Néi dung cña b¶n ®Ò xuÊt dù ¸n?
6. C¸c b−íc ®Ó chän dù ¸n?
7. Nõu c¸c −íc l−îng cña dù ¸n vμ ph−¬ng ph¸p x¸c ®Þnh 
chóng?
8. §¸nh gi¸ kh¶ thi gồm nh÷ng kh¶ thi nμo?
9. C«ng cô vμ chØ tiªu g× luận chøng kh¶ thi kinh tÕ?
10. C«ng cô g× ®Ó luận chøng tá kh¶ thi thêi gian?
Bộ môn Công nghệ phần mềm – ĐHCN 49
NguyễnVănVỵ
C©u hái và thảo luận

File đính kèm:

  • pdfBài giảng Kỹ nghệ phần mềm - Nguyễn Văn Vỵ - Bài 10 Dự án, xác định dự án.pdf