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

Đồ án tốt nghiệp - Phân tích thiết kế hệ thống - Quản lý ngân hàng câu hỏi và tổ chức thi trắc nghiệm trên mạng potx

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 (540.18 KB, 37 trang )






ĐỀ TÀI:

Quản lý ngân hàng câu hỏi và tổ
chức thi trắc nghiệm trên mạng






Phần I. khảo sát
i. khảo sát mục tiêu bài toán
1. Tìm hiểu chung về tổ chức thi trắc nghiệm của bộ môn tiếng anh của ĐHHH:
Ngoại ngữ là môn học chung của toàn trường nên có rất nhiều sinh viên theo
học. Vì vậy tổ chức thi hết môn cho sinh viên toàn trường là việc khó khăn. Trắc
nghiệm là hình thức thi được tổ bộ môn sử dụng trong những năm gần đây.
- ưu điểm:
+ Có nhiều dạng đề khác nhau nên việc đánh giá trình độ của từng sinh viên là
chính xác hơn .
+ Việc chấm thi đỡ tốn thời gian hơn so với thi viết.
- Nhược điểm:
+ Việc tạo ra nhiều đề rất mất thời gian: dùng phương pháp thủ công nên mất
nhiều người để làm việc này.
+ Lưu trữ đề thi không an toàn (chủ yếu bằng văn bản).
+ Các kì thi tiếp theo muốn thay đổi nội dung đề thi thì các giáo viên lại phải
soạn câu hỏi và ra đề thi. Công việc này mất thời gian và không hiệu quả.


+ Số lượng sinh viên đông nên chi phí cho việc phô tô đề thi lớn.
+ Chấm thi bằng tay: nhiều giáo viên tham gia.
+ Khi sinh viên làm sai muốn sửa lại sẽ gây ra việc gạch xoá, bài thi không đẹp
mắt.
2. Mục tiêu và phương án giải quyết:
- Phương án giải quyết: xây dựng được hệ thống quản lý ngân hàng câu hỏi tổ
chức thi trắc nghiệm trên mạng máy tính và sử dụng cho nhiều môn học khác nhau.
- Mục đích: Phát huy ưu điểm và khắc phục nhược điểm của hệ thống cũ.
+ Xây dựng ngân hàng câu hỏi với mức độ khó dễ khác nhau.
+ Tự động sinh đề thi dựa theo mẫu và một quy tắc quy định sẵn.
+ Quản lý danh sách sinh viên thi.
+ Cho phép sinh viên thi và chấm điểm tự động.





II. Xác lập dự án:
1. Dự trù về trang thiết bị
2. Lên kế hoạch
- Việc cần làm, thời gian
3. Dự trù về con người và thời gian.
III. Khảo sát
1. Môi trường hoạt động
- Cơ cấu tổ chức:









- Phần mềm quản lý ngân hàng câu hỏi tổ chức thi trắc nghiệm:
+ Được sử dụng cho một tổ bộ môn, hoạt động trên môi trường mạng lan.
-> Đáp ứng mô hình tổ chức thi trắc nghiệm trên mạng máy tính: nhiều sinh viên
có thể thi cùng một lúc.
-> Sinh nhiều đề khác nhau, tráo đổi phương án trả lời.
-> Quản lý được ngân hàng câu hỏi với số lượng lớn.
-> Chấm thi tự động.
-> Lưu trữ kết quả bài thi.
2. Các nghiệp vụ trong hệ thống
- Các giáo viên trong bộ môn là người trực tiếp soạn các câu hỏi (dạng văn bản).
Mẫu câu hỏi được sử dụng có cấu trúc như ở bảng III.1. Mỗi giáo viên sẽ soạn khoảng
100 câu hỏi (50 dễ, 50 khó) và nộp lại cho trưởng bộ môn duyệt. Sau đó bộ môn sẽ họp
lại và quyết định các câu hỏi sẽ được lựa chọn. Mẫu xét duyệt như mẫu III.2.

Ban giám hiệu


Bộ môn ANH VĂN


Bộ môn khác

Trưởng bộ môn


Các giáo viên






