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

II. TỔNG QUÁT 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 )


/. Câu trúc (Structure): Bao gồm 4 mức chính: System, Block, Proccss,

Procedure



Hệ thống SDL được phân chia thành các mức: hệ thống, khối và các tiến

trình được gọi là sự phân chia hệ thống (partitioning). Các đối tượng của sự

phân chia bao gồm:

-



Các thông tin ẩn (chuyển các chi tiết không quan trọng trong một khái

quát chung đến mức thấp hơn).



-



Chi a nhỏ theo các chức năng tự nhiên.



-



Tạo lập các module có thể quản lý kích cỡ về mặt trí tuệ.



-



Tạo lập một sự tương ứng với các hoạt động phần mềm hoặc phần

cứng



-



Sử dụng lại các đặc lả đã tồn tại.



M ỗi ùến trình trong SDL được định nghĩa như mộl máy trạng thái lồng

nhau có thứ bậc. M ỗi máy trạng thái con là thực hiện trong một thủ tục. Các

thủ tục có thể độ quy; chúng là cục bộ đối với tiến trình hoặc chúng có thể là

có giá trị toàn cục phụ thuộc vào phạm vi của chúng. SDL trợ giúp cho kiêu

các thủ tục ở xa có nghĩa là cho phép tạo lờ i gọi thủ tục, mà thủ tục đó ở trong

một tiến trình khác.

Các tiến trình irong SDL có một không gian bộ nhớ riêng. Tập hợp các

tiến trình có thê được nhóm 丨 một khối (block). Các khối có thể lỗng nhau

rong

dè tính đệ quy giúp cho hệ thống nhỏ hơn và duy trì những hệ thống con tóm



lược. Các cơ chế break-down là rất quan trọng đối với các nhóm phát triển hệ

thống, và SDL cung cấp một giao diện rõ ràng giữa các hệ thống con.

0



Cấu trúc tĩnh và cáu trúc độnịị



Cấu trúc tĩnh của hệ thống được định nghĩa trong giới hạn của các block

và các channel. Một block là được nhận biết giống như một module với mô

hình hộp den.



Cấu trúc động được định nghĩa với sự trợ giúp của các tiến trình và các

khái niệm đường đi của tín hiệu (signal route). M ột tiến trình là một thiết bị

độc lập mà tác động trở lại để kích thích các kiểu tín hiệu.



2. S ự truyền thông (C om m unication)

SDL không sử dụng bất kỳ một dữ liệu toàn cục nào, nó có hai cơ chế

truyền thông cơ bản: Các tín hiệu không đồng bộ (các tham số tín hiệu lựa

chọn) và Thủ tục gọi từ xa đồng bộ. Cá hai cơ chế có thể kèm theo các tham

số đc có the trao đổi và thông tin đồng bộ giữa các tiến trình của SDL với một

hệ Ihống của SDL và môi trường của nó.

SDL định nghĩa một giao diện rõ ràng giữa các block và các proccss bởi

kỹ thuật qua các channel và signal route. K ỹ thuật truyền thông này với giao

diện tín hiệu hình thức rõ ràng làm đơn giản cho các nhóm phát triển hệ thống

lứn và đảm báo tính vững chắc giữa các phần khác nhau của một hệ thống.

SDL dịnh nghĩa time và tim er một cách trừu tượng và thông minh. Thời

gian không chỉ là một mặt rất quan trọng trong tất cả các hệ thống thời gian

thực mà nó còn quan trọng trong hầu hết các hộ thống phân tán. M ột tiến trình

SDL có the đặt thời gian kết thúc để thực hiện thời gian time-out cũng như đặt

thời gian đế diều khiển các tiến trình và các hệ thống.



3. H ành vi (Behavior).

Hành vi dộng trong một hệ thống SDL là dược mô ta trong các tiến trình.

Hệ thống hoặc block chí là một mô tả tĩnh của cấu trúc hệ thống. Các tiến

