Tải bản đầy đủ (.pdf) (50 trang)

bài tập lớn về công nghệ phần mềm Component-based software engineering

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.71 MB, 50 trang )

HỌC VIỆN KỸ THUẬT MẬT

__________________________
LỚP :AT6A

BÀI TẬP LỚN MÔN CÔNG
NGHỆ PHẦN MỀM


GV hướng dẫn:
Lê Bà Cường
ĐỀTÀI:
Component-based
software engineering

SV thực hiên:
Hoàng Ngọc Sỹ
Nguyễn Văn Đồng
Lê Thế Công
Nguyễn Văn Phú
Kay Thoong (nt)
*Những điểm chính
*CBSE là một phương pháp tái sử dụng để xác định và thực
hiện các thành phần lỏng vào hệ thống.
*Thành phần là một đơn vị phần mềm có chức năng và phụ
thuộc hoàn toàn được xác định bởi giao diện của nó.
*Một mô hình thành phần định nghĩa một tập hợp các tiêu
chuẩn mà các nhà cung cấp thành phần và nhà soạn nhạc
nên làm theo
*Trong quá trình CBSE, quá trình các yêu cầu kỹ thuật và
thiết kế hệ thống xen kẽ nhau.


*Những điểm chính
*Thành phần cấu tạo là quá trình 'dây' lại với nhau để tạo ra
một hệ thống.
*Khi sáng tác các thành phần tái sử dụng, bạn thường phải
viết các bộ chuyển đổi để hòa giải các giao diện thành
phần khác nhau.
*Khi chọn sản phẩm, bạn phải xem xét chức năng cần thiết,
yêu cầu phi chức năng và sự tiến hóa của hệ thống.
*Mục tiêu
* Để giải thích rằng CBSE có liên quan tới các tiêu chuẩn
phát triển và sáng tạo vào các ứng dụng
* Để mô tả các thành phần và mô hình các thành phần
* Để hiển thị các hoạt động chủ yếu trong quá trình CBSE
* Để thảo luận về các phương pháp tiếp cận thành phần và
các vấn đề có thể phát sinh

*Các chủ đề bao quanh

*Linh kiện và các mô hình thành phần
*Quá trình CBSE
*Thành phần cấu tạo
*CBSE cần thiết
*Độc lập các thành phần giao diện
*Tiêu chuẩn thành phần để tạo điều kiện hội nhập thành
phần
*Thành phần liên kết khả năng hoạt động
*Một quá trình phát triển hướng tới tái sử dụng.

*Thành phần phát triển
*CBSE là phương pháp tiếp cận với các phần mềm phát triển dựa vào tái

sử dụng phần mềm
*Nó xuất hiện từ sự thất bại của phát triển hướng đối tượng để hỗ trợ tái
sử dụng hiệu quả. Các lớp học đối tượng duy nhất là chi tiết và cụ thể.
*Thành phần này là trừu tượng hơn đối tượng các lớp học và coi là nhà
cung cấp dịch vụ độc lập
*Các vấn đề của CBSE
*Thành phần đáng tin cậy: làm thế nào một thành phần không có mã
nguồn có sẵn có thể được tin cậy?
*Thành phần cấp giấy chứng nhận: những người sẽ xác nhận chất lượng
của các thành phần?
*Tài sản dự đoán: các thuộc tính nổi lên của các thành phần có thể được
dự kiến?
*Yêu cầu thương mại: phân tích giữa các tính năng của một thành phần
và một người khác?


*CBSE và nguyên tắc
thiết kế
*Ngoài lợi ích của việc tái sử dụng, CBSE được dựa trên
các nguyên tắc phần mềm thiết kế kỹ thuật:
*Các thành phần độc lập không can thiệp với nhau.
*Triển khai thành phần được ẩn.
*Giao tiếp và thông qua định nghĩa giao diện.
*Nền tảng thành phần được chia sẻ và giảm chi phí phát
triền.

*Thành phần
*Các thành phần cung cấp một dịch vụ mà không liên quan
đến các thành phần được thực hiện hoặc ngôn ngữ lập
trình:

*Thành phần là một thực thể thực thi độc lập có thể
được tạo thành từ một hoặc nhiều đối tượng thực thi.
*Giao diện thành phần được công bố và tất cả các tương
tác thông qua giao diện được xuất bản.

*Định nghĩa thành phần
*Councill and Heinmann:
*Một thành phần phần mềm là một yếu tố phần mềm
phù hợp với một mô hình thành phần và có thể được
triển khai độc lập và sáng tác mà không sửa đổi theo
một tiêu chuẩn thành phần.
*Szyperski:
*Một thành phần phần mềm là một đơn vị của các thành
phần hợp đồng quy định các giao diện và bố cảnh rõ
ràng. Một thành phần phần mềm có thể được triển khai
độc lập và là chủ đề cho sang tác bên thứ ba.
*Thành phần như là một
nhà cung cấp dịch vụ
*Thành phần này là một thực thể độc lập thực thi. Nó
không có được biên dịch trước khi nó được sử dụng với
các thành phần khác.
*Các dịch vụ được cung cấp bởi một thành phần được thực
hiện thông qua một giao diện và tất cả các tương tác thành
phần diễn ra thông qua giao diện đó.