- Trưởng bộ môn là người có quyền cao nhất trong bộ môn, quyết định câu hỏi
có được sử dụng hay không.
- Các câu hỏi được xét duyệt xong sẽ chuyển cho NHÂN VIÊN A (người được
giao nhiệm vụ). Người này có nhiệm vụ lên danh sách ngân hàng câu hỏi và là người
duy nhất được truy xuất, xử lý thông tin trên cơ sở dữ liệu.
- Một đề thi hoàn chỉnh (mẫu III.3) là tập hợp 100 câu hỏi khác nhau lấy ngẫu
nhiên từ ngân hàng câu hỏi (quy tắc ra đề sẽ do bộ môn quyết định). Phương án trả lời
sẽ được hoán đổi vị trí cho nhau để tránh việc 2 đề bài có chung một câu hỏi, thứ tự
câu hỏi giống nhau. Yêu cầu sinh viên làm bài thi trong thời gian là 100 phút.
- Sinh viên trả lời câu hỏi bằng cách chọn một trong 4 phương án trả lời A, B, C,
D. Mỗi câu trả lời đúng tương ứng với 1 điểm. Không chọn phương án nào hoặc chọn
sai sẽ không có điểm. Bài thi của sinh viên sẽ được lưu lại trong cơ sở dữ liệu và được
NHÂN VIÊN A tổng hợp và kiểm tra. Khi nhân viên muốn lấy kết quả bài thi của sinh
viên thì sẽ lấy từ bảng III.4.
- Cuối đợt thi, NHÂN VIÊN A tổng kết điểm Y (điểm thi trắc nghiệm) và căn cứ
vào điểm X để tính điểm Z cho sinh viên. Cuối cùng là đưa ra bảng điểm của từng lớp
(Bảng III.5)
3. Các biểu mẫu
- Bảng III.1.
Cấu trúc một câu hỏi:
Câu số:
(Câu hỏi)
(Các phương án trả lời)
O A. O B. O C. O D.




- Mẫu III.2:
TRư
ờng
đhhhvn

Khoa:
cộng hoà xã hội chủ nghĩa việt nam
Độc lập – Tự do – Hạnh phúc




T
ổ bộ môn:

***

Bản xét duyệt
Vào hồi h ’ ngày tháng năm tổ bộ môn đã họp và xét duyệt câu
hỏi thi trắc nghiệm môn năm học
Tổ trưởng bộ môn
(Ký, ghi rõ họ tên)
- Mẫu III.3:
Đề số
:

Đ
ề thi Môn


Lần:
Thời gian làm bài: 100’
Ch
ủ nhiệm bộ môn


Chọn phương án trả lời đúng:
Câu số: 001

O A. O B. O C. O D.

Câu số: 100

O A. O B. O C. O D.
Mã sv:
Họ và tên:
Ngày sinh:
Lớp:
Khoa:

- Bảng III.4:
Kết quả bài thi môn lần
Đề số: Ngày thi:




Mã sinh viên:
Họ và tên:
Ngày sinh:

Lớp:
Khoa:
Trả lời: /100
Điểm:
- Bảng III.5
Trường ĐHHHVN
Khoa:
Lớp:
Kết quả học phần lần

Năm học:
Môn:
Học kỳ:
Ngày tháng năm
TT Họ và tên
Ngày
sinh
số đề
kết quả
Điểm Z
(bằng chữ)
Ghi chú
X

Y

Z


























































Số SV thi Tỷ lệ điểm giỏi: Tỷ lệ điểm khá: Tỷ lệ điểm TB
Số SV đạt yêu cầu trở lên: Số SV vi phạm kỷ luật
Ngày tháng năm
Chủ nhiệm bộ môn










Phần II: Phân tích và thiết kế hệ thống
I. Sơ đồ phân rã chức năng:
















II. Xác định đầu vào, đầu ra của hệ thống
1. Chức năng quản lý danh mục
1.1. Mục tiêu
- Chức năng này tương ứng với nghiệp vụ soạn câu hỏi, cho phép cập nhật các
nội dung về môn thi, câu hỏi, khoa, lớp của sinh viên.
- Nó cho phép quản lý các nội dung trên với các thao tác thêm, sửa, xoá.

1.2. Thông tin đầu vào
- Danh sách các môn thi và danh sách câu hỏi của các môn đó
- Danh sách khoa, lớp của sinh viên
- Thông tin về môn thi, khoa, lớp thì khá đơn giản và bao gồm mã và tên. Còn
về câu hỏi sẽ có những mức độ khó, dễ khác nhau chúng ta dựa trên mẫu câu hỏi (mẫu
01)
- Thông tin về kỳ thi (tổng hợp từ 3 mẫu biểu: mẫu III.3, III.4, III.5).
1.3.Thông tin đầu ra
- Lưu các thông tin vào cơ sở dữ liệu để làm đầu vào cho các chức năng khác.
2. Chức năng quản lý đề thi
QL ngân hàng câu
h
ỏi và HT thi trắc
nghi
ệm


QL đề thi

QL Danh mục


Tổ chức
thi


Thi
Tìm
ki
ếm


Thống


Câu h
ỏi


Môn
Khoa

L
ớp


Quy t
ắc ra
đ



Tạo đề

Phát hành
đ



QLDS SV


QL DS bài
thi





