Tải bản đầy đủ (.ppt) (20 trang)

Báo cáo hệ điều hành thời gian thực

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 (337.23 KB, 20 trang )

GVHD: NGUY N VĂN THỄ Ọ
SVTH: NGUY N MINH QUỲNHỄ
PH M VĂN Đ CẠ Ứ
BÁO CÁO NHÓM
TRƯỜNG ĐẠI HỌC DUY TÂN
KHOA ĐIỆN TỬ VIỄN THÔNG
LỖI, LỖ HỎNG, NHIỄU
NỘI DUNG
V
a
i

t
r
ò

c
a

v
i
c

k
i
m

t
h





K

t
h
u
t

k
i
m

t
r
a



P
h
á
c

t
h
o

k


h
o
c
h

t
h

n
g
h
i
m

ế



K
i
m

t
h

c
p

h


t
h
n
g





8.2 Khái ni m l i, l h ng và nhi uệ ỗ ỗ ỏ ễ

L i thâm nh p vào chương trình không c n thông ỗ ậ ầ
qua m t thao tác nào c , là “error” ho c “defect” ộ ả ặ
(“l i” ho c “khuy t đi m”) g i là “Bug” (“nhi u”).ỗ ặ ế ể ọ ễ

S bi u th c a m t khuy t đi m di n ra trong quá ự ể ị ủ ộ ế ể ễ
trình ho t đ ng c a h th ng ph n m m đư c g i ạ ộ ủ ệ ố ầ ề ợ ọ
là m t “faults” (“l i”). ộ ỗ

M t l i nào đó làm cho h th ng ph n m m không ộ ỗ ệ ố ầ ề
ch y đư c m t yêu c u nào đó c a h th ng thì g i ạ ợ ộ ầ ủ ệ ố ọ
là m t “failure” (“l h ng ”).ộ ỗ ỏ
8.2.1 Vai trò c a vi c ki m thủ ệ ể ử

Đưa ra các lỗi của chương trình: Ví dụ: Từ 1985 đến
1987, sai sót của phần mềm trong một hệ thống chiếu
xạ Therac-25. Do thiếu viêc kiểm thử, dẫn đến việc tử
vong của một số bệnh nhân bị ung thư do tần số bức xạ
vượt quá giới hạn


Tăng tính tin cậy của hệ thống: ta không thể kiểm soát
tất cả các lỗi trong hệ thống, thay vào đó cần đảm bảo
độ tin cậy của hệ thống để có thể đảm bảo các yêu
cầu đặt ra.
8.2.2 K thu t ki m traỹ ậ ể

Có m t ph m v r ng cho các k thu t ki m tra ộ ạ ị ộ ỹ ậ ể
cho các c p đơn v và h th ng ki m nghi m, ki m ấ ị ệ ố ể ệ ể
tra d li u, và ki m tra tích h p.ữ ệ ể ợ

M t s k thu t thư ng đư c hoán đ i cho ộ ố ỹ ậ ờ ợ ổ
nhau, trong khi m t s khác thì không.ộ ố

B t kỳ m t k thu t nào trong s nh ng k ấ ộ ỹ ậ ố ữ ỹ
thu t này cũng có th là th nghi m không hoàn ậ ể ử ệ
ch nh ho c không kh thi trong tính toán cho các ỉ ặ ả
h th ng th i gian th c. Do đó, K t h p c a các k ệ ố ờ ự ế ợ ủ ỹ
thu t ki m tra là g n như luôn luôn là vi c c n ậ ể ầ ệ ầ
làm.
Ki m th c p đ n vể ử ấ ơ ị

M t s phương pháp ki m tra có th đư c s ộ ố ể ể ợ ử
d ng đ ki m tra đ c l p các modules ho c là các ụ ể ể ộ ậ ặ
đơn v . Nh ng k thu t này có th đư c s d ng ị ữ ỹ ậ ể ợ ử ụ
cho các k thu t viên ki m tra đ c l p đ th ỹ ậ ể ộ ậ ể ử
nghi m cho m i đơn v trong h th ng.ệ ỗ ị ệ ố

Nh ng k thu t này cũng có th đư c áp d ng ữ ỹ ậ ể ợ ụ
cho các h th ng con (ho c các module liên quan ệ ố ặ
đ n các ch c năng tương t ).ế ứ ự

