intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

CHƯƠNG 4: Đánh giá yêu cầu Lập kế hoạch dự án phần mềm Software Project Planning

Chia sẻ: Trần Công Chính | Ngày: | Loại File: PPT | Số trang:53

106
lượt xem
7
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Sau mỗi giai đoạn phát triển hệ thống, cần thông tin định lượng (quantitative information)  giúp kiểm soát hiệu quả hơn quy trình phát triển. Có 1 vài đo lường cho giai đoạn requirement để tìm hiểu mối quan hệ giữa giá trị đo lường (metric value) và các thuộc tính của dự án Kích cỡ dự án (size) Các đo lường về chất lượng

Chủ đề:
Lưu

Nội dung Text: CHƯƠNG 4: Đánh giá yêu cầu Lập kế hoạch dự án phần mềm Software Project Planning

  1. ̀ ̉ Bai giang môn CNPM - BM HTTT - Khoa CNTT - HUI 1 CHƯƠNG 4: Đánh giá yêu cầu Lập kế hoạch dự án phần mềm Software Project Planning
  2. Nội dung Ước tính quy mô dự án ( Size estimation)  Số dòng lệnh (lines of code)  Function Point  Ước tính chi phí  Mô hình COCOMO  2 ̀ ̉ Bai giang môn CNPM - BM HTTT - Khoa CNTT - HUI
  3. Mục đích của việc đo lường Sau mỗi giai đoạn phát triển hệ thống, cần  thông tin định lượng (quantitative information)  giúp kiểm soát hiệu quả hơn quy trình phát triển. Có 1 vài đo lường cho giai đoạn requirement  để tìm hiểu mối quan hệ giữa giá trị đo lường (metric value) và các thuộc tính của dự án Ki ́ch cỡ dự án (size)  Các đo lường về chất lượng  3 ̀ ̉ Bai giang môn CNPM - BM HTTT - Khoa CNTT - HUI
  4. Lập kế hoạch dự án Để chỉ đạo thành công một dự án phần mềm,  cần phải hiểu: Phạm vi (size) công việc  Rủi ro (risk) phải gánh chịu  Tài nguyên (resource) cần sử dụng  Nhiệm vụ (task) cần hoàn thành  Chi phí (cost) cần tiêu dùng  Kế hoạch làm việc (schedule) cần tuân theo  Tham số nào quan trọng nhất??? 4 ̀ ̉ Bai giang môn CNPM - BM HTTT - Khoa CNTT - HUI
  5. Lập kế hoạch dự án Phạm vi (size) là tham số chính, nó được dùng  để ước tính cho các tham số khác 5 ̀ ̉ Bai giang môn CNPM - BM HTTT - Khoa CNTT - HUI
  6. Size estimation Size estimation Cost estimation Cost estimation Development Time Development Time Resources Resources rrequirements equirements Project Project scheduling scheduling Các hoạt động dùng để đánh giá dự án phần mềm ̀ ̉ Bai giang môn CNPM - BM HTTT - Khoa CNTT - HUI 6
  7. Ước tính quy mô dự án Là bước quan trọng khi bắt đầu dự án  Rất khó để ước tính phạm vi của 1hệ thống  phần mềm vì: Phần mềm là sản phẩm trừu tượng  Xây nhà, cầu đường là sản phẩm cụ thể, có thể  nhìn thấy và sờ mó được Hai phương pháp thông dụng:  Tính số dòng lệnh (Lines Of Code – LOC)  Tính Function Point (FP)  7 ̀ ̉ Bai giang môn CNPM - BM HTTT - Khoa CNTT - HUI
  8. Lines Of Code (LOC) Chưa có sự thống nhất trong quy ước đếm  LOC Trước đây: không tính đến các dòng khai báo dữ  liệu, chú thích, .. Gần đây: tính cả dòng khai báo, chú thích   Lý do: chương trình mới chứa hơn 50% dòng dữ liệu, và các dòng này cũng thường xuyên gây lỗi như các dòng lệnh thông thường 8 ̀ ̉ Bai giang môn CNPM - BM HTTT - Khoa CNTT - HUI
  9. Ví dụ 9 1 int sort(int x[], int n) 10 If (x[i] < x[j]) 2 { 11 { 3 int i,j, save, im1; 12 Save = x[i]; 4 /* this function sorts array x 13 X[i] = x[j]; 5 if (n
  10. Lines Of Code (LOC) LOC của chương trình? 17, 18 hay 13   Theo định nghĩa của Conte: Dòng mã là bất kỳ dòng nào ( tiêu đề, khai báo, lệnh khả thi và không khả thi) trong chương trình, không kể dòng chú thích (comment), bất kể có bao nhiêu dòng mã hay khối mã trên cùng 1 dòng”  LOC của chương trình là 17 10 ̀ ̉ Bai giang môn CNPM - BM HTTT - Khoa CNTT - HUI
  11. Lines Of Code (LOC) Ưu điểm: đơn giản, cụ thể  Nhược điểm: phụ thuộc vào ngôn ngữ, không  chỉ ra được tổng thể dự án Đếm dòng lệnh tương tự như đếm số gạch để  xây nhà cao tầng, chỉ cho biết số gạch cần dùng nhưng không chỉ ra được số phòng, tổng diện tích xây dựng, tổng diện tích đất,… Ứng dụng: dùng LOC để ước tính thời gian lập  trình 11 ̀ ̉ Bai giang môn CNPM - BM HTTT - Khoa CNTT - HUI
  12. Tính Function Point (FP) Dùng để đánh giá chức năng của phần mềm  theo quan điểm người dùng: người dùng yêu cầu gì và hệ thống đáp ứng ra sao? Đo lường quy mô dự án theo FP không phụ  thuộc vào việc sử dụng công nghệ. Hai phần mềm kế toán, một được viết bằng  assembler, một được viết bằng C# nhưng thực , thi những chức năng như nhau. Người dùng chỉ quan tâm đến việc mua phần mềm kế toán, mà không cần quan tâm đến nó chứa bao nhiêu dòng lệnh, viết bằng ngôn ngữ nào. 12 ̀ ̉ Bai giang môn CNPM - BM HTTT - Khoa CNTT - HUI
  13. ̀ ̉ Bai giang môn CNPM - BM HTTT 13 - Khoa CNTT - HUI
  14. Tính Function Point (FP) Theo FPA (FP analysis) của Albrecht, một hệ  thống được chia thành 5 đơn vị chức năng (functional unit) như sau: Inputs  Outputs  Enquiries  Internal logical files  External interface files  14 ̀ ̉ Bai giang môn CNPM - BM HTTT - Khoa CNTT - HUI
  15. Tính Function Point (FP) 15 Các đơn vị chức năng được phân loại dựa vào  độ phức tạp: Low, Average, High. Weighting factors Functional Units Low Average High External Inputs (EI) 3 4 5 External Outputs (EO) 4 5 7 External Inquiries (EQ) 3 4 6 Internal logical files (ILF) 7 10 15 External interface files (EIF) 5 7 10 Bảng 1
  16. Cách tính FP 16 ̀ ̉ Bai giang môn CNPM - BM HTTT - Khoa CNTT - HUI
  17. Tính Function Point (FP) 17 Trình tự tính FP của hệ thống:   Phân loại theo năm loại chức năng  Tính UFP (Unadjusted Function Points)  Tính FP
  18. Tính UFP (Unadjusted Function Points) 5 3 UFP = ∑ ∑ Z ij wij i =1 j =1 i là chỉ số hàng, j là chỉ số cột của bảng 1 wij là giá trị của hàng i cột j bảng 1 Zij là kết quả đếm của loại chức năng i với độ phức tạp tương ứng với cột j 18 ̀ ̉ Bai giang môn CNPM - BM HTTT - Khoa CNTT - HUI
  19. Tính FP 19 FP = UFP * CAF CAF (complexity adjustment factor) và được tính  như sau: CAF = [0.65 + 0.01∑ Fi ] Fi (i=1 to 14) là mức độ ảnh hưởng dựa vào 14 câu hỏi trong bảng 2. Mỗi thừa số sẽ có tỷ lệ từ 0 đến 5
  20. Bảng 2: Các thừa số Fi Does the system require reliable backup and 1. recovery? Is data communication required? 2. Are there distributed processing functions? 3. Is performance critical? 4. Will the system run in an existing heavily utilized 5. oprational environment? Does the system require on line data entry? 6. Does the on line data entry require the input 7. transaction to be built over multiple screens or operations? Are the master files updated on line? 8. Is the inputs, outputs, files or inquiries complex? 9. 20 ̀ ̉ Bai giang môn CNPM - BM HTTT - Khoa CNTT - HUI
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2