Khóa luận Mô hình hóa các hệ thống dựa trên các thành phần

ĐẠI HC QUC GIA HÀ NI  
TRƯỜNG ĐẠI HC CÔNG NGHỆ  
Nguyn Văn Nghip  
MÔ HÌNH HÓA  
CÁC HTHNG DA TRÊN CÁC THÀNH PHN  
KHOÁ LUN TT NGHIP ĐẠI HC HCHÍNH QUY  
Ngành: Công nghthông tin  
HÀ NI - 2009  
ĐẠI HC QUC GIA HÀ NI  
TRƯỜNG ĐẠI HC CÔNG NGHỆ  
Nguyn Văn Nghip  
MÔ HÌNH HÓA  
CÁC HTHNG DA TRÊN CÁC THÀNH PHN  
KHOÁ LUN TT NGHIP ĐẠI HC HCHÍNH QUY  
Ngành: Công nghthông tin  
Cán bhướng dn: TS. Đặng Văn Hưng  
HÀ NI - 2009  
TÓM TT NI DUNG KHÓA LUN  
Mc đích ca khóa lun là nghiên cu và tìm hiu các khái nim liên quan đến  
thành phn phn mm, hthng da trên thành phn và hthng da trên thành phn  
thi gian thc. Đầu tiên tôi strình bày tng quan vvic xây dng hthng da trên  
thành phn và các li ích ca nó trong vic phân tích, thiết kế các hthng thông tin.  
Tôi strình bày vic mô hình hóa hình thc hthng da trên thành phn da trên nn  
tng ca UTP (Unifying Theory of Programming). Tôi strình bày vcác khái nim  
trong mô hình hthng da trên thành phn như: giao din, hp đồng, thành phn, kết  
hp thành phn. Các định nghĩa này sẽ đóng vai trò nn tng cho vic phát trin các  
khuôn mu cho thành phn. Mt hp đồng được định nghĩa sbao hàm đặc tca các  
phương thc, mt thành phn được định nghĩa là mt cài đặt ca mt hp đồng. Cài  
đặt này có thyêu cu các dch vtcác thành phn khác vi mt vài githiết vlp  
lch cho vic gii quyết xung đột các phương thc dùng chung và sdng các tài  
nguyên hin có trong xlí song song. Trong khóa lun tôi strình bày sâu hơn vmô  
hình thành phn thi gian thc da trên các khái nim, các định nghĩa đã được nêu ra  
trước đó. Vi phn này, tôi đưa ra mt mô hình giao din thành phn cho hthng da  
trên thành phn thi gian thc. Cùng vi đó, đặc tphương thc sẽ được mrng vi  
mt ràng buc vthi gian là mt quan hgia tài nguyên có sn và lượng thi gian  
tiêu tn để thc thi phương thc. Vi mô hình đó, nó htrsphân tách gia yêu cu  
chc năng, yêu cu phi chc năng và kim chng hp phn hình thc ca hthng  
da trên thành phn thi gian thc. Cui cùng tôi cho mt ví dminh ha cho mô hình  
được nghiên cu trong lun văn này.  
LI CM ƠN.  
Em xin chân thành cm ơn các thy giáo, cô giáo trong khoa đã giúp đỡ em trong  
thi gian hc tp ti khoa để em có nhng kiến thc nn tng cho vic nghiên cu  
khoa hc để áp dng vào vic nghiên cu nhng lý thuyết, kiến thc liên quan đến đề  
tài khóa lun tt nghip. Đặc bit, em xin gi li cm ơn sâu sc đến Tiến sĩ Đặng Văn  
Hưng, người đã luôn quan tâm, giúp đỡ, hướng dn em trong sut quá trình nghiên  
cu và trình bày khóa. Thy đã giúp em rt nhiu trong vic tiếp cn các vn đề mà em  
còn chưa hiu rõ, thy luôn nhit tình chdy cho em nhng kinh nghim quý báu khi  
tiếp cn các vn đề mi. Em cũng xin cm ơn ti gia đình. Gia đình là ngun lc động  
viên em khi làm khóa lun này.  
Sinh viên  
Nguyn Văn Nghip  
MC LC  
LI MỞ ĐẦU ................................................................................................................1  
1. TNG QUAN VHTHNG DA TRÊN CÁC THÀNH PHN ...................3  
1.1. Hthng da trên thành phn là gì?................................................................3  
1.1.1. Thành phn phn mm..........................................................................................3  
1.1.2. Hthng da trên thành phn..............................................................................4  
1.2. Hthng thi gian thc là gì? ...........................................................................6  
2. KIN TRÚC HTHNG DA TRÊN THÀNH PHN......................................7  
3. TÌM HIU MÔ HÌNH THÀNH PHN ..................................................................8  
3.1 Thiết kế dưới dng công thc logic....................................................................8  
3.2 Giao din và hp đồng ........................................................................................9  
3.3. Kết hp hp đồng.............................................................................................11  
4. MÔ HÌNH THÀNH PHN THI GIAN THC.................................................18  
4.1. Các thiết kế có nhãn ràng buc vthi gian sdng như dch v..............18  
4.2. Sdng các ngôn nghình thc có nhãn ràng buc vthi gian để đặc các  
giao thc tương tác thi gian thc và đặc ttiến trình. ......................................22  
4.3. Các hp đồng thi gian thc. ..........................................................................23  
4.4. Thành phn bị động .........................................................................................25  
4.5. Thành phn chủ động ......................................................................................28  
5. NG DNG MÔ HÌNH THÀNH PHN TRONG HTHNG NHÚNG.......30  
KT LUN ..................................................................................................................33  
BNG KÍ HIU, VIT TT  
=
Bng  
P Q  
P Q  
P Q  
P hoc Q  
¬ P  
Phủ định P  
Nếu P thì Q  
P Q  
x :T P  
x :T P  
Tn ti x trong tp T sao cho P  
Mi x trong T sao cho P  
Thuc  
Không thuc  
{}  
Tp rng  
{a}  
Tp đơn cha duy nht phn ta  
{x :T | P(x)}  
{ f (x):T | P(x)}  
Tp hp tt cx trong T sao cho P(x)  
Tp hp giá trca hàm f(x) sao cho P(x)  
S T  
S T  
S \ T  
S hp T  
S giao T  
S trT  
S T  
S T  
S cha trong T  
S cha T  
Dãy rng  
a
Dãy cha duy nht a  
ok  
Chương trình đã khi động  
Chương trình đạt đến trng thái n định  
P bao hàm Q mi nơi  
ok  
P
Q
[
]
P
Q  
Quan hok P  
ok  
Q
P Q  
P là mt bn làm mn ca Q có nghĩa là  
(t,Q) được làm mn t(s,P)  
P
Q
[
]
(s,P) (t,Q)  
P || Q  
Phân tách hp phn song song ca P Q  
Hp phn song song vi toán tM  
Gán giá tre cho biến x.  
M
x := e  
LI MỞ ĐẦU  
Tkhi máy tính được phát minh, chế to thành công, con người đã được hưởng  
nhng thành quca khoa hc máy tính. Các hthng thông tin được xây dng nhm  
giúp cho vic tính toán trnên nhanh chóng và hiu quhơn. Các chương trình phn  
mm được thiết kế và cài đặt vi mc đích htrtt hơn cho con người trong nhu cu  
công vic hàng ngày. Ban đầu, công vic thiết kế, lp trình các hthng chưa được hỗ  
trnhiu. Tvic lp trình bng ngôn ngmáy đến lp trình bng ngôn ngbc cao.  
Con người tiếp cn lp trình hướng cu trúc vi cách thhin phù hp vi kiến trúc  
máy tính thi đim đó. Và sau đó là tiến thêm mt bước na trong vic phát trin các  
hthng thông tin, đó là lp trình hướng đối tượng. Bng vic sdng các lp, các đối  
tượng trong lp trình, các hthng được xây dng lên đã trnên linh hot hơn, đáp  
ng được như cu sdng. Trước nhng phát trin không ngng ca công nghphn  
mm, mt mô hình hthng mi đã được nghiên cu, phát trin. Đó là mô hình hệ  
thng da trên thành phn. Ngày nay, kĩ tht sdng hướng đối tượng và da trên  
thành phn ngày càng trnên phbiến và sdng rng rãi trong vic mô hình hóa và  
thiết kế các hthng phn mm phc tp. Chúng cung cp shtrcó hiu quti sự  
phân hoch mt ng dng vào trong nhng đối tượng và nhng thành phn, mà có thể  
được hiu rõ bng vic sdng li và mrng nhng thiết kế và nhng cài đặt hin  
có. Nhng phân tích và kim chng các hthng đó cũng có thddàng hơn vì kiến  
trúc hp thành phn hp thành.  
Vi sra đời ca hướng nghiên cu mi này, các hthng được xây dng dễ  
dàng hơn, linh hot hơn rt nhiu. Đặc bit, các hthng có tính bo mt hiu qucao  
hơn rt nhiu so vi các mô hình đã được nghiên cu và phát trin trước đây. Nguyên  
tc cơ bn ca hthng da trên thành phn là cm và chy (plug and play) nên hệ  
thng là thp ca rt nhiu thành phn. Hthng có thmrng, bo trì mt cách dễ  
dàng. Hin có các kĩ thut hướng đối tượng và da trên thành phn đã được phát trin  
tlâu như như CORBA, EJB, J2EE. Nhưng ngày nay, các ngôn ngmô hình hóa hình  
thc và na hình thc đang trnên phbiến và htrphát trin hthng da trên mô  
hình như UML, JML, Alloy và BIP.  
Tiếp cn vi xu hướng đó, khóa lun này xin được trình bày mt skhái nim về  
hthng da trên thành phn, các khái nim cthhơn trong mô hình hthng da  
trên thành phn thi gian thc. Bên cnh đó, khóa lun sẽ đi sâu tìm hiu vmô hình  
hthng da trên thành phn tvic tìm hiu mô hình thành phn. Sau khi nghiên cu  
1
các khái nim đó, tôi strình bày vmt ví dáp dng mô hình này vào trong mt hệ  
thng thc tế.  
Do thi gian và trình độ ca sinh vic còn hn chế nên trong khi trình bày và tìm  
hiu các khái nim chưa được thu đáo. Khóa lun skhông tránh được mt sli. Rt  
mong nhn được sự đóng góp ca đọc giả để sinh viên có được nhng kinh nghim  
trong vic nghiên cu các vn đề mang tính khoa hc sau này.  
2
1. TNG QUAN VHTHNG DA TRÊN CÁC THÀNH PHN  
1.1. Hthng da trên thành phn là gì?  
1.1.1. Thành phn phn mm.  
Ngày nay, hu hết các sn phm công nghip đều làm tcác thành phn cơ khí.  
Ví dnhư ô tô được lp ráp từ động cơ, bánh xe, ghế ngi… Còn vi máy tính thì li  
được lp ráp tbvi xlí, cng, bnhtrong (RAM), CD-Rom… Vic lp ráp các  
thành phn cơ bn để to thành mt sn phm hay đồ vt đã được loài người sdng  
thàng ngàn năm trước.  
Đối vi ngành công nghip phn mm, vic xây dng các sn phm phn mm từ  
các thành phn phn mm (viết tt là thành phn) cơ bn (Component) được áp dng  
tkhá sm. Theo G. Goos và C. Szyperski thì thành phn phn mm là thành phn cơ  
bn được chrõ bng hp đồng cho phn mm mà có thsn sàng được trin khai bi  
bên thba không có hiu biết vcu trúc bên trong ca nó. Ta có ththam kho mt  
mô hình ca thành phn UML.  
Hình 1. Mô hình thành phn UML  
Các đặc trưng chính ca thành phn được chra là:  
Tính đóng gói  
Nhiu dng thhin  
Giao din  
Xác định duy nht  
Khnăng sdng li  
Sn sàng để sdng  
Client anonymity  
Bên cnh đó, thành phn còn có các đặc tính khác như:  
Độc lp vngôn ngữ  
Độc lp vnn tng  
Khnăng cu hình  
3
Hình 2: Tính đóng gói ca thành phn  
Ta có thế có mt sso sánh gia thành phn và lp như sau:  
Thành phn (Component)  
Lp (Class)  
Có khnăng cung cp dch vtrong Thc ththi gian thiết kế (Design  
quá trình hot động ca hthng  
- time)  
Có thcha nhiu lp  
Mã lnh có sn (Hp trng)  
Mô tbng các giao din  
Không có mã lnh (hp đen)  
Được phát trin riêng rẽ  
Trong hu hết các trường hp được  
thiết kế cho mt hthng  
Ngcnh phát trin không thay đổi  
được sau khi biên dch  
Ngcnh phát trin thay đổi sau khi  
biên dch  
Skhác bit đã được thhin rõ trong bng so sánh trên. Thành phn cho thy  
slinh động, tính đóng gói ca nó. Nó có thchy trên nhiu hthng, nn tng mà  
không gp nhiu trngi ln. Trong khi đó, lp li trnên kém hiu quhơn, hn chế  
trong nhiu trường hp.  
1.1.2. Hthng da trên thành phn  
Hthng da trên thành phn được xây dng cơ bn tcác thành phn thương  
mi dng sn (COTS components). Xây dng hthng tnhiu thành phn COTS  
gii thiu kthut mi để gii quyết các vn đề ct lõi trong stiến hóa không đồng  
nht và độc lp ca các thành phn này.  
Vi phát biu trên, hthng da trên thành phn đem li nhiu li ích cho người  
phát trin hthng. Các li ích đó được lit kê dưới đây.  
4
Vic sdng các thành phn riêng bit nên các thành phn được phát trin  
độc lp. Điu đó làm cho hình thành mt thư vin các thành phn. Tthư  
vin thành phn đó dn đến vic phát trin các hthng trnên nhanh  
chóng. Bên cnh đó, các thành phn này được kim chng tính đúng đắn,  
kim thcác li logic, … nên hn chế được ri ro cho hthng. Đây là  
mt thế mnh mà các hthng khác khó đạt được.  
Các thành phn được tái sdng mt cách hiu qu. Mi ln phát trin  
mt hthng mi không cn phi phát trin li hoàn toàn mi các thành  
phàn mà vn có thsdng các thành phn đã có để phát trin tiếp. Kết  
thúc quá trình phát trin hthng mi, các thành phn mi được đưa vào  
thư vic thành phn. Vi vic tái sdng thanh phn, giá thành sẽ được  
gim đi mt cách đáng k. Không nhng vy, cht lượng cũng được nâng  
cao, đảm bo yêu cu ca người sdng.  
Hình 3. Mô hình tái sdng thành phn  
Ddàng bo trì là mt li ích rt làm cho hthng thành phn trnên linh  
hot hơn. Các thành phn được phát trin riêng bit nên khi bo trì, toàn  
bhthng không bị ảnh hưởng nhiu, vn có thhot động gn như bình  
thường.  
5
Tính cu hình được ca chương trình đem li mt thế mnh vkhnăng  
mrng hthng ddàng. Mt hthng thông minh đòi hi phi có khả  
năng thay đổi cu hình để phù hp vi ngcnh.  
Sự độc lp ngôn ngca các bphn trong hthng mi. Vi các phương  
pháp phát trin hthng truyn thng thì các bphn ca mhthng  
phi được phát trin trên cùng mt ngôn nglp trình. Nhưng vi sra  
đời ca phương pháp phát trin hthng da trên thành phn, các thành  
phn có thể được viết bng các ngôn ngkhác nhau. Bi vì các thành  
phn tương tác vi nhau bng giao din và hp đồng. Vn đề này sẽ được  
đề cp rõ hơn trong các phn sau.  
1.2. Hthng thi gian thc là gì?  
Hthng thi gian thc là hthng mà các dch vca các thành phn phi tha  
mãn ràng buc vthi gian.  
Ví dHhướng dn lái xe.  
Hthng này sẽ được làm rõ hơn trong phn 5 ca khóa lun  
6
2. KIN TRÚC HTHNG DA TRÊN THÀNH PHN  
Vi định nghĩa ca mt hthng hướng thành phn như trên, kiến trúc ca hệ  
thng da trên thành phn bao gm các thành phn độc lp và giao tiếp vi nhau qua  
các giao din giao tiếp. Skết hp đó sto thành mt hthng ln. Hthng da  
trên thành phn được chia làm 2 phn: phn bị động và phn chủ động.  
Phn bị động: là mt thp các thành phn liên kết vi nhau.  
Phn chủ động: là mt tp hp các tiến trình phn ng li các tác động được gây  
ra tcác skin bên ngoài. Chúng sdng các dch vtthành phn bị động để đáp  
ng li yêu cu tcác tác nhân bên ngoài hthng thông qua giao din thành phn.  
Kiến trúc ca hthng được mô ttrong hình dưới.  
Hình 4: Kiến trúc hthng da trên thành phn.  
Đối vi kiến trúc này, ta có thly mt ví dụ đối vi các chương trình đa lung  
(như chương trình Java). Ở đây, mi mt tiến trình tương ng vi mt lung trong  
Java vi thiết lp đa lung được chp nhn. Điu đó có nghĩa là nhiu lung được truy  
cp đến mt dch vca mt thành phn con trong phn bị động mt cách trc tiếp  
hoc thông qua các dch vkhác.  
Làm thế nào để xlý các trường hp này để tăng hiu sut và đặc bit là tránh bế  
tc tcác truy cp đồng thi ti các tài nguyên dùng chung là mt vn đề ln. Nếu  
điu này xy ra thì ngay ctin điu kin ca mt dch vụ được tha mãn thì dch vụ  
cũng không thngt vì dch vụ đã rơi vào trng thái bế tc. Vì thế, không phi tt cả  
các hành vi truy cp dch vliên tiếp đều được chp nhn. Ngoài đặc tvi tin điu  
kin và hu điu kin ca mt dch vra, mt hp đồng cũng phi được bao gm trong  
7
đặc tca vic cho phép truy cp dch vliên tc. Đặc tnày cũng đóng vai trò như là  
mt githiết rng thành phn to nên môi trường cho chính nó,được ghi nhn bi mt  
giao thc gi là giao thc tương tác.  
3. TÌM HIU MÔ HÌNH THÀNH PHN  
3.1 Thiết kế dưới dng công thc logic  
Như đã nói phn trước, mt thành phn cung cp các dch vcho các khách  
hàng. Các dch vcó thdliu hoc các phương thc. Để xác định các chc năng  
cho các phương thc, ta sdng các kí hiu UTP (Unified Theories of Programming)  
cơ bn, trong đó mt phương thc được xác định như là có quan hvi nhau vi các  
op(in,out)  
in  
out  
là tp hp các biến.  
du hiu ca dng thc  
Định nghĩa 1  
vi  
và  
Mt thiết kế là mt tp hp hu hn  
α
, FP vi  
α
là biu thcho tp hp các  
biến chương trình được sdng bi phương thc, FP biu thcho đặc tchc năng  
ca phương thc trong bng kí hiu ca UTP.  
FP là mt vtca dng thc:  
Nếu điu khin chuyn đến chương trình (ok là true) và tin điu kin p được  
tha mãn thì chương trình skết thúc tương ng vi oklà true và giá trca biến  
chương trình ti thi đin kết thúc và thi đim khi hành tha mãn quan hR.  
Vi p là tin điu kin ca phương thc là githiết trên giá trban đầu ca các  
biến trong tp hp  
α
\ out mà các phương thc có thda vào khi kích hot và R là  
hu điu kin R bài liên quan đến quan sát ban đầu đến quan sát cui cùng(được đại  
x
din bi nhng biến đầu tiên trong tp hp  
{
|
x
α
\ (in out)} và các biến in out).  
Biến logic ok là biến đặc bit biu thskết thúc ca phương thc, ví dok có giá  
trtrue nếu và chnếu phương thc bt đầu chy và ok có giá trtrue nếu và chnếu  
phương thc ngt.  
Làm mn thiết kế.  
Ta gi li định nghĩa làm mn quan hcho thiết kế được trình bày trong UTP.  
Mt thiết kế  
D
=
α
,
FP được làm mn tthiết kế D2  
=
α
,
FP (có nghĩa là  
1
1
2
D D2 ) nếu và chnếu  
1
8
,
v
(
ok  
,
ok  
v
,
FP FP  
)
2
1
v
vi  
v
,
là các vectơ ca các biến chương trình.  
Dãy thành phn  
Ly FP D2  
D
=
α
,
=
α
,
FP là các thiết kế sau đó  
D
;
D2  
α
,
FP  
FP  
1
1
2
1
Vi FP  
m
FP  
(
m
)
FP  
(
m
)
vi gisFP  
=
FP  
(
v
)
FP  
=
(
v
)
.
1
2
1
1
2
2
Từ đây vsau, tôi sdng  
bi x1 trong biu thc F.  
F
[
x1  
\x  
]
để biu din biu thc kết qutvic thay thế x  
3.2 Giao din và hp đồng  
Chkí cho thành phn là giao din ca nó mà chrõ nhng dch vnào nó cung  
cp và dch vnào nó yêu cu tmôi trường. Hp đồng là đặc tca giao din. Từ  
tho lun không chính thc trong phn trước, ta đưa ra định nghĩa chính thc ca hai  
khái nim trong lp trình da trên thành phn sau đây.  
Định nghĩa 2:  
Mt giao din là mt cp  
I
= (Ip  
Mdr . Ip được gi là cung cp giao din ca I và Ir được gi là yêu cu  
giao din ca I.  
Định nghĩa 3:  
,
Ir  
)
vi Ip = Fdp ,Mdp  
và  
I
=
Fdr  
,
r
Mt hp đồng là mt tp hp hu hn I,Init,MSpec,Invp ,Invr ,Pro vi  
= (Ip Ir là mt giao din. Ly Md Mdr Mdp Fd Fdr Fdp  
I
,
)
=
,
=
Init là mt khi to mà kết hp vi mi biến trong Fd và mi biến cc bộ  
vi mt giá trca cùng kiu.  
MSpec đặc tphương thc kết hp vi mi phương thcop(in,out)  
trong Md  
=
Mdr Mdp vi mt thiết kế  
α
, FP  
vi  
(α  
\ (in out)) Mdp  
Invp Invr là vttrong cung cp tính năng và yêu cu tính năng tương  
ng trong hp đồng (được gi là hp đồng bt biến). Invp đại din cho  
mt thuc tính ca giá trbiến trong khai báo đặc tính FDp mà có thda  
9
vào trong bt kì thi đim nào mà nó có khnăng truy cp tcác thành  
phn khác. Do vy, Invp được tha mãn nht là bi Init. Invr đại din cho  
thuc tính mà yêu cu giá trca biến trong FDr được cung cp.  
Pro là mt giao thc, là tp con ca dng thc  
{
m
?,  
phép chiếu trên  
Pro được chp nhn.  
m
!| m Fdp}* {  
m
?,m!| m Fdr}*. Chcó hành vi ca các  
{
m
?, !| m Fdp}* {m?,m!| m Fdr}* thuc về  
m
Hp đồng ca mt thành phn biu din cái mà thành phn mong đợi tmôi  
trường và cái nó cung cp cho môi trường.  
Các biến trong Fd là chỉ đọc đối vi các hp đồng khác. Invp trong mt hp đồng  
biu din mt thuc tính ca các biến trong hp đồng mà nó cung cp cho môi trường,  
và do vy phi được đảm bo bi bt kì phương thc nào ca hp đồng.  
Có lnó kém rõ ràng hơn mt giao thc, và cách nó quan hvi đặc tca các  
dch v. Ta cũng làm rõ khái nim này như là mt phn ca nghiên cu. Đối vi  
phương thc m, kí hiu ?m !m như là sdn ra (gán giá trcho tham s) và kết thúc  
(ly kết qudch v) ca m. Ở đây sdng CSP (truyn thông liên tiến trình -  
Communicating Sequential Processes1). Sau đó nó yêu cu mi ?m phi tương ng  
vi chính xác mt !m theo sau, và ngược li mi !m phi tương ng đúng vi mt yêu  
cu hành động !m. Đối vi mt phương thc m, nó có thchp nhn mt vài lung để  
sdng m ti cùng mt thi đim (ví dnhư vài bn sao ca m). Trong trường hp  
này, đối vi mt ?m và và tương ng vi !m có thcó vài xut hin ca ?m gia  
chúng. Sti đa ca các yêu cu ?m không kết thúc tương ng ti mt thi đim là độ  
đồng thi mà m có thcung cp và được chrõ trong giao thc. Bình thường, bt kì  
phương thc m chcó thể được sdng ln nhau không bao gm chính nó và các  
phương thc khác trong thành phn. Trong trường hp này, giao thc có thể được chỉ  
ra như là mt biu thc chính quy {?  
m
!m  
|
m Md}*. Khi tt ccác phương thc m  
có thể được sdng ln nhau không bao gm chính nó và song song vi các phương  
thc khác, giao thc có thể được chra như là mt biu thc chính quy  
m Md{?  
m!m}* vi biu din schèn vào song song toán thp.  
Định nghĩa 4:  
1 Wikipedia, http://en.wikipedia.org/wiki/Communicating_sequential_processes  
10  
Hp đồng Ctr = (Ip1,Ir1),MSpec1,Init1,Invp1,Invr1,Pro1 được làm mn ca  
1
đồng Ctr = (Ip2,Ir2 ),MSpec2,Init2,Invp2,Invr2,Pro2  
được biu din là  
2
Ctr Ctr nếu và chnếu:  
1
2
Fdp1 Fdp2  
,
Fdr1 Fdr2 , và Init2 Fdp1  
=
Init1 Fdp1 vi hàm f và mt  
tp hp A, f A biu din cho sthu hp (hn chế) ca f trên A.  
MDp1 Mdp2 MDr1 Mdr2  
.
Đối vi tt cphương thc op được khai báo trong Mdp1 thì  
MSpec1 op MSpec2 op Invp2 Invp1  
(
)
(
)
.
Đối vi tt cphương thc op được khai báo trong Mdr2 thì  
MSpec2 (op) MSpec1(op) Invr1 Invr2  
.
Pro1 {m?,m!| m Fdp1} Pro2 {m?,m!| m Fdp1} và  
Pro2 {m?,m!| m Fdr2} Pro1 {m?,m!| m Fdr2}  
.
Ta chng tỏ định nghĩa này như sau. Ctr2 cung cp tt ccác dch vCtr1  
cung cp, thm chí còn tt hơn và có thcung cp nhiu hơn, Ctr2 nên cn ít các dch  
vhơn Ctr1. Điu kin Invr1 Invr2 nói lên rng thuc tính ca các biến đảm bo  
bi Ctr2 cũng chc chn như bi Ctr1. Trong phn tóm tt, hp đồng Ctr2 cung cp  
nhiu hơn, các dch vtt hơn và cn ít hơn các dch vtmôi trường so vi Ctr1. Do  
vy, ta dùng Ctr2 để thay thế Ctr1 mà không mt bt kì dch vnào.  
3.3. Kết hp hp đồng.  
Các hp đồng cáo thể được kết hp li theo nhiu cách để hình thành mt hp  
đồng mi. Mt cách khó khăn hơn cho vic tính toán mt hp đồng đa hp là tính toán  
vgiao thc ca nó. Điu này đã được loi btrong lí thuyết hp đồng. Cách đơn gin  
nht để kết hp hai hp đồng là đặt chúng cnh nhau nếu chúng có các tp hp đặc  
tính và các phương thc ri nhau.  
Định nghĩa 5  
11  
Ly Ctr = (Ipi ,Iri ),MSpeci ,Initi ,Invpi ,Invri ,Proi ,i =1,2, là 2 hp đồng có  
i
nhng tp hp (yêu cu và cung cp) thuc tính, phương thc riêng bit. Phép kết hp  
ca Ctr1 Ctr2 là hp đồng  
(Ip1 Ip2,Ir1 Ir2 ),MSpec1 MSpec2,Init1 Init2,Invp1  
Ctr Ctr =  
1
2
Invp2,Invr1 Invr2,Pro1 Pro2 (Pro1 Pro2 )  
Chmt điu cn thiết để gii thích trong định nghĩa trên là làm thế nào để giao  
thc cho hp các hp đồng được định nghĩa. Khi đặt các hp đồng cnh nhau, bi vì  
chúng được giả định là độc lp, tt ccác phương thc và đặc tính ca chúng có thể  
được sdng song song. Thành phn song song Pro1 Pro2 đã xác định chính xác vn  
đề. Tuy nhiên, hp đồng ghép cũng phi cho phép các phương thc trong mt thành  
phn độc lp được sdng theo cách nguyên bn.  
Có mt cách khác để kết hp hp đồng là kết ni các phương thc được yêu cu  
ca mt hp đồng đến vi các phương thc cung cp ca hp đồng khác. Ly  
Ctr = (Ipi ,Iri ),MSpeci ,Initi ,Invpi ,Invri ,Proi ,i =1,2 là các hp đồng có các tp  
i
hp đặc tính và phương thc cung cp phù hp, các đặc tính và phương thc yêu cu  
phù hp, ví dnhư f (Fdp1 Fdp2 ) suy ra Init1( f ) = Init2 ( f ) và  
op (Mdp1 Mdp2 ) (Mdr1 Mdr2 ) suy ra MSpec1(op)  
định rng Ir1 Ip2 Invp2 Invr1 MSpec1(op) MSpec2 (op) đối vi tt cả  
op Mdr1  
MSpec2 (op). Giả  
,
,
.
Cm đầy đủ ca Ctr ti Ctr được biu din là Ctr >> Ctr được định nghĩa là:  
1
2
1
2
(Ip1 Ip2,Ir2 ),MSpec2,  
Ctr >> Ctr =  
1
2
Init1 Fdr1 Init2 ,Invp1 Invp2,Invr2,Pro  
Ở đây, ta nhn thy tp các yêu cu không phi là Ir1 Ir2 mà chIr2 bi vì  
do Ctr được làm mn tCtr nên Ctr đầy đủ tp các yêu cu ca Ctr1. Và vì thế,  
2
1
2
Ctr cm đầy đủ vào Ctr  
.
1
2
Vi (Init1 Init2 )(x) được định nghĩa là  
12  
Init (x) = Init (x) nê'u x dom(Init ) dom(Init )  
1
2
1
2
Init (x) nê'u x dom(Init ) \ dom(Init )  
1
1
2
Init2 (x) nê'u x dom(Init2 ) \ dom(Init1)  
Ta tho lun ở đây cách mà giao thc Pro được tính toán tProi ,i =1,2 vi  
hp đồng Ctr >> Ctr  
.
1
2
Thnht, hp đồng ghép Ctr >> Ctr cũng phi cho phép các phương thc  
1
2
ca mt thành phn riêng bit được sdng chúng theo cách nguyên bn.  
Vy Pro1 Pro2 phi bao gm Pro  
.
Các phương thc m tCtr2 thì không được yêu cu bi Ctr có thể được sử  
1
dng song song vi các phương thc trong Ctr1. Vy Pro phi bao gm  
Pro (Pro2 {!m,?m | m Mdp2 \ Mdr1}*)  
.
Câu hi ở đây là làm thế nào mà mt phương thc m trong Mdp2 Mdr1 li  
được sdng vi mt phương thc trong Mdp1 . Câu trli phthuc vào độ  
song song ca m. Vic tính toán cho trường hp này rt phc tp và được để  
mti đây. Để an toàn, ta không cho phép chúng chy song song (mc dù  
như vy thì hiu qukém hơn).  
Vy ta định nghĩa Pro như sau:  
Pro = Pro1 Pro2 Pro1 (Pro2 {!m,?m | m Mdp2 \ Mdr1}*)  
Khi Ctr >> Ctr được định nghĩa, ta nói rng Ctr có khnăng kết ni vi Ctr  
.
1
2
1
2
Chú ý rng khi kết hp hai hp đồng theo cách này thì thành phn kết qucó thể  
không được sdng để thay thế Ctr1. Lí do là nó có thyêu cu cái gì đó tmôi  
trường mà Ctr không cung cp.  
1
Định lí 1  
Ly Ctr là khkết ni vi Ctr2 . Nếu Ctr đóng (có nghĩa là Ir2 = ) thì  
1
2
Ctr (Ctr >> Ctr2 )  
.
1
1
Chng minh:  
13  
Bng vic kim tra trc tiếp từ định nghĩa ca toán tcm(plug operator) và định  
nghĩa ca làm mn thiết kế. Định nghĩa có thể được chnh sa trong trường hp phổ  
biến là Ir1  
Ip2 và lí thuyết vn đúng. Bây gihãy hình thc hóa khái nim ca thành  
phn. Bng trc giác, mt thành phn bị động là mt cài đặt ca mt giao din sdng  
dch vtcác thành phn bị động khác thông qua các hp đồng ca chúng. Vi mt  
trình bày đơn gin, ta sdng mt kiu kiến trúc đơn gin vi khi to ch/khách và  
truyn thông đồng b.  
Định nghĩa 6  
Mt thành phn bị động là mt tp hp hu hn Comp = Ctr,Mcode vi  
Comp được xác định vi tên ca thành phn gm có:  
Mt hp đồng Ctr = (Ip ,Ir ),MSpec,Init,Invp ,Invr ,Pro  
Mcode gán mi phương thc op trong Mdp mt thiết kế xây dng tcác  
toán tcơ bn và phương thc trong Ir như là ánh xca các vết trong thiết  
kế này mà by kì op Mdr được thay thbi ?op!op tbt đầu và kết thúc  
hành động, {?m!m | m Mdr} được bao gm trong Pro. Điu kin sau đây  
phi được tha mãn bi Mcode  
:
(MSpec(op)  
Mcode(op)) Invp được  
gibi bt kì phép toán nào trong Mcode  
.
Cài đặt ca tt cphương thc m phi tương thích vi độ song song ca  
chúng được mô ttrong Pro, nghĩa là hoc mt phương thc m không phi  
là mt phương thc đặc bit dùng chung hoc mt sbn sao thích hp ca m  
tn ti.  
Thành phn bị động Comp được nói là cài đặt bi Ctr  
.
Vy mt thành phn phi được kim chng bi thiết kế ca nó. Ví dnhư cài đặt  
ca các phương thc phi được kim chng thông qua các đặc tca chúng. Tính  
đúng đắn ca nó có thể được kim chng riêng bit tmôi trường.  
Ly Compi = Ctr ,Mcodei ,i =1,2 là các thành phn, vi Ctr >> Ctr được  
i
1
2
định nghĩa. Ly được Mcode tMcode bng vic thay thế mi ln xut hin ca  
1
op (Mdr1 Mdp2 ) bng Mcode2 (op) trong dãy ca Mcode1 . Tht ddàng để  
14  
kim tra toàn btoán tcm định nghĩa trong các hp đồng được mang theo trên các  
thành phn.  
Định lí 2:  
Ctr >> Ctr ,Mcode1 Mcode2 Md2 \ Md1 là mt thành phn.  
1
2
Ví d: Ly double_ quadr là mt thành phn vi mt dch vụ  
dquadr(in:real a,b,c;out :real x1) đưa ra là mt đáp án x1 ca phương trình  
bc 2 theo x2: ax4 + bx2 + c = 0. Thành phn double_ quadr yêu cu dch vụ  
dquadr(in:real a,b,c;out :real x1) tthành phn khác mà khi được gi vi các  
tham sa, b, c thích hp thì strli đáp án ca phương trình ax2 + bx + c = 0.  
Thành phn double_ quadr được mô tbng đon mã bên dưới.  
Phn chủ động gm có vài tiến trình và mt giao din yêu cu, mà có thể được  
gn và phn bị động. Mt tiến trình được mô tbi mt chương trình sdng các dch  
vtphn bị động để phn ng li các skin tmôi trường ca hthng. Các sự  
kin không được điu khin bi hthng. Vy các skin thú vtmôi trường và dch  
vhthng đi cùng nhau vi các đặc tca nó và giao thc tương tác hình thành hp  
đồng gia hthng và môi trường ca nó.  
Thc tế, đây là mt mô hình thành phn dùng để gii bài toán phương trình bc 4  
dng đặc bit. Nếu ta đặt X = x2 thì phương trình strthành dng bc 2.  
component double_quadr {  
provide method {  
name { dquadr(in : real a, b, c; out : real x1) },  
specification{ ac 0  
ax14 + bx12 + c = 0}  
}
required method{  
name{ quadr(in : real a, b, c; out : real x1)},  
ax12+bx1+c = 0x1 0}  
specification{ ac 0  
}
protocol{ (?dquadr!dquadr)∗ ⊕ (?quadr!quadr)}  
15  
implementation{  
name{ dquadr(real in : a, b, c, real out : x1)},  
code{quadr(in : a, b, c; out : x1); x1 := sqrt(x1)}  
}
}
Định nghĩa 7  
Mt giao din hthng là mt cp SI = (E,Fd,SMdp ) vi SMdp là mt tp  
hp hu hn các phương thc, Fd là mt tp hp hu hn các đặc tính, và E là tp  
hp hu hn các skin.  
Định nghĩa 8  
Mt hp đồng hthng là mt tp hp hu hn  
SysCtr = SI,SMSpec,Inv,Behav  
vi  
SI = (E,Fd,SMdp ) là mt giao din hthng được định nghĩa trên.  
MSpec là mt đặc tphương thc kết hp vi mi phương thc  
op(in,out) trong SMdp vi mt thiết kế  
\ (in out)) Fd  
α
,FP  
vi  
(α  
.
Behav là mt mô thành bi bên ngoài. Nó là mt tp con hu hn ca  
{e,m|e E m SMdp}*. Mi yếu tca Behav được gi là mt đặc  
ttiến trình.  
Mt nghĩa không chính thc ca dãy  
thng cung cp dãy các skin như là biến ctrong  
các dch v(phương thc) chrõ bi theo thc t. Các phn tca Behav được mô  
α
trong Behav là nếu môi trường hệ  
α
do vy hthng cung cp dãy  
α
tbi các lung chương trình đang chy song song. Mt iu hin ngnghĩa ca  
Behav có thể được định nghĩa trong logic thi gian phù hp cho min ng dng đang  
nghiên cu.  
Định nghĩa 9  
Mt thành phn chủ động ActComp = Ctr,SysCtr,Mcode bao gm  
16  
Mt hp đồng Ctr = (Ip ,Ir ),MSpec,Init,Invp ,Invr ,Pro vi giao din  
cung cp rng, Ip = ( , )  
.
Mt hp đồng hthng SysCtr = SI,SMSpec,Inv,Behav  
.
Mt cài đặt tiến trình Mcode gán mi mt phương thc op trong SMdp  
mt thiết kế xây dng tcác toán tcơ bn và phương thc trong Ir như  
là phép chiếu vết ca thiết kế này trong bt kì phương thc op Mdr  
được thay thế bi ?op!op (tbt đầu và kết thúc hành động), trên  
{?m,!m | m Mdr} được bao gm trong Pro. Điu kin sau đây phi  
được tha mãn bi Mcode:(SMspec(op)  
Mcode(op)) cho tt cả  
op SMdp  
Mt hthng trong mô hình thành phn này là mt thành phn chủ động được  
gn vào mt thành phn bị động đóng.  
Định nghĩa 10  
Mt hthng là mt cp ca mt thành phn chủ động  
ActComp = Ctr,SysCtr,Mcode  
và mt thành phn bị động đóng Comp = Ctr ,Mcode vi Ctr >> Ctr đã  
được định nghĩa.  
Vy mt hthng thành phn là mt hthng đóng không yêu cu bt kì dch vụ  
nào tmôi trường và cung cp dch vca nó cho môi trường như là phn ng ca nó  
đáp skin kích thích tmôi trường. Đặc tca mt hthng là hp đồng hthng  
SysCtr . Hai hthng là tương đương nhau nếu và chnếu chúng có cùng đặc t,  
nghĩa là chúng có giao din hthng tương đương. Định lí sau đây cho thy đặc trưng  
quan trng nht ca lp trình da trên thành phn.  
Định lí 3  
Ly S = (ActComp,Comp ) là mt hthng làm thành tthành phn chủ động  
ActComp = Ctr,SysCtr,Mcode và thành phn bị động Comp = Ctr ,Mcode  
.
17  
′′  
′′  
′′  
′′  
Ly Comp = Ctr ,Mcode  
là mt thành phn bị động, Ctr Ctr . Nên  
′′  
(ActComp,Comp ) cũng là mt hthng tương đương vi S.  
4. MÔ HÌNH THÀNH PHN THI GIAN THC  
Các mô hình được trình bày trong phn trước có thể được mrng vi mt số  
đặc tính vthi gian để trthành mô hình thành phn cho hthng thi gian thc.  
Trong phn này, ta tho lun vcách thc thc hin. Phn quan trng ca vic mở  
rng nm các dch vthi gian thc, các giao thc tương tác thi gian thc và các  
hp đồng thi gian thc. Các đặc tca phương thc phi có thêm ràng buc vthi  
gian.  
4.1. Các thiết kế có nhãn ràng buc vthi gian sdng như dch v.  
Các hthng thi gian thc có mt sràng buc vmt thi gian trên các dch  
vnhư là thi gian đáp ng và ràng buc vtài nguyên như là yêu cu bnh, băng  
thông và tiêu thụ đin năng. Sdng lí thuyết lp trình thng nht để xác định các dch  
vnhư thiết kế giúp ta ddàng mrng nên gi là “thiết kế có nhãn ràng buc vthi  
gian” mà cũng có thxác định các yêu cu tài nguyên và các trường hp thi gian thc  
hin xu nht cho mt dch vnhư là mt mi quan hgia tin và hu điu kin cho  
các thành phn chc năng ca dch v. Tin điu kin cho mt phương thc là mt vị  
ttrên các biến chương trình cũng như các biến tài nguyên, và hu điu kin cho mt  
phương thc là mt mi quan htrên các biến chương trình và các trường hp thi  
gian thc hin dur xu nht và các biến tài nguyên. So vi cách tiếp cn otomat thì  
thiết kế có nhãn ràng buc vthi gian thhin tt hơn.  
Ta có thiết kế có nhãn ràng buc vthi gian D =  
α
,FP,FR vi α là tp các  
biến chương trình được sdng bi phương thc, FP biu din đặc tchc năng và  
FR biu din đặc tphi chc năng. Trong thiết kế trên, FP đã được chra phn  
trước. FR là mt vtca dng thc q  
n
S
q S vi q là tài nguyên tin điu kin  
cho phương thc trong giao din được đề cp là giả định trên các tài nguyên được sử  
dng bi phương thc và được đại din như là vttrên các biến trong RES  
(
RES ={res1 ,...,resn } là tp cố định các biến snguyên). S là hu điu kin có ràng  
buc vthi gian cho phương thc mà quan hvi mi lượng thi gian l tiêu tn cho  
vic thc thi phương thc và tài nguyên được sdng cho phương thc. S được đại  
din cho mt vttrên các biến trong RES, α l. Ta ly mt ví dmô tcho ý nghĩa  
ca FR. Ly  
α
{x,y},FP  
x 0  
f y2 = x FR  
P133+ P266 =1•  
r
18  
((P133 =1l 0.001) (P133 = 0 l 0.0005)). Khi y  
α
,FP,FR đại din  
cho thiết kế có nhãn ràng buc vthi gian để tính toán y = x cho mt sx không  
âm vi thi gian không quá 0.001 đơn vthi gian khi thc hin bng bxlí 133  
MHz và không quá 0.0005 đơn vthi gian khi thc hin vi bxlí 266MHz.  
Làm mn thiết kế có nhãn ràng buc vthi gian  
Cũng ging vi thiết kế trong mô hình thành phn, thiết kế có nhãn ràng buc về  
thi gian cũng có khái nim làm mn. Nó chmrng thêm mt phn nhso vi khái  
nim làm mn thiết kế được nêu ra phn trước.  
Mt thiết kế D2 =  
α
,
FP  
,
FR2 được gi là làm mn tD =  
α
,
FP FR  
,
2
1
1
1
(biu din là 2 ) nếu và chnếu  
D
D
1
,
(
ok  
,
ok  
v
,
v FP  
FP1) (  
r
,
l FR2  
FR  
)
2
1
Vi v, vlà các véc tơ ca biến chương trình, r biu thmt véc tơ ca biến tài  
nguyên, r =(res1 ,...,resn ). Phn đầu ca phép toán VÀ ( ) là mun nói lên thành  
phn chc năng D2 là bn làm mn ca phn chc năng D1. Phn tiếp theo ca phép  
toán VÀ nói rng nếu yêu cu phi chc năng ca D2 được tha mãn thì yêu cu phi  
chc năng ca D1 cũng được tha mãn. Vy D2 có thcài đặt D1.  
Thành phn tun t.  
Ly D = α1  
,
FP  
,
FR D2 = α 2  
,
FP FR2 là hai thiết kế có nhãn phụ  
,
1
1
1
2
thuc thi gian. Vy, D ;D2  
α
,Fp,FR vi  
1
FP = FP  
(
v
)
FP = FP  
(v)  
1
1
2
2
FR  
l1  
,
l2 •  
(
FR  
[l1 / l  
]
FR2  
[l2 / l  
]
l = l1 + l2  
)
1
Từ đây vsau, ta ssdng F[x1 / x] để biu din biu thc kết quca vic  
thay thế x bng x1 trong biu thc F. Từ đó tài nguyên được sdng cho D1 có thể  
được sdng li cho D2 khi mà D1 kết thúc.  
Phân tách thành phn song song.  
Ly D = α1  
,
FP  
,
FR D2 = α 2  
,
FP FR2 là các thiết kế có nhãn phụ  
,
1
1
1
2
thuc thi gian. Githiết rng α1  
α 2  
=
. Vy D || D2  
α
,FP,FR khi  
1
19  
α
α1 α 2 FP FP FP  
1
2
FR l1,l2,r ,r (FR [l1 / l,r / r]  
1
2
1
1
vi r1 r2 là các véc tơ  
FR2[l2 / l,r .r] l = max{l1,l2} r = r + r )  
2
1
2
ca biến tài nguyên và r1+r2 đã được định nghĩa.  
Điu kin biu thslượng các biến tài nguyên đủ để thc thi  
r
=
r
+
r
D
và  
1
2
1
D2 song song mt cách độc lp. Lnh composed được hoàn thành khi chai lnh  
thành phn được hoành thành. Để lí gii hai định nghĩa này, ta có thsdng ngữ  
nghĩa mang tính hot động cho chương trình được định nghĩa như là mt hthng  
chuyn tiếp có nhãn (S, ,C) vi mi trng thái s S là mt tp hp hu hn.  
(v,r,t) . Trong đó v là mt véc tơ các giá trca biến chương trình, r là mt véc tơ các  
giá trca biến tài nguyên và t là mt sthc để chthi gian thc. C là mt tp lnh.  
Ly ngnghĩa ca c C là thiết kế  
α
,FP,FR vi FP = p
f R FR = pr  
S
.
n
c
′ ′ ′  
Vy có mt phép chuyn (v,r,t) (v ,r ,t ) nếu và chnếu  
p(v) R(v,v ) r = r pr (r) l = t t S(l,r,v,v ) thông qua sthông dch ca  
các thiết kế. Vic định nghĩa phân tách thành phn song song và thành phn tun tự  
hin nhiên trong hthng chuyn tiếp nhãn trùng vi định nghĩa đã cho trên.  
Đối vi hp đồng trong hthng da trên thành phn thi gian thc có skhác  
bit so vi hthng da trên thành phn đơn thun. Ta có định nghĩa vhp đồng có  
nhãn ràng buc vthi gian.  
Định nghĩa  
Mt hp đồng có nhãn ràng buc vthi gian là mt tp hp hu hn  
I,Rd,MSpec,Init,Inv vi  
I = Fd,Md là mt giao din.  
Rd là mt khai báo tài nguyên, nó là mt tp con ca RES.  
Init là mt khi to, kết hp vi mi biến trong Fd và mi biến cc bvi  
cùng mt kiu giá tr. Biến trong Rd vi kiu snguyên.  
20  
MSpec đặc tphương thc kết hp vi mi phương thc op(in,out)  
trong Md vi mt thiết kế có nhãn ràng buc vthi gian ,FP,FR  
trong đó \ (in out)) Fd  
α
,
(α  
.
Inv là mt vttrên các đặc tính trong hp đồng (được gi là bt biến hp  
đồng). Inv đại din cho mt thuc tính bt biến ca giá trbiến trong khai  
báo đặc tính Fd mà có thtin cy ti bt kì thi đim nào mà mó có thể  
truy cp tbên ngoài. Từ đây, Inv được tha mãn mt cách đặc bit bi  
Init.  
Ta nhn mnh ở đây là các biến tài nguyên được khai báo trong Rd là biến ni  
trong mt hp đồng (biến cc b). Inv trong mt hp đồng biu din mt thuc tính  
ca các biến trong hp đồng mà nó cung cp cho môi trường. Trong trường hp hp  
đồng không đảm bo bt kì mt thuc tính bt biến nào ca các giá trca nó thì Inv là  
đúng.  
Các hp đồng này cũng cn được làm mn. Tthc tin nghiên cu vn đề, ta có  
định nghĩa vlàm mn hp đồng như sau:  
Hp đồng có ràng buc vthi gian  
Ctr = Fd2,Md2 ,Rd2,MSpec2,Init2,Inv2  
2
được làm mn bng hp đồng  
Ctr = Fd1,Md1 ,Rd1,MSpec1,Init1,Inv1  
,
1
(được biu din là Ctr  
Ctr2 ) nếu và chnếu:  
1
Fd1 Fd2  
đối vi các hàm f , f1, f2 và tp A. f | A biu thhn chế ca f trên A và  
f1 f2 biu thrng f1 f2 có cùng min và f1(x) f2 (x) vi mi x  
trong min ca chúng.  
,
Rd1 Rd2 Init2 | Fd1 = Init1 | Fd1,Init2 | Rd1 Init1 | Rd1  
Md1 Md2  
.
Vi mi phương thc op được khai báo trong Md1 thì  
Mspec1(op)  
Mspec2 (op) Inv2  
Inv1  
.
21  
Ta lý gii định nghĩa này như sau. Ctr cung cp tt ccác dch vCtr cung  
2
1
cp và có thcung cp nhiu hơn na. Ctr phi có ít nht cùng tài nguyên như Ctr  
2
1
có. Điu kin Inv2  
Inv1 nói lên rng thuc tính ca các biến được đảm bo bi Ctr  
1
thì cũng chc chn được đảm bo bi Ctr2 . Vt có ththay thế Ctr bng Ctr mà  
1
2
không bmt bt kì mt dch vnào.  
Đặt Ctr = Fdi ,Mdi ,Rdi ,Mspeci ,Initi ,i =1,2 là các hp đồng có ràng buc  
i
vthi gian tương thích vi tp hp các đặc tính và phương thc. Có nghĩa là  
f Fd1 Fd2 bao hàm cInit1( f ) = Init2 ( f ) op Md1 Md2 bao hàm cả  
MSpec1(op)  
MSpec2 (op). Kết hp hp đồng Ctr Ctr được định nghĩa như  
1
2
(Fd1 Fd2,Md1 Md2 ),Rd1 Rd2,  
sau: Ctr Ctr =  
1
2
MSpec1 MSpec2,Init1 Init2,Inv1 Inv2  
vi (Init1  
Init2 )(x) được định nghĩa là  
max{Init (x),Init (x)} nê'u x dom(Init1 )dom(Init2 )  
1
2
Init (x)  
nê'u x dom(Init1 )\ dom(Init2 )  
nê'u x dom(Init2 )\ dom(Init1 )  
1
Init2 (x)  
Khi Ctr Ctr được định nghĩa thì ta có thnói Ctr Ctr có thrút gn.  
1
2
1
2
Chú ý rng khi kết hp 2 hp đồng, lượng tài nguyên có sn để kết hp được định  
nghĩa như là vi thành phn hp đồng ln nht. Định nghĩa này phn ánh cái nhìn mt  
phương thc trong kết hp hp đồng phi có ít nht cùng thi gian thc hin như là nó  
có trong các hp đồng thành phn, được cung cp đúng mu. Đúng mu có nghĩa là  
thc thi phthuc thi gian tt hơn nếu có nhiu tài nguyên được cung cp và được  
hình thc hóa. Mt thiết kế có ràng buc vthi gian  
α
,FP,FR được gi là đúng  
mu nếu và chnếu FR tha mãn r,r  
(r  
r
(FR[r / RES] FR[r / RES]))  
.
1
1
1
Vi r r1 là các véc tơ giá trca các biến tài nguyên.  
4.2. Sdng các ngôn nghình thc có nhãn ràng buc vthi gian để đặc  
các giao thc tương tác thi gian thc và đặc ttiến trình.  
Giao thc tương tác cho các thành phn thi gian thc phi mang theo không chỉ  
các thông tin theo thtthi gian ca hành động giao tiếp mà còn cràng buc thi  
gian ca chúng. Như trong lí thuyết otomat có nhãn ràng buc vthi gian, ta có thể  
gán nhãn cho mt biến cca mt hành động giao tiếp vi thi gian xy ra. Mt chui  
22  
các hot động truyn thông được gán nhãn theo các này được gi là “tthi gian” (từ  
có nhãn ràng buc vthi gian). Nó biu din hành vi ca hthi gian thc là mt dãy  
tiến hành trong đó mi biến cố đều có nhãn thi gian chbiu din khong thi gian  
trôi qua ktbiến clin trước. Mt tp hp ca chui có nhãn thi gian ca các hành  
động có thgiao tiếp có thbiu thmt githiết bng mt thành phn vhành vi thi  
gian thc trong môi trường ca nó. Ngôn ngcó nhãn ràng buc vthi gian được  
nghiên cu kĩ và hiu rõ, từ đây có thsdng chúng cho các đặc tca các giao thc  
tương tác, các tiến trình có nhãn ràng buc thi gian thc thun li hơn.  
Đối vi hiu qutrong vic kim chng mt phương thc thi gian thc trong  
các thành phn, các giao thc trong ràng buc phi không có bt kthông tin vthi  
gian, và thông tin thi gian cho mt giao thc được bt ngun tnhng đặc tca  
phương thc thi gian thc tcác giao thc.  
4.3. Các hp đồng thi gian thc.  
Các hp đồng thi gian thc được định nghĩa theo cùng mt cách như đối vi  
các hp đồng trong phn trước. Các định nghĩa ca giao din được mrng bng cách  
cho phép ca các khai báo ca tài nguyên được nhóm li vào trong tài nguyên có thể  
tiêu thụ được và tài nguyên không thtiêu thụ được. Nhng bt biến hp đồng giao  
din phi mrng để mô tnhng nhng sràng buc trên tài nguyên. Trong các thiết  
kế có nhãn ràng buc vthi gian ca hp đồng thi gian thc được sdng thay vì  
các thiết kế. Mt thành phn thi gian thc là mt cài đặt ca mt hp đồng thi gian  
thc. Ta đưa ra đây mt ví dvhthng thành phn thi gian thc da trên mô hình  
đã được nghiên cu trên.  
Ta có ví dminh ha sau đây.  
Ở đây, ngưỡng tài nguyên đặc tính chrõ bnhthiết lp cho thành phn, và  
s.event chrõ tín hiu tlp lch định kì gi đến tiến trình. Ta sdng biu thc chính  
quy có nhãn rang buc vthi gian để biu din hành vi có ràng buc vthi gian ca  
tiến trình. Mô hình hthng thành phn này là mt bộ điu khin định kì thu thp tín  
hiu điu khin thông qua tác tda trên dliu chúng cm nhn được. Thi gian  
định kì ca vòng điu khin là 100ms.  
component Actuator1{  
provided feature int p1;  
inv p1 > 0;  
23  

Tải về để xem bản đầy đủ

pdf 41 trang yennguyen 26/05/2025 220
Bạn đang xem 30 trang mẫu của tài liệu "Khóa luận Mô hình hóa các hệ thống dựa trên các thành phần", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

File đính kèm:

  • pdfkhoa_luan_mo_hinh_hoa_cac_he_thong_dua_tren_cac_thanh_phan.pdf