1. Trang chủ
  2. » Giáo án - Bài giảng

CNPM BẢO TRÌ PHẦN MỀM

35 128 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

Thông tin cơ bản

Định dạng
Số trang 35
Dung lượng 1,46 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

1. Định nghĩa bảo trìBảo trì là công việc tu sửa, thay đổi phần mềm đã được phát triển (Chương trình, dữ liệu, các loại tư liệu đặc tả…)theo những lý do nào đó.3. Trình tự bảo trìQuy trình bảo trì là gì?Đó là trong quá trình trong vòng đời của phần mềm, cũng tuân theo các pha phân tích, thiết kế, phát triển, và kiểm thử từ khi phát sinh vấn đề cho đến khi giải quyết xong.Thao tác bảo trì gồm 2 loại:Tu chỉnh cái đã cóThêm cái mới5. Kỹ thuật đảo ngượcMục đích của kĩ thuật này là tạo thuận lợi thay đổi bằng cách cho phép hiểu được hệ thống phần mềm làm gì, làm thế nào cấu trúc của nó ra sao.Các mục tiêu của mục đích này là phục hồi dữ liệu đã mất thuận tiên luân chuyển giữa các nền tảng khác nhau, phát triển và cung cấp tài liệu mới lấy ra các thành phần tái sử dụng, giảm các nỗ lực bảo trì phần mềm, xử lý các vấn đề phức tạp, phát hiện ra các ảnh hưởng ….

Trang 1

BÁO CÁO CHƯƠNG 7: VẬN HÀNH VÀ BẢO TRÌMÔN: CÔNG NGHỆ PHẦN MỀM

Trang 2

I Giới thiệu về bảo trì phần mềm

1 Định nghĩa bảo trì

2 Các hình thái bảo trì

3 Trình tự bảo trì

Trang 3

1 Định nghĩa bảo trì

• Bảo trì là công việc tu sửa, thay đổi phần mềm đã được phát triển (Chương trình, dữ liệu, các loại tư liệu đặc tả…)theo những lý do nào đó.

Trang 6

Sơ đồ bảo trì

Trang 7

II Các mô hình bảo trì

1 Mô hình Quick - Fix

2 Mô hình lặp nâng cao

3 Mô hình hướng tái sử dụng

4 Mô hình Boehm

5 Kỹ thuật đảo ngược

Trang 8

1 Mô hình Quick - Fix

• Là một giải pháp đặc biệt khi nào có lỗi thì cố gắng sửa nó nhanh nhất có thể, do ràng buộc về thời gian nên mô hình này không quá tập trung vào ảnh hưởng lâu dài của việc sửa lỗi.

• Ưu điểm là có thể tiết kiệm thời gian, chi phí cho

việc bảo trì, có thể tự giải quyết được các vấn đề liên quan đến hệ thống.

Trang 9

2 Mô hình lặp nâng cao

• Mô hình này bao gồm 3 giai đoạn :

 Phân tích hệ thống

 Phân loại các thay đổi được đề xuất.

 Thay đổi các đề xuất đó.

• Mô hình lặp nâng cao sẽ đánh giá những sự thay đổi trong suốt thời gian sống của phần mềm để thực hiện vòng lặp.

• Mô hình này sẽ không đạt hiệu quả cao khi các tài liệu đi kèm không thực sự đầy đủ Mô hình này mặc định coi luôn tồn tại một bộ đầy đủ các tài liệu đi kèm của hệ thống.

Trang 10

3 Mô hình hướng tái sử dụng

• Hệ thống chứa các thành phần có thể tái sử dụng được có thể tùy chỉnh hệ thống để phù hợp với những yêu cầu mới, tích hợp các thành phần đó vào hệ thống mới

• Mô hình này gồm 4 bước

 Xác định các phần trong hệ thống cũ và chỉ ra các phần có thể tái sử dụng.

Trang 11

4 Mô hình Boehm

• Mô hình Boelm dựa trên mô hình và các nguyên tắc kinh

tế, quá trình bảo trì phần mềm được biểu thị như là một vòng tròn khép kín Việc sử dụng mô hình kinh tế giúp