Ki m th c p đ n v - Ki m th h p đenể ử ấ ơ ị ể ử ộ

Ch có đ u vào và đ u ra c a đơn v đư c xem ỉ ầ ầ ủ ị ợ
xét.

Vi c ki m tra đ c l p đư c th c hi n cho m t ệ ể ộ ậ ợ ự ệ ộ
module, có th đư c áp d ng cho m t s lư ng ể ợ ụ ộ ố ợ
l n các module v i các ch c năng tương t .ớ ớ ứ ự

M t s s d ng r ng rãi c a k thu t ki m tra ố ố ử ụ ỗ ủ ỹ ậ ể
h p đen bao g m:ộ ồ

Th nghi m toàn di n.ử ệ ệ

Th nghi m gi i h n.ử ệ ớ ạ

Th nghi m ng u nhiên.ử ệ ẫ

Th nghi m các trư ng h p x u nh t.ử ệ ờ ợ ấ ấ
Ki m th h p đen – Th nghi m toàn di nể ử ộ ử ệ ệ

Brute-force ho c th nghi m toàn di n liên ặ ử ệ ệ
quan đ n vi c trình bày đo n mã code v i m i s ế ệ ạ ớ ỗ ự
k t h p đ u vào có th . Th nghi m Brute-force có ế ợ ầ ể ử ệ
th làm vi c t t trong trư ng h p có m t s ít các ể ệ ố ờ ợ ộ ố
đ u vào, m i l n v i m t lo t các đ u vào h n ch . ầ ỗ ầ ớ ộ ạ ầ ạ ế

Tuy nhiên, m t v n đ l n v i th nghi m ộ ấ ề ớ ớ ử ệ
Brute-force là s bùng n t h p trong m t s ự ổ ổ ợ ộ ố
trư ng h p th nghi m. Ví d , đ i v i các mã x lý ờ ợ ử ệ ụ ố ớ ử

t c đ d li u 3*2ố ộ ữ ệ
16
, các trư ng h p ki m tra s ờ ợ ể ẽ
đư c yeu c u d ng l i. ợ ầ ừ ạ
Ki m th h p đen – Th nghi m gi i h nể ử ộ ử ệ ớ ạ

Giá tr ranh gi i th nghi m ho c ki m tra góc ị ớ ử ệ ặ ể
h p đ gi i quy t v n đ c a s bùng n t h p ợ ể ả ế ấ ề ủ ự ổ ổ ợ
gây ra b i t p h p m t vài th nghi m r t nh c a ở ậ ợ ộ ử ệ ấ ỏ ủ
vi c k t h p các đ u vào đư c hi u như “ranh gi i” ệ ế ợ ầ ợ ể ớ
c a đ u vào. Ví d : 5 đ u vào 16bit ta có 2ủ ầ ụ ầ
16 *
2
16*
2
16*
2
16*
2
16 =
2
80
trư ng h p.ờ ợ

Vi c ki m tra đ u vào đư c gi i h n cho m i s ệ ể ầ ợ ớ ạ ỗ ự
k t h p c a giá tr max, min, và các giá tr trung ế ợ ủ ị ị
bình m i đ u vào, sau đó t p th nghi m s bao ỗ ầ ậ ử ệ ẽ
g m 3ồ
5
= 243 trư ng h p th nghi m nên đư c x ờ ợ ử ệ ợ ử

lý d dàng hơn.ễ
Ki m th h p đen – Th nghi m ng u nhiênể ử ộ ử ệ ẫ

Liên quan đến các kiểu thử nghiệm đoạn code đơn
vị trong trường hợp thử ngẫu nhiên trong một khoảng
thời gian. Việc kiểm tra độc lập được thực hiện
cho một module, có thể được áp dụng cho một số lượng
lớn các module với các chức năng tương tự.

Các trường hợp thử ngẫu nhiên được tạo ra dựa
trên việc xác định các số liệu thống kê cơ bản của các
đầu vào dự kiến.

Hạn chế lớn của kỹ thuật này là các chức năng phân
loại xác suất cơ bản cho các biến đầu vào có thể không
có sẵn hoặc không chính xác, và có khả năng bỏ lỡ các
với xác suất xảy ra thấp
Ki m th h p đen – Th nghi m tr ng h p x u nh tể ử ộ ử ệ ườ ợ ấ ấ

