1. Trang chủ
  2. » Luận Văn - Báo Cáo

đề tài component-based software engineering

50 577 7

Đ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 50
Dung lượng 881 KB

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

Nội dung

* 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

Trang 1

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

Trang 2

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)

Trang 3

* 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

Trang 4

* 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

Trang 5

* 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

Trang 6

* 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

Trang 7

* 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

Trang 8

* 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

Trang 10

* 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

Trang 11

* 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

Trang 12

* Đị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

Trang 13

*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 đó

Trang 14

* Đặ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'

Trang 15

* Đặ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ể

Trang 16

* 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

Trang 17

* Thành phần giao diện

Provide s inte rfac e Require s inte rfac e

Component

Defines the services

from the component’s

Trang 18

* Thành phần dữ liệu

Provide s inte rfac e

Re quire s inte rfac e

Data collector

addSensor removeSensor star tSensor stopSensor testSensor

listAll repor t initialise sensorManagement

sensorData

Trang 19

* Linh kiện và các đối

Trang 20

* 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

Trang 21

* Các yếu tố của một mô

hình thành phần

Component model

Inter faces Usage

information Deploymentand use

Inter face

definition

Specificinter facesComposition

Namingconvention

Meta-dataaccess

Customisation

Packag ing

Documentation

Evolutionsuppor t

Trang 22

* 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ụ

Trang 23

Exception management

Horiz ontal services

Security

Transaction management Concurrency

Component

management

Persistence

Resource management

Trang 24

* 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…

Trang 25

* 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.

Trang 26

* Thay đổi đối với khả

năng tái sử dụng

*Hủy bỏ các phương pháp ứng dụng cụ thể

*Thay đổi tên để làm cho họ nói chung

*Thêm phương pháp để mở rộng phạm vi bảo hiểm

Trang 27

* Tái sử dụng các thành

phần

*Chi phí phát triển của các thành phần có thể tái sử dụng

có thể cao hơn so với chi phí tương đương cụ thể Chi phí

cần tăng cường thêm khả năng tái sử dụng này là một tổ

chức chứ không phải là chi phí dự án

*Các thành phần chung có thể ít không gian hiệu quả và có

thể có thời gian thực hiện dài hơn thời gian cụ thể

Trang 28

* Thành phần hệ thống

để lại

*Hiện tại hệ thống để lại mà thực hiện một hữu ích chức

năng kinh doang có thể dược đóng góp như là các thành

phần để tái sử dụng

*Điều này liên quan đến việc viết một thành phần bao bọc

mà thực hiện cung cấp và yêu cầu giao diện sau đó truy

cập vào hệ thông để lại

*Mặc dù tốn kém, nhưng việc này còn ít tốn kém hơn so

với việc viết lại các hệ thống để lại

Trang 29

* Quá trình CBSE

*Khi tái sử dụng các thành phần, nó là điều cần thiết để

làm cho cân bằng giữa các yêu cầu lý tưởng và các dịch

vụ thực tế được cung cấp bởi các thành phần có sẵn

*Điều này bao gồm:

* Phát triển các yêu cầu phác thảo.

* Tìm kiếm cho các thành phần sau đó sửa đổi yêu cầu theo chức năng

có sẵn.

* Tìm kiếm một lần nữa để tìm thấy nếu nó tốt hơn đáp ứng các yêu

cầu sửa đổi.

Trang 30

* Quá trình CBSE

Identify candidate components

Outline

system

requir ements

Modify requir ements accor ding to discovered

components

Identify candidate components

Architectur al

design

Compose components to create system

Trang 31

* Việc xác định thành

phần quá trình

Component selection

Component

search

Component validation

Trang 32

* Thành phần xác định

các vấn đề

*Tin tưởng Bạn cần phải có thể tin tưởng vào nhà cung cấp

của một thành phần Tốt nhất, một thành phần không đáng tin

cậy có thể không hoạt động như quảng cáo, lúc tồi tệ nhất, nó

có thể xâm phạm an ninh của bạn.

*Yêu cầu Các nhóm khác nhau của các thành phần này sẽ đáp

ứng các yêu cầu khác nhau.

*Xác nhận:

* Các đặc điểm kỹ thuật thành phần có thể không được chi tiết đủ để cho

phép kiểm tra toàn diện được phát triển.

* Các thành phần có thể có chức năng không mong muốn Làm thế nào

bạn có thể kiểm tra điều này sẽ không can thiệp với các ứng dụng của

bạn?

Trang 33

* Ariane phóng thất bại

*Năm 1996, 1 chuyến bay thử nghiệm của tên lửa Ariane 5

đã kết thúc trong thảm họa khi các phóng đi ngoài tầm

kiểm soát 37 giây sau khi cất cánh

*Vấn đề là do một thành phần được sử dụng lại từ một

phiên bản trước của phóng (hệ thống dẫn đường quán

tính) mà không thành công bởi vì giả định khi thành phần

được phát triển đã không giữ cho tên lửa Ariane 5

*Những chức năng mà không thành công trong hợp phần

này là không cần thiết trong Ariane 5

Trang 34

* Thành phần cấu tạo

*Quá trình lắp ráp các thành phần để tạo ra một hệ thống

*Thành phần liên quan đến việc tích hợp các thành phần

với nhau và với các cơ sở hạ tầng thành phần

*Thông thường bạn phải viết 'keo mã' để tích hợp các thành

phần

Trang 35

* Các loại thành phần

cấu tạo

*Thành phần tuần tự:bao gồm các thành phần được thực

hiện theo thứ tự.Điều này liên quan đến việc so sánh các