2.1. Mục tiêu
- Làm việc với các câu hỏi đã hoàn chỉnh. Nó cho phép đưa ra một quy tắc ra đề
nhất định.
- Chức năng này tương ứng với nghiệp vụ tạo đề thi của phòng đào tạo. Chức
năng này sẽ tạo ra một số lượng đề theo quy tắc nào đó.
2.2.Thông tin đầu vào
- Chức năng này lấy dữ liệu của các câu hỏi, các môn được tạo từ chức năng
trước, và căn cứ vào các câu hỏi đó ta có được một đề thi hoàn chỉnh (mẫu 02).
2.3. Thông tin đầu ra
- Nội dung đề thi lưu trữ trong cơ sở dữ liệu. Thông tin này sẽ là đầu vào của
chức năng khác.
- Đưa ra được một quy tắc ra đề với mức độ các câu khó, dễ phù hợp và lưu trữ
trong cơ sở dữ liệu.
3. Chức năng tổ chức thi
3.1. Mục tiêu
- Tương ứng với nghiệp vụ tổ chức thi
- Tiến hành phát hành đề thi để cho sinh viên thi ở bước tiếp theo
- Lên danh sách sinh viên và đề thi đưa ra được từng bài thi đầy đủ
3.2.Thông tin đầu vào
- Dữ liệu sinh viên căn cứ vào nội dung sinh viên ghi trong phiếu đăng ký thi.
- Các đề thi hoàn chỉnh đã đựơc tạo từ bước tạo đề.
- Thông tin về kỳ thi (tổng hợp từ 3 mẫu biểu: mẫu III.3, III.4, III.5).
3.3.Thông tin đầu ra

- Dữ liệu sinh viên, bài thi được lưu trong cơ sở dữ liệu để lấy ra sử dụng trong
chức năng Thi
4. Chức năng thi
4.1. Mục tiêu
- Chức năng này tương ứng với nghiệp vụ làm bài thi của sinh viên.
- Cho phép sinh viên thi trong một khoảng thời gian nào đó tương ứng với môn.
- Chấm điểm bài thi của sinh viên một cách tự động.




4.2. Thông tin đầu vào
- Thông tin đầy đủ về sinh viên, bài thi và các thông tin về thời gian thi, ngày thi
cụ thể để đảm bảo không xảy ra thiếu sót trong quá trình thi.
- Các dữ liệu được đưa vào sử dụng và sinh viên trực tiếp làm bài thi
4.3. Thông tin đầu ra
- Bài làm chi tiết sinh viên.
- Điểm bài thi của sinh viên được chấm tự động, lưu trữ trong cơ sở dữ liệu và
trả kết quả về cho sinh viên.
5. Chức năng tìm kiếm và thống kê
5.1.Thông tin đầu vào:
- Các thông tin có trong quá trình từ khi bắt đầu tạo đề đến khi thi xong gồm có
dữ liệu câu hỏi, khoa, lớp, sinh viên, đề thi, bài thi, ngày thi, điểm,
- Cho phép tìm kiếm, thống kê theo các tiêu chí trên.
5.2. Thông tin đầu ra:
- Kết quả tìm kiếm, thống kê trả về cho Nhân viên lưu vào cơ sở dữ liệu để gửi
tới các Khoa và sinh viên



























II. Sơ đồ luồng dữ liệu

1. Sơ đồ mức ngữ cảnh:



























2. Sơ đồ mức đỉnh:
















Nhân
viên

QLngân
hàng câu
hỏi và HT
2. Tìm kiếm,
1. Nhập
Kết quả tìm kiếm

câu
h
ỏi

Dữ

Sinh
viên

Đăng
ký,
làm

bài

Bài
thi

Dl
Đ

th
i
KQ
DLDM

QL Danh
m
ục


Danh
1. Nhập DM
QL Đề thi

DL ĐT

Đ
ề thi

2. Nhập T
2
đề

thi

Tổ chức
Thi

3. Nhập DS
SV, số lư
ợng
đ
ề t
hi

DL ĐT

Nhân
viên

Sinh vien
DL SV

DL BT

Làm
DL SV

Kho
a

Môn


Câu h
ỏi

L
ớp

quy t
ắc
Kỳ
thi

Kỳ
thi
























3. Sơ đồ mức dưới đỉnh:
3.1. Quản lý danh mục:



















3.2 Quản lý đề thi:






QL DS
câu hỏi



1.Nh
ập, sửa
ds

câu h
ỏi


Nhân
viên


Tạo đề

1
.Nh
ập
,s
ửa số
Câu
h
ỏi


Đề
thi

Dl câu
h
ỏi

Dl đề
thi

Môn

Khoa

Dl
môn
Dl
khoa
Sinh
viên
Thi

Tìm ki
ếm

