Bài giảng Công nghệ phần mềm - Huỳnh Xuân Hiệp - Bài 7: Sử dụng lại, dễ di chuyển và vận hành tương tác

Nội dung:

? Các khái niệm về sử dụng lại

? Trở ngại của việc sử dụng lại

? Sử dụng lại trong các giai đoạn thiết kế và cài đặt

? Dễ di chuyển

? Vận hành t-ơng tác

pdf6 trang | Chuyên mục: Công Nghệ Phần Mềm | Chia sẻ: dkS00TYs | Lượt xem: 1536 | Lượt tải: 5download
Tóm tắt nội dung Bài giảng Công nghệ phần mềm - Huỳnh Xuân Hiệp - Bài 7: Sử dụng lại, dễ di chuyển và vận hành tương tác, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
Huỳnh Xuân Hiệp - CNPM 
80
7 
sử dụng lại, dễ di chuyển
vμ vận hμnh t−ơng tác
(REUSABILITY, PORTABILITY, AND INTEROPERABILITY)
Nội dung: 
ƒ Các khái niệm về sử dụng lại 
ƒ Trở ngại của việc sử dụng lại 
ƒ Sử dụng lại trong các giai đoạn thiết kế và cài đặt 
ƒ Dễ di chuyển 
ƒ Vận hành t−ơng tác 
Huỳnh Xuân Hiệp - CNPM 
81
7.1 Các khái niệm về sử dụng lại
(reuse concepts)
ƒ Sử dụng lại là việc lấy một bộ phận của sản phẩm này để phát triển thuận 
lợi sản phẩm khác (với chức năng khác) 
ƒ Bộ phận đ−ợc sử dụng lại có thể là một mô-đun, một đoạn mã lệnh, một 
thiết kế, một phần h−ớng dẫn sử dụng, một tập dữ liệu kiểm thử, một −ớc 
l−ợng về thời gian và giá thành,... 
ƒ Có 2 dạng sử dụng lại: 
‰ ngẫu nhiên (accidental reuse), một số bộ phận của sản phẩm cũ 
vẫn đ−ợc sử dụng cho sản phẩm mới 
‰ thảo luận (delibrate reuse), bộ phận đang đ−ợc thực hiện sẽ đ−ợc sử 
dụng lại trong t−ơng lai 
ƒ Theo thống kê, khoảng 85% bộ phận của sản phẩm cũ đ−ợc sử dụng lại 
ƒ Một số ví dụ: 
‰ các giao diện lập trình ứng dụng của Microsoft (application 
programming interface - API) 
‰ các th− viện của C, C++,... 
Huỳnh Xuân Hiệp - CNPM 
82
7.2 Trở ngại của việc sử dụng lại
(impediments to reuse)
ƒ Bản ngã, các nhà chuyên nghiệp th−ờng viết các bộ phận từ đầu chứ 
không sử dụng lại của ng−ời khác 
ƒ Chất l−ợng của bộ phận sử dụng lại 
ƒ Phục hồi lại các bộ phận cũ hữu ích 
ƒ Giá thành cao khi sử dụng lại 
ƒ Một số tr−ờng hợp nghiên cứu 
‰ Raytheon Missile Systems Division: 40-60% thiết kế và mô-đun,... 
‰ Toshiba Software Factory: 32% tài liệu, thiết kế 33%, mã lệnh 48%,... 
‰ NASA Software: 35% mã lệnh, 45% mô-đun,... 
‰ ... 
Huỳnh Xuân Hiệp - CNPM 
83
7.3 Sử dụng lại trong các giai đoạn thiết kế và cài đặt
(reuse during the design and implementation phases)
ƒ Th− viện(libraries) hay bộ công cụ (toolkit) 
‰ GUI (graphical user interface), Java Abstract Windowing Toolkit,... 
ƒ Khung ứng dụng (framework): kết hợp sự điều khiển luận lý của thiết kế, 
xây dựng ứng dụng với các thao tác giống hệt sản phẩm tr−ớc đó 
‰ MacApp cho các máy Macintosh, 
‰ The Microsoft Foundation Class Library - MFC, Borland’s Visual 
Component Library - VCL, Object Windows Library - OWL 
ƒ Mẫu thiết kế (design patterns) 
‰ Abstract Factory [Gamma, Helm, Johnson và Vlissides, 1995] 
ƒ Kiến trúc phần mềm (software architecture) 
™ Sử dụng lại và bảo trì 
Hoạt động % giá thành % tiết kiệm do sử dụng lại 
Phát triển 
Bảo trì 33% 9.3% 
 67% 17.9% 
Hình 7.1 Số liệu với 40% bộ phận đ−ợc đ−ợc sử dụng lại 
Huỳnh Xuân Hiệp - CNPM 
84
7.4 Dễ di chuyển
(portability)
ƒ Định nghĩa [Mooney, 1990] : một sản phẩm đ−ợc cho là dễ di chuyển nếu 
với chi phí không lớn lắm có thể thực thi đ−ợc trên một máy tính mới thay vì 
phải viết lại từ đầu 
ƒ Một số vấn đề cần quan tâm 
‰ không t−ơng thích phần cứng (hardware incompatibilities) 
‰ không t−ơng thích hệ điều hành (operating system incompatibilities) 
‰ không t−ơng thích về số hoá phần mềm (numerical software 
incompatibilities). VD: 16 bits hay 32 bits 
‰ không t−ơng thích trình biên dịch (compiler incompatibilities) 
ƒ Một số kỹ thuật nhằm đạt đ−ợc tính dễ di chuyển 
‰ hệ thống phần mềm dễ di chuyển (portable system software) 
‰ hệ thống phần mềm ứng dụng dễ di chuyển (portable application 
software) 
‰ dữ liệu dễ di chuyển (portable data) 
Huỳnh Xuân Hiệp - CNPM 
85
7.5 Vận hành t−ơng tác
(interoperability)
ƒ Định nghĩa: là sự hợp tác qua lại trên các đối t−ợng mã lệnh từ nhiều nhà 
sản xuất phần mềm khác nhau, đ−ợc viết trên nhiều ngôn ngữ lập trình 
khác nhau và thực thi trên nhiều hệ điều hành khác nhau 
ƒ Một số ví dụ 
‰ OLE (object linking and embedding),1990, là một phần của Windows 
3.0, hỗ trợ các tài liệu phức hợp về xử lý văn bản, bảng tính,... 
‰ COM (component object model) là b−ớc phát triển tiếp theo của OLE 
‰ ActiveX năm 1996, có nối kết với Internet; giống OLE và COM 
‰ DCOM (distributed COM), 1996, hỗ trợ phân tán trên các nền hệ điều 
hành khác nhau 
‰ COM+, COM3 là các phiên bản h−ớng đối t−ợng 
‰ CORBA (common object request broker architecture) hỗ trợ các ứng 
dụng phần mềm vận hành t−ơng tác trên các máy khác nhau trong 
cùng một môi tr−ờng phân tán [OMG, 1993] (Object Management 
Group) 

File đính kèm:

  • pdfBài giảng Công nghệ phần mềm - Huỳnh Xuân Hiệp - Bài 7 Sử dụng lại, dễ di chuyển và vận hành tương tác.pdf