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

Checking timing constraints in software system using AOP

51 406 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 51
Dung lượng 14,74 MB

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

Nội dung

TRUNG TÂM ÎHÔNG Tin THU VIÊN.

Trang 1

Cheeking tim in g con strain ts in software

sy s te m using A O P

D o T u a n A n h

Faculty of Information Technology

College of Technology Vietnam National University, Hanoi

DAI HOC QUÔC GIA HÀ NÔI

TRUNG TÂM THÔNG TIN THU VIÊN

i ' L o / 6 (n -

Trang 2

-r a b l e o f C o n t e n t s

1.1 M o t i v a t i o n 1

1 2 O b j e c t i v e s 2

1 3 C o n t r i b u t i o n s 3

1.4 O u t l i n e o f t h e t h e s i s 3

B a c k g r o u n d 5 2.1 U M L a n d U M L T i m i n g D i a g r a m 5

2 1 1 O v e r v i e w o f U M L 5

2 1 2 U M L T i m i n g D i a g r a m 6

2 2 A s p e c t O r i e n t e d P r o g r a m m i n g a n d A s p e c t ) 8

2 2 1 A s p e c t O r i e n t e d P r o g r a m m i n g 8

2 2 1 1 T e r m i n o l o g y 9

2 2 1 2 I m p l e m e n t a t i o n 10

2 2 1 3 S o m e l i m i t a t i o n s o f O O P 11

2 2 1 4 B e n e f i t s o f A O P 14

2 / 2 2 A s p e c t , ) 16

2 2 3 R e m a r k s 17

2 3 S u m m a r y 18

C h e c k i n g t h e c o n f o r m a n c e o f t i m i n g c o n s t r a i n t s 1 9 3.1 G e n e r a t i n g v e r i f i c a t i o n a s p e c t s t o c h e c k t h e c o n f o r m a n c e 19

3 2 A c h i e v i n g t i m e f r o m s p e c i f i c a t i o n a n d i m p l e m e n t a t i o n 21

3 2 1 T h e o r d e r o f e v e n t s 21

3 2 1 1 O r d e r o f e v e n t s in a a p p l i c a t i o n 21

3 2 1 2 O r d e r o f e v e n t s in s e v e r a l a p p l i c a t i o n s 22

3 2 2 R e a d i n g t i m i n g c o n s t r a i n t in s p e c i f i c a t i o n .23

3 2 3 C a l c u l a t i n g e x e c u t i o n t i m e f r o m i m p l e m e n t a t i o n 25

Trang 3

3 2 ‘5.1 T h e b e f o r e a d v i c e 25

