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

Bài giảng Nhập môn Tin học: Chương 4 - Từ Thị Xuân Hiền

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 (1.4 MB, 26 trang )

Chương 4
Cài đặt và vận hành hệ thống


2

Kiểm thử và gỡ lỗi- Testing and
Debugging
• Kiểm thử: quá trình kiểm tra chương trình có đáp ứng các chức năng theo yêu
cầu ban đầu đưa ra không.
• Gỡ lỗi: quá trình tìm lỗi và sửa lỗi trong chương trình.


3

Kiểm thử và gỡ lỗi- Testing and
Debugging

qCác loại lỗi của chương trình - Types of Program
Errors
• Lỗi cú pháp - Syntax Errors:
• Là các lệnh trong chương trình không tuân theo cú pháp của
ngôn ngữ lập trình đó
Ví dụ: C:= 5+4; Lỗi trong C nhưng lại đúng trong Pascal
• Lỗi Logic - Logic Errors
• Chương trình vẫn được biên dịch và thực hiện thành công
nhưng kết quả không chính xác.


4


Kiểm thử và gỡ lỗi- Testing and
Debugging

qKiểm thử chương trình - Testing a Program


Kiểm thử thủ tục liên quan đến việc chạy chương trình với
nhiều mẫu dữ liệu đầu vào, so sánh kết quả đạt được với kết
quả đúng.



Dữ liệu thử nghiệm phải kiểm tra từng chức năng logic của
chương trình, và nên bao gồm tất cả các loại dữ liệu có thể
hợp lệ và không hợp lệ.


Kiểm thử và gỡ lỗi- Testing and Debugging


Chương trình phát hành để thử nghiệm được gọi là Alpha version và thử nghiệm
được tiến hành trên nó được gọi là Alpha testing.



Chương trình phát hành để thử nghiệm bổ sung cho một lựa chọn của người dùng
bên ngoài là Beta version và thử nghiệm được tiến hành trên nó được gọi là Beta
testing



6

Gỡ lỗi cú pháp cho chương trình (Syntax Errors)
qLỗi cú pháp tương đối dễ phát hiện và chỉnh sửa hơn so với các lỗi logic.
− Bộ xử lý ngôn ngữ được thiết kế để tự động phát hiện các lỗi cú pháp.
− Lỗi cú pháp thường gây ra nhiều thông báo lỗi được tạo ra bởi bộ xử lý ngôn ngữ.
− Loại bỏ các lỗi cú pháp sẽ cho kết quả trong việc loại bỏ tất cả các thông báo lỗi liên
quan.


7

Gỡ lỗi logic cho chương trình (Logic Errors)
qLỗi logic khó phát hiện hơn lỗi cú pháp, máy tính không đưa ra bất kỳ thông báo
lỗi cho các lỗi logic.
qMột số phương pháp thường dùng để gỡ lỗi logic:
§ Làm mô phỏng bằng tay của mã chương trình.
§ Đưa lệnh xuất dữ liệu tại các vị trí thích hợp trong mã chương trình, in ra kết quả tính
toán trung gian.
§ Sử dụng một trình gỡ lỗi (một công cụ phần mềm hỗ trợ lập trình viên thực hiện
chương trình từng bước)


8

Gỡ lỗi logic cho chương trình(Logic Errors)
qTrình gỡ lỗi hỗ trợ hai công cụ:
• Điểm ngắt (Breakpoint):

• Là điểm dừng khi thực thi chương trình, hiển thị giá trị của

các tham số cần kiểm tra
• Breakpoint có thể được đặt hoặc gỡ bỏ tại bất kỳ vị trí nào
trong chương trình.
• Điểm quan sát (Watchpoint)

• Bộ gỡ lỗi lần theo vết của biến và thời điểm giá trị của nó
thay đổi.


9

