MỤC LỤC
CHƯƠNG 1 TỔNG QUAN ĐỀ TÀI..........................................................................1
1.1. TỔNG QUAN VẤN ĐỀ NGHIÊN CỨU.............................................................1
1.2. LÝ DO CHỌN ĐỀ TÀI........................................................................................1
1.3. MỤC TIÊU NGHIÊN CỨU.................................................................................1
1.3.1. Lý thuyết........................................................................................................1
1.3.2. Công nghệ.......................................................................................................1
1.3.3. Ứng dụng........................................................................................................1
1.4. PHƯƠNG PHÁP NGHIÊN CỨU........................................................................2
1.4.1. Khảo sát thực tế.............................................................................................2
1.4.2. Lý thuyết........................................................................................................2
1.4.3. Công nghệ.......................................................................................................2
1.5. PHẠM VI ỨNG DỤNG........................................................................................2
CHƯƠNG 2 CƠ SỞ LÝ THUYẾT.............................................................................3
2.1. KIẾN TRÚC HỆ THỐNG SỬ DỤNG................................................................3
2.2. GIẢI PHÁP THIẾT KẾ THEO MƠ HÌNH MVC.............................................3
2.2.1. Giới thiệu........................................................................................................3
2.2.2. Các thành phần..............................................................................................4
2.2.3. Luồng đi trong MVC.....................................................................................4
2.3. CÔNG NGHỆ SỬ DỤNG.....................................................................................4
2.3.1. Frontend.........................................................................................................4
2.3.2. Backend..........................................................................................................7
2.4. CÔNG CỤ SỬ DỤNG...........................................................................................8
CHƯƠNG 3 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG........................................10
3.1. ĐẶC TẢ YÊU CẦU............................................................................................10
3.1.1. Tác nhân sử dụng website...........................................................................10
3.1.2. Yêu cầu chức năng.......................................................................................10
3.2. PHÂN TÍCH YÊU CẦU CHỨC NĂNG...........................................................11
3.2.1. Quản lý hồ sơ lưu học sinh..........................................................................11
3.2.2. Quản lý năm học..........................................................................................12
3.2.3. Quản lý học kỳ.............................................................................................12
3.2.4. Quản lý lớp học............................................................................................13
3.2.5. Quản lý ngành..............................................................................................13
3.2.6. Quản lý khoa................................................................................................14
3.2.7. Quản lý hộ chiếu LHS.................................................................................14
3.2.8. Quản lý visa LHS.........................................................................................15
3.2.9. Quản lý vi phạm lưu học sinh.....................................................................15
3.2.10. Quản lý học bổng lưu học sinh..................................................................16
3.2.11. Thống kê.....................................................................................................17
i
3.2.12. Chức năng cho lưu học sinh......................................................................17
3.3. PHÂN TÍCH THIẾT KẾ HỆ THỐNG.............................................................18
3.3.1. Sơ đồ usecase................................................................................................18
3.3.2. Sơ đồ tuần tự................................................................................................40
3.3.3. Sơ đồ lớp.......................................................................................................66
3.3.4. Lược đồ cơ sở dữ liệu..................................................................................71
3.4. KẾT QUẢ............................................................................................................73
3.4.1. Frontend.......................................................................................................73
3.4.2. Backend........................................................................................................75
CHƯƠNG 4 KẾT LUẬN..........................................................................................87
4.1. KẾT LUẬN.........................................................................................................87
4.1.1. Kết quả đạt được.........................................................................................87
4.1.2. Hạn chế.........................................................................................................87
4.2. HƯỚNG PHÁT TRIỂN.....................................................................................88
DANH MỤC TÀI LIỆU THAM KHẢO
GIẤY XÁC NHẬN HOÀN THÀNH ĐỒ ÁN TỐT NGHIỆP
ii
DANH MỤC CÁC CHỮ VIẾT TẮT
CSDL : Cơ sở dữ liệu
LHS : Lưu học sinh
NQT : Người quản trị
iii
DANH MỤC CÁC BẢNG
Số hiệu bảng
3.1.
3.2.
3.3.
3.4.
3.5.
3.6.
3.7.
3.8.
3.9.
3.10.
3.11.
3.12.
3.13.
3.14.
3.15.
3.16.
3.17.
3.18.
3.19.
3.20.
3.21.
3.22.
3.23.
3.24.
3.25.
3.26.
3.27.
3.28.
3.29.
3.30.
3.31.
3.32.
3.33.
3.34.
3.35.
3.36.
3.37.
3.38.
3.39.
Tên bảng
Yêu cầu chức năng hệ thống người quản trị
Yêu cầu chức năng của lưu học sinh
Sơ đồ usecase chức năng đăng nhập
Đặc tả sơ đồ usecase chức năng đăng nhập
Đặc tả sơ đồ usecase chức năng thêm hồ sơ LHS
Đặc tả sơ đồ usecase chức năng chỉnh sửa hồ sơ LHS
Đặc tả sơ đồ usecase chức năng xóa hồ sơ LHS
Đặc tả sơ đồ usecase chức năng thêm năm học
Đặc tả sơ đồ usecase chức năng chỉnh sửa năm học
Đặc tả sơ đồ usecase chức năng xóa năm học
Đặc tả sơ đồ usecase chức năng thêm học kỳ
Đặc tả sơ đồ usecase chức năng chỉnh sửa học kỳ
Đặc tả sơ đồ usecase chức năng xóa học kỳ
Đặc tả sơ đồ usecase chức năng thêm lớp
Đặc tả sơ đồ usecase chức năng chỉnh sửa lớp
Đặc tả sơ đồ usecase chức năng xóa lớp
Đặc tả sơ đồ usecase chức năng thêm khoa
Đặc tả sơ đồ usecase chức năng chỉnh sửa khoa
Đặc tả sơ đồ usecase chức năng xóa khoa
Đặc tả sơ đồ usecase chức năng thêm ngành
Đặc tả sơ đồ usecase chức năng chỉnh sửa ngành
Đặc tả sơ đồ usecase chức năng xóa ngành
Đặc tả sơ đồ usecase chức năng thêm loại vi phạm
Đặc tả sơ đồ usecase chức năng chỉnh sửa loại vi phạm
Đặc tả sơ đồ usecase chức năng xóa loại vi phạm
Đặc tả sơ đồ usecase chức năng thêm vi phạm
Đặc tả sơ đồ usecase chức năng chỉnh sửa vi phạm
Đặc tả sơ đồ usecase chức năng xóa vi phạm
Đặc tả sơ đồ usecase chức năng thêm học bổng
Đặc tả sơ đồ usecase chức năng chỉnh sửa học bổng
Đặc tả sơ đồ usecase chức năng xóa học bổng
Đặc tả sơ đồ usecase chức năng thêm phòng sinh viên
Đặc tả sơ đồ usecase chức năng xóa LHS nhận học bổng
Đặc tả sơ đồ usecase chức năng thêm bài thông báo
Đặc tả sơ đồ usecase chức năng chỉnh sửa bài thông báo
Đặc tả sơ đồ usecase chức năng xóa bài thơng báo
Đặc tả sơ đồ usecase chức năng thống kê LHS theo tỉnh
Giải thích sơ đồ lớp
Mô tả lược đồ CSDL
iv
Trang
10
11
19
19
19
20
20
21
22
22
23
24
24
25
26
26
27
28
28
29
30
30
31
32
32
33
34
34
35
36
36
37
37
38
39
39
40
67
72
DANH MỤC CÁC HÌNH
Số hiệu hình
2.1.
2.2.
2.3.
2.4.
2.5.
2.6.
2.7.
2.8.
2.9.
2.10.
2.11.
2.12.
3.1.
3.2.
3.3.
3.4.
3.5.
3.6.
3.7.
3.8.
3.9.
3.10.
3.11.
3.12.
3.13.
3.14.
3.15.
3.16.
3.17.
3.18.
3.19.
3.20.
3.21.
3.22.
3.23.
3.24.
3.25.
3.26.
3.27.
3.28.
3.29.
3.30.
3.31.
3.32.
Tên hình
Sơ đồ mơ tả kiến trúc sử dụng
Mô MVC
Luồng đi của mô MVC
Ngôn ngữ HTML
Ngôn ngữ CSS
Ngôn ngữ JavaScript
Thư viện bootstrap
Ngôn ngữ PHP
Thư viện PHPMailer
Hệ quản trị CSDL MySQL
Công cụ Visual Studio Code
Công cụ XAMPP
Sơ đồ usecase
Sơ đồ usecase chức năng thêm hồ sơ LHS
Sơ đồ usecase chức năng chỉnh sửa hồ sơ LHS
Sơ đồ usecase chức năng xóa hồ sơ LHS
Sơ đồ usecase chức năng quản lý năm học
Sơ đồ usecase chức năng thêm năm học
Sơ đồ usecase chức năng chỉnh sửa năm học
Sơ đồ usecase chức năng xóa năm học
Sơ đồ usecase chức năng quản lý học kỳ
Sơ đồ usecase chức năng thêm học kỳ
Sơ đồ usecase chức năng chỉnh sửa học kỳ
Sơ đồ usecase chức năng xóa học kỳ
Sơ đồ usecase chức năng quản lý lớp
Sơ đồ usecase chức năng thêm lớp
Sơ đồ usecase chức năng chỉnh sửa lớp
Sơ đồ usecase chức năng xóa lớp
Sơ đồ usecase chức năng quản lý khoa
Sơ đồ usecase chức năng thêm khoa
Sơ đồ usecase chức năng chỉnh sửa khoa
Sơ đồ usecase chức năng xóa khoa
Sơ đồ usecase chức năng quản lý ngành
Sơ đồ usecase chức năng thêm ngành
Sơ đồ usecase chức năng chỉnh sửa ngành
Sơ đồ usecase chức năng xóa ngành
Sơ đồ usecase chức năng quản lý loại vi phạm
Sơ đồ usecase chức năng thêm loại vi phạm
Sơ đồ usecase chức năng chỉnh sửa loại vi phạm
Sơ đồ usecase chức năng xóa loại vi phạm
Sơ đồ usecase chức năng quản lý vi phạm
Sơ đồ usecase chức năng thêm vi phạm
Sơ đồ usecase chức năng chỉnh sửa vi phạm
Sơ đồ usecase chức năng xóa vi phạm
v
Trang
3
3
4
5
5
6
7
7
8
8
8
9
18
19
20
20
21
21
22
22
23
23
24
24
25
25
26
26
27
27
28
28
29
29
30
30
31
31
32
32
33
33
34
34
3.33.
3.34.
3.35.
3.36.
3.37.
3.38.
3.39.
3.40.
3.41.
3.42.
3.43.
3.44.
3.45.
3.46.
3.47.
3.48.
3.49.
3.50.
3.51.
3.52.
3.53.
3.54.
3.55.
3.56.
3.57.
3.58.
3.59.
3.60.
3.61.
3.62.
3.63.
3.64.
3.65.
3.66.
3.67.
3.68.
3.69.
3.70.
3.71.
3.72.
3.73.
3.74.
3.75.
3.76.
3.77.
3.78.
3.79.
Sơ đồ usecase chức năng quản lý học bổng
Sơ đồ usecase chức năng thêm học bổng
Sơ đồ usecase chức năng chỉnh sửa học bổng
Sơ đồ usecase chức năng xóa học bổng
Sơ đồ usecase chức năng thêm sinh viên nhận học bổng
Sơ đồ usecase chức năng xóa sinh viên nhận học bổng
Sơ đồ usecase chức năng quản lý bài thông báo
Sơ đồ usecase chức năng thêm bài thông báo
Sơ đồ usecase chức năng chỉnh sửa bài thông báo
Sơ đồ usecase chức năng xóa bài thơng báo
Sơ đồ usecase chức năng thống kê
Sơ đồ tuần tự chức năng đăng nhập
Sơ đồ tuần tự chức năng xem danh sách tài khoản LHS
Sơ đồ tuần tự chức năng thêm tài khoản sinh viên
Sơ đồ tuần tự chức năng chỉnh sửa tài khoản
Sơ đồ tuần tự chức năng xóa tài khoản sinh viên
Sơ đồ tuần tự chức năng thêm năm học
Sơ đồ tuần tự chức năng chỉnh sửa năm học
Sơ đồ tuần tự chức năng xóa năm học
Sơ đồ tuần tự chức năng thêm học kỳ
Sơ đồ tuần tự chức năng chỉnh sửa học kỳ
Sơ đồ tuần tự chức năng xóa học kỳ
Sơ đồ tuần tự chức năng thêm lớp
Sơ đồ tuần tự chức năng chỉnh sửa lớp
Sơ đồ tuần tự chức năng xóa lớp
Sơ đồ tuần tự chức năng thêm ngành
Sơ đồ tuần tự chức năng chỉnh sửa ngành
Sơ đồ tuần tự chức năng xóa ngành
Sơ đồ tuần tự chức năng thêm khoa
Sơ đồ tuần tự chức năng chỉnh sửa khoa
Sơ đồ tuần tự chức năng xóa khoa
Sơ đồ tuần tự chức năng thêm hộ chiếu LHS
Sơ đồ tuần tự chức năng chỉnh sửa hộ chiếu LHS
Sơ đồ tuần tự chức năng xóa hộ chiếu LHS
Sơ đồ tuần tự chức năng thêm visa LHS
Sơ đồ tuần tự chức năng chỉnh sửa visa LHS
Sơ đồ tuần tự chức năng xóa visa LHS
Sơ đồ tuần tự chức năng thêm vi phạm
Sơ đồ tuần tự chức năng chỉnh sửa vi phạm
Sơ đồ tuần tự chức năng xóa vi phạm
Sơ đồ tuần tự chức năng thêm học bổng
Sơ đồ tuần tự chức năng chỉnh sửa học bổng
Sơ đồ tuần tự chức năng xóa học bổng
Sơ đồ tuần tự chức năng thêm bài thông báo
Sơ đồ tuần tự chức năng chỉnh sửa bài thông báo
Sơ đồ tuần tự chức năng xóa bài thơng báo
Sơ đồ tuần tự thống kê sinh viên vi phạm mỗi học kỳ
vi
35
35
36
36
37
37
38
38
39
39
40
40
41
41
42
43
43
44
45
45
46
47
47
48
49
49
50
51
51
52
53
53
54
55
55
56
57
57
58
59
59
60
61
61
62
63
63
3.80.
3.81.
3.82.
3.83.
3.84.
3.85.
3.86.
3.87.
3.88.
3.89.
3.90.
3.91.
3.92.
3.93.
3.94.
3.95.
3.96.
3.97.
3.98.
3.99.
3.100.
3.101.
3.102.
3.103.
3.104.
3.105.
3.106.
3.107.
3.108.
3.109.
3.110.
3.111.
3.112.
3.113.
3.114.
3.115.
3.116.
3.117.
3.118.
3.119.
3.120.
3.121.
3.122.
Sơ đồ tuần tự thống kê visa sắp/đã hết hạn
Sơ đồ tuần tự thống kê hộ chiếu sắp/đã hết hạn
Sơ đồ tuần tự chức năng xem vi phạm
Sơ đồ tuần tự chức năng xem bài thông báo
Sơ đồ lớp
Lược đồ CSDL
Giao diện đăng nhập
Giao diện trang chủ
Giao diện xem danh sách học bổng
Giao diện xem danh sách vi phạm
Giao diện xem thông tin LHS
Giao diện chỉnh sửa thông tin LHS
Giao diện thống kê
Giao diện xem danh sách hộ chiếu sắp hết hạn
Nội dung email thông báo hạn hộ chiếu
Giao diện xem danh sách visa sắp hết hạn
Nội dung email thông báo hạn visa
Giao diện quản lý tài khoản
Giao diện quản lý LHS
Giao diện thêm thông tin LHS
Giao diện quản lý khoa
Giao diện thêm khoa
Giao diện quản lý ngành
Giao diện thêm ngành học
Giao diện quản lý lớp
Giao diện quản lý loại vi phạm
Giao diện thêm loại vi phạm
Giao diện quản lý năm học
Giao diện thêm năm học mới
Giao diện quản lý học kỳ
Giao diện thêm học kỳ
Giao diện quản lý vi phạm
Giao diện thêm vi phạm
Giao diện quản lý học bổng
Giao diện thêm học bổng
Giao diện quản lý sinh viên nhận học bổng
Giao diện thêm sinh viên nhận học bổng
Giao diện quản lý hộ chiếu
Giao diện chỉnh sửa hộ chiếu
Giao diện quản lý visa
Giao diện chỉnh sửa visa
Giao diện quản lý thông báo
Giao diện thêm thông báo mới
vii
64
64
65
65
66
71
73
74
74
74
75
75
76
76
76
77
77
77
78
78
79
79
79
79
80
80
80
81
81
81
82
82
82
83
83
83
84
84
84
85
85
85
86
CHƯƠNG 1
TỔNG QUAN ĐỀ TÀI
1.1. TỔNG QUAN VẤN ĐỀ NGHIÊN CỨU
Ngày nay, tin học đã có những bước tiến nhanh chóng về ứng dụng của nó trong
mọi lĩnh vực của cuộc sống trên phạm vi tồn thế giới nói chung và Việt Nam nói riêng.
Tin học được người ta quan tâm và nhắc đến nhiều hơn bao giờ hết vì nó là một phần
khơng thể thiếu trong cuộc sống văn minh, góp phần đẩy mạnh cơng cuộc cơng nghiệp
hố hiện đại hoá đất nước, tiến đến nền kinh tế tri thức.
Máy vi tính cùng với những phần mềm là cơng cụ đắc lực giúp ta quản lý, tổ chức,
sắp xếp và xử lý cơng việc một cách nhanh chóng và chính xác. Ở Việt Nam hiện nay,
máy tính điện tử đặc biệt là máy vi tính trong nhiều năm qua đã được sử dụng rất rộng
rãi. Sự phát triển của tin học, các công nghệ phần mềm, phần cứng, các tài liệu tham khảo
đã đưa chúng ta từng bước tiếp cận với công nghệ thông tin trong mọi lĩnh vực nhằm đáp
ứng nhu cầu của con người.
Quản lý sinh viên là một đề tài khơng cịn mới mẻ với các bài toán quản lý. Việc
đưa tin học vào ứng dụng để quản lý là rất hữu ích, vì chúng ta phải bỏ ra rất ít thời gian
mà lại thu được hiệu quả cao, rất chính xác và tiện lợi nhanh chóng. Đặc biệt đối với lưu
học sinh thì cơng việc quản lý càng trở nên quan trọng.
1.2. LÝ DO CHỌN ĐỀ TÀI
Ở các trường đại học hay các cơ sở đào tạo giáo dục thì việc quản lý lưu học sinh
luôn được đặt lên hàng đầu. Với một số lượng lưu học sinh nhập học tại UDCK hàng
năm nhiều nên quản lý bằng sổ sách đã khơng cịn phù hợp thay vào đó cần một cơng cụ
hỗ trợ nhà trường quản lý được những thông tin về hồ sơ cũng như điểm số của sinh viên.
Từ nhu cầu thiết yếu trên nhóm xin chọn đề tài “Website quản lý lưu học sinh UDCK”
làm đề tài tốt nghiệp. Hi vọng với chương trình “Website quản lý lưu học sinh UDCK”
này sẽ giúp cho công tác quản lý lưu học sinh tại UDCK diễn ra đơn giản và tiết kiệm
thời gian hơn.
1.3. MỤC TIÊU NGHIÊN CỨU
1.3.1. Lý thuyết
Nắm được lý thuyết và cách thức hoạt động của mơ hình MVC áp dụng tốt vào việc
xây dựng web.
1.3.2. Công nghệ
- Sử dụng thành thạo ngôn ngữ PHP;
- Sử dụng thành thạo công nghệ HTML, CSS, JavaScript và Bootstrap;
- Kết nối và quản trị được hệ quản trị cơ sở dữ liệu MySQL.
1.3.3. Ứng dụng
Xây dựng hoàn thiện các chức năng cho một hệ thống website tuyển dụng việc làm.
1
1.4. PHƯƠNG PHÁP NGHIÊN CỨU
1.4.1. Khảo sát thực tế
- Thu thập các website mẫu trên Internet và phân tích cách thiết kế về giao diện,
cách thiết kế cơ sở dữ liệu, cách xây dựng các chức năng... để áp dụng tốt vào website;
- Tìm hiểu cơng việc quản lý ký lưu học sinh của sinh viên tại Phân hiệu đại học Đà
Nẵng tại Kon Tum.
- Khảo sát nhu cầu sử dụng của người quản lý lưu học sinh.
1.4.2. Lý thuyết
- Nghiên cứu mơ hình MVC, một mơ hình phổ biến trong việc thiết kế website.
- Tìm hiểu UI/UX và các lý thuyết về thiết kế giao diện như màu sắc, typography,
cách sắp xếp layout phù hợp với một website quản lý;
- Nghiên cứu cách thức thiết kế cơ sở dữ liệu phù hợp với các tính năng có trong
website.
1.4.3. Cơng nghệ
- Nghiên cứu ngơn ngữ lập trình PHP và thực hành viết code để tìm hiểu cách viết
các cú pháp, các hàm...;
- Tìm hiểu các cơng nghệ thiết kế website cần thiết như là HTML, CSS, JavaScript
và Bootstrap;
- Sử dụng hệ quản trị cơ sở dữ liệu MySQL trong việc kết nối và lưu trữ hệ quản trị
cơ sở dữ liệu.
1.5. PHẠM VI ỨNG DỤNG
- Đối tượng sử dụng: Sinh viên theo học tại Phân hiệu đại học Đà Nẵng tại Kon
Tum và cán bộ quản lý lưu học sinh.
- Phạm vi ứng dụng: Website áp dụng trên môi trường Internet.
-
2
CHƯƠNG 2
CƠ SỞ LÝ THUYẾT
2.1. KIẾN TRÚC HỆ THỐNG SỬ DỤNG
Hình 2.1.1.a.1: Sơ đồ mơ tả kiến trúc sử dụng
Kiến trúc của hệ thống được xây dựng theo mơ hình MVC.
Các thành phần:
- Model: Sử dụng thuần PHP để xây dựng model và kết nối tới CSDL.
- Controller: Phần xử lý yêu cầu sử dụng PHP để xử lý và thư viện PHPMailer (hỗ
trợ gửi email cho PHP).
- View: Sử dụng HTML, CSS và Javascript cho phần view (giao diện). Website sử
dụng thêm 2 thư viện là JQuery và Bootstrap hỗ trợ.
- Database: MySQL là hệ quản trị CSDL được sử dụng.
2.2. GIẢI PHÁP THIẾT KẾ THEO MƠ HÌNH MVC
2.2.1. Giới thiệu
Hình 2.2.1.a.1: Mơ hình MVC
3
MVC là viết tắt của 3 từ Model – View – Controller, đây là một mơ hình thiết kế sử
dụng trong kĩ thuật phần mềm (lập trình). Mỗi một từ là mỗi một mơ hình riêng nhưng cả
ba tạo thành 1 mơ hình lớn [5].
2.2.2. Các thành phần
Model: Model là thành phần chính đảm nhận nhiệm vụ lưu trữ dữ liệu và các bộ
phận logic liên quan của toàn bộ ứng dụng đó, là cầu nối giữa View và Controller. Model
chịu trách nhiệm cho các thao tác giữa Controller hoặc bất kì logic nghiệp vụ nào khác
liên quan đến dữ liệu như: Xem dữ liệu, truy xuất dữ liệu...
View: View là giao diện dành cho phía người sử dụng, và người dùng có thể thấy
được thơng tin dữ liệu của MVC qua các thao tác tìm kiếm. View được tạo thành bởi dữ
liệu thu thập từ dữ liệu mơ hình, và giúp người dùng có cái nhìn trực quan nhất về ứng
dụng, trang web.
Controller: Đây là bộ phận đảm trách xử lý các thao tác của người dùng với ứng
dụng, trang web. Controller xử lí dữ liệu từ bàn phím và chuột của người dùng, sau đó
thơng báo tới View và Model.
2.2.3. Luồng đi trong MVC
Khi có một yêu cầu từ máy trạm gửi tới server, Controller sẽ tiếp nhận và xử lý yêu
cầu. Trong trường hợp cần thiết, nó sẽ liên hệ với Model để hỗ trợ làm việc với database.
Khi xử lý xong Controller sẽ trả kết quả lại cho View. View sẽ tạo mã HTML để
biến thành giao diện trực quan với người dùng và hiển thị trên trình duyệt.
Hình 2.2.3.a.1: Luồng đi của mơ hình MVC
2.3. CƠNG NGHỆ SỬ DỤNG
2.3.1. Frontend
a. HTML
- Nhưng HTML khơng phải là một ngơn ngữ lập trình, HTML giống như một ngơn
ngữ xác định đâu là ý nghĩa, mục đích và cấu trúc của một tài liệu. Cùng với CSS và
JavaScript, HTML tạo ra bộ ba nền tảng kỹ thuật cho các website [6].
- Một website thường chứa nhiều trang con. Mỗi trang con sẽ có một tập tin HTML
riêng. Dù lập trình bằng bất cứ ngơn ngữ nào, trên bất cứ Framework nào, khi chạy trên
4
nền website, chúng đều được biên dịch ra ngôn ngữ HTML. Đa số các trình soạn thảo
văn bản trên website đều có 2 chế độ xem: HTML và văn bản thường.
- Chức năng chính của HTML là xây dựng cấu trúc siêu văn bản trên một website,
hoặc khai báo các tập tin kỹ thuật số (media) như hình ảnh, video, nhạc. HTML thường
được dùng để phân chia các đoạn văn, heading, links, blockquotes…
Hình 2.3.1.a.1: Ngơn ngữ HTML
b. Tổng quan về CSS
- CSS là viết tắt của cụm từ “Cascading Style Sheets”, tạm dịch: ngôn ngữ tạo
phong cách cho trang web. Ngơn ngữ lập trình này quy định cách các thành phần HTML
của trang web thực sự sẽ xuất hiện trên frontend như thế nào [6].
- CSS sẽ giúp xác định styles và định nghĩa nhiều loại nội dung của website. CSS
được tạo ra để kết hợp với ngôn ngữ markup HTML để tạo phong cách cho trang web.
Hình 2.3.1.b.1: Ngơn ngữ CSS
c. Tổng quan về JavaScript
- Thường được viết tắt là “JS”, JavaScript là một ngơn ngữ lập trình được Brendan
Eich (đồng sáng lập dự án Mozilla, quỹ Mozilla và tập đoàn Mozilla) cho ra mắt vào năm
1995 với tên LiveScript [6].
- JS có tác dụng giúp chuyển website từ trạng thái tĩnh sang động, tạo tương tác để
cải thiện hiệu suất máy chủ và nâng cao trải nghiệm người dùng. Hiểu đơn giản,
JavaScript là ngôn ngữ được sử dụng rộng rãi khi kết hợp với HTML/CSS để thiết kế
web động.
5
- JavaScript là ngơn ngữ lập trình cho phép các nhà phát triển web thiết kế các trang
web tương tác. Hầu hết các hành vi động mà bạn sẽ thấy trên một trang web đều có được
là nhờ JavaScript. Vì thế, đây là một ngơn ngữ phức tạp và khó học.
Hình 2.3.1.c.1: Ngơn ngữ JavaScript
d. JQuery
JQuery là thư viện javascript nổi bật nhất, phổ biến nhất trong lập trình web. Ra đời
vào năm 2006 bởi John Resig. Nó đã trở thành một thành phần khơng thể thiếu trong các
website có sử dụng Javascript. Với slogan “Write less – Do more” (viết ít hơn – làm
nhiều hơn) nó đã giúp lập trình viên tiết kiệm được rất nhiều thời gian và công sức trong
việc thiết kế website [8].
jQuery cung cấp các phương thức xử lý sự kiện, hiệu ứng, tương tác chỉ với những
dịng lệnh đơn giản. Các module chính mà của jQuery sử bao gồm:
- Ajax – xử lý Ajax
- Atributes – xử lý thuộc tính của đối tượng HTML
- Effect – xử lý hiệu ứng
- Event – xử lý sự kiện
- Form – xử lý form
- DOM – xử lý Data Object Model
- Selector – xử lý luồng lách các đối tượng HTML
- Hiệu ứng và hoạt hình
- Phân tích cú pháp JSON
e. Bootstrap
Bootstrap là những đoạn code viết sẵn để giúp developer dễ dàng tạo ra những giao
diện website tương thích với màn hình điện thoại.
Bootstrap là một framework bao gồm các HTML template, CSS template và
JavaScript template dùng để phát triển website chuẩn responsive.
Bản chất Bootstrap bao gồm một tập hợp các cú pháp thực hiện các chức năng cụ
thể. Để hoạt động tốt, Bootstrap cần có các file chính quản lý giao diện người dùng và
chức năng của trang web. Đó là 3 file:
- Bootstrap.css: một framework CSS sắp xếp và quản lý bố cục của trang web. Để
thực hiện một hành động cụ thể, cần tồn tại cùng lúc hai cấu trúc: HTML quản lý nội
dung và cấu trúc website, CSS xử lý bố cục website.
6
- Bootstrap.js: File này là phần cốt lõi của Bootstrap. Bootstrap.js gồm các file
JavaScript chịu trách nhiệm cho việc tương tác của trang web.
- Glyphicons: Liên kết icon với các hành động và dữ liệu nhất định trong giao diện
người dùng [7].
Hình 2.3.1.e.1: Thư viện bootstrap
2.3.2. Backend
a. PHP
PHP là ngơn ngữ script được tạo cho các giao tiếp phía server. Do đó, nó có thể xử
lý các chức năng phía server như thu thập dữ liệu biểu mẫu, quản lý file trên server, sửa
đổi cơ sở dữ liệu và nhiều hơn nữa.
Ngôn ngữ này ban đầu được tạo ra bởi Rasmus Lerdorf để theo dõi khách truy cập
vào trang chủ cá nhân của anh ấy. Khi đã trở nên phổ biến hơn, Lerdorf phát hành nó
thành dự án nguồn mở. Quyết định này đã khuyến khích các nhà phát triển sử dụng, sửa
chữa, cải thiện code và cuối cùng biến nó thành ngơn ngữ script mà chúng ta sử dụng
ngày nay [3].
Hình 2.3.2.a.1: Ngơn ngữ PHP
b. PHPMailer
Php Mailer là một thư viện giúp gửi email đến người dùng trên website một cách dễ
dàng, tỉ lệ thành công cao. Nếu muốn gửi mail khi người dùng đăng ký tài khoản, kích
hoạt tài khoản, xác nhận đơn hàng, liên hệ thì đây là một công cụ rất tuyệt vời.
Trên thực tế trong Php có hàm mail() để gửi mail tuy nhiên nó thường bị bị chặn bởi
các đơn vị cung cấp server vì email được gửi đi thường vào hịm spam và khơng mang lại
kết quả như mong muốn.
Chính vì vậy Php Mailer đó là một giải pháp cứu cánh vơ cùng hiệu quả [10].
7
Hình 2.3.2.b.1: Thư viện PHPMailer
c. MySQL
Đi song song với ngơn ngữ lập trình PHP là hệ quản trị CSDL MySQL, đây là một
cặp đôi thường được dùng để xây dựng các ứng dụng website. MySQL có nhiệm vụ lưu
trữ dữ liệu và PHP có nhiệm vụ lập trình phía Server, tiếp nhận và xử lý yêu cầu của
người dùng, sau đó lấy dữ liệu tương ứng và trả kết quả về cho client [2].
Hình 2.3.2.c.1: Hệ quản trị CSDL MySQL
2.4. CÔNG CỤ SỬ DỤNG
a. Visual Studio Code
Visual Studio Code là một trình biên tập lập trình code miễn phí dành cho
Windows, Linux và macOS, Visual Studio Code được phát triển bởi Microsoft. Nó được
xem là một sự kết hợp hồn hảo giữa IDE và Code Editor [1].
Visual Studio Code hỗ trợ chức năng debug, đi kèm với Git, có syntax highlighting,
tự hồn thành mã thơng minh, snippets, và cải tiến mã nguồn. Nhờ tính năng tùy chỉnh,
Visual Studio Code cũng cho phép người dùng thay đổi theme, phím tắt, và các tùy chọn
khác.
Hình 2.4.1.a.1: Cơng cụ Visual Studio Code
8
b. Xampp
XAMPP là một phần mềm cho phép giả lập mơi trường server hosting ngay trên
máy tính cá nhân, cho phép chạy demo website mà không cần phải mua hosting hay VPS.
Chính vì vậy, XAMPP hay được phục vụ cho hoạt động học tập giảng dạy thực hành và
phát triển web [4].
XAMPP được viết tắt của X + Apache + MySQL + PHP + Perl vì nó được tích hợp
sẵn Apache, MySQL, PHP, FTP server, Mail Server. Còn X thể hiện cho sự đa nền tảng
của XAMPP vì nó có thể dùng được cho 4 hệ điều hành khác nhau: Windows, MacOS,
Linux và Solaris.
Hình 2.4.1.b.1: Cơng cụ XAMPP
9
CHƯƠNG 3
PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
3.1. ĐẶC TẢ YÊU CẦU
3.1.1. Tác nhân sử dụng website
- Người quản trị website (Cán bộ quản lý lưu học sinh): Cán bộ quản lý lưu học sinh
có các chức năng như quản lý hồ sơ lưu học sinh, quản lý vi phạm lưu học sinh và quản
lý học bổng lưu học sinh và quản lý bài thông báo.
- Lưu học sinh: Lưu học sinh có các chức năng như xem hồ sơ cá nhân, xem danh
sách vi phạm, xem danh sách học bổng và xem bài thông báo.
3.1.2. Yêu cầu chức năng
a. Người quản trị website
Bảng 3.1.2.a.1.1: Yêu cầu chức năng hệ thống người quản trị
STT
Chức năng
Mô tả
1
Quản lý hồ sơ lưu học Quản lý các thông tin của lưu học sinh:
sinh
- Thêm hồ sơ lưu học sinh mới.
- Chỉnh sửa hồ sơ lưu học sinh.
- Xóa hồ sơ lưu học sinh.
2
Quản lý năm học
- Thêm năm học mới.
- Chỉnh sửa năm học.
- Xóa năm học.
3
Quản lý học kỳ
- Thêm học kỳ mới.
- Chỉnh sửa học kỳ.
- Xóa học kỳ.
4
Quản lý lớp học
- Thêm lớp học mới.
- Chỉnh sửa lớp học.
- Xóa lớp học.
5
Quản lý ngành
- Thêm ngành mới.
- Chỉnh sửa ngành học.
- Xóa ngành học.
6
Quản lý khoa
- Thêm khoa.
- Chỉnh sửa khoa.
- Xóa khoa.
7
Quản lý hộ chiếu LHS - Thêm hộ chiếu LHS.
- Chỉnh sửa hộ chiếu LHS.
- Xóa hộ chiếu LHS.
8
Quản lý visa LHS
- Thêm visa LHS.
- Chỉnh sửa visa LHS.
- Xóa visa LHS.
9
Quản lý loại vi phạm - Thêm loại vi phạm lưu học sinh.
LHS
- Chỉnh sửa loại vi phạm.
- Xóa loại vi phạm.
10
Quản lý vi phạm lưu - Thêm vi phạm lưu học sinh.
học sinh
- Chỉnh sửa vi phạm.
- Xóa vi phạm.
11
Quản lý học bổng lưu - Nhập danh sách sinh viên nhận học bổng từ file.
10
học sinh
12
Quản lý bài thông báo
13
Thống kê
- Thêm học bổng sinh viên.
- Chỉnh sửa học bổng sinh viên.
- Xóa học bổng sinh viên.
- Thêm sinh viên nhận học bổng.
- Xóa sinh viên nhận học bổng
Bài thông báo dùng để thông báo các tin quan trọng
cho lưu học sinh:
- Thêm bài thơng báo mới.
- Chỉnh sửa bài thơng báo.
- Xóa bài thơng báo.
Thống kê lưu học sinh theo lớp, khoa, khóa, tỉnh
học bổng và tỉnh của lưu học sinh.
Thống kê lưu học sinh bị vi phạm.
Thống kê hộ chiếu sắp/đã hết hạn.
Thống kê visa sắp/đã hết hạn.
b. Lưu học sinh
Bảng 3.1.2.b.1.1: Yêu cầu chức năng của lưu học sinh
STT
Chức năng
Mô tả
1
Xem thông tin cá nhân
Xem thông tin cá nhân của sinh viên đang đăng
nhập.
2
Xem danh sách vi phạm
Xem danh sách vi phạm của sinh viên mỗi học
kỳ.
3
Xem danh sách học bổng Xem danh sách học bổng sinh viên được nhận.
4
Xem bài thơng báo
Xem các bài thơng báo.
3.2. PHÂN TÍCH U CẦU CHỨC NĂNG
3.2.1. Quản lý hồ sơ lưu học sinh
- Tác nhân: NQT.
- Mô tả: Quản lý các hồ sơ của LHS.
a. Xem danh sách hồ sơ LHS
- Đầu vào: Không.
- Xử lý: Người dùng truy cập trang quản lý tài khoản và máy chủ trả về giao diện
danh sách các hồ sơ LHS.
- Đầu ra: Danh sách hồ sơ LHS.
b. Thêm hồ sơ LHS
- Đầu vào: Tên đăng nhập, Họ và tên, ngày sinh, giới tính, email, số điện thoại, địa
chỉ, khoa, ngành, lớp, danh sách các học bổng, thông tin hộ chiếu, thông tin visa.
- Xử lý: Người dùng nhấn nút thêm hồ sơ LHS và hệ thống hiển thị form nhập
thông tin, sau khi nhập thông tin nhấn nút thêm hồ sơ để xác nhận.
- Đầu ra: Thông tin hồ sơ LHS mới được thêm.
c. Chỉnh sửa hồ sơ LHS
- Đầu vào: Họ và tên, ngày sinh, giới tính, email, số điện thoại, địa chỉ, khoa, ngành,
lớp, danh sách các học bổng, thông tin hộ chiếu, thông tin visa.
- Xử lý: Người dùng nhấn nút chỉnh sửa TKSV và hệ thống hiển thị form chỉnh sửa
thông tin, sau khi nhập thông tin chỉnh sửa nhấn nút chỉnh sửa để xác nhận.
11
- Đầu ra: Thơng tin TKSV đã chỉnh sửa.
d. Xóa hồ sơ LHS.
- Đầu vào: Id hồ sơ LHS.
- Xử lý: Người dùng nhấn nút xóa và hộp thoại xác nhận xóa được hiển thị, nhấn
tiếp nút xóa để xác nhận.
- Đầu ra: Thông tin hồ sơ LHS đã được cập nhật.
3.2.2. Quản lý năm học
- Tác nhân: NQT.
- Mô tả: Quản lý các năm học.
a. Thêm năm học mới
- Đầu vào: Tên năm học.
- Xử lý: Người dùng nhấn nút thêm năm học và hệ thống hiển thị form nhập thông
tin, sau khi nhập thông tin nhấn nút thêm năm học để xác nhận.
- Đầu ra: Thông tin năm học mới được thêm.
b. Chỉnh sửa năm học
- Đầu vào: Tên năm học.
- Xử lý: Người dùng nhấn nút chỉnh sửa năm học và hệ thống hiển thị form chỉnh
sửa thông tin, sau khi nhập thông tin chỉnh sửa nhấn nút chỉnh sửa để xác nhận.
- Đầu ra: Thông tin năm học đã chỉnh sửa.
c. Xóa năm học
- Đầu vào: Id năm học.
- Xử lý: Người dùng nhấn nút xóa và hộp thoại xác nhận xóa được hiển thị, nhấn
tiếp nút xóa để xác nhận.
- Đầu ra: Thơng tin năm học đã được cập nhật.
3.2.3. Quản lý học kỳ
- Tác nhân: NQT.
- Mô tả: Quản lý các học kỳ.
a. Thêm học kỳ
- Đầu vào: Tên học kỳ.
- Xử lý: Người dùng nhấn nút thêm học kỳ và hệ thống hiển thị form nhập thông
tin, sau khi nhập thông tin nhấn nút thêm học kỳ để xác nhận.
- Đầu ra: Thông tin học kỳ mới được thêm.
b. Chỉnh sửa học kỳ
- Đầu vào: Tên học kỳ.
- Xử lý: Người dùng nhấn nút chỉnh sửa học kỳ và hệ thống hiển thị form chỉnh sửa
thông tin, sau khi nhập thông tin chỉnh sửa nhấn nút chỉnh sửa để xác nhận.
- Đầu ra: Thơng tin học kỳ đã chỉnh sửa.
c. Xóa học kỳ
- Đầu vào: Id học kỳ.
12
- Xử lý: Người dùng nhấn nút xóa và hộp thoại xác nhận xóa được hiển thị, nhấn
tiếp nút xóa để xác nhận.
- Đầu ra: Thông tin học kỳ đã được cập nhật.
3.2.4. Quản lý lớp học
- Tác nhân: NQT.
- Mô tả: Quản lý các lớp học của LHS.
a. Thêm lớp
- Đầu vào: Tên lớp.
- Xử lý: Người dùng nhấn nút thêm lớp và hệ thống hiển thị form nhập thông tin,
sau khi nhập thông tin nhấn nút thêm lớp để xác nhận.
- Đầu ra: Thông tin lớp mới được thêm.
b. Chỉnh sửa lớp
- Đầu vào: Id lớp và tên lớp.
- Xử lý: Người dùng nhấn nút chỉnh sửa lớp và hệ thống hiển thị form chỉnh sửa
thông tin, sau khi nhập thông tin chỉnh sửa nhấn nút chỉnh sửa để xác nhận.
- Đầu ra: Thông tin lớp đã chỉnh sửa.
c. Xóa lớp
- Đầu vào: Id lớp.
- Xử lý: Người dùng nhấn nút xóa và hộp thoại xác nhận xóa được hiển thị, nhấn
tiếp nút xóa để xác nhận.
- Đầu ra: Thông tin lớp đã được cập nhật.
3.2.5. Quản lý ngành
- Tác nhân: NQT.
- Mô tả: Quản lý các ngành của LHS.
a. Thêm ngành
- Đầu vào: Tên ngành.
- Xử lý: Người dùng nhấn nút thêm ngành và hệ thống hiển thị form nhập thông tin,
sau khi nhập thông tin nhấn nút thêm ngành để xác nhận.
- Đầu ra: Thông tin ngành mới được thêm.
b. Chỉnh sửa ngành
- Đầu vào: Id ngành và tên ngành.
- Xử lý: Người dùng nhấn nút chỉnh sửa ngành và hệ thống hiển thị form chỉnh sửa
thông tin, sau khi nhập thông tin chỉnh sửa nhấn nút chỉnh sửa để xác nhận.
- Đầu ra: Thông tin ngành đã chỉnh sửa.
c. Xóa ngành
- Đầu vào: Id ngành.
- Xử lý: Người dùng nhấn nút xóa và hộp thoại xác nhận xóa được hiển thị, nhấn
tiếp nút xóa để xác nhận.
- Đầu ra: Thông tin ngành đã được cập nhật.
3.2.6. Quản lý khoa
13