tiểu luận quản lý cấu hình phần mềm

23 1.6K 2
tiểu luận quản lý cấu hình phần mềm

Đ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

Hải Phòng, tháng 08 năm 2006 1 TRƯỜNG ĐẠI HỌC HẢI PHÒNG    Giảng viên: …………………… Sinh viên : 1. Trịnh Văn Chiến ( T ) 2. Nguyễn Văn Tùng A 3. Cao Thăng Long 4. Trần Văn Tuấn 5. Trần Quyết Cường Lớp học Cử Nhân Tin K8 BÁO CÁO CÔNG NGHỆ PHẦN MỀM Đề TàI QUảN CấU HìNH PHầN MềM Hải Phòng, tháng 9 năm 2010 1. Quản cấu hình phần mềm (Configuration Management) 2 1.1 Quản cấu hình phần mềm là gì? 2 1.2 Nội dung của quản cấu hình phần mềm 2 1.3 Nhiệm vụ của quản cấu hình 4 1.4 Lợi ích của việc quản cấu hình phần mềm 4 2. Xác định cấu hình phần mềm 5 3. Kiểm soát phiên bản 6 4. Kiểm soát thay đổi 7 4.1 Qui trình kiểm soát sự thay đổi 8 4.2 Các hoạt động kiểm soát sự thay đổi 9 5. Kiểm toán cấu hình phần mềm 11 5.1 Rà soát kỹ thuật chính thức 11 5.2 Kiểm toán cấu hình phần mềm 11 6. Báo cáo hiện trạng 12 7. Một số công cụ tự động hỗ trợ quản cấu hìnhquản thay đổi 12 7.1 Công cụ hỗ trợ cho sự cộng tác (Collaborative Work Tools) 12 7.2 Công cụ hỗ trợ về tài liệu (Documentation Tools) 13 7.3 Công cụ đối chiếu thiết kế phần mềm (Tools for Reverse Engineering of Software) 14 7.4 Công cụ quản cấu hình (Tools for Configuration Management) 15 8. Vài nét về USDP (Unified Software Development Process) 15 8.1 Giới thiệu chung 15 8.2 Lịch sử phát triển 15 8.3 Kiến trúc tổng quát của RUP 16 Tài liệu tham khảo 18 2 Mục lục Trang QUẢN CẤU HÌNH PHẦN MỀM CONFIGURATION MANAGEMENT Trong quá trình phát triển các hệ thống thông tin, rất hiếm khi không có thay đổi. Người dùng thường xuyên quên mất các yêu cầu và chỉ nhớ đến chúng sau này trong khi tiếp nhận bản thiết kế. Không những thế, sự thay đổi còn xảy ra ngay trong các giai đoạn phát triển ứng dụng. Sự thay đổi có thể được hình thành cho yêu cầu từ phía người dùng thay đổi, các bản thiết kế có sự điều chỉnh. Chính sự điều chỉnh này làm thay đổi qui trình mã hoá và sửa lỗi, những thay đổi đó cần được lưu lại để người phát triển có thể quản được sự tiến hoá của phần mềm. Sự thay đổi là một trong nhiều do khiến cho các dự án đi đến thất bại. Nhưng hiện nay thực sự chưa phương pháp hiệu quả để hạn chế sự thay đổi và người phát triển hệ thống phần mềm coi quản sự thay đổi đó là một phần trong qui trình quản dự án phần mềm. Qui trình quản đó được gọi là quản cấu hình phần mềm. 1. Quản cấu hình phần mềm (Configuration Management) 1.1 Quản cấu hình phần mềm là gì? Quản cấu hình phần mềm là tập hợp các hoạt động dùng để quản các thay đổi của phần mềm trong suốt vòng đời của phần mềm. Chúng ta cũng cần phân biệt giữa quản cấu hình phần mềm và bảo trì phần mềm. Bảo trì phần mềm là các hoạt động được thực hiện sau khi phần mềm đi vào hoạt động. Còn quản cấu hình phần mềm là hoạt động bao trùm suốt quá trình phát triển phần mềm thông qua việc theo dõi, kiểm soát phần mềm từ khi bắt đầu phát triển đến khi phần mềm không còn hoạt động nữa. Quản cấu hình phần mềm được xem là một hoạt động nhằm đảm bảo chất lượng phần mềm. Vì thông qua các báo cáo liên quan đến sự thay đổi có thể lượng hoá và đánh giá được qui trình và chất lượng của cả hệ thống phần mềm được xây dựng. 1.2 Nội dung của quản cấu hình phần mềm Nội dung của quản cấu hình phần mềm là: + Xác định được những thay đổi diễn ra trong quá trình phát triển. + Kiểm soát được các thay đổi xuất hiện 3 + Đảm bảo các thay đổi xuất hiện đã được thực hiện sửa đổi. + Báo cáo các kết quả của việc sửa đổi được ghi nhận và gửi đến những người có trách nhiệm quản và xác minh lại sự thay đổi đó. Quản cấu hình phần mềm được thể hiện thông qua các khoản mục sau: + Đặc tả hệ thống: bao gồm các tài liệu thu nhận được sau khảo sát, các bước phân tích đánh giá tài liệu và đưa ra những phác hoạ trong hệ thống dự kiến sẽ xây dựng. Các đặc tả này thường bao gồm những qui trình nghiệp vụ, nội dung thông tin cần mà phần mềm cần xử lý. + Kế hoạch dự án phần mềm: là tài liệu phân chia khối lượng công việc và hoạch định thời gian và tiến trình các công việc đó. + Đặc tả yêu cầu: thể hiện những yêu cầu liên quan đến phần mềm, những công việc mà phần mềm sẽ phải đáp ứng sau khi hoàn thành. + Đặc tả thiết kế: - Đặc tả thiết kế dữ liệu - Đặc tả thiết kế kiến trúc - Đặc tả thiết kế môđun - Đặc tả thiết kế giao diện + Đặc tả mã nguồn và kiểm thử phần mềm: - Kế hoạch và thủ tục kiểm thử - Các ca kiểm thử và các kết quả kiểm thử - Sổ tay vận hành và sổ tay lắp đặt - Chương trình thi hành - Các môđun và mã thi hành được - Các môđun đã liên kết được + Đặc tả cơ sở dữ liệu: - Lược đồ và cấu trúc các file. - Nội dung hồ sơ ban đầu. + Tài liệu bảo trì: 4 - Các tài liệu liên quan đến công tác bảo trì phần mềm. 1.3 Nhiệm vụ của quản cấu hình Hình 1: Nhiệm vụ của quản cấu hình + Xác định cấu hình phần mềm. + Kiểm soát phiên bản phần mềm + Kiểm soát thay đổi. + Kiểm toán cấu hình phần mềm + Thiết lập các báo cáo liên quan đến những thay đổi trong phần mềm. Việc quản cấu hình cần phải trả lời được các câu hỏi sau: + Làm thế nào để tổ chức và quản được nhiều phiên bản (Version) của phần mềm sao cho những thay đổi đem lại sự hiệu quả? + Làm sao để tổ chức kiểm soát toàn bộ thay đổi trước và sau khi giao phần mềm cho người sử dụng? + Ai sẽ chịu trách nhiệm về việc chấp thuận và thiết lập thứ tự ưu tiên cho các thay đổi khi có nhiều thay đổi cùng được đề xuất? + Làm thế nào đảm bảo được việc thay đổi đã thực hiện đúng? + Dùng cơ chế nào để đánh giá các thay đổi khác nhau? 5 Trên một diện hẹp thì quản cấu hình phần mềm còn được coi là quản mã nguồn (Source Code). 1.4 Lợi ích của việc quản cấu hình phần mềm Công việc quản cấu hình phần mềm đem lại những ích lợi sau: + Cung cấp cho người phát triển phiên bản mới nhất của phần mềm + Quản được các mã nguồn được lưu trữ phân tán + Quản được các phiên bản khác nhau của phần mềm + Ghi chú do của sự thay đổi mã nguồn phần mềm và nội dung thay đổi đó như thế nào. + Tạo sự dễ dàng cho phép người phát triển có thể truy cập lại các phiên bản cũ trước đó thông qua hồ sơ hay các báo cáo được thiết lập, + Giúp tích kiệm được không gian đĩa do không phải cùng một lúc lưu trữ nhiều phiên bản khác nhau trong giai đoạn phát triển. + Cung cấp việc truy cập an toàn và đơn giản đối với bản copy tổng thể về các kết quả bàn giao đã được thông qua. + Kiểm soát được thực trạng của các kết quả bàn giao và mối quan hệ qua lại lẫn nhau giữa các kết quả này. + Cung cấp một kho chứa an toàn đối với các kết quả bàn giao. + Cho phép việc kiểm soát và tiết lộ có nguyên tắc các kết quả bàn giao thông qua vòng đời của nó, với đầy đủ các dấu tích lịch sử, đảm bảo phiên bản đúng và cập nhật, đã được kiểm tra và phát hành + Kiểm soát thay đổi cuả các kết quả bàn giao, đảm bảo các kết quả này được lưu theo đúng thứ tự . + Cung cấp việc lập báo cáo về hiện trạng của các kết quả bàn giao và những thay đổi của chúng. 2. Xác định cấu hình phần mềm. 6 Xác định cấu hình phần mềm là quá trình thiết lập các đối tượng và đặt tên cho các đối tượng trong qui trình phát triển phần mềm. Cần đặt tên không trùng lặp cho các khoản mục trong cấu hình phần mềm để kiểm soát quản và tổ chức lại theo phương pháp hướng đối tượng. Xác định cấu hình phần mềm chia thành hai loại đối tượng: + Đối tượng cơ bản: là một “đơn vị văn bản” được kỹ sư phần mềm tạo ra trong quá trình phân tích, thiết kế, lập mã và kiểm thử. + Đối tượng hỗn hợp: được cấu thành từ các đối tượng cơ bản. Mỗi đối tượng có một bộ các đặc tính mà thể hiện của nó là duy nhất phân biệt với các đối tượng khác gồm: + Tên đối tượng: dùng để định danh và đại diện cho đối tượng. + Mô tả đối tượng phần mềm bằng một danh sách các khoản mục, dữ liệu liên quan đến đối tượng: - Kiểu khoản mục cấu hình phần mềm: là tài liệu, chương trình hay dữ liệu. - Chứng thư dự án: xác định vị trí của đối tượng nằm trong giai đoạn nào, phần nào của dự án tổng thể. - Thông tin thay đổi hay thông tin liên quan đến phiên bản. + Danh sách các nguồn lực: là tất cả các thực thể được cung cấp, xử lý, tham khảo và các thức khác mà đối tượng cần đến. + Mối quan hệ giữa các đối tượng là quan hệ bộ phần hay toàn bộ, thể hiện thông qua đồ thị các đối tượng. Các mối quan hệ khác tương tác giữa các đối tượng. Để kiểm soát thay đổi của các đối tượng ta sử dụng đồ thị tiến hoá cho từng đối tượng. Đồ thị tiến hoá mô tả lịch sử đổi thay của đối tượng đó. 3. Kiểm soát phiên bản Trước hết, chúng ta cần tìm hiểu thế nào là phiên bản? Phiên bản (Version) là một thực thể mới của một đối tượng cấu hình (CI: Configuration Item) sau khi đã qua một 7 hoặc nhiều lần xem xét và thay đổi. Kiểm soát phiên bản là tổ hợp các thủ tục và các công cụ để quản các phiên bản khác nhau của các đối tượng cấu hình đã được tạo ra trong qui trình xây dựng phần mềm. Quản cấu hình cho phép đặc tả cấu hình thay thế của hệ thống phần mềm thông qua những phản hồi của người dùng khi đưa ra những mong muốn mới liên quan đến phần mềm. Để xây dựng một biến thể mới cho phần mềm và xác lập những thay đổi so với các phần mềm trước đó người ta gắn mỗi phiên bản phần mềm với một số đặc điểm đặc trưng cho nó hay còn gọi là một “bộ thuộc tính”. Một phiên bản phần mềm mới được xây dựng khi các đặc trưng của phần mềm trước đó đã không còn đáp ứng được nhu cầu mới của sự phát triển, và sự thay đổi đó là đáng kể về mặt công nghệ. Phiên bản Delta: Delta có nghĩa là sự khác biệt. Một file Delta là một file thể hiện sự khác biệt giữa các phiên bản của một phần mềm. Các phiên bản là các bản sao của một chương trình biểu diễn các thay đổi dần dần. Khi một phiên bản Delta được giữ lại thể hiện rằng chương trình logic chính được thay đổi một lần. Sau đó, phiên bản Delta được ứng dụng trên phiên bản chính với những thay đổi đã được thực hiện ta sẽ thu được các phiên bản Delta. Phiên bản Alpha: là các phiên bản phần mềm đầu tiên được đưa cho các đối tác có kinh nghiệm thử nghiệm. Các đối tác ở đây là một lớp người dùng nhỏ, có kinh nghiệm trong việc triển khai hệ thống. Thông tin được phản hồi là các lỗi được phát hiện, các góp ý liên quan đến việc cải thiện chất lượng phần mềm. Phiên bản Beta: Sau khi khắc phục các thiếu xót trong các phiên bản Alpha, phm đã trở nên hoàn thiện hơn và được tung ra cho lớp người dùng rộng hơn để có thể thu nhận được nhiều ý kiến đóng góp từ mọi ngành nghề, mọi đối tượng có mục đích và yêu cầu khác nhau. 8 Hình 2: Sơ đồ kiểm soát phiên bản Các phiên bản được phân biệt thông qua các con số đi kèm theo sau tên của phần mềm. Ví dụ một số phiên bản của phần mềm Total Commander: Total Commander 5.0; Total Commander 5.25; Total Commander 6.0; Total Commander 6.3. Ở đây, chúng ta thấy sự khác biệt trong tên gọi các phiên bản là các con số đi kèm, khoảng cách giữa các số thường thể hiện sự cải tiến trong phần mềm. Các con số ở hàng đầu tiên chỉ khi các tính năng của phần mềm được thay đổi cơ bản, còn các thông số sau chỉ sự cải tiến nhỏ giữa các phiên bản. 4. Kiểm soát thay đổi Trong quá trình phát triển phần mềm có qui mô lớn không thể không có những thay đổi. Nếu những thay đổi này không được kiểm soát sẽ dẫn đến tình trạng thiếu nhất quán, hỗn độn trong toàn bộ hệ thống và dẫn đến sự thất bại của phần mềm. Chính vì vậy chúng ta cần có sự kiểm soát các thay đổi diễn ra trong quá trình xây dựng và phát triển hệ thống phần mềm. Phương thức được sử dụng để kiểm soát thay đổi là phối hợp cả các qui trình thủ tục, cả con người và các công cụ tự động để tạo ra một cơ chế kiểm soát sự thay đổi hiện quả. 4.1 Qui trình kiểm soát sự thay đổi 9 * Sơ đồ qui trình kiểm soát sự thay đổi trong dự án phần mềm 10 Nhận ra nhu cầu thay đổi Người dùng đệ trình yêu cầu thay đổi Người phát triển đánh giá Sinh ra các báo cáo về thay đổi Người có thẩm quyền quyết định kiểm soát thay đổi Yêu cầu bị bác bỏ Thông báo cho người dùng Xếp hạng yêu cầu, tạo thứ tự thay đổi Phân đối tượng cấu hình cho cá nhân Các khoản mục đối tượng cấu hình “Check out” Thực hiện thay đổi Rà soát thay đổi (kiểm toán) Các khoản mục đối tượng cấu hình “Check in” Thiết lập các đường mốc kiểm thử Tién hành các hoạt động đảm bảo chất lượng kiểm thử Xem lại các thay đổi sẽ được bao gồm trong lần phần phát mới Xây dựng lại phiên bản mới của phần mềm Rà soát sự thay đổi của các khoản mục cấu hình (kiểm toán) Bao gồm các thay đổi vào trong phiên bản mới Phân phối phiên bản mới [...]... đó chưa? - Các thủ tục quản cấu hình để giám sát, ghi lại và báo cáo về nó có được tuân thủ hay không? - Tất cả các khoản mục cấu hình phần mềm liên quan đã được thực sự cập nhật chưa? Trong một vài trường hợp các câu hỏi kiểm toán như là một phần của rà soát kỹ thuật phần mềm nhưng khi quản cấu hình phần mềm là một hoạt động chính thức thì kiểm toán quản cấu hình phần mềm lại được tách ra bở... thành viên Nếu không có báo cáo tình trạng cấu hình có thể dẫn đến sự lãng phí về mặt thời gian và nhân lực khi cùng một sự thay đổi đối tượng cấu hình lại được thực hiện đi thực hiện lại nhiều lần bởi nhiều nhóm khác nhau 7 Một số công cụ tự động hỗ trợ quản cấu hìnhquản thay đổi Mỗi một khâu trong qui trình quản cấu hìnhquản thay đổi phần mềm đều có nhiều lớp công cụ khác nhau Ở... cáo như là một phần của nhiệm vụ báo cáo trạng thái cấu hình Đầu ra của báo cáo tình trạng cấu hình có thể được đặt trên một cơ sở dữ liệu trực tuyến sao cho những người phát triển phần mềm hay bảo trì có thể truy cập các thông tin đã được thay đổi Báo cáo tình trạng cấu hình phần mềm đóng một vai trò cốt lõi trong thắng lợi của một dự án phát triển phần mềm lớn Báo cáo tình trạng cấu hình giúp ta loại... các nhiệm vụ trong phần kiểm soát thay đổi Mỗi khi một khoản mục cấu hình phần mềm được ấn định mới hoặc được cập nhật các chức thư thay đổi thì một nội dung (Entry) sẽ được tạo ra Mỗi khi một khoản mục cấu hình phần mềm được chấp thuận bởi người có thẩm quyền thay đổi cấu hình (có một mệnh lệnh thay đổi kỹ thuật được tạo ra) thì nội dung cũng được tạo ra Mỗi khi một kiểm toán cấu hình được tiến hành... biểu đồ cấu trúc, phân tích đầy đủ Tạo sơ đồ quan hệ thực thể, biểu đồ luồng dữ liệu Tạo cấu trúc dữ liệu Procase Corp Santa Clara, CA Viasoft, Inc, Phoenix, AZ Microsoft Inc Belleview, Tạo sơ đồ quan hệ thực WA thể, biểu đồ luồng dữ liệu 7.4 Công cụ quản cấu hình (Tools for Configuration Management) Những công cụ quản cấu hình thương được gọi là thư viện phần mềm hay thư viện mã được hình thành... Các công cụ này cung cấp những mô hình mới hơn, quản các biến đổi dễ dàng hơn nhờ các chức năng giải quyết các vấn đề phức tạp như biên dịch điều kiện Bảng 4 Một số công cụ dùng cho quản cấu hình phần mềm STT 1 2 3 4 5 Tên công cụ Nhà cung cấp IBM Armonk, NY Chức năng Cung cấp thư viện phần mềm cho Copylib các máy tính mainframe IBM Data Administration, Quản dữ liệu, dùng để xem các Data Expeditor... toàn bộ hệ thống phần mềm dưới dạng hình thức, nghĩa là nó không định nghĩa qui trình phân tích, thiết kế và cài đặt hệ thống Những người phát triển UML tạo ra một đặc tả của một qui trình phát triển phần mềm nhằm giải thích cho cách suy nghĩ của họ về việc xây dựng hệ thống phần mềm Hình 5 Mô hình hợp nhất (UP) Qui trình phát triển phần mềm theo hướng này gọi là Qui trình phát triển phần mềm hợp nhất... ứng phụ có thể xảy ra khi đối tượng cấu hình này được thay đổi có thể gây nên 5.2 Kiểm toán cấu hình phần mềm 14 Kiểm toán cấu hình phần mềm là sự bổ sung cho rà soát kỹ thuật chính thức bằng cách đánh giá một đối tượng cấu hình trên các đặc tính mà thường không được xét đến trong quá trình rà soát Kiểm toán cấu hình đòi hỏi và trả lời được các câu hỏi sau: - Thay đổi được đặc tả theo trật tự thay đổi... Kiểm toán cấu hình phần mềm 5.1 Rà soát kỹ thuật chính thức Rà soát kỹ thuật chính thức tập trung vào sự đúng đắn về mặt kỹ thuật của đối tượng cấu hình đã được thực hiện sửa đổi Người rà soát đánh giá sự phù hợp với các khoản mục và cấu hình khác có liên quan trong toàn bộ hệ thống phần mềm, tránh được việc bỏ sót và không kiểm soát được các hiệu ứng phụ có thể xảy ra khi đối tượng cấu hình này được... Cung cấp thư viện phần mềm cho Librarain các máy tính mainframe IBM Liste, IL Pansophic Systems, Inc Cung cấp thư viện phần mềm cho Panvalet các máy tính mainframe IBM Liste, IL RUP (Rational Rationnal Quản toàn bộ các cấu hình liên Unified quan đến việc phát triển phần 19 Process) mềm 8 Vài nét về USDP (Unified Software Development Process) 8.1 Giới thiệu chung UML là ngôn ngữ mô hình hợp nhất giúp . hệ thống phần mềm coi quản lý sự thay đổi đó là một phần trong qui trình quản lý dự án phần mềm. Qui trình quản lý đó được gọi là quản lý cấu hình phần mềm. 1. Quản lý cấu hình phần mềm (Configuration. PHẦN MỀM Đề TàI QUảN Lý CấU HìNH PHầN MềM Hải Phòng, tháng 9 năm 2010 1. Quản lý cấu hình phần mềm (Configuration Management) 2 1.1 Quản lý cấu hình phần mềm là gì? 2 1.2 Nội dung của quản lý. nhau? 5 Trên một diện hẹp thì quản lý cấu hình phần mềm còn được coi là quản lý mã nguồn (Source Code). 1.4 Lợi ích của việc quản lý cấu hình phần mềm Công việc quản lý cấu hình phần mềm đem lại những ích

Ngày đăng: 27/06/2014, 08:49

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan