Tải bản đầy đủ (.pdf) (13 trang)

Nghiên cứu phương pháp kiểm thử dựa trên biểu đồ trạng thái

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (248.65 KB, 13 trang )

1

2

B GIÁO D C VÀ ĐÀO T O

Cơng trình đư c hoàn thành t i

Đ I H C ĐÀ N NG

Đ I H C ĐÀ N NG

TR N TH DI U LINH

Ngư i hư ng d n khoa h c: TS. Nguy n Thanh Bình

Ph n bi n 1: TS. Nguy n T n Khôi
NGHIÊN C U PHƯƠNG PHÁP KI M TH
BI U Đ

D A TRÊN

TR NG THÁI
Ph n bi n 2: PGS. TS. Đoàn Văn Ban

Chuyên nghành: Khoa h c Máy tính

Lu n văn s đư c b o v trư c H i ñ ng ch m Lu n văn t t

Mã s : 60.48.01


nghi p th c sĩ k thu t h p t i Đ i h c Đà N ng vào ngày 15
tháng 10 năm 2011

TÓM T T LU N VĂN TH C SĨ K THU T

Có th tìm hi u lu n văn t i:
- Trung tâm Thông tin - H c li u, Đ i h c Đà N ng
Đà N ng - Năm 2011

- Trung tâm H c li u, Đ i h c Đà N ng.


1
M

Đ U

1. Lý do ch n ñ tài
Trong ti n trình phát tri n ph n m m, giai đo n ki m th
đóng m t vai trị r t quan tr ng. M t s n ph m ph n m m chưa th
g i là hoàn thi n n u chưa th c hi n nghiêm túc giai ño n ki m th .
Do tính ph c t p gia tăng c a các h th ng ph n m m và nhu c u
v ñ m b o ch t lư ng ph n m m, ki m th ñã tr thành m t ph n
c a ti n trình chung trong vi c đ m b o ch t lư ng ph n m m.
K t khi bi u ñ tr ng thái ñư c gi i thi u, nó đã tr thành
m t cơng c ph bi n cho các h th ng mơ hình hóa ph n m m. Hi n
nay bi u đ tr ng thái là m t chu n trong ngành cơng nghi p đ i
v i hành vi mơ hình hóa h th ng vì v y nó có th th c hi n ñư c
yêu c u cho vi c thi t k ki m th .
Ki m th d a trên bi u ñ tr ng thái là m t hình th c ki m

th đư c th c hi n trong đó s d ng các mơ hình ngh nghĩa như
máy tr ng thái, bi u đ chuy n tr ng thái. Các mơ hình này bi u di n
các ñ c t và ñư c s d ng ñ ch ng minh hành vi c a h th ng ho c
c a các ñ i tư ng.
V i mong mu n tìm hi u và ng d ng k thu t ki m th này
vào trong th c t đó là lý do vì sao tơi ch n ñ tài “Nghiên c u
phương pháp ki m th d a trên bi u ñ tr ng thái” dư i s hư ng
d n c a TS. Nguy n Thanh Bình.
2. M c tiêu và nhi m v nghiên c u
Lu n văn g m có hai m c tiêu chính: Th nh t là nghiên c u
các phương pháp ki m th d a trên bi u ñ tr ng thái ñ ng th i ñưa
ra nh ng nh n xét, đánh giá. Sau đó là trình bày quy trình cũng như
ng d ng th c hi n ki m th d a trên bi u ñ tr ng thái trong m t
phương pháp c th .
V i nh ng m c tiêu đó, nhi m v c a lu n văn bao g m các
công vi c sau: gi i thi u các ñ nh nghĩa, tính ch t cũng như ngh
nghĩa liên quan đ n bi u đ tr ng thái và các mơi trư ng thi t k s
d ng bi u ñ tr ng thái; trình bày và đánh giá m t s phương pháp

2
ki m th d a trên bi u ñ tr ng thái tiêu bi u; và trình bày vi c ng
d ng c a m t trong các phương pháp ñã ñư c gi i thi u.
3. Đ i tư ng và ph m vi nghiên c u
D a trên các k thu t ki m th ph n m m: ki m th d a trên
mơ hình, ki m th d a trên ñ c t , ki m th d a trên bi u ñ tr ng
thái… D a trên các đ nh nghĩa và tính ch t liên quan ñ n bi u ñ
tr ng thái.
Đ tài thu c lo i hình nghiên c u.
4. Phương pháp nghiên c u
Thu th p, phân tích tài li u và thơng tin liên quan đ n đ tài.

L a ch n phương hư ng gi i quy t v n ñ , nghiên c u v lý thuy t
liên quan. Trình bày và đánh giá các phương pháp th c hi n; ng
d ng qui trình ki m th .
5. K t qu lu n văn
Nghiên c u, trình bày và đánh giá m t s phương pháp ki m
th d a trên bi u ñ tr ng thái. Di n gi i vi c tri n khai ng d ng
c a m t phương pháp.
6. B c c lu n văn
Lu n văn g m 3 chương chính:
Chương 1: Bi u đ tr ng thái và mơi trư ng thi t k s d ng bi u
ñ tr ng thái
N i dung Chương 1 nh m gi i thi u các đ nh nghĩa, tính ch t
cũng như ngh nghĩa liên quan ñ n bi u ñ tr ng thái. Đ ng th i gi i
thi u các môi trư ng thi t k s d ng bi u ñ tr ng thái thư ng ñư c
áp d ng hi n nay.
Chương 2: Ki m th d a vào bi u ñ tr ng thái
N i dung Chương 2 gi i thi u v ki m th ph n m m, bao
g m các k thu t, các chi n lư c, các m c ñ ki m th . Đ ng th i
gi i thi u các mơ hình s d ng trong ki m th ph n m m, quy trình
tiêu bi u c a ki m th , các tiêu chí bao ph và gi i thi u m t s
phương pháp ki m th d a trên ngh nghĩa bi u ñ tr ng thái.
Chương 3: ng d ng ki m th d a trên bi u ñ tr ng thái cho h
th ng qu n lý âm thanh trong xe hơi