Gỡ lỗi logic cho chương trình(Logic Errors)
qSử dụng kết xuất bộ nhớ (Memory dump)
• Thường được sử dụng khi chương trình “bị treo" trong thời gian chạy thử nghiệm.
• Bản sao nội dung trong bộ nhớ chính và bộ đếm được lấy tại thời điểm chương trình
bị treo. Bản sao này gọi là kết xuất bộ nhớ hoặc kết xuất vùng nhớ.
• Danh sách các chỉ thị và dữ liệu kết xuất bộ nhớ được giữ trong bộ nhớ chính của
máy tính theo hình thức nguyên mẫu.


Khác nhau giữa kiểm thử và gỡ lỗi

10

TT

Kiểm Thử (Testing)

Gỡ Lỗi (Debugging)


1

• Quá trình xác nhận sự đúng đắn • Quá trình loại bỏ lỗi trong chương trình.
của chương trình.
• Mục đích: phát hiện nguyên nhân gây
• Mục đích: chứng minh chương lỗi và loại bỏ các lỗi được phát hiện.
trình đáp ứng các chi tiết kỹ thuật.

2

• Kiểm thử được hoàn thành khi tất • Gỡ lỗi hoàn thành khi tất cả các lỗi
cả các lệnh đã được thực hiện trong chương trình được chỉnh sửa.
đúng.
• Quá trình gỡ lỗi kết thúc chỉ tạm thời vì
nó phải được khởi động lại bất cứ khi
nào một lỗi mới được tìm thấy trong
chương trình.


Khác nhau giữa kiểm thử và gỡ lỗi

11

TT

Kiểm Thử (Testing)

• Kiểm thử là một quá trình:
3


− Đã được định nghĩa
− Được quy hoạch
− Được lập kế hoạch trước

• Kiểm thử có thể bắt đầu trong giai
đoạn đầu của quá trình phát triển
2
phần mềm

Gỡ Lỗi (Debugging)

• Gỡ lỗi là một quá trình không thể
được lên kế hoạch trước.
• Nó chỉ được thực hiện khi phát
hiện lỗi trong một chương trình.
• Gỡ lỗi chỉ bắt đầu sau khi chương
trình được mã hóa.


12

Tài liệu phần mềm –Documentation
• Tài liệu phần mềm: thu thập, ghi chép, lưu trữ thông tin
về quá trình xây dựng phần mềm.
• Một phần mềm không thể xem là hoàn thành cho đến khi
nó có tài liệu hợp lệ.
• Tài liệu phần mềm là một tiến trình được thực hiện trong
suốt vòng đời của phần mềm.



13

Tài liệu phần mềm –Documentation
qSự cần thiết của tư liệu phần mềm
• Giúp các lập trình viên có thể theo dõi đầy đủ quá trình phát triển phần mềm.
• Hỗ trợ trong việc bảo trì của phần mềm.
• Là một tài liệu rất có ích trong việc bắt đầu lại một dự án phần mềm đã bị trì hoãn
trước đó.


14

Tài liệu phần mềm –Documentation
• Có 3 hình thức tài liệu được sử dụng:
• Chú thích cho chương trình
• Sổ tay hệ thống
• Hướng dẫn sử dụng.


15

Tài liệu phần mềm –Documentation
• Chú thích (Comment)


Được sử dụng để giải thích logic của chương trình.



Cải thiện chất lượng và tính chất dễ hiểu của chương trình.




Các chú thích bị bỏ qua khi biên dịch cũng như khi thực thi chương trình


16

Tài liệu phần mềm –Documentation
• Chú thích (Comment)


17

Tài liệu phần mềm –Documentation
qSổ tay hệ thống
• Trình bày rõ mục tiêu và tính hữu dụng của phần mềm.
• Mô tả các chức năng, hạn chế, hình thức và các dạng của dữ liệu đầu vào sẽ được
sử dụng, và kết quả đầu ra cần tìm.
• Tên cụ thể của chương trình và mô tả mục đích của chương trình .
• Biểu đồ chi tiết về hệ thống và chương trình để tham chiếu đến danh sách tham số,
biến của chương trình.


18