Th
ống kê



Bài thi
DL

BT

4. Tìm kiếm


5. Thống kê


Kết
N
hân
viên

Câu hỏi
Dl câu
h
ỏi

QL DS
Môn thi

QL DS
Khoa
QL DS
Lớp
Môn thi


Khoa
Lớp

Dl môn
thi


Dl
khoa


Dl
l
ớp




2.Nh
ập, sửa
ds

môn thi



3.Nh
ập, sửa
ds
khoa




4.Nh
ập, sửa
ds
Dl khoa
Dl môn
thi


Kỳ thi
Dl k


thi











3.3. Tổ chức thi:








3.4. Thi:








IV. phân tích hệ thống dữ liệu
1. Xác định các thực thể
1.1. Mô tả các thực thể
* Danh sách các thực thể
- Môn học
- Kỳ thi
- Câu hỏi
- Đề thi
- Quy tắc ra đề
- Bài thi
- Khoa
- Lớp
- Sinh viên
* Vai trò các thực thể
- Môn: lưu trữ thông tin về môn. Các thông tin về môn gồm mã môn học, tên
môn học


bài thi

Sinh
viên


Chấm
đi
ểm

bài thi

Dl
môn

Sinh
viên

Dl sv

Môn

Sinh
viên

QL DS
bài thi

Dl bài

QL DS
SV
Đề
thi
Dl đ

thi

Sinh
viên


3. Làm
Dl SV

1. Đăng


Khoa

Phát
hành đề
L
ớp

môn


2. Ra đề
Sinh

viên





- Kỳ thi: lưu trữ thông tin về một đợt tổ chức thi trong năm học nào đó. Các
thông tin về kỳ thi gồm: mã kỳ thi, diễn giải, năm học, học kỳ, lần thi, thời gian.
- Câu hỏi phải thuộc môn nào đó, câu hỏi tham gia cấu tạo nên đề thi và là phần
chính của đề thi. Các thông tin về câu hỏi gồm mã câu hỏi, nội dung câu hỏi, phương
án trả lời, đáp án đúng và mức độ câu hỏi
- Đề thi: dữ liệu chính để tổ chức thi. Thông tin về đề thi gồm mã đề, tên đề.
- Quy tắc ra đề: Quy tắc để tổ chức một đề thi. Thông tin về quy tắc ra đề gồm
có: mã quy tắc, số lượng đề, số lượng câu, số câu hỏi khó, số câu hỏi trung bình và số
câu hỏi dễ.
- Khoa: lưu trữ thông tin về khoa, gồm mã khoa và tên khoa
- Lớp: tham gia vào chức năng lớp sinh viên, nó xác định danh mục các lớp mà
khoa đang quản lý. Thông tin về lớp gồm mã lớp, tên lớp
- Sinh viên: lưu trữ danh sách sinh viên của một lớp, tham gia vào cấu trúc của
bài thi. Thông tin sinh viên gồm mã sinh viên, tên sinh viên, ngày sinh, ghi chú
- Bài thi: Đây là tổng hợp tất cả nội dung của bài thi với sinh viên. Dữ liệu gồm
mã bài thi, ngày thi, lần thi và thời gian thi, số câu đúng, điểm.
2.2. Quan hệ giữa các thực thể
- Xét 2 thực thể: Môn và câu hỏi.
Một môn học có nhiều câu hỏi nhưng một câu hỏi chỉ thuộc một môn học
Môn 1- n câu hỏi
- Xét 2 thực thể: Môn và kỳ thi
Một kỳ thi có rất nhiều môn thi và một môn thi chỉ thuộc một kỳ thi của năm
học.
kỳ thi 1 - n môn

- Xét 2 thực thể: Đề thi và Môn.
Đề thi và quy tắc ra đề: Một môn học có thuộc nhiều đề thi (xáo trộn vị trí câu
và đáp án) và một đề thi chỉ thuộc một môn nhất định.
Môn 1- n Đề thi
- Xét 2 thực thể: Đề thi và quy tắc ra đề




Nhiều đề thi có chung một quy tắc ra đề và 1 quy tắc ra đề được áp dụng cho
nhiều đề thi.
Quy tắc ra đề 1 – n Đề thi
- Xét 2 thực thể: Câu hỏi và đề thi
Nhiều câu hỏi thuộc nhiều đề thi khác nhau và nhiều đề thi có thể có nhiều câu
hỏi khác nhau.
Câu hỏi n - n Đề thi
- Xét 2 thực thể: Câu hỏi và bài thi.
Một câu hỏi thuộc bài thi và một bài thi có nhiều câu hỏi.
Câu hỏi n - 1 Chi tiết bài thi
- Xét 2 thực thể: Đề thi & Bài thi
Một đề thi chỉ thuộc một bài thi và một bài thi chỉ có một đề
Đề thi 1 - 1 bài thi
- Xét 2 thực thể: Sinh viên & Bài thi
Một sinh viên làm nhiều bài thi và một bài thi chỉ để một sinh viên làm
Sinhviên 1- n Bài thi
- Xét 2 thực thể: Khoa & Lớp.
Một khoa có nhiều lớp nhưng một lớp chỉ thuộc một khoa duy nhất
Khoa 1- n Lớp
- Xét 2 thực thể: Lớp & Sinh viên
Một lớp có nhiều sinh viên nhưng một sinh viên chỉ được học trong một lớp