3

4

N i dung c a Chương 3 bao g m vi c gi i thi u quy trình

ki m th và th c hi n ki m th th công. Gi i thi u cách th c mơ
hình hóa h th ng b ng máy tr ng thái, nh ng khó khăn, thách th c
khi th c hi n ki m th th công.

CHƯƠNG 1:
N I DUNG BI U Đ
THI T K

S

TR NG THÁI VÀ MÔI TRƯ NG
D NG BI U Đ

TR NG THÁI

1.1 MÁY TR NG THÁI H U H N
1.1.1

Gi i thi u
Máy tr ng thái h u h n (Finite State Machine – FSM) hay
còn g i là m t Otomat tr ng thái h u h n ho c g i ñơn gi n hơn là
máy tr ng thái, thu c ngành toán h c tr u tư ng và ñư c dùng ñ
thi t k các m ch k thu t s logic ho c các chương trình máy tính.
Nó là m t mơ hình hành vi bao g m m t s h u h n các tr ng thái,
các chuy n ti p gi a các tr ng thái này, và các hành ñ ng, tương t
như m t ñ th lu ng, trong đó có th ki m tra logic cách th c hi n
khi m t s ñi u ki n ñư c ñáp ng.
1.1.2

Đ nh nghĩa và tính ch t

M t FSM M là m t b 6:
M = (S, I,O, s0,

,λ)

M t FSM có th có b n tính ch t dư i đây. Chúng có
th đư c bi u di n như sau:
-

Tính xác đ nh hồn tồn

-

Tính quy t đ nh

-

Tính y u

-

Tính k t n i m nh

1.2 MÁY TR NG THÁI H U H N M R NG
1.2.1 Gi i thi u
Máy tr ng thái h u h n m r ng (Extended Finite State
Machine - EFSM) là m t mơ hình nâng cao d a trên máy tr ng thái
h u h n truy n th ng, là m t mơ hình hành vi k t h p c a các tr ng
thái, các chuy n ti p và các hành ñ ng. Trong m t FSM thông



5

6

thư ng cịn thi u trong hai khía c nh quan tr ng: kh năng mơ hình
hóa thao tác c a các bi n m t cách thu n ti n và kh năng mơ hình
hóa chuy n giao các giá tr . Do đó EFSM đã đư c đ xu t ñ gi i
quy t v n ñ này.
1.2.2 Đ nh nghĩa và tính ch t
EFSM là m t b 7 ñư c ñ nh nghĩa như sau:
EM = (S, I, O, s0, E, T, V)
1.3 H TH NG CHUY N TI P ĐƯ C GÁN NHÃN
H th ng chuy n ti p ñu c gán nhãn (Labelled transition
systems - LTS) là m t bi n th c a FSM. Đó là m t c u trúc bao
g m các tr ng thái v i các chuy n ti p ñư c gán nhãn v i các hành
ñ ng gi a chúng.
1.4 BI U Đ TR NG THÁI
1.4.1 Gi i thi u
Bi u ñ tr ng thái (State Diagram, State Machine Diagram,
State Chart Diagram) là m t lo i sơ ñ ñư c s d ng trong khoa h c
máy tính và các lĩnh v c liên quan đ mô t hành vi c a h th ng.
Bi u ñ tr ng thái ñòi h i h th ng ñư c mô t bao g m m t s h u
h n các tr ng thái.
1.4.2 Đ nh nghĩa
M t d ng c a bi u ñ tr ng thái cho m t máy tr ng thái h u
h n là m t đ th có hư ng v i các ph n t sau (S, I, O,δ, s0, F)
1.5 BI U Đ CHUY N TR NG THÁI
1.5.1 Gi i thi u
Bi u ñ chuy n tr ng thái (Statechart) ñư c s d ng r ng rãi

t khi tr thành m t ph n c a ngôn ng mơ hình hóa h p nh t UML.
Bi u đ này cho phép mơ hình hóa các siêu tr ng thái, các mi n tr c
giao và các ho t ñ ng như là m t ph n c a tr ng thái.
1.5.2 Bi u di n và tính ch t
1.6 CÁC MƠI TRƯ NG THI T K
1.6.1 Ngơn ng mơ hình hóa h p nh t - UML

