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