Ki m tra các k ch b n có th đư c xem là r t ể ị ả ể ợ ấ
hi m và khó x y ra:Thư ng thì nh ng trư ng h p ế ả ờ ữ ờ ợ
đó là nh ng trư ng h p đ c bi t và đư c bi t ữ ờ ợ ặ ệ ợ ế
chính xác như nh ng đo n mã có kh năng đư c ữ ạ ả ợ
thi t k kém và do đó d th t b i. ế ế ễ ấ ạ

Ví d , trong các phép đo quán tính h th ng, ụ ệ ố
trong khi nó đư c mong đ i là s không x y ra thì ợ ợ ẽ ả
h th ng s ho t đ ng v i gia t c t i đa, có th ệ ố ẽ ạ ộ ớ ố ố ể
bi u di n v i 16bit ký t , trư ng hơp x u nh t này ể ễ ớ ự ờ ấ ấ
v n c n đư c th nghi m.ẫ ầ ợ ử ệ

Ki m th h p tr ngể ử ộ ắ

Đư c đi u khi n logic:đư c thi t k đ th c ợ ề ể ợ ế ế ể ự
hành trên t t c các đư ng d n trong code đơn v ấ ả ờ ẫ ị

Có th phát hi n ra nh ng đư ng d n không ể ệ ữ ờ ẫ
ho t đ ng.ạ ộ

Th nghi m v i:ử ệ ớ

Phương pháp chính th c trong th ứ ử
nghi mệ
.

Th nghi m ph n m m hư ng đ i tư ngử ệ ầ ề ớ ố ợ


Th nghi m mã đ u tiênử ệ ầ

Xác đ nh gi i h n v s tr ng h p ki m thị ớ ạ ề ố ườ ợ ể ử

McCabe đã phát tri n m t quy trình thu t toán ể ộ ậ
(g i là phương pháp cơ b n) đ xác đ nh m t t p ọ ả ể ị ộ ậ
h p các đư ng cơ s .ợ ờ ở

( Tham kh o giáo trình )ả
Quá trình g l i “Debugging”ỡ ỗ

Vi c tách các đi u ki n có nh hư ng đ n s tính ệ ề ệ ả ở ế ự
toán v m t th i gian và có th đư c đưa vào các v n ề ặ ờ ể ợ ấ

đ khó ư c tính v th i gian.ề ớ ề ờ

M t s m o đ g l i “Debugging”:ộ ố ẹ ể ỡ ỗ
- Gi tài li u v các chương trình m t cách c n th n.ữ ệ ề ộ ẩ ẩ
- G l i bi u tư ng có s n các bư c s d ng: phác ỡ ỗ ể ợ ẵ ớ ử ụ
h a, đi m d ng, b qua, đ cô l p các l i logic.ọ ể ừ ỏ ể ậ ỗ
- S d ng ki m th t đ ng n u có th .ử ụ ể ử ự ộ ế ể
- Môi trư ng c a nh ng dòng l nh (như Unix / ờ ủ ữ ệ
Linux): s d ng in khai báo đ u ra là k t qu trung ử ụ ầ ế ả
gian t i các tr m ki m soát trong các code.ạ ạ ể
- Chú thích trong các ph n c a code có l i cho đ n ầ ủ ỗ ế
khi chương trình biên d ch và ch y ị ạ

8.2.3 Ki m th c p h th ngể ử ấ ệ ố

M t khi các module đ c l p đã đư c ki m th thì sau ộ ộ ậ ợ ể ử
đó h th ng con ho c toàn b h th ng c n ph i đư c ệ ố ặ ộ ệ ố ầ ả ợ
ki m th . Trong các h th ng l n hơn, quá trình này có ể ử ệ ố ớ
th đư c chia thành m t lo t các ki m th h th ng con, ể ợ ộ ạ ể ử ệ ố
và sau đó m i là ki m th t ng th h th ng.ớ ể ử ổ ể ệ ố

Vi c ki m th c p h th ng luôn luôn x y ra các ệ ể ử ấ ệ ố ả
module thành ph n c a nó đã vư t qua các bài ki m th . ầ ủ ợ ể ử