Ngơn ng mơ hình hóa h p nh t (Unifield Modeling
Language – UML) là m t ngơn ng đ bi u di n mơ hình theo hư ng
đ i tư ng đư c xây d ng v i các m c đích:
- Mơ hình hố các h th ng s d ng các khái ni m hư ng ñ i
tư ng.
- Thi t l p m t k t n i t nh n th c c a con ngư i ñ n các s ki n
c n mơ hình hố.
- Gi i quy t v n ñ v m c ñ th a k trong các h th ng ph c
t p, có nhi u ràng bu c khác nhau.
- T o m t ngơn ng mơ hình hố có th s d ng ñư c b i ngư i
và máy.
1.6.2 Ngôn ng Simulink Mathworks
1.6.3 Ngôn ng Scade
T NG K T CHƯƠNG
N i dung Chương 1 nh m gi i thi u các đ nh nghĩa, tính ch t
cũng như ngh nghĩa liên quan ñ n bi u ñ tr ng thái bao g m: máy
tr ng thái h u h n, máy tr ng thái h u h n m r ng, h th ng chuy n
ti p ñư c gán nhãn, bi u ñ tr ng thái, bi u ñ chuy n tr ng thái m c
ñích giúp hi u hơn vai trò cũng như t m quan tr ng c a bi u ñ tr ng
thái trong ho t ñ ng ki m th . Đ ng th i gi i thi u các môi trư ng
thi t k s d ng bi u ñ tr ng thái thư ng ñư c áp d ng hi n nay
như UML, Simulink, Scade.



7
CHƯƠNG 2:
KI M TH
2.1 KI M TH

8
based Testing - MBT) là m t thu t ng ch cách ti p c n các công
vi c ki m th chung như t o l p trư ng h p ki m th và ñánh giá k t
qu ki m th trên m t mơ hình đu c áp d ng cho ki m th .

D A VÀO BI U Đ

TR NG THÁI

PH N M M

2.1.1

Gi i thi u
Ki m th ph n m m là m t ph n quan tr ng c a quá trình
phát tri n ph n m m. Nó có th đư c s d ng cho m c đích đ m b o
ch t lư ng, d tốn, xác minh đ tin c y và phê chu n. Tuy nhiên,
ki m th ph n m m là vi c r t t n kém và m t th i gian. Các nghiên
c u ñã ch ra r ng hơn 50% chi phí phát tri n ph n m m ñư c dành
cho ki m th . Do đó, c n có m t u c u cho các chi n lư c ki m
th hi u qu .
2.1.2 Các k thu t ki m th
2.1.2.1 Ki m th tĩnh
2.1.2.2 Ki m th ñ ng

2.1.3 Các chi n lư c ki m th
2.1.3.1 Ki m th h p ñen
2.1.3.2 Ki m th h p tr ng
2.1.3.3 Ki m th h p xám
2.1.4

Các m c ñ ki m th

2.1.4.1 Ki m th ñơn v
2.1.4.2 Ki m th
2.1.4.3 Ki m th
2.1.4.4 Ki m th
2.1.4.5 Ki m th
2.2
2.2.1

tích h p
h th ng
ch p nh n
h i quy

KI M TH

D A TRÊN MƠ HÌNH

