1. Trang chủ >
  2. Luận Văn - Báo Cáo >
  3. Công nghệ thông tin >

I. SO SÁNH GIỮA UML VÀ SDL

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 (28.72 MB, 82 trang )


-45-



- U M L có bicu đồ tuần tự; SDL có MSC (Message Sequence Chari )



Khác nhau:



-



T rong SDL, khái niệm hệ thống là trung tâm. Một hệ thống có định



nghĩa giao diện tốt và bao gồm các tác nhân hoạt động tương tranh và

truyền thông bởi các thông điệp không dồng bộ. M ột hệ thống mô

hình một phán sự thực hiện cúa thế giới thực nhưng có thể định nghĩa

hởi cách tham khao đến m ột hệ thống. Trong U M L kh ô n g có khái



niệm hệ thông. Chỉ có các lớp và các liên kết giữa chúng. Cấu trúc

đối tượng có thể được mô tả nhưng chỉ với mục tiêu là rõ. U M L có 5

view thể hiện các khía cạnh khác nhau của hệ thống, tạo nên một bức

tranh toàn cảnh của hệ thống cần xây dựng, do vậy không có khái

niệm hệ thống tồn tại trong ƯML. Có thể coi SDL chỉ có 1 view, khi

xây dựng hệ thống với SDL nó nhìn toàn bộ hệ thống một cách bao

quát trên một khía cạnh nào đó.

-



U M L có tính m ở với nghĩa: U M L có thể m ở rộng cho m ọi công ty có

thể xúy dựng các bộ công cụ riêng cho m ình dựa trên các khái niệm



của U M L. Tuỳ thuộc vào yêu cầu của mình họ có the xây dựng một

ngôn ngữ tuân theo các khái niệm của UM L. Với SDL thì tính m ở



yếu hơn, nó không được dùng phổ biến để xây dựng cho mọi hệ thống

phần mềm, mà phần lớn nó chỉ được áp dụng trong các hệ thống phân

tán, các hệ thống truyền thông, hệ thống thời gian thực.

-



Trong SDL, một tác nhân có thể được làm từ một cấu trúc phức tạp

của các tác nhân khác và từ đó có thể định nghĩa một dạng tác nhân

ghép. Trong trường hợp này, một kiểu ghép có thể được định nghĩa và

sử dụng như một phần lử với giao diện định nghĩa tốt. U M L thiếu một

khái niệm lương ứng với các kiểu ghép. Sự ghép này là một liên kết

đặc biệt giữa các lớp trong UM L.



-



Trong SDL, sự Iương tranh và truvcn thông không đồng bộ giữa các

tác nhân là mộl quy tắc. Các máy trạng thái định nghĩa dãy các hành

vi của các tác nhân. Trong U M L, tương tranh và truyền thông không

đống bộ là một sự lựa chọn.



-



U M L có các use - case dùng để nắm bắt các yêu cầu, các biểu đồ

cộng tác mà SDL không có các thành phần này.



-



SDL có các kiểu đặc tả, các sự chuyển dịch có thực hiện trong dạng

chi tiết đầy đủ, trong U M L không trợ giúp cho các quá trình này.



Hình sau chỉ ra phần chung, các biêu đồ và các khái niệm có thể dùng

được trong U M L và SDL. Chúng chia sẻ sự đặc tả cho cấu trúc tĩnh, hành vi

và các kịch bản (scenario).



So sách các đặc trưng giữa U M L và SDL.



1.2. Phát triển phần mềm dựa trên UML và SDL.

Việc sử dụng Ư M L có nghĩa là chúng ta xây dựng các đặc tả trong Ư M L

và thực hiện trong các ngôn ngữ lập trình hướng đối tượng như



c++,Java,.....



Như vậy Ư M L có các khái niệm cho phép xây dựng các bộ công cụ để có thể



tự động dịch các mô hình đặc tả ra mã chương trình. Tuy nhiên đôi với các hệ

thống thời gian thực việc sử dựng U M L còn gặp nhiều vấn để không thuận lợi.

Cụ thế là đối với các hệ thống lớn, phức tạp trong truyén thông. SDL lại có ưu

Ihố trong vấn đc này.

Để phát tricn các tiến trình phần mềm thông Ihường chúng ta bắt đầu lừ

những use case đơn gián, vì như vậy chúng ta dễ dàng nấm bắt được hệ thống

cúa chúng ta thông qua các use case; sau đó chuyển các use case này vào các

bicu đồ SDL. Như vậy để thực hiện các liến trình phần mềm chúng ta sẽ bất

đầu với U M L và sau đó chuyển đốn SDL cho các giai đoạn sau của tiến trình

phần mềm. U M L trợ giúp rất mạnh cho các giai đoạn sớm của quá trình phát

iriển phần mềm còn SDL có nhiều thuận lợi trong giai đoạn thiết kế và giai

đoạn thực hiện sau đó [2].



Ph—

Phân tích hệ thống



.... ..



......







SDL

Thiết kế hệ thống

Thiết kế chi tiết



:;

r



■珥

r= 》