chúng ta hiểu các vấn đề gặp phải và cải thiện chương

trình khi bảo trì

• Trong giai đoạn này tập các thay đổi sẽ được quyết định bởi việc áp dụng các chiến lược cụ thể và việc ước tính chi phí, lợi nhuận đối với tập các thay đổi các thay đổi

chỉnh sửa này đều có chi phí dự trù cho riêng nó để quyết định phạm vi và loại tài nguyên mà phải chi tiêu vào

Trang 12

5 Kỹ thuật đảo ngược

• Mục đích của kĩ thuật này là tạo thuận lợi thay đổi bằng cách cho phép hiểu được hệ thống phần mềm làm gì, làm thế nào cấu trúc của nó ra sao

• Các mục tiêu của mục đích này là phục hồi dữ liệu đã mất thuận tiên luân chuyển giữa các nền tảng khác nhau, phát triển và cung cấp tài liệu mới lấy ra các thành phần tái sử dụng, giảm các nỗ lực bảo trì phần mềm, xử lý các vấn đề phức tạp, phát hiện ra các ảnh hưởng …

Trang 13

5 Kỹ thuật đảo ngược

• Các mức độ kỹ thuật đảo ngược

Trang 14

5 Kỹ thuật đảo ngược

• Redocumentation

 Là tái tạo lại 1 biểu diễn tương đương trong một mức độ trừu

tượng có liên quan

 Tạo các cách nhìn khác nhau về hệ thống để mà nâng cao khả năng hiểu biết phát triển tài liệu hiện có Tài liệu nên được tạo

ra trong quá trình phát triển hệ thống và chỉnh sửa chúng mỗi khi

hệ thống có thay đổi tạo tài liệu cho chương trình được điều

chỉnh mới.

Trang 15

5 Kỹ thuật đảo ngược

triển hệ thống, hay nói cách khác là nền tảng cho việc chỉnh sửa

hệ thống trong tương lai Việc thiết kế này có thể được sử dụng

để phát triển tương tự nhưng không đồng nhất các ứng dụng.

Trang 16

• Specification recovery

 Thông qua cách này ta có thể lây được thông tin đặc tả yêu cầu

về hệ thống

 Các đặc tả về hệ thống có thể được sử dụng để hỗ trợ bảo trì

phần mềm mà không nhất thiết truy nhập vào mã nguồn

 Các đặc tả này hỗ trợ cho hiểu biết về kiến thức để tác động đến việc thay đổi hệ thống.

 Nếu các đặc tả này mà phù hợp có thể sử dụng để phát triển, bảo trì các hệ thống tương tự.việc sử dụng các đặc tả đôi lúc có lợi hơn là việc sử dụng mã nguồn tương tự

Trang 17

5 Kỹ thuật đảo ngược

• Tác dụng của kỹ thuật Reverse Engineering

 Kết quả khi ứng dụng kĩ thuật đảo ngược này hữu dụng đối với ứng dụng và tái sử dụng phần mềm từ những bản thiết kế và mã nguồn đã

có trước đó.

 Việc sử dụng các công cụ kĩ thuật đảo ngược cung cấp tài liệu cho việc hiểu hệ thống thời gian dành cho hiểu được tổng thể phần mềm

là rất lớn, công cụ kĩ thuật đảo ngược sẽ giới hạn phạn vi và từ đó ta

có thể giảm được giá thành cho việc bảo trì phần mềm.

 Kĩ thuật Reverse Engineering mang lại lợi ích cho các hoạt đôngh

bảo trì phần mềm theo các cách sau:

 Chỉnh sửa chính xác

 Chỉnh sửa cho phù hợp

Trang 18

III.Những khó khăn và những vấn đề trong bảo trì hiện nay

1 Những khó khăn trong bảo trì

2 Những vấn đề trong bảo trì hiện nay

Trang 19

• Thường khó hay không thể nào theo dõi được sự tiến hóa của phần mềm qua nhiều phiên bản hay lần phát hành.

• Khó hay không thể nào theo dõi được tiến trình qua đó tạo ra phần mềm

• Tài liệu không có hoặc có nhưng rất tồi