Gi i thi u
Hi n nay, ki m th d a trên mã ngu n khơng cịn là cách
ti p c n hồn tồn th a mãn đ t o ra s ñ m b o ch p nh n ñư c
các s n ph m ph n m m hi n ñ i. Ki m th d a trên mơ hình (Model


2.2.2

Khái ni m mơ hình ph n m m
M t mơ hình c a ph n m m là m t mô t v hành vi c a
ph n m m đó. Hành vi có th đư c mơ t dư i d ng các trình t ñ u
vào ñư c ch p nh n b i h th ng, các hành ñ ng, các ñi u ki n
và các giá tr ñ u ra logic ho c lưu lư ng d li u qua các modul và
các chương trình c a ng d ng
2.2.3 Các mơ hình s d ng trong ki m th ph n m m
2.2.3.1 Máy tr ng thái h u h n
Máy tr ng thái h u h n (Finite State Machine – FSM)
ñã ñư c s d ng t lâu ñ n m b t hành vi c a h th ng d a trên
các tr ng thái. Vi c s d ng các mơ hình tr ng thái h u h n trong
thi t k và trong ki m th c a các thành ph n ph n c ng máy tính
đã có t lâu đ i và đư c xem là m t chu n th c hi n nay.
2.2.3.2 Bi u ñ chuy n tr ng thái
Bi u ñ chuy n tr ng thái (Statechart) là m t ph n m r ng
c a máy tr ng thái h u h n mà c th là mô hình hóa các h th ng
ph c t p ho c h th ng th i gian th c. Chúng cung c p m t khn
kh đ xác đ nh các máy tr ng thái trong m t h phân c p, nơi m t
tr ng thái đơn có th ñư c phát tri n thành máy tr ng thái m c đ
th p hơn.
2.2.3.3 Ngơn ng mơ hình hóa h p nh t
2.2.3.4 Chu i Markov
2.2.3.5 M t s mơ hình khác
Ngồi nh ng mơ hình đư c gi i thi u trên, có m t s d ng
mơ hình khác đã đư c nghiên c u bao g m b ng ra quy t ñ nh, cây
quy t ñ nh, và các ngôn ng thi t k chương trình…
2.2.4 Quy trình tiêu bi u c a ki m th d a trên mơ hình
2.2.4.1 Nh n bi t v h th ng c n ñư c ki m th



9

10

Đ hi u v m t ng d ng, ki m th viên c n thi t ph i hi u
v c ph n m m và môi trư ng th c thi.
2.2.4.2 L a ch n mơ hình ki m th
Khơng có mơ hình ph n m m nào hi n nay là phù h p v i
ñ y đ ý nghĩa và m c đích. Do đó, đ i v i t ng quy t ñ nh mà nên
ch n mơ hình (ho c t p h p các mơ hình) nào là phù h p nh t.
2.2.4.3 Xây d ng mơ hình trung gian
Ki m th d a trên mơ hình tr ng thái đ nh nghĩa tính tr u
tư ng c a tr ng thái m c cao và sau đó tinh ch nh các tr u tư ng
hóa này thành m t khơng gian tr ng thái th c t . Đ i v i m t s
phương pháp ki m th , xây d ng mơ hình trung gian nh m gi m
thi u ñ ph c t p c a bi u ñ g c.
2.2.4.4 T o các k ch b n ki m th
M t k ch b n ki m th (test script) trong ki m th ph n m m
là m t t p h p các hư ng d n s ñư c th c hi n trên h th ng c n
ñư c ki m th ñ ki m tra các ch c năng c a h th ng như mong
ñ i.
2.2.4.5 T o các b ki m th
Trong phát tri n ph n m m, m t b ki m th (test suite)
thư ng ñư c bi t ñ n như là m t b xác nh n tính h p l , là m t t p
h p các trư ng h p ki m th ñư c s d ng ñ th nghi m m t
chương trình ph n m m nh m ch ra r ng nó có m t s quy đ nh v
các hành vi.
2.2.4.6 T o các trư ng h p ki m th t ñ ng

Trong m t s trư ng h p, các trư ng h p ki m th (test
cases) th m chí có th đư c th c hi n b ng tay, tuy nhiên, các b t o
ki m th thư ng là quá l n cho m t hư ng d n th c hi n.
2.3 CÁC TIÊU CHÍ BAO PH D A TRÊN BI U Đ
TR NG THÁI
2.4 M T S PHƯƠNG PHÁP KI M TH D A TRÊN BI U
Đ TR NG THÁI
2.4.1 Phương pháp c a Supaporn Kansomkeat và Wanchai
Rivepiboon

2.4.1.1 Gi i thi u
Phương pháp này ñư c gi i thi u v i m c đích đ xu t các
k thu t ki m th nh m gi i quy t m t ph n quy trình ki m th . K
thu t này có th t o ra các trư ng h p ki m th t bi u ñ chuy n
tr ng thái (statechart). Phương pháp này g m hai bư c sau:
- Th nh t, c n bi n ñ i bi u ñ này thành bi u ñ trung gian,
ñư c g i là bi u ñ lu ng ki m th (Testing Flow GraphTFG), m c ñích xác ñ nh rõ lu ng di chuy n c a bi u ñ
tr ng thái và làm cho d dàng ñ ki m th . Bi u ñ này làm
gi m s ph c t p c a bi u ñ tr ng thái. TFG là m t bi u đ
lu ng có c u trúc rõ ràng và ñơn gi n.
-

Th hai, t TFG t o ra các trư ng h p ki m th b ng cách
s d ng các tiêu chí ki m th , ñó là bao ph các tr ng thái và
các chuy n ti p c a bi u ñ . TFG ñư c s d ng ñ t o ra các
trình t ki m th b ng cách phân tích đ ñưa ra các tr ng thái
và các chuy n ti p.
2.4.1.2 Mơ hình hóa h th ng b ng bi u đ chuy n tr ng thái

not empty

push(num)
/top:=top+1

empty

push(num)[top/top:=top+1
push(num)
[top:=max-2]

full

not
pop()
/top:=top-1

pop()[top=1]
/top:=top-1
pop()[top>1]
/top:=top-1

Hình 2.7: Bi u ñ chuy n tr ng thái cho Stack
2.4.1.3 Xây d ng trư ng h p ki m th trên TFG
a. Xây d ng thu t toán


11

12


Hình 2.8 cho th y TFG là m t đ th bao g m các chuy n
ti p và các nút. Có hai lo i nút đó là nút s ñư c v b i vòng tròn ñi n
ñ y và nút g đư c v b i vịng trịn r ng. Hai lo i chuy n ti p b t ñ u
t nút s và nút g ñư c g i là chuy n ti p s và chuy n ti p g, tương
ng:

V i trư ng h p ñ bao ph m i quy trình ki m th t các
tr ng thái h n h p, các tác gi chuy n ñ i tr ng thái B thành TFG
b ng cách chuy n ñ i t các tr ng thái c a tr ng thái h n h p có
ch a tr ng thái S và T. Đi u này có th đư c minh h a trong hình
2.10.

nút s

T

S
e

e
B

chuy n ti p s

S
nút g

S

e[g]


T

C

g

C
chuy n ti p g

-

Hình 2.10.a: Tr ng thái h n h p

Hình 2.8: Bi u di n m t TFG ñơn gi n
M i tr ng thái trong bi u ñ chuy n tr ng thái ñư c xem xét
trong các bư c sau:
Tr ng thái trong bi u ñ chuy n tr ng thái ñư c thay th b i nút s và
các chuy n ti p r i kh i tr ng thái này đư c nhóm l i theo các s
ki n. M i nhóm các s ki n bi u di n chuy n ti p s ñư c gán nhãn
b ng tên c a s ki n.
e1[g1]
A
e2[g3]

A

e1

e2


e1[g2]
g1

A1 g
2

A2 g3

Hình 2.9.a: Tr ng thái đơn
Hình 2.9.b: TFG c a Hình 2.9.a
Hình 2.9: Chuy n đ i tr ng thái ñơn

Hình 2.10.b: M t TFG cho tr ng
thái h n h p

Hình 2.10: Chuy n đ i tr ng thái h n h p
b. Xây d ng các trư ng h p ki m th
TFG ñư c tri n khai b ng cách phân tích các nhánh t nút
g c ñ n m i nút lá ñ bao ph nút và chuy n ti p ít nh t m t l n.
Trong ph n này, các TFG bi u di n cho stack, ñư c s d ng ñ t o
các trư ng h p ki m th .


13
INT

EM
push(num)
NF


push(num)

NF1
top=max-2

14
INT - tr ng thái ban ñ u cho Stack
EM - r ng
NEM - khơng r ng
NF - khơng đ y
FU - ñ y

Phương pháp này gi i thi u v b t o cũng như l a ch n các
trư ng h p ki m th d a trên bi u đ chuy n tr ng thái. Tiêu chí l a
ch n ki m th ñư c bi u di n cho phép ki m th m t cách hi u qu .

Qu n lý phòng
Error

pop()

NF2

top
top=1




t7: delete
t8: edit
t9: save

t10: save



t11: add
t12:
delete

top>1
FU

NF

NF

EM

Empty

t1: add

Insert

t3: edit

Edit


pop()
NF

Hình 2.11: Bi u đ chuy n tr ng thái cho Stack
Đánh giá phương pháp:
Nhi m v chính c a phương pháp là chuy n bi u ñ chuy n
tr ng thái thành bi u ñ trung gian – bi u ñ lu ng ki m th . M c
đích c a vi c làm này là san b ng c u trúc phân c p c a các tr ng
thái, xác ñ nh rõ lu ng di chuy n cũng như làm gi m ñ ph c t p c a
bi u ñ chuy n tr ng thái trư c khi t o ra các trư ng h p ki m th .
Sau đó, t bi u ñ trung gian này, s d ng các tiêu chí bao ph các
tr ng thái và các chuy n ti p c a bi u đ , t đó xây d ng các trư ng
h p ki m th .
Phương pháp này ñư c th c hi n m t cách th cơng và chưa
có cơng c h tr .
2.4.2 Phương pháp c a Axel Hollmann, Fevzi Belli và Christof J.
Budnik
2.4.2.1 Gi i thi u

t2: delete
[#rooms=1

t4: save
t5: add
t6: delete [#rooms>1
]

Hình 2.12. Ví d bi u đ chuy n tr ng thái v i tr ng thái l i
2.4.2.2 M t mơ hình l i đư c đ xu t cho bi u ñ chuy n tr ng

thái
M t bi u ñ chuy n tr ng thái v i các chuy n ti p có khuy t
đi m và các tr ng thái b l i theo thu t toán sau đây:
B ng 2.2: Thu t tốn bi u di n l i
for each s ∈ S Or
if ∃u ∈ S Simple : u ∈ substate(s)
insert an error state es in s
for each u ∈ substate(s)
if u ∈ S Simple addFaultyTransitions(u,es)


15

16

2.4.2.3 Gi i thi u phương pháp t o trư ng h p ki m th và t o
trình t các trư ng h p ki m th
M t c p chuy n ti p là m t trình t c a chuy n ti p vào h p
lý ñ n chuy n ti p ra h p lý c a m t tr ng thái. M t c p chuy n ti p
có khuy t đi m là m t trình t c a chuy n ti p vào h p lý ñ n m t
chuy n ti p ra b l i.
Nh ng quan ni m trên cho phép t o ra các tiêu chí bao ph
sau đây:
- Bao ph c p chuy n ti p (Transition Pair Coverage-TPC):
T o dãy ki m th liên t c mà th c hi n tu n t m i c p
chuy n ti p.
- Bao ph c p chuy n ti p có khuy t đi m (Faulty Transition
Pair Coverage-FTPC): T o dãy ki m th liên t c mà th c
hi n tu n t m i c p chuy n ti p b l i c a m i tr ng thái b t
kỳ.

Bư c ti p theo là t o ra các trình t trý ng h p ki m th ð c
l p ð i v i c hai tiêu chí.

B ng 2.3: Trình t ki m th bao ph c p chuy n ti p

Hình 2.13: Đ th c p chuy n ti p
D a trên ñ th c p chuy n ti p m t t p t i thi u c a các
trình t ki m th đư c ư c tính cho k t qu trong sáu trư ng h p
ki m th dư i ñây:

Th t các
trư ng h p ki m th
#1
#2
#3
#4
#5
#6

Dãy trình t ki m th
tε t1 tγ
tε t1 t5 tγ
tε t1 t5 t6 t5 t6 t6 tγ
tε t1 t5 t5 t6 t3 tγ
tε t1 t3 t4 tγ
tε t1 t2 t1 t3 t4 t2 t1 t3 t4 t3 t4 t5t3 t4 t6 t2 tγ

B ng 2.4: Trình t ki m th bao ph c p chuy n ti p có khuy t đi m
Th t các trư ng
Các chuy n

K t
B t ñ u dãy
Các chuy n ti p
h p
ti p khơng
thúc
trình t
l i
ki m th
gây ra l i
dãy
#7

t1
t10

#8
tε t1
t2
t7 t8 t9

#9
tε t1
t3
t11 t12 t13

#10
tε t1 t3
t4
t10


#11
tε t1
t5
t10

#12
tε t1 t5
t6
t10

#13

t7 t8 t9

Đánh giá phương pháp:
T m t bi u ñ chuy n tr ng thái cho trư c, phương pháp
này d đốn các l i có th x y ra b ng cách thêm các tr ng thái b l i
và các chuy n ti p có khuy t ñi m vào trong bi u ñ . T ñó ñ xu t
phương án gi i quy t.
Phương pháp này nh m tách các c p chuy n ti p không b l i
và các c p chuy n ti p b l i riêng ra v i nhau. Sau ñó th c hi n hai
nhi m v : m t là xây d ng các trư ng h p ki m th v i tiêu chí bao
ph các c p chuy n ti p không b l i. Hai là, xây d ng các trư ng
h p ki m th v i tiêu chí bao ph các c p chuy n ti p b l i. M c


17

18


đích nh m t o ra các trư ng h p ki m th t bi u ñ chuy n tr ng
thái khơng ch xem xét các trình t h p lý c a các chuy n ti p mà
còn có nh ng trư ng h p khơng h p lý.
2.4.3
Phương pháp c a Dirk Seifert
2.4.3.1 Gi i thi u
Đây là phương pháp mô t m t cách ti p c n nh m ki m tra
tính phù h p c a h th ng ph n ng. D a trên m t đ c t hình th c,
c th là máy tr ng thái UML, t ñ ng t o ra các trư ng h p ki m
th và s d ng chúng đ ki m tra tính phù h p c a các giá tr vào và
ra c a m t h th ng c n ñư c th nghi m.
Nghiên c u g m hai ph n:
- Đ u tiên, tác gi mơ hình hóa m t t p con quan tr ng c a
máy tr ng thái UML bao g m các thao tác d li u có c u
trúc ph c t p.
- Th hai, trình bày m t phương pháp ki m th s phù h p
d a trên các máy tr ng thái, cho phép t o t ñ ng, th c thi và
ñánh giá các trư ng h p ki m th
2.4.3.2 Ng nghĩa máy tr ng thái
a. Gi i thi u
- Tr ng thái h n h p
- Tr ng thái tr c giao
- M t mơ hình ng nghĩa c a máy tr ng thái
- M t tr ng thái ng nghĩa
b. Gi i quy t các xung ñ t có th x y ra khi máy tr ng thái ho t
đ ng
Do có các mi n tr c giao, m t máy tr ng thái có th đang x
lý m t vài tr ng thái t i m t th i đi m. Ta g i đó là t p t t c các
ho t ñ ng trong m t c u hình. Cũng v i cùng m t lý do đó, có th

là nhi u hơn m t chuy n ti p có th th c thi t i m t th i ñi m
t i m t trong các mi n tr c giao ñang ho t ñ ng. Ta g i các t p t t c
các chuy n ti p th c thi cùng nhau t i m t th i ñi m là t p chuy n
ti p th c thi.

Thu t toán l a ch n chuy n ti p l a ch n t p t i ña các
chuy n ti p th c thi theo các yêu c u sau ñây:
- Đ u tiên, t t c các chuy n ti p trong t p chuy n ti p th c thi
ph i đư c kích ho t liên quan đ n c u hình hi n t i, s ki n
kích ho t và s phân cơng d li u hi n t i.
- Th hai, t t c các chuy n ti p trong t p là xung ñ t l n
nhau.
- Th ba, khơng có chuy n ti p đư c kích ho t bên ngồi t p
đó là xung ñ t v i các chuy n ti p bên trong t p ho c có ưu
tiên cao hơn m t chuy n ti p bên trong t p.
2.4.3.3 B t o trư ng h p ki m th
Vi c th c hi n g m hai ph n:
- Đ u tiên, m t hàng ñ i s ki n và các s ki n chưa ñư c
xét s đư c đưa vào mơ hình ng nghĩa c a máy tr ng thái.
- Th hai, c n ph i l a ch n t p chuy n ti p th c thi khác
nhau và th c thi các chi n lư c trong m t phương pháp ki m
th .

Hình 2.15: Ki n trúc ki m th tr u tư ng
a. L a ch n giá tr ñ u vào cho b t o trư ng h p ki m th
Tác gi s d ng b công c TEAGER trong đó cài đ t
m t s chi n lư c l a ch n ñ u vào.
b. Thu t toán t o trư ng h p ki m th
- Đ u tiên, kh i t o máy tr ng thái v i tình tr ng ban đ u c a
nó, ch ng h n: v i c u hình ban đ u và m t hàng đ i s ki n

r ng. Ti p theo chèn các s ki n vào ñ u tiên ñ n hàng ñ i


19

20

s ki n. B y gi áp d ng m t bư c ng nghĩa đ c u hình:
d tính t t c các chuy n ti p có th th c thi. Đ i v i m i t p
chuy n ti p và m i th t th c hi n các chuy n ti p bên
trong nh ng t p này ta ư c tính k t qu th c hi n. K t qu
tr v là m t t p t t c các tình tr ng có th truy c p bao
g m t t c các tình tr ng trung gian cho s ki n ñ u tiên.
- Ti p theo, chèn s ki n ti p theo đ n m i tình tr ng có th
truy c p trong bư c trư c. B ng cách đó chú ý đ n s xen
k có trư c c a các s ki n trong hàng đ i s ki n. Sau
đó, ư c tính l i t t c các tình tr ng có th truy c p cho ñ u
vào này và th c hi n tương t cho các y u t ñ u vào khác.
Ti p theo là ư c tính l i ñ th c a t t c các l trình th c
hi n bao g m các tình tr ng có th truy c p.
2.4.3.4 Cơng c h tr phương pháp
Đ ñánh giá và ch ra s kh thi c a phương pháp ti p c n,
các tác gi tri n khai b cơng c TEAGER.

v tính khơng ñơn ñ nh. Đ c bi t gi i quy t các v n đ v giao ti p
khơng đ ng b .

Hình 2.18: Ki n trúc c a b công c TEAGER
Đánh giá phương pháp:
V i cách ti p c n d a trên máy tr ng thái này có th đư c áp

d ng trong vi c b o ñ m ch t lư ng như là m t ñ c t cho các hành
vi ph n ng mong mu n c a h th ng. Có th l a ch n đ u vào có
liên quan cho m t trư ng h p ki m th và d tính các quan sát chính
xác có th cho đ u vào cho trư c ñ ng th i cho phép t đ ng đánh
giá q trình ki m th .
So v i các cơng trình nghiên c u khác, phương pháp này
không h n ch s lư ng các máy tr ng thái. Bên c nh đó, các tác gi
còn ch ra các chi ti t v ng nghĩa phát sinh t các ngu n khác nhau

Nh n xét chung v c 3 phương pháp nghiên c u

trên

Trong 3 phương pháp ñã nêu, hai phương pháp ñ u các tác
gi d a trên mơ hình bi u đ chuy n tr ng thái ñ áp d ng ki m th .
M i phương pháp có hư ng nghiên c u riêng. Phương pháp th nh t
s d ng bi u ñ lu ng ki m th làm bi u ñ trung gian ñ làm gi m
ñ ph c t p c a bi u ñ chuy n tr ng thái. Sau đó s d ng các tiêu
chí bao ph tr ng thái và bao ph chuy n ti p ñ t o ra các trư ng
h p ki m th .
Phương pháp th hai, v n gi nguyên bi u đ chuy n tr ng
thái nhưng thêm vào đó các tr ng thái b l i và các chuy n ti p có
khuy t đi m mà ta có th d tính trư c. Sau đó tách các c p chuy n
ti p không b l i và các c p chuy n ti p b l i ra riêng thành hai
trư ng h p khác nhau. Sau đó s d ng tiêu chí bao ph c p chuy n
ti p khơng b l i và tiêu chí bao ph c p chuy n ti p b l i ñ t o ra
các trư ng h p ki m th .
Hai phương pháp trên ñư c các tác gi gi i thi u nhưng
chưa có cơng c h tr . phương pháp th 3, các tác gi s d ng
máy tr ng thái đ mơ hình hóa h th ng c n ñư c ki m th . Đ xu t

cũng như x lý trư ng h p nhi u chuy n ti p có th x y ra t i m t
th i ñi m do máy tr ng thái là khơng đơn đ nh. Có các chi n lư c l a
ch n giá tr ñ u vào cho b t o trư ng h p ki m th . S d ng hàng
ñ i s ki n ñ lưu tr các s ki n chưa ñư c x lý. Có xây d ng
thu t tốn đ t o các trư ng h p ki m th , k t qu tr v các l trình
ki m th mà ñư c th c thi m t cách t đ ng b i cơng c TEAGER.
T NG K T CHƯƠNG
K t qu ñ t ñư c trong Chương 2 là ñã gi i thi u cũng như
ñưa ra nh ng nh n xét, ñánh giá và so sánh gi a các phương pháp
nghiên c u. Đ ng th i ch ra đư c vai trị quan tr ng c a bi u ñ
tr ng thái trong ki m th ph n m m.


21

22

CHƯƠNG 3:
NG D NG KI M TH

D A TRÊN BI U Đ

TR NG THÁI

CHO H TH NG QU N LÝ ÂM THANH TRONG XE HƠI
3.1 QUY TRÌNH TH C HI N KI M TH
D A VÀO
PHƯƠNG PHÁP C A DIRK SEIFERT
Phương pháp này ñư c th c hi n theo các bư c sau:
Xây d ng máy tr ng thái cho h th ng

c n ñư c ki m th

Dãy trình t

Máy tr ng thái
v i tình tr ng
ban đ uc

Quá trình t o các trư ng
h p ki m th

tuy n tính c a
các s ki n đ u
vào và các đ th

ch p nh n
Hình 3.1: Quy trình th c hi n ki m th th công
3.2 GI I THI U NG D NG

D ki n các hành vi x y ra và các k t qu
mong ñ i
S d ng TEAGER ñ t ñ ng t o các
trư ng h p ki m th
Th c thi các trư ng h p ki m th m t
cách t ñ ng
So sánh k t qu t vi c th c hi n v i k t
qu mong ñ i
Đánh giá vi c th c hi n
Như v y, quá trình th c hi n ki m th th cơng v i:
Đ u vào: Máy tr ng thái v i tình tr ng ban đ u, mơ t ho t

đ ng c a h th ng qu n lý âm thanh trong xe hơi.
Đ u ra: T p các trư ng h p ki m th , bao g m dãy trình
t tuy n tính c a các s ki n ñ u vào cho h th ng c n ñư c ki m
th và các ñ th ch p nh n cho các quan sát t h th ng này.

Hình 3.2: Đ c t máy tr ng thái cho h th ng âm thanh trên xe hơi
3.3 MƠ HÌNH H TH NG ÂM THANH TRONG XE HƠI
m c cao nh t c a mơ hình tr u tư ng bao g m tr ng thái
g c Car Audio System ñư c c i ti n thành ba mi n tr c giao. Hai
mi n dành cho băng và ñĩa CD khi m t băng hay ñĩa ñư c chèn vào
h th ng, c th là CD Player - máy hát ñĩa CD, Tape Deck - máy
nghe băng t .


23

24

Mi n ph c t p hơn dành cho ch đ nghe đài dùng đ mơ
hình hóa vi c đi u khi n h th ng, c th là Audio Player - máy nghe
ñài.
3.4 THI T K TRƯ NG H P KI M TH
3.4.1 Thi t k chi ti t
3.4.2 Xây d ng các trư ng h p ki m th
V i dãy trình t đ u vào power – src, ta có tr ng thái ng
nghĩa v i c u hình ch a tr ng thái đang ho t ñ ng Tuner Mode, Tape
Mode, CD Mode, hàng ñ i s ki n ch a các s ki n vào power – src.
Áp d ng thu t toán l a ch n t p các chuy n ti p th c thi, xây d ng
các t p ư c tính quan sát có th , ta có th mơ hnh hóa các trư ng h p
ki m th như dư i ñây:

B ng 3.1: Xây d ng 2 trư ng h p ki m th th công
B ng 3.2: Dãy trình t tuy n tính c a các s ki n ñ u vào
B ng 3.3: Xây d ng các ñ th ch p nh n

công, th c thi các trư ng h p ki m th m t cách th công nhưng
tuân theo các nguyên t c ho t ñ ng c a phương pháp.
K ñ n là trình bày nh ng khó khăn khi th c hi n ki m th
th cơng cũng như đánh giá phương pháp th c hi n ki m th c a
Dirk Seifert.

3.5 ĐÁNH GIÁ K T QU TH NGHI M
Ph n 3.4 ch m i nêu hai trư ng h p ki m th . Đó là các
trư ng h p bao ph chuy n ti p t Tuner Mode ñ n CD Mode và bao
ph chuy n ti p t Tuner Mode ñ n Tape Mode. Do máy tr ng thái
là khơng đơn đ nh nên có th cùng th i ñi m có nhi u hơn m t
chuy n ti p th c thi, ñ ng th i s lư ng các quan sát cho các trư ng
h p tương ng là tăng lên d n ñ n hàng ñ i s ki n s lưu tr v i s
lư ng nhi u các s ki n s th c hi n. Đi u này d n ñ n vi c mô t
trên gi y là g p nhi u khó khăn.
K t qu nh n đư c là dãy trình t tuy n tính các s ki n đ u
vào và các ñ th ch p nh n.
T NG K T CHƯƠNG
T phương pháp ki m th c a tác gi
gi i thi u Chương 2, n i dung c a Chương
d ng phương pháp này cho ho t ñ ng ki m th
thanh trong xe hơi, t ñó t xây d ng các trư

Dirk Seifert ñã ñư c
3 bao g m vi c ng
h th ng qu n lý âm

ng h p ki m th th

K T LU N
Ki m th là m t giai ño n quan tr ng c a q trình ki m
sốt ch t lư ng trong quy trình phát tri n ph n m m. M c đích c a
ki m th ph n m m là tìm ra các l i hay khi m khuy t nh m ñ m
b o hi u qu ho t ñ ng t i ưu c a ph n m m. Hi n nay có r t nhi u
phương pháp ki m th và ñư c phân chia theo t ng c p ñ ki m th
khác nhau. Bài vi t này t p trung vào nghiên c u phương pháp ki m
th d a trên bi u ñ tr ng thái, ñây là m t k thu t ki m th mà
trong đó các trư ng h p ki m th ñư c thi t k ñ th c thi các giao
d ch tr ng thái h p l .
Bên c nh nh ng vi c đã làm đư c như trình bày và đánh giá
các phương pháp ki m th d a trên ng nghĩa bi u ñ tr ng thái; l a
ch n m t phương pháp và tri n khai ng d ng, nhưng công vi c ch
m i d ng l i vi c trình bày phương pháp và áp d ng ki m th th
cơng, chưa có cơng c tri n khai th c hi n c th .
V n ñ ki m th d a trên bi u ñ tr ng thái hi n nay ñang là
m t trong nh ng hư ng nghiên c u r t ñư c quan tâm, bao hàm
nhi u phương pháp ti p c n và k thu t áp d ng. Do th i gian nghiên
c u và ph m vi tìm hi u có gi i h n nên lu n văn không tránh kh i
nh ng h n ch và thi u sót.
T nh ng v n đ đã nêu trên, hư ng phát tri n trong th i
gian s p t i c a tơi đó là s tìm hi u và nghiên c u thêm m t s
phương pháp có liên quan, t đó đánh giá cũng như rút ra kinh
nghi m. Ti p theo s nghiên c u ñ ñ xu t m t phương pháp m i,
đ ng th i xây d ng cơng c h tr cho phương pháp m i này.




×