Lời nói đầU
Thông tin từ lâu đã đợc đánh giá có vai trò quan trọng trong quản lí kinh tế,
ngày nay việc nhận địnhAi nắm đợc thông tin, ngời đó sẽ chiến thắng lại
càng trở nên đúng đắn. Chính từ việc tin học hoá thông tin với sự trợ giúp của
computer và phần mềm đã đa tới những khái niệm mới nh: Kỷ nguyên của kỹ
thuật số, nền kinh tế tri thức
ở nớc ta, việc định hớng và điều phối các hoạt động triển khai CNTT không
còn ở mức thử nghiệm nữa mà đã trở thành nhu cầu bức thiết của quá trình phát
triển. Mỗi năm có hàng trăm dự án tin học nằm dới sự điều phối của ban chỉ đạo
chơng trình quốc gia về CNTT và rất nhiều dự án của bộ ngành đợc triển khai.
Phạm vi ứng dụng của CNTT ngày càng đợc mở rộng trện mọi lĩnh vực truyền
thông, đo lờng, tự động hoá, quản lí các hoạt động của con ngời và xã hội Những
lợi ích mà các phần mềm mang lại là đáng kể: Lu trữ xử lí, tìm kiếm các thông tin
nhanh chóng, chính xác, khoa học, giảm bớt nhân lực công sức, tiền của và hiệu
quả của công việc đợc nâng lên một cách rõ rệt. Đặc biệt ở nớc ta hiện nay việc
ứng dụng CNTT trong quản lí chiếm phần lớn về sản phẩm phần mềm tin học.
Để hỗ trợ thì các ngôn ngữ lập trình và các hệ quản trị CSDL không ngừng
phát triển và đổi mới cho phép chúng ta xây dựng các phần mềm ứng dụng và hỗ
trợ việc quản lí các hoạt động xã hội một cách tốt nhất.
Với tầm quan trọng của ứng dụng CNTT trong quản lí tôi đã tìm hiểu và sử
dụng ngôn ngữ lập trình C#. Ngôn ngữ này chạy trên Microsoft. Net FrameWrok
Hiện nay, hệ quản trị CSDL có rất nhiều nh: Foxpro, Mcrosoft Access, SQL
Server, Oracle nhng SQL Server đã trở thành phổ dụng cung cấp các công cụ cần
thiết để tạo ra các CSDL đạt hiệu quả cao và giao diện thân thiện với ngời dùng.
Căn cứ vào yêu cầu của đề tài tôi quyết định chọn ngôn ngữ lập trình C# và hệ
CSDL SQL Server để xây dựng phần mềm thi trắc nghiệm.
1
Đề tài luận văn quản lí thi trắc nghiệm.
Gồm có bốn chơng:
Chơng I. Tìm hiểu và đặc tả bài toán
1.1 Ngời sử dụng hệ thống:
Thí sinh: Ngời trực tiếp vào dự thi
Mỗi thí sinh vào dự thi (một môn thi nào đó) ngời coi thi (hay còn gọi là
giám thị) sẽ phát cho mỗi thí sinh một đề, trên mỗi đề thí sinh nhận đợc sẽ phải
điền những thông tin sau:
- Họ và tên:
- Ngày sinh:
- Số báo danh:
- Lớp:
- Khoa:
- Ngày thi:
- Môn thi:
Sau một thời gian nhất định tuỳ vào số câu hỏi(thờng là 1 câu/phút) thí sinh
sẽ đánh dấu vào những đáp án đợc cho là đúng. Hết giờ thí sinh sẽ nộp bài lại cho
giám thị và ra về. Một thời gian sau thí sinh sẽ đợc biết kết quả,
(nhanh hay chậm là tuỳ vào thời gian chấm thi của giáo viên).
3
Khi biết điểm thi sẽ có thí sinh đủ điểm và sẽ có những thí sinh không đạt.
Những thí sinh không đạt này sẽ đợc tổ chức thi lại vào một lần khác.
Giám thị: Ngời trực tiếp coi thi
Giáo viên: Ngời ra đề và trực tiếp chấm bài
Hình thức ra đề của một môn thi ta có thể hình dung cụ thể nh sau:
Các câu hỏi đặt ra trong đề thi đợc tổng hợp lại từ kiến thức đã học. Và cấu
trúc đề thi là giống nhau, trong mỗi câu hỏi ở mỗi đề cơ bản có độ đồng đều. Tổng
số câu hỏi sử dụng trong đề thi là do giáo viên tự lấy và điểm thi cũng do giáo viên
quy định.
1.2 Đánh giá về hệ thống cũ
- Về u điểm: Cuộc thi đợc thực hiện theo đúng nguyên tắc của bộ giáo
dục và dễ tổ chức
- Về nhợc điểm:
năng có thể tiết kiệm thời gian, khả năng xử lý chính xác, nhanh nhạy và đầy hiệu
quả. Tôi đã kết hợp những chuẩn, các quy tắc cứng của nhiệm vụ quản lý thi trắc
nghiệm đã có với chiếc máy tính mà hiện nay nó không còn là quá khó đối với
mỗi trờng học.
1.4 Một số yêu cầu về hệ thống mới
Yêu cầu về phần mềm
- Phần mềm phải thiết kế chạy trên mạng cục bộ
- Máy chủ phải sử dụng Hệ điều hành Windows 2000 trở lên
- Cơ sở dữ liệu: SQL Server
Về ngời sử dụng
- Ngời sử dụng phải có trình độ cơ bản về tin học
5
Chơng ii: phân tích và thiết kế hệ thống
I. Phân tích và thiết kế hệ thống
1.1 Lựa chọn hớng phân tích
Khi phân tích thiết kế hệ thống ta có thể chọn một trong hai hớng là hớng
chức năng và hớng dữ liệu. Trong đề tài này tôi lựa chọn phân tích theo hớng chức
năng. Với cách tiếp cận này, chức năng đợc lấy làm trục chính của quá trình phân
tích và thiết kế, tiến hành phân tích trên xuống có cấu trúc.
Các bớc thực hiện:
- Xây dựng biểu đồ phân cấp chức năng
- Xây dựng biểu đồ luồng dữ liệu
- Xây dựng mối quan hệ giữa các thực thể
- Xây dựng mô hình dữ liệu
1.2 Phân tích hệ thống cũ
Với cách quản lý thi trắc nghiệm hoàn toàn bằng phơng pháp thủ công truyền
thống gặp nhiều khó khăn trong việc lu trữ và xử lí thông tin. Bởi vậy cần xây
dựng một chơng trình quản lý bằng máy vi tính để giúp việc quản lý một cách
chính xác và hiệu quả hơn làm giảm nhẹ một phần đáng kể nhân lực và công sức.
Yêu cầu của hệ thống quản lý bằng máy tính:
+ Không cần phải tốn chi phí giấy mực cho mỗi lần thi
+ Không phải huy động nhiều giáo viên cho việc coi thi
+ Trong lúc thi các câu hỏi đợc lấy ngẫu nhiên trong bộ đề thi, do đó hạn
chế đợc tình trạng thí sinh xem bài nhau.
7
- Việc chấm bài đợc chơng trình thực hiện một cách hoàn toàn tự động và
có kết quả ngay lập tức ngay sau khi thi xong. Ngoài ra còn đảm bảo đợc tính
công bằng khi chấm khi.
- Bài thi đợc của thí sinh đợc tự động lu trữ trong CSDL.
Chơng trình thi trắc nghiệm trên máy có khả năng thay thế hoàn chỉnh hệ
thống thi trắc nghiệm trên giấy mà chúng ta đã có với các chức năng hoàn toàn
giống với chơng trình thực tế.
Các chức năng chính của hệ thống quản lý thi trắc nghiệm
- Chức năng
- Quản trị
- Thống kê theo kì thi và theo lớp
- Tìm kiếm theo số báo danh, theo lớp, theo tên
Chức năng
a. Quản lí câu hỏi
b. Quản lí đề thi
c. Quản lí lớp
d. Quản lí kỳ thi
e. Quản lí thí sinh
Quản trị: cập nhật quyền hạn đăng nhập
Thống kê
+ Thống kê theo kỳ thi
+ Thống kê theo lớp
Tìm kiếm
+ Tìm kiếm theo lớp
+ Tìm kiếm theo số báo danh
Khảo sát thực tế của Hệ thống quản lý thi trắc nghiệm, sơ đồ phân cấp
chức năng của hệ thống đợc trình bày theo các mức cụ thể sau:
1.1 Biểu đồ luồng dữ liệu
Biểu đồ luồng dữ liệu dùng để diễn tả tập hợp các chức năng của hệ thống
trong mối quan hệ trớc sau của tiến trình xử lý và việc trao đổi thông tin trong hệ
thống. Biểu đồ luồng dữ liệu giúp ta thấy đợc đằng sau những gì thực tế xảy ra
trong hệ thống, làm rõ những chức năng và các thông tin cần thiết. Biểu đồ luồng
đợc chia thành các mức nh sau:
a. Mức ngữ cảnh
Là mức tổng quát nhất đợc xây dựng ở giai đoạn đầu của quá trình phân tích
và đợc dùng để vạch ra biên giới của hệ thống cũng nh buộc ngời phân tích
10
Tìm kiếm
chương trình trắc nghiệm
Cập nhật dữ liệu
Cập nhật lớp
Cập nhật thí sinh
Cập nhật câu hỏi
Cập nhật đề thi
Cập nhật kỳ thi
Thi trắc nghiệm Thống kê
Theo lớp
Theo kỳ thi
thiết kế phải xem xét các luồng dữ liệu bên ngoài hệ thống, ở mức này ngời phân
tích chỉ cần xác định đợc các tác nhân ngoài của hệ thống và coi toàn bộ các xử lý
của hệ thống là một chức năng, trong biểu đồ cha có kho dữ liệu.
Sơ đồ luồng dữ liệu
1. Mức khung cảnh
b. Mức đỉnh
Dựa vào sơ đồ phân cấp chức năng ở mức 2 để tách các chức năng thành các
TT đăng
nhập
Đáp ứng
Y/c thống kê
BGH
Đáp
ứng
Y/c tìm
Kiếm
BGH
Cập nhât thông tin
Thí sinh
BGH
TT câu hỏi
TT lớp học
TT kỳ thi
TT đề thi
GV
TT thí sinh
c. mức dới đỉnh
Từ 3 chức năng cơ bản đợc mô tả ở biểu đồ luồng dữ liệu mức đỉnh, ta tiến
hành phân rã thành các chức năng con chi tiết ứng với biểu đồ phân cấp chức năng
thấp nhất theo các nguyên tắc cơ bản sau:
13
- Phải phân rã các chức năng ở mức trên xuống mức dới.
- Các tác nhân ngoài bảo toàn từ sơ đồ mức đỉnh.
- Kho dữ liệu xuất hiện dần theo yêu cầu quản lý nội bộ.
- Bảo toàn các luồng dữ liệu vào ra với các tác nhân ngoài và thêm
các luồng nội bộ.
- Có thể tách biểu đồ thành từng trang ứng với một hoặc vài chức
BGH
Đáp ứng
Y/c thống kê
Thống kê theo lớp
Lớp
Thí sinh
Kết quả
Thống kê theo kỳ thi
Y
/
c
t
h
ố
n
g
k
ê
Đ
á
p
ứ
n
g
* Chức năng thống kê: Chức năng này cho ngời sử dụng biết số ngời đã
đăng kí thi và số ngời dự thi.
d. Chức năng cập nhật dữ liệu
- Chức năng quản lí danh sách lớp và thí sinh: Chức năng này cho
phép ngời sử dụng chơng trình có thể cập nhật, xoá, thay đổi các thông tin về danh
sách lớp và danh sách các thí sinh thuộc lớp đó. Để thực hiện đợc việc cập nhật,
ngời sử dụng phải có quyền hạn.
- Quản lí danh sách câu hỏi và đề thi: Chức năng quản lí danh sách
câu hỏi và bộ đề thi cho phép ngời sử dụng chơng trình cập nhật, xoá, thay đổi các
thông tin về các bộ đề thi và các câu hỏi trắc nghiệm trong bộ đề thi đó.
- Quản lí kỳ thi và các lớp: Chức năng này cho phép ngời sử dụng
chơng trình soạn lịch các kỳ thi sẽ thi, các đề sẽ thi và các lớp sẽ đợc thi trong kỳ
thi đó.
1.2 Mô hình thực thể và các thuộc tính
a. Chuẩn hoá lợc đồ cơ sở dữ liệu
17
Trong thực tế, một ứng dụng có thể đợc phân tích, thiết kế thành nhiều lợc đồ
cơ sở dữ liệu khác nhau và tất nhiên chất lợng thiết kế của các lợc đồ cơ sở dữ liệu
này cũng khác nhau. Chất lợng thiết kế của một lợc đồ cơ sở dữ liệu có thể đợc
đánh giá dựa trên các tiêu chuẩn nh: Sự trùng lặp thông tin, chi phí kiểm tra các
ràng buộc toàn vẹn
Sự chuẩn hoá lợc đồ cơ sở dữ liệu có ý nghĩa rất lớn đối với mô hình dữ liệu
quan hệ. Trong thực tế, ở những bớc tiếp cận đầu tiên, ngời phân tích thiết kế rất
khó xác định đợc ngay một cơ sở dữ liệu của một ứng dụng sẽ gồm những lợc đồ
quan hệ con (thực thể) nào (có chất lợng cao), mỗi lợc đồ quan hệ con có những
thuộc tính và tập phụ thuộc hàm ra sao? Thông qua một số kinh nghiệm, ngời
phân tích thiết kế có thể nhận diện đợc các thực thể của lợc đồ cơ sở dữ liệu nhng
lúc đó chất lợng của nó cha hẳn đã cao. Bằng phơng pháp chuẩn hoá, ngời phân
tích thiết kế có thể nâng cao chất lợng của lợc đồ cơ sở dữ liệu ban đầu để đa vào
khai thác.
Chuẩn hoá là quá trình khảo sát các danh sách thuộc tính và áp dụng một
tập các quy tắc phân tích vào các danh sách đó, chuyển chúng thành một dạng mà:
- Tối thiểu việc lặp lại (cùng một thuộc tính có mặt ở nhiều thực thể).
Nvarchar
Nvarchar
4
10
10
10
Mã số câu hỏi
Mức đọ
Thời gian áp dụng
Tên câu hỏi
19
Lớp Thí sinh
Kết quả
Kỳ thi
Đề thi Câu hỏi