trình trong SDL có thê được tạo khi hệ thống bắt đẩu tạo lập hoặc kết thúc tại

thời gian chạy (run time). M ột tiến trình có thế tồn tại một hoặc nhiều minh

hoạ. M ỗi minh hoạ có một nhận dạng duy nhất (Pld). Điểu này tạo ra khả

năng có thể gửi tín hiệu đến các minh hoạ riêng của một tiến trình. Khái niệm

tiến trình và minh hoạ tiến trình làm việc tự động và tưưriỊỊ tranh tao ra môt









«



ngôn ngữ SDL thời gian thực.



4 . 1)ữ liệu (data)

SDL chấp nhận hai cách mô tả dữ liệu: Kiểu dữ liệu trừu tượng (A D T ) và

A S N .l. Sự kết hợp của ASN .l có khả nãng chia sẻ dữ liệu giữa các ngôn ngữ,

như là việc sử dụng lại những cấu trúc dữ liệu đã tồn tại.

Khái niệm A D T sử dụng trong SDL rất phù hợp với ngôn ngữ đặc tả. Một

kiểu dữ liệu trừu tượng là một kiểu dữ liệu không chỉ rõ cấu trúc dữ liệu. Thay

vì như vậy nó chí rõ một tập hợp các giá trị, một tập hợp các thao tác cho phcp

và một tập hợp các phương thức mà thao tác phải thực hiện. Cách tiếp cận này

lạo cho nó m ội ánh xạ đơn giản từ kiểu dữ liệu SDL đến các kiểu dữ liệu sử

dụng trong các ngôn ngữ lập trình bậc cao. Sau đây là một ví dụ về kiểu dữ

liệu trừu tượng:

Tập hợp các giá trị



Tập hợp các thao

tác cho phép



NEWTYPE Boolean

____ p, LITERALS True, Fasle

OPERATORS

"NOT" :Boolean->Boolean;

"=":Boolean, Boolean->BooIean;



AXIOMS

"NOT"(True)==Fasle;

■>

"NOT"(Fasle)==True;



Tập hợp các phương

trình mà các tác phải

tham gia







"="(True,True)==True;

"="(True, Fasle)==Fasle;

"="(Fasle,True)==Fasle;

"="(Fasle.Fasle)==True;



ENDNEWTYPE Boolean;



Tập hợp các kiếu xác định trước trong SDL tạo cho nó có khả năng làm

việc với dữ liệu trong SDL theo cách truyền thống. Các hiến số của các kiểu

chuẩn có the khai háo như sau: integer, real, natural, boolean, character,

duration, time, charstring, PId, các kiểu dữ liệu phức tạp (như array hoặc các

k iể u dữ liệu có cấu trúc).



5.S ự kê thừa (Inheritance)

Các khái niệm hướng đối tượng trong SDL cho người sử dụng bộ công

cụ hữu ích cho việc xây dựng và sử dụng lại. Khái niệm này cơ sở dựa trên các

kiểu khai báo. Các kiểu khai báo có thể ở bất kỳ vị trí nào có thể bên trong hệ

t hống hoặc tại các mức hệ thống. M ột trong những lợi ích chính của việc sử

dụng ngôn ngữ hướng đối tượng là đơn giản và trực giác, các đối tượng mới có

thê được tạo ra bằng cách thêm vào các đối tượng đã tồn tại những tính chất

mới hoặc định nghĩa lại các tính chất của các đối tượng đã có.



2.2. Mô hình chung của SDL (General Model of SDL)

SDL cơ bản dựa trên mô hình các máy hữu hạn trạng thái (finite State

machines). M ột hộ thống là được mô tả như là một số sự mở rộng của các máy

irạng th á i truyền thông hữu hạn bởi cách trao đổi thông điệp với nhau và với

m ôi trường của hệ thống. Máy trạng thái làm việc song song và một vài sự