Lớp 1- n Sinhvien



2.3. Sơ đồ quan hệ thực thể (E-R)
* Sơ đồ tập thực thể ban đầu:



Môn


- mam
- tenm
Đ


- made
- tende

c

1

n

thu
ộc



1

quy t
ắc ra
đề

- maqt
- soluongcau
- socaukho
-




n
1

k
ỳ thi

- makt
-
diengiai
- namhoc
- hocky
- lanthi
-

tổ
ch

ức

1

n























* Sơ đồ tập thực thể liên kết mức hạn chế
















Câu h
ỏi


- mach
-
noidung
-
luachon1
-
luachon2
-
luachon3

thu
n


n

Bài thi

- mabt
- ngaythi
-
socaudung
- diem


n

-
traloi

1

Sinh viên


- masv
- tensv

-
ngsinh
-

làm


1

n

l
ớp


- mal
- tenl
c
1

n

k
hoa


- mak
- tenk
c
1

n

chi tiết
đề thi
- stt

- made
- mach


đ


thi


- maqt
- made
-
tendeth
b
ài thi

- made
- mabt

- masv
-
ngaythi
-
socaudun
quy t
ắc ra
đ




- maqt
- soluongcau
- socaukho
-
socautrungbi
nh

m
ôn


- makt
- mam
-

t
enm

thuộ
c

n

si
nh
viên
- masv
- mal
-

tensv
-

câu hỏi
- mach
- noidung
-
luachon1
-

k
ỳ thi

- makt
-
diengiai
- namhoc
- hocky
- lanthi
-
thoigian











2. Sơ đồ dữ liệu quan hệ
2.1. Các bảng dữ liệu:
- môn(mã môn, tên môn)
- kỳ thi(mã kì thi, diễn giải, năm học, học kỳ, lần thi, thời gian)
- câu hỏi (mã câu hỏi, nội dung, phương án trả lời, đáp án, mức độ, lựa chọn 1,
lựa chọn 2, lựa chọn 3, lựa chọn 4, đáp án)
- đề thi(mã đề, mã quy tắc, mã môn, tên đề thi)
- chi tiết đề thi(stt, mã đề thi, mã câu hỏi)
- quy tắc ra đề (mã quy tắc, số lượng câu, số câu khó, số câu trung bình, số câu
dễ )
- bài thi (mã bài thi, mã đề thi, mã sinh viên, ngày thi, số câu đúng, điểm)
- chi tiết bài thi (mã bài thi, mã câu hỏi, trả lời)
- khoa (mã khoa, tên khoa)
- lớp (mã lớp, mã khoa, tên lớp)
- sinh viên (mã sinh viên, mã lớp, tên sinh viên, ngày sinh, ghi chú)
* Bảng môn:
Name Data type Size Nulls Diễn giải
mam

varchar

10


mã môn

makt

varchar


10


mã k
ỳ thi

tenm

nvarchar

50


tên môn


* Bảng kỳ thi:
Name Data type Size Nulls Diễn giải
makt

varchar

10


mã k
ỳ thi

diengiai


nvarchar

30


di
ễn giải

namhoc

varchar

12


năm h
ọc

hocky

smallint

2


h
ọc kỳ

lanthi


smallint

2


l
ần thi

thoigian

int

4


th
ời gian


* Bảng câu hỏi:
khoa
- mak
-
t
enk

l
ớp




- mal
- mak
- tenl
chi tiết
bài thi
- mabt
- mach
-

t
r
a
l
o
i





Name Data type Size Nulls Diễn giải
mach

varchar

10



mã câu h

i

noidung

nvarchar

255


n
ội dung

luachon1

nvarchar

30


l
ựa chọn 1

luachon2

nvarchar

30



l
ựa chọn 2

luachon3

nvarchar

30


l
ựa chọn 3

luachon4

nvarchar

30


l
ựa chọn 4

dapan

nvarchar

30



đáp án

mucdo

char

10


m
ức
đ



* Quy tắc ra đề:
Name Data type Size Nulls Diễn giải
maqt

varchar

