Bài giảng Nhập môn công nghệ phần mềm - Phần VI: Các chủ đề khác trong SE - Vũ Thị Hương Giang
I. ước lượng chi phí phần mềm (SE
Cost Estimation)
1) Năng suất (Productivity)
2) Các kỹ thuật ước đoán (Estimation
Techniques)
3) Mô hình chi phí thuật toán (Algorithmic Cost
Model)
4) Nhân lực và thời gian dự án (Project duration
and staffing)
Năng suất (Productivity)
• Năng suất là số đơn vị đầu ra trên số giờ làm
việc
• Trong SE, năng suất có thể ước lượng bởi một
số thuộc tính chia cho tổng số nỗ lực để phát
triển:
- Số đo kích thước (thí dụ số dòng lệnh)
- Số đo chức năng (số chức năng tạo ra trên 1
khoảng thời gian )
Trang 1
Trang 2
Trang 3
Trang 4
Trang 5
Trang 6
Bạn đang xem tài liệu "Bài giảng Nhập môn công nghệ phần mềm - Phần VI: Các chủ đề khác trong SE - Vũ Thị Hương Giang", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
Tóm tắt nội dung tài liệu: Bài giảng Nhập môn công nghệ phần mềm - Phần VI: Các chủ đề khác trong SE - Vũ Thị Hương Giang
Phần VI Nhập môn Chương 11 Công nghệ học Phần mềm Các chủ đề khác trong SE Introduction to Software Engineering • ước lượng chi phí phần mềm (SE Cost Estimation) Department of Software Engineering • Quản lý chất lượng (Quality Management) Faculty of Information Technology Hanoi University of Technology • Cải tiến quá trình (Process Improvement) TEL: 04-8682595 FAX: 04-8692906 • Các chủ đề tiên tiến khác (Advanced topics) Email: cnpm@it-hut.edu.vn HUT, Falt. of IT Dept. of SE, 2001 SE-VI.1 HUT, Falt. of IT Dept. of SE, 2001 SE-VI.2 I. ước lượng chi phí phần mềm (SE Năng suất (Productivity) Cost Estimation) 1) Năng suất (Productivity) • Năng suất là số đơn vị đầu ra trên số giờ làm 2) Các kỹ thuật ước đoán (Estimation việc Techniques) • Trong SE, năng suất có thể ước lượng bởi một số thuộc tính chia cho tổng số nỗ lực để phát 3) Mô hình chi phí thuật toán (Algorithmic Cost triển: Model ) - Số đo kích thước (thí dụ số dòng lệnh) 4) Nhân lực và thời gian dự án (Project duration - Số đo chức năng (số chức năng tạo ra trên 1 and staffing) khoảng thời gian ) HUT, Falt. of IT Dept. of SE, 2001 SE-VI.3 HUT, Falt. of IT Dept. of SE, 2001 SE-VI.4 Các kỹ thuật ước đoán (Estimation Mô hình chi phí thuật toán Techniques) (Algorithmic Cost Model) • Mô hình chi phí thuật toán: sử dụng các thông tin • Nguyên tắc: Dùng một phương trình toán học để có tính lịch sử (thường là kích thước) dự đoán (Kitchenham 1990a) dạng: • ý kiến chuyên gia Cố gắng = C x PMs x M với: • Đánh giá tương tự: chỉ áp dụng khi có nhiều dự án - C là độ phức tạp trong cùng một lĩnh vực - PM là số đo năng suất • Luật Parkinson chi phí phụ thuộc thời gian và số : - M là hệ số phụ thuộc và quá trình, năng suất nhân công - s được chọn gần với 1, phản ánh độ gia tăng của • Giá để thắng thầu: phụ thuộc khả năng KH yêu cầu với các dự án lớn HUT, Falt. of IT Dept. of SE, 2001 SE-VI.5 HUT, Falt. of IT Dept. of SE, 2001 SE-VI.6 1 Mô hình chi phí thuật toán (tiếp) Mô hình chi phí thuật toán (tiếp) Chú ý: - Rất khó dự đoán PM vào giai đoạn đầu 2) Mô hình định cỡ (calibrate model): sử dụng một mô - Việc dự đoán C và M là khách quan và có thể hình ước đoán có hiệu quả, do vậy cần có 1 CSDL về thay đổi từ người này sang người khác. phân lịch và các cố gắng của một dự án trọn vẹn. 1) Mô hình COCOMO (Boehm 1981): Mô hình COCOMO Nó có thể dùng kết hợp với mô hình COCOMO tuân theo PT trên, với các lựa chọn sau: 3) mô hình chi phí thuật toán trong lập kế hoạch dự án - Đơn giản: PM = 2,4 (KDSI)1,05 x M - Có thể dùng để đánh giá chi phí đầu tư nhằm giảm - Khiêm tốn: PM = 3,0 (KDSI)1,12 x M chi phí - Lồng nhau: PM = 3,6 (KDSI)1,20 x M - có 3 thành phần phải xem xét trong khi tính chi phí với KDSI là số lệnh nguồn theo đơn vị nghìn DA. HUT, Falt. of IT Dept. of SE, 2001 SE-VI.7 HUT, Falt. of IT Dept. of SE, 2001 SE-VI.8 Nhân lực và thời gian dự án (Project (1) Chi phí phần cứng của HT duration and staffing) (2) Chi phí phương tiện, thiết bị (máy tính, phần mềm) trong phát triển HT • Mô hình COCOMO cũng dự đoán lịch cho (3) Chi phí của các nỗ lực yêu cầu một DA trọn vẹn: Chi phí phần mềm (Software Cost) được tính: - Dự án đơn giản: TDEV = 2.5 (PM)0.38 SC = Basic Cost x RELY x TIME x STOR x TOOL x - Dự án trung bình: TDEV = 2.5 (PM)0.35 EXP x lương TB 1 người/tháng - Dự án lồng: TDEV = 2.5 (PM)0.32 với: STOR là không gian lưu trữ, TIME là thời gian cần thiết, TOOL là công cụ, EXP là kinh nghiệm, RELY là với TDEV là tổng thời gian cần thiết cho độ tin cậy (có thể chọn là 1,2) một DA HUT, Falt. of IT Dept. of SE, 2001 SE-VI.9 HUT, Falt. of IT Dept. of SE, 2001 SE-VI.10 II.Quản lý chất lượng Đảm bảo chất lượng quy trình (Quality Management) • Đảm bảo chất lượng quy trình là một khái niệm đa chiều. chưa có định nghĩa rõ ràng. Nhìn chung khái niệm này có thể xem 1) Đảm bảo chất lượng quá trình như là phát triển SP phải đáp ứng được đặc tả của nó 2) Xem xét lại chất lượng (Crossby, 1979) . Đặc tả phải hướng về đặc trưng SP mà KH muốn 3) Các chuẩn phần mềm . Chúng ta không biết đặc tả thế nào về chất lượng 4) Các chuẩn tài liệu . Đặc tả phần mềm luôn luôn không đầy đủ • Quản lý chất lượng là đáp ứng 3 loại hoạt động sau: 5) Độ đo phần mềm . Đảm bảo chất lượng . Kế hoạch chất lượng: chọn thủ tục tương ứng, chuẩn và kích thước 6) Độ đo chất lượng sản phẩm . Điều khiển chất lượng: các thủ tục và chuẩn phải được tôn trọng HUT, Falt. of IT Dept. of SE, 2001 SE-VI.11 HUT, Falt. of IT Dept. of SE, 2001 SE-VI.12 2 Đảm bảo chất lượng quy trình(tiếp) Xem xét lại chất lượng • Là phương pháp chính để khẳng định chất lượng của quá trình sản xuất Định nghĩa Phát triển KĐ chất lượng Quá trình sản phẩm sản phẩm • 3 kiểu xem xét: - Thanh tra thiết kế hay chương trình - Xem xét tiến triển K Quá trình Chất lượng Quá trình - Xem xét chất lượng cải tiến chuẩn hoá C Chất lượng dựa vào quá trình HUT, Falt. of IT Dept. of SE, 2001 SE-VI.13 HUT, Falt. of IT Dept. of SE, 2001 SE-VI.14 Xem xét lại chất lượng (tiếp) Các chuẩn phần mềm • Vai trò quan trọng của ĐBCLPM là chuẩn xem xét hoá các sản phẩm và quá trình đầy đủ Lựa chọn đội ngũ • Tầm quan trọng: . Cung cấp SP tương ứng và thực tế Xem xét Sắp xếp vị trí . Cung cấp các framework để cài đặt cá quá trình và thời gian ĐBCL . Đảm bảo tính liên tục: công việc thực hiện bởi 1 Phân bố tài liệu người có thể thực hiện tiếp bởi người khác HUT, Falt. of IT Dept. of SE, 2001 SE-VI.15 HUT, Falt. of IT Dept. of SE, 2001 SE-VI.16 Các chuẩn tài liệu Độ đo phần mềm (Software Metric) • Độ đo phần mềm là một kiểu độ đo liên • Tài liệu là 1 phần quan trọng trong SE để theo quan đến HT phần mềm, quá trình hay TL, dõi, để hiểu và để làm Thí dụ như số dòng lệnh, số thông báo lỗi • 3 kiểu chuẩn tài liệu: khi cung cấp SP – Các chuẩn của quá trình lập tài liệu: Qui định • Hai lớp độ đo: Độ đo ĐK và độ đo dự đoán chuẩn khi tạo tài liệu Quá trình PM Sản phẩm PM – Chuẩn TL: Chuẩn để quản trị chính TL đó – Chuẩn trao đổi TL: Dùng trong trao đổi qua E- Độ đo ĐK Độ đo Dự đoán mail, copy hay lưu trữ trong CSDL Các quyết định QL HUT, Falt. of IT Dept. of SE, 2001 SE-VI.17 HUT, Falt. of IT Dept. of SE, 2001 SE-VI.18 3 III. Cải tiến Quy trình Độ đo chất lượng SP (Process Improvement) • Việc biểu diễn, đánh giá độ đo bằng các số liệu • Chất lượng quy trình và sản phẩm hơn là kinh nghiệm • Mô hình hoá và phân tích quy trình • Độ đo chất lượng TK (xem chất lượng TK • Độ đo trong phần IV: tính liên kết, độ liên kết, dễ hiểu • Mô hình thuần thục khả năng SEI và thích hợp) • Phân loại quy trình • Độ đo chất lượng CT: chiều dài mã, độ phức tạp, mức lồng điều kiện, . . . HUT, Falt. of IT Dept. of SE, 2001 SE-VI.19 HUT, Falt. of IT Dept. of SE, 2001 SE-VI.20 Sơ đồ khái quát của • Cải tiến quy trình có nghĩa hiểu quy trình tồn tại và Quá trình cải tiến quy trình thay đổi quy trình này để nâng cao chất lượng SP Xác định hay giảm chi phí & thời gian phát triển các thay đổi • Không đơn giản là chấp nhận 1 phương pháp hay Phân tích Xác định Hiệu chỉnh công cụ đặc biệt nào hay sử dụng 1 mô hình quy Quy trình Các cải tiến Các thay đổi trình đã sử đâu đó Đào tạo • Quá trình Cải tiến quy trình phải được xem xét như đội ngũ 1 hoạt động đặc biệt trong 1 tổ chức hoặc 1 phần của tổ chức lớn Mô hình Lập Kế hoạch Mô hình Phản hồi Quy trình kế hoạch đào tạo xem xét lại HUT, Falt. of IT Dept. of SE, 2001 SE-VI.21 HUT, Falt. of IT Dept. of SE, 2001 SE-VI.22 Quá trình cải tiến quy trình (tiếp) Chất lượng quy trình và • Phân tích quy trình: xem xét quy trình đã tồn tại, tạo sản phẩm ra mô hình quy trình để lập TL và hiểu quy trình đó • Xem chương trước • Xác định cải tiến: sử dụng kết quả phân tích để xác định chất lượng, lập lịch hay chi phí những pha gay cấn • Xác định thay đổi: Thiết lập các thủ tục, phương pháp, công cụ mới và tích hợp với các cái đã tồn tại • Đào tạo: không đào tạo quy trình sẽ thất bại • Hiệu chỉnh thay đổi: các thay đổi có tác dụng ngay với HT HUT, Falt. of IT Dept. of SE, 2001 SE-VI.23 HUT, Falt. of IT Dept. of SE, 2001 SE-VI.24 4 Mô hình hoá (tiếp) Mô hình hoá và phân tích quy trình Các ký pháp dùng trong mô hình: • Vai trò: nghiên cứu các quy trình đang tồn tại và . Activity (hoạt động): biểu diễn bởi hình chữ phát triển mô hình trừu tượng cho các quy trình nhật tròn này (thâu tóm các đặc trưng) . Process (quá trình): tập các hoạt động, biểu diễn • Phân tích là nghiên cứu để hiểu mối liên quan giữa bởi hình chữ nhật tròn có bóng mờ các phần của quy trình. Điểm xuất phát là mô hình . Deliverable (phân phối): biểu diễn bởi 1 hình hình thức đã sử dụng chữ nhật có bóng mờ. Nó là đầu ra của 1 hoạt • Kỹ thuật: động . Hỏi và phỏng vấn . Condition (điều kiện): biểu diễn bởi 1 hình chữ . Kỹ thuật Ethnographic: dùng để hiểu bản chất của phát triển nhật. Nó là tiền hay hậu điều kiện phần mềm như các hoạt động của con người . Role (vai trò): biểu diễn bởi hình tròn HUT, Falt. of IT Dept. of SE, 2001 SE-VI.25 HUT, Falt. of IT Dept. of SE, 2001 SE-VI.26 Mô hình hoá (tiếp) Độ đo quy trình • Độ đo của 1 quy trình là các dữ liệu định lượng về . Exception (Ngoại lệ): Hộp bao kép. Việc thay quy trình phần mềm (Tập các độ đo là chủ yếu cho đổi do một sự kiện nào đó quá trình cải tiến quy trình –Humphey, 1989). . Communication (Giao tiếp): Biểu diễn bởi • Phân loại: Trao đổi thông tin giữa con người với nhau hay – Thời gian để thực hiện 1 quy trình đặc biệt với HT – Tài nguyên yêu cầu cho 1 quy trình đặc biệt – Số các biến cố • Khó khăn: Cái nào là cần định lượng đo đếm. Tuy nhiên có thể xem: mục đích (Goals, Câu hỏi, Độ đo) HUT, Falt. of IT Dept. of SE, 2001 SE-VI.27 HUT, Falt. of IT Dept. of SE, 2001 SE-VI.28 Mô hình thuần thục khả năng (của Mô hình thuần thục khả năng SEI (tiếp) SEI) • Viện CNPM (SEI) Carnegie-Melon-University đề xuất. Mô hình . Mức được quản trị: 1 tổ chức đã định nghĩa các quá trình và SEI phân quá trình phần mềm thành 5 mức khác nhau: 1 CT để thu thập dữ liệu về chất lượng. Số đo quá trình và . Mức khởi đầu: 1 tổ chức không quản lý thực sự các thủ tục hay DA. Phần thủ rục được sưu tập cho quá các hoạt động của quá trình cải mềm có thể phát triển song không thể dự đoán trước (ngân sách, thời gian, . tiến . .) . Mức tối ưu: Đã thoả thuận tiếp tục quá trình cải tiến. Quá . Mức lặp: 1 tổ chức có thể có quản lý hình thức về đảm bảo chất lượng, các thủ tục điều khiển cấu hình. Tổ chức có thể lặp lại các DA cùng kiểu trình này có ngân sách và kế hoạch để thực hiện và là phần . Mức có định nghĩa: ở mức này, một tổ chức có định nghĩa các qua trình của tích hợp của quá trình tổ chức mình mà như vậy có 1 cơ sở cho quá trình cải tiến chất lượng. Các thủ tục hình thức đảm bảo rằng các quá trình đã định là sẽ được tuân thủ HUT, Falt. of IT Dept. of SE, 2001 SE-VI.29 HUT, Falt. of IT Dept. of SE, 2001 SE-VI.30 5 Phân loại quy trình IV. Các chủ đề tiên tiến khác • Việc phân loại độ chín của các quy trình như trên thường áp dụng cho các DA lớn • Phương pháp hình thức (Formal methods) • Phân loại • Công nghệ học phần mềm phòng sạch (Cleanroom : SE) . Quy trình không hình thức : các quá trình mà • CNHPM hướng thành phần (CBSE) mô hình không định nghĩa cách chặt chẽ 1 • CNHPM khách/chủ (Client/Server SE) . Quy trình được quản lý: mô hình quá trình được • Kỹ nghệ Web (Web Engineering) định nghĩa (định hướng) • Tái kỹ nghệ (Re-engineering) . Quy trình có phương pháp: một số phương pháp • CNHPM dựa trên máy tính (CASE) phát triển đã được định nghĩa (Chi tiết xem trong các tài liệu) . Quy trình cải tiến: HUT, Falt. of IT Dept. of SE, 2001 SE-VI.31 HUT, Falt. of IT Dept. of SE, 2001 SE-VI.32 Tái kỹ nghệ phần mềm Phát triển và tái kỹ nghệ (Software Re-engineering) • Đặc tả hệ thống Thiết kế và Dịch chuyển mã nguồn Cài đặt Hệ thống mới • Cấu trúc lại CT Forward Engineering • Tái lập DL Hiểu và dịch • Kỹ nghệ ngược Hệ thống chuyển Hệ thống đang tồn tại Hệ thống được tái tạo Software Re-engineering HUT, Falt. of IT Dept. of SE, 2001 SE-VI.33 HUT, Falt. of IT Dept. of SE, 2001 SE-VI.34 6
File đính kèm:
- bai_giang_nhap_mon_cong_nghe_phan_mem_phan_vi_cac_chu_de_kha.pdf