*Đặc điểm thành phần
*Chuẩn hóa: Thành phần tiêu chuẩn hóa có nghĩa là một
thành phần mà được sử dụng trong một quá trình CBSE có
phù hợp với một số tiêu chuẩn hóa thành phần mô hình.
Mô hình này có thể xác định thành phần giao diện, thành

phần siêu dữ liệu, tài liệu, thành phần và triển khai.
*Độc lập: Một thành phần cần được độc lập - nó nên có thể
để soạn và triển khai nó mà không cần phải sử dụng cụ thể
khác các thành phần. Trong tình huống mà các thành phần
cần bên ngoài cung cấp dịch vụ, những cần được thiết lập
một cách rõ ràng ra một đặc điểm kỹ thuật giao diện 'yêu
cầu'.




*Đặc điểm thành phần
*Triển khai: Để có thể triển khai, một thành phần phải được
khép kín và phải có khả năng hoạt động như một thực thể
độc lập trên một số thành phần nền tảng mà thực hiện các
mô hình thành phần. Điều này thường có nghĩa là thành
phần là một thành phần nhị phân mà không có được biên
dịch trước khi nó được triển khai.
*Tài liệu: Các thành phần có được đầy đủ tài liệu để tiềm
năng người sử dụng của các thành phần có thể quyết định
có hay không họ đáp ứng nhu cầu của họ. Cú pháp và, lý
tưởng, ngữ nghĩa của tất cả các giao diện thành phần phải
được quy định cụ thể.

*Thành phần giao diện
*Cung cấp giao diện: Xác định các dịch vụ được cung cấp
bởi các thành phần khác
*Yêu cầu giao diện: xác định các dịch vụ mà quy định cụ
thể những gì dịch vụ phải được thực hiện có sẵn cho các
thành phần để thực hiện theo quy định

*Thành phần giao diện
Provides int erface
Requires interface
Component
Defines the services
from the component’s
environment that it
uses
Defines the services
that are provided
by the component
to other components
*Thành phần dữ liệu
Provides int erf aceRequires int erf ace
Data collector
addSensor
removeSensor
startSensor
stopSensor
testSensor
listAll
report
initialise
sensorManagement
sensorData
*Linh kiện và các đối
tượng
*Các thành phần là các đơn vị triển khai
*Các thành phần không xác định các loại.
*Triển khai thành phần được đục.

*Thành phần này là ngôn ngữ độc lập.
*Các thành phần được chuẩn hóa.

*Thành phần mô hình
*Một mô hình thành phần là một định nghĩa của tiêu chuẩn
cho các tài liệu, thực hiện và triển khai thành phần.
*Ví dụ và các mô hình thành phần.
*Mô hình EJB (Enterprise Java Beans).
*COM + mô hình (mô hình NET).
* Mô hình thành phần quy định cụ thể như thế nào giao
diện nên được xác định và các yếu tố đó nên được bao
gồm trong một định nghĩa giao diện.

*Các yếu tố của một mô
hình thành phần
Component model
Interfaces
Usage
information
Deployment
and use
Interface
definition
Specific
interfaces
Composition
Naming
convention
Meta-data
access

Customisation
Packaging
Documentation
Evolution
support
*Hỗ trợ trung gian
*Mô hình thành phần là cơ sở cho trung gian cung cấp hỗ
trợ để thực hiện các thành phần.
*Thành phần triển khai thực hiện mô hình cung cấp:
* Nền tảng dịch vụ cho phép các thành phần bằng văn bản theo mô
hình giao tiếp
* Ngang dịch vụ là dịch vụ ứng dụng độc lập được sử dụng bởi các
thành phần khác nhau.
*Để sử dụng các dịch vụ được cung cấp bởi một mô hình,
các thành phần được triển khai trong một thùng. Đây là
một tập hợp các giao diện được sử dụng để truy cập vào
việc triển khai dịch vụ.
*Thành phần mô hình
dịch vụ
Platform services
Addressing
Interface
definition
Component
communications
Exception
management
Horizontal services
Security
Transaction

management
Concurrency
Component
management
Persistence
Resource
management
*Thành phần phát triển để tái
sử dụng
*Các thành phần được phát triển cho một ứng dụng cụ thể
thường có được tổng quát để làm cho họ có thể tái sử
dụng.
*Một thành phần rất có thể được tái sử dụng nếu nó liên kết
với một trừu tượng miền ổn định (Đối tượng kinh doanh).
*Ví dụ, trong một miền bệnh viện ổn định trừu tượng có
liên quan với mục đích cơ bản - y tá, bệnh nhân, điều trị,
vv…


*Thành phần phát triển
để tái sử dụng
* Các thành phần để tái sử dụng có thể được cấu tạo đặc biệt
bởi các thành phần thông dụng hiện có
* Các thành phần có thể dùng lại được:
* Nên phản ánh trừu tượng miền ổn định.
* Nên ẩn đại diện nhà nước.
* Nên càng độc lập càng tốt.
* Nên công bố trường hợp đại diện thông qua giao diện thành phần.
* Có sự cân băng giữa khả năng tái sử dụng và khr năng sử
dụng.

* Các giao diện tổng quát hơn, có nhiều khả năng tái sử dụng nhưng sau đó
phức tạp hơn và it sử dụng.

×