10


mã quy t
ắc

soluongch


int

4


s
ố l
ư
ợng câu hỏi

kho

int

4


s
ố câu hỏi khó

tb

int

4


s
ố câu hỏi trung bình


de

int

4


s
ố câu hỏi dễ


* Bảng đề thi:
Name Data type Size Nulls Diễn giải
made

varchar

10



đ


maqt

varch
ar

10



mã quy t
ắc

mam

varchar

10


mã môn

tende

nvarchar

30


tên đ



* Bảng chi tiết đề thi

Name Data type Size Nulls Diễn giải
stt


int

4


s
ố thứ tự

made

varchar

10



đ


mach

varchar

10


mã quy t
ắc



* Bảng bài thi:
Name Data type Size Nulls Diễn giải
mabt

varchar

10


mã bài thi

made

varchar

10



đ


masv

varchar

10


mã sinh viên


ngaythi

datetime

8


ngày thi

socaudung

int

4


s
ố câu
đúng

diem

smallint

2


đi
ểm



* Bảng chi tiết bài thi:
Name Data type Size Nulls Diễn giải




mabt

varchar

10


mã b
ài thi

mach

varchar

10


mã câu h
ỏi

traloi


nvarchar

30


tr
ả lời


* Bảng khoa:
Name Data type Size Nulls Diễn giải
mak

varchar

10


mã khoa

tenk

nvarchar

50


tên khoa



* Bảng lớp:
Name Data type Size Nulls Diễn giải
mal

varchar

10


mã l
ớp

mak

varchar

10


mã khoa

tenl

nvarchar

50


tên l
ớp



* Bảng sinh viên:
Name Data type Size Nulls Diễn giải
masv

varchar

10


mã sinh viên

mal

varchar

10


mã l
ớp

tensv

nvarchar

50



tên sinh viên

ngaysinh

datetime

8


ngày sinh

ghichu

nvarchar

50

+

ghi chú


3.2.2. Sơ đồ mô hình quan hệ










PHầN III: Thiết kế giao diện
1. Đăng nhập







Trạng thái khởi tạo:
Đăng nhập người dùng






User
name

Passwor
d



OK Exit



pictureB
ox1

frmdangnha
p

txtuser size
= 30

txtpass
size =

30

btnOK

btnEx
it

size =
(70,40)

size =
(70,40)





- btnOk, btnExit có enable = true.

- txtpass có passwordChar = *
- pictureBox1 show 1 icon.
Hành động:
- Khi click vào btnExit thì: thoát khỏi frmdangnhap.
- Khi click vào btnOk thì kiểm tra trong bảng dangnhap và dữ liệu được nhập
vào từ 2 ô text.
 Nếu txtuser.text hoặc txtpass.text = “ ” thì thông báo “Chưa nhập đủ thông tin”.
 Nếu upper(txtuser.text) != “ADMIN” hoặc “TEACHER” hoặc “STUDENTS” hoặc
mat_ma không trùng thì thông báo “nhập sai thông tin”.
 Nếu upper(txtuser.text) == “ADMIN”, và trùng cả mat_khau thì thông báo “Bạn
đăng nhập quyền Admin”.
Thoát khỏi frmdangnhap và show Frmmain có trạng thái khởi tạo: tất cả menu của
Frmmain có enable = true.
 Nếu upper(txtuser.text) == “TEACHER”, và trùng cả mat_khau thì thông báo
“Bạn đăng nhập quyền giáo viên”.
Thoát khỏi frmdangnhap và show Frmmain có trạng thái khởi tạo:
+ mnuthongtin, mnuquytac, mnutaode có enable =false.
 Nếu upper(txtuser.text) == “STUDENTS”, và trùng cả mat_khau thì thông báo
“Bạn đăng nhập quyền sinh viên”.
-> Thoát khỏi frmdang nhap và show frmdangnhapsv.
2. Formmain:


chương trình tổ chức thi trắc nghiệm
Hệ thống Cập nhật Tra cứu/Thống kê Thông tin
Danh mục hệ thống Danh sách sinh viên Tổng hợp Help
Đổi mật khẩu Thông tin kỳ thi

Exit
Sign out Quy tắc đề



Tạo đề thi

Frmmain






