Bài giảng Công nghệ phần mềm - Phần 6: Các chủ đề nâng cao cung cấp cho người học các kiến thức: Ước lượng chi phí phần mềm, quản lý chất lượng (Quality Management), cải tiến quy trình (Process Improvement). Mời các bạn cùng tham khảo.
11/1/2011 PHẦN VI: CÁC CHỦ ĐỀ NÂNG CAO I Ước lượng chi phí phần mềm (SE Cost Estimation) Năng suất (Productivity) Các kỹ thuật ước lượng (Estimation Techniques) Mơ hình chi phí thuật tốn (Algorithmic Cost Model) Nhân lực thời gian dự án (Project duration and staffing) II Quản lý chất lượng (Quality Management) III Cải tiến quy trình (Process Improvement) IV Khác 1 Năng suất (Productivity) • 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 ) SE-VI.2 CuuDuongThanCong.com https://fb.com/tailieudientucntt 11/1/2011 Các kỹ thuật ước lượng (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 chuyên 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 SE-VI.3 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ự đố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 • Chú ý: – Rất khó dự đố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 SE-VI.4 CuuDuongThanCong.com https://fb.com/tailieudientucntt 11/1/2011 a 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 SE-VI.5 b 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 • Có thể dùng kết hợp với mơ hình COCOMO CuuDuongThanCong.com https://fb.com/tailieudientucntt 11/1/2011 c Mơ hình chi phí thuật tốn lập kế hoạch dự án • 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 – Chi phí phần cứng HT – Chi phí phương tiện, thiết bị (máy tính, phần mềm) phát triển HT – Chi phí nỗ lực 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) SE-VI.7 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 SE-VI.8 CuuDuongThanCong.com https://fb.com/tailieudientucntt 11/1/2011 PHẦN VI: CÁC CHỦ ĐỀ NÂNG CAO I Ước lượng chi phí phần mềm (SE Cost Estimation) II Quản lý chất lượng (Quality Management) Đảm bảo chất lượng trình Xem xét lại chất lượng Các chuẩn phần mềm Các chuẩn tài liệu Độ đo phần mềm Độ đo chất lượng sản phẩm III Cải tiến quy trình (Process Improvement) IV Khác Đả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 khơng biết đặ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: • Đả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.10 CuuDuongThanCong.com https://fb.com/tailieudientucntt 11/1/2011 Đảm bảo chất lượng quy trình(tiếp) Định nghĩa Quá trình Phát triển sản phẩm KĐ chất lượng sản phẩm K Quá trình cải tiến Chất lượng Q trình chuẩn hố C Chất lượng dựa vào trình SE-VI.11 Xem xét lại chất lượng • Là phương pháp để khẳng định chất lượng q 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 xem xét đầy đủ Lựa chọn đội ngũ Xem xét Sắp xếp vị trí thời gian Phân bố tài liệu CuuDuongThanCong.com https://fb.com/tailieudientucntt SE-VI.12 11/1/2011 Các chuẩn phần mềm • 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á 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 SE-VI.13 Các chuẩn tài liệu • 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 E-mail, copy hay lưu trữ CSDL SE-VI.14 CuuDuongThanCong.com https://fb.com/tailieudientucntt 11/1/2011 Độ đo phần mềm (Software Metric) • Độ đ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.15 Độ đ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 thiết kế – – – – tính liên kết độ liên kết dễ hiểu thích hợp • Độ đo chất lượng chương trình – chiều dài mã – Độ phức tạp – Mức lồng điều kiện SE-VI.16 CuuDuongThanCong.com https://fb.com/tailieudientucntt 11/1/2011 PHẦN VI: CÁC CHỦ ĐỀ NÂNG CAO I Ước lượng chi phí phần mềm (SE Cost Estimation) II Quản lý chất lượng (Quality Management) III Cải tiến quy trình (Process Improvement) 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 IV Khác 17 Mở đầu • 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ử • 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 SE-VI.18 CuuDuongThanCong.com https://fb.com/tailieudientucntt 11/1/2011 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 Xác định Các cải tiến Mơ hình Quy trình Lập kế hoạch Hiệu chỉnh Các thay đổi Đào tạo đội ngũ Kế hoạch đào tạo 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 Phản hồi Mơ hình xem xét lại 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 SE-VI.19 Chất lượng quy trình sản phẩm • Xem chương trước 20 CuuDuongThanCong.com https://fb.com/tailieudientucntt 10 11/1/2011 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 SE-VI.21 Mơ hình hố (tiếp) • 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 – 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 SE-VI.22 CuuDuongThanCong.com https://fb.com/tailieudientucntt 11 11/1/2011 Độ đo quy trình • Độ đo quy trình liệu định lượng quy trình phần mềm (Tập độ đo chủ yếu cho q 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) SE-VI.23 Mơ hình thục khả (của SEI) • Viện CNPM (SEI) Carnegie-Melon-University đề xuất Mơ hình SEI phân 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 q 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 tn thủ SE-VI.24 CuuDuongThanCong.com https://fb.com/tailieudientucntt 12 11/1/2011 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 q 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 SE-VI.25 Phân loại quy trình • 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: SE-VI.26 CuuDuongThanCong.com https://fb.com/tailieudientucntt 13 11/1/2011 PHẦN VI: CÁC CHỦ ĐỀ NÂNG CAO I Ước lượng chi phí phần mềm (SE Cost Estimation) II Quản lý chất lượng (Quality Management) III Cải tiến quy trình (Process Improvement) IV Khác 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) 27 Tái kỹ nghệ phần mềm (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 28 CuuDuongThanCong.com https://fb.com/tailieudientucntt 14 11/1/2011 Phát triển tái kỹ nghệ Đặ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 SE-VI.29 CuuDuongThanCong.com https://fb.com/tailieudientucntt 15 ... 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) 27 Tái kỹ nghệ phần mềm (Software... qua E-mail, copy hay lưu trữ CSDL SE-VI.14 CuuDuongThanCong.com https://fb.com/tailieudientucntt 11/1/2011 Độ đo phần mềm (Software Metric) • Độ đo phần mềm kiểu độ đo liên quan đến HT phần mềm,... 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: SE-VI. 26 CuuDuongThanCong.com https://fb.com/tailieudientucntt 13 11/1/2011 PHẦN VI: CÁC CHỦ ĐỀ NÂNG