'



: ': r : :



_



Sự tương quan giữa U M L và SDL trong các giai đoạn phát triển phần mềm

Trong giai đoạn thiết kế, U M L được sử dụng rất tốt, trong giai đoạn này

chúng ta sử dụng các use case và các biểu đồ tuần tự để mô tả yêu cầu và các

hoại độnơ của hệ thống. Hơn nữa các biểu đồ lớp không hình thức có thế được

dùng cho việc mô tả đồ hoạ cho các vấn đề đặc biệt. Sau khi hoàn thành các

bước này Ihì chúng ta đã thực hiện xong việc đặc tả yêu cầu (R-Spec). Các



hicu đồ triển khai cung cấp một cái nhìn khái quát toàn bộ hệ thống trong

giai đoạn thiết kế. Sau đó các biểu đồ trạng thái và các biểu đồ tuần tự có thể

dịch trực tiếp ra mã chương trình thông qua SDL. Điều này có nghĩa rằng, kết

quả thu được trong giai đoạn thiết kế không chỉ có giá trị cung cấp tài liệu cho

đặc tả chức năng và đặc tả dữ liệu cũng như với đặc tả yêu cầu mà kết quả này

còn được sử dụng để trực tiếp dịch ra mã chương trình.

Do SDL và U M L có các khái niệm tương tự nhau và dựa vào những so

sánh trên chúng la thấy rằng việc kếl hợp giữa U M L và SDL SC cho chúng ta

một ngôn ngữ đặc tả rất tốt cho quá trình phát triển phần mềm. Trong hai phấn

sau lỏi đưa ra cách chuyển đổi các mô hình từ U M L sang SDL và ngược lại.

II. CHUYỂN ĐỔI TỪUML SANÍỈ SDL

Các ánh xạ để làm cho các thông tin trong mô hình U M L liên hộ với các

thòng tin trong hệ thống SDL hầu hết là có tính chất hướng cú pháp. V í dụ

một lớp trong U M L ánh xạ vào tiến trình trong SDL, nhưng một số ánh xạ là

có ncữ nghĩa lớn hơn, ví dụ sự truyền thông giữa các lớp ánh xạ trên sự truyén

thôníỉ giữa các tiến trình. Sự dịch chuyển hoàn toàn các mô hình và các thay

đổi trong mô hình cơ sở dựa trên các ánh xạ này. Chúng tôi sẽ làm rõ sự dịch

chuyển của một mô hình U M L đầy đủ trong một ví dụ cụ thể.



2.1. Ánh xạ các biểu đổ lớp từ UML sang SDL

/ . Các lớp



Để tạo ra một cấu trúc lớp tương tự trong SDL giống như ƯM L, chúng ta

cần tạo ra một số nguyên mẫu (stereotype). Các nguyên mẫu này là mờ rộng

của Ư M L và được tạo ra để cho sự dịch chuyển trở nên trực giác và đơn gián

hơn. Có các nguyên mầu sau: block, process và newtypc

-



Mội lớp trong U M L mà không có chứa nguyên mẫu được chuyển

sang thành một tiến trình trong SDL, hoặc một lớp chứa (là kết hợp

của nhiều lớp) được dịch sang các block.



Sau đáv là các lớp nguyên mảu block, process và newtypc

« b lo c k »



« p ro c e s s »



« n e v v tv p e »



A



B



c



V a rl: Boolean

S igl(P arl::real)



S igl(P arl ::real)



Sig2()



O p l(): boolean



V a rl: boolean

Var2: Pid

O p l(P a rl: int): boolean



Một lớp có thể có các thuộc tính và các thao tác. M ột thuộc tính có tên

và kieu, kiểu có thể là bỏ qua. M ộ t Ihao tác có tôn, nó có thể chứa các tham số



và các giá trị trá lại. Một thao tác với giá trị trả lại được chuyến đến một thủ

tục lừ xa, ngược lại nó chuyển sang một tín hiệu.

Các luật chung cho các tính chất của lớp:

-



Một lớp với tính chất = true ánh xạ đến một dạng biểu đồ trong SDL



-



Một lớp với tính chất = false ánh xạ đến một biểu đồ không kiêu trong

SDL



-



Một lớp mà ánh xạ đến m ột block với tính chất MgmProcess = true



ánh xạ đến một tiến trình với cùng tên với block thu được.

-



Một lớ p mà ánh xạ đến một process và với tính chất MgmProcess =

false ánh xạ đến một tiến trình với cùng tên với block thu được.



Block: Một lớp B lock dịch



chuyển



vào m ột dạng blo ck trong SDL. L ớ p



block có thể có thuộc tính và thao tác. Nếu một lớp block chứa các thuộc tính,

thì một tiến trình cùng tên block sẽ được tạo ra trong block. Tiến trình này

được gói gọn trong định nghĩa biến và có cùng định nghĩa giao diện như

block. Tiên trình được tạo ra gọi là tiến trình quản lý nó có cùng tên với block



chứa nó.



Xem Thêm
Tải bản đầy đủ (.pdf) (82 trang)

×