- 5 menu chính: mnuhethong, mnucapnhat, mnutracuu, mnutkthongke,
mnuthongtin.
- mnuhethong: mnudmhethong, mnudoimatkhau, mnuthongtin, mnusignout.
- mnucapnhat: mnudanhsachsv, mnuthongtinkythi, mnuquytac, mnutaode
- mnutracuu: mnutracuutonghop
* Trạng thái khởi tạo:
- Tuỳ theo người dùng đăng nhập quyền Admin hay Teacher mà frmmain sẽ có
menu nào được hoạt động.
- Các thuộc tính: locked = true, MinimizeBox = false, WindowState =
Maximized.
* Hành động:
- Khi người dùng:
+ Click vào mnuexit thì thoát khỏi chương trình.
+ Click vào mnusignout thì thoát khỏi Frmmain, trở về frmdangnhap.
+ Click vào mnudoimatkhau thì hiển thị frmdoimatkhau
+ Click vào mnuthongtin (quyền admin) thì hiển thị frmthongtinnguoidung
+ Click vào mnuhelp: một file help sẽ được mở ra, giới thiệu về thông tin về
phần mềm và toàn bộ hướng dẫn cụ thể về cách sử dụng phần mềm.
+ Click vào mnudanhmuc: show form frmdanhmuc

+ Click vào mnudanhsachsv: hiển thị frmdanhsachsv
+ Click vào mnuthongtinkythi: hiển thị frmthongtinkythi
+ Click vào mnuquytactaode: hiển thị frmquytactaode
+ Click vào mnutaode: hiển thị frmtaode
+ Click vào mnutracuutonghop: hienthi frmtracuutonghop

3. Cập nhật danh mục



Danh mục hệ thống

Cập nhật danh mục

Thông tin c
ập nhật

frmdanhmu
c


















- ComboBox: Items (collection) :
- 1. Môn
- 2. Câu hỏi
- 3. Khoa
- 4. Lớp
* Trạng thái khởi tạo:
- frmdanhmuc có Font: TimeNewRoman 12. WindowState = Maximized;
- txt1, txt2 có Multiline = true, Size = 200,30;
- ComboBox2.text = “ ”; ComboBox2.enable = false;
- ComboBox.text= “ ”; btnthem, btnsua, btnxoa, btnCancel, btnSave có enable = false.
- gridview:
+ Không cho phép thêm, sửa, xoá trực triếp trên gridview.
+ Các dòng xen kẽ màu khác nhau.
+ Chế độ chọn: FullRowSelect.
* Hành động:
Khi người dùng:
- Click ComboBox chọn dòng “Môn”:
+ gridview nạp tất cả danh sách đã nhập của bảng mon.
+ btnthem, btnsua, btnxoa có enable = true;
Danh m
ục dùng
chung

Thêm


Sửa

Xoá

Thoát

txt1
txt2

ComboBox2

size 120,25

ComboBox
size 120,25
gridvi
ew

btnthe
btnsu
btnxoa

btntho

Cance
l

btnCanc
el



Save
btnSa
ve


Labe
l1

Labe
l2



Labe
l3






+ ComboBox2.enable = true, hiển thị tên kỳ thi nhưng trả về giá trị là makt;
lable3.Visible = true; lable1.text = “Mã môn”; lable2.text = “Tên môn”, lable3.text =
“Tên kỳ thi”;
+ Lấy thông tin về mon của dòng tương ứng đưa vào các ô txt1, txt2, ComboBox2
+ Nếu không có bản ghi nào trong danh sách thì btnsua, btnxoa có enable =
false; Nếu có bản ghi trong danh sách thì btnxoa, btnsua có enable = true;
+ Khi click vào nút thêm:

btnthem, btnsua, btnxoa, có enable = false; btnSave, btnCancel có enable = true;
ComboBox.enable = false; txt1.text= “ ”, txt2.text = “ ”;
-> Click nút Cancel thì trở về trạng thái trước khi click nút thêm.
-> Khi txt1.text != “ ” & txt2.text != “” thì: btnSave.enable = true;
Khi nhấn nút Save:
/. mam trùng thì thông báo “trùng mã môn”.
/. nếu mam không trùng thì thêm bản ghi mới vào bảng mon. Nạp lại danh sách
mon lên gridview. Chuyển btnthem, btnsua, btnxoa, ComboBox có enable = true;
btnSave, btnCancel có enable = false;
+ Khi click nút sửa: Xét một bản ghi trong danh sách
ComboBox.enable = false; btnthem.enable = false; btnxoa.enable = false;
btnCancel.enable = true; txt1.Readonly = true; btnSave.enable = true;
btnsua.enable= false;
Lấy thông tin về mon của dòng đang xét đưa vào các ô txt1, txt2. Chuyển con
trỏ về ô txt2;
/. Khi click vào nút Cancel:
Trở lại trạng thái trước khi click nút sửa.
/. Khi click vào nút Save:
-> Nếu người dùng sửa ô txt2.text = “ ” thì thông báo “tên môn không để trống”.
Ngược lại thì đẩy vào bảng mon. Trở lại trạng thái trước khi click nút sửa.
+ Khi click nút xoá: Xét một bản ghi trong danh sách
-> Nếu có sự ràng buộc không xoá được thì thông báo “không thể xoá bản ghi”.
-> Nếu không có sự ràng buộc với các bảng khác thì xoá bản ghi khỏi danh sách.