kiện của máy trạng thái có thể tồn tại sự tương tranh. Trong SDL sự m ở rộng

máy hữu hạn trạng thái là được mô hình bới khái niệm tiến trinh (process).

Một sự kiện của Process được gọi là m in h hoạ tiế n trin h (process instance).

Sự thế hiện của một hệ thống như vậy bao gồm sự thể hiện của các minh họa

tiến trình. M ộl biến số là cục bộ đối vó'i một minh hoạ liến trình của riêng nó.

Và chúng truy cập đến cơ sở dữ liệu chung bằng cách gửi và nhận các thông

điệp (message).

Một thông điệp là được mô hình bởi một tín hiệu (signal). M ột tín hiệu

có thể mang trong nó một danh sách các siá trị. Trong trường hợp này tín hiệu

phải được định nghĩa với một danh sách các dạng dữ liệu cho các giá trị mang



theo tín hiệu. Giới hạn của SDL cho một lập các giá trị gọi là sort. M ột tín

hiệu gửi từ một minh hoạ tiến trình đến một minh hoạ tiến trình khác hoặc

giữa môi trường và minh hoạ tiến trình trong hệ thống. Khi gửi một tín hiệu có

thể xác định trực tiếp minh hoạ tiến trinh cho tín hiện mà có ý định hoặc cho

phép nó đến hệ thống để nhận dạng việc nhận minh hoạ tiến trình.

Địa chỉ thông tin được biểu diễn sử dụng loại PIcỉ (Process Identify). M ột

giá trị Pld nhận dạng một minh hoạ tiến trình. Tất cả các giá trị Pld là duy

nhất, lại mỗi thời điểm một minh hoạ tiến trình tạo ra một Pld mới, giá trị Pld

d u v nhất liên quan với một m inh hoạ tiến trình. M ỗ i m inh hoạ tiến trình chứa



đựng hốn biểu thức mệnh lệnh Pld xác định trước, nó có ích cho việc truyền

thông giữa các tiến trình (Seft, sender, parent, offspring)



Giá trị Pld bằng n u ll không được sử dụng cho một tiến trình tồn tại. Bằng

cách định nghĩa seft sẽ luôn luôn khác null. Đối với sender, null biểu thị là

không có tín hiệu được dùng bởi một tiến trình ở xa. Với Parent, null biểu thị

ràng minh hoạ liến trình là được lạo lập tại thời điểm khởi tạo hệ thống. Với

offspring, null biểu thị không có minh hoạ nào ở xa được tạo lập động bởi

minh hoạ này.

Sự truyền thông trong SDL là không đồng bộ, không đồng bộ ở đây là

yêu cầu giữa người gửi và người nhận. M ỗi minh hoạ tiến trình được gắn kết

với một giới hạn bộ đệm để lưu giữ tất cả các tín hiệu đã nhận mà không

dùng. Tương tự như trong bưu điện, mỗi một minh hoạ tiến trình có một hộp

thư riêng của nó, và nó giả sử rằng hộp thư này là luôn luôn đủ lớn để giữ các

thư cho đến khi minh hoạ tiến trình giải quyết nó. Hộp thư như vậy là một bộ

cìệm không bị ràng buộc, được gọi là cổng ra của một minh hoạ tiến trình.

Không có quyền ưu tiên đối với cổng ra. Tuy nhiên, nó có khả năng giữ lại các

tín hiệu đặc biệt trong cổng ra khi có yêu cẩu. Điều này có thể sử dụng để mô

hình quyền ưu tiên cho tín hiệu thu nhận được. Tương tự như bưu điện, một

minh hoạ tiến trình có thể ỉrong trạng thái rất bận (very busy), yêu cầu cổng



vào bíío vệ nó từ những tín hiệu không quan trọng. Những tín hiệu không

quan trọng được giữ trong cổng vào. Thêm vào những tính chất này của cổng

đầu vào, các tín hiệu có thể không xác định độ trễ trong thời gian truyền thông

