Hệ thống thông báo thông tin người dùng cần thêm không hợp lệ, yêu cầu người dùng nhập lại.. Hệ thống thông báo thông tin người dùng cần thêm không hợp lệ, yêu cầu người dùng nhập lại..
Trang 1MỤC LỤC
xix
DANH SÁCH CÁC HÌNH xix
I Lý do chọn đề tài 1
II Giới thiệu sơ lược ứng dụng 1
1 Mục tiêu 1
Mục tiêu của đề tài đặt ra là xây dựng hệ thống quản lý điểm học sinh, hỗ trợ nhập thông tin học sinh, nhập điểm và tính điểm cho học sinh, nhập thông tin giáo viên, để việc quản lý điểm học sinh nhanh hơn và ít tốn thời gian hơn 1
2 Chức năng chính 1
Nhập thông tin học sinh khi mới vào trường 1
Phân lớp học sinh vào đầu năm học 1
Nhập thông tin giáo viên và chuyên môn của giáo viên 1
Phân công giảng dạy 1
Nhập điểm cho học sinh 1
Tính điểm trung bình môn, trung bình học kỳ, điểm tổng kết cả năm và xếp loại học sinh 1
Thống kê danh sách học sinh, danh sách giáo viên 1
Tìm kiếm học sinh, tìm kiếm giáo viên 1
B PHẦN TỔNG QUAN 2
I Giới thiệu sơ lược về trường THPT An Phú 2
II Mô tả bài toán 2
1 Hiện trạng hệ thống 2
Hiện tại, trường THPT An Phú vẫn còn tính điểm bằng hình thức thủ công (viết tay) nên vẫn còn gặp một số hạn chế 2
Lưu trữ và tìm kiếm khó khăn và mất nhiều thời gian 2
Tính toán chậm và đôi khi thiếu chính xác 2
Độ an toàn không cao 2
Do đó phần mềm Quản lý điểm học sinh là cần thiết để khắc phục những hạn chế trên 2
2 Mô tả bài toán 2
C CƠ SỞ LÝ THUYẾT 5
I Tổng quan về UML 5
1 UML là gì? 5
2 Các sơ đồ lớp 5
3 Kiến trúc của hệ thống 6
6
Hình 1: Kiến trúc hệ thống 6
4 Sơ đồ Use Case (Use Case diagram) 7
5 Sơ đồ lớp 8
6 Sơ đồ tuần tự 9
II Môi trường phát triển 10
1 Kiến trúc NET framework 10
2 Ngôn ngữ C# 11 Ngôn ngữ C# là một trong số các ngôn ngữ được NET Framework hỗ trợ, C# khá đơn giản, chỉ khoảng 80 từ khóa và hơn mười mấy kiểu dữ liệu được xây dựng sẵn Tuy nhiên, ngôn ngữ C# có ý nghĩa cao khi nó thực thi những khái niệm lập trình hiện
i
Trang 2đại C# bao gồm tất cả những hỗ trợ cho cấu trúc, thành phần component, lập trình hướng đối tượng Những tính chất đó hiện diện trong một ngôn ngữ lập trình hiện đại
Và ngôn ngữ C# hội đủ những điều kiện như vậy, hơn nữa nó được xây dựng trên nền
tảng của hai ngôn ngữ mạnh nhất là C++ và Java 11
3 Microsoft SQL server 2000 11
D PHÂN TÍCH 12
I Sơ đồ Use Case 12
1 Sơ đồ Use Case tổng quát cho tất cả các Actor 12
12
Hình 3: Sơ đồ Use Case tổng quát 12
2 Sơ đồ Use Case cho Actor quản lý 13
13
Hình 4: Sơ đồ Use Case cho Actor quản lý 13
3 Sơ đồ Use Case cho Actor giáo viên 13
13
Hình 5: Sơ đồ Use Case cho Actor người dùng 13
II Đặc tả Use Case 14
1 Đặc tả Use Case Đăng nhập 14
2 Đặc tả Use Case Quản lý người dùng 14
3 Đặc tả Use Case Đổi mật khẩu 15
4 Đặc tả Use Case Quản lý năm học 16
5 Đặc tả Use Case Quản lý học kỳ 17
6 Đặc tả Use Case Quản lý khối lớp 18
7 Đặc tả Use Case Quản lý lớp 19
8 Đặc tả Use Case Quản lý môn học 20
9 Đặc tả Use Case Quản lý giáo viên 21
10 Đặc tả Use Case Quản lý học sinh 22
11 Đặc tả Use Case Quản lý học lực 23
12 Đặc tả Use Case Quản lý loại điểm 25
13 Đặc tả Use Case Quản lý tôn giáo 26
14 Đặc tả Use Case Quản lý dân tộc 27
15 Đặc tả Use Case Quản lý nghề nghiệp 28
16 Đặc tả Use Case Quản lý lớp môn học 29
17 Đặc tả Use Case nhập điểm 30
18 Đặc tả Use Case phân công 31
19 Đặc tả Use Case phân lớp 33
20 Đặc tả Use Case thống kê 34
21 Đặc tả Use Case tìm kiếm 34
III Sơ đồ tuần tự 35
1 Sơ đồ tuần tự cho Use Case đăng nhập 35
35
Hinh 6: Sơ đồ tuần tự cho Use Case đăng nhập 35
2 Sơ đồ tuần tự cho Use Case quản lý người dùng 35
2.1 Thêm người dùng 35
35
Hình 7: Sơ đồ tuần tự cho Use Case thêm người dùng 35
2.2 Xoá người dùng 36
36
Hình 8: Sơ đồ tuần tự cho Use Case xoá người dùng 36
ii
Trang 32.3 Sửa người dùng 36
36
Hình 9: Sơ đồ tuần tự cho Use Case sửa người dùng 37
3 Sơ đồ tuần tự cho Use Case đổi mật khẩu 38
38
Hình 10: Sơ đồ tuần tự cho Use Case đổi mật khẩu 38
4 Sơ đồ tuần tự cho Use Case quản lý năm học 38
4.1 Thêm năm học 38
38
Hình 11: Sơ đồ tuần tự cho Use Case thêm năm học 38
4.2 Xoá năm học 39
39
Hình 12: Sơ đồ tuần tự cho Use Case xoá năm học 39
4.3 Sửa năm học 39
39
Hình 13: Sơ đồ tuần tự cho Use Case sửa năm học 39
5 Sơ đồ tuần tự cho Use Case quản lý học sinh 40
5.1 Thêm học sinh 40
40
Hình 14: Sơ đồ tuần tự cho Use Case thêm học sinh 40
5.2 Xoá học sinh 40
40
Hình 15: Sơ đồ tuần tự cho Use Case xoá học sinh 40
5.3 Sửa học sinh 41
41
Hình 16: Sơ đồ tuần tự cho Use Case sửa học sinh 41
6 Sơ đồ tuần tự cho Use Case phân công 41
6.1 Thêm phân công 41
41
Hình 17: Sơ đồ tuần tự cho Use Case thêm phân công 41
6.2 Xoá phân công 42
42
Hình 18: Sơ đồ tuần tự cho Use Case xoá phân công 42
6.3 Sửa phân công 42
42
Hình 19: Sơ đồ tuần tự cho Use Case sửa phân công 42
7 Sơ đồ tuần tự cho Use Case phân lớp 43
7.1 Thêm phân lớp 43
43
Hình 20: Sơ đồ tuần tự cho Use Case thêm phân lớp 43
7.2 Xoá phân lớp 43
43
Hình 21: Sơ đồ tuần tự cho Use Case xoá phân lớp 43
7.3 Sửa phân lớp 44
44
Hình 22: Sơ đồ tuần tự cho Use Case sửa phân lớp 44
8 Sơ đồ tuần tự cho Use Case nhập điểm 44
8.1 Thêm điểm 44
44
iii
Trang 4Hình 23: Sơ đồ tuần tự cho Use Case thêm điểm 44
8.2 Xoá điểm 45
45
Hình 24: Sơ đồ tuần tự cho Use Case xoá điểm 45
8.3 Sửa điểm 45
45
Hình 25: Sơ đồ tuần tự cho Use Case sửa điểm 45
9 Sơ đồ tuần tự cho Use Case tìm học sinh 46
46
Hình 26: Sơ đồ tuần tự cho Use Case tìm học sinh 46
IV Sơ đồ lớp tổng quát 46
E THIẾT KẾ 48
I Thiết kế cơ sở dữ liệu 48
1 Các bảng dữ liệu 48
DAN_TOC ( DÂN TỘC) 48
TÊN TRƯỜNG 48
KIỂU DỮ LIỆU 48
RÀNG BUỘC 48
CHÚ THÍCH 48
MaDanToc 48
Int(4) 48
Not null 48
Mã dân tộc 48
TenDanToc 48
Nvarchar(30) 48
Not null 48
Tên dân tộc 48
DIEM (ĐIỂM) 48
TÊN TRƯỜNG 48
KIỂU DỮ LIỆU 48
RÀNG BUỘC 48
CHÚ THÍCH 48
ID 48
Int(4) 48
Not null 48
ID điểm 48
MaHocSinhLop 48
Varchar(13) 48
Not null 48
Mã học sinh lớp 48
MaMonHoc 48
Varchar(4) 48
Not null 48
Mã môn học 48
MaHocKy 48
Varchar(3) 48
Not null 48
Mã học kỳ 48
MaLoai 48
iv
Trang 5Not null 48
Mã loại điểm 48
Diem 48
Float 48
Null 48
Điểm 48
GIAO_VIEN (GIÁO VIÊN) 49
TÊN TRƯỜNG 49
KIỂU DỮ LIỆU 49
RÀNG BUỘC 49
CHÚ THÍCH 49
MaGiaoVien 49
Varchar(6) 49
Not null 49
Mã giáo viên 49
HoTen 49
Nvarchar(30) 49
Not null 49
Họ tên giáo viên 49
NgaySinh 49
Datetime(8) 49
Not null 49
Ngày sinh 49
NoiSinh 49
Nvarchar(50) 49
Not null 49
Nơi sinh 49
GioiTinh 49
Bit(1) 49
Not null 49
Giới tính 49
DiaChi 49
Nvarchar(50) 49
Not null 49
Địa chỉ 49
DienThoai 49
Varchar(18) 49
Null 49
Điện thoại 49
MaMonHoc 49
Varchar(4) 49
Not null 49
Mã môn học 49
HANH_KIEM (HẠNH KIỂM) 49
TÊN TRƯỜNG 49
KIỂU DỮ LIỆU 49
RÀNG BUỘC 49
CHÚ THÍCH 49
v
Trang 6Varchar(3) 49
Not null 49
Mã hạnh kiểm 49
TenHanhKiem 49
Nvarchar(30) 49
Not null 49
Tên hạnh kiểm 49
HOC_KY (HỌC KỲ) 49
TÊN TRƯỜNG 49
KIỂU DỮ LIỆU 49
RÀNG BUỘC 49
CHÚ THÍCH 49
MaHocKy 49
Varchar(3) 49
Not null 49
Mã học kỳ 49
TenHocKy 49
Nvarchar(30) 49
Not null 49
Tên học kỳ 49
HeSo 49
Int(4) 49
Null 49
Hệ số 49
HOC_LUC (HỌC LỰC) 50
TÊN TRƯỜNG 50
KIỂU DỮ LIỆU 50
RÀNG BUỘC 50
CHÚ THÍCH 50
MaHocLuc 50
Varchar(3) 50
Not null 50
Mã học lực 50
TenHocLuc 50
Nvarchar(30) 50
Not null 50
Tên học lực 50
DiemCanDuoi 50
Float(8) 50
Not null 50
Điểm cận dưới 50
DiemCanTren 50
Float(8) 50
Not null 50
Điểm cận trên 50
DiemKhongChe 50
Float(8) 50
Not null 50
vi
Trang 7Điểm khống chế 50
HOC_SINH (HỌC SINH) 50
TÊN TRƯỜNG 50
KIỂU DỮ LIỆU 50
RÀNG BUỘC 50
CHÚ THÍCH 50
MaHocSinh 50
Varchar(8) 50
Not null 50
Mã học sinh 50
HoTen 50
Nvarchar(30) 50
Not null 50
Họ tên học sinh 50
GioiTinh 50
Bit(1) 50
Not null 50
Giới tính 50
NgaySinh 50
Datetime(8) 50
Not null 50
Ngày sinh 50
NoiSinh 50
Nvarchar(50) 50
Not null 50
Nơi sinh 50
DiaChi 50
Nvarchar(50) 50
Not null 50
Địa chỉ 50
MaDanToc 50
Int(4) 50
Not null 50
Mã dân tộc 50
MaTonGiao 50
Int(4) 50
Not null 50
Mã tôn giáo 50
HoTenCha 50
Nvarchar(30) 50
Not null 50
Họ tên Cha 50
MaNNghiepCha 50
Int(4) 50
Not null 50
Mã nghề nghiệp Cha 50
HoTenMe 50
Nvarchar(30) 50
Not null 50
vii
Trang 8Họ tên Mẹ 50
KET_QUA (KẾT QUẢ) 51
TÊN TRƯỜNG 51
KIỂU DỮ LIỆU 51
RÀNG BUỘC 51
CHÚ THÍCH 51
MaKetQua 51
Varchar(3) 51
Not null 51
Mã kết quả 51
TenKetQua 51
Nvarchar(30) 51
Not null 51
Tên kết quả 51
KHOI_LOP (KHỐI LỚP) 51
TÊN TRƯỜNG 51
KIỂU DỮ LIỆU 51
RÀNG BUỘC 51
CHÚ THÍCH 51
MaKhoiLop 51
Varchar(3) 51
Not null 51
Mã khối lớp 51
TenKhoiLop 51
Nvarchar(30) 51
Not null 51
Tên khối lớp 51
LOAI_DIEM (LOẠI ĐIỂM) 51
TÊN TRƯỜNG 51
KIỂU DỮ LIỆU 51
RÀNG BUỘC 51
CHÚ THÍCH 51
MaLoai 51
Varchar(3) 51
Not null 51
Mã loại 51
TenLoai 51
Varchar(30) 51
Not null 51
Tên loại 51
HeSo 51
Int(4) 51
Not null 51
Hệ số 51
LOAI_NGUOI_DUNG (LOẠI NGƯỜI DÙNG) 51
TÊN TRƯỜNG 51
KIỂU DỮ LIỆU 51
RÀNG BUỘC 51
CHÚ THÍCH 51
viii
Trang 9Int(4) 51
Not null 51
Mã loại 51
TenLoai 51
Nvarchar(30) 51
Not null 51
Tên loại 51
LOP (LỚP) 52
TÊN TRƯỜNG 52
KIỂU DỮ LIỆU 52
RÀNG BUỘC 52
CHÚ THÍCH 52
MaLop 52
Varchar(11) 52
Not null 52
Mã lớp 52
TenLop 52
Nvarchar(30) 52
Not nul 52
Tên lớp 52
MaKhoiLop 52
Varchar(3) 52
Not null 52
Mã khối lớp 52
MaNamHoc 52
Varchar(6) 52
Not null 52
Mã năm học 52
SiSo 52
Int(4) 52
Not null 52
Sĩ số 52
MaGiaoVien 52
Varchar(6) 52
Not null 52
Mã giáo viên 52
LOP_MONHOC (LỚP MÔN HỌC) 52
TÊN TRƯỜNG 52
KIỂU DỮ LIỆU 52
RÀNG BUỘC 52
CHÚ THÍCH 52
MaLopMonHoc 52
Int(4) 52
Not null 52
Mã lớp môn học 52
MaLop 52
Varchar(11) 52
Not null 52
ix
Trang 10Mã lớp 52
MaMonHoc 52
Varchar(4) 52
Not null 52
Mã môn học 52
MON_HOC (MÔN HỌC) 52
TÊN TRƯỜNG 52
KIỂU DỮ LIỆU 52
RÀNG BUỘC 52
CHÚ THÍCH 52
MaMonHoc 52
Varchar(4) 52
Not null 52
Mã môn học 52
TenMonHoc 52
Nvarchar(30) 52
Not null 52
Tên môn học 52
SoTiet 52
Int(4) 52
Not null 52
Số tiết 52
HeSo 52
Int(4) 52
Not null 52
Hệ số 52
NAM_HOC (NĂM HỌC) 53
TÊN TRƯỜNG 53
KIỂU DỮ LIỆU 53
RÀNG BUỘC 53
CHÚ THÍCH 53
MaNamHoc 53
Varchar(6) 53
Not null 53
Mã năm học 53
TenNamHoc 53
Varchar(30) 53
Not null 53
Tên năm học 53
NGHE_NGHIEP (NGHỀ NGHIỆP) 53
TÊN TRƯỜNG 53
KIỂU DỮ LIỆU 53
RÀNG BUỘC 53
CHÚ THÍCH 53
MaNghe 53
Int(4) 53
Not null 53
Mã nghề 53
TenNghe 53
x
Trang 11Not null 53
Tên nghề 53
NGUOI_DUNG(NGƯỜI DÙNG) 53
TÊN TRƯỜNG 53
KIỂU DỮ LIỆU 53
RÀNG BUỘC 53
CHÚ THÍCH 53
MaNguoiDung 53
Int(4) 53
Not null 53
Mã người dùng 53
MaLoai 53
Int(4) 53
Not null 53
Mã loại 53
TenNguoiDung 53
Nvarchar(30) 53
Not null 53
Tên người dùng 53
username 53
Varchar(30) 53
Not null 53
Username 53
password 53
Varchar(30) 53
Not null 53
Password 53
MaGiaoVien 53
Varchar(6) 53
Null 53
Mã giáo viên 53
PHAN_CONG (PHÂN CÔNG) 54
TÊN TRƯỜNG 54
KIỂU DỮ LIỆU 54
RÀNG BUỘC 54
CHÚ THÍCH 54
MaPhanCong 54
Int(4) 54
Not null 54
Mã phân công 54
MaLopMonHoc 54
Int(4) 54
Not null 54
Mã lớp môn học 54
MaGiaoVien 54
Varchar(6) 54
Not null 54
Mã giáo viên 54
xi
Trang 12PHAN_LOP (PHÂN LỚP) 54
TÊN TRƯỜNG 54
KIỂU DỮ LIỆU 54
RÀNG BUỘC 54
CHÚ THÍCH 54
MaHocSinhLop 54
Varchar(13) 54
Not null 54
Mã học sinh lớp 54
MaLop 54
Varchar(11) 54
Not null 54
Mã lớp 54
MaHocSinh 54
Varchar(8) 54
Not null 54
Mã học sinh 54
TON_GIAO (TÔN GIÁO) 54
TÊN TRƯỜNG 54
KIỂU DỮ LIỆU 54
RÀNG BUỘC 54
CHÚ THÍCH 54
MaTonGiao 54
Int(4) 54
Not null 54
Mã tôn giáo 54
TenTonGiao 54
Nvarchar(30) 54
Not null 54
Tên tôn giáo 54
KQ_CA_NAM_TONG_HOP ( KẾT QUẢ CẢ NĂM TỔNG HỢP) 54
TÊN TRƯỜNG 54
KIỂU DỮ LIỆU 54
RÀNG BUỘC 54
CHÚ THÍCH 54
MaHocSinhLop 54
Varchar(13) 54
Not null 54
Mã học sinh lớp 54
MaHocLuc 54
Varchar(3) 54
Not null 54
Mã học lực 54
MaHanhKiem 54
Varchar(3) 54
Not null 54
Mã hạnh kiểm 54
DTBCaNam 54
Float(8) 54
xii
Trang 13Not null 54
Điểm trung bình cả năm 54
MaKetQua 54
Varchar(3) 54
Not null 54
Mã kết quả 54
KQ_HOC_KY_MON_HOC (KẾT QUẢ HỌC KỲ MÔN HỌC) 55
TÊN TRƯỜNG 55
KIỂU DỮ LIỆU 55
RÀNG BUỘC 55
CHÚ THÍCH 55
MaHocSinhLop 55
Varchar(13) 55
Not null 55
Mã học sinh lớp 55
MaMonHoc 55
Varchar(4) 55
Not null 55
Mã môn học 55
MaHocKy 55
Varchar(3) 55
Not null 55
Mã học kỳ 55
DTBMonHocKy 55
Float(8) 55
Not null 55
Điểm trung bình môn học kỳ 55
KQ_HOC_KY_TONG_HOP (KẾT QUẢ HỌC KỲ TỔNG HỢP) 55
TÊN TRƯỜNG 55
KIỂU DỮ LIỆU 55
RÀNG BUỘC 55
CHÚ THÍCH 55
MaHocSinhLop 55
Varchar(13) 55
Not null 55
Mã học sinh lớp 55
MaHocKy 55
Varchar(3) 55
Not null 55
Mã học kỳ 55
MaHocLuc 55
Varchar(3) 55
Not null 55
Mã học lực 55
MaHanhKiem 55
Varchar(3) 55
Not null 55
Mã hạnh kiểm 55
DTBMonHocKy 55
xiii
Trang 14Null 55
Điểm trung bình môn học kỳ 55
KQ_CA_NAM_MON_HOC (KẾT QUẢ CẢ NĂM MÔN HỌC) 55
TÊN TRƯỜNG 55
KIỂU DỮ LIỆU 55
RÀNG BUỘC 55
CHÚ THÍCH 55
MaHocSinhLop 55
Varchar(13) 55
Not null 55
Mã học sinh lớp 55
MaMonHoc 55
Varchar(4) 55
Not null 55
Mã môn học 55
DiemThiLai 55
Float(8) 55
Not null 55
Điểm thi lại 55
DTBCaNam 55
Float(8) 55
Not null 55
Điểm trung bình cả năm 55
2 Quan hệ giữa các bảng 56
56
Hình 28: Quan hệ giữa các bảng dữ liệu 56
II Thiết kế Class Diagram 57
1 Class Diagram đăng nhập 57
57
Hình 29: Class diagarm đăng nhập 57
2 Class Diagram quản lý người dùng 57
57
Hình 30: Class diagarm quản lý người dùng 57
3 Class Diagram quản lý học sinh 58
58
Hình 31: Class diagarm quản lý học sinh 58
4 Class Diagram phân công 58
58
Hình 32: Class diagarm phân công giáo viên 58
5 Class Diagram phân lớp 59
59
Hình 33: Class diagarm phân lớp học sinh 59
6 Class Diagram nhập điểm 59
59
Hình 34: Class diagarm nhập điểm 59
III Thiết kế giao diện 60
1 Thiết kế Menu 60
Menu Hệ thống 60
xiv
Trang 15STT 60
Popup Menu 60
Item Menu 60
Chức năng 60
1 60
Hệ thống 60
Đăng nhập 60
Cho phép người dùng đăng nhập vào hệ thống 60
2 60
Đăng xuất 60
Cho phép người dùng đăng xuất khỏi hệ thống 60
3 60
Quản lý người dùng 60
Cho phép quản trị viên thêm người dùng 60
4 60
Đổi mật khẩu 60
Cho phép người dùng đổi mật khẩu 60
5 60
Sao lưu 60
Cho phép quản trị viên sao lưu hệ thống 60
6 60
Phục hồi 60
Cho phép quản trị viên phục hồi hệ thống 60
7 60
Thoát 60
Thoát khỏi chương trình 60
Menu Hiển thị 60
60
STT 60
Popup Menu 60
Item Menu 60
Chức năng 60
1 60
Hiển thị 60
Thanh chức năng 60
Hiển thị/ẩn thanh chức năng 60
2 60
Thanh status 60
Hiển thị/ẩn thanh status 60
Menu Quản lý 61
61
STT 62
Popup Menu 62
Item Menu 62
Chức năng 62
1 62
Quản lý 62
Giáo viên 62
xv
Trang 16Cho phép người dùng thực hiện chức năng quản lý giáo viên 62
2 62
Học sinh 62
Cho phép người dùng thực hiện chức năng quản lý học sinh 62
3 62
Dân tộc 62
Cho phép người dùng thực hiện chức năng quản lý dân tộc 62
4 62
Tôn giáo 62
Cho phép người dùng thực hiện chức năng quản lý tôn giáo 62
5 62
Nghề nghiêp 62
Cho phép người dùng thực hiện chức năng quản lý nghề nghiệp 62
6 62
Lớp 62
Cho phép người dùng thực hiện chức năng quản lý lớp 62
7 62
Khối lớp 62
Cho phép người dùng thực hiện chức năng quản lý khối lớp 62
8 62
Lớp môn học 62
Cho phép người dùng thực hiện chức năng quản lý lớp môn học 62
8 62
Học kỳ 62
Cho phép người dùng thực hiện chức năng quản lý học kỳ 62
9 62
Năm học 62
Cho phép người dùng thực hiện chức năng quản lý năm học 62
10 62
Môn học 62
Cho phép người dùng thực hiện chức năng quản lý môn học 62
11 62
Loại điểm 62
Cho phép người dùng thực hiện chức năng quản lý loại điểm 62
12 62
Kết quả 62
Cho phép người dùng thực hiện chức năng quản lý kết quả 62
13 62
Học lực 62
Cho phép người dùng thực hiện chức năng quản lý học lực 62
14 62
Hạnh kiểm 62
Cho phép người dùng thực hiện chức năng quản lý hạnh kiểm 62
Menu Nghiệp vụ 63
63
STT 63
Popup Menu 63
Item Menu 63
Chức năng 63
xvi
Trang 17Nghiệp vụ 63
Phân công giáo viên 63
Cho phép người dùng phân công giáo viên 63
2 63
Phân lớp học sinh 63
Cho phép người dùng phân lớp học sinh 63
3 63
Nhập điểm 63
Cho phép người dùng nhập điểm cho học sinh 63
Menu Thống kê 63
63
STT 63
Popup Menu 63
Item Menu 63
Chức năng 63
1 63
Thống kê 63
Danh sách giáo viên 63
Cho phép người dùng thống kê danh sách giáo viên 63
2 63
Danh sách học sinh 63
Cho phép người dùng thống kê danh sách học sinh 63
3 63
Danh sách lớp 63
Cho phép người dùng thống kê danh sách lớp 63
4 63
Kết quả HK theo lớp 63
Cho phép người dùng thống kê kết quả học kỳ của học sinh theo lớp 63
5 63
Kết quả cả năm theo lớp 63
Cho phép người dùng thống kê kết quả cả năm theo lớp 63
Menu Tìm kiếm 64
64
STT 64
Popup Menu 64
Item Menu 64
Chức năng 64
1 64
Tìm kiếm 64
Học sinh 64
Cho phép người dùng tìm học sinh 64
2 64
Giáo viên 64
Cho phép người dùng tìm giáo viên 64
Menu Trợ giúp 64
64
STT 64
Popup Menu 64
xvii
Trang 18Item Menu 64
Chức năng 64
1 64
Trợ giúp 64
Thông tin trường 64
Xem thông tin về trường THPT An Phú 64
2 64
Thông tin phần mềm 64
Xem thông tin chương trình 64
3 64
Hướng dẫn sử dụng 64
Hướng dẫn sử dụng chương trình 64
2 Thiết kế một số form chính 65
Chương trình chính 65
65
Hình 35: Giao diện chương trình chính 65
Quản lý người dùng 65
65
Hình 36: Giao diện quản lý người dùng 65
Quản lý học sinh 66
66
Hình 37: Giao diện quản lý học sinh 66
Phân lớp học sinh 66
66
Hình 38: Giao diện phân lớp học sinh 66
Nhập điểm học sinh 67
67
Hình 39: Giao diện nhập điểm 67
Quản lý giáo viên 67
67
Hình 40: Giao diện quản lý giáo viên 67
Phân công giáo viên 68
68
Hình 41: Giao diện phân công giáo viên 68
Tìm kiếm học sinh 68
68
Hình 42: Giao diện tìm kiếm học sinh 68
F CÀI ĐẶT 69
G TỔNG KẾT 69
I Kết quả đạt được 69
II Hướng phát triển 69
H Tài liệu tham khảo 70
xviii
Trang 19DANH SÁCH CÁC HÌNH
Hình 1: Kiến trúc hệ thống 6
Hình 2: Kiến trúc NET Framework 10
Hình 3: Sơ đồ Use Case tổng quát 12
Hình 4: Sơ đồ Use Case cho Actor quản lý 13
Hình 5: Sơ đồ Use Case cho Actor người dùng 13
Hinh 6: Sơ đồ tuần tự cho Use Case đăng nhập 35
Hình 7: Sơ đồ tuần tự cho Use Case thêm người dùng 35
Hình 8: Sơ đồ tuần tự cho Use Case xoá người dùng 36
Hình 9: Sơ đồ tuần tự cho Use Case sửa người dùng 36
Hình 10: Sơ đồ tuần tự cho Use Case đổi mật khẩu 37
Hình 11: Sơ đồ tuần tự cho Use Case thêm năm học 37
Hình 12: Sơ đồ tuần tự cho Use Case xoá năm học 38
Hình 13: Sơ đồ tuần tự cho Use Case sửa năm học 38
Hình 14: Sơ đồ tuần tự cho Use Case thêm học sinh 39
Hình 15: Sơ đồ tuần tự cho Use Case xoá học sinh 39
Hình 16: Sơ đồ tuần tự cho Use Case sửa học sinh 40
Hình 17: Sơ đồ tuần tự cho Use Case thêm phân công 40
Hình 18: Sơ đồ tuần tự cho Use Case xoá phân công 41
Hình 19: Sơ đồ tuần tự cho Use Case sửa phân công 41
Hình 20: Sơ đồ tuần tự cho Use Case thêm phân lớp 42
Hình 21: Sơ đồ tuần tự cho Use Case xoá phân lớp 42
Hình 22: Sơ đồ tuần tự cho Use Case sửa phân lớp 43
Hình 23: Sơ đồ tuần tự cho Use Case thêm điểm 43
Hình 24: Sơ đồ tuần tự cho Use Case xoá điểm 44
xix
Trang 20Hình 25: Sơ đồ tuần tự cho Use Case sửa điểm 44
Hình 26: Sơ đồ tuần tự cho Use Case tìm học sinh 45
Hình 27: Sơ đồ lớp 45
Hình 28: Quan hệ giữa các bảng dữ liệu 54
Hình 29: Class diagarm đăng nhập 55
Hình 30: Class diagarm quản lý người dùng 55
Hình 31: Class diagarm quản lý học sinh 56
Hình 32: Class diagarm phân công giáo viên 56
Hình 33: Class diagarm phân lớp học sinh 57
Hình 34: Class diagarm nhập điểm 57
Hình 35: Giao diện chương trình chính 62
Hình 36: Giao diện quản lý người dùng 62
Hình 37: Giao diện quản lý học sinh 63
Hình 38: Giao diện phân lớp học sinh 63
Hình 39: Giao diện nhập điểm 64
Hình 40: Giao diện quản lý giáo viên 64
Hình 41: Giao diện phân công giáo viên 65
Hình 42: Giao diện tìm kiếm học sinh 65
Hình 43: Mô hình cài đặt 66
xx
Trang 21A PHẦN MỞ ĐẦU
I Lý do chọn đề tài
Ngày nay với sự phát triển không ngừng của khoa học máy tính Một số công việc làmbằng thủ công vừa tốn công, tốn sức lại hao tốn quá nhiều thời gian dần dần được chuyểnsang hệ thống tự động hoá, đem lại sự thuận tiện trong công việc cho con người cũng như gópphần làm cho cơ quan hoạt động mang tính chuyên nghiệp và hiệu quả hơn Từ nhu cầu thực
tế đó đã xuất hiện nhiều phần mềm và công cụ để quản lý và xử lý các công việc thay cho conngười
Trong quản lý giáo dục, với số lượng học sinh ngày càng tăng thì việc tính điểm vàxếp loại học tập cho học sinh vào cuối mỗi học kỳ, năm học ngày càng chiếm nhiều thời gian
và tốn nhiều công sức của bộ phận giáo vụ và giáo viên phụ trách môn học Do đó, xây dựngphần mềm “ Quản lý điểm số” cho một trường học nói chung và trường trung học phổ thôngnói riêng là hết sức cần thiết nhằm tiết kiệm thời gian, công sức của giáo viên đồng thời tăng
độ chính xác trong công tác tính điểm và xếp loại học sinh Đây là một công cụ hỗ trợ cầnthiết và hiệu quả, giúp cho công việc dễ dàng hơn, tiết kiệm được thời gian và công sức đángkể
Xuất phát từ nhu cầu thiết thực trên, nên em chọn đề tài “Quản Lý Điểm Số Học SinhTrường Trung học Phổ Thông An Phú” nhằm quản lý thông tin học sinh và điểm cho học sinhtoàn trường
II Giới thiệu sơ lược ứng dụng
1 Mục tiêu
Mục tiêu của đề tài đặt ra là xây dựng hệ thống quản lý điểm học sinh, hỗ trợ nhập thông tin học sinh, nhập điểm và tính điểm cho học sinh, nhập thông tin giáo viên, để việc quản lý điểm học sinh nhanh hơn và ít tốn thời gian hơn
2 Chức năng chính
Nhập thông tin học sinh khi mới vào trường
Phân lớp học sinh vào đầu năm học
Nhập thông tin giáo viên và chuyên môn của giáo viên
Phân công giảng dạy
Nhập điểm cho học sinh
Tính điểm trung bình môn, trung bình học kỳ, điểm tổng kết cả năm và xếp loại học sinh
Thống kê danh sách học sinh, danh sách giáo viên
Tìm kiếm học sinh, tìm kiếm giáo viên
Trang 22B PHẦN TỔNG QUAN
I Giới thiệu sơ lược về trường THPT An Phú
Trường THPT An Phú được đặt tại thị trấn An Phú, huyện An Phú, tỉnh An Giang
Trường được thành lập năm 1981, ban đầu là một phân hiệu An Phú củatrường THPT Tân Châu, với 2 lớp( một lớp 10 và một lớp 11), có khoảng 70học sinh và 7 giáo viên
Từ năm 1983 trường được chính thức thành lập và mang tên là “Trường THPT
An Phú” cho đến nay
Hiện tại trường có 27 lớp học, 75 giáo viên và 1071 học sinh với 3 khối lớp 10,
11, 12
Trường THPT An Phú là một trong những trường có chất lượng dạy và học cao ở tỉnh
An Giang với đội ngũ giáo viên nhiệt tình, yêu nghề mến trẻ, tinh thần trách nhiệmcao để hoàn thành tốt công tác giảng dạy
Nhiều năm liền đều có học sinh đạt giải cao trong các kỳ thi học sinh giỏi cấptỉnh
Tỉ lệ tốt nghiệp ổn định
Tỉ lệ đậu đại học, cao đẳng từ 10% đến 15% trên năm
Đạt giải nhất toàn đoàn hội khỏe phù đổng nhiều năm liền
II Mô tả bài toán
1 Hiện trạng hệ thống
Hiện tại, trường THPT An Phú vẫn còn tính điểm bằng hình thức thủ công (viết tay) nên vẫn còn gặp một số hạn chế
Lưu trữ và tìm kiếm khó khăn và mất nhiều thời gian
Tính toán chậm và đôi khi thiếu chính xác
Độ an toàn không cao
Do đó phần mềm Quản lý điểm học sinh là cần thiết để khắc phục những hạn chế trên
2 Mô tả bài toán
Một học sinh khi mới vào trường sẽ được nhập thông tin cá nhân vào hệ thống cácthông tin gồm: Họ và tên, giới tính, ngày sinh, dân tộc, tôn giáo, họ tên cha, nghềnghiệp cha, họ tên mẹ, nghề nghiệp mẹ
Vào đầu năm học học sinh sẽ được phân vào các lớp
Khối 10 thì phân theo dạng lớp mà học sinh đó đăng ký
Khối 11 và 12 thì có thể được phân vào lớp cũ (ví dụ lớp 10A1 sẽ lên lớp11A1) hoặc có thể được phân vào lớp khác (ví dụ lớp 10A1 lên 11A2)
Trang 23Với mỗi lớp sẽ lưu trữ các thông tin về lớp, sĩ số và giáo viên chủ nhiệm
Trong mỗi khối lớp có 4 dạng lớp: lớp A, B, C, D Mỗi loại lớp có nhiều lớp
Dạng lớp A:
Môn nâng cao: Toán, Lý, Hóa
Môn cơ bản: Các môn còn lại
Dạng lớp B:
Môn nâng cao: Toán, Hóa, Sinh
Môn cơ bản: Các môn còn lại
Dạng lớp C:
Môn nâng cao: Văn, Sử, Địa
Môn cơ bản: Các môn còn lại
Dạng lớp D:
Môn nâng cao: Văn, Toán, Anh
Môn cơ bản: Các môn còn lại
Trong một học kỳ các môn học sẽ có các hình thức kiểm tra như:
Kiểm tra thường xuyên: gồm kiểm tra miệng và kiểm tra 15 phút,
Kiểm tra định kỳ: kiểm tra 1 tiết
Kiểm tra học kỳ: thi
Trong đó, kiểm tra miệng (hệ số 1), 15 phút (hệ số 1), 1 tiết (hệ số 2) có thể cónhiều cột điểm Riêng điểm “thi” (hệ số 3) chỉ có một cột duy nhất vào cuốihọc kỳ
Sau mỗi học kỳ điểm trung bình môn của học kỳ và cả năm được tính như sau:2.1 Điểm trung bình môn của học kỳ (ĐTBmhk) là điểm trung bình cộng củađiểm các bài kiểm tra thường xuyên (KTtx), kiểm tra điều kiện (KTđk) và kiểmtra học kỳ (KThk)
ĐKThk ĐKTđk
ĐKTtx
2.2 Điểm trung bình môn của cả năm (ĐTBmcn) là trung bình cộng của điểmtrung bình môn học kỳ I (ĐTBmhkI) với điểm trung bình môn học kỳ II(ĐTBmhkII), trong đó ĐTBmhkII tính theo hệ số 2:
Trang 24 Điểm trung bình các môn học kỳ, cả năm học
a) Điểm trung bình các môn học kỳ (ĐTBhk) là trung bình cộng của điểm trungbình môn học kỳ của tất cả các môn với hệ số(a, b….) của từng môn học:
a x ĐTBmhk Toán + b x ĐTBmhk Vật lý + … ĐTBhk =
Điểm trung bình các môn học từ 3,5 trở lên
Không có môn nào có điểm trung bình dưới 2,0
Loại kém: các trường hợp còn lại
Đối tượng sử dụng
o Giáo viên dạy lớp nhập điểm cho học sinh
o Ban giám hiệu có toàn quyền tác động vào hệ thống
Trang 25 Yêu cầu hệ thống
o Có chế độ phân quyền cho các loại người dùng khác nhau
o Hỗ trợ nhập thông tin cơ bản của giáo viên dạy lớp và giáo viên chủ nhiệm
o Hỗ trợ nhập thông tin học sinh khi vào trường
o Hỗ trợ phân lớp học sinh vào đầu năm học
o Hỗ trợ nhập điểm cho học sinh
o Hỗ trợ thống kê điểm, xếp loại học lực của học sinh theo từng lớp
Chi tiết hóa
Sinh ra mã ở dạng nguyên mẫu
Lập và cung cấp tài liệu
2 Các sơ đồ lớp
Sơ đồ lớp (Class Diagram)
Bao gồm một tập hợp các lớp, các giao diện, sơ đồ hợp tác và mối quan hệ giữa chúng
Nó thể hiện mặt tĩnh của hệ thống
Sơ đồ đối tượng (Object Diagram)
Bao gồm một tập hợp các đối tượng và mối quan hệ giữa chúng Đối tượng là một thểhiện của lớp, sơ đồ đối tượng là một thể hiện của sơ đồ lớp
Sơ đồ Use case (Use Case Diagram)
Khái niệm actor: là những người dùng(tác nhân) hay hệ thống khác ở bên ngoài phạm vicủa hệ thống mà có tương tác với hệ thống
Sơ đồ Use case bao gồm một tập hợp các Use case, các actor và thể hiện mối quan hệtương tác giữa actor và Use case Nó rất quan trọng trong việc tổ chức và mô hình hóa hành vicủa hệ thống
Sơ đồ tuần tự (Sequence Diagram)
Là một dạng biểu đồ tương tác (interaction), biểu diễn sự tương tác giữa các đối tượngtheo thứ tự thời gian Nó mô tả các đối tượng liên quan trong một tình huống cụ thể và cácbước tuần tự trong việc trao đổi các thông báo(message) giữa các đối tượng đó để thực hiệnmột chức năng nào đó của hệ thống
Trang 26 Sơ đồ hợp tác (Collaboration)
Gần giống như sơ đồ Sequence, sơ đồ hợp tác là một cách khác để thể hiện một tìnhhuống có thể xảy ra trong hệ thống Nhưng nó tập trung vào việc thể hiện việc trao đổi qua lạicác thông báo giữa các đối tượng chứ không quan tâm đến thứ tự của các thông báo đó Cónghĩa là qua đó chúng ta sẽ biết được nhanh chóng giữa 2 đối tượng cụ thể nào đó có trao đổinhững thông báo gì cho nhau
Sơ đồ chuyển trạng thái (Statechart)
Chỉ ra một máy chuyển trạng thái, bao gồm các trạng thái, các bước chuyển trạng thái vàcác hoạt động Nó đặc biệt quan trọng trong việc mô hình hóa hành vi của một lớp giaodiện(interface class) hay hợp tác và nó nhấn mạnh vào các đáp ứng theo sự kiện của một đốitượng, điều này rất hữu ích khi mô hình hóa một hệ thống phản ứng(reactive)
Sơ đồ hoạt động (Activity)
Là một dạng đặc biệt của sơ đồ chuyển trạng Nó chỉ ra luồng đi từ hoạt động này sanghoạt động khác trong một hệ thống Nó đặc biệt quan trọng trong việc xây dựng mô hình chứcnăng của hệ thống và nhấn mạnh tới việc chuyển đổi quyền kiểm soát giữa các đối tượng
Sơ đồ thành phần (Component)
Chỉ ra cách tổ chức và sự phụ thuộc của các thành phần(component) Nó liên quan tới sơ
đồ lớp, trong đó một thành phần thường ánh xạ tới một hay nhiều lớp, giao diện,collaboration
Quan hệ Thừa kế (Generalization)
Chỉ ra cấu hình của hệ thống khi thực thi
Trang 27 Use Case view: Mô tả cách ứng xử của hệ thống.
Logical view: Mô tả các đối tượng.
Process view: Mô tả việc đồng bộ hoá và các xử lý đồng thời.
Implementation view: Mô tả sự phụ thuộc và kết hợp giữa các component.
Deployment view: Chỉ ra cấu hình phần cứng.
4 Sơ đồ Use Case (Use Case diagram)
Mô tả toàn cảnh hệ thống, đơn giản và ít ký hiệu
4.1 Mục đích của sơ đồ Use Case
Mô hình hoá chuỗi hành động
Cung cấp tổng thể hệ thống
Đưa ra cơ sở để xác định giao tiếp giữa người, máy đối với hệ thống
Mô hình hoá cho một Use Case
Cho người dùng hiểu và giao tiếp với hệ thống
Làm cơ sở cho phát thảo các đặc tả kiểm tra
4.2 Các ký hiệu cơ bản
Khái niệm Ký hiệu Ý nghĩa
Actor Người dùng hệ thống, một hệ thống khác hoặc một sự kiện
thời gian
Actor có thể: Chỉ cung cấp thông tin cho hệ thống, chỉ lấythông tin từ hệ thống, hoặc nhận thông tin từ hệ thống vàcung cấp thông tin cho hệ thống
Use Case Là một khối chức năng được thực hiện bởi hệ thống để mang
lại một kết quả có giá trị đối với một Actor nào đó
Quy ước đặt tên Use Case: động từ đi trước, danh từ hoặccụm từ theo sau
Relationship Quan hệ giữa các phần tử trong mô hình, bao gồm kết hợp
(association), tổng quát hoá (generalization)
Include Một Use Case có thể có chức năng của một Use Case khácExtend Dùng để chỉ các hành vi tự chọn (có thể hoặc không), các
hành vi theo điều kiện nhất định
Trang 285 Sơ đồ lớp
5.1 Khái niệm
Đối tượng (Object)
Mô hình hoá một vật hoặc một khái niệm trong thế giới thực
Một đối tượng có các đặc điểm như: Trạng thái (state), ứng xử(behavior), định danh (indentity)
Lớp (class)
Là tập hợp các đối tượng có chung các thuộc tính, các ứng xử vàngữ nghĩa
Là một khuôn mẫu để tạo ra đối tượng
Đối tượng là một thể hiện của một lớp
Gói ( package)
Là tập hợp các lớp hay các gói có liên quan với nhau
Sơ đồ lớp ( Class diagram)
Cung cấp một bức tranh mô tả một số hoặc tất cả các lớp trong môhình
Thể hiện cấu trúc và ứng xử của một hay nhiều lớp
Thể hiện mối quan hệ thừa kế giữa các lớp
Các thao tác
Trang 295.3 Các kiểu lớp
Khái niệm Ký hiệu Ý nghĩa
Lớp thực thể
(Entity class)
Mô hình hoá các thông tin lưu trữ trong hệ thống
Độc lập với các đối tượng xung quanh
Sơ đồ tuần tự biểu diễn sự tương tác của các đối tượng theo thứ tự thời gian
Đặc điểm của biểu đồ tuần tự là phản ánh cấu trúc của biểu đồ lớp và thứ tựtương tác
6.1 Mục đích
Lập mô hình tương tác đối tượng
Hiện thực hoá Use Case
Lập mô hình các kịch bản sử dụng của Use Case
Khám phá tính logic của một phép toán, hàm hay thủ tục phức tạp
6.2 Các ký hiệu
Thông điệp
Thủ tục
Đường sinh
Trang 30II Môi trường phát triển
1 Kiến trúc NET framework
Khi Microsoft thông báo phát minh NET với ngôn ngữ C# vào tháng 7/2000, mãi đếntháng 4/2003 phiên bản 1.1 của bộ .NET Framework mới được lưu hành, nó là mộtFramework triển khai phần mềm hoàn toàn mới, một cách tiếp cận mới làm cho lập trình dễhơn
Cách dễ hiểu nhất để nghĩ về NET Framework là một môi trường mà code của bạn sẽhoạt động Có nghĩa là NET sẽ quản lý việc thi hành chương trình, khởi động chương trình,cấp phép hoạt động, cấp phát ký ức để dữ liệu làm việc, hổ trợ việc thu hồi tài nguyên và ký
ức không dùng đến, …Tuy nhiên ngoài việc tiến hành những công tác vừa nêu trên, NET cònchuẩn bị sẵn một thư viện lớp được gọi là NET Framework base class library cho phép thựchiện nhiều tác vụ trên windowns Tóm lại, NET Framework giữ vai trò: quản lý việc thi hànhchương trình của bạn và cung cấp dịch vụ mà chương trình của bạn cần đến
Hình 2 : Kiến trúc NET Framework
Các thành phần chính của NET Framework là: Common Language Runtime(CLR) vàFramework Base Classes Library
Common Language Runtime(CLR): Là bộ phận quản lý việc thi hành đoạn mã của
bạn, nạp chương trình cho chạy đoạn mã theo những tiến trình nhất định cũng như quản lý cáctiến trình này và cung cấp tất cả các dịch vụ cho tiến trình CLR tạo một môi trường màchương trình được thi hành CLR bao gồm một virtual machine tương tự như java virtualmachine Ở cấp cao, CLR cho biên dịch các đối tượng, tiến hành các kiểm tra an toàn đối vớicác đối tượng này, bố trí chúng lên kí ức, cho thi hành và cuối cùng là thu hồi kí ức mà chúngchiếm dụng trong thời gian thi hành nhưng không còn sử dụng nữa CRL được xem là linhhồn của NET Framework
Speciication (CTS) Common Language Speciication (CLS)
WebService Web Forms WindowsForms
Windows Platform
Trang 31Framework Base Classes Library: Đây là một thư viện lớp rất đồ sộ chứa những
code đã viết sẵn, cung cấp một API thiên đối tượng bao gồm tất cả các chức năng được baotrùm bởi NET Framework Với hơn 5000 lớp khác nhau, Framework Classes Library cungcấp những tiện nghi giúp triển khai nhanh chóng các ứng dụng trên desktop, client server, cácdịch vụ web và các ứng dụng khác
2 Ngôn ngữ C#
Ngôn ngữ C# là một trong số các ngôn ngữ được NET Framework hỗ trợ, C# khá đơngiản, chỉ khoảng 80 từ khóa và hơn mười mấy kiểu dữ liệu được xây dựng sẵn Tuy nhiên, ngôn ngữ C# có ý nghĩa cao khi nó thực thi những khái niệm lập trình hiện đại C# bao gồm tất cả những hỗ trợ cho cấu trúc, thành phần component, lập trình hướng đối tượng Những tính chất đó hiện diện trong một ngôn ngữ lập trình hiện đại Và ngôn ngữ C# hội đủ những điều kiện như vậy, hơn nữa nó được xây dựng trên nền tảng của hai ngôn ngữ mạnh nhất là C++ và Java
3 Microsoft SQL server 2000
SQL Server 2000 là một hệ quản trị cơ sở dữ liệu (Relational Database ManagementSystem (RDBMS) ) sử dụng Transact-SQL để trao đổi dữ liệu giữa Client computer và SQLServer computer Một RDBMS bao gồm databases, database engine và các ứng dụng dùng đểquản lý dữ liệu và các bộ phận khác nhau trong RDBMS
SQL Server 2000 được tối ưu để có thể chạy trên môi trường cơ sở dữ liệu rất lớn (VeryLarge Database Environment) lên đến Tera-Byte và có thể phục vụ cùng lúc cho hàng ngànuser SQL Server 2000 có thể hoạt động kết hợp tốt với các server khác như MicrosoftInternet Information Server (IIS), E-Commerce Server, Proxy Server
SQL Server 2000 được cấu tạo bởi nhiều thành phần như Relational Database Engine,Analysis Service và English Query Các thành phần này khi phối hợp với nhau tạo thànhmột giải pháp hoàn chỉnh giúp cho việc lưu trữ và phân tích dữ liệu một cách dễ dàng
Trang 32D PHÂN TÍCH
I Sơ đồ Use Case
1 Sơ đồ Use Case tổng quát cho tất cả các Actor
Hình 3: Sơ đồ Use Case tổng quát
Trang 332 Sơ đồ Use Case cho Actor quản lý
Hình 4: Sơ đồ Use Case cho Actor quản lý
3 Sơ đồ Use Case cho Actor giáo viên
Hình 5: Sơ đồ Use Case cho Actor người dùng
Trang 34II Đặc tả Use Case
1 Đặc tả Use Case Đăng nhập
Mô tả: Người dùng đăng nhập vào hệ thống.
Điều kiện tiên quyết: Hệ thống chưa được đăng nhập.
Trình tự thực hiện:
1 Từ giao diện chính, người dùng chọn đăng nhập vào hệ thống
2 Hệ thống yêu cầu nhập thông tin đăng nhập (tên đăng nhập và mật khẩu)
3 Người dùng nhập thông tin đăng nhập
4 Người dùng nhấn nút Đăng Nhập [Ngoại lệ a]
5 Hệ thống kiểm tra thông tin đăng nhập [Ngoại lệ b]
6 Hệ thống thông báo đăng nhập thành công
7 Use case kết thúc
Ngoại lệ a: Người dùng nhấn nút Hủy Bỏ.
a.4 Người dùng nhấn nút Hủy Bỏ khi không muốn đăng nhập nữa
a.5 Use case kết thúc
Ngoại lệ b: Thông tin không hợp lệ.
b.5 Thông tin đăng nhập không hợp lệ
b.6 Hệ thống thông báo thông tin đăng nhập không hợp lệ, đăng nhập không thành công
b.7 Use case kết thúc
Kết quả: Đăng nhập thành công
2 Đặc tả Use Case Quản lý người dùng
Mô tả : Chức năng này cho phép quản trị viên quản lý thông tin người dùng bao gồm
thêm, cập nhật và xóa người dùng thông tin người dùng
Điều kiện tiên quyết: Người dùng phải đăng nhập vào hệ thống với quyền là người
quản trị (Admin)
Trình tự thực hiện:
1 Từ giao diện chính người dùng chọn quản lý người dùng
2 Hệ thống hiển thị giao diện quản lý người dùng
a Thêm người dùng: Quản trị viên muốn thêm người dùng mới.
a.3 Quản trị viên chọn nút Thêm Mới
a.4 Hệ thống yêu cầu nhập thông tin người dùng cần thêm
a.5 Quản trị viên nhập thông tin người dùng cần thêm
a.6 Quản trị viên chọn Lưu [Ngoại lệ d]
a.7 Hệ thống kiểm tra thông tin người dùng [Ngoại lệ e]
a.8 Thêm thành công, kết thúc use case Thêm người dùng
Ngoại lệ d: Quản trị viên không muốn thêm nũa.
d.6 Quản trị viên không chọn nút Bỏ qua
d.7 Người dùng không được thêm, use case Thêm người dùng kết thúc
Ngoại lệ e: Thông tin người dùng không hợp lệ.
e.7 Hệ thống thông báo thông tin người dùng cần thêm không hợp lệ, yêu cầu người dùng nhập lại
e.8 Trở lại bước a.5
Kết quả: Một người dùng được thêm vào hệ thống.
b Cập nhật người dùng: Quản trị viên muốn cập nhật thông tin người dùng.
b.3 Quản trị viên chọn người dùng cần cập nhật
Trang 35b.4 Quản trị viên nhập lại thông tin người dùng cần cập nhật.
b.5 Quản trị viên chọn nút Lưu.[Ngoại lệ f]
b.6 Hệ thống kiểm tra thông tin người dùng [Ngoại lệ g]
b.7.Cập nhật thành công, use case Cập nhật người dùng kết thúc
Ngoại lệ f: Quản trị viên không muốn cập nhật thông tin người dùng nữa.
f.5 Quản trị viên chọn nút Bỏ qua
f.6 Quản trị viên không cập nhật người dùng nữa, use case Cập nhật người dùng kết thúc
Ngoại lệ g: Thông tin người dùng không hợp lệ.
g.6 Hệ thống thông báo thông tin người dùng cần thêm không hợp lệ, yêu cầu người dùng nhập lại
g.7 Trở lại bước b.4
Kết quả: Thông tin của một người dùng trong hệ thống được cập nhật.
c Xóa người dùng: Quản trị viên muốn xóa người dùng.
c.3 Quản trị viên chọn người dùng cần xóa
c.4 Quản trị viên chọn nút xoá
c.5 Hệ thống yêu cầu xác nhận lại có thật sự muốn xóa hay không
c.6 Quản trị viên xác nhận là muốn xóa [Ngoại lệ h]
c.7 Hệ thống kiểm tra các mối ràng buộc [Ngoại lệ i]
c.8 Người dùng được chọn bị xóa ra khỏi hệ thống, use case Xóa người dùng kết thúc
Ngoại lệ h:
h.6 Quản trị viên xác nhận là không muốn xóa
h.7 Không xóa người dùng, use case Xóa người dùng kết thúc
Ngoại lệ i: Có sự ràng buộc
i.7 Hệ thống thông báo có sự ràng buộc, không thể xoá, use case xoá kết thúc
Kết quả: Một người dùng bị xóa khỏi hệ thống.
3 Đặc tả Use Case Đổi mật khẩu
Mô tả: Chức năng này cho phép người dùng thay đổi mật khẩu đang sử dụng
Điều kiện tiên quyết: Người dùng phải đăng nhập vào hệ thống.
Trình tự thực hiện:
1 Từ giao diện chính người dùng chọn đổi mật khẩu
2 Hệ thống hiển thị giao diện đổi mật khẩu
3 Hệ thống yêu cầu nhập thông tin: mật khẩu cũ, mật khẩu mới, xác nhận mật khẩu mới
4 Người dùng nhập thông tin yêu cầu
5 Người dùng chọn nút Đồng ý.[Ngoại lệ a]
6 Hệ thống kiểm tra thôn tin .[Ngoại lệ b]
7 Đổi mật khẩu thành công
Ngoại lệ a: Người dùng không muốn đổi mật khẩu.
a.5 Người dùng chọn hủy bỏ
a.6 Kết thúc use case Đổi mật khẩu
Ngoại lệ b: Mật khẩu không hợp lệ
b.6 Hệ thống thông báo sai mật khẩu, yêu cầu nhập lại thông tin mật khẩu
b.7 Trở lại bước 4
Kết quả: đổi mật khẩu thành công.
Trang 364 Đặc tả Use Case Quản lý năm học
Mô tả: Chức năng này cho phép người quản lý quản lý năm học bao gồm thêm, cập
nhật, xóa thông tin năm học
Điều kiện tiên quyết: Người dùng phải đăng nhập vào hệ thống với quyền là người
quản lý
Trình tự thực hiện:
1 Từ giao diện chính người dùng chọn quản lý năm học
2 Hệ thống hiển thị giao diện quản lý năm học
a Thêm năm học: Người dùng muốn thêm năm học mới.
a.3 Người dùng chọn nút Thêm Mới
a.4 Hệ thống yêu cầu nhập thông tin năm học cần thêm
a.5 Người dùng nhập thông tin năm học cần thêm
a.6 Người dùng chọn Lưu [Ngoại lệ d]
a.7 Hệ thống kiểm tra thông tin năm học [Ngoại lệ e]
a.8 Thêm thành công, kết thúc use case thêm năm học
Ngoại lệ d: Người dùng không muốn thêm năm học mới.
d.5 Người dùng chọn nút Bỏ qua
d.6 Người dùng không muốn thêm năm học nữa, kết thúc use case thêm năm học
Ngoại lệ e: Thông tin năm học không hợp lệ.
e.7 Hệ thống thông báo thông tin năm học cần thêm không hợp lệ, yêu cầu người dùng nhập lại
e.8 Trở lại bước a.5
Kết quả: Một năm học được thêm vào hệ thống.
b Cập nhật năm học: Người dùng muốn cập nhật thông tin năm học.
b.3 Người dùng chọn năm học cần cập nhật
b.4 Người dùng nhập lại thông tin năm học
b.4 Người dùng chọn Lưu [Ngoại lệ f]
b.5 Hệ thống kiểm tra thông tin năm học [Ngoại lệ g]
b.6.Cập nhật thành công, use case Cập nhật năm học kết thúc
Ngoại lệ f: Người dùng không muốn cập nhật thông tin năm học nữa.
f.3 Người dùng không cập nhật năm học nữa người dùng chọn nút bỏ qua.f.4 Kết thúc use case Cập nhật năm học
Ngoại lệ g: Thông tin năm học không hợp lệ.
g.5 Hệ thống thông báo thông tin năm học cần thêm không hợp lệ, yêu cầu nhập lại
g.6 Trở lại bước b.4
Kết quả: Thông tin của một năm học trong hệ thống được cập nhật.
c Xóa năm học: Người dùng muốn xóa năm học.
c.3 Người dùng chọn năm học cần xóa
c.4 Người dùng chọn nút Xoá
c.5 Hệ thống yêu cầu xác nhận lại có thật sự muốn xóa không
c.6 Người dùng xác nhận là muốn xóa [Ngoại lệ h]
c.7 Hệ thống kiểm tra ràng buộc.[Ngoại lệ g]
c.8 Năm học được chọn bị xóa ra khỏi hệ thống, use case Xóa năm học kết thúc
Trang 37Ngoại lệ h: Người dùng không muốn xoá năm học
h.6 Người dùng xác nhận là không muốn xóa
h.7 Không xóa năm học, use case Xóa năm học kết thúc
Ngoại lệ g: có ràng buộc
g.7 Hệ thống thông báo có sự ràng buộc, không thể xoá, use case xoá kết thúc
Kết quả: Một năm học bị xóa khỏi hệ thống.
5 Đặc tả Use Case Quản lý học kỳ
Mô tả: Chức năng này cho phép người quản lý quản lý học kỳ bao gồm thêm, cập nhật,
xóa thông tin học kỳ
Điều kiện tiên quyết: Người dùng phải đăng nhập vào hệ thống với quyền là người
quản lý
Trình tự thực hiện:
1 Từ giao diện chính người dùng chọn quản lý học kỳ
2 Hệ thống hiển thị giao diện quản lý học kỳ
a Thêm học kỳ: Người dùng muốn thêm học kỳ mới.
a.3 Người dùng chọn nút Thêm Mới
a.4 Hệ thống yêu cầu nhập thông tin học kỳ cần thêm
a.5 Người dùng nhập thông tin học kỳ cần thêm
a.6 Người dùng chọn Lưu [Ngoại lệ d]
a.7 Hệ thống kiểm tra thông tin học kỳ [Ngoại kệ e]
a.8 Thêm thành công, kết thúc use case thêm học kỳ
Ngoại lệ d: Người dùng không muốn thêm học kỳ mới.
d.5 Người dùng chọn nút Bỏ qua
d.6 Người dùng không muốn thêm học kỳ nữa, kết thúc use case thêm học kỳ
Ngoại lệ e: Thông tin học kỳ không hợp lệ.
e.7 Hệ thống thông báo thông tin học kỳ cần thêm không hợp lệ, yêu cầu người dùng nhập lại
e.8 Trở lại bước a.5
Kết quả: Một học kỳ được thêm vào hệ thống.
b Cập nhật học kỳ: Người dùng muốn cập nhật thông tin học kỳ.
b.3 Người dùng chọn học kỳ cần cập nhật
b.4 Người dùng nhập lại thông tin học kỳ
b.4 Người dùng chọn Lưu [Ngoại lệ f]
b.5 Hệ thống kiểm tra thông tin học kỳ [Ngoại lệ g]
b.6.Cập nhật thành công, use case Cập nhật học kỳ kết thúc
Ngoại lệ f: Người dùng không muốn cập nhật thông tin học kỳ nữa.
f.3 Người dùng không cập nhật học kỳ nữa người dùng chọn nút bỏ qua.f.4 Kết thúc use case Cập nhật học kỳ
Ngoại lệ g: Thông tin học kỳ không hợp lệ.
g.5 Hệ thống thông báo thông tin học kỳ học cần thêm không hợp lệ, yêu cầu nhập lại
g.6 Trở lại bước b.4
Kết quả: Thông tin của một học kỳ trong hệ thống được cập nhật.
c Xóa học kỳ: Người dùng muốn xóa học kỳ.
c.3 Người dùng chọn học kỳ cần xóa
Trang 38c.4 Người dùng chọn nút Xoá.
c.5 Hệ thống yêu cầu xác nhận lại có thật sự muốn xóa không
c.6 Người dùng xác nhận là muốn xóa [Ngoại lệ h]
c.7 Hệ thống kiểm tra ràng buộc.[Ngoại lệ g]
c.8 Học kỳ được chọn bị xóa ra khỏi hệ thống, use case Xóa học kỳ kết thúc
Ngoại lệ h: Người dùng không muốn xoá học kỳ
h.6 Người dùng xác nhận là không muốn xóa
h.7 Không xóa học kỳ, use case Xóa học kỳ kết thúc
Ngoại lệ g: có ràng buộc
g.7 Hệ thống thông báo có sự ràng buộc, không thể xoá, use case xoá kết thúc
Kết quả: Một học kỳ bị xóa khỏi hệ thống.
6 Đặc tả Use Case Quản lý khối lớp
Mô tả: Chức năng này cho phép người quản lý quản lý khối lớp bao gồm thêm, cập
nhật, xóa thông tin khối lớp
Điều kiện tiên quyết: Người dùng phải đăng nhập vào hệ thống với quyền là người
quản lý
Trình tự thực hiện:
1 Từ giao diện chính người dùng chọn quản lý khối lớp
2 Hệ thống hiển thị giao diện quản lý khối lớp
a Thêm khối lớp: Người dùng muốn thêm khối lớp mới.
a.3 Người dùng chọn nút Thêm Mới
a.4 Hệ thống yêu cầu nhập thông tin khối lớp cần thêm
a.5 Người dùng nhập thông tin khối lớp cần thêm
a.6 Người dùng chọn Lưu [Ngoại lệ d]
a.7 Hệ thống kiểm tra thông tin khối lớp [Ngoại lệ e]
a.8 Thêm thành công, kết thúc use case thêm khối lớp
Ngoại lệ d: Người dùng không muốn thêm khối lớp mới.
d.5 Người dùng chọn nút Bỏ qua
d.6 Người dùng không muốn thêm khối lớp nữa, kết thúc use case thêm khối lớp
Ngoại lệ e: Thông tin khối lớp không hợp lệ.
e.7 Hệ thống thông báo thông tin khối lớp cần thêm không hợp lệ, yêu cầu người dùng nhập lại
e.8 Trở lại bước a.5
Kết quả: Một khối lớp được thêm vào hệ thống.
b Cập nhật khối lớp: Người dùng muốn cập nhật thông tin khối lớp.
b.3 Người dùng chọn khối lớp cần cập nhật
b.4 Người dùng nhập lại thông tin khối lớp
b.4 Người dùng chọn Lưu [Ngoại lệ f]
b.5 Hệ thống kiểm tra thông tin khối lớp [Ngoại lệ g]
b.6.Cập nhật thành công, use case Cập nhật khối lớp kết thúc
Ngoại lệ f: Người dùng không muốn cập nhật thông tin khối lớp nữa.
f.3 Người dùng không cập nhật khối lớp nữa người dùng chọn nút bỏ qua.f.4 Kết thúc use case Cập nhật khối lớp
Ngoại lệ g: Thông tin khối lớp không hợp lệ.
g.5 Hệ thống thông báo thông tin khối lớp học cần thêm không hợp lệ, yêu cầunhập lại
Trang 39g.6 Trở lại bước b.4.
Kết quả: Thông tin của một khối lớp trong hệ thống được cập nhật.
c Xóa khối lớp: Người dùng muốn xóa khối lớp.
c.3 Người dùng chọn khối lớp cần xóa
c.4 Người dùng chọn nút Xoá
c.5 Hệ thống yêu cầu xác nhận lại có thật sự muốn xóa không
c.6 Người dùng xác nhận là muốn xóa [Ngoại lệ h]
c.7 Hệ thống kiểm tra ràng buộc.[Ngoại lệ g]
c.8 Khối lớp được chọn bị xóa ra khỏi hệ thống, use case Xóa khối lớp kết thúc
Ngoại lệ h: Người dùng không muốn xoá khối lớp
h.6 Người dùng xác nhận là không muốn xóa
h.7 Không xóa khối lớp, use case Xóa khối lớp kết thúc
Ngoại lệ g: có ràng buộc
g.7 Hệ thống thông báo có sự ràng buộc, không thể xoá, use case xoá kết thúc
Kết quả: Một khối lớp bị xóa khỏi hệ thống
7 Đặc tả Use Case Quản lý lớp
Mô tả: Chức năng này cho phép người quản lý quản lý lớp bao gồm thêm, cập nhật, xóa
thông tin lớp
Điều kiện tiên quyết: Người dùng phải đăng nhập vào hệ thống với quyền là người
quản lý
Trình tự thực hiện:
1 Từ giao diện chính người dùng chọn quản lý lớp
2 Hệ thống hiển thị giao diện quản lý lớp
a Thêm lớp: Người dùng muốn thêm lớp mới.
a.3 Người dùng chọn nút Thêm Mới
a.4 Hệ thống yêu cầu nhập thông tin lớp cần thêm
a.5 Người dùng nhập thông tin lớp cần thêm
a.6 Người dùng chọn Lưu [Ngoại lệ d]
a.7 Hệ thống kiểm tra thông tin lớp [Ngoại lệ e]
a.8 Thêm thành công, kết thúc use case thêm lớp
Ngoại lệ d: Người dùng không muốn thêm lớp mới.
d.5 Người dùng chọn nút Bỏ qua
d.6 Người dùng không muốn thêm lớp nữa, kết thúc use case thêm lớp
Ngoại lệ e: Thông tin lớp không hợp lệ.
e.7 Hệ thống thông báo thông tin lớp cần thêm không hợp lệ, yêu cầu người dùng nhập lại
e.8 Trở lại bước a.5
Kết quả: Một lớp được thêm vào hệ thống.
b Cập nhật lớp: Người dùng muốn cập nhật thông tin lớp.
b.3 Người dùng chọn lớp cần cập nhật
b.4 Người dùng nhập lại thông tin lớp
b.4 Người dùng chọn Lưu [Ngoại lệ f]
b.5 Hệ thống kiểm tra thông tin lớp [Ngoại lệ g]
b.6.Cập nhật thành công, use case Cập nhật khối kết thúc
Trang 40Ngoại lệ f: Người dùng không muốn cập nhật thông tin lớp nữa.
f.3 Người dùng không cập nhật lớp nữa người dùng chọn nút bỏ qua
f.4 Kết thúc use case Cập nhật lớp
Ngoại lệ g: Thông tin lớp không hợp lệ.
g.5 Hệ thống thông báo thông tin lớp học cần thêm không hợp lệ, yêu cầu nhập lại
g.6 Trở lại bước b.4
Kết quả: Thông tin của một lớp trong hệ thống được cập nhật.
c Xóa khối lớp: Người dùng muốn xóa lớp.
c.3 Người dùng chọn lớp cần xóa
c.4 Người dùng chọn nút Xoá
c.5 Hệ thống yêu cầu xác nhận lại có thật sự muốn xóa không
c.6 Người dùng xác nhận là muốn xóa [Ngoại lệ h]
c.7 Hệ thống kiểm tra ràng buộc.[Ngoại lệ g]
c.8 Lớp được chọn bị xóa ra khỏi hệ thống, use case Xóa lớp kết thúc
Ngoại lệ h: Người dùng không muốn xoá lớp
h.6 Người dùng xác nhận là không muốn xóa
h.7 Không xóa lớp, use case Xóa lớp kết thúc
Ngoại lệ g: có ràng buộc
g.7 Hệ thống thông báo có sự ràng buộc, không thể xoá, use case xoá kết thúc
Kết quả: Một lớp bị xóa khỏi hệ thống
8 Đặc tả Use Case Quản lý môn học
Mô tả: Chức năng này cho phép người quản lý quản lý môn học bao gồm thêm, cập
nhật, xóa thông tin môn học
Điều kiện tiên quyết: Người dùng phải đăng nhập vào hệ thống với quyền là người
quản lý
Trình tự thực hiện:
1 Từ giao diện chính người dùng chọn quản lý môn học
2 Hệ thống hiển thị giao diện quản lý môn học
a Thêm môn học: Người dùng muốn thêm môn học mới.
a.3 Người dùng chọn nút Thêm Mới
a.4 Hệ thống yêu cầu nhập thông tin môn học cần thêm
a.5 Người dùng nhập thông tin môn học cần thêm
a.6 Người dùng chọn Lưu [Ngoại lệ d]
a.7 Hệ thống kiểm tra thông tin môn học [Ngoại lệ e]
a.8 Thêm thành công, kết thúc use case thêm môn học
Ngoại lệ d: Người dùng không muốn thêm môn học mới.
d.5 Người dùng chọn nút Bỏ qua
d.6 Người dùng không muốn thêm môn học nữa, kết thúc use case thêm môn học
Ngoại lệ e: Thông tin môn học không hợp lệ.
e.7 Hệ thống thông báo thông tin môn học cần thêm không hợp lệ, yêu cầu người dùng nhập lại
e.8 Trở lại bước a.5
Kết quả: Một môn học được thêm vào hệ thống.