Các quy trình cải tiến phần mềm Các quy trình cải tiến phần mềm Bởi: Phạm Thị Quỳnh Các quy trình Mục tiêu - Nắm số quy trình cải tiến phần mềm - Biết chiến lược cải tiến hệ thống - Có khả áp dụng quy trình cải tiến hệ thống thực Các quy trình cải tiến phần mềm phụ thuộc vào: - Kiểu phần mềm cần bảo trì - Quy trình phát triển phần mềm sử dụng - Kỹ kinh nghiệm stakeholder Các đề xuất thay đổi định hướng để cải tiến hệ thống Phát thay đổi cải tiến thực vòng đời hệ thống Các hình vẽ sau thể cách khái quát quy trình cải tiến hệ thống 1/6 Các quy trình cải tiến phần mềm Trên quy trình Tuy nhiên, với yêu cầu thay đổi khẩn cấp, ta cài đặt chúng mà không cần phải trải qua tất pha quy trình công nghệ phần mềm Những yêu cầu thay đổi khẩn cấp thường xảy khi: - Nếu có lỗi hệ thống nghiêm trọng xảy cần phải sửa chữa - Nếu thay đổi môi trường hệ thống gây hiệu ứng không mong đợi - Nếu thay đổi mặt nghiệp vụ yêu cầu phải có đáp ứng nhanh 2/6 Các quy trình cải tiến phần mềm Để cải tiến hệ thống có, người ta đề xuất bốn chiến lược bản: - Tách hệ thống chỉnh sửa quy trình nghiệp vụ - Tiếp tục bảo trì hệ thống - Biến đổi hệ thống cách tái kỹ nghệ để nâng cấp khả bảo trì - Thay hệ thống hệ thống Việc lựa chọn chiến lược cải tiến hệ thống phụ thuộc vào chất lượng hệ thống giá trị nghiệp vụ Các loại hệ thống có phân loại dựa tiêu chí chất lượng giá trị nghiệp vụ mà mang lại sau: - Chất lượng thấp giá trị nghiệp vụ thấp: hệ thống tách - Chất lượng thấp giá trị nghiệp vụ cao: hệ thống có giá trị nghiệp vụ cao chi phí bảo trì lớn Ta nên tái kỹ nghệ thay hệ thống thích hợp - Chất lượng cao giá trị nghiệp vụ thấp: thay thành phần COTS - Chất lượng cao giá trị nghiệp vụ cao: tiếp tục sử dụng bảo trì hệ thống theo cách thông thường Việc đánh giá giá trị nghiệp vụ thực từ nhiều khung nhìn khác Phỏng vấn stakeholder khác đối sánh kết thu Các stakeholder thường là: - Người sử dụng cuối - Khách hàng doanh nghiệp - Người quản lý dây chuyền sản xuất - Người quản lý công nghệ thông tin 3/6 Các quy trình cải tiến phần mềm - Người quản lý cao cấp Đánh giá chất lượng hệ thống thông qua: - Quy trình nghiệp vụ: quy trình nghiệp vụ hỗ trợ cho mục tiêu nghiệp vụ nào? - Môi trường hệ thống: môi trường hệ thống có hiệu chi phí để bảo trì - Khả ứng dụng: chất lượng ứng dụng? Để đo hệ thống, thu thập liệu định lượng để tạo đánh giá chất lượng hệ thống - Số lượng yêu cầu thay đổi hệ thống - Số lượng giao diện người dùng khác - Số lượng liệu sử dụng hệ thống Tái kỹ nghệ hệ thống (System re-engineering) Mục tiêu - Nắm rõ tái kỹ nghệ hệ thống gì? Ưu nhược điểm - Quy trình tái kỹ nghệ hệ thống - Phân biệt forward-engineering re-engineering Tái kỹ nghệ hệ thống kỹ thuật cấu trúc lại viết lại phần toàn hệ thống thừa kế mà không thay đổi chức Tái ký nghệ giúp giảm rủi ro trình xây dựng phần mềm rủi ro xảy cao giúp giảm chi phí Mô hình sau giúp phân biệt forward re-engineering: 4/6 Các quy trình cải tiến phần mềm Quy trình tái kỹ nghệ bao gồm hoạt động sau: - Dịch mã nguồn: chuyển mã lệnh thành ngôn ngữ - Kỹ nghệ ngược: phân tích chương trình để tìm hiểu - Cải thiện cấu trúc chương trình - Mô-đun hoá chương trình: tổ chức lại cấu trúc chương trình - Tái kỹ nghệ liệu: thu dọn cấu trúc lại liệu hệ thống Các nhân tố ảnh hưởng tới chi phí tái kỹ nghệ: - Chất lượng hệ thống tái kỹ nghệ - Các công cụ hỗ trợ tái kỹ nghệ 5/6 Các quy trình cải tiến phần mềm - Mức mở rộng cần thiết việc chuyển đổi liệu - Những nhân viên có kỹ tái kỹ nghệ hệ thống 6/6 .. .Các quy trình cải tiến phần mềm Trên quy trình Tuy nhiên, với yêu cầu thay đổi khẩn cấp, ta cài đặt chúng mà không cần phải trải qua tất pha quy trình công nghệ phần mềm Những yêu... 2/6 Các quy trình cải tiến phần mềm Để cải tiến hệ thống có, người ta đề xuất bốn chiến lược bản: - Tách hệ thống chỉnh sửa quy trình nghiệp vụ - Tiếp tục bảo trì hệ thống - Biến đổi hệ thống cách... nghệ giúp giảm rủi ro trình xây dựng phần mềm rủi ro xảy cao giúp giảm chi phí Mô hình sau giúp phân biệt forward re-engineering: 4/6 Các quy trình cải tiến phần mềm Quy trình tái kỹ nghệ bao