N u có l i x y ra trong ki m th c p h th ng, các l i ế ỗ ả ể ử ấ ệ ố ỗ
ph i đư c s a ch a, sau đó m i trư ng h p ki m th liên ả ợ ử ữ ỗ ờ ợ ể ử
quan đ n các module thay đ i ph i đư c ch y l i và t t ế ổ ả ợ ạ ạ ấ
c h th ng các c p ki m th trư c đây ph i đư c thông ả ệ ố ấ ể ử ớ ả ợ
qua trong bài ki m th ti p theo ể ử ế
Th nghi m phòng s ch “ cleaning test”ử ệ ạ


Trong phương pháp này, nhóm phát tri n là ể
không đư c phép ki m th code như nó đang ợ ể ử
đư c phát tri n. Thay vào đó, ngư i ta ki m th cú ợ ể ờ ể ử
pháp, code walkthrough , ki m tra nhóm, và xác ể
minh chính xác nh ng gì đư c s d ng đ đ m ữ ợ ử ụ ể ả
b o tính toàn v n code.ả ẹ

Ngư i ta s d ng k thu t này gi ng như m t ờ ử ụ ỹ ậ ố ộ
làn da hình hành, l p ch c năng m i đư c thêm ớ ứ ớ ợ
vào h th ng ph n m m cho đ n khi nó đã hoàn ệ ố ầ ề ế
toàn đáp ng yêu c u.ứ ầ
Th nghi m s căng th ng (“stress”)ử ệ ự ẳ

Ki m th b ng cách nào h th ng b l i ể ử ằ ệ ố ị ỗ
trong trư ng h p nó ch u s xáo tr n c a ờ ợ ị ự ộ ủ
m t s lư ng l n các y u t đ u vào ti p ộ ố ợ ớ ế ố ầ ế
theo là r i lo n nh tr i r ng trên m t ố ạ ỏ ả ộ ộ
kho ng th i gian dài.ả ờ

Ki m th này cũng có th s d ng trong ể ử ể ử ụ
các trư ng h p và đi u ki n mà h th ng ờ ợ ề ệ ệ ố
ph i t i n ngả ả ặ
Th nghi m vi c th c hi n 1ph n c a h th ngử ệ ệ ự ệ ầ ủ ệ ố

Thách th c đ có th phân chia các ch c năng ứ ể ể ứ
cho các ph n c a h th ng trong vi c th nghi m ầ ủ ệ ố ệ ử ệ
h th ng th i gian th c. ệ ố ờ ự

Nhi u v n đ phát sinh tương t cũng đư c tìm ề ấ ề ự ợ

th y trong m i liên quan c a các nguyên m u ấ ố ủ ẫ
ph n c ng.ầ ứ

Có r t nhi u chi n lư c đơn gi n liên quan đ n ấ ề ế ợ ả ế
vi c t o ra và các trình đi u khi n khai đ đ i phó ệ ạ ề ể ể ố
v i các ph n thi u giao di n. Th nghi m mã ớ ầ ế ở ệ ử ệ
ngu n m v thương m i và các máy móc có th ồ ở ề ạ ể
h u ích trong nh ng trư ng h p này ữ ữ ờ ợ
8.2.4 Phác th o k ho ch ki m thả ế ạ ể ử

K ho ch c a vi c th nghi m ph i th c hi n ế ạ ủ ệ ử ệ ả ự ệ
theo các kho n m c c a tài li u yêu c u, vi c cung ả ụ ủ ệ ầ ệ
c p các tiêu chu n đ s d ng cho vi c đánh giá ấ ẩ ể ử ụ ệ
các yêu t yêu c u đã đư c đáp ng.ố ầ ợ ứ

M t t p h p các trư ng h p th nghi m đư c ộ ậ ợ ờ ợ ử ệ ợ
chuy n thành b ng văn b n sau đó s đư c s ể ằ ả ẽ ợ ử
d ng đ đo các ch tiêu đ ra trong k ho ch ki m ụ ể ỉ ề ế ạ ể
th .ử

K ho ch th nghi m bao g m các tiêu chí đ ế ạ ử ệ ồ ể
th nghi m các ph n m m trên modules theo c p ử ệ ầ ề ấ
đ module hay units (đơn v ) trên m t h th ng ộ ị ộ ệ ố
ho c c p h th ng con, c hai nên đư c k t h p ặ ấ ệ ố ả ợ ế ợ
trong m t chương trình th nghi m t t. ộ ử ệ ố

×