Tài liệu phần mềm –Documentation
• Mô tả các quá trình tính toán và kiểm soát các thủ tục.
• Danh sách mã nguồn, thông tin chi tiết về các thay đổi.
• Mô tả và chỉ rõ tất dữ liệu đầu vào và in ra kết quả đầu ra.

• Mô tả dữ liệu kiểm thử và kết quả.


19

Tài liệu phần mềm –Documentation
qSổ tay người dùng: phải chứa các thông tin sau:
• Chi tiết cài đặt và hoạt động của chương trình.
• Mô tả và ví dụ các câu lệnh kiểm tra có thể được dùng
• Các lệnh giao tiếp, các lỗi và các thông báo giao tiếp có thể phát sinh, trả lời và hành
động thực hiện.
• Danh sách các điều kiện, các giải thích.
• Kiểm tra đặc biệt (nếu có) và các biện pháp bảo mật,…


20

Chuyển đổi thành hệ thống mới
• Khi một phần mềm đã sẵn sàng để sử dụng, nó được triển khai tại các trang web
cho người dùng.
• Ở giai đoạn này, hoạt động chuyển đổi từ hệ thống cũ sang hệ thống mới diễn ra.

• Ba phương pháp để thực hiện quá trình chuyển đổi là:
• Chuyển đổi trực tiếp (Immediate Changeover).
• Chạy song song (Parallel Run)
• Chuyển đổi theo từng giai đoạn (Phased Conversion).


21


Chuyển đổi thành hệ thống mới


Chuyển đổi trực tiếp (Immediate Changeover).


Là giới hạn ngày mà hệ thống mới được đưa vào hoạt động.



Do lỗi nghiêm trọng làm cho toàn bộ hoạt động của hệ thống cũ phải dừng lại.



Phương pháp này được dùng trong trường hợp có sẵn nhân lực và thời gian chuyển
đổi ít.


22

Chuyển đổi thành hệ thống mới


Chạy song song (Parallel Run)


Cả hệ thống cũ và mới hoạt động song song với cùng dữ liệu ban đầu cho ba hay
bốn chu kỳ.




Kết quả của hệ thống mới được so sánh với hệ thống cũ để tăng độ tin cậy trong hệ
thống mới.



Là một trong những phương pháp an toàn để triển khai một hệ thống mới.



Không bị gián đoạn công việc, vì hệ thống cũ vẫn còn đang hoạt động và những vấn
đề trong hệ thống mới có thể được sửa chữa.


23

Chuyển đổi thành hệ thống mới
• Chạy song song (Parallel Run)


Phương pháp này rất tốn kém, vì phải bổ sung nhân lực trong quá trình hai hệ thống
chạy song song.



Không được áp dụng trong trường hợp nguồn nhân lực khan hiếm.


24


Chuyển đổi thành hệ thống mới


Chuyển đổi theo từng giai đoạn (Phased Conversion).


Việc chuyển đổi hoàn toàn sang hệ thống mới diễn ra tăng dần theo thời gian.



Kết quả thu được ở mỗi giai đoạn của hệ thống mới được so sánh với hệ thống cũ.
Bất kỳ khác biệt hay sai sót được tìm thấy sẽ được kiểm tra và gỡ bỏ.



Độ tin cậy tăng trong từng giai đoạn của hệ thống mới.



Theo thời gian các giai đoạn của hệ thống mới đi vào hoạt động, hệ thống cũ từng
bước bị loại ra.


25

Đánh giá hệ thống


Quá trình đánh giá một hệ thống là để xác minh hệ thống có đạt mục tiêu ban đầu hay
không.




Những điểm thường được dùng để đánh giá một hệ thống là:
• Đánh giá hiệu quả (Performance Evaluation)
• Phân tích chi phí (Cost Analysis)
• Phân tích thời gian (Time Analysis)
• Sự hài lòng của người sử dụng (User Satisfaction)
• Sửa đổi dễ dàng (Ease of Modification)
• Tỷ lệ thất bại (Failure Rate)


×