HỆ THỐNG THÔNG TIN
QUẢN LÝ
CHƯƠNG 9:
THIẾT KẾ CHƯƠNG TRÌNH
CHƢƠNG 9: THIẾT KẾ CHƢƠNG TRÌNH
29 December 2009
Phân tích - Thiết kế - Hệ thống thông tin
2
Bài 1: Đại cƣơng về thiết kế chƣơng trình.
Bài 2: Module chƣơng trình.
Bài 3: Công cụ để diễn tả cấu trúc chƣơng trình
(Lƣợc đồ cấu trúc).
Bài 4: Chất lƣợng của lƣợc đồ cấu trúc.
Bài 5: Cách thức chuyển đổi BLD (Biểu đồ luồng dữ
liệu) thành LCT (Lƣợc đồ cấu trúc)
Bài 6: Đóng gói thành Module tải
Bài 7: Lập các mẫu thử.
Bài 8: Lập chƣơng trình - Chạy thử - Bảo trì
Bài 1: Đại cƣơng về thiết kế chƣơng trình.
29 December 2009
Phân tích - Thiết kế - Hệ thống thông tin
3
Nội dung bài học
Thiết kế chi tiết HTTT bao gồm:
Giao diện.
Kiểm soát.
Tệp (File).
Chƣơng trình
Thiết kế các module chƣơng trình là công việc chính của giai đoạn
thiết kế chi tiết.
Ngoài ra các chức năng khác nhƣ sau cũng cần đƣợc thể hiện trong
thiết kế chƣơng trình:
Chức năng đối thoại.
Chức năng xử lý lỗi.
Chức năng xử lý vào/ ra.
Chức năng tra cứu CSDL.
Chức năng module điều hành.
Bài 1: Đại cƣơng về thiết kế chƣơng trình.
29 December 2009
Phân tích - Thiết kế - Hệ thống thông tin
4
Nội dung chủ yếu của giai đoạn thiết kế nhƣ sau:
Xác định cấu trúc tổng quát:
Phân định các module chƣơng trình.
Xác định mối liên quan giữa các module đó (thông qua lời gọi và
các thông tin trao đổi).
Đặc tả các module chƣơng trình.
Gộp các module thành chƣơng trình (module tải)
Thiết kế các mẫu thử (Test chƣơng trình, chú ý đây cũng là việc
của ngƣời thiết kế).
Bài 2: Module chƣơng trình.
29 December 2009
Phân tích - Thiết kế - Hệ thống thông tin
5
Nội dung bài học
Định nghĩa
Module chương trình có thể hiểu dƣới các dạng sau:
Một chƣơng trình con dạng Function, Procedure, Subroutine,
Một cụm lệnh trong chƣơng trình.
Hoặc những ngôn ngữ dùng có UNIT, CLASS, OBJIECT,…
Các thuộc tính của module chƣơng trình.
Module chƣơng trình có 4 thuộc tính cơ bản sau đây:
Đặc trưng ngoài: Gồm Vào: Thông tin từ chƣơng trình gọi nó, Ra:
Thông tin trả lại cho chƣơng trình gọi (1) ; chức năng hàm biến
đổi vào→ ra (2).
Đặc trưng trong: Gồm Cơ chế (3): Phƣơng thức cụ thể để thực hiện
chức năng trên; Dữ liệu cục bộ (4): chỗ nào nhớ, dữ liệu dùng
riêng cho nó.
Bài 2: Module chƣơng trình.
29 December 2009
Phân tích - Thiết kế - Hệ thống thông tin
6
Nội dung bài học
Các thuộc tính của module chƣơng trình (Tiếp)
Các loại chƣơng trình thƣờng có trong hệ thống quản lý:
Chƣơng trình đơn chọn (menu program).
Chƣơng trình nhập dữ liệu (data entry program).
Chƣơng trình biên tập kiểm tra dữ liệu vào (edit program).
Chƣơng trình cập nhật dữ liệu (update program).
Chƣơng trình hiển thị, tra cứu (display or inquiry program).
Chƣơng trình tính toán (compute program).
Thiết kế cấu trúc.
Thiết kế có cấu trúc là phƣơng pháp tiến hành phân định các module theo kiểu
trên xuống và làm mịn dần từng bƣớc.
Phƣơng pháp thiết kế có cấu trúc:
Phân định module về logic
Chỉ mô tả nhƣ những cái vào/ ra, chuyển giao dữ liệu, chứ nội dung chƣa đƣợc
đề cập.
Có hƣớng dẫn các phân định và ý nghĩa của module
Bài 3: Công cụ để diễn tả cấu trúc chƣơng trình
(Lƣợc đồ cấu trúc).
29 December 2009
Phân tích - Thiết kế - Hệ thống thông tin
7
Nội dung bài học
Lược đồ cấu trúc: LCT là công cụ ở đây hết sức thô sơ, thô sơ
một cách cố tình để trừu tƣợng hóa nhằm đi tới cách viết các
chƣơng trình chi tiết và cụ thể hơn.
Nội dung gồm các phần sau:
Biểu diễn các Module
Kết nối các module: thể hiện bằng lời gọi
Thông tin chuyển giao giữa các module
Một số trƣờng hợp đặc biệt
Bài 3: Công cụ để diễn tả cấu trúc chƣơng trình
(Lƣợc đồ cấu trúc).
29 December 2009
Phân tích - Thiết kế - Hệ thống thông tin
8
Biểu diễn các Module
Module đƣợc biểu diễn bằng hình chữ nhật trong có ghi nhãn là tên
module.
Trƣờng hợp đặc biệt, biểu diễn bằng hình chữ nhật có gạch dọc.
Kết nối các module: thể hiện bằng lời gọi
A gọi B, B thực hiện chức năng của mình rồi quay về A ở vị trí sau
lời gọi.
Kết nối các module: thể hiện bằng lời gọi
Các module chuyển giao bằng dữ liệu và điều khiển
Dữ liệu chuyển giao ký hiệu bằng mũi tên và đầu tròn rỗng
Một số trƣờng hợp đặc biệt
Chọn lựa gọi 1 trong 2 module, lặp gọi nhiều lần.
Bài 4: Chất lƣợng của lƣợc đồ cấu trúc.
29 December 2009
Phân tích - Thiết kế - Hệ thống thông tin
9
Nội dung bài học
Có sự tƣơng tác
Các nguyên tắc của sự tƣơng tác.
Tƣơng tác bình thƣờng
Bài 4: Chất lƣợng của lƣợc đồ cấu trúc.
29 December 2009
Phân tích - Thiết kế - Hệ thống thông tin
10
Nội dung bài học
Có sự tƣơng tác
Một trong những phạm vi chất lƣợng thiết kế là sự tƣơng tác, tức là
độ phụ thuộc giữa hai module với nhau.
Độ tƣơng tác thấp giữa các module chỉ ra sự phân chia tốt trong hệ
thống và các module có thể đạt đƣợc theo một trong ba cách sau:
Lƣợc bỏ những mối quan hệ không cần thiết.
Giảm bớt các quan hệ cần thiết.
Bỏ đi các mối quan hệ lỏng lẽo cần thiết.
Một trong những điểm chủ yếu của sự tƣơng tác thấp là không có
một module nào lo lắng về bất kỳ chi tiết cấu tạo bên trong nó.
Các module này có các chức năng và sự xuất hiện các chức năng
bên trong nó nhƣ một hộp đen.
Bài 4: Chất lƣợng của lƣợc đồ cấu trúc.
29 December 2009
Phân tích - Thiết kế - Hệ thống thông tin
11
Nội dung bài học
Các nguyên tắc của sự tƣơng tác.
Tạo các sự kết nối hẹp.
Tạo các sự kết nối trực tiếp.
Tạo các sự kết nối cục bộ (toàn cục).
Tạo các sự kết nối rõ ràng.
Tạo các sự kết nối mềm dẻo.
Tƣơng tác bình thƣờng
Hai module, A và B gọi là tương tác bình thường nếu nhƣ A gọi
đƣợc B và ngƣợc lại B gọi đƣợc A
Sự tƣơng tác giữa 2 module bình thƣờng có thể có các dạng sau:
Bài 4: Chất lƣợng của lƣợc đồ cấu trúc.
29 December 2009
Phân tích - Thiết kế - Hệ thống thông tin
12
Nội dung bài học
Tƣơng tác bình thƣờng
Tƣơng tác dữ liệu.
Hai module gọi là tƣơng tác dữ liệu nếu chúng giao tiếp với nhau bằng
các tham số, mỗi tham số là một thành phần trong mẫu dữ liệu. Dữ liệu
tƣơng tác là sự giao tiếp cần thiết giữa nhiều module
Tƣơng tác nhãn
Thông thƣờng hai module đƣợc gọi là tƣơng tác stamp nếu nhƣ module
này tƣơng tác tới module khác nhờ vào dữ liệu kết nối chung, dữ liệu kết
nối này có đầy đủ tính cấu trúc bên trong đó
Tƣơng tác điều khiển
Hai module đƣợc gọi là tương tác điều khiển, nếu nhƣ module này truy
cập tới module kia thông qua một mảng thông tin kết nối và mảng thông
tin kết nối đó lại tham gia vào sự điều khiển logic của một module khác
nữa
Tƣơng tác chung
Hai module đƣợc gọi là tƣơng tác chung nếu chúng đều tham trỏ đến
vùng dữ liệu toàn cục giống nhau
Bài 5: Cách thức chuyển đổi BLD (Biểu đồ
luồng dữ liệu) thành LCT (Lƣợc đồ cấu trúc)
29 December 2009
Phân tích - Thiết kế - Hệ thống thông tin
13
Nội dung bài học
Phƣơng thức theo biến đổi
Phân tích theo thao tác (giao dịch- Transaction Analysis)
Cấu trúc lại hệ thống
Bài 5: Cách thức chuyển đổi BLD (Biểu đồ
luồng dữ liệu) thành LCT (Lƣợc đồ cấu trúc)
29 December 2009
Phân tích - Thiết kế - Hệ thống thông tin
14
Nội dung bài học
Phƣơng thức theo biến đổi
Phƣơng pháp này gồm 5 bƣớc.
Dõi theo luồng dữ liệu vào (thƣợng lƣu) vƣợt qua các chức năng
biến đổi thông tin sơ bộ cho đến khi dữ liệu đƣợc biến đổi trừu
tƣợng nhất hoặc đến lúc không xem nó là dữ liệu vào đƣợc nữa thì
chúng ta ngắt (đánh dấu) luồng vào từ vị trí đó.
Xác định nguồn dữ liệu ra, đi ngƣợc dòng vƣợt qua các chức năng
chế biến dạng thông tin cho đến khi không xem đƣợc đó là dữ liệu
ra, thì dừng lại và đánh dấu,
Căn cứ vào điểm đánh dấu khoanh vùng để cô lập trung tâm biến
đổi.
Vẽ 2 mức cao nhất trong LCT
Triển khai mỗi module (vào, ra, biến đổi) ở mức trên thành mức
thấp nhất hơn làm xuất hiện dần các module tƣơng ứng với chức
năng xử lý trong BLD.
Bài 5: Cách thức chuyển đổi BLD (Biểu đồ
luồng dữ liệu) thành LCT (Lƣợc đồ cấu trúc)
29 December 2009
Phân tích - Thiết kế - Hệ thống thông tin
15
Nội dung bài học
Phân tích theo thao tác (giao dịch- Transaction Analysis)
Phƣơng pháp này gồm các bƣớc sau:
Phát hiện một chức năng xử lý trong BLD: Nhận 1 luồng dữ
liệu vào và cho ra nhiều dữ liệu loại trừ lẫn nhau.
Xác định các loại giao tác khác nhau tƣơng ứng với các luồng
ra của chức năng nói trên và các chức năng đƣợc khởi động từ
các giao tác đó.
Vẽ LCT ở hai mức cao nhất
Cấu trúc lại hệ thống
Xem lại toàn bộ hệ thống xem có phù hợp với các yêu cầu đề ra hay
không để chỉnh lý kịp thời.
Bài 6: Đóng gói thành Module tải
29 December 2009
Phân tích - Thiết kế - Hệ thống thông tin
16
Nội dung bài học
Đây là giai đoạn cuối của khâu thiết kế các module để dẫn đến lập trình
đƣợc. Ta có thể coi LCT là 1 chƣơng trình cũng đƣợc. Nhƣng thƣờng
chƣơng trình nhƣ vậy quá lớn nên có nhu cầu đóng gói, tải dần từng module
vào bộ nhớ trong. Có một số cách đóng gói:
Đóng gói theo dòng dữ liệu vào (đóng gói theo các phạm vi điều khiển) có
hình dáng chẻ dọc lƣợc đồ, chuyển giao theo nguồn dữ liệu hoặc
Đóng gói chẻ ngang theo mức LCT thƣờng đối với các module lựa chọn
Đóng gói theo 1 thƣ viện chƣơng trình.
Đóng theo module gọi lặp thƣờng xuyên và ghép chung vào module gọi
Nếu phép chọn buộc phải cắt ra thì nên khảo sát phép chọn cân đối hay
không, gộp nhánh đƣợc gọi luôn (nhánh nặng thỏa mãn điều kiện nằm ngay
sau if) vào chƣơng trình con.
Bài 7: Lập các mẫu thử.
29 December 2009
Phân tích - Thiết kế - Hệ thống thông tin
17
Nội dung bài học
Khung mẫu thử.
Các loại mẫu thử
Các cách thử chƣơng trình bằng mẫu thử
Bài 7: Lập các mẫu thử.
29 December 2009
Phân tích - Thiết kế - Hệ thống thông tin
18
Nội dung bài học
Các loại mẫu thử
Loại mẫu thử hoàn chỉnh/ không hoàn chỉnh
Mẫu thử không hoàn chỉnh khi ta chỉ cần kiểm tra các điểm mốc quan trọng,
còn các phần thứ yếu, không quan trọng có thể cho phép bỏ qua
Loại mẫu thử ngẫu nhiên/không ngẫu nhiên
Trƣớc tiên ta nên thử không ngẫu nhiên, sau đó tiến hành những mẫu thử
ngẫu nhiên. Có nhiều cách sinh các mẫu ngẫu nhiên: Phƣơng pháp sinh theo
luật xác suất Baux hoặc phƣơng pháp Von Newman
Loại mẫu thử đa dạng, phong phú và đủ lớn
Các cách thử chƣơng trình bằng mẫu thử
Thử tính đúng đắn.
So kết quả thu đƣợc với kết quả chờ đợi.
Nếu trong quá trình phức tạp, yêu cầu chƣơng trình in các giá trị trung gian.
Kiểm tra các giá trị trung gian.
Kiểm tra vệt chƣơng trình.
Thử hiệu năng: các mẫu thử lớn phải cho một thời gian để thực hiện.
Bài 8: Lập chƣơng trình - Chạy thử - Bảo trì
29 December 2009
Phân tích - Thiết kế - Hệ thống thông tin
19
Nội dung bài học
Lập trình
Chạy thử và ghép nối.
Thành lập các tài liệu hƣớng dẫn sử dụng
Bảo trì hệ thống
Bài 8: Lập chƣơng trình - Chạy thử - Bảo trì
29 December 2009
Phân tích - Thiết kế - Hệ thống thông tin
20
Nội dung bài học
Lập trình
Thành lập tổ lập trình
Chọn ngôn ngữ lập trình
Soạn thảo chƣơng trình cho từng đơn vị xử lý
Chạy thử và ghép nối.
Chạy thử và ghép nối để cho ra một mẫu thử hệ thống
Thành lập các tài liệu hƣớng dẫn sử dụng
Tổng quan
Đặc tả yêu cầu nghiệp vụ.
Đặc tả thiết kế hệ thống.
Tài liệu cho ngƣời dùng.
Hƣớng dẫn vận hành.
Bảo trì hệ thống
Bảo trì gồm 4 mức:
Mức 0: Giới hạn trong chƣơng trình.
Mức 1: Bảo trì mức vật lý: liên quan đến phần cứng.
Mức 2:Mức truy nhập tổ chức.
Mức quan niệm, khái niệm hay logic.