• Phần lớn các phần mềm đều không thiết kế cho sự thay đổi Chửng nào mà phương pháp thiết kế còn chưa phù hợp với sự thay đổi thông qua các khái niệm như phụ thuộc hàm, lớp sự vật, thì việc thay đổi đối với phần mềm vẫn còn khó khăn và sinh lỗi

Trang 20

• Phương pháp cải tiến thao tác bảo trì:

 Sáng kiến trong quy trình phát triển phần mềm.

 Chuẩn hóa mọi khâu trong phát triển phần mềm.

 Người bảo trì chủ chốt tham gia vào giai đoạn phân tích và thiết kế.

 Thiết kế để dễ bảo trì.

 Sáng kiến trong quy trình bảo trì phần mềm.

 Sử dụng các công cụ hỗ trợ phát triển phần mềm.

 Chuẩn hóa thao tác bảo trì và thiết bị môi trường bảo trì.

 Lưu lại những thông tin lịch sử bảo trì.

 Dự án nên cử một người chủ chốt của mình làm công việc

bảo trì sau khi dự án kết thúc giai đoạn phát triển.

Trang 21

 Phát triển những kỹ thuật mới cho bảo trì.

 Công cụ phần mềm hỗ trợ bảo trì.

 Cơ sở dữ liệu cho bảo trì.

 Quản lý tài liệu, quản lý dữ liệu, quản lý chương trình nguồn, quản lý dữ liệu thử, quản lý sử bảo trì.

 Trạm bảo trì tính năng cao trong hệ thống mạng lưới bảo trì với máy chủ thông minh.

Trang 22

IV.Các công cụ bảo trì phần mềm

1 Khái niệm

2 Các tiêu chuẩn lựa chọn công cụ

3 Phân loại công cụ

4 Những sản phẩm thương mại

Trang 23

1 Khái niệm

• Công cụ bảo trì phần mềm là 1 sản phẩm trợ giúp cho

người bảo trì phầm mềm trong việc thực hiện nhiệm vụ Việc sử dụng các công cụ cho việc bảo trì phần mềm làm cho các nhiệm vụ trở nên đơn giản hơn , đồng thời làm

tăng hiệu quả và năng suất

Trang 24

2 Tiêu chuẩn lựa chọn công cụ

Trang 25

3 Phân loại công cụ

• Về nguyên tắc, ta có thể phân biệt giữa các lớp của các công cụ

bảo trì phần mềm, thường là dựa trên các nhiệm vụ mà công cụ hỗ trợ.

• Tuy nhiên, trong thực tế thì khó có thể phân biệt được, chủ yếu là

do tính chất đa dạng và mối liên hệ giữa các hoạt động bảo trì phần mềm.

• Các loại nhiệm vụ mà công cụ này sẽ được thảo luận là:

 Chương trình hiểu biết và kỹ thuật đảo ngược (Program

understanding and reverse engineering).

 Kiểm tra (Testing).

 Quản lý cấu hình (Configuration management).

 Tài liệu và đo lường (Documentation and measurement)

Trang 26

4 Những sản phẩm thương mại

• Bugzilla

• HP Quality Center

• IBM Rational Quality Manager

• Micro Focus SilkPerformer

Trang 27

• Bugzilla cho phép các kỹ sư phần mềm quản lý việc đảm bảo

chất lượng sản phẩm , tìm lỗi , và đưa ra các đường dẫn khắc

phục lỗi để xem xét lại

• Chương trình này miễn phí về mặt kỹ thuật , mặc dù họ có tính phí cho các vấn đề hỗ trợ rộng hơn

• Bugzilla là một chương trình an toàn có khả năng quét và sửa chữa việc không nhất quán cơ sở dữ liệu.

Trang 28

HP Quality Center

• Ứng dụng này dựa trên nền Web giúp cho các kỹ sư phần mềm đưa các chương trình của họ thông qua các ringer bằng việc

kiểm tra chúng cùng với các lỗi khác nhau

• HP Quality Center có khả năng lập kế hoạch và chiến lược test , phân tích kết quả và quản lý các vấn đề và khuyết điểm của

phần mềm