giao diện cung cấp của mỗi thành phần

*Cấu trúc thành phần mà một thành phần kêu gọi các dịch

vụ khác Cung cấp giao diện của một trong những thành

phần được bao gồm với giao diện đòi hỏi của người khác

*Thành phần phụ gia giao diện của hai thành phần được

đặt lại với nhau để tạo ra một thành phần mới

Trang 37

* Giao diện không tương

thích

*Tham số không tương thích: nơi các hoạt động có cùng

tên nhưng các loại khác nhau

*Hoạt động không tương thích: nơi tên của các hoạt động

trong các giao diện phức hợp khác nhau

*Hoạt động không đầy đủ: nơi cung cấp giao diện của một

trong những thành phần là một tập hợp con của giao diện

đòi hỏi của người khác

Trang 38

* Các thành phần không

tương thích

addressFinder

phoneDatabase (string command) string location(string pn)

string owner (string pn) string proper tyType (string pn)

mapper mapDB (string command) displayMap (string postCode, scale)

printMap (string postCode, scale)

Trang 39

* Thành phần bộ chuyển

đổi

*Giải quyết vấn đề không tương thích thành phần bằng

cách hòa giải các giao diện của các thành phần bao gồm

*Sự khác nhau của bộ chuyển đổi được yêu cầu tuỳ thuộc

vào loại của các thành phần

*Một công cụ tìm địa chỉ và một thành phần ánh xạ có thể

được bao gồm thông qua một bộ chuyển đổi dải các mã

bưu chính từ một địa chỉ và vượt qua với thành phần ánh

xạ

Trang 40

* Thành phần thông qua

một bộ chuyển đổi

*thành phần PostCodeStripper là các bộ chuyển đổi tạo

điều kiện cho các thành phần tuần tự của công cụ tìm

kiếm địa chỉ và các thành phần ánh xạ

Trang 41

* Bộ chuyển đổi cho nhà

sưu tập dữ liệu

Data collector

addSensor removeSensor star tSensor stopSensor testSensor

listAll repor t initialise

sensorManagement

sensorData

Adapter sensor

star t

getdata

stop

Trang 42

* Giao diện ngữ nghĩa

*Bạn phải dựa trên các tài liệu thành phần quyết định nếu

giao diện là cú pháp tương thích thực sự tương thích

*Hãy xem xét một giao diện cho một thành phần Thư viện

hình ảnh:

Trang 43

addItem retrieve catEntry

Trang 44

* Thư viện hình ảnh tài

liệu

*"Phương pháp này cho biết thêm một bức ảnh để các thư

viện và các cộng sự nhận dạng ảnh và mô tả danh mục với

"Những gì sẽ xảy ra nếu định danh bức ảnh đã được liên

kết với một bức ảnh trong thư viện?"

"Là mô tả bức ảnh gắn liền với các mục nhập danh mục

cũng như có nghĩa là các bức ảnh nếu tôi xóa các bức ảnh,

tôi cũng xóa các thông tin danh mục?"

Trang 45

* Hạn chế đối tượng

Ngôn ngữ

*Hạn chế đối tượng ngôn ngữ (OCL) đã được thiết kế để

xác định các ràng buộc có liên quan đến các mô hình

UML

*Nó được dựa trên khái niệm về đặc điểm kỹ thuật điều

kiện trước và sau tương tự như phương pháp tiếp cận

Trang 46

The postconditions specify what is true after execution

post: libSize () = libSize()@pre + 1

PhotoLibrary.retrieve(pid) = p

PhotoLibrary.catEntry(pid) = photodesc

context delete

pre: PhotoLibrary.retrieve(pid) < > null ;

post: PhotoLibrary.retrieve(pid) = null

PhotoLibrary.catEntry(pid) = PhotoLibrary.catEntry(pid)@pre

PhotoLibrary.libSize() = libSize()@pre - 1

Trang 47

* Thư viện ảnh điều kiện

*Theo quy định, OCL liên kết với các thành phần Thư viện

* Mỗi mục mới này làm tăng kích thước của thư viện bằng cách 1;

* Nếu bạn lấy bằng cách sử dụng cùng một định danh sau đó bạn lấy

lại các bức ảnh mà bạn đã thêm;

* Nếu bạn nhìn lên các cửa hàng bằng cách sử dụng định danh, sau đó

bạn trở lại mục danh mục mà bạn đã thực hiện.

Trang 48

* Thành phần thương

mại

*Khi sáng tác các thành phần, bạn có thể tìm thấy các xung

đột giữa các yêu cầu chức năng và không chức năng, và

các cuộc xung đột giữa nhu cầu để cung cấp nhanh chóng

và sự tiến hóa của hệ thống

*Bạn cần phải đưa ra những quyết định như:

* Những cấu tạo của các thành phần có hiệu quả để cung cấp các yêu

Trang 49

* Thu thập dữ liệu và tạo

Repor t generator

Data

Repor t

Repor t

Trang 50

K T THÚC Ế

Ngày đăng: 09/11/2014, 10:08

HÌNH ẢNH LIÊN QUAN

Hình này có thể xác định thành phần giao diện, thành phần - đề tài  component-based software engineering
Hình n ày có thể xác định thành phần giao diện, thành phần (Trang 14)
Hình thành phần - đề tài  component-based software engineering
Hình th ành phần (Trang 21)
Hình giao tiếp - đề tài  component-based software engineering
Hình giao tiếp (Trang 22)
Hình ảnh: - đề tài  component-based software engineering
nh ảnh: (Trang 42)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w