-> Khi xoá hết bản ghi trong danh sách, btnxoa.enable = false;
- Click ComboBox chọn dòng “3. Khoa”:
+ gridview nạp tất cả danh sách đã nhập của bảng khoa.

+ btnthem, btnsua, btnxoa có enable = true;
+ ComboBox2.enable = false; lable3.Visible = false; lable1.text = “Mã khoa”;
lable2.text = “Tên khoa”;
+ Lấy thông tin về khoa của dòng tương ứng đưa vào các ô txt1, txt2.
+ Nếu không có bản ghi nào trong danh sách thì btnsua, btnxoa, btnSave,
btnCancel có enable = false; Nếu có bản ghi trong danh sách thì btnxoa, btnsua có
enable = true;
+ Khi click vào nút thêm:
btnthem, btnsua, btnxoa có enable = false; btnCancel.enable = true;
ComboBox.enable = false; txt1.text= “ ”, txt2.text = “ ”; btnSave.enable = true;
-> Click nút Cancel thì trở về trạng thái trước khi click nút thêm.
-> Khi txt1.text != “ ” & txt2.text != “” thì: btnSave.enable = true;
Khi nhấn nút Save:
/. mak trùng thì thông báo “trùng mã khoa”.
/. nếu mak không trùng thì thêm bản ghi mới vào bảng khoa. Nạp lại danh sách
khoa lên gridview. Chuyển btnthem, btnsua, btnxoa, ComboBox có enable = true;
btnSave, btnCancel có enable = false;
+ Khi click nút sửa: Xét một bản ghi trong danh sách
ComboBox.enable = false; btnthem, btnsua, btnxoa có enable = false;
btnCancel.enable = true; txt1.Readonly = true; btnSave.enable = true;
Lấy thông tin về khoa của dòng đang xét đưa vào các ô txt1, txt2. Chuyển con
trỏ về ô txt2;
/. Khi click vào nút Cancel:
Trở lại trạng thái trước khi click nút sửa.
/. Khi click vào nút Save:
-> Nếu người dùng sửa ô txt2.text = “ ” thì thông báo “tên khoa không để
trống”. Ngược lại thì đẩy vào bảng khoa. Trở lại trạng thái trước khi click nút sửa.





+ Khi click nút xoá: Xét một bản ghi trong danh sách
-> Nếu có sự ràng buộc không xoá được thì thông báo “không thể xoá bản ghi”.
-> Nếu không có sự ràng buộc với các bảng khác thì xoá bản ghi khỏi danh sách.
-> Khi xoá hết bản ghi trong danh sách, btnxoa.enable = false;
- Click ComboBox chọn dòng “4. Lớp”:
+ gridview nạp tất cả danh sách đã nhập của bảng lop.
+ btnthem, btnsua, btnxoa có enable = true;
+ ComboBox2.enable = true; lable3.Visible = true; lable1.text = “Mã lớp”;
lable2.text = “Tên lớp”; lable3.text = “Tên khoa”.
+ ComboBox2: hiển thị tenk tương ứng với mak ở gridview;
+ Lấy thông tin về lớp của dòng tương ứng đưa vào các ô txt1, txt2,
ComboBox2;
+ Nếu không có bản ghi nào trong danh sách thì btnsua, btnxoa, btnSave,
btnCancel có enable = false; Nếu có bản ghi trong danh sách thì btnxoa, btnsua có
enable = true;
+ Khi click vào nút thêm:
btnthem, btnsua, btnxoa có enable = false; btnCancel.enable = true;
ComboBox.enable = false; txt1.text= “ ”, txt2.text = “ ”; btnSave.enable = true;
-> Click nút Cancel thì trở về trạng thái trước khi click nút thêm.
-> Khi txt1.text != “ ” & txt2.text != “” thì: btnSave.enable = true;
Khi nhấn nút Save:
/. mal trùng thì thông báo “trùng mã lớp”.
/. nếu mal không trùng thì thêm bản ghi mới vào bảng lop. Nạp lại danh sách lop
lên gridview. Chuyển btnthem, btnsua, btnxoa, ComboBox có enable = true; btnSave,
btnCancel có enable = false;
+ Khi click nút sửa: Xét một bản ghi trong danh sách
ComboBox.enable = false; btnthem, btnsua, btnxoa có enable = false;
btnCancel.enable = true; txt1.Readonly = true; btnSave.enable = true;
Lấy thông tin về khoa của dòng đang xét đưa vào các ô txt1, txt2. Chuyển con

trỏ về ô txt2;

×