• Có 3 phiên bản của chương trình , nổi bật nhất trong cả 3 phiên bản đó là khả năng giải quyết hàng trăm ứng dụng cùng một lúc với một đội ngũ quản lý được có mặt trên toàn thế giới.

Trang 29

IBM Rational Quality Manager

• IBM Rational Quality Manager cũng giống như HP Quality Center

ở chỗ nó thực hiện việc kiểm tra bằng cách sử dụng một ứng dụng dựa trên nền tảng Internet

• Chương trình cho phép người dùng tủy chỉnh những thông tin

được trình bày thông qua bảng điều khiển tùy chỉnh , nó còn cho phép người dùng lên lịch cho các bài test phần mềm cùng với rất nhiều các thành viên của họ

• Những bài test này có thể được tự động hoặc được làm 1 cách thủ công nếu có một phân vùng cụ thể của phần mềm nơi mà các kỹ

sư mong muốn được tiếp cận gần hơn

• Việc mô tả chương trình sẽ chỉ ra nó sẽ đẩy nhanh tiến độ của dự

án và đảm bảo rằng các ứng dụng đáp ứng được các mục tiêu của công ty

Trang 30

Micro Focus SilkPerformer

• Micro Focus SilkPerformer là một chương trình có thể được sử dụng bởi các công ty tầm cỡ doanh nghiệp để phát triển các ứng dụng phần mềm thông qua thử nghiệm rộng rãi.

• Các trang Micro Focus chỉ ra rằng chương trình có thể đẩy

nhanh phân tích các vấn đề bằng các tìm chúng trong các chu trình phát triển một cách nhanh chóng

• SilkPerformer hỗ trợ đầy đủ cho các ứng dụng Web 2.0 và chu trình test hiệu quả , đồng thời tạo ra các test

• Chương trình thực hiện các bài test - có thể được thể xem trên nhiều môi trường trong khả năng để nhanh chóng xác định nếu

có điều kiện nào đó gây ra hỏng hóc

Trang 31

V CÁC KỊCH BẢN BẢO TRÌ TRONG QUÁ TRÌNH PHÁT TRIỂN PHẦN MỀM

1 Phát triển lặp đi lặp lại

2 Hướng thành phần

Trang 32

• Phát triển lặp đi lặp lại là một phương pháp phát triển phần mềm mà quá trình xử lý được tách ra trong những phần lặp nhỏ Một sự lặp lại được thực hiện cho mỗi đặc điểm mới được thêm vào sản phẩm Khi bắt đầu mỗi lần lặp, có sự gặp nhau giữa các bước được thực hiện trong suốt quá tŕnh lặp Trong các lần gặp nhau này, người phát triển và khách hàng cần trao đổi các yêu cầu sử dụng, các bước kế hoạch đươc

thực hiện, và ước lượng giá thành

Trang 33

• 4 Giai đoạn của RUP

Giai đoạn mở đầu

Giai đoạn chuẩn bị cho dự án ( triển khai thiết kế , bổ sung hoàn thiện và kiểm tra bản thảo )

Giai đoạn xây dựng bản thảo

Giai đoạn chuyển đổi

Trang 34

• Khái niệm : một quy trình phát triển phần mềm theo mô hình linh hoạt (agile) Công nghệ Agile cung cấp rất nhiều phương pháp luận, quy trình và các thực nghiệm để cho việc phát triển phần mềm trở nên nhanh chóng và dễ dàng.

• Scrum chia dự án thành các vòng lặp phát triển gọi là các

sprint Mỗi sprint thường mất 2- 4 tuần (30 ngày) để hoàn

thành Nó rất phù hợp cho những dự án có nhiều sự thay đổi và yêu cầu tốc độ cao.

Trang 35

• Những hoạt động bảo trì chính ở CBSD ( Component Based Software Development )

- Gắn kết hóa và gói hóa

 May đo hóa

 Phát hiện lỗi và cô lập

 Cập nhật cấu hình thành phần

 Theo dõi và kiểm tra các hành vi hệ thống

 Kiểm thử các thành phần

Ngày đăng: 27/08/2019, 23:33

TỪ KHÓA LIÊN QUAN

w