giữa các thành phần chú yếu của hệ lh(5ng.

Có lẽ ở đằng sau truvcn thông không đổng bộ và kênh trễ ià đc mô hình

một hệ ihống phân tán và hệ thống kết đôi lỏng lẻo. M ột hệ thống với truyền

thỏna không đồng bộ có sự kết đôi lỏng lẻo giữa các tác nhân hơn một hệ

ihòìig U.uyềĩi thòng đổng bộ. Một người gửi trong hệ thống Iruyềĩi thông

khống đồng bộ không bao giờ đi đến chỗ bế tắc bời vì các tác nhân truyền

thông khác không sẩn sàng để truyền; nó luôn luôn có khả năng gửi một hức

thư, như là một sự đối lập để thiết lập một cuộc toạ đàm với người nhận lá thư.



2.3. Các luật thông thường (General Rules)

í . C á c b iể u đ ồ lồ n g n h a u (N e s tin g o f D ia g ra m s )



M ột mô tá của SDL bao gồm một số các cấu trúc lồng nhau hoặc phạm

vi lồng nhau. Hầu hết chúng được thê hiện như một biểu đồ. M ột biểu đồ là

bao quanh bởi khung hình chữ nhật mà có thể ẩn nếu biểu đồ bao phủ đầy đủ

một trang. M ột biểu đồ mà lặp lại trong biểu đồ khác sẽ được vẽ trong một

biểu đồ bao quanh. Để hợp lệ cho việc chia một mô tả đầy đủ vào một biểu đồ

riêng biệl thì thực tế xay ra íĩiột biểu đổ lồng trong một biểu đồ khác có thể

thay thế bời một biểu tượng liên quan đến biểu đồ ở bên trong. K ý hiệu



reference chứa đựng tên của biểu đồ bên trong và có một hình đặc trưng của

biểu đồ đươc miêu tả.



block reference

channel substructure

reference

procedure reference



Process reference



service reference



2 .C á c té n (N a m e s )



Một name hao gồm một hoặc nhiều từ riêng biệt cách nhau bởi dâu gạch

nối



và các ký tự điều khiển... M ột từ bao gồm các ký tự chữ và số và dấu

và phái chứa ít nhất một ký tự chữ và số. Như vậy (3.4) là mộl từ đúng.



Một từ không thể là một từ khoá. Trong hầu hết các vị trí, dấu gạch dưới có

thế thay cho không gian giữa các từ khác nhau.

°



Phạm vi của tên (Scope o f Names)



Tâl cả các biểu đồ và một số cấu trúc không sử dụng miêu tả đổ hoạ định

nghĩa mộl phạm vi. M ỗi một tên là có thể xác định trong phạm vi mà nó được

dịnh nghĩa và tất cả các phạm vi khác chứa nó. V í dụ, tên của một tín hiệu

dược định nghĩa tại mộl mức của hệ ihống là xác định mức của hộ thống và tất

cá các phạm vi của hệ thống.

3 .M Ộ Í v à i b iể u trư n g th ô n g th ư ờ n g (S om e G e n e ra l S ym b o ls)



0 Bié’ tndìỊị văn bán (Text Svmbol)

u

Khi định nghĩa một văn bán cần có những biểu đồ, một biểu trưng text

bao gồm những định nghĩa nguyên vãn được đặt irong một biểu irưng đồ hoạ.



-36-



0



Lời chú ỉlìích (Comment)



Một lời chú thích là một đoạn vãn bán giải thích không quan trọng chú

thích cho một văn hản, hơn nữa nó làm tăng thêm khá năng giải thích cho



người đọc. Có hai loại lời chú thích; sự phân biệt giữa chúng bắt nguồn từ

những mỏ tả đổ hoạ. M ột ký tự chú thích đặc biệt có thể gắn kết với bất kỳ

hicii trưng nào.

°



Vâtì bán m à rộtìiị (Text extension )



Nếu văn bản không phù hợp với các biểu trưng, nó có khả năng gắn kết

vởi một biếu trưng text mở rộng. Biểu trưng Text mở rộng được gắn với một

clưòìig liền nét và văn bản trong biểu trưng text mở rộng là một phần mở rộng

liế p thêm của văn hán trong biểu trưng mà nó gắn kết.

°



Văn bản khống hình thức (informai text)



inform al text là một đoạn của một đặc tả mà không có sự thể hiện hình

thức. Tuy nhiên, một phần của đặc tá không như một lời chú thích. Informal

text có thể hình thức hoá tại giai đoạn sau hoặc hình thức hoá những thứ

không hình thức để hiểu lộ một phần của hệ thống mà không yêu cầu phải chỉ

rõ tính hình thức.



2.4. Structure (cấu trúc)

I . C à u tr ú c c ủ a m ứ c hệ th ố n g (S tru c tu rin g th e system L e v e l).



Một hệ thống bao gồm một số các khối kết nối với nhau bởi các kênh.

Một khối góp phần xây dựng nên hệ thống, ở đây có một vấn đề mới được đưa

ra dó là hệ thống có thể lồng nhau. Các kênh kết nối các khối (block) với nhau

trong môi trường của hệ thống, một kênh có thể có một đường hoặc hai đường

kẽì nối. Kênh được đặc trung bởi các tín hiệu mà nó có thể mang theo; nó tạo

Ihành một danh sách các tín hiệu của một kênh. Một kênh có một danh sách

tín hiệu cho mỗi một sự điều khiển. Một hoặc hai mũi tên nằm ở giữa các



ken h sc biếu lộ hướng của kênh. Danh sách các tín hiệu nằm trong các dấu

ngoặc vuông. Sau đây là ví dụ về một hệ thống s:



text symbols: Sử dụng cho các định nghĩa văn bản trong biểu đồ.

Các định nghĩa tín hiệu được chỉ ra trong một biểu tượng text, cho đến

khi không có mô tá đồ hoạ nào cho định nghĩa tín hiệu. Một định nghĩa tín

hiệu có dạng: signal signal name [(sort identifier lis t ) ] ;

Khi một vài tín hiệu được chuyển qua kênh hoặc gửi tín hiệu đi, nó sẽ rất

phù hợp để định nghĩa nhanh một danh sách các tín hiệu. M ột sự định nghĩa

danh sách các tín hiệu gắn kết với một tên là như sau:



signallist signal list name = signal identifier list;

2. S ự phân chia (Partitioning)

M ột block có thể mô tả bởi một biểu đồ block cấu trúc con hoặc một biểu

đổ block, có thể có hai biểu đồ cho bởi những viễn cảnh khác nhau bên trong

một block. M ột block con sử dụng cho sự phân chia, nhưng ngược lại biểu đồ

block được định nghĩa hành vi của một block trong giới hạn của các tiến trình

hao hàm trong block. Nó có khá năng cho cả hai biểu đồ đối với cùng một

block. Điều này thuận lợi nếu như ai đó muốn thấy được trạng thái hành vi của

block ờ một vài mức chi tiếl. Trước khi đưa ra lời giải thích hệ thống cần biêu

lộ rõ ràng sự lựa chọn một block để giải thích.



-38-



。 Khấi cấu í rúc con ( Block Substructure )

Sự phân chia thành cấu trúc con của block ngụ ý phân chia một block

thành các block con. Một cấu trúc con cúa block nhìn như một hệ thống. Trên

Ihực tế, mộl hệ thống là một cấu trúc con loại trừ các tín hiệu và các loại định

nghĩa lại các mức của hệ thống mà có thể nhìn thấy bên ngoài hệ thống bởi vì

chúng được sử dụng trong truvền thông với môi trường của hệ thống. Những

tên được định nghĩa trong một phạm vi cấu trúc con là không thể nhìn thấy từ

bên ngoài mà phạm vi xem xét đến các luật cho phép nhìn thấy thông thường.

3. B iể u đ ồ k h ố i (B lo c k d ia g ra m )



Một block bao gồm các tiến trình kết nối bởi các đường đi của tín hiệu

(signal routes). M ột signal route là một đường truyền thông không có độ trễ;

nó tạo ra các signal route khác nhau từ một kênh. Quan niệm khác nhau giữa

một kênh và một signal route là mội kênh kết nối các thực thê trong một hệ

thống phân tán, trong



k h i



signal route kết nối các thực thể tại cùng một nút



trong hệ thống phân tán. Trơ lại với việc phán tích hộ thống biai điện, một

kênh giống như một văn phòng phân loại hoặc ở những phần phân loại chính

độ trẻ là luôn luôn xảy ra. Một signal roule là sự phán loại cục bộ của những

lá thư do một nhân viên thực hiện. Việc phát chuyển những lá thư cục bộ có

thể hoàn thành mà không cần có độ trễ của hệ thống thư công cộng. Cú pháp

khác nhau giữa signal route và kênh là việc cho phép các phần đầu (head) đặt

giữa kênh và ư điểm cuối của signal route.

Bộ đệm gắn liền trong các kênh đưa thêm vào một thành phần trạng thái

luón luôn không mong muốn, như trong SDL_92 cho phép các kênh không

trễ. Các kênh không trễ có cùng ngữ nghĩa như là signal route và khi đó nó có

cùng kí hiệu; cho phcp các head ớ vị trí cuối của kênh độ trỗ bằng không thay

vì ờ giữa.



4. Macros

Một macro là một phần của biểu đồ hoặc văn bán mà có thê sử dụng

nhiều lần trong một mô tả. Như vậy, chỉ những biểu đồ macro là được mô tả.

Mộ( hiểu đồ macro có thế sứ dụng trong bất kỳ biểu đồ nào. Việc sử dụng một

macro tại một vị trí vững chắc trong biểu đồ được biểu lộ hởi biểu tượng



macro call. Một m acro có Ihể được gọi với các iham số thực mà sau đó có thê

thay thế cho các tham số hình thức của macro trong khi gọi. Các tham số hình

thức của macro là được biểu thị bởi fpar. Khái niêm macro là rất tốt nhưng có

một vài luật ngữ nghĩa liên hệ với macro, không có khả năngkiểm tra các

tham số thực và tham số hình thức của macro.



2.5. Hành vi (Behaviour)

1.



T h ờ i g ia n sô n g c ủ a cá c tiế n tr in h (L ife tim e o f P ro ce ss)



Sau khi mô tá cấu trúc của một hệ thống (các block và các tiến trình tham

kháo) và các giáo diện liên kết (các kênh và các signal rout với danh sách các

tín hiệu), hành vi của một hệ thống có the được mô tả. Vấn đề này được hoàn

thành bởi việc mô tả các tiến trình.

Lưu ý đê không nhầm lẫn giữa định nghĩa một tiến trình và những minh

hoạ khác nhau của một tiến trình, thì sự định nghĩa là một mẫu quy định cho

hành vi của các minh hoạ tiến trình. Các minh hoạ là cácđối tượng trong diễn

xuất cúa hệ thống. M ột tiến trình có các đặc trưng sau:

lifetim e: M ột minh hoạ được tạo lập hoặc tại thời điểm khởi tạo hệ thống

hoặc tạo lập động bới minh hoạ tiến trình khác; nó ngừng để tồn tại khi nó dẫn

xuất đốn mộl biểu tượng stop.

parameters: Các giá irị thực [à được ấn định bới tiến trình minh hoạ cha

trong suốt quá trình tạo lập động của minh họa.

variables: những dạng đặc trưng này trong tổ hợp với các trạng thái điều

khiên tạo thành trạng thái của minh hoạ.



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

×