1. Trang chủ
  2. » Giáo Dục - Đào Tạo

NGHIÊN cứu một GIẢI PHÁP bảo TRÌ PHẦN mềm tự ĐỘNG kết hợp với hệ THỐNG QUẢN lý cấu HÌNH

65 3 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Bùi Chí Tài NGHIÊN CỨU MỘT GIẢI PHÁP BẢO TRÌ PHẦN MỀM TỰ ĐỘNG KẾT HỢP VỚI HỆ THỐNG QUẢN LÝ CẤU HÌNH KHỐ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Cơng nghệ thơng tin HÀ NỘI - 2009 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Bùi Chí Tài NGHIÊN CỨU MỘT GIẢI PHÁP BẢO TRÌ PHẦN MỀM TỰ ĐỘNG KẾT HỢP VỚI HỆ THỐNG QUẢN LÝ CẤU HÌNH KHỐ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Cơng nghệ thơng tin Cán hướng dẫn: ThS Đào Kiến Quốc HÀ NỘI – 2009 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TÓM TẮT NỘI DUNG Trong khóa luận tốt nghiệp này, chúng tơi tìm hiểu nghiên cứu hệ thống quản lý cấu hình phần mềm, mà nhiệm vụ quan trọng quản lý phiên Hầu hết công cụ quản lý phiên thời trọng hỗ trợ cho nhà phát triển phát triển phần mềm nhằm kiểm soát thay đổi phần mềm nhà phát triển tạo ra, mà chưa hỗ trợ việc nâng cấp phần mềm tự động phía khách hàng, rộng bảo trì phần mềm tự động Vì khóa luận này, chúng tơi đề xuất giải pháp kết hợp việc nâng cấp tự động với hệ thống quản lý phiên Dựa ý tưởng đó, chúng tơi tiến hành phân tích, thiết kế cài đặt thử nghiệm chương trình mô kết hợp nâng cấp phần mềm với hệ thống quản lý phiên LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com MỤC LỤC CHƯƠNG MỞ ĐẦU - 1.1 Khái niệm bảo trì phần mềm - 1.2 Khái niệm quản lý cấu hình phần mềm - 1.3 Vai trị quản lý cấu hình phần mềm .- 1.4 Hoạt động quản lý cấu hình - 1.4.1 Các khái niệm quản lý cấu hình - 1.4.2 Các hoạt động quản lý cấu hình .- - CHƯƠNG THỰC TRẠNG VÀ GIẢI PHÁP - 12 2.1 2.2 Thực trạng .- 12 Đề xuất giải pháp - 13 - CHƯƠNG PHÂN TÍCH HỆ THỐNG MƠ PHỎNG HOẠT ĐỘNG NÂNG CẤP TỰ ĐỘNG KẾT HỢP VỚI QUẢN LÝ PHIÊN BẢN - 14 3.1 Mục tiêu hệ thống .- 14 3.2 Các chức hệ thống .- 14 3.3 Mơ hình khái niệm .- 14 3.3.1 Các khái niệm - 15 3.4 Xác định tác nhân, ca sử dụng mô tả ca sử dụng - 15 3.4.1 Xác định tác nhân - 15 3.4.2 Xác định ca sử dụng (Use Case) - 16 3.5 Biểu đồ sử dụng theo gói mơ tả ca sử dụng hệ thống - 17 3.5.1 Gói quản lý phiên - 17 3.5.2 Gói quản lý mã nguồn - 21 3.5.3 Gói quản lý nâng cấp phiên .- 23 3.6 Biểu đồ hệ thống - 25 3.6.1 Gói quản lý phiên - 25 3.6.2 Gói quản lý mã nguồn - 28 3.6.3 Gói quản lý nâng cấp phiên .- 30 3.7 Hợp đồng cho thao tác hệ thống - 31 - CHƯƠNG THIẾT KẾ HỆ THỐNG MÔ PHỎNG HOẠT ĐỘNG NÂNG CẤP KẾT HỢP VỚI QUẢN LÝ PHIÊN BẢN - 37 4.1 Biểu đồ đối tượng - 37 4.1.1 Gói quản lý phiên - 37 4.1.2 Gói quản lý mã nguồn - 42 4.1.3 Gói quản lý nâng cấp phiên .- 45 4.2 Biểu đồ lớp - 47 - CHƯƠNG CÀI ĐẶT THỬ NGHIỆM - 48 - i LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 5.1 Môi trường triển khai .- 48 5.2 Phương pháp triển khai .- 48 5.3 Kết triển khai - 49 - CHƯƠNG KẾT LUẬN - 58 TÀI LIỆU THAM KHẢO - 59 - ii LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Mở đầu CHƯƠNG MỞ ĐẦU Chương nhằm giới thiệu khái niệm hoạt động chung việc “bảo trì phần mềm” “hệ thống quản lý cấu hình” 1.1 Khái niệm bảo trì phần mềm Bảo trì phần mềm (Software Maintenance) việc chỉnh sửa sản phẩm phần mềm sau chuyển giao để sửa lỗi, để cải tiến hiệu (performance) thuộc tính khác, làm thích ứng sản phẩm mơi trường bị thay đổi.[7] Trong bảo trì phần mềm xem xét hoạt động nâng cấp phần mềm  Nâng cấp phần mềm: Là việc sử dụng hay triển khai (deploying) phiên phần mềm để thay cho phiên phần mềm khác (cũ hơn) Ví dụ: Nâng cấp phiên trình duyệt Firefox 3.0.4 lên Firefox 3.0.7 1.2 Khái niệm quản lý cấu hình phần mềm Quản lý cấu hình phần mềm (Software Configuration Management – SCM) phát triển áp dụng chuẩn thủ tục để quản lý phát triển hệ thống sản phẩm Quản lý cấu hình hoạt động bao trùm suốt tiến trình phần mềm Bởi thay đổi xảy vào lúc nào, hoạt động quản lý cấu hình phát triển để xác định thay đổi, kiểm soát thay đổi, đảm bảo thay đổi thi hành cách đắn, báo cáo thay đổi cho người liên quan.[2] Theo chuẩn CMM ISO 15504: Mục đích Quản Lý Cấu Hình để thiết lập bảo đảm tính tồn vẹn sản phẩm trung gian sản phẩm sau dự án phần mềm, xuyên suốt chu kỳ sống dự án phần mềm 1.3 Vai trị quản lý cấu hình phần mềm Tại lại phải quản lý cấu hình ?[3] Thực tiễn phát triển phần mềm thường gặp cố như:  Một lỗi phần mềm xây dựng tốn công sửa chữa, nhiên xuất trở lại -1- LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Mở đầu  Một chức phần mềm phát triển kiểm tra cẩn thận thất lạc biến cách khó hiểu  Một chương trình kiểm tra cẩn thận nhiễn không chạy  Một chương trình gồm nhiều đơn thể (module), đơn thể gồm nhiều chức năng, chức chia cho nhiều lập trình viên, chức bao gồm nhiều tập tin mã nguồn, với nhiều phiên khác Khi tích hợp hệ thống biên dịch, hàng chục tập tin mã nguồn với hàng trăm phiên bản, tập tin nào, phiên cần lấy để tiến hành tích hợp Quản lý cấu hình tốt giải nhiều vấn đề xảy ra:  Cập nhật đồng thời: Khi nhiều lập trình viên làm việc cách biệt chương trình dự án, thay đổi mà người thực phá vỡ kết làm việc người khác Ví dụ: Sản phẩm anh A làm sử dụng kết công việc anh B, sản phẩm anh B thay đổi dẫn đến sản phẩm anh A không chạy  Chia sẻ mã nguồn: Trong hệ thống lớn, chức chung bị thay đổi, tất người liên quan phải biết Khơng quản lý mã nguồn tốt khơng có cách đảm bảo tất người liên quan thơng báo thay đổi  Vấn đề phiên phần mềm (release): Hầu hết chương trình hệ thống lớn phát triển với nhiều phiên từ thấp đến cao Trong trường hợp phiên khách dùng, phiên khác kiểm tra (test), phiên khác q trình phát triển, có lỗi xảy ra, việc sửa lỗi phải đồng ba phiên này, quản lý mã -2- LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Mở đầu nguồn không tốt, vấn đề đồng khó thực hiên Nếu lỗi khách hàng phát ra, lỗi phải sửa tất phiên sau Quản lý cấu hình thực xuyên suốt chu kỳ sống dự án, từ lúc bắt đầu đến lúc kết thúc, chí cịn giai đoạn bảo trì sản phẩm sau dự án 1.4 Hoạt động quản lý cấu hình 1.4.1 Các khái niệm quản lý cấu hình  Hạng mục cấu hình (Configuration Item - CI): Là tên gọi sản phẩm, sản phẩm trung gian, file nhóm file, tài liệu nhóm tài liệu dự án mà ta cần phải quản lý kiểm soát Ví dụ: file mã nguồn, tài liệu yêu cầu sản phẩm, thiết kế,…  Ranh giới (Baseline): Là mốc trình phát triển phần mềm mà sau điểm mốc thay đổi phải thơng báo tới tất người có liên quan Ví dụ: Các thành phần đặc tả thiết kế phải viết thành tài liệu xem xét lại, lỗi phải tìm sửa cho Một mà tất phần việc đặc tả xem xét, sửa cho sau phê chuẩn đặc tả thiết kế trở thành baseline 1.4.2 Các hoạt động quản lý cấu hình -3- LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Mở đầu a Lập kế hoạch quản lý cấu hình Thơng thường việc lập kế hoạch quản lý cấu hình thể tài liệu có tên kế hoạch quản lý cấu hình (Configuration Management Plan – CMP) Bản kế hoạch bao gồm khoản sau:  Ý nghĩa, mục đích phạm vi áp dụng kế hoạch  Vai trị trách nhiệm nhóm, cá nhân dự án thực hoạt động khác liên quan đến quản lý cấu hình Định nghĩa rõ ràng thực hiện, tham gia xem xét (review), phê duyệt (approve) hạng mục cấu hình (CI) dự án, vai trò khách hàng, người sử dụng đầu cuối Ví dụ minh họa: Role Project Manager CM CM Responsible Librarian Task R S I Task I R I Task I R Tool Subsystem Full Responsible CCB System CCB C A C R: Responsible;A:Approval;S:Support;I:Inform;C:Consult -4- LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Mở đầu  Công cụ, môi trường sở hạ tầng Phần mô tả công cụ phần mềm quy trình thủ tục sử dụng để hỗ trợ việc quản lý cấu hình, chẳng hạn công cụ quản lý phiên sản phẩm (version control) Mơ tả vị trí máy chủ, máy trạm, cấu hình hệ thống clientserver,…  Phương pháp nhận diện (identification) thiết lập baseline CI  Quy ước đặt tên dự án, kể tên file  Quy trình kiểm sốt thay đổi (change control process)  Chỉ định thành viên nhóm kiểm sốt cấu hình (Configuration Control Board –CCB)  Thơng tin nơi lưu trữ CI  Kiểm kê báo cáo cấu hình (configuration accounting and reporting)  Quy trình thủ tục lưu trữ chép dự phòng (backup and archive) b Định danh/đánh số hạng mục cấu hình (Identification of Configuration Items) Định danh hoạt động tảng quản lý cấu hình Mục đích định danh để xác định tính CI, mối quan hệ với CI khác Nó bao gồm việc mơ tả tên, đánh số, đánh dấu đặc trưng cho CI, giúp nhận biết phân biệt CI với CI khác hay thành phần khác Trong sản xuất phần mềm, CI bao gồm hay nhiều file, ví dụ: module ExpMod coi CI, chứa file khác ExpMod.h ExpMod.c Mỗi CI phải có số định danh nhất, dạng thường thấy là: __ Ví dụ: PRJ0001_REQB_1.0.4_draft_B cho biết: Số ID dự án: PRJ0001 Số ID Item: REQB -5- LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thiết kế hệ thống mô hoạt động nâng cấp tự động kết hợp với quản lý phiên Luồng kiện “Kiểm tra update” Hình 35 Biểu đồ đối tượng luồng kiện “Kiểm tra update” - 46 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thiết kế hệ thống mô hoạt động nâng cấp tự động kết hợp với quản lý phiên 4.2 Biểu đồ lớp Hình 36 Biểu đồ lớp - 47 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Cài đặt thử nghiệm CHƯƠNG CÀI ĐẶT THỬ NGHIỆM 5.1 Môi trường triển khai Môi trường triển khai: Netbeans 6.0.1, sử dụng JDK1.5.0_15 ( công cụ phát triển Java) Ngôn ngữ sử dụng: Java Hệ quản trị sở liệu: MySQL Lý lựa chọn: Ngôn ngữ Java sử dụng ngày nhiều ngôn ngữ hướng đối tượng, linh hoạt, mạnh Netbeans công cụ hỗ trợ nhiều cho người phát triển Java đặc biệt khả kéo thả, phần mềm hoàn tồn miễn phí MySQL hệ quản trị sở liệu dễ sử dụng, lưu trữ nhanh, hỗ trợ tiếng Việt kết nối từ ứng dụng Java, miễn phí 5.2 Phương pháp triển khai Hệ thống xây dựng dựa vào tiến trình tiến hóa phiên phần mềm giả định sẵn: Hệ thống quản lý phịng khám có phiên khác nhau, xuất phát từ phiên 1.0, trình tự phiên mơ tả hình vẽ, phiên có nhiều mã nguồn, phiên có quan hệ với có hoạt động xảy thực nâng cấp phần mềm: - 48 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Cài đặt thử nghiệm Ver1.0 Ver1.0.1 Ver1.1 Ver2.0 Ver1.0.2 Ver1.1.1 Ver1.1.2 Ver2.0.1 Ver2.1 Ver1.1.3 Ver2.0.2 Ver2.2 Hình 37 Sơ đồ tiến hóa phiên phần mềm 5.3 Kết triển khai Hệ thống mơ tiến trình nâng cấp phần mềm, cho phép quản lý phiên (tạo mới, sửa, xem, xóa), quản lý mã nguồn, gán mã nguồn cho phiên bản, thiết lập quan hệ phiên bản, mơ tiến trình nâng cấp phiên bản,… Dưới số giao diện hệ thống: Giao diện Giao diện chương trình Frame có Menu gồm chức năng, thư mục liệt kê phiên mã nguồn có hệ thống Menu chức gồm có mục: quản lý phiên bản, quản lý mã nguồn, quản lý nâng cấp, mục Trợ giúp (đơn giản giới thiệu tác giả) - 49 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Cài đặt thử nghiệm Hình 38 Giao diện Giao diện “Tạo phiên bản” Giao diện người dùng chọn chức “Tạo phiên bản” mục Phiên Bản menu - 50 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Cài đặt thử nghiệm Hình 39 Giao diện “Tạo phiên bản” Giao diện “Thiết lập quan hệ phiên bản” Giao diện người dùng chọn chức “Thiết lập quan hệ phiên bản” mục Phiên Bản menu Nhằm xác định phiên phát triển từ phiên - 51 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Cài đặt thử nghiệm Hình 40 Giao diện “Thiết lập quan hệ phiên bản” Giao diện “Gán mã nguồn cho phiên bản” Người dùng chọn phiên từ thư mục, sau chọn chức “Gán mã nguồn cho phiên bản”, hộp thoại sau cho phép người dùng gán loại bỏ mã nguồn khỏi phiên Hình 41 Giao diện “Gán mã nguồn cho phiên bản” Giao diện “Sửa thông tin phiên bản” Người dùng chọn phiên cần sửa, chọn chức “sửa thông tin phiên bản” mục Phiên Bản menu - 52 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Cài đặt thử nghiệm Hình 42 Giao diện “Sửa thông tin phiên bản” Giao diện “Xem thông tin phiên bản” Người dùng chọn phiên thư mục chọn chức “xem thơng tin phiên bản” Hình 43 Giao diện “Xem thơng tin phiên bản” - 53 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Cài đặt thử nghiệm Giao diện “Tạo mã nguồn” Giao diện người dùng chọn chức “Tạo mã nguồn” mục Mã Nguồn menu Hình 44 Giao diện “Tạo mã nguồn” Giao diện “Sửa mã nguồn” Người dùng chọn mã nguồn cần sửa, chọn chức “sửa thông tin mã nguồn” mục Mã Nguồn menu - 54 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Cài đặt thử nghiệm Hình 45 Giao diện “Sửa mã nguồn” Giao diện “Xem thông tin mã nguồn” Người dùng chọn mã nguồn thư mục chọn chức “xem thơng tin mã nguồn” Hình 46 Giao diện “Xem thông tin mã nguồn” - 55 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Cài đặt thử nghiệm 10 Giao diện “Lựa chọn phiên dùng” Chức cho phép người dùng chọn trong phiên sẵn có làm phiên phần mềm để thực mô nâng cấp phiên Hình 47 Giao diện “Lựa chọn phiên dùng” 11 Giao diện “Kiểm tra update” Hệ thống kiểm tra phiên phiên tại, cho phép người dùng lựa chọn để tiến hành nâng cấp Sau người dùng nhấn nút nâng cấp, tiến trình nâng cấp - 56 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Cài đặt thử nghiệm Hình 48 Giao diện “Kiểm tra update” - 57 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com CHƯƠNG KẾT LUẬN Sau làm hồn thành luận văn, chúng tơi đạt kết sau: Chúng tơi tìm hiểu nghiên cứu quản lý cấu hình phần mềm, có nhiệm vụ quan trọng quản lý phiên bản, xem xét khả hỗ trợ công cụ quản lý phiên (như Subversion, CVS), công cụ hỗ trợ quản lý phiên phần mềm trình phát triển phần mềm cho phép nhiều nhà phát triển làm việc với thời điểm, mà chưa kiểm sốt q trình nâng cấp phần mềm từ phía khách hàng, từ chúng tơi nảy ý tưởng kết hợp nâng cấp phần mềm tự động với hệ thống quản lý phiên Chúng tơi tiến hành phân tích thiết kế tốn dựa ý tưởng đó, viết chương trình mơ việc kết hợp nâng cấp phần mềm với quản lý phiên Chương trình có chức chính: quản lý phiên bản, quản lý mã nguồn, quản lý nâng cấp Tuy vậy, thời gian hạn chế thiếu kinh nghiệm nên mô hệ thống cách đơn giản, thiếu nhiều chức hệ thống quản lý phiên đầy đủ là: quản lý hạng mục cấu hình, quản lý thành viên, quản lý lịch sử thay đổi,… Và chưa xây dựng hệ thống client – server hoàn chỉnh, sau có điều kiện chúng tơi tiếp tục nghiên cứu phát triển để giải pháp đề khả thi thực tế Cuối xin chân thành cảm ơn quý thầy cô trường Đại Học Công Nghệ tạo điều kiện cho chúng tơi hồn thành khóa luận, đặc biệt giảng viên Thạc sĩ Đào Kiến Quốc, người nhiệt tình hướng dẫn góp ý cho chúng tôi, đồng thời xin cảm ơn bạn giúp đỡ chúng tơi nhiều suốt q trình làm khóa luận Vì thời gian hạn chế thiếu kinh nghiệm nên khóa luận khơng tránh khỏi sai sót, chúng tơi mong nhận góp ý thầy cô bạn - 58 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TÀI LIỆU THAM KHẢO [1] Nguyễn Thị Hoa Hệ thống quản lý phiên phần mềm Luận văn tốt nghiệp ngành công nghệ thông tin – Đại học Công Nghệ, 2008 [2] ThS Đào Kiến Quốc Bài giảng Quản lý cấu hình Khoa Cơng nghệ Thông tin – Đại Học Công Nghệ [3] Ngô Văn Tồn Giới thiệu quản lý cấu hình phần mềm http://www.fpt.edu.vn/chitiet.php?id=129 [4] Ben Collins-Sussman, Brian W Fitzpatrick, C Michael Pilat Version Control with Subversion [5] Marcin Solarski Dynamic Upgrade of Distributed Software Components, January – 2004, tr 19-31 [6] Mika Karlstedt Dynamic upgrade of software [7] Wikipedia http://en.wikipedia.org/wiki/Software_maintenance http://en.wikipedia.org/wiki/Revision_control http://en.wikipedia.org/wiki/Subversion_(software) - 59 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com - 65 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ... CẤP TỰ ĐỘNG KẾT HỢP VỚI QUẢN LÝ PHIÊN BẢN 3.1 Mục tiêu hệ thống Mục tiêu hệ thống mô hoạt động nâng cấp phần mềm kết hợp với hệ thống quản lý phiên đơn giản 3.2 Các chức hệ thống R.1 Gói quản lý. .. TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Bùi Chí Tài NGHIÊN CỨU MỘT GIẢI PHÁP BẢO TRÌ PHẦN MỀM TỰ ĐỘNG KẾT HỢP VỚI HỆ THỐNG QUẢN LÝ CẤU HÌNH KHỐ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Cơng nghệ thơng tin Cán... niệm bảo trì phần mềm - 1.2 Khái niệm quản lý cấu hình phần mềm - 1.3 Vai trị quản lý cấu hình phần mềm .- 1.4 Hoạt động quản lý cấu hình - 1.4.1 Các khái niệm quản

Ngày đăng: 01/11/2022, 19:21

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w