3 2 3 2 T h e a f t e r a d v i c e 2(5 3 3 C a s e s t u d i e s 26

3.3.1 A u t o m a t e d T e l l e r M a c h i n e for b a n k i n g p u r p o s e 26

3 3 1 1 O b j e c t i v e o f t h i s c a s e s t u d y 2(5 3 3 1 2 T i m i n g c o n s t r a i n t s in W i t h d r a w a l s c e n a r i o 2 7 3 3 2 T a k i n g o f f p r o c e s s o f a n a i r p l a n e 29

3 3 2 1 O b j e c t i v e o f t h i s c a s e s t u d y 29

3 3 2 2 T i m i n g c o n s t r a i n t s o f t a k i n g o f f p r o c e s s 29

3 4 S u m m a r y .31

4 I m p l e m e n t a t i o n 3 2 4.1 T h e a r c h i t e c t u r e o f t h e s u p p o r t t o o l 32

4 2 O b s t a c l e s in t h e i m p l e m e n t a t i o n o f s u p p o r t t o o l 3 6 4.2 1 D i f f i c u l t i e s in r e a d i n g t i m i n g c o n s t r a i n t f r o m t h e T i m i n g D i ­ a g r a m 3 6 4 2 2 A s p e c t ) c o d e for c h e c k i n g t i m i n g c o n s t r a i n t s 3 7 4 2 3 S o m e r e s u l t s a n d r e m a r k s 38

1.3 S u m m a r y 3 9 5 R e l a t e d W o r k 41 5.1 B u i l d i n g a set o f t o o l a n d m e t h o d s for c h e c k i n g 41

5 /2 B u i l d i n g f o r m a l f a c i l i t i e s f o r c h e c k i n g 42

5 3 C h e c k i n g a n d e v a l u a t i n g in s o m e r e a l - t i m e s y s t e m s 13

6 C o n c l u s i o n a n d p e r s p e c t i v e 4 4 6.1 C o n c l u s i o n 4 4 6 2 F u r t h e r r e s e a r c h 45

Trang 4

L i s t o f F i g u r e s

2.1 U M L 2.0 D i a g r a m s 6

2 2 U M L J o n c i s e T i m i n g D i a g r a m 7

2 3 U M L l o b u s t r i m i n g D i a g r a m 8

2 4 A n e x u n p l c o f c o d e t a n g l i n g 12

2 5 A n e x a m p l e o f c o d e s c a t t e r i n g 13

3.1 U M L S e q u e n c e T i m i n g D i a g r a m 20

3 2 T e m p l a t e f o r t h e V e r i f i c a t i o n A s p e c t s 21

3 3 T h e e v e n t E i is s e p a r a t e d f r o m t h e e v e n t E2 22

3 4 T h e e v e n t E i is c o v e r e d b y t h e e v e n t E-2 22

3 5 T h e e v e n t E i is o v e r l a p p e d t o t h e e v e n t E*2 22

3 6 O r d e r r e l a t i o n 23

3 7 T h e r e l a t i o n o v e r l a p 1 ' b e f o r e ’’ 23

3 8 T i m i n g c o n s t r a i n t s a r e r e p r e s e n t e d in a t i m i n g d i a g r a m 24

3 9 U s e r is u s i n g A T M .2 7 3 1 0 U M L S e q u e n c e D i a g r a m o f t h e W i t h d r a w a l s c e n a r i o 28

3 1 1 U M L T i m i n g D i a g r a m o f t h e W i t h d r a w a l s c e n a r i o 28

3 1 2 A n a i r p l a n e is t a k i n g o f f 2 9 3 1 3 T i m i n g D i a g r a m o f a i r p l a n e e a s e s t u d y 3 0 1.1 T h e g e n e r a l c h e c k i n g p r o c e s s 3 3 4 2 T h e t i m e s t a m p s o f t w o p a r t s 34

4 3 T h e a r c h i t e c t u r e o f p r o p o s a l t o o l 34

4 4 A p i e c e o f c o d e t o r e a d t h e t i m i n g c o n s t r a i n t s i n f o r m a t i o n 38

4 5 G e n e r a t e d V e r i f i c a t i o n A s p e c t s 3 9

Trang 10

g i v e n t i m e p e r i o d e m p h a s i z i n g t h e t i m i n g c o n s t r a i n t s A l s o it s h o w s m e s s a g e s w h i c h

m o d i f y t h a t s t a t e , l i m i n g d i a g r a m is o f t e n u s e d t o d e s i g n e m b e d d e d s o f t w a r e , s u c h

Trang 15

o f m e t h o d s , fo r e x a m p l e , o r just b e f o r e m e t h o d c a lls T h e t y p e s o f l o c a t i o n s w h ere'

h o o k s c a r b e i n t r o d u c e d d e p e n d o n t h e w e a v e r N o t e t h a t h o o k s arc* n o t n e c e s s a r i l y

l o c a t i o n s w h e r e a s p e c t s a p p l y b u t l o c a t i o n s w h e r e a s p e c t s p o t e n t i a l l y a p p l y

A m o n g a ll t h e h o o k s i n t r o d u c e d b y a r u n - t i m e w e a v e r , o n l y a s e l e c t e d s u b s e t will r e d i r e c t t h e e x e c u t i o n H ow t o w a r d a n a s p e c t T h e a s p e c t p r o g r a m m e r d e c i d e s

Trang 19

Cleaner "'esonsib Hit,/es of the individual module: A G P a l l o w s a m o d u l e t o t a k e

r e s p o n s i b i l i t / cd v for i t s c o r e c o n c c r n ; a m o d u l e is n o l o n g e r liable' for o t h e r c r o s s c u t ­

d e s i g n d ec is io n s for fut u r e r e q u i r e m e n t s b e c a u s e it is p o s s i b l e t o i m p l e m e n t t h o s e a,s

Trang 21

TRUNG TÂM ÎHÔNG Tin THU VIÊN

Trang 24

(b1.b2)s

_ Æ l.rgjK

Task4( ) -4*1**218

Trang 25

3 2 A c l i e v i n g t i e f r o s p e c i f i c a t i o n a n d i p l m n a t o 21

im p o r t o rg a s p e c tj.la n g J o in P o in t;

va ria b le sVariables arc declared here;

a fte r( ) : (e x e c u tio n (* * * ( ) ) ) & & !w ith in ( AspeetName) {

- Get ¿2; / / the current system time:

- Get method name from X M L tile(taskl, task2, );

- Get lower and upper bound on tim ing from X M L file ( r j , r2 );

- t — t2 - t\;//C a lc u la te the execution tim e of the method;

Trang 27

Application 1 Application n

F i g u r e 3.6: O r d e r r e l a t i o nApplicaton I

The relation "overlap" between J

r/the time point is jusK

Trang 28

A tming constraint associated A t mmg constraint associated ^

with an events duration with a states duration

Trang 29

I f y o u t h r o w a n e x c e p t i o n in t h e b e f o r e a d v i c e , t h e c a p t u r e d o p e r a t i o n w ill n o t

e x e c u t e F o r e x a m p l e , if t h e a u t h e n t i c a t i o n lo g i c in t h e p r e v i o u s a d v i c e t h r o w s

Trang 32

Check_BalanceAcount( ) {bi b2)s

Gtve_M oney( ) {g1 Return( ) {r1,r2}s

Check BalanceATM( ) {a1 ,a2}s

Trang 34

0» 5 10 IS DO 25 30

F i g u r e 3 1 3 : T i m i n g D i a g r a m o f a i r p l a n e c a s e s t u d y

F i r s t l y , w e c h a r g e t h e fu e l i n t o t h e a i r p l a n e in 5 s e c o n d s A f t e r fu e l is c h a r g e d fully, w e s t a r t o t h e r c o m p o n e n t s T h e e n g i n e s t a r t s a t 5 t h s e c o n d , a n d it s t a r t s in

Trang 35

(3) (4) (5)

Trang 38

The timing constraints from the first schema

F i g u r e 4 3 : T h e a r c h i t e c t u r e o f p r o p o s a l t o o l

Trang 40

I ’a r a d i g m h a s m a n y p a r t s a n d i n f o r m a t i o n s , b u t w e p a y a t t e n t i o n t o i m p o r t a n t

i n f o r m a t i o n s t o a c h i e v e e s s e n t i a l i n f o r m a t i o n fo r t h e t i m e o f e a c h t a s k A X M L (lie h a s t w o p a r t s : Models a n d Diagrams. I n t h e p a r t Models E a c h c o m p o n e n t ’s

p r o g r e s s is a L i f e l i n e H e r e is a L i f e l i n e o f F u e l :

< Model, c o m p o s ite~ "true" consider Default P ro p erties— ’'false ” d isp la y M odel Type - ” Lifeline

id " T n 5 q tfiF S -y y y R tjl ” m odelT ype- Life L inen a m e - " Fuel" >

Time Unit a n d State Condition. S t a t e C o n d i t i o n r e p r e s e n t s a t a s k o f a n o b j e c t

H e r e is a s m a l l p i e c e in X M L file d e s c r i b i n g S t a t e C o n d i t i o n Fuel charging o f o b j e c t

State Condition ' i d = ”X 0 7 q e f i F S g y g R i a ” niudelType = ”StateCondition” name

= "Fuel charging">

Trang 41

T h e n o d e Fuel charging is a c h i l d n o d e o f Fuel Time Unit r e p r e s e n t s a t i m e

p o i n t H e r e is a p i e c e d e s c r i b i n g a T i m e U n i t a t t i m e p o i n t 0 s e c o n d

< Model composite- "true" consider DefaultProperties- "false" display Model Type

”Time Unit" i d = ”M e P q e f i F S g y g R i h ’1 rnodt IType- Time Unit" name- ’0 V>

Trang 42

(1) for (i - 0: i CvalucArrLen; i f f ) {

’’ tim e point: M -f timeUnit.Name2[i)):

(21) for (i= 0 ; i <i3; i 4 4 ) {

Trang 43

a f t e r f j : (executionf* *.*( )))&& !wrt.hin\VAspect) {

m n—thisJoinP oint.getS ignature();// get method name;

t2=System currentTim eM illis();

lb=getM inC onstraint(m n);

ub=getM axC onstraint(nin);

e t= t2- t i; / / t h e execution tim e of the method tt+ = e t;//t h e execution tim e of sequential methods

if (et < lb || t‘t > u b || t.t > f) log(this.JoinPoint);

}

| vo id lay (Join Point jp){

System.out println(jp.getSourceLocation()-f jp.getSignatureO);

Trang 46

s ta g e o f system d e s ig n in g based on th e Use Case d ia g ra m a n d som e a d d itio n a l in fo r-

m a ttio n c o n c e rn in g th e b e h a v io r o f th e user o f fu tu re syste m T h e a im o f th is w o rk is

to p o i n t o u t t i e p o s s ib ility o f u s in g th e T im in g D ia g ra m to d e s c rib e u ser's b e h a v io r

at tth e fir s t s ta je o f t he s y s te m m o d e lin g : th e d o c u m e n ta tio n o f u s e r’s re q u ire m e n ts

A d d in g a new d a ta d e s c rib in g user's tim e a c t iv it y c h a r a c te r is tic expressed b y th e

U M 1L T im in g D ia g ra m , it is able to e s tim a te th e o v e rlo a d in g o f th e b o u n d a r y Use Casses, i t uses some e s tim a tio n s fo r th e w o rk lo a d a n d s y s te m w o rk lo a d T h e p re ­

s e n te d a rith m e tic o f T im in g D ia g ra m s in th e a rtic le o f u s in g o n ly one ty p e o f U M L

d ia g r a m s (Use Cases) is n o t enough fo r d e ta il c a lc u la tio n o f th e s y s te m e ffe c tiv e ­

n e s s H o w e v e r it is s im p le a n d th e e v a lu a tio n is m ade 0 11 th e e a rlie s t leve l o f s y s te m

d e v e lo p m e n t, n o t in r u n -tim e

5 2 B u i l d i n g f o r m a l f a c i l i t i e s f o r c h e c k i n g

D illlo n e t.a l ( D illo n et a l., 1993) p ro p o s e d a te c h n iq u e a n d a p r o to ty p e to o l w h ic h

d e s c r ib e te m p o ra l lo g ics o f a c o n c u rre n t system s b e h a v io rs b y u s in g g ra p h ic a l n o ­

t a t io n s I t s u p p o rts fo rm a l s p e c ific a tio n and v e rific a tio n o f c o n c u rre n t s o ftw a re

s y s ttc m s T h e o b je c tiv e o f th is a rtic le is to e nable s o ftw a re e n g in e e rs to s p e c ify and reasson a b o u t te m p o ra l p ro p e rtie s o f c o n c u rre n t system s m o re e a s ily b y p ro v id in g

th e irn w it h a lo g ic th a t has an in t u it iv e g ra p h ic a l re p re s e n ta tio n a n d w it h to o ls th a t

s u p > p o rt its use T h e researchers raise an e le v a to r syste m as a case s tu d y in e x p lo r in g

th e to o l H ow ever, th e g ra p h ic a l n o ta tio n s w h ic h are used t o te m p o r a l lo g ic s are

miKch c o m p lic a te d M o re o v e r, th e to o l does not s u p p o rt id e n t if y in g tim e c o n s tra in ts

a lo m g th e system

S A C R E S (B e n v e n is te e t a l., 1998) is a v e rific a tio n e n v iro n m e n t fo r e m b e d d e d

s y s tte m s th a t a llo w s user to g r a p h ic a lly sp e cify p ro p e rtie s as S y m b o lic T im in g D i­

a g r a m s Designs are tr a n s la te d in to fin it e s ta te m a ch in e s w h ic h are o p tim iz e d and

th e m v e rifie d b y s y m b o lic m o d e l c h e c k in g T h e a d va n ta g e in th is w o rk is t h a t th e ir

a p p r o a c h can v e rify large , c o m p le x syste m s H ow ever th is w o r k fo cuse d o n ly 0 1 1 th e

d e s iig n levels b u t not a t th e im p le m e n ta tio n level as in o u r a p p ro a c h

Trang 47

5 3 C h e c k i n g a n d e v a l u a t i n g in s o m e r e a l - t i m e s y s t e m s 4 3

5 3 C h e c k i n g a n d e v a l u a t i n g i n s o m e r e a l - t i m e

s y s t e m s

(W e ge ne r & G r o c h tm a n n , 1998) p ro p o s e d an a p p ro a c h fo r v e r ify in g t im in g co n ­

s tr a in ts o f R e a l-T im e S yste m s b y m eans o f e v o lu tio n a r y te s tin g In th is p a p e r, a

v io la tio n o f t im in g c o n s tr a in ts m eans t h a t o u tp u ts are p ro d u c e d to o e a rly , o r th e ir

fo r a c c u ra te te s t d a ta b y m eans o f e v o lu tio n a r y c o m p u ta tio n is c a lle d e v o lu tio n a r y

te s tin g T h is te s tin g a p p ro a c h d iffe rs fro m o u rs w h ic h use A O P to a u to m a tic a lly check w it h t im in g c o n s tra in t s p e c ific a tio n B e sid e , th is approac h a n d o u rs m a y be

th e in c r e m e n ta lly c o m p o s itio n b u t do n o t check th e c o m p lia n c e b e tw e e n r u n - tim e

ta s k s a n d t im in g c o n s tr a in t s p e c ific a tio n

( M o k & L iu , 1997) is a lso d e te c ts th e t im in g c o n s tr a in ts v io la tio n a t r u n tim e

T h e y sh o w t h a t a t im in g v io la tio n can be c a u g h t as e a r ly as p o s s ib le b y d e r iv in g

a n d m o n it o r in g a m in im u m set o f t im in g c o n s tr a in ts fr o m th e t im in g c o n s tr a in t

s p e c ific a tio n O n ly O ( n ) tim e is needed in th e w o rs t ease fo r c h e c k in g a t each check

p o in t T h e y in v e s tig a te th e a lg o r ith m ic p ro b le m s in v o lv e d in th e d e te c tio n o f a

t im in g c o n s tr a in t v io la tio n a t th e e a rlie s t p o s s ib le tim e B y c o m p ilin g th e tim in g

c o n s tr a in t s p e c ific a tio n s , r u n - t im e m o n ito r in g can be p e rfo rm e d e ffic ie n tly w ith low

o v e rh e a d T h e m e m o ry re q u ire m e n t fo r th is m o n it o r in g a lg o r ith m is b o u n d e d a n d

an u p p e r b o u n d ca n be d e te rm in e d a t c o m p ile tim e T h e a p p ro a c h in th is w o rk

m e n tio n s o n ly th e t im in g c o n s tr a in t in s p e c ific a tio n fo r r u n tim e progress a fte rw a rd s

an n o t ch eck th e t im in g c o n s tr a in t a t r u n tim e d ir e c tly

Ngày đăng: 25/03/2015, 09:46

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w