II. Kiểm thử
Giai đoạn lập trình – kiểm thử là giai đoạn cuối cùng trong mô hình thác nước. Như chúng tôi đã trình bày trong các bài học trước, nội dung công việc của giai đoạn này bao gồm: lập trình và kiểm thử các thành phần dữ liệu, xử lý và giao diện.
I. Lập trình
Trước khi trình bày cụ thể các bước thực hiện, chúng tôi sẽ giới thiệu một số qui tắc cần tuân thủ trong quá trình lập trình các ứng dụng tin học nhằm mục đích nâng cao hiệu quả của công việc lập trình cũng như bảo trì chương trình về sau.
I.1. Một số qui tắc
Thống nhất cách đặt tên các hằng
Các hằng đặt tên theo dạng chữ in. Ví dụ: PI, TILE_A, TILE_B Thống nhất cách đặt tên các biến
Các biến nên đặt tên gợi nhớ, bắt đầu bằng 1 ký tự có ý nghĩa xác định kiểu của biến. Ví dụ:
Dim sNoiDung As String ‘biến kiểu String Dim iChiso As Integer ‘biến kiểu Integer
Học phần 4 – Phân tích Hệ thống Trang 79/150
Thống nhất cách đặt tên các thủ tục và tên các tham số
Các thủ tục bắt đầu bằng pr (viết tắt của Procedure). Ví dụ: Private Sub prChe_Nut()
End Sub
Nếu có tham số thì các tham số được đặt tên bắt đầu là: pi nếu tham số truyền theo trị (i là chữ viết tắt của Input)
po nếu tham số truyền theo tham chiếu (o là chữ viết tắt của Output). Ví dụ: Private Sub prDT_HinhTron (ByVal piR as Single, ByRef poDT as Single)
End Sub
Thống nhất cách đặt tên các hàm và tên các tham số
Các hàm bắt đầu bằng fn (viết tắt của Function). Ví dụ:
Private Function fnSoNguyenTo (ByVal piSo As Integer) As Boolean
End Function
Thống nhất cách đặt tên các điều khiển
Các điều khiển nên đặt tên gợi nhớ, bắt đầu bằng 3 ký tự có ý nghĩa xác định kiểu của điểu khiển. Ví dụ:
cmdThem, nút thêm loại command button txtHoTen, hộp văn bản loại text box
I.2. Các bước thực hiện
Dựa theo hồ sơ thiết kế, chúng ta sẽ lần lượt lập trình, cài đặt các thành phần sau đây:
I.2.1. Cài đặt cơ sở dữ liệu
Kết quả công việc thiết kế thành phần dữ liệu của ứng dụng là sơ đồ logic dữ liệu có kèm theo các ràng buộc toàn vẹn và bảng tầm ảnh hưởng. Tất cả các kết quả trên sẽ được cài đặt trong một hệ quản trị cơ sở dữ liệu quan hệ.
Tạo cơ sở dữ liệu
Trước hết, chúng ta cần phải tạo cơ sở dữ liệu cho ứng dụng bằng cách dùng công cụ tạo cơ sở dữ liệu của hệ quản trị cơ sở dữ liệu hoặc sử dụng câu lệnh SQL :
Học phần 4 – Phân tích Hệ thống Trang 80/150
Sau khi đã tạo xong cơ sở dữ liệu, chúng ta có thể tạo các thành phần của cơ sở dữ liệu như: các bảng, hàm cửa sổ, ràng buộc toàn vẹn,…
Tạo bảng
Mỗi một quan hệ trong sơ đồ logic dữ liệu sẽ được cài đặt thành một bảng trong cơ sở dữ liệu. Nội dung mô tả khi cài đặt một bảng gồm :
+ Tên bảng
+ Cấu trúc của bảng gồm các vùng. Mỗi vùng đều có tên, kiểu dữ liệu, kích thước, diễn giải (nếu cần), các đặc tính (not null,…), điều kiện ràng buộc trên vùng, giá trị khởi tạo ngầm định (default value), …
+ Khóa chính, khóa ngoại (nếu có).
+ Các chỉ mục (index) phục vụ cho việc sắp xếp, tìm kiếm hoặc cài đặt quan hệ. Tạo view
Một hàm cửa sổ có thể được tạo bằng cách dùng công cụ của hệ quản trị cơ sở dữ liệu hoặc sử dụng câu lệnh SQL:
CREATE VIEW <tên hàm cửa sổ> AS <lệnh SQL >
Khai báo các ràng buộc toàn vẹn
Xét trên phương diện hình thức kiểm tra, các ràng buộc toàn vẹn có thể được chia làm 4 nhóm sau:
+ Các ràng buộc toàn vẹn được kiểm tra trực tiếp bằng chính hệ quản trị cơ sở dữ liệu Thông thường, nhóm này gồm những ràng buộc toàn vẹn về khóa nội, miền giá trị của vùng, liên vùng và khóa ngoại. Các ràng buộc toàn vẹn này thường được cài đặt ngay trong quá trình khai báo các bảng.
+ Các ràng buộc toàn vẹn được kiểm tra thông qua giao diện
Thông thường, đây là những ràng buộc toàn vẹn về miền giá trị của vùng, khóa ngoại,… Ví dụ, một nhóm các điều khiển tùy chọn (radio button hay option) có thể được dùng để bảo đảm cho một vùng của bảng sẽ lấy đúng một trong các giá trị hợp lệ hay các hộp danh sách kéo xuống (combo box) được dùng để bảo đảm sự đúng đắn của các khóa ngoại.
Phần cài đặt này sẽ được thực hiện trong thành phần giao diện của ứng dụng.
+ Các ràng buộc toàn vẹn được kiểm tra bằng thủ tục kiểm tra
Đây là trường hợp thông thường nhất. Mỗi ràng buộc toàn vẹn sẽ có một thủ tục, thường được gọi là trigger, thực hiện chức năng kiểm tra dữ liệu có vi phạm ràng buộc toàn vẹn hay không.
Hầu hết các hệ quản trị cơ sở dữ liệu đều cho phép cài đặt các trigger để kiểm tra ràng buộc toàn vẹn.
Học phần 4 – Phân tích Hệ thống Trang 81/150
Giả sử ứng dụng có một ràng buộc liên vùng: số tiền bằng tích của số lượng và đơn giá. Thay vì yêu cầu người sử dụng nhập cả 3 giá trị và sau đó hệ thống sẽ gọi thủ tục kiểm tra tính đúng đắn của dữ liệu thì chúng ta có thể thay thế thủ tục kiểm tra nói trên bằng một thủ tục tính toán số tiền từ số lượng và đơn giá. Như vậy, trong quá trình nhập liệu, người sử dụng chỉ phải nhập hai giá trị: số lượng, đơn giá và hệ thống sẽ gọi thực hiện thủ tục tính toán giá trị của số tiền.
Phần cài đặt cho này sẽ được thực hiện trong thành phần giao diện của ứng dụng.
I.2.2. Cài đặt các màn hình nhập liệu
Kết quả công việc thiết kế thành phần giao diện của ứng dụng là các màn hình nhập liệu có kèm theo các ràng buộc toàn vẹn và bảng tầm ảnh hưởng. Tất cả các kết quả trên sẽ được cài đặt trong một ngôn ngữ lập trình.
Khai báo dữ liệu nguồn
Dữ liệu nguồn của một màn hình nhập liệu là các bảng hay hàm cửa sổ mà người sử dụng sẽ cập nhật dữ liệu thông qua màn hình này.
Cài đặt điều khiển
Chọn các công cụ thích hợp để tạo các điều khiển trên màn hình như trong mẫu thiết kế. Phối hợp với việc kiểm tra ràng buộc toàn vẹn (dựa theo bảng tầm ảnh huởng) với
các thủ tục xử lý lỗi. I.2.3. Cài đặt các báo cáo
Khai báo dữ liệu nguồn (tương tự màn hình nhập liệu)
Cài đặt và định dạng các điều khiển trên báo biểu.
Định dạng báo biểu (Page Setup) I.2.4. Cài đặt các chức năng tra cứu, tiện ích
Tìm kiếm dữ liệu (Find)
Giúp đỡ (Help)
Lưu trữ (Backup) – Phục hồi dữ liệu (Restore)
Cài đặt màn hình cấu hình hệ thống (Configuration)