Báo cáo nghiên cứu khoa học " ỨNG DỤNG PHƯƠNG PHÁP PHÁT TRIỂN DỰA TRÊN THÀNH PHẦN TRONG QUÁ TRÌNH PHÁT TRIỂN PHẦN MỀM "
lượt xem 6
download
Thế giới thực luôn biến động. Do vậy, để thích nghi, các hệ thống phần mềm mô tả nó luôn thay đổi. Phương pháp phát triển hướng đối tượng đã được xem là một phương tiện hữu hiệu để giải quyết sự khủng hoảng này trong công nghệ phần mềm. Tuy nhiên, trong các hệ thống lớn, phức tạp, có chất lượng cao đòi hỏi phải được xây dựng trong một thời gian ngắn thì bản thân nó lại bộc lộ hạn chế về việc kiểm định chất lượng và chi phí phần mềm. ...
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Báo cáo nghiên cứu khoa học " ỨNG DỤNG PHƯƠNG PHÁP PHÁT TRIỂN DỰA TRÊN THÀNH PHẦN TRONG QUÁ TRÌNH PHÁT TRIỂN PHẦN MỀM "
- ỨNG DỤNG PHƯƠNG PHÁP PHÁT TRIỂN DỰA TRÊN THÀNH PHẦN TRONG QUÁ TRÌNH PHÁT TRIỂN PHẦN MỀM Lê Văn Tường Lân Trường Đại học Khoa học, Đại học Huế Thế giới thực luôn biến động. Do vậy, để thích nghi, các hệ thống phần mềm mô tả nó luôn thay đổi. Phương pháp phát triển hướng đối tượng đã được xem là một phương tiện hữu hiệu để giải quyết sự khủng hoảng này trong công nghệ phần mềm. Tuy nhiên, trong các hệ thống lớn, phức tạp, có chất lượng cao đòi hỏi phải được xây dựng trong một thời gian ngắn thì bản thân nó lại bộc lộ hạn chế về việc kiểm định chất lượng và chi phí phần mềm. Bài viết này nhằm nêu bật vai trò của một phương pháp quan trọng trong ngành công nghệ phần mềm hiện nay, được xem là bước tiến hoá của phương pháp phát triển hướng đối tượng, đó là phương pháp hướng thành phần hay còn được gọi là phát triển dựa trên thành phần. Phương pháp này xem việc phát triển phần mềm là quá trình hợp nhất của những thành phần phần mềm tiền đóng gói. I. QUAN ĐIỂM CỦA PHÁT TRIỂN DỰA TRÊN THÀNH PHẦN 1.Bài toán; Cho hệ thống thông báo tự động như sau: Một máy tính kết nối với modem điện thoại. Tại thời điểm T, hệ thống cần tự động thông báo một bản tin M có độ dài L cho trước trong khoảng thời gian N. Hay trong một thời điểm nào đó, có thể được kích hoạt để nhận một bản tin M' nào đó gởi đến. Hãy xây dựng phần mềm cho bài toán trên. 51
- 2. Xây dựng hệ thống theo phương pháp hướng đối tượng: Để phát triển phần mềm cho hệ thống trên, ta phải xây dựng đối tượng MODEM với những vấn đề phải xét: + Các thuật toán xử lý trên modem: tạo kết nối, hủy kết nối,... + Hiểu biết tập lệnh AT của nhà sản xuất cung cấp cho mode, + Các hằng số trả lời của modem khi làm việc,... +... Rõ ràng, trong cách thức phát triển này, ta phải đầu tư một chi phí về thời gian và tiền bạc cho hệ thống. Thêm vào đó, chất lượng của hệ thống làm chúng ta phải xem xét vì nhiều lý do: + Các đối tượng cấu thành nên hệ thống đã là đối tượng tiêu chuẩn? + Chúng đã được kiểm chứng hình thức,... 3. Quan điểm của phát triển dựa trên thành phần: Xuất phát từ quan điểm: "Buy do not build", liệu chúng ta phải xây dựng đối tượng MODEM trên hay có thể tìm đối tượng tương tự MODEM' trong thư viện? Tư tưởng của phát triển dựa trên thành phần là lắp ráp hệ thống từ những thành phần đã có. Do vậy, kiến trúc phần mềm của hệ thống dựa vào kiến trúc phần mềm của các thành phần phần mềm tiêu chuẩn nên hệ thống đạt chất lượng cao hơn. 52
- Để phát triển hệ thống trên, thay vì phải xây dựng đối tượng MODEM, ta tìm thấy thành phần MSCOMM trong thư viện của MicroSoft; công việc tiếp theo là chỉ cần làm thích nghi các thuộc tính và phương thức của nó trong hệ thống của ta. Tuy nhiên, cũng để phát triển hệ thống trên, người ta cũng tìm thấy thành phần EXCEL TELE trong thư viện TeleTools, tương tự như thành phần MSCOMM nhưng có khả năng thích nghi cao hơn, chỉ cần thay đổi các thuộc tính và phương thức của nó ta sẽ có được hệ thống cần xây dựng. 4. Mô hình phát triển dựa trên thành phần: Phương pháp phát triển dựa trên thành phần gần tương tự như phương pháp phát triển hướng đối tượng. Hoạt động công nghệ bắt đầu với sự chỉ ra các lớp tham dự để phát triển hệ thống. Nếu các lớp n ày được tìm thấy trong thư viện và sự thích nghi là tốt, chúng sẽ được lấy ra và phát triển hệ thống. Ngược lại, chúng sẽ được phát triển để sử dụng và bổ sung vào thư viện sử dụng lại. Thành phần để xây dựng Phân hệ thống tích lỗi Kế hoạch Hợp nhất cho Tìm kiếm phiên bản hệ trong thư viện Giao tiếp với thống thứ n thành phần khách hàng Bổ sung thành Sử dụng nếu phần mới vào thành phần Đánh giá của thư viện thích hợp khách hàng Xây dựng nếu Xây dựng hay thành phần dừng hệ thống không thích hợp Hình 1: Mô hình phát triển hệ thống dựa trên thành phần 53
- II. HOẠT ĐỘNG CHÍNH CỦA CÔNG NGHỆ DỰA TRÊN THÀNH PHẦN 1. Tiến trình của công nghệ dựa trên thành phần: Như đã chỉ ra ở trên, việc xây dựng hệ thống bằng cách sử dụng và làm thích nghi hành phần MSCOMM sẽ tốt hơn việc xây dựng đối tượng MODEM và nếu sử dụng thành phần EXCEL TELE thì lại tốt hơn. Vấn đề đặt ra là làm sao để người phát triển hệ thống có thể biết hay tìm thấy các thành phần này để sử dụng? Và làm thế nào để biết được thành phần này là có thể làm thích nghi để đưa vào hệ thống cần xây dựng?... Công nghệ phần mềm dựa trên thành phần chứa hai hoạt động công nghệ song song: công nghệ lĩnh vực và phát triển dựa trên thành phần. i. Công nghệ lĩnh vực là nhận ra, xây dựng, phân loại và phát triển những thành phần phần mềm mà chúng có thể áp dụng được đối với phần mềm hiện có và phần mềm trong tương lai trong một lĩnh vực ứng dụng cụ thể. Công nghệ lĩnh vực gồm ba hoạt động chính: phân tích, xây dựng và phát triển. Như vậy, nó 54
- đóng vai trò là thiết lập tập các thành phần phần mềm có thể sử dụng lại bởi kỹ sư phần mềm. Tuy vậy, khó xác định xem một thành phần tiềm năng có thể được sử dụng hay không. Để được điều này, phải chỉ rõ tập hợp các đặc trưng lĩnh vực mà chúng có được. Gọi {Dp}là tập hợp các đặc trưng lĩnh vực của một thành phần phần mềm có thể sử dụng lại; với mỗi Dpi trong tập là một đặc trưng về lĩnh vực cụ thể. Khi xây dựng phần mềm W mới, ta có tập DWi là tập các đặc trưng về lĩnh vực của ứng dụng, ta so sánh với Dpi để có được quyết định. ii. Phát triển dựa trên thành phần là chỉ ra những đòi hỏi từ khách hàng, xác định một kiểu kiến trúc thích hợp để đáp ứng mục tiêu hệ thống. Để từ đó có thể: + Chọn những thành phần tiềm năng cho việc sử dụng lại, + Đánh giá các thành phần để chắc chắn chúng phù hợp với kiến trúc của hệ thống, + Làm thích nghi các thành phần để cần thiết cho việc hợp nhất, + Tích hợp những thành phần cho ứng dụng tổng thể. 2, Hoạt động đánh giá thành phần: Như đã nói, việc xây dựng hệ thống bằng cách sử dụng và làm thích nghi hành phần EXCEL TELE sẽ tốt hơn việc sử dụng thành phần MSCOMM, tại sao? Dựa vào đâu để người sử dụng quyết định sử dụng thành phần này mà không sử dụng thành phần khác?... Khi quyết định sử dụng một thành phần trong thư viện phần mềm để xây dựng hệ thống, các hoạt động đánh giá nó là cần thiết để đảm bảo có hiệu quả trong hệ thống. 55
- + Đánh giá khả năng thành phần: đảm bảo rằng một thành phần tham dự sẽ biễu diễn được yêu cầu chức năng, sẽ phù hợp trong kiến trúc cụ thể của hệ thống. Cần để ý rằng miêu tả giao diện cung cấp thông tin hữu ích về sự điều hành và sử dụng thành phần nhưng không cung cấp tất cả các thông tin để chỉ ra nó là thật sự hiệu quả trong ứng dụng mới mà phải phân tích, khám phá để đánh giá nó. + Xác định sự thích nghi của thành phần: Về bản chất, kiến trúc phần mềm chỉ rõ những quy luật thiết kế đối với tất cả các thành phần, nhận ra những cách kết nối và sắp đặt. Trong một vài trường hợp, việc sử dụng một thành phần nào đó có thể gây lỗi kiến trúc hệ thống. Những thành phần này phải được loại bỏ và thay thế bằng những thành phần phù hợp hơn. + Xác định cấu tạo của thành phần: nhận ra cơ chế kết nối và sắp đặt. Cấu tạo thành phần phải thoả chất lượng, thích nghi và công nghệ để tạo nên cấu trúc thiết lập cho ứng dụng. 3. Phân loại và tìm lại thành phần: Theo đề cập trên, làm thế nào để khi cần ta có thể tìm, biết được có thành phần MSCOMM hay thành phần EXCEL TELE để đưa vào xây dựng hệ thống? Ngoại trừ các thành phần này trong thư viện có còn các thành phần khác hay không? Khả năng thích nghi đối với hệ thống như thế nào?.... Trong kho thành phần lớn, có hàng chục ngàn thành phần có thể sử dụng lại. Do vậy, bằng cách nào để các kỹ sư phần mềm có thể tìm thấy thành phần mà họ cần? Để trả lời câu hỏi này, cần phải giải quyết: "Cần phải miêu tả các thành phần phần mềm theo nhóm như thế nào?" 56
- Một thành phần phần mềm có thể sử dụng lại có thể được mô tả theo mô hình 3C như sau: Concept (khái niệm), Content (nội dung), và Context (ngữ cảnh). Concept: miêu tả về cái gì mà thành phần phần mềm làm, gắn với mục đích của thành phần. Giao diện đối với thành phần được miêu tả một cách đầy đủ và ngữ nghĩa được chỉ ra ở tiền và hậu điều kiện. Content: miêu tả khái niệm được thực hành như thế nào. Về bản chất thì nội dung của thành phần được dấu đối với người sử dụng và chỉ được biết đối với những ai có ý định kiểm tra hay sửa đổi thành phần. Context: đặt cho thành phần phần mềm có thể sử dụng lại trong lĩnh vực ứng dụng nào. Bằng cách chỉ ra những đặc trưng thuộc về khái niệm, thao tác và cài đặt, nó cho phép ta có thể tìm ra những thành phần thích hợp để đáp ứng cho nhu cầu của ứng dụng. III. HIỆU QUẢ CỦA CÔNG NGHỆ DỰA TRÊN THÀNH PHẦN Để đánh giá, trước hết, ta phải hiểu cái gì thực sự được sử dụng lại trong phạm vi của công nghệ phần mềm, và hao phí thật sự liên quan đến sử dụng lại. 1. Độ đo sự sử dụng lại: Để đo lợi ích liên quan đến sử dụng lại trong hệ thống S, ta có đẳng thức sau: Rb(S)=[Cnoreuse-Creuse]/ Cnoreuse Với: Cnoreus: là chi phí để phát triển hệ thống S không dùng tính sử dụng lại, 57
- Creuse: là chi phí để phát triển hệ thống S dùng tính sử dụng lại. Ta có: Rb(S) không nguyên và 1 Rb(S) 0 2. Tác động về chất lượng: Thành phần phần mềm được sử dụng lại có độ chính xác cao và có thể nói là không chứa lỗi. Mặc dầu không thường xuyên được chứng minh về mặt hình thức nhưng với việc sử dụng lại, lỗi được tìm thấy và loại trừ; chất lượng của thành phần được cải thiện như là một kết quả. 3. Tác động về hiệu suất: Khi những thành phần sử dụng lại được ứng dụng thông qua tiến trình phần mềm, chúng ta ít tốn thời gian để tạo ra kế hoạch, mô hình, tài liệu, mã và dữ liệu mà chúng là cần thiết để tạo ra hệ thống. Thêm vào, chức năng cùng mức được phân phối cho người sử dụng với đầu vào ít công sức hơn, do vậy, hiệu suất được cải thiện. 4. Tác động về giá thành: Tiết kiệm giá thành đối với việc sử dụng lại được ước lượng bằng cách ước lượng giá thành của dự án. Dựa trên nghiên cứu khả năng sử dụng lại, hiệp hội QSM, Inc., báo cáo dây chuyền thành phần dẫn đến việc giảm 70% về quá trình phát triển, giảm 84% về giá dự án. IV. KẾT LUẬN Phần mềm tốt là kết quả phải đạt được của ngành công nghiệp phần mềm. Sự phát triển phần mềm dựa trên thành phần chỉ ra nó là một phương pháp hiệu quả. Bằng việc chỉ ra những điểm chính của phương pháp cùng với bài toán dẫn 58
- chứng, bài viết khẳng định tính ưu việt của phương pháp dần đang có vị trí hàng đầu trong ngành công nghiệp phần mềm trên thế giới. TÀI LIỆU THAM KHẢO 1. Đoàn Văn Ban. Phân tích thiết kế và lập trình hướng đối tượng, Trung tâm Khoa học Tự nhiên và Công nghệ Quốc gia (1996). 2. Ngô Trung Việt. Kỹ nghệ Phần mềm - bản dịch, Nhà xuất bản Giáo dục (1999). 3. Roger S. Pressman Ph.D, Software Engineering a practitioner's, McGraw - Hill book Co.-Singapore (2001). 4. Yourdon, E. Software reuse, Application development strategies, Vol. 6, No. 12, (1994) 1 - 16. 5. Brown, A.W., and K., C. Wallnau, Engineering of component are system, IEEE computer society press (1996). 6. Stephen R. Schach, Classical and object-oriented software engineering, McGraw- Hill (1997). 7. Sommerville I., Software Engineering, Addison Wesley (1995). 8. Pitero - Diaz R. Domain analysis for reuseability, Proc. COMPSAC'87, Tokyo, (1987) 23 - 29. 9. Mary Kirtland. Designing component - Based applications, A division Microsoft corporation, Washington (1998). 59
- APPLIED COMPONENT-BASED DEVELOPMENT IN THE DEVELOPEMENT SOFTWARE PROCESS Le Van Tuong Lan College of Sciences, Hue University SUMMARY The real world is always changeable. So,in order to adapt to it, the systems that describe it must be developed. In Software Engineering, the object-based software engineering has been considered as a useful means to solve the changes of software. However, in the big, complex, high quality systems must be completed in a short time but the oriented programming has some limits such as verifying quality, the cost of the system, etc. In this paper, we describe the role of the important method in the Software Engineering that is called the component - based software engineering or the component - based development. It is the developed step of the object - based software engineering. This method indicates that the development software is an integrated process of the prepackaged software components. 60
- 61
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Báo cáo nghiên cứu khoa học: "NGHIÊN CỨU CHẤT LƯỢNG NƯỚC VÀ TÔM TỰ NHIÊN TRONG CÁC MÔ HÌNH TÔM RỪNG Ở CÀ MAU"
12 p | 1366 | 120
-
Báo cáo nghiên cứu khoa học: "Cái tôi trữ tình trong thơ Nguyễn Quang Thiều."
10 p | 614 | 45
-
Báo cáo nghiên cứu khoa học: "NGHIÊN CỨU PHỐI TRỘN CHI TOSAN – GELATI N LÀM MÀNG BAO THỰC PHẨM BAO GÓI BẢO QUẢN PHI LÊ CÁ NGỪ ĐẠI DƯƠNG"
7 p | 518 | 45
-
Báo cáo nghiên cứu khoa học: "Giọng điệu thơ trào phúng Tú Mỡ trong “Dòng nước ngược”"
8 p | 322 | 44
-
Báo cáo nghiên cứu khoa học: "NGHIÊN CỨU THỰC NGHIỆM ẢNH HƯỞNG CỦA MƯA AXÍT LÊN TÔM SÚ (PENAEUS MONODON)"
5 p | 455 | 44
-
Báo cáo nghiên cứu khoa học: "NGHIÊN CỨU ĐẶC ĐIỂM SINH HỌC DINH DƯỠNG VÀ SINH SẢN CỦA LƯƠN ĐỒNG (Monopterus albus)"
12 p | 305 | 43
-
Báo cáo nghiên cứu khoa học: "TÌNH HÌNH SỬ DỤNG THỨC ĂN TRONG NUÔI CÁ TRA VÀ BASA KHU VỰC ĐỒNG BẰNG SÔNG CỬU LONG"
8 p | 226 | 38
-
Báo cáo nghiên cứu khoa học: "ỨNG DỤNG PHƯƠNG PHÁP PCR-GENOTYPI NG (ORF94) TRONG NGHIÊN CỨU VI RÚT GÂY BỆNH ĐỐM TRẮNG TRÊN TÔM SÚ (Penaeus monodon)"
7 p | 379 | 35
-
Báo cáo nghiên cứu khoa học: "NGHIÊN CỨU CẢI TIẾN HỆ THỐNG NUÔI KẾT HỢP LUÂN TRÙNG (Brachionus plicatilis) VỚI BỂ NƯỚC XANH"
11 p | 386 | 29
-
Báo cáo nghiên cứu khoa học: "Vai trò của toán tử tình thái trong tác phẩm của Nguyễn Công Hoan (Qua phân tích truyện ngắn Mất cái ví)"
8 p | 268 | 24
-
Báo cáo nghiên cứu khoa học: "Quan hệ giữa cấu trúc và ngữ nghĩa câu văn trong tập truyện ngắn “Đêm tái sinh” của tác giả Trần Thuỳ Mai"
10 p | 436 | 24
-
Báo cáo nghiên cứu khoa học: " NGHIÊN CỨU TẠO KHÁNG THỂ ĐƠN DÒNG VI-RÚT GÂY BỆNH HOẠI TỬ CƠ QUAN TẠO MÁU VÀ DƯỚI VỎ (IHHNV) Ở TÔM PENAEID"
6 p | 354 | 23
-
Báo cáo nghiên cứu khoa học: "NGHIÊN CỨU DÙNG ARTEMIA ĐỂ HẠN CHẾ SỰ PHÁT TRIỂN CỦA TIÊM MAO TRÙNG (Ciliophora) TRONG HỆ THỐNG NUÔI LUÂN TRÙNG"
10 p | 367 | 18
-
Báo cáo nghiên cứu khoa học: " NGHIÊN CỨU THIẾT LẬP HỆ THỐNG NUÔI KẾT HỢP LUÂN TRÙNG (Brachionus plicatilis) VỚI BỂ NƯỚC XANH"
10 p | 373 | 16
-
Báo cáo nghiên cứu khoa học: " NGHIÊN CỨU PHÂN VÙNG THỦY VỰC DỰA VÀO QUẦN THỂ ĐỘNG VẬT ĐÁY"
6 p | 349 | 16
-
Báo cáo nghiên cứu khoa học: " NGHIÊN CỨU THAY THẾ THỨC ĂN SELCO BẰNG MEN BÁNH MÌ TRONG NUÔI LUÂN TRÙNG (Brachionus plicatilis) THÂM CANH"
10 p | 347 | 15
-
Báo cáo nghiên cứu khoa học: " CẬP NHẬT VỀ HỆ THỐNG ĐỊNH DANH TÔM BIỂN VÀ NGUỒN LỢI TÔM HỌ PENAEIDAE Ở VÙNG VEN BIỂN ĐỒNG BẰNG SÔNG CỬU LONG"
10 p | 194 | 14
-
Báo cáo nghiên cứu khoa học công nghệ: Kết quả nghiên cứu lúa lai viện cây lương thực và cây thực phẩm giai đoạn 2006 - 2010
7 p | 188 | 13
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn