TCIA Timed Concurrent Interface ˘-tæ-m¡t giao di»n t÷ìngUTP Unifying Theories of Program- Lþ thuy‚t hæp nh§t v• l“p LTL Linear Temporal Logic Logic thíi gian tuy‚n t‰nhTLTL Timed Linear
Trang 1Möc löc
1.1 °t v§n • 1
1.2 C¡c k‚t qu£ ch‰nh cıa lu“n ¡n 5
1.3 BŁ cöc cıa lu“n ¡n 8
2 Ki‚n thøc n•n t£ng 10 2.1 Cæng ngh» phƒn m•m düa tr¶n th nh phƒn 11
2.1.1 Giîi thi»u 11
2.1.2 C¡c cæng ngh» x¥y düng h» thŁng phƒn m•m düa tr¶n th nh phƒn hi»n nay 13
2.1.3 £m b£o ch§t l÷æng cho c¡c h» thŁng phƒn m•m düa tr¶n th nh phƒn 16
2.2 ˘-tæ-m¡t thíi gian 19
2.2.1 Giîi thi»u 20
2.2.2 ˘-tæ-m¡t thíi gian 21
2.2.3 Cæng cö UPPAAL 29
2.3 Lþ thuy‚t V‚t v øng döng trong °c t£ h» thŁng t÷ìng tranh 36
2.3.1 Giîi thi»u 36
2.3.2 V‚t Mazurkiewicz 37
2.3.3 ˘-tæ-m¡t o¡n nh“n ngæn ngœ V‚t 43
2.3.4 Logic tr¶n V‚t 46
2.4 K‚t lu“n 50
3 Lþ thuy‚t V‚t thíi gian 51 3.1 Giîi thi»u 52
3.2 V‚t thíi gian v æ-tæ-m¡t kho£ng b§t çng bº 53
3.2.1 V‚t thíi gian 54
3.2.2 ˘-tæ-m¡t kho£ng b§t çng bº 57
3.3 Lægic tr¶n V‚t thíi gian 61
3.4 C¡c nghi¶n cøu li¶n quan 65
3.5 K‚t lu“n 66
Trang 24 Mºt mæ h…nh cho h» thŁng t÷ìng tranh câ r ng buºc thíi gian
4.1 Giîi thi»u 67
4.2 Ki‚n tróc th nh phƒn v c¡c giao thøc t÷ìng t¡c 69
4.3 V‚t thíi gian v bi”u di„n cıa nâ 70
4.4 Mæ h…nh th nh phƒn 71
4.4.1 Thi‚t k‚ 72
4.4.2 Giao di»n v hæp çng 73
4.4.3 Gh†p nŁi c¡c hæp çng 75
4.4.4 Th nh phƒn 77
4.5 K‚t lu“n 81
5 Ph÷ìng ph¡p °c t£ c¡c th nh phƒn trong h» t÷ìng tranh câ r ng buºc thíi gian theo nguy¶n lþ thi‚t k‚ düa tr¶n giao di»n 83 5.1 Giîi thi»u 84
5.2 ˘-tæ-m¡t giao di»n t÷ìng tranh câ r ng buºc thíi gian 85
5.2.1 ành ngh¾a 86
5.2.2 Kh£ n«ng gh†p nŁi v T‰ch song song c¡c TCIA 88
5.2.3 L m màn c¡c th nh phƒn 92
5.3 C¡c nghi¶n cøu li¶n quan 94
5.4 K‚t lu“n 96
6 Mæ h…nh °c t£ v ki”m chøng c¡c h» ph¥n t¡n câ r ng buºc thíi gian düa tr¶n h» dàch chuy”n ph¥n t¡n 98 6.1 H» ph¥n t¡n câ r ng buºc thíi gian 99
6.2 Lægic thíi gian tr¶n c§u h…nh Foata 103
6.3 B i to¡n ki”m chøng 108
6.4 C¡c nghi¶n cøu li¶n quan 109
6.5 K‚t lu“n 110
7 K‚t lu“n 112 7.1 C¡c k‚t qu£ ⁄t ÷æc 112
7.2 H÷îng ph¡t tri”n ti‚p theo 114
Trang 3Danh s¡ch h…nh v‡
1.1 C§u tróc lu“n ¡n 8
2.1 Mæ h…nh ph¡t tri”n CBSE 12
2.2 Ki‚n tróc CBSE 14
2.3 çng hç l mºt h m thíi gian 21
2.4 Mæ h…nh i•u khi”n –n khæng câ thíi gian 22
2.5 Mæ h…nh i•u khi”n –n câ thíi gian 22
2.6 Mæ h…nh h» thŁng i•u khi”n thanh ch›n t u 29
2.7 Thuºc t‰nh Safety v Real-time Liveness cıa b i to¡n mæ h…nh h» i•u khi”n âng mð thanh ch›n t u 30
2.8 M⁄ng c¡c æ-tæ-m¡t thíi gian 31
2.9 ˘-tæ-m¡t t‰ch cıa hai æ-tæ-m¡t trong H…nh 2.8 32
2.10 V‰ dö mºt m⁄ng vîi c¡c vòng thíi gian khæng lçi 33
2.11 Ki‚n tróc h» thŁng cıa UPPAAL 35
2.12 ç thà phö thuºc cıa b£ng chœ c¡i phö thuºc 38
2.13 Mºt ç thà bi”u di„n cıa V‚t Mazurkiewicz 41
2.14 nh x⁄ wtot() cho tł abcba 42
2.15 Mºt æ-tæ-m¡t b§t çng bº 45
2.16 Þ ngh¾a cıa Until 48
3.1 Sì ç thø tü bº ph“n V‚t thíi gian ÷æc cho trong v‰ dö 3.1 55
3.2 Sì ç thø tü bº ph“n cıa mºt V‚t kho£ng ÷æc cho trong v‰ dö 3.2 57 3.3 Sì ç thø tü bº ph“n cıa V‚t kho£ng (T; J) v v V‚t thíi gian (T 0; ) thäa (T; J) 58
3.4 Mºt ADA vîi h m g¡n thíi gian J trong v‰ dö 3.3 59
3.5 Ngœ ngh¾a cıa to¡n tß EXI 63
3.6 Ngœ ngh¾a cıa to¡n tß UI 63
4.1 Ki‚n tróc h» thŁng 70
4.2 Thíi gian v thø tü cıa M code(m) v ph†p chi‚u cıa nâ tr¶n c¡c ph÷ìng thøc cıa B 80
5.1 Mºt TCIA P vîi JP(a) = [1; 2]; JP (b) = [2; 3]; JP(c) = [1; 3] (i) v ç thà chuy”n tr⁄ng th¡i t÷ìng øng (ii) 87
Trang 45.2 TCIA Q vîi JQ(b) = [2; 3]; JQ(c) = [1; 3]; JQ(d) = [2; 4] (i) v ç thà
chuy”n tr⁄ng th¡i t÷ìng øng (ii) l t÷ìng th‰ch vîi TCIA P trong
V‰ dö 5.1 895.3 K‚t qu£ ph†p t‰ch song song giœa P v Q trong H…nh 5.1 v 5.2 906.1 H» ph¥n t¡n câ y‚u tŁ thíi gian v c¡c thüc thi çng bº v b§tçng bº cıa nâ 1026.2 Mºt V‚t thíi gian 1046.3 C§u h…nh Foata cıa mºt V‚t thíi gian trong H…nh 6.2 1046.4 ç thà c§u h…nh Foata cıa V‚t thíi gian ÷æc ch¿ ra trong H…nh 6.2105
Trang 5Danh s¡ch b£ng
2.1 B£ng so s¡nh giœa c¡c cæng ngh» 17
2.2 B£ng chuy”n cıa æ-tæ-m¡t b§t çng bº cıa H…nh 2.15 45
5.1 B£ng chuy”n cıa TCIA P trong v‰ dö 5.1 87
5.2 B£ng chuy”n cıa TCIA Q trong v‰ dö 5.2 89
Trang 6TCIA Timed Concurrent Interface ˘-tæ-m¡t giao di»n t÷ìng
UTP Unifying Theories of Program- Lþ thuy‚t hæp nh§t v• l“p
LTL Linear Temporal Logic Logic thíi gian tuy‚n t‰nhTLTL Timed Linear Temporal Logic Logic thíi gian tuy‚n t‰nh
câ r ng buºc thíi gianrCOS Refinement of Component and L m màn th nh phƒn v
phƒnDCOM Distributed Component Ob- Mæ h…nh Łi t÷æng th nh
Bro-ker Architecture
OMG Object Management Group T“p o n qu£n lþ Łi
t÷ængCOTS Component Off The Shelf Th nh phƒn th÷ìng m⁄i
câ sfin
Trang 7Tł vi‚t t›t Tł gŁc Gi£i ngh¾a-T⁄m dàch
CCS Calculus of Communicating T‰nh to¡n c¡c h» thŁng
CTL Computational Tree Logic Logic c¥y t‰nh to¡nTCTL Timed Computational Tree Logic c¥y t‰nh to¡n câ
"tł" sang "V‚t"
"V‚t" sang "tł"
WCET Worst-case Execution Time Thíi gian thüc thi y‚u
nh§t
kho£ng sang thíi i”m
Trang 8Líi cam oan
Tæi xin cam oan ¥y l cæng tr…nh nghi¶n cøu do tæi thüc hi»n d÷îi sü h÷îngd¤n cıa TS °ng V«n H÷ng v PGS.TS Nguy„n Vi»t H t⁄i bº mæn Cæng ngh»Phƒn m•m, Khoa Cæng ngh» Thæng tin, Tr÷íng ⁄i håc Cæng ngh», ⁄i håcQuŁc gia H Nºi C¡c sŁ li»u v k‚t qu£ tr…nh b y trong lu“n ¡n l trung thüc,ch÷a ÷æc cæng bŁ bði b§t ký t¡c gi£ n o hay ð b§t ký cæng tr…nh n o kh¡c
T¡c gi£
Trang 9Líi c£m ìn
Lu“n ¡n n y ÷æc thüc hi»n t⁄i Tr÷íng ⁄i håc Cæng ngh», ⁄i håc QuŁc gia
H Nºi d÷îi sü h÷îng d¤n khoa håc cıa TS °ng V«n H÷ng v PGS.TS Nguy„nVi»t H Nghi¶n cøu sinh xin b y tä lÆng bi‚t ìn s¥u s›c tîi c¡c Thƒy v• ành h÷îngkhoa håc, sü quan t¥m, h÷îng d¤n v c¡c ch¿ b£o kàp thíi cho c¡c h÷îng nghi¶ncøu, t⁄o i•u ki»n thu“n læi trong suŁt qu¡ tr…nh nghi¶n cøu t⁄i tr÷íng
Nghi¶n cøu sinh công xin c£m ìn tîi c¡c th y cæ trong Bº mæn Cæng ngh»Phƒn m•m Trong qu¡ tr…nh thüc hi»n lu“n ¡n, nghi¶n cøu sinh ¢ nh“n ÷æc
sü gióp ï nhi»t t…nh v sü ºng vi¶n kàp thíi cıa c¡c thƒy cæ, c¡c nh khoa håc
¥y l nguçn ºng lüc lîn ” tæi câ th” ho n th nh lu“n ¡n
Nghi¶n cøu sinh xin tr¥n trång c£m ìn L¢nh ⁄o Tr÷íng ⁄i håc Cæng ngh», ⁄ihåc QuŁc Gia H Nºi ¢ t⁄o nhœng i•u ki»n tŁt nh§t ” nghi¶n cøu sinh câ ÷æcmæi tr÷íng nghi¶n cøu tŁt nh§t v ho n th nh ch÷ìng tr…nh nghi¶n cøu cıam…nh Xin ch¥n th nh c¡m ìn Khoa Cæng ngh» Thæng tin, PhÆng o t⁄o v ot⁄o sau ⁄i håc v c¡c nh khoa håc thuºc tr÷íng ⁄i håc Cæng ngh» công nh÷ c¡cnghi¶n cøu sinh kh¡c v• sü hØ træ tr¶n ph÷ìng di»n h nh ch‰nh, hæp t¡c câhi»u qu£ trong suŁt qu¡ tr…nh nghi¶n cøu khoa håc cıa m…nh
Nghi¶n cøu sinh xin gßi líi c£m ìn tîi Ban L¢nh ⁄o Tr÷íng ⁄i håc D¥n l“p H£iPhÆng, Khoa Cæng ngh» Thæng tin v c¡c b⁄n çng nghi»p v… ¢ t⁄o nhi•u i•uki»n thu“n læi hØ træ cho nghi¶n cøu sinh câ thíi gian v to n t¥m thüc hi»ntri”n khai • t i nghi¶n cøu cıa lu“n ¡n Nghi¶n cøu sinh công xin tr¥n trångc£m ìn c¡c nh khoa håc, t¡c gi£ c¡c cæng tr…nh cæng bŁ ¢ tr‰ch d¤n tronglu“n ¡n v… ¢ cung c§p nguçn t÷ li»u quþ b¡u, nhœng ki‚n thøc li¶n quantrong qu¡ tr…nh nghi¶n cøu ho n th nh lu“n ¡n
CuŁi còng l sü bi‚t ìn tîi BŁ Mµ, væ con, c¡c anh chà em trong gia …nh v nhœng ng÷íi b⁄n th¥n thi‚t ¢ li¶n töc ºng vi¶n ” duy tr… nghà lüc, sü c£m thæng, chia s· v• thíi gian, søc khäe v c¡c kh‰a c⁄nh cıa cuºc sŁng trong c£ qu¡ tr…nh ho n th nh lu“n ¡n
Trang 10Tâm t›t
Ch§t l÷æng dàch vö cıa mºt h» thŁng bao gçm thíi gian ti‚n h nh, t i nguy¶nti¶u thö v º tin c“y cıa dàch vö, trong â th… ch§t l÷æng dàch vö v• thíi gianang ÷æc quan t¥m nhi•u, th” hi»n r‹ng thíi gian cung øng dàch vö tŁt hìn R
ng buºc thíi gian trong c¡c h» thŁng th÷íng ÷æc ph¥n chia th nh hai lo⁄i
l r ng buºc thíi gian cøng (hard) v m•m (soft) Lu“n ¡n quan t¥m tîi c¡c r ngbuºc thíi gian cøng ” ch§t l÷æng dàch vö tŁt, c¡c ph÷ìng thøc trong h» thŁngcƒn ÷æc ti‚n h nh song song (t«ng tŁc º ¡p øng) n‚u câ th” v ph£i câ r ng buºcthíi gian rª r ng R ng buºc thíi gian th” hi»n thíi gian tŁi thi”u v tŁi a m ph÷ìngthøc cƒn ” câ th” cung c§p dàch vö, tøc l khæng ÷æc gåi ph÷ìng thøc qu¡ d y
1
, n‚u khæng câ th” s‡ g¥y ra t…nh tr⁄ng dàch vö khæng ¡p øng ÷æc Lu“n
¡n quan t¥m tîi ph÷ìng ph¡p °c t£ h» thŁng câ chøa ch§t l÷æng dàch vö v•thíi gian
Łi t÷æng nghi¶n cøu cıa lu“n ¡n l c¡c h» thŁng phƒn m•m düa tr¶n th nhphƒn câ t‰nh t÷ìng tranh v câ r ng buºc v• thíi gian T‰nh t÷ìng tranh l mºtthuºc t‰nh cıa h» thŁng trong â mºt sŁ dàch vö cıa h» thŁng ÷æc cho ph†ptruy c“p mºt c¡ch song song R ng buºc v• thíi gian trong lu“n ¡n l c¡c y¶u cƒuv• thíi gian thüc thi cıa c¡c h nh ºng trong h» thŁng, mØi h nh ºng s‡ ÷æc g›nvîi mºt kho£ng thíi gian cho vi»c thüc thi cıa nâ
Möc ‰ch cıa lu“n ¡n l ph¡t tri”n mºt ph÷ìng ph¡p h…nh thøc ” °c t£ v ki”mchøng c¡c giao di»n cıa c¡c th nh phƒn phƒn m•m câ t‰nh t÷ìng tranh v r ngbuºc v• thíi gian Sau â, lu“n ¡n ¡p döng ph÷ìng ph¡p ÷æc • xu§t v o vi»c °ct£, ph¥n t‰ch v ki”m chøng c¡c mæ h…nh kh¡c nhau cıa c¡c h» thŁng phƒnm•m düa tr¶n th nh phƒn
C¡c k‚t qu£ cıa lu“n ¡n ⁄t ÷æc nh÷ sau Lu“n ¡n • xu§t lþ thuy‚t V‚t thíi gian ”
hØ træ °c t£ c¡c r ng buºc v• thíi gian tr¶n c¡c h» thŁng t÷ìng tranh thíi gianthüc V‚t thíi gian l mºt sü mð rºng v• thíi gian cıa V‚t Mazurkiewicz b‹ng vi»c
bŒ sung v o V‚t Mazurkiewicz mºt h m g¡n nh¢n thíi gian Vîi vi»c mð rºng n
y, V‚t thíi gian câ th” d„ d ng °c t£ c¡c h nh vi cıa h» thŁng t÷ìng tranh câ r ngbuºc thíi gian Trong lþ thuy‚t n y, lu“n ¡n cÆn • xu§t kh¡i ni»m V‚t kho£ng V‚tkho£ng l c¡c V‚t Mazurkiewicz m mØi
1 M“t º cao tr¶n mºt ìn và thíi gian
Trang 11kþ hi»u (h nh ºng) trong b£ng chœ c¡i phö thuºc ÷æc g¡n mºt r ng buºc l mºt kho£ng thíi gian V‚t kho£ng ÷æc sß döng ” bi”u di„n c¡c r ng buºc thíi gian cıa c¡c h» thŁng m mØi h nh ºng cıa c¡c h» thŁng n y câ r ng buºc v• kho£ngthíi gian ho⁄t ºng v cung c§p dàch vö V‚t kho£ng v V‚t thíi gian câ mŁi quan h» vîi nhau, V‚t kho£ng l bi”u di„n ng›n gån cıa mºt t“p c¡c V‚t thíi gian Lu“n
¡n công ÷a v o æ-tæ-m¡t kho£ng b§t çng bº l m cæng cö o¡n nh“n lîp ngæn ngœ V‚t thíi gian ch‰nh quy ” sß döng trong c¡c b i to¡n v• ki”m chøng h» thŁng Mºt k‚t qu£ trong lu“n ¡n l b i to¡n ki”m tra t‰nh rØng cıa æ-tæ-m¡t kho£ng b§t çng bº l quy‚t ành ÷æc dò º phøc t⁄p khæng ph£i l a thøc ” hØ træ vi»c bi”u di„n °c t£ c¡c thuºc t‰nh cƒn ki”m chøng cıa c¡c h» thŁng, trong lþ thuy‚t V‚t thíi gian, lu“n ¡n ÷a v o lægic thíi gian thüc tuy‚n t‰nh °c t£thuºc t‰nh cıa c¡c V‚t thíi gian Lægic n y l mºt mð rºng v• thíi gian cıa lægic thíi gian tuy‚n t‰nh (LTL - Linear Temporal Logic) MŁi quan h» giœa æ-tæ-m¡t kho£ng b§t çng bº v lægic n y công ÷æc • c“p
v chøng minh Nh÷ v“y, vîi lþ thuy‚t V‚t thíi gian • xu§t, c¡c h» thŁng t÷ìngtranh câ r ng buºc thíi gian s‡ d„ d ng ÷æc °c t£ v ki”m chøng b‹ng c¡c æ-tæ-m¡t kho£ng b§t çng bº v c¡c cæng thøc cıa lægic thíi gian thüc tuy‚n t‰nh
” minh chøng cho t‰nh hi»u qu£ cıa ph÷ìng ph¡p ÷æc • xu§t, lu“n ¡n ¡pdöng ph÷ìng ph¡p n y v o vi»c °c t£, ph¥n t‰ch v ki”m chøng cho ba mæ h…nhøng döng thi‚t k‚ h» thŁng düa tr¶n th nh phƒn Vîi mØi mæ h…nh, c¡c h nh vicıa h» thŁng ÷æc °c t£ thæng qua c¡c V‚t thíi gian Nh÷ v“y, c¡c mæ h…nh n y
câ th” °c t£ ÷æc c¡c t‰nh ch§t t÷ìng tranh v r ng buºc v• thíi gian cıa c¡c h»thŁng cƒn ki”m chøng Thø nh§t, lu“n ¡n giîi thi»u mºt mæ h…nh h» thŁng t÷ìngtranh thíi gian düa tr¶n lþ thuy‚t rCOS (Refinement of Component and ObjectSystems) Nghi¶n cøu n y sß döng V‚t thíi gian trong °c t£ c¡c th” thøc giao di»n
th nh phƒn C¡c t‰nh to¡n v• ph†p gh†p nŁi, ph÷ìng ph¡p l m màn th nh phƒn
÷æc ÷a ra v chøng minh Thø hai, lu“n ¡n • xu§t mºt mæ h…nh thi‚t k‚ düa tr¶ngiao di»n cho c¡c h» t÷ìng tranh Trong mæ h…nh n y, lu“n ¡n sß döng æ-tæ-m¡t giao di»n t÷ìng tranh thíi gian ” °c t£ mØi th nh phƒn C¡c k‚t qu£ trongnghi¶n cøu ¢ ch¿ ra r‹ng ph÷ìng ph¡p mîi £m b£o t§t c£ c¡c y¶u cƒu cıa lþ thuy‚tthi‚t k‚ düa tr¶n giao di»n Thø ba, lu“n ¡n ¢ giîi thi»u mºt ph÷ìng ph¡p l mºt mæh…nh hØ træ °c t£ v ki”m chøng cho
h» thŁng ph¥n t¡n Þ t÷ðng cıa ph÷ìng ph¡p l mð rºng h» dàch chuy”n ph¥nt¡n, sß döng V‚t thíi gian ” °c t£ ngæn ngœ v ch¿ ra ra mŁi quan h» t÷ìng
÷ìng giœa V‚t thíi gian v h» dàch chuy”n ph¥n t¡n t÷ìng ÷ìng v• ngæn ngœ.C¡c k‚t qu£ trong lu“n ¡n ¢ ÷æc cæng bŁ qua c¡c cæng tr…nh ¢ ÷æc xu§tb£n v câ âng gâp phƒn n o v o vi»c nghi¶n cøu, °c t£ v ki”m chøng c¡c h»thŁng câ t‰nh t÷ìng tranh v r ng buºc v• thíi gian
Trang 12câ sfin MØi th nh phƒn ri¶ng l· l mºt gâi phƒn m•m, mºt dàch vö Web ho°cmºt mæ- un ÷æc âng gâi v chóng giao ti‚p vîi nhau thæng qua c¡c giao di»n.Tuy nhi¶n, ph÷ìng ph¡p n y v¤n cÆn mºt sŁ v§n • ÷æc °t ra [59].
Thø nh§t l l m sao £m b£o ÷æc c¡c th nh phƒn ho⁄t ºng ÷æc khi gh†p nŁi vîinhau? Thø hai l l m th‚ n o ” câ th” mð rºng c¡c th nh phƒn tł th nh phƒn câsfin, v quan trång nh§t l l m th‚ n o ” £m b£o ch§t l÷æng h» thŁng tøc l h»thŁng sau khi x¥y düng ph£i thäa m¢n c¡c r ng buºc ÷æc ÷a ra trong qu¡ tr…
nh °c t£ ban ƒu?
” gi£i quy‚t c¡c v§n • tr¶n, mºt trong c¡c gi£i ph¡p thæng döng v hi»u qu£
÷æc sß döng l ¡p döng c¡c ph÷ìng ph¡p h…nh thøc ¥y l ph÷ìng ph¡p sßdöng c¡c mæ h…nh to¡n håc cho vi»c °c t£, ph¡t tri”n v ki”m chøng c¡c h»thŁng phƒn m•m v phƒn cøng [8, 22, 44, 57] C¡ch ti‚p c“n n y °c bi»t quantrång Łi vîi c¡c h» thŁng câ y¶u cƒu ch§t l÷æng cao, chflng h⁄n h» thŁng i•ukhi”n lÆ ph£n øng h⁄t nh¥n hay i•u khi”n t¶n lßa, h» thŁng i•u khi”n cƒn g⁄t
ga t u,v.v Trong c¡c h» thŁng n y, v§n • an to n hay an ninh câ vai trÆ quantrång ” gâp phƒn £m b£o r‹ng qu¡ tr…nh ph¡t tri”n h» thŁng s‡ khæng câ lØi
Trang 13C¡c ph÷ìng ph¡p h…nh thøc °c bi»t hi»u qu£ t⁄i giai o⁄n ƒu cıa qu¡ tr…nh ph¡ttri”n (t⁄i giai o⁄n ph¥n t‰ch thi‚t k‚), nh÷ng công câ th” ÷æc sß döng cho c¡cgiai o⁄n sau cıa qu¡ tr…nh x¥y düng v ph¡t tri”n h» thŁng.
” mºt h» thŁng câ hi»u qu£ cao v• ch§t l÷æng dàch vö (ch§t l÷æng dàch vötŁt), c¡c ph÷ìng thøc cƒn ÷æc ti‚n h nh song song ” t«ng kh£ n«ng v tŁc º t‰nhto¡n (V‚t Mazurkiewicz ¢ °c t£ ÷æc °c t‰nh n y) M°t kh¡c, thüc t‚ l chóng takhæng n¶n gåi ph÷ìng thøc qu¡ d y , n‚u khæng câ th” s‡ g¥y ra t…nh tr⁄ngdàch vö khæng ¡p øng ÷æc Mºt v‰ dö nhä tr¶n thüc t‚ v• v§n • n y
m chóng ta hay g°p ph£i l thao t¡c mð t»p tin (ho°c ch÷ìng tr…nh) tr¶n m¡y t
‰nh (h» i•u h nh windows) Chóng ta nh§n óp chuºt ” ch⁄y mºt ch÷ìng tr…nh
n o â, n‚u ch÷a th§y ch÷ìng tr…nh thüc hi»n, nhi•u ng÷íi s‡ l⁄i nh§n
óp ” mð l¶n v thao t¡c n y ÷æc l°p l⁄i nhi•u lƒn cho tîi khi tr¶n m n h…nh hi”nthà ch÷ìng tr…nh cƒn mð Lóc n y s‡ câ nhi•u b£n sao cıa ch÷ìng tr…nhch⁄y l¶n (do nh§n nhi•u lƒn) v ng÷íi dòng l⁄i ph£i âng bît i (th÷íng ” l⁄i mºt b£n).Nguy¶n nh¥n cıa vi»c n y l ch÷ìng tr…nh â cƒn mºt kho£ng thíi gian ” thüchi»n nh÷ng ng÷íi dòng khæng bi‚t (khæng chí) m l m thao t¡c mð li¶n töc (gåich÷ìng tr…nh qu¡ "d y") Nh÷ v“y chóng ta cƒn câ r ng buºc v• thíi gian chomØi ph÷ìng thøc th” hi»n thíi gian tŁi thi”u v tŁi a ph÷ìng thøc cƒn ” thüc hi»n
v ¡p øng y¶u cƒu dàch vö Do â, th¶m v o c¡c r ng buºc thíi gian cho v‚tMazurkiewicz l hæp lþ v ph÷ìng ph¡p °c t£ h» thŁng sß döng v‚tMazurkiewicz mð rºng v• thíi gian l câ chøa ch§t l÷æng dàch vö (v• kh‰ac⁄nh thíi gian)
Łi t÷æng nghi¶n cøu trong lu“n ¡n l c¡c h» thŁng phƒn m•m düa tr¶n th
nh phƒn câ t‰nh t÷ìng tranh v câ r ng buºc thíi gian hay gåi mºt c¡ch ng›ngån l h» t÷ìng tranh câ r ng buºc (câ y‚u tŁ) thíi gian nh‹m t“n döng c¡cth‚ m⁄nh cıa c¡ch ti‚p c“n ph¡t tri”n phƒn m•m düa tr¶n th nh phƒn v c¡cph÷ìng ph¡p h…nh thøc trong ph¡t tri”n phƒn m•m Trong c¡c h» thŁng, t‰nht÷ìng tranh l mºt thuºc t‰nh cıa h» thŁng trong â mºt sŁ dàch vö cıa h»thŁng ÷æc cho ph†p truy c“p mºt c¡ch song song R ng buºc v• thíi giantrong lu“n ¡n l c¡c y¶u cƒu v• thíi gian thüc thi cıa c¡c h nh ºng trong h»thŁng, mØi h nh ºng s‡ ÷æc g›n vîi mºt kho£ng thíi gian cho vi»c thüc thi cıa
nâ Nh÷ v“y, h» t÷ìng tranh câ r ng buºc thíi gian trong lu“n ¡n n y l c¡c h»thŁng m c¡c h nh ºng câ th” thüc hi»n mºt c¡ch song song, câ sß döng dàch
vö cıa nhau v th¶m c¡c r ng buºc v• kho£ng thíi gian thüc hi»n cıa h nh
Trang 14ºng ¥y l mºt lîp b i to¡n nhä trong cæng ngh» ph¡t tri”n phƒn m•m düa tr¶n
th nh phƒn nh÷ng l⁄i câ øng döng r§t lîn v Æi häi º tin c“y cao Do â, möc ti¶ucıa lu“n ¡n l ph¡t tri”n mºt ph÷ìng ph¡p h…nh thøc ” °c t£ v ki”m chøng c¡c giao di»n cıa c¡c th nh phƒn phƒn m•m câ t‰nh t÷ìng tranh v
r ng buºc v• thíi gian Sau â, lu“n ¡n ¡p döng ph÷ìng ph¡p ÷æc • xu§t v o vi»c
°c t£, ph¥n t‰ch v ki”m chøng c¡c mæ h…nh kh¡c nhau cıa c¡c h» thŁngphƒn m•m düa tr¶n th nh phƒn
Hi»n nay ¢ câ mºt sŁ c¡c ph÷ìng ph¡p • xu§t ” gi£i quy‚t b i to¡n °c t£ v ki”mchøng h» thŁng nh÷ng hi‚m th§y ph÷ìng ph¡p n o °c t£ çng thíi t‰nh t÷ìngtranh v r ng buºc thíi gian C¡c ph÷ìng ph¡p chung th÷íng sß döng c¡c mæh…nh l c¡c h» dàch chuy”n tr⁄ng th¡i hay c¡c æ-tæ-m¡t ” °c t£ c¡c ho⁄t ºng cıamºt th nh phƒn (h» thŁng) Nhœng ph÷ìng ph¡p n y ¢ câ nhœng k‚t qu£ tŁt v
÷æc sß döng rºng r¢i nh÷ng khæng t“p trung v hØ træ v o °c t£ thíi giancông nh÷ t‰nh t÷ìng tranh m quan t¥m tîi vi»c l m th‚ n o ” câ th” mæ h…nh
÷æc h» thŁng nh÷ trong [56, 71, 72] Mºt sŁ ph÷ìng ph¡p kh¡c sß döng c¡c
mæ h…nh ng¤u nhi¶n [6], trong â c¡c nghi¶n cøu t“p trung v o vi»c ph¡t tri”n
lþ thuy‚t chuØi Markov, chuØi Markov thíi gian v mæ h…nh x¡c su§t nh‹m xß
lþ c¡c h» thŁng x¡c su§t (bao gçm c£ c¡c r ng buºc thíi gian v t÷ìng tranh)
¥y l mºt ki”u h» thŁng câ nhi•u øng döng lîn, tuy nhi¶n möc ti¶u cıa lu“n ¡nkhæng t“p trung v o c¡c h» thŁng n y
” °c t£ c¡c h» t÷ìng tranh, cæng cö ÷æc sß döng phŒ bi‚n l lþ thuy‚t V‚tMazurkiewicz [30, 55] C¡c kh¡i ni»m v• V‚t Mazurkiewicz (gåi t›t l V‚t) ¢ ÷æcgiîi thi»u ” mæ t£ h nh vi khæng li¶n töc cıa h» thŁng song song thæng quac¡c quan s¡t li¶n töc cıa nâ V‚t bi”u di„n qu¡ tr…nh çng thíi theo còng mºtc¡ch nh÷ c¡c chuØi bi”u di„n mºt c¡ch tuƒn tü Lþ thuy‚t v• V‚t ÷æc sß döngnh÷ mºt cæng cö ” suy lu“n v• quy tr…nh khæng li¶n töc; l mºt v§n • cıa thüct‚ sß döng lþ thuy‚t n y ng÷íi ta câ th” câ ÷æc mºt t‰nh to¡n cıa c¡c ti‚n tr…nht÷ìng tranh t÷ìng tü nh÷ nhœng c¡i câ sfin cho h» thŁng tuƒn tü Trong lþthuy‚t n y, c¡c kh¡i ni»m cì b£n ÷æc • xu§t l quan h» phö thuºc- ºc l“p, ngænngœ V‚t, æ-tæ-m¡t o¡n nh“n ngæn ngœ V‚t công nh÷ lægic thíi gian tuy‚n t
‰nh bi”u di„n V‚t ÷æc °c bi»t quan t¥m v câ nhi•u nghi¶n cøu hØ træ, mðrºng nh÷ trong [14, 31, 50, 68] i•u n y khflng ành lþ thuy‚t V‚t l cæng cö câhi»u qu£ trong °c t£ c¡c h» t÷ìng tranh bði t‰nh ìn gi£n,
Trang 15ti»n döng cıa ph÷ìng ph¡p Tuy nhi¶n cæng cö n y câ h⁄n ch‚ l khæng hØ træ
°c t£ c¡c r ng buºc thíi gian ¥y l mºt ki”u r ng buºc ÷æc y¶u cƒu trong nhi•u øng döng quan trång v phŒ bi‚n Nhœng h» câ r ng buºc n y ÷æc gåi l c¡c h» thíi gian thüc ho°c ìn gi£n hìn l c¡c h» thŁng câ r ng buºc thíi gian
Do â, nghi¶n cøu v• °c t£ c¡c h» câ c¡c r ng buºc thíi gian ÷æc nhi•u nhnghi¶n cøu quan t¥m xem x†t v • xu§t c¡c ph÷ìng ph¡p °c t£ v ki”m chøng.Hƒu h‚t c¡c • xu§t n y •u düa tr¶n lþ thuy‚t v• c¡c æ-tæ-m¡t thíi gian (TA -Timed Automata) [4, 11] Lþ thuy‚t n y ÷æc coi l cæng cö khæng th” thi‚u khinghi¶n cøu v• c¡c h» thŁng thíi gian thüc Ùng döng æ-tæ-m¡t thíi gian, ng÷íiph¡t tri”n h» thŁng s‡ mæ t£ mØi th nh phƒn b‹ng mºt æ-tæ-m¡t v h» thŁngs‡ l mºt m⁄ng c¡c æ-tæ-m¡t ÷æc gh†p nŁi vîi nhau theo mºt c¡ch thøc phòhæp C¡c k‚t qu£ v• lþ thuy‚t công nh÷ c¡c thu“t to¡n chøng minh ¢ ÷æcnghi¶n cøu v giîi thi»u Tuy nhi¶n, ph÷ìng ph¡p n y v c¡c mð rºng nh÷ trong[46, 35] l⁄i r§t khâ kh«n trong vi»c mæ t£ c¡c r ng buºc v• t‰nh t÷ìng tranh.Chi ti‚t v• lþ thuy‚t V‚t v æ-tæ-m¡t thíi gian s‡ ÷æc giîi thi»u trong ch÷ìng 2
¥y l hai lþ thuy‚t n•n t£ng trong nghi¶n cøu cıa lu“n ¡n n y Mºt sŁ nghi¶n cøukh¡c ¢ sß döng kh¡i ni»m V‚t thíi gian (timed traces) ” mæ t£ h nh vi h» thŁngnh÷ trong [12, 73] v mºt sŁ nghi¶n cøu li¶n quan Trong c¡c nghi¶n cøu n y,V‚t thíi gian ÷æc ành ngh¾a nh‹m gi£i c¡c b i to¡n v• ki”m chøng mæ h…nh(Model checking) nh÷ vi»c sß döng V‚t thíi gian ÷æc ành ngh¾a tr¶n t“p c¡cçng hç cıa æ-tæ-m¡t thíi gian nh‹m gi£i b i to¡n v• gi£m bòng nŒ khænggian tr⁄ng th¡i vòng trong æ-tæ-m¡t thíi gian ho°c gi£i c¡c b i to¡n ki”m chøngcho mæ h…nh m⁄ch b§t çng bº C¡c nghi¶n cøu n y kh¡c vîi nghi¶n cøu tronglu“n ¡n v• möc ti¶u Trong lu“n ¡n, möc ‰ch c¡c nghi¶n cøu l • xu§t ph÷ìngph¡p °c t£ c¡c giao di»n cıa c¡c th nh phƒn Tuy nhi¶n, i•u d„ th§y l c¡c nghi¶ncøu n y v nghi¶n cøu trong lu“n ¡n câ th” hØ træ nhau nh‹m ph¡t huy h‚t læi
‰ch m lþ thuy‚t V‚t mang l⁄i
Gƒn ¥y, trong [27], c¡c t¡c gi£ ¢ • xu§t mºt ph÷ìng ph¡p °c t£ v ki”m chøngc¡c giao di»n thíi gian thüc Trong nghi¶n cøu n y, h» thŁng ÷æc h…nh th nhbði gh†p nŁi c¡c giao di»n thíi gian thüc vîi nhau, mØi giao di»n bi”u di„n mºt
th nh phƒn h» thŁng Giao di»n thíi gian thüc l giao di»n vîi r ng buºc thíi gianli¶n quan giœa thíi i”m ƒu ra vîi thíi i”m ƒu v o T⁄i mºt thíi i”m trong qu¡ tr…nhthüc hi»n, mºt h nh vi cıa giao di»n theo mºt hæp çng ÷æc thüc hi»n vîi mæitr÷íng v• chøc n«ng cıa nâ công nh÷ thíi gian
Trang 16thüc hi»n ” £m b£o thüc hi»n hæp çng Hæp çng n y ÷æc x¡c ành nh÷ l mºt thi‚t k‚ theo thíi gian sß döng c¡c kþ hi»u trong UTP (Unifying Theories of Programming), v phö thuºc v o làch sß t‰nh to¡n cıa giao di»n Nghi¶n cøu
÷a ra mæ h…nh phö thuºc n y nh÷ l mºt chøc n«ng bº ph“n tł làch sß t‰nh to¡n cıa giao di»n tîi hæp çng theo thíi gian thüc C¡c t¡c gi£ công ÷a ra ph÷ìng ph¡p ” t⁄o giao di»n mîi tł vi»c gh†p nŁi c¡c giao di»n l⁄i vîi nhau, c¡ch l
m màn c¡c giao di»n công nh÷ ch¿ ra c¡ch bi”u di„n hœu h⁄n cho c¡c giao di»n Tuy nhi¶n, h⁄n ch‚ lîn nh§t trong ph÷ìng ph¡p n y l ch÷a hØ træ °c t£ t
‰nh t÷ìng tranh trong h» thŁng m ph÷ìng ph¡p ch¿ quan t¥m nhi•u tîi gi£i quy‚t mŁi quan h» ƒu v o ƒu ra cıa y¶u cƒu giao di»n Mºt øng döng kh¡c cıa V‚t thíi gian ÷æc • xu§t trong [23] ” gi£i b i to¡n ki”m chøng ºng C¡c t¡c gi£ sßdöng kh¡i ni»m hºp en ” mæ t£ c¡c mæ h…nh h» thŁng, trong â mºt hºp en l h» thŁng thüc v mºt hºp en l mæ h…nh cıa h» thŁng â Hai h» thŁng n y
÷æc thüc hi»n song song vîi còng i•u ki»n ƒu v o Mºt bº quan s¡t tü ºng s‡ nh“n c¡c ƒu ra v Łi s¡nh vîi nhau ngay tøc th… C¡c k‚t
qu£ nghi¶n cøu trong n y ¢ ÷a ra mºt thu“t to¡n cho bº quan s¡t Łi s¡nh hai V‚tthíi gian cıa hai mæ h…nh tr¶n
Xu§t ph¡t tł c¡c nh“n ành v nghi¶n cøu tr¶n, lu“n ¡n nghi¶n cøu v • xu§t mºtph÷ìng ph¡p hi»u qu£ trong vi»c °c t£ c¡c giao di»n th nh phƒn cıa c¡c h»thŁng phƒn m•m düa tr¶n th nh phƒn m câ c¡c r ng buºc v• thíi gian
v t‰nh t÷ìng tranh Lu“n ¡n t“p trung nghi¶n cøu b i to¡n v• °c t£ v ki”mchøng c¡c h» thŁng t÷ìng tranh, c¡c h» thŁng câ r ng buºc thíi gian công nh÷c¡c ph÷ìng ph¡p ¢ ÷æc sß döng ” gi£i b i to¡n â Tr¶n cì sð â, vîi Łi t÷ængnghi¶n cøu trong lu“n ¡n, lu“n ¡n t“p trung nghi¶n cøu c¡c ph÷ìng ph¡p tŁi ÷unh§t, xem x†t c¡c v§n • v nghi¶n cøu ¡p döng, mð rºng ” • xu§t ra ph÷ìngph¡p mîi, hi»u qu£ nh‹m ⁄t ÷æc möc ti¶u nghi¶n cøu Lu“n ¡n công ¡p döngph÷ìng ph¡p • xu§t v o mºt sŁ mæ h…nh thi‚t k‚ thæng döng ” minh chøngcho kh£ n«ng øng döng cıa ph÷ìng ph¡p
1.2 C¡c k‚t qu£ ch‰nh cıa lu“n ¡n
Vîi möc ‰ch nghi¶n cøu ph÷ìng ph¡p °c t£ v ki”m chøng c¡c giao di»n th nhphƒn cho c¡c h» thŁng düa tr¶n th nh phƒn câ chøa ch§t l÷æng dàch vö v t
‰nh t÷ìng tranh, lu“n ¡n ¢ ⁄t ÷æc c¡c k‚t qu£ ch‰nh nh÷ sau
Trang 17Lu“n ¡n • xu§t lþ thuy‚t V‚t thíi gian ” hØ træ °c t£ c¡c r ng buºc v• thíi giantr¶n c¡c h» thŁng t÷ìng tranh thíi gian thüc V‚t thíi gian l mºt sü mð rºng v•thíi gian cıa V‚t Mazurkiewicz b‹ng vi»c bŒ sung v o V‚t Mazurkiewicz mºt h
m g¡n nh¢n thíi gian Vîi vi»c mð rºng n y, V‚t thíi gian câ th” d„ d ng °c t£ c¡c
h nh vi cıa h» thŁng t÷ìng tranh câ r ng buºc thíi gian Trong lþ thuy‚t n y, lu“n
¡n cÆn • xu§t kh¡i ni»m V‚t kho£ng V‚t kho£ng l c¡c V‚t Mazurkiewicz m mØi
kþ hi»u (h nh ºng) trong b£ng chœ c¡i phö thuºc ÷æc g¡n mºt r ng buºc l mºtkho£ng thíi gian V‚t kho£ng ÷æc sß döng ” bi”u di„n c¡c r ng buºc thíi giancıa c¡c h» thŁng m mØi h nh ºng cıa c¡c h» thŁng n y câ r ng buºc v• kho£ngthíi gian ho⁄t ºng v cung c§p dàch vö V‚t kho£ng v V‚t thíi gian câ mŁi quanh» vîi nhau, V‚t kho£ng l bi”u di„n ng›n gån cıa mºt t“p c¡c V‚t thíi gian Lu“n
¡n công ÷a v o æ-tæ-m¡t kho£ng b§t çng bº l m cæng cö o¡n nh“n lîp ngænngœ V‚t thíi gian ch‰nh quy ” sß döng trong c¡c b i to¡n v• ki”m chøng h»thŁng Mºt k‚t qu£ trong lu“n ¡n l b i to¡n ki”m tra t‰nh rØng cıa æ-tæ-m¡tkho£ng b§t çng bº l quy‚t ành ÷æc dò º phøc t⁄p khæng ph£i l a thøc ” hØtræ vi»c bi”u di„n °c t£ c¡c thuºc t‰nh cƒn ki”m chøng cıa c¡c h» thŁng,trong lþ thuy‚t V‚t thíi gian, lu“n ¡n ÷a v o lægic thíi gian thüc tuy‚n t‰nh °c t£thuºc t‰nh cıa c¡c V‚t thíi gian Lægic n y l mºt mð rºng v• thíi gian cıa lægicthíi gian tuy‚n t‰nh (LTL
- Linear Temporal Logic) MŁi quan h» giœa æ-tæ-m¡t kho£ng b§t çng bº v lægic n y công ÷æc • c“p v chøng minh Nh÷ v“y, vîi lþ thuy‚t V‚t thíi gian
• xu§t, c¡c h» thŁng t÷ìng tranh câ r ng buºc thíi gian s‡ d„ d ng ÷æc °c t£ vki”m chøng b‹ng c¡c æ-tæ-m¡t kho£ng b§t çng bº v c¡c cæng thøc cıa lægicthíi gian thüc tuy‚n t‰nh
” minh chøng cho t‰nh hi»u qu£ cıa ph÷ìng ph¡p ÷æc • xu§t, lu“n ¡n ¡pdöng ph÷ìng ph¡p n y v o vi»c °c t£, ph¥n t‰ch v ki”m chøng cho ba mæ h…nhøng döng thi‚t k‚ h» thŁng düa tr¶n th nh phƒn Vîi mØi mæ h…nh, c¡c h nh
vi cıa h» thŁng ÷æc °c t£ thæng qua c¡c V‚t thíi gian Nh÷ v“y, c¡c mæ h…nh
n y câ th” °c t£ ÷æc c¡c t‰nh ch§t t÷ìng tranh v r ng buºc v• thíi gian cıa c¡ch» thŁng cƒn ki”m chøng, cö th”:
i. Lu“n ¡n sß döng c¡c V‚t thíi gian ” °c t£ c¡c giao thøc trong c¡c giao di»n
th nh phƒn nh‹m hØ træ °c t£ c¡c truy c“p çng thíi câ y‚u tŁ thíi gian tîi c¡cdàch vö cıa mºt th nh phƒn b‹ng vi»c mð rºng mæ h…nh rCOS [74] v•thíi gian Trong mæ h…nh n y, h» thŁng ÷æc x¥y düng bði c¡c th nh
Trang 18phƒn k‚t hæp vîi nhau Mºt hæp çng th nh phƒn ÷æc ành ngh¾a bao gçm c¡c °c t£ giao di»n, c¡c ph÷ìng thøc khði t⁄o gi¡ trà ban ƒu, c¡c °c t£ ph÷ìng thøc, c¡c r ng buºc b§t bi‚n v c¡c °c t£ giao thøc t÷ìng t¡c l c¡c V‚t thíi gian Khi â, mºt th nh phƒn ÷æc ành ngh¾a nh÷ l mºt sü thüc thi cıa mºt hæp çng C¡c k‚t qu£ ch¿ ra mæ h…nh trong nghi¶n cøu
n y hØ træ sü ph¥n bi»t giœa c¡c r ng buºc chøc n«ng v phi chøc n«ng,
v ki”m chøng h…nh thøc k‚t hæp cıa c¡c h» thŁng thíi gian düa tr¶n th nhphƒn Mæ h…nh n y công ch¿ ra thu“t to¡n t…m c¡c giao thøc cho c¡c th
nh phƒn k‚t hæp v b i to¡n mð rºng h» thŁng thæng qua c¡c ph†p to¡n l mmàn v gh†p nŁi c¡c th nh phƒn
ii Ti‚p theo, lu“n ¡n ÷a ra mºt mæ h…nh thi‚t k‚ h» thŁng düa tr¶n giao di»n[3] cho c¡c h» t÷ìng tranh câ r ng buºc thíi gian, trong â • xu§t kh¡i ni»mæ-tæ-m¡t giao di»n t÷ìng tranh câ r ng buºc thíi gian ˘-tæ-m¡t n y mºt h⁄nch‚ cıa æ-tæ-m¡t kho£ng b§t çng bº khi ch¿ quan t¥m c¡c h nh ºng ƒu v
o v ƒu ra cıa h» thŁng Trong mæ h…nh n y, mØi th nh phƒn cıa h»thŁng s‡ ÷æc °c t£ bði mºt æ-tæ-m¡t v h» thŁng s‡ l mºt t‰ch songsong c¡c æ-tæ-m¡t C¡c v§n • v• kh£ n«ng gh†p nŁi c¡c th nh phƒn, c¡chthøc gh†p nŁi c¡c th nh phƒn, mæi tr÷íng cho th nh phƒn v l m màn c¡c
th nh phƒn công ÷æc • xu§t Mæ h…nh n y công chøng minh vi»c £mb£o hai t‰nh ch§t cì b£n l thüc thi ºc l“p v thi‚t k‚ gia t«ng trong lþ thuy‚tv• thi‚t k‚ düa tr¶n giao di»n
iii CuŁi còng, lu“n ¡n công ch¿ ra ph÷ìng ph¡p • xu§t (lþ thuy‚t V‚t thíi gian)công câ kh£ n«ng ¡p döng mð rºng cho c¡c h» thŁng t÷ìng tü nh÷ c¡c h»ph¥n t¡n câ r ng buºc thíi gian b‹ng vi»c ÷a ra mæ h…nh h» thŁng ph¥nt¡n t÷ìng tranh câ y‚u tŁ thíi gian Nghi¶n cøu n y l mºt mð rºng v• thíigian cıa h» dàch chuy”n ph¥n t¡n [50] m ð â ngæn ngœ o¡n nh“n cıa h» lc¡c V‚t thíi gian Trong mæ h…nh n y, lu“n ¡n công ÷a ra mºt lægic thíigian tuy‚n t‰nh ÷æc th” hi»n trüc ti‚p tr¶n V‚t thíi gian theo c¡c c§u h…nhFoata ” °c t£ c¡c thuºc t‰nh lægic h» thŁng C¡c k‚t qu£ nghi¶n cøu ¢chøng minh v ch¿ ra r‹ng b i to¡n ki”m chøng h» thŁng l quy‚t ành ÷æc
Trang 19Mô hình hệ tương tranh
thời gian
Mô hình hệ phân tán thời gian
Mô hình dựa trên ô-tô-mát giao diện
Ch÷ìng 3 ÷a ra lþ thuy‚t V‚t thíi gian düa tr¶n V‚t Mazurkiewicz Trongch÷ìng n y, lu“n ¡n • xu§t mºt nghi¶n cøu v• mð rºng v• thíi gian tr¶n c¡c V‚tdüa tr¶n c¡c læi ‰ch quan trång cıa chóng trong vi»c °c t£ h» thŁng t÷ìngtranh Lu“n ¡n ph¡t tri”n th¶m v o â y‚u tŁ thíi gian vîi c¡c r ng buºc kho£ngcho c¡c h nh ºng cıa h» thŁng Vîi sü gia t«ng n y, V‚t Mazurkiewicz trð th nhV‚t thíi gian v phò hæp cho °c t£ c¡c th” thøc giao di»n cıa c¡c th nh phƒn.C¡c nghi¶n cøu trong lu“n ¡n cÆn ÷a ra mºt æ-tæ-m¡t o¡n nh“n ngæn ngœ
Trang 20V‚t thíi gian ÷æc gåi l æ-tæ-m¡t kho£ng b§t çng bº Ch÷ìng n y công ÷a ramºt lægic cho ph†p hØ træ c¡c °c t£ lægic cıa h» thŁng v ÷æc th” hi»n trücti‚p tr¶n V‚t thíi gian Nh÷ v“y V‚t thíi gian l ı ” °c t£ mºt lîp lîn c¡c b i to¡n øngdöng li¶n quan.
Ch÷ìng 4 tr…nh b y mºt øng döng cıa lþ thuy‚t V‚t trong vi»c °c t£ h»thŁng t÷ìng tranh câ y‚u tŁ thíi gian düa tr¶n vi»c sß döng V‚t thíi gian cho °ct£ c¡c th” thøc giao di»n th nh phƒn ÷æc mð rºng tł lþ thuy‚t rCOS Trongch÷ìng n y, chóng tæi ành ngh¾a l⁄i c¡c kh¡i ni»m v• thi‚t k‚, giao di»n, th nhphƒn, c¡c ph†p to¡n l m màn, gh†p nŁi cıa rCOS Nh÷ v“y, vîi vi»c l m
n y, lþ thuy‚t rCOS câ th” mð rºng ” °c t£ c¡c h» t÷ìng tranh câ y‚u tŁ thíi gian
Ch÷ìng 5 l mºt ph¡t tri”n cıa lþ thuy‚t V‚t tr¶n cì sð x¥y düng mºt ph÷ìngph¡p ph¡t tri”n h» t÷ìng tranh câ y‚u tŁ thíi gian Trong ch÷ìng n y chóng tæi
• xu§t mæ h…nh h» t÷ìng tranh câ y‚u tŁ thíi gian l mºt t“p c¡c th nh phƒnt÷ìng th‰ch ÷æc gh†p nŁi vîi nhau m mØi th nh phƒn l mºt th nh phƒn t÷ìngtranh câ y‚u tŁ thíi gian Lþ thuy‚t v• thi‚t k‚ düa tr¶n th nh phƒn cıa chóng tæidüa tr¶n lþ thuy‚t v• thi‚t k‚ düa tr¶n giao di»n cıa Thomat Henzinger v c¡ccºng sü ” l m i•u n y, chóng tæi ¢ h⁄n ch‚ v• æ-tæ-m¡t kho£ng b§t çng bº th
nh æ-tæ-m¡t giao di»n t÷ìng tranh thíi gian b§t çng bº ” °c t£ c¡c th nh phƒnt÷ìng tranh câ y‚u tŁ thíi gian C¡c ành ngh¾a v ph†p to¡n tr¶n th nh phƒn
÷æc chóng tæi • c“p ƒy ı trong ch÷ìng n y
Ch÷ìng 6 mºt lƒn nœa øng döng V‚t thíi gian v o trong vi»c °c t£ h» câ y‚u
tŁ thíi gian Trong ch÷ìng n y, lu“n ¡n • xu§t mð rºng h» ph¥n t¡n düa tr¶n vi»c
mæ h…nh b‹ng c¡c h» dàch truy”n ph¥n t¡n Chóng tæi ¢ sß döng V‚t thíigian nh÷ l ngæn ngœ cıa h» ph¥n t¡n b‹ng vi»c • xu§t h» dàch chuy”n thíigian ph¥n t¡n ” °c t£ h» thŁng v • xu§t lægic thíi gian tr¶n c¡c c§u h…nhFoata ” °c t£ c¡c thuºc t‰nh lægic cıa h» thŁng Chóng tæi công ch¿ ra thu“tto¡n ki”m chøng h» thŁng b‹ng c¡ch °c t£ tr¶n v chøng minh r‹ng b i to¡n ki”mchøng l quy‚t ành ÷æc
C¡c k‚t lu“n v• lu“n ¡n v c¡c nghi¶n cøu ti‚p theo cıa lu“n ¡n ÷æc chóng tæitr…nh b y trong ch÷ìng 7 C§u tróc tŒng quan c¡c phƒn trong lu“n ¡n ÷æcth” hi»n trong H…nh 1.1
Trang 21Ch֓ng 2
Ki‚n thøc n•n t£ng
Ch÷ìng n y giîi thi»u mºt sŁ ki‚n thøc n•n t£ng phöc vö cho c¡c nghi¶n cøuchuy¶n s¥u cıa lu“n ¡n theo möc ti¶u • ra C¡c ki‚n thøc n y bao gçm c¡c nºidung sau:
i C¡c kh¡i qu¡t v• cæng ngh» phƒn m•m düa tr¶n th nh phƒn Ki‚n thøc tŒngqu¡t n y ÷a ra c¡i nh…n cì b£n v to n di»n v• sü ph¡t tri”n cıa cæng ngh»phƒn m•m düa tr¶n th nh phƒn bao gçm c¡c cæng ngh» hi»n nay, v§n •
£m b£o ch§t l÷æng, c¡c mæ h…nh £m b£o công nh÷ c¡c cæng o⁄nquan trång trong qu¡ tr…nh ph¡t tri”n phƒn m•m Tł â, nh thi‚t k‚ s‡ bi‚t
÷æc vi»c £m b£o cæng o⁄n n o ra sao, th‚ n o v c¡i n o quy‚t ành ch‰nhcông nh÷ c¡c v§n • cƒn ph£i gi£i quy‚t
ii Ph÷ìng ph¡p phŒ bi‚n trong °c t£ c¡c th nh phƒn câ chøa c¡c r ng buºc thíi gian l sß döng cæng cö l lþ thuy‚t æ-tæ-m¡t thíi gian [4, 11] ¥y l cæng cö nŒi ti‚ng v ÷æc øng döng ho°c ÷æc coi l n•n t£ng trong nghi¶n cøu c¡c h» câ y‚u tŁ thíi gian
iii Lþ thuy‚t V‚t Mazurkiewicz [30, 68] ¥y l lþ thuy‚t ÷æc øng döng trong gi£iquy‚t b i to¡n °c t£ ÷æc c¡c t‰nh ch§t t÷ìng tranh cıa c¡c th nh phƒn C¡ck‚t qu£ trong lu“n ¡n s‡ düa tr¶n lþ thuy‚t n y ” ph¡t tri”n nh‹m ⁄t ÷æc möcti¶u • ra
Chi ti‚t c¡c nºi dung tr¶n ÷æc tr…nh b y trong c¡c phƒn d÷îi ¥y.
Trang 222.1 Cæng ngh» phƒn m•m düa tr¶n th nh phƒn
2.1.1 Giîi thi»u
H» thŁng phƒn m•m hi»n ⁄i ng y c ng trð n¶n quy mæ lîn, phøc t⁄p v khængd„ n›m b›t ki”m so¡t H» qu£ t§t y‚u l chi ph‰ ph¡t tri”n cao, n«ng su§t th§p,khæng th” qu£n lþ ch§t l÷æng phƒn m•m v câ nguy cì cao ” chuy”n sangcæng ngh» mîi [63] i•u n y ¢ d¤n tîi mºt nhu cƒu cho vi»c t…m ki‚m mºt mæh…nh ph¡t tri”n phƒn m•m mîi, hi»u qu£, v chi ph‰ ph£i ch«ng Mºt trongnhœng gi£i ph¡p høa hµn nh§t hi»n nay l ph¡t tri”n phƒn m•m düa tr¶nph÷ìng ph¡p ti‚p c“n düa tr¶n th nh phƒn C¡ch ti‚p c“n n y ÷æc düa tr¶n þt÷ðng r‹ng c¡c h» thŁng phƒn m•m câ th” ÷æc ph¡t tri”n b‹ng c¡ch chån c¡c th
nh phƒn câ sfin th‰ch hæp v sau â l›p r¡p chóng vîi mºt ki‚n tróc phƒn m•m
¢ ÷æc x¡c ành [25] Ph÷ìng ph¡p ti‚p c“n ph¡t tri”n phƒn m•m mîi n y l r§t kh¡cnhau tł c¡ch ti‚p c“n truy•n thŁng trong â c¡c h» thŁng phƒn m•m câ th” thüchi»n tł ƒu v ÷æc gåi l cæng ngh» phƒn m•m düa tr¶n th nh phƒn (CBSE
- Component-Based Software Engineering-CBSE) Nhœng th nh phƒnth÷ìng m⁄i câ sfin (Component Off-the-Shelf - COTS) câ th” ÷æc ph¡t tri”n bðic¡c nh ph¡t tri”n kh¡c nhau b‹ng c¡ch sß döng c¡c ngæn ngœ kh¡c nhau v c¡cn•n t£ng kh¡c nhau i•u n y câ th” ÷æc minh håa trong H…nh 2.1, c¡c th nhphƒn COTS câ th” ÷æc ki”m tra tł mºt kho l÷u trœ th nh phƒn, v l›p r¡p th nhmºt h» thŁng phƒn m•m theo möc ti¶u câ tr÷îc
Ph¡t tri”n phƒn m•m düa tr¶n th nh phƒn (Component-Based SoftwareDevelopment-CBSD) câ th” l m gi£m ¡ng k” chi ph‰ ph¡t tri”n v thíi gian ” ÷a
ra thà tr÷íng Nâ công gâp phƒn c£i thi»n vi»c b£o tr…, t«ng º tin c“y v ch§tl÷æng tŒng th” cıa h» thŁng phƒn m•m [36] C¡ch ti‚p c“n n y khængch¿ nh“n ÷æc sü quan t¥m trong cºng çng nghi¶n cøu m cÆn trong ng nhcæng nghi»p phƒn m•m Chu ký sŁng v mæ h…nh kÿ thu“t phƒn m•m cıaCBSD câ nhi•u kh¡c nhau so vîi c¡c kÿ thu“t truy•n thŁng ¥y l nhœng cængvi»c m CBSE ÷æc t“p trung nghi¶n cøu v ph¡t tri”n
Cho ‚n nay, c¡c cæng ngh» th nh phƒn phƒn m•m l mºt cæng ngh» mîinŒi, nâ v¤n cÆn nhi•u v§n • tr÷îc khi ÷a chóng ‚n ÷æc sü ph¡t tri”n ho nthi»n Khæng câ ti¶u chu'n ho°c h÷îng d¤n n o trong l¾nh vüc mîi n y, v th“mch‰ khæng câ mºt ành ngh¾a thŁng nh§t v• "th nh phƒn" Tuy nhi¶n, mºt th
nh phƒn câ ba t‰nh n«ng ch‰nh[15]:
Trang 23i Mºt th nh phƒn l mºt phƒnºc l“p v câ th” thay th‚ cıa mºt h» thŁng thüc hi»n mºt chøc n«ng mºt c¡ch rª r ng,
ii Mºt th nh phƒn ho⁄t ºng trong bŁi c£nh cıa mºt ki‚n tróc ÷æc x¡c ành rª, v
iii Mºt th nh phƒn giao ti‚p vîi c¡c th nh phƒn kh¡c bði giao di»n cıa nâ
Thành phần 1
.
1http://www4.ibm.com/software/ad/sanfrancisco
Trang 24gçm c¡c th nh phƒn cì b£n m giao ti‚p vîi c¡c h» thŁng i•u h nh cì b£n v phƒncøng.
C¡c cæng ngh» düa tr¶n th nh phƒn hi»n t⁄i ¢ ÷æc sß döng ” thüc hi»n x¥ydüng c¡c h» thŁng phƒn m•m kh¡c nhau, chflng h⁄n nh÷ phƒn m•m th nhphƒn ph¥n t¡n h÷îng Łi t÷æng [72] v c¡c øng döng Web cho doanh nghi»p[64] Ngo i ra cÆn câ mºt sŁ s£n ph'm th÷ìng m⁄i ÷æc tham gia v o cuºc c¡chm⁄ng th nh phƒn phƒn m•m, chflng h⁄n nh÷ BEA, Microsoft, IBM v Sun Mºt v
‰ dö nŒi b“t l dü ¡n cıa IBM SanFrancisco Nâ cung c§p mºt cì sð h⁄ tƒng
Łi t÷æng ph¥n t¡n câ th” t¡i sß döng v thi‚t l“p mºt c¡ch phong phó cıa th nhphƒn øng döng cho c¡c nh ph¡t tri”n øng döng2
2.1.2 C¡c cæng ngh» x¥y düng h» thŁng phƒn m•m düa tr¶n th nh phƒn
hi»n nay
Mºt sŁ ph÷ìng ph¡p ti‚p c“n, nh÷ Visual Basic Controls (VBX), c¡c i•u khi”nActiveX, c¡c th÷ vi»n lîp, JavaBeans, ÷a ra c¡ch ti‚p c“n v• ngæn ngœ li¶nquan cıa chóng nh÷ Visual Basic, C++, Java, v c¡c cæng cö hØ træ ” chia s·
v ph¥n t¡n c¡c phƒn øng döng Nh÷ng t§t c£ c¡c ph÷ìng ph¡p ti‚p c“n •u düa
v o mºt sŁ dàch vö cì b£n ” cung c§p c¡c thæng tin giao ti‚p v phŁi hæp cƒnthi‚t cho c¡c øng döng Cì sð h⁄ tƒng cıa c¡c th nh phƒn ( æi khi ÷æc gåi l mºt
mæ h…nh th nh phƒn) ho⁄t ºng nh÷ "h» thŁng Łng n÷îc" cho ph†p giao ti‚pgiœa c¡c th nh phƒn [15] Trong sŁ c¡c cì sð h⁄ tƒng cæng ngh» th nh phƒn
¢ ÷æc ph¡t tri”n, câ ba nh ph¡t tri”n ¢ trð th nh chu'n l : OMG CORBA,Microsoft Component Object Model (COM) v Distributed COM (DCOM), vcıa Sun JavaBeans v Enterprise JavaBeans D÷îi ¥y s‡ giîi thi»u tŒng quanv• ba cæng ngh» n y
CORBA
CORBA (vi‚t t›t cıa Common Object Request Broker Architecture) l mºt chu'n
mð cho kh£ n«ng t÷ìng t¡c øng döng ÷æc ành ngh¾a v ÷æc hØ træ bði t“p o
n qu£n lþ Łi t÷æng (Object Management Group - OMG), mºt tŒ chøc cıahìn 400 nh cung c§p phƒn m•m v ng÷íi sß döng3 Nâi mºt c¡ch ìn gi£n,
2 http://www4.ibm.com/software/ad/sanfrancisco
3http://www.omg.org/corba/whatiscorba.html
Trang 25÷æc nìi Łi t÷æng ÷æc gåi, ngæn ngœ l“p tr…nh, h» i•u h nh cıa nâ, ho°cb§t ký kh‰a c⁄nh kh¡c cıa h» thŁng khæng li¶n quan ‚n giao di»n B‹ng c¡ch
n y, ORB cung c§p kh£ n«ng t÷ìng t¡c giœa c¡c øng döng tr¶n c¡c m¡y kh¡cnhau trong mæi tr÷íng ph¥n t¡n khæng çng nh§t v k‚t nŁi mºt c¡ch li¶n töc vîic¡c h» thŁng nhi•u Łi t÷æng
CORBA ÷æc sß döng rºng r¢i trong h» thŁng ph¥n t¡n h÷îng Łi t÷æng [72]bao gçm c¡c h» thŁng phƒn m•m düa tr¶n th nh phƒn bði v… nâ cung c§pmºt ch÷ìng tr…nh ph¥n t¡n phò hæp v mæi tr÷íng câ y‚u tŁ thíi gian tr¶n c¡cngæn ngœ l“p tr…nh, h» i•u h nh, v c¡c m⁄ng ph¥n t¡n phŒ bi‚n
Trang 26COM v DCOM
÷æc giîi thi»u v o n«m 1993, COM l mæ h…nh Łi t÷æng th nh phƒn(Compo-nent Object Model-COM) l mºt ki‚n tróc chung cho phƒn m•m th nhphƒn4 Nâ cung c§p phö thuºc n•n t£ng, düa tr¶n Windows v Windows NT, vc¡c øng döng düa tr¶n th nh phƒn vîi ngæn ngœ ºc l“p COM ành ngh¾a th
nh phƒn v m¡y kh¡ch cıa chóng t÷ìng t¡c nh÷ th‚ n o Sü t÷ìng t¡c n y ÷æcành ngh¾a sao cho c¡c m¡y kh¡ch v c¡c th nh phƒn câ th” k‚t nŁi m khængcƒn b§t cø th nh phƒn h» thŁng trung gian n o °c bi»t, COM cung c§p mºtti¶u chu'n r‹ng c¡c th nh phƒn v c¡c m¡y kh¡ch cıa chóng ph£i tu¥n theo ” £mb£o kh£ n«ng t÷ìng t¡c ºng i•u n y cho ph†p c“p nh“t phƒn m•m trüc tuy‚n v
sß döng l⁄i phƒn m•m qua ngæn ngœ [56]
Nh÷ mºt phƒn mð rºng cıa COM, COM ph¥n t¡n (Distributed COM DCOM), l mºt giao thøc cho ph†p c¡c th nh phƒn phƒn m•m giao ti‚p trüc ti‚pqua m⁄ng mºt c¡ch ¡ng tin c“y, an to n v hi»u qu£ DCOM ÷æc thi‚t k‚ ” sßdöng tr¶n nhi•u v“n chuy”n m⁄ng, bao gçm c£ giao thøc Internet nh÷ HTTP.Khi mºt m¡y kh¡ch v th nh phƒn cıa nâ c÷ tró tr¶n c¡c m¡y kh¡c nhau, DCOMch¿ ìn gi£n l thay th‚ c¡c thæng tin li¶n l⁄c li¶n ti‚n tr…nh àa ph÷ìng vîi mºtgiao thøc m⁄ng C£ m¡y kh¡ch v th nh phƒn •u khæng th§y ÷æc nhœng thay
-Œi cıa c¡c k‚t nŁi v“t lþ
Mæ h…nh th nh phƒn düa tr¶n Java cıa Sun
Mæ h…nh th nh phƒn düa tr¶n Java cıa Sun (Sun Microsystems’s JavaBeans)bao gçm hai phƒn: phƒn JavaBeans ” ph¡t tri”n th nh phƒn ph‰a m¡y kh¡ch
v Enterprise JavaBeans (EJB) cho ph¡t tri”n th nh phƒn ph‰a m¡y chı Ki‚ntróc th nh phƒn JavaBeans hØ træ c¡c øng döng cıa nhi•u n•n t£ng, công nh÷
c¡c th nh phƒn t¡i sß döng, c¡c th nh phƒn ph‰a m¡y kh¡ch v m¡y chı5 N•n t£ng Java cung c§p mºt gi£i ph¡p hi»u qu£ cho t‰nh di ºng v c¡c v§n •
b£o m“t thæng qua vi»c sß döng m¢ Java bytecode v kh¡i ni»m v• Java applets
¡ng tin c“y v khæng ¡ng tin c“y Java cung c§p mºt cæng ngh» t‰ch hæpchung, thu“n læi cho ph¡t tri”n øng döng doanh nghi»p, bao gçm c¡c m¡y chınhi•u nh cung c§p li¶n i•u h nh (interoperating across multivendor servers);
4 http://www.microsoft.com/isapi
5http://developer.java.sun.com/developer
Trang 27giao dàch v ngœ c£nh an ninh; cung c§p dàch vö m¡y kh¡ch a ngæn ngœ, v
hØ træ ActiveX thæng qua cƒu nŁi DCOM/CORBA
JavaBeans v EJB mð rºng t§t c£ c¡c th‚ m⁄nh vŁn câ cıa Java bao gçm c£t‰nh di ºng v an ninh v o l¾nh vüc ph¡t tri”n düa tr¶n th nh phƒn T‰nh diºng, b£o m“t v º tin c“y cıa Java r§t th‰ch hæp cho ph¡t tri”n c¡c Łi t÷ængm¡y chı m⁄nh m‡ ºc l“p vîi h» i•u h nh, m¡y chı Web v m¡y chı qu£n lþ cì sð
dœ li»u
So s¡nh giœa c¡c cæng ngh» hi»n nay
So s¡nh giœa c¡c cæng ngh» th nh phƒn hi»n t⁄i câ th” ÷æc t…m th§y trongnhi•u t i li»u kh¡c nhau — ¥y lu“n ¡n ch¿ ÷a ra tâm t›t c¡c t‰nh n«ng kh¡c nhau
v ÷æc ch¿ ra trong trong B£ng 2.1 theo t i li»u [18] C¡c ti¶u ch‰ ÷æc ÷a ra sos¡nh trong giœa c¡c cæng ngh» bao gçm: Mæi tr÷íng ph¡t tri”n, chu'n giao di»n,kh£ n«ng t÷ìng th‰ch v t‰nh di ºng, sßa Œi v duy tr…, c¡c dàch vö cung c§p,n•n t£ng phö thuºc, ngæn ngœ phö thuºc v th‚ m⁄nh øng döng
VÆng íi cıa c¡c h» thŁng phƒn m•m düa tr¶n th nh phƒn
H» thŁng phƒn m•m th nh phƒn ÷æc ph¡t tri”n b‹ng c¡ch lüa chån c¡c th nhphƒn kh¡c nhau v l›p r¡p chóng l⁄i vîi nhau chø khæng ph£i l l“p tr…nh mºt h»thŁng tŒng th” tł ƒu, do â vÆng íi cıa c¡c h» thŁng phƒn m•m düa tr¶n th nhphƒn l kh¡c so vîi c¡c h» thŁng phƒn m•m truy•n thŁng VÆng íi cıa h» thŁngphƒn m•m düa tr¶n th nh phƒn câ th” ÷æc tâm t›t gçm c¡c b÷îc nh÷ sau [25]:
i Ph¥n t‰ch c¡c y¶u cƒu,
ii Lüa chån ki‚n tróc phƒn m•m, x¥y düng, ph¥n t‰ch, v ¡nh gi¡,
iii X¡c ành v tòy bi‚n th nh phƒn,
iv T‰ch hæp h» thŁng,
v Ki”m thß h» thŁng, v
vi B£o tr… phƒn m•m
Trang 28B£ng 2.1: B£ng so s¡nh giœa c¡c cæng ngh»
Mæi tr÷íng k†m ph¡t tri”n mîi nŒi ÷æc hØ træ bði
cıa mæi tr÷íng ph¡ttri”n m⁄nh m‡ mæitr÷íng
Chu'n giao Khæng Düa tr¶n COM, Java Chu'n c¡c t÷ìng t¡c
Kh£ n«ng °c bi»t m⁄nh Di ºng theo ngæn Khæng câ b§t kýt÷ìng th‰ch trong chu'n ngœ Java nh÷ng kh¡i ni»m v• chu'n
v t‰nh di hâa c¡c cam khæng t÷ìng th‰ch møc nguçn cıa
nh÷ng khæng
di ºngSßa Œi v CORBA IDL Khæng li¶n quan ‚n Microsoft IDL choduy tr… ” ành ngh¾a c¡c file IDL ành vi»c ành ngh¾a c¡c
c¡c giao di»n ngh¾a c¡c giao di»n giao di»n th nh
th nh phƒn, giœa c¡c th nh phƒn phƒn, cƒn sßa Œicƒn sßa Œi bŒ v container.D„ bŒ sung v b£o tr…sung v b£o tr… d ng thay Œi v
cho i»n to¡n m¡y kh¡ch chung øng döng m¡y t‰nh
truy•n thŁng
Trang 29C¡c ki‚n tróc cıa phƒn m•m ành ngh¾a mºt h» thŁng v• kh‰a c⁄nh t‰nhto¡n c¡c th nh phƒn v t÷ìng t¡c giœa c¡c th nh phƒn T“p trung v o k‚t hæp vl›p r¡p c¡c th nh phƒn câ kh£ n«ng ÷æc ph¡t tri”n ri¶ng bi»t, v th“m ch‰ l ºcl“p X¡c ành th nh phƒn, tuý bi‚n v t‰ch hæp l mºt ho⁄t ºng quan trång trongvÆng íi cıa c¡c h» thŁng düa tr¶n th nh phƒn Nâ bao gçm hai phƒn ch‰nh:Mºt l ÷îc l÷æng th nh phƒn COTS øng cß vi¶n düa tr¶n c¡c y¶u cƒu chøcn«ng v ch§t l÷æng s‡ ÷æc sß döng ” ¡nh gi¡ th nh phƒn â, v hai l tuý bi‚n cıanhœng th nh phƒn øng cß COTS n¶n ÷æc sßa Œi tr÷îc khi ÷æc t‰ch hæp
v o h» thŁng phƒn m•m th nh phƒn mîi T‰ch hæp l ” t⁄o ra c¡c quy‚t ànhquan trång v• vi»c l m th‚ n o ” cung c§p thæng tin li¶n l⁄c v phŁi hæp giœac¡c th nh phƒn kh¡c nhau cıa h» thŁng phƒn m•m möc ti¶u
” b£o £m ch§t l÷æng cho c¡c h» thŁng phƒn m•m düa tr¶n th nh phƒn,n¶n ch¿ ra vÆng íi v c¡c ho⁄t ºng ch‰nh cıa nâ ” ph¥n t‰ch c¡c th nh phƒn
v ⁄t ÷æc h» thŁng phƒn m•m ch§t l÷æng cao düa tr¶n th nh phƒn C¡c cæng ngh» b£o £m ch§t l÷æng cho c¡c h» thŁng phƒn m•m düa tr¶n th nh phƒn ¢ xu§t hi»n sîm, nh÷ c¡c °c t‰nh cö th” cıa c¡c h» thŁng th nh phƒn kh¡c vîi c¡c h» thŁng truy•n thŁng th‚ n o M°c dò mºt sŁ b£o £m ch§t l÷æng
kÿ thu“t chflng h⁄n nh÷ mæ h…nh ph¥n t‰ch º tin c“y cho c¡c h» thŁng phƒn m•m ph¥n t¡n v ph÷ìng ph¡p ti‚p c“n düa tr¶n th nh phƒn cho cæng ngh» phƒn m•m ¢ ÷æc nghi¶n cøu, nh÷ng v¤n cÆn nhœng chu'n v h÷îng d¤n khæng rª r ng cho c¡c h» thŁng phƒn m•m th nh phƒn düa tr¶n th nh phƒn Vi»c x¡c ành c¡c °c i”m b£o £m ch§t l÷æng, còng vîi c¡c mæ h…nh, cæng cö
v c¡c sŁ li»u, l c¡c nhu cƒu c§p thi‚t
°c t‰nh ch§t l÷æng cıa c¡c th nh phƒn
Khi nhi•u cæng vi»c v¤n ch÷a ÷æc thüc hi»n ” ph¡t tri”n phƒn m•m düa tr¶n
th nh phƒn, c¥u häi v c¥u tr£ líi cho cæng ngh» b£o £m ch§t l÷æng ph¡t tri”nphƒn m•m düa tr¶n th nh phƒn ph£i ch¿ ra hai phƒn khæng th” t¡ch ríi: L mth‚ n o ” x¡c nh“n ch§t l÷æng cıa mºt th nh phƒn? V l m th‚ n o ” x¡c nh“n ch§tl÷æng cıa c¡c h» thŁng phƒn m•m düa tr¶n c¡c th nh phƒn? ” tr£ líi c¡c c¥uhäi, c¡c mæ h…nh cƒn ÷æc thóc 'y ” x¡c ành ki”m so¡t ch§t l÷æng tŒng th”cıa c¡c th nh phƒn v c¡c h» thŁng sŁ li»u ÷æc t…m th§y ” o k‰ch th÷îc, ºphøc t⁄p, kh£ n«ng t¡i sß döng v º tin c“y cıa c¡c th nh phƒn v c¡c h» thŁng vcæng cö cƒn ÷æc quy‚t ành ki”m tra c¡c th nh phƒn v h» thŁng hi»n câ
Trang 30” ¡nh gi¡ mºt th nh phƒn, chóng ta ph£i x¡c ành l m th‚ n o ” chøng nh“n ch§t l÷æng cıa th nh phƒn C¡c °c t‰nh ch§t l÷æng cıa c¡c th nh phƒn
l n•n t£ng ” £m b£o ch§t l÷æng cıa c¡c th nh phƒn, v do â l n•n t£ng ” £mb£o ch§t l÷æng cıa to n bº h» thŁng phƒn m•m düa tr¶n th nh phƒn Nhi•unghi¶n cøu ¢ • xu§t mºt danh s¡ch c¡c °c i”m v• ch§t l÷æng cıa c¡c th nhphƒn gçm: chøc n«ng; giao di»n; kh£ n«ng sß döng; kh£ n«ng ki”m thß; b£otr…; v º tin c“y C¡c th÷îc o phƒn m•m câ th” ÷æc • xu§t ” o ⁄c º phøc t⁄p cıaphƒn m•m v £m b£o ch§t l÷æng cıa nâ C¡c sŁ ph†p o th÷íng ÷æc sß döng ”ph¥n lo⁄i c¡c th nh phƒn bao gçm:
i K‰ch cï phƒn m•m: i•u n y £nh h÷ðng ‚n chi ph‰ t¡i sß döng v ch§tl÷æng N‚u nâ qu¡ nhä, læi ‰ch s‡ khæng v÷æt qu¡ chi ph‰ qu£n lþ
nâ N‚u nâ l qu¡ lîn, r§t khâ ” câ th” câ ch§t l÷æng cao,
ii Sü phøc t⁄p: i•u n y công £nh h÷ðng ‚n chi ph‰ t¡i sß döng v ch§t
l÷æng Mºt th nh phƒn qu¡ tƒm th÷íng l khæng câ læi nhu“n ” t¡i sß döngtrong khi mºt th nh phƒn qu¡ phøc t⁄p khâ câ th” k‚ thła ch§t l÷æng cao,iii Tƒn sŁ t¡i sß döng: SŁ l÷æng c¡c sü cŁ m mºt th nh phƒn ÷æc sß döng
l mºt ch¿ sŁ vœng ch›c cıa t‰nh hœu döng cıa nâ, v
iv º tin c“y: X¡c su§t cıa ho⁄t ºng th§t b⁄i cıa mºt th nh phƒn theo c¡c kàch b£n ho⁄t ºng
2.2 ˘-tæ-m¡t thíi gian
Trong c¡c h» thŁng ríi r⁄c, c¡c dàch chuy”n cıa h» thŁng ÷æc xem x†t nh÷ l c¡c y‚u tŁ nguy¶n tß (atomic primitives), c¡c sü ki»n x£y ra ngay l“p tøc æi khi chóng ta muŁn mºt møc trłu t÷æng hìn, chóng ta muŁn °c t£ mºt c¡ch thüc t‚ r‹ng c¡c sü ki»n khi ho⁄t ºng s‡ ti¶u tŁn mºt l÷æng thíi gian nh§t ành n
o â Mºt c¡ch thøc ” th§y ÷æc l gi£ sß c¡c ti‚n tr…nh l li¶n töc (v‰ dö nh÷ h
nh ºng Œ ƒy n÷îc v o t†t üng n÷îc) v ta ¡p döng mºt møc trłu t÷æng ríi r⁄c: H
nh ºng Œ n÷îc v o t†t m§t t ìn và thíi gian C¡c h nh
vi ríi r⁄c ÷æc xem nh÷ l chuØi c¡c sü ki»n m khæng câ thæng tin o ⁄c v• thíigian, ch¿ câ thø tü ho°c thø tü bº ph“n giœa c¡c sü ki»n Mºt h nh vi thíi gianli¶n quan tîi vi»c nhóng chuØi n y v o tröc thíi gian v ta câ kh¡i ni»m tł thíigian (timed words -TW) ” °c t£ c¡c h» thŁng câ thíi gian nh÷ v“y, nhi•u mæh…nh thíi gian ¢ ÷æc • xu§t nh÷ Petri Nets, ⁄i sŁ t‰nh to¡n ti‚n tr…nh thíigian, v c¡c lægic câ y‚u tŁ thíi gian (timed logics) [48, 67] Lþ thuy‚t
Trang 31v• æ-tæ-m¡t thíi gian (Timed Automata - TA) ÷æc • xu§t bði Alur v Dill trong [4] ¢
mð ra mºt h÷îng ti‚p c“n mîi vîi nhi•u søc m⁄nh v c¡c ph¡t tri”n cæng cö °c t£ vîi
TA ÷æc coi l cŁt lªi cıa ngæn ngœ °c t£ [10] TA cung c§p mºt n•n t£ng cì b£ncho c¡c ph÷ìng ph¡p h…nh thøc trong vi»c °c t£ v ki”m chøng t‰nh óng ›n cıac¡c h» thŁng thíi gian thüc (Real-time systems - RTS) Trong phƒn n y, chóngtæi giîi thi»u nhœng n†t cì b£n v• lþ thuy‚t v• æ-tæ-m¡t thíi gian, c¡c k‚t qu£ li¶nquan v cæng cö ki”m chøng mæ h…nh UPPAAL[11]
cŒ i”n ” °c t£ c¡c h» thŁng câ y‚u tŁ thíi gian K” tł â, c¡c lþ thuy‚t v• æ-tæ-m¡tthíi gian trð th nh mºt l¾nh vüc chuy¶n s¥u cıa c¡c nghi¶n cøu khoa håc m¡yt‰nh ” minh chøng cho t‰nh hi»u qu£ v kh£ n«ng øng döng cıa lþ thuy‚t n
y, r§t nhi•u c¡c nghi¶n cøu v• lþ thuy‚t ¢ ph¡t tri”n mð rºng, i s¥u v ¢ x¥y düngcæng cö hØ træ l UPPAAL[11]
Mºt æ-tæ-m¡t thíi gian l mºt m¡y hœu h⁄n tr⁄ng th¡i ÷æc trang bà mºt bº c¡cçng hç çng hç l mºt h m g¡n c¡c gi¡ trà thüc dòng ” ghi l⁄i thíi gian træi quagiœa c¡c sü ki»n T§t c£ c¡c çng hç ÷æc çng bº hâa, â l , t§t c£ •u ÷æc gi£ành ho⁄t ºng ð còng mºt tŁc º Sü gi¡n o⁄n câ th” x£y ra khi qu¡ tr…nh dàchchuy”n ÷æc thüc hi»n Trong tr÷íng hæp n y, çng hç ÷æc ph†p ÷æc thi‚t l“pl⁄i mºt gi¡ trà mîi v trð th nh gi¡ trà ban ƒu cıa c¡c giai o⁄n li¶n töc ti‚p theo
Qu¡ tr…nh chuy”n Œi câ li¶n quan vîi mºt ho°c mºt sŁ c¡c r ng buºc
(guard) l mºt và tł tr¶n c¡c çng hç R ng buºc guard £m b£o i•u ki»n khi mºt qu¡ tr…nh dàch chuy”n câ th” ÷æc thüc hi»n C¡c h nh vi cıa mºt çng hç nh÷
l mºt h m cıa thíi gian ÷æc minh håa trong H…nh 2.3 Trong â, gi¡ trà çng hç
x t⁄i mºt thíi i”m t l mºt sŁ thüc khæng ¥m, x câ th” ÷æc °t l⁄i gi¡ trà b‹ng 0 (reset) ð b§t ký thíi i”m n o phö thuºc v o y¶u cƒu b i to¡n cö th” C¡c r ng buºc v• thíi gian cıa h» thŁng (guard) s‡ ÷æc °c t£ thæng qua i•u ki»n r ng buºc tr¶n c¡c gi¡ trà çng hç n y
Trang 32H…nh 2.3: çng hç l mºt h m thíi gian2.2.2 ˘-tæ-m¡t thíi gian
Trong möc n y, tr÷îc ti¶n lu“n ¡n giîi thi»u tŒng quan v• æ-tæ-m¡t thíi gianbao gçm c¡c kh¡i ni»m, ho⁄t ºng cıa TA v mæ h…nh m⁄ng c¡c TA Ti‚p theo,lu“n ¡n giîi thi»u v• b i to¡n ki”m chøng mæ h…nh b‹ng TA công nh÷ c¡c k‚tqu£ li¶n quan TA k‰ch ho⁄t c¡c dàch chuy”n tł và tr‰ n y sang và tr‰ kh¡ckhi c¡c i•u ki»n v• thíi gian ÷æc thäa m¢n Nhœng dàch chuy”n n y câ th”ho°c thüc hi»n ƒu v o ho°c ƒu ra tr¶n c¡c k¶nh m s‡ çng bº vîi c¡c TA kh¡c l mvi»c song song ho°c chóng thüc hi»n c¡c h nh ºng b¶n trong m khæng th”hi»n ra b¶n ngo i Chóng ta b›t ƒu vîi vi»c xem x†t v‰ dö sau
V‰ dö 2.1 ( i•u khi”n –n giao thæng) Chóng ta muŁn mæ h…nh mºt bº i•ukhi”n –n giao thæng vîi c¡ch thøc ho⁄t ºng nh÷ sau: Tr÷îc ti¶n, –n
ð tr⁄ng th¡i t›t (off) Khi cæng t›c ÷æc nh§n mºt lƒn, –n chuy”n sang tr⁄ng th¡i
mí N‚u cæng t›c ÷æc nh§n hai lƒn li¶n ti‚p ( ı nhanh) th… –n s¡ng Ng÷æcl⁄i, n‚u cæng t›c nh§n mºt lƒn th… ch¿ sau mºt kho£ng thíi gian n o â, –n trðl⁄i tr⁄ng th¡i t›t
Trang 33H…nh 2.4: Mæ h…nh i•u khi”n –n khæng câ thíi gian
Mºt v§n • vîi mæ h…nh n y l c¡c kh¡i ni»m li¶n quan tîi thíi gian l "nhanh" v
"sau mºt kho£ng thíi gian" khæng th” ÷æc bi”u di„n Thay v o â, æ-tæ-m¡tk‚ thła t‰nh khæng ìn ành trong tr⁄ng th¡i dim: khi cæng t›c ÷æc b“t, nâ s‡chuy”n sang ho°c s¡ng ho°c t›t
TA câ th” l m ÷æc vi»c n y b‹ng vi»c mð rºng æ-tæ-m¡t vîi c¡c çng hç ” th”hi»n thíi gian li¶n töc Ban ƒu, c¡c çng hç khði t⁄o vîi gi¡ trà 0 Sau â, c¡cgi¡ trà çng hç t«ng l¶n mºt c¡ch li¶n töc C¡c dàch chuy”n câ th” phö thuºc v ogi¡ trà hi»n thíi cıa çng hç C¡c gi¡ trà cıa çng hç công câ th” ÷æc thi‚t l“p l⁄i v•
0 Łi vîi bº i•u khi”n –n, chóng ta câ th” l§y mºt çng hç x v mð rºng æ-tæ-m¡ttheo TA cıa K.G Larsen[49]: Khi cæng t›c ÷æc b“t lƒn ƒu ti¶n, çng hç ÷æcthi‚t l“p v• gi¡ trà 0 b‹ng h m g¡n x := 0 Ch¿ khi nh§n lƒn thø hai trong vÆng
2 gi¥y sau lƒn mºt th… –n chuy”n sang tr⁄ng th¡i s¡ng N‚u thíi gian lîn hìn 2gi¥y, –n chuy”n sang tr⁄ng th¡i t›t ¥y công
l tr÷íng hæp khi –n ð tr⁄ng th¡i s¡ng Chó þ r‹ng c¡c i•u ki»n khæng giao nhau v• thíi gian ¢ l m chuy”n t‰nh khæng ìn ành t⁄i tr⁄ng th¡i cıa –n
H…nh 2.5: Mæ h…nh i•u khi”n –n câ thíi gian
Trang 34Tr÷îc khi ành ngh¾a TA, chóng ta x†t mºt sŁ ành ngh¾a tr÷îc m li¶n quantîi ành ngh¾a TA trong phƒn d÷îi ¥y.
Cho S l mºt t“p, gåi S l t“p c¡c chuØi hœu h⁄n c¡c th nh phƒn trong S Chóng
ta quan t¥m mi•n thíi gian T l t“p Q+ c¡c sŁ hœu t¿ d÷ìng ho°c R+ c¡c sŁ thücd÷ìng v l t“p c¡c h nh ºng (actions) Mºt chuØi thíi gian tr¶n T l mºt chuØihœu h⁄n khæng gi£m = (ti)1 i p 2 T Khi â ta câ ành ngh¾a v• tł thíi gian(timed words) nh÷ sau
ành ngh¾a 2.1 (Tł thíi gian) Mºt tł gian gian ! = (ai; ti)1 i p l mºt
th nh phƒn cıa ( T) , tøc l ! 2 ( T) v th÷íng ÷æc bi”u di„n d÷îid⁄ng ( ; ) vîi l mºt tł tr¶n * v l mºt chuØi thíi gian tr¶n T v º d icıa tł v l t÷ìng ÷ìng nhau, tøc l = (ai)1 i p; = (ti)1 i p.
V‰ dö 2.2 Cho = fa; b; c; dg, ! = f(a; 1)(b; 3)(a; 5)(d; 6)(c; 8)g l mºt tł thíi giantr¶n b£ng chœ c¡i Ta công câ th” vi‚t ! = ( ; ) vîi = fabadcg; = f13568g:
” câ th” °c t£ v t‰nh to¡n c¡c r ng buºc v• thíi gian, TA sß döng t“p c¡c bi‚n
÷æc gåi l çng hç Gåi X l t“p hœu h⁄n c¡c bi‚n çng hç, mºt gi¡ trà çng hç tr¶n X
l mºt ¡nh x⁄ : X ! T g¡n mØi çng hç mºt gi¡ trà thíi gian T“p t§t c£ c¡c gi¡ tràçng hç tr¶n X ÷æc kþ hi»u l TX Gi¡ trà khði ƒu cho çng hç l ¡nh x⁄ 0 : X ! T vîi
0 (x) = 0 Łi vîi t§t c£ c¡c x 2 X Vîi mØi t 2 T chóng ta ành ngh¾a ( + t)(x) = (x) + t; 8x 2 X l gi¡ trà cıa çng hç x, tøc l (x) sau t ìn và thíi gian Cho t“p con Y cıa X
(Y X), ph†p thi‚t l“p l⁄i gi¡ trà (Reset) çng hç, kþ hi»u [Y := 0], thi‚t l“p l⁄i gi¡ tràcıa c¡c çng hç trong Y b‹ng 0 ÷æc x¡c ành nh÷ sau:
Trang 35ành ngh¾a 2.2 (R ng buºc çng hç) T“p c¡c r ng buºc tr¶n t“p çng hç X ÷æc
cjx y cj ^ vîi x; y 2 X; c 2 Z; 2 f<; ; =; >; g Mºt r ng buºc çng hç k (th÷íng ÷æc gåi lk-bounded) l mºt r ng buºc çng hç m li¶n quan ch¿ tîi h‹ng sŁ c trong kho£ng -k
N‚u l mºt gi¡ trà çng hç (mºt ¡nh x⁄ gi¡ trà cıa çng hç), g l mºt r ng buºc çng hç
÷æc x¡c ành nh÷ tr¶n, chóng ta vi‚t j= g khi thäa c¡c gi¡ trà r ng buºc çng hç g.Chóng ta nâi thäa x c (t÷ìng tü x y c) b§t cø khi n o (x) c (t÷ìng tü x y c).Chóng ta kþ hi»u kgk = f 2 TX j j= gg
ành ngh¾a h…nh thøc cıa mºt ˘-tæ-m¡t thíi gian
B¥y gií, chóng ta câ th” ành ngh¾a mºt c¡ch h…nh thøc v• æ-tæ-m¡t thíigian nh÷ d÷îi ¥y
ành ngh¾a 2.3 (˘-tæ-m¡t thíi gian) Mºt æ-tæ-m¡t thíi gian (TA) tr¶n T
l mºt bº A = (Q; Q0; X; ; I; E; F ), vîi
l mºt t“p hœu h⁄n c¡c h nh ºng,
Q l t“p hœu h⁄n c¡c tr⁄ng th¡i cıa æ-tæ-m¡t,
Trang 36kþ hi»u h nh ºng, a 2 , (q; )! (q; + ) n‚u j= I(q) v + j= I(q),
run) n‚u qn2 F Mºt tł thíi gian ! ÷æc gåi l ÷æc o¡n nh“n bði TA A n‚u tçn t⁄i mºtthüc thi ch§p nh“n tr¶n A V ta câ ành ngh¾a v• ngæn ngœ thíi gian cıa æ-tæ-m¡t thíi gian nh÷ sau
ành ngh¾a 2.4 (Ngæn ngœ ÷æc o¡n nh“n bði TA) T“p t§t c£ c¡c tł thíi gian
÷æc o¡n nh“n bði æ-tæ-m¡t thíi gian A ÷æc k‰ hi»u l L(A) l ngæn ngœ ÷æco¡n nh“n bði æ-tæ-m¡t thíi gian A Ngæn ngœ thíi gian L ÷æc gåi l ch‰nhquy n‚u tçn t⁄i mºt TA A o¡n nh“n ngæn ngœ L, tøc l L(A) = L
Theo [4] ta câ k‚t qu£ v• t‰nh âng cıa ngæn ngœ vîi c¡c ph†p to¡n hæp vgiao v ÷æc th” hi»n qua ành lþ sau
ành lþ 2.1 Ngæn ngœ ch‰nh quy thíi gian l âng Łi vîi ph†p to¡n hæp v giao
M⁄ng c¡c TA
H» thŁng thíi gian thüc (Real-Timed System - RTS) chı y‚u bao gçm mºt sŁc¡c th nh phƒn gh†p nŁi song song vîi nhau v t÷ìng t¡c vîi c¡c th nh phƒn kh¡ctheo thíi gian ” mæ h…nh nhœng h» thŁng nh÷ v“y, chóng ta xem x†t m⁄ngc¡c TA ÷æc x¥y düng tł c¡c TA ìn l· b‹ng hai ph†p to¡n k‚t hæp l gh†p songsong v ph†p h⁄n ch‚ (restriction) B§t ký kh¡i ni»m n o cıa ph†p k‚t nŁi songsong cıa c¡c ti‚n tr…nh câ th” ÷æc chuy”n v• ph†p gh†p nŁi c¡c TA
— ¥y, chóng ta chån thi‚t l“p t‰nh to¡n giao ti‚p h» thŁng cıa R Milner(Calculus of Communicating Systems - CCS) bði v… nâ cho ph†p ÷æc thücthi trong bº ki”m chøng UPPAAL m chóng ta sß döng cho ki”m chøng tü ºngc¡c thuºc t‰nh cıa TA
Þ t÷ðng cıa CCS l c¡c ti‚n tr…nh song song ho°c trong tr÷íng hæp cıa TA,giao ti‚p mºt mºt v câ b›t tay CuŁi còng, c¡c h nh ºng bŒ sung a! v a? cıa haiæ-tæ-m¡t câ th” çng bº ” n›m l§y h nh ºng b¶n trong , nh÷ng chóng công
÷æc thüc hi»n mºt c¡ch ri¶ng bi»t ” ÷æc chu'n bà cho c¡c çng bº sau n y i•u
n y l quan trång cho gh†p nŁi song song ” trð th nh mºt ph†p to¡n
Trang 37hai ngæi tr¶n TA ” thüc thi çng bº k¶nh, a ph£i ÷æc khai b¡o nh÷ l k¶nh cöc
bº (local)
ành ngh¾a 2.5 (Gh†p nŁi song song) Ph†p k‚t nŁi song song, kþ hi»u l k
cıa hai TA Ai= (Qi; Q0i; Xi;i; Ii; Ei; Fi)ji = 1; 2 vîi t“p c¡c çng hç khæng giao
H» qu£ 2.1 Ph†p gh†p nŁi song song c¡c TA câ t‰nh ch§t giao ho¡n v k‚t hæp
Mºt v‰ dö v• h» thŁng ÷æc gh†p nŁi bði hai TA ÷æc ch¿ ra trong H…nh 2.8.
B i to¡n ki”m chøng
Trong nghi¶n cøu v• æ-tæ-m¡t, b i to¡n ki”m tra t‰nh rØng cıa ngæn ngœo¡n nh“n l mºt b i to¡n quan trång v th÷íng d nh ÷æc nhi•u sü t“p trung nghi¶ncøu cıa c¡c nh khoa håc Trong phƒn n y, chóng ta s‡ t…m hi”u c¡c nghi¶ncøu v• thuºc t‰nh quan trång li¶n quan tîi c¥u häi v• t‰nh rØng l t‰nh ‚n
÷æc cıa tr⁄ng th¡i, chóng ta công ch¿ ra r‹ng, Łi vîi TA, kh£ n«ng ‚n ÷æc cıac¡c c§u h…nh l quy‚t ành ÷æc
Tr⁄ng th¡i ‚n ÷æc: Chóng ta x†t b i to¡n sau:
Cho: mºt TA A v mºt tr⁄ng th¡i i•u khi”n l
C¥u häi: Li»u l câ th” ÷æc dàch chuy”n tîi ÷æc khæng? tøc l li»u câ tçn t⁄imºt d¢y dàch chuy”n c§u h…nh b›t ƒu tł (q0; 0) ‚n (l; n) trong h» dàch chuy”ntr⁄ng th¡i ÷æc ành ngh¾a b¶n tr¶n
” gi£i b i to¡n n y, c¡ch ìn gi£n l x¥y düng h» dàch chuy”n tr⁄ng th¡i Sau
â, ¡p döng c¡c thu“t to¡n t…m ÷íng ” t…m ÷íng i tł mºt ¿nh n y tîi mºt ¿nh kh¡ctr¶n h» dàch chuy”n tr⁄ng th¡i Tuy nhi¶n, v§n • ¡ng quan t¥m
Trang 38ð ¥y l sŁ c¡c c§u h…nh l væ h⁄n do c¡c gi¡ trà cıa çng hç l sŁ thüc V do â, b
i to¡n khæng th” quy‚t ành ÷æc trong tr÷íng hæp n y Tuy nhi¶n, công theo
R Alur v D Dill trong [4], b i to¡n ki”m tra t‰nh rØng cıa ngæn ngœ o¡n nh“nbði mºt TA l quy‚t ành ÷æc ” gi£i quy‚t v§n • væ h⁄n cıa c§u h…nh, R Alur v
D Dill ¢ ÷a ra kh¡i ni»m v x¥y düng mºt c§u tróc vòng t÷ìng ÷ìng m ð â câ süt÷ìng ÷ìng v• m°t ngæn ngœ giœa dàch chuy”n vòng v h» dàch chuy”n c§u h…nh Chóng ta s‡ xem x†t tŒng quan v• þ t÷ðng v thu“t to¡n cıa R Alur v
D Dill nh÷ sau:
X¥y düng c¡c vòng: Do h» dàch chuy”n tr⁄ng th¡i cıa TA l væ h⁄n tr⁄ng th¡in¶n þ t÷ðng ÷æc ÷a ra l chia khæng gian tr⁄ng th¡i n y th nh c¡c vòng t÷ìng
÷ìng, phò hæp ˘-tæ-m¡t ÷æc chia n y l hœu h⁄n tr⁄ng th¡i Quan h» t÷ìng
÷ìng n y ÷æc gåi l t÷ìng ÷ìng vòng v ÷æc ành ngh¾a nh÷ sau:
ành ngh¾a 2.6 ( T÷ìng ÷ìng vòng) Hai tr⁄ng th¡i ÷æc gåi l t÷ìng ÷ìng vòng n‚u chóng còng thäa m¢n c¡c r ng buºc çng hç
Cho A l mºt TA Gi£ sß t§t c£ c¡c r ng buºc trong A l sŁ nguy¶n v gåi
cx l h‹ng sŁ lîn nh§t m çng hç x câ ÷æc Gåi ; 2 T iX l c¡c gi¡ trà çng
hç, chóng ta gåi t÷ìng ÷ìng vòng vîi , k‰ hi»u n‚u:
Vîi vi»c chia vòng t÷ìng ÷ìng tr¶n TA, ta câ k‚t qu£ v• t‰nh quy‚t ành cıaæ-tæ-m¡t ÷æc th” hi»n qua ành lþ sau theo [4]
ành lþ 2.2 B i to¡n v• tr⁄ng th¡i tîi ÷æc cıa æ-tæ-m¡t thíi gian l quy‚t ành
־c
H» qu£ sau câ ÷æc tł vi»c suy d¤n trüc ti‚p tł ành lþ tr¶n
H» qu£ 2.2 B i to¡n ki”m tra t‰nh rØng cıa ngæn ngœ cıa mºt æ-tæ-m¡t thíigian l quy‚t ành ÷æc
Trang 39cho sü ki»n tr⁄ng th¡i chí, tøc l t u khæng ÷æc v o cßa C¡c t u giao ti‚p vîi bº i•u
(ngo i) ¡nh d§u nhœng sü ki»n v o ra cıa o n t u qua ÷íng s›t C¡c t u ÷æc y¶ucƒu ” gßi t‰n hi»u ti‚p c“n ‰t nh§t 2 phót tr÷îc khi nâ qua ÷íng Do â, sü ch“m
˘-tæ-m¡t thíi gian mæ t£ cŒng l GATE Sü ki»n n y °t l
th¡i s2 Nâ giao ti‚p vîi bº i•u khi”n thæng qua c¡c t‰n hi»u lower (th§p hìn)
1 phót, v t‰n hi»u raise trong vÆng 1-2 phót C¡c cŒng câ th” giœ tr⁄ng th¡i
idl (chí) t⁄i tr⁄ng th¡i s0 ho°c s2 m¢i m¢i
˘-tæ-m¡t thíi gian mæ t£ bº i•u khi”n l CONTROLLER C¡c sü ki»n t“p hæp
l approach; exit; raise; lower; idC Bº i•u khi”n chí ð tr⁄ng th¡i s0 B§t cø khi n o
nâ nh“n ÷æc t‰n hi»u approach tł t u, nâ ph£n hçi b‹ng c¡ch gßi c¡c t‰n hi»u
lower ‚n cŒng Thíi gian ¡p øng l 1 phót B§t cø khi n o nâ nh“n ÷æc t‰n hi»u exit, nâ ph£n hçi vîi mºt t‰n hi»u raise ‚n cŒng trong vÆng 1 phót Khi
â, h» thŁng s‡ l mºt gh†p nŁi song song cıa ba æ-tæ-m¡t TRAIN, GATE v CONTROLLER, tøc l TRAIN||GATE||CONTROLLER V‰ dö v• h» thŁng i•u khi”n thanh ch›n ÷íng t u ÷æc minh håa trong H…nh 2.6, ¥y l v‰ dö i”n h…
nh cho minh håa m⁄ng c¡c TA v ÷æc tr‰ch d¤n tł t i li»u [4]
C¡c thuºc t‰nh cƒn ki”m chøng bao gçm thuºc t‰nh an to n (safety) v liveness cıa h» thŁng v ÷æc bi”u di„n bði c¡c æ-tæ-m¡t trong H…nh 2.7
1 Safety: B§t cø khi n o t u v o b¶n trong, cŒng n¶n ÷æc âng l⁄i
2 Real-time Liveness: C¡c cßa khæng bao gií âng l¥u hìn 10 phót
Trang 40H…nh 2.6: Mæ h…nh h» thŁng i•u khi”n thanh ch›n t u
Do â, ‚n nay, TA trð th nh mºt cæng cö hi»u qu£ cho vi»c °c t£ v ki”mchøng c¡c h» thŁng câ y‚u tŁ thíi gian m k‚t qu£ cıa nâ l sü ra íi cıa mºt sŁ bºki”m chøng mæ h…nh câ °c t£ b‹ng TA m i”n h…nh l bº ki”m chøng mæ h…
nh UPPAAL B¶n c⁄nh â, b i to¡n ki”m chøng cho °c t£ b‹ng TA v¤n ang ÷æcnghi¶n cøu nh‹m tŁi ÷u c¡c thu“t to¡n ¢ câ tr÷îc Phƒn ti‚p theo lu“n ¡n s‡ giîithi»u nhœng °c i”m cì b£n nh§t v• cæng cö ki”m chøng UPPAAL
2.2.3 Cæng cö UPPAAL
Trong thíi gian v i n«m trð l⁄i ¥y, câ mºt sŁ cæng cö ÷æc ph¡t tri”n düa tr¶n TA ”
mæ h…nh v ki”m chøng c¡c h» thŁng câ y‚u tŁ thíi gian (RTS), ¡ng chó þ nh§t l
UPPAAL, ¥y l mºt bº ki”m chøng mæ h…nh cho vi»c mæ h…nh, mæ phäng vki”m chøng c¡c æ-tæ-m¡t thíi gian Cæng cö n y ÷æc giîi thi»u ƒu
6http://www-verimag.imag.fr/DIST-TOOLS/TEMPO/kronos/