TRƯỜNG ĐẠ I H Ọ C NAM C ẦN THƠ KHOA CÔNG NGH Ệ - K Ỹ THU Ậ T LÊ NGUY Ễ N NH ẬT DŨY XÂY D Ự NG WEBSITE QU Ả N LÝ D Ự ÁN PH Ầ N M Ề M ĐỒ ÁN TH Ự C T Ậ P Ngành Công ngh ệ Thông tin Mã s ố Ngành: 7480201 Tháng 5-2021 TRƯỜNG ĐẠ I H Ọ C NAM C ẦN THƠ KHOA CÔNG NGH Ệ - K Ỹ THU Ậ T LÊ NGUY Ễ N NH ẬT DŨY MSSV: 176874 XÂY D Ự NG WEBSITE QU Ả N LÝ D Ự ÁN PH Ầ N M Ề M ĐỒ ÁN TH Ự C T Ậ P Ngành Công ngh ệ Thông tin Mã s ố Ngành: 7480201 GI ẢNG VIÊN HƯỚ NG D Ẫ N THS PHAN TH Ị XUÂN TRANG Tháng 5-2021 i CH Ấ P THU Ậ N C Ủ A H ỘI ĐỒ NG Đồ án “Xây dự ng ph ầ n m ề m thi tr ắ c nghi ệ m qua m ạ ng LAN cho sinh viên khoa k ỹ thu ậ t - công ngh ệ”, do sinh viên Lê Nguyễ n Nh ật Dũy và sinh viên Chung Vinh Hi ể n th ự c hi ện dướ i s ự hướ ng d ẫ n c ủ a Ths Phan Th ị Xuân Trang Đồ án đã báo cáo và đượ c H ội đồ ng ch ấ m khóa lu ậ n thông qua ngày Ủ y viên Thư ký (Ký tên) (Ký Tên) --------------------------------------- --------------------------------------- GHI CH Ứ C DANH, H Ọ , TÊN GHI CH Ứ C DANH, H Ọ , TÊN Ph ả n bi ệ n 1 Ph ả n bi ệ n 2 (Ký tên) (Ký tên) --------------------------------------- --------------------------------------- GHI CH Ứ C DANH, H Ọ , TÊN GHI CH Ứ C DANH, H Ọ , TÊN Cán b ộ hướ ng d ẫ n Ch ủ t ị ch H ội đồ ng (Ký tên) (Ký tên) --------------------------------------- -------------------------------------- ii GHI CH Ứ C DANH, H Ọ , TÊN GHI CH Ứ C DANH, H Ọ , TÊN iii L Ờ I C Ả M T Ạ L ời đầ u tiên em xin chân thành c ảm ơn đế n ThS Phan Th ị Xuân Trang Trong th ời gian qua, cô đã rấ t t ận tình hướ ng d ẫn để em hoàn thành đồ án này Em xin c ảm ơn quý thầ y cô Khoa K ỹ thu ậ t – Công ngh ệ Trường Đạ i h ọ c Nam C ần Thơ đã tậ n tâm gi ả ng d ạ y và truy ền đạ t cho em nh ữ ng ki ế n th ứ c quý báu để em hoàn thi ệ n chương trình họ c t ại trường Đồ ng th ời, em cũng rấ t c ả m ơn Chủ t ị ch H ội đồ ng qu ả n tr ị , Ban Giám hi ệu Trường Đạ i h ọ c Nam C ần Thơ đã tạo điề u ki ệ n v ề th ời gian, không gian để em có th ể hoàn thành nhi ệ m v ụ h ọ c t ậ p c ủ a mình M ặc dù, em đã có rấ t nhi ề u c ố g ắ ng n ỗ l ực để hoàn thành đồ án nhưng vẫ n không tránh kh ỏ i nh ữ ng thi ế u sót Kính mong nh ận đượ c s ự đóng góp ý kiế n c ủ a quý th ầ y cô Em xin chân thành c ảm ơn! C ần thơ, ngày … tháng … năm 2021 Ngườ i th ự c hi ệ n iv L ỜI CAM ĐOAN Em xin cam k ết đồ án này đượ c hoàn thành d ự a trên các k ế t qu ả nghiên c ứ u c ủ a em và các k ế t qu ả nghiên c ứu này chưa đượ c dùng cho b ấ t c ứ đồ án nào khác C ần thơ, ngày … tháng … năm 2021 Ngườ i th ự c hi ệ n v NH Ậ N XÉT C Ủ A GI ẢNG VIÊN HƯỚ NG D Ẫ N C ầ n Th ơ, ngày… tháng……năm 2021 Gi ảng viên hướ ng d ẫ n vi NH Ậ N XÉT C Ủ A GI Ả NG VIÊN PH Ả N BI Ệ N C ần Thơ, ngày… tháng……năm 2021 Gi ả ng viên ph ả n bi ệ n vii M Ụ C L Ụ C CH Ấ P THU Ậ N C Ủ A H ỘI ĐỒ NG i L Ờ I C Ả M T Ạ iii NH Ậ N XÉT C Ủ A GI ẢNG VIÊN HƯỚ NG D Ẫ N v NH Ậ N XÉT C Ủ A GI Ả NG VIÊN PH Ả N BI Ệ N vi DANH SÁCH B Ả NG x DANH SÁCH HÌNH xi DANH M Ụ C T Ừ VI Ế T T Ắ T xii CHƯƠNG 1: GIỚ I THI Ệ U CÔNG TY 1 1 1 Gi ớ i thi ệ u công ty 1 1 2 Thông tin công ty 1 1 3 Tr ụ s ở chính 1 1 4 Người đạ i di ệ n pháp lu ậ t 1 1 5 Thông tin liên h ệ 2 1 6 Ngành, ngh ề kinh doanh 2 1 7 S ả n ph ẩ m và d ị ch v ụ c ủa công ty đang kinh doanh 4 1 7 1 S ả n ph ẩ m ph ầ n m ề m 4 1 7 2 Chi phí b ả o trì h ệ th ố ng sau khi h ế t b ả o hành k ỹ thu ậ t 10 1 7 3 D ị ch v ụ 11 CHƯƠNG 2: GIỚ I THI ỆU ĐỀ TÀI 13 2 1 Lý do ch ọn đề tài 13 2 2 M ụ c ti ệ u nghiên c ứ u 13 2 3 Đ ố i tư ợ ng, ph ạ m vi nghiên c ứ u 13 2 3 1 Không gian 13 2 3 2 Th ờ i gian 13 2 3 3 Đối tượ ng nghiên c ứ u 14 2 3 4 Ph ạ m vi nghiên c ứ u 14 viii 2 4 Phươ ng pháp nghiên c ứ u 14 2 4 1 Phương pháp nghiên cứ u lý lu ậ n 14 2 4 2 Phương pháp chuyên gia 14 1 4 3 Phương pháp thự c nghi ệ m 14 2 5 N ộ i dung 14 CHƯƠNG 3: CƠ SỞ LÝ LU ẬN VÀ PHƯƠNG PHÁP NGHIÊN CỨ U 16 3 1 Giới thiệu về cơ sở dữ liệu và hệ quản trị cơ sở dữ liệu 16 3 1 1 Cơ sở dữ liệu phi quan hệ (NoS QL) 16 3 1 2 Hệ quản trị cơ sở dữ liệu MongoDB 20 3 2 Khái niệm phân tích và thiết kế hệ thống thông tin 22 3 2 1 Khái niệm hệ thống thông tin và các thành phần trong hệ thống thông tin 22 3 2 2 Vòng đời phát triển hệ thống thông tin 22 3 3 Tổng quan về HTML, CSS, JavaScript 22 3 3 1 HTML 22 3 3 2 CSS 23 3 3 3 JavaScript 25 3 4 NodeJS và ReactJS 27 3 4 1 NodeJS 27 3 4 2 ReactJS 28 3 5 RESTful API 29 3 6 WebSocket và thư viện socket io 30 3 6 1 WebSocket 30 3 6 2 Thư viện socket io 30 3 7 Sơ lượ c v ề chương trình 30 3 8 Ý nghĩa đề tài 31 3 9 Kh ả năng phát triể n 31 ix CHƯƠNG 4: PHÂN TÍCH VÀ THIẾ T K Ế H Ệ TH Ố NG 32 4 1 Phân tích h ệ th ố ng 32 4 1 1 Xây d ự ng sơ đ ồ phân rã ch ứ c năng BFD 32 4 1 2 Mô hình lu ồ ng d ữ li ệ u DFD 32 4 1 2 2 M ứ c 1 32 4 2 Thi ế t k ế cơ s ở d ữ li ệ u 34 4 2 1 Xây d ự ng mô hình th ự c th ể k ế t h ợ p ERD 34 4 2 2 Xây d ự ng mô hình d ữ li ệ u v ậ t lý 41 4 3 Thi ế t k ế giao di ệ n 48 CHƯƠNG 5: KẾ T LU Ậ N 52 5 1 K ế t qu ả th u đượ c 54 5 2 H ạ n ch ế 54 5 3 Phương hướ ng phát tri ể n 54 TÀI LI Ệ U THAM KH Ả O 55 PH Ụ L Ụ C 56 x DANH SÁCH B Ả NG B ả ng 1 Bảng so sánh giữa cơ sở dữ liệu quan hệ và cơ sở dữ liệu NoSQL 18 B ả ng 2 B ả ng thu ậ t ng ữ trong MongoDB ứ ng v ớ i các thu ậ t ng ữ trong các h ệ qu ả n tr ị cơ s ở d ự li ệ u quan h ệ 21 B ả ng 3 B ả ng th ể hi ệ n m ứ c đ ộ ưu tiên c ủ a các ki ể u ngu ồ n 24 B ả ng 4 B ả ng mô t ả các trư ờ ng c ủ a User 42 B ả ng 5 Mô t ả chi ti ế t các trư ờ ng c ủ a Board 42 B ả ng 6 Mô t ả chi ti ế t các trư ờ ng c ủ a List 43 B ả ng 7 Mô t ả chi ti ế t các trư ờ ng c ủ a Card 43 B ả ng 8 Mô t ả chi ti ế t các trư ờ ng c ủ a Label 43 B ả ng 9 Mô t ả chi ti ế t các trư ờ ng c ủ a BoardMember 44 B ả ng 10 Mô t ả chi ti ế t các trư ờ ng c ủ a BoardInvitation 44 B ả ng 11 Mô t ả chi ti ế t các trư ờ ng c ủ a Team 45 B ả ng 12 Mô t ả chi ti ế t các trư ờ ng c ủ a TeamMember 45 B ả ng 13 Mô t ả chi ti ế t các trư ờ ng c ủ a TeamInvitation 45 B ả ng 14 Mô t ả chi ti ế t các trư ờ ng c ủ a CardLabel 46 B ả ng 15 Mô t ả chi ti ế t các trư ờ ng c ủ a Comment 46 B ả ng 16 Mô t ả chi ti ế t các trư ờ ng c ủ a Checklist 47 B ả ng 17 Mô t ả chi ti ế t các trư ờ ng c ủ a ChecklistItem 47 B ả ng 18 Mô t ả chi ti ế t các trư ờ ng c ủ a ChecklistA ssignment 47 xi DANH SÁCH HÌNH Hình 1 Mô hình lu ồ ng d ữ li ệ u m ứ c ng ữ c ả nh 32 Hình 2 Mô hình lu ồ ng d ữ li ệ u m ứ c 1 33 Hình 3 Mô hình th ự c th ể k ế t h ợ p (ERD) 34 Hình 4 Mô hình d ữ li ệ u v ậ t lý 41 Hình 5 Giao di ệ n đăng nh ậ p 48 Hình 6 Giao di ệ n đăng ký 48 Hình 7 G iao di ệ n chính 49 Hình 8 Giao di ệ n danh sách d ự án 49 Hình 9 Giao di ệ n làm vi ệ c d ự án 50 Hình 10 Giao di ệ n làm vi ệ c c ủ a th ẻ 50 Hình 11 Giao di ệ n danh sách nhóm 51 Hình 12 Giao di ệ n nhóm 51 xii DANH M Ụ C T Ừ VI Ế T T Ắ T VD : Ví D ụ
Trang 1TRƯỜNG ĐẠI HỌC NAM CẦN THƠ KHOA CÔNG NGHỆ - KỸ THUẬT
LÊ NGUYỄN NHẬT DŨY
XÂY DỰNG WEBSITE QUẢN LÝ DỰ ÁN PHẦN MỀM
ĐỒ ÁN THỰC TẬP Ngành Công nghệ Thông tin
Mã số Ngành: 7480201
Tháng 5-2021
Trang 2KHOA CÔNG NGHỆ - KỸ THUẬT
LÊ NGUYỄN NHẬT DŨY
MSSV: 176874
XÂY DỰNG WEBSITE QUẢN LÝ DỰ ÁN PHẦN MỀM
ĐỒ ÁN THỰC TẬP Ngành Công nghệ Thông tin
Mã số Ngành: 7480201
GIẢNG VIÊN HƯỚNG DẪN THS PHAN THỊ XUÂN TRANG
Tháng 5-2021
Trang 3CHẤP THUẬN CỦA HỘI ĐỒNG
Đồ án “Xây dựng phần mềm thi trắc nghiệm qua mạng LAN cho sinh viên khoa kỹ thuật - công nghệ”, do sinh viên Lê Nguyễn Nhật Dũy và sinh viên Chung Vinh Hiển thực hiện dưới sự hướng dẫn của Ths Phan Thị Xuân Trang
Đồ án đã báo cáo và được Hội đồng chấm khóa luận thông qua ngày
- -
- -
- -
Trang 4GHI CHỨC DANH, HỌ, TÊN GHI CHỨC DANH, HỌ, TÊN
Trang 5LỜI CẢM TẠ
Lời đầu tiên em xin chân thành cảm ơn đến ThS Phan Thị Xuân Trang
Trong thời gian qua, cô đã rất tận tình hướng dẫn để em hoàn thành đồ án này
Em xin cảm ơn quý thầy cô Khoa Kỹ thuật – Công nghệ Trường Đại học
Nam Cần Thơ đã tận tâm giảng dạy và truyền đạt cho em những kiến thức quý
báu để em hoàn thiện chương trình học tại trường Đồng thời, em cũng rất cảm
ơn Chủ tịch Hội đồng quản trị, Ban Giám hiệu Trường Đại học Nam Cần Thơ
đã tạo điều kiện về thời gian, không gian để em có thể hoàn thành nhiệm vụ
học tập của mình
Mặc dù, em đã có rất nhiều cố gắng nỗ lực để hoàn thành đồ án nhưng vẫn
không tránh khỏi những thiếu sót Kính mong nhận được sự đóng góp ý kiến
của quý thầy cô
Em xin chân thành cảm ơn!
Cần thơ, ngày … tháng … năm 2021
Người thực hiện
Trang 6
LỜI CAM ĐOAN
Em xin cam kết đồ án này được hoàn thành dựa trên các kết quả nghiên cứu của em và các kết quả nghiên cứu này chưa được dùng cho bất cứ đồ án nào khác
Cần thơ, ngày … tháng … năm 2021
Người thực hiện
Trang 7NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN
Cần Thơ, ngày… tháng……năm 2021
Giảng viên hướng dẫn
Trang 8NHẬN XÉT CỦA GIẢNG VIÊN PHẢN BIỆN
Cần Thơ, ngày… tháng……năm 2021
Giảng viên phản biện
Trang 9MỤC LỤC
CHẤP THUẬN CỦA HỘI ĐỒNG i
LỜI CẢM TẠ iii
NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN v
NHẬN XÉT CỦA GIẢNG VIÊN PHẢN BIỆN vi
DANH SÁCH BẢNG x
DANH SÁCH HÌNH xi
DANH MỤC TỪ VIẾT TẮT xii
CHƯƠNG 1: GIỚI THIỆU CÔNG TY 1
1.1 Giới thiệu công ty 1
1.2 Thông tin công ty 1
1.3 Trụ sở chính 1
1.4 Người đại diện pháp luật 1
1.5 Thông tin liên hệ 2
1.6 Ngành, nghề kinh doanh 2
1.7 Sản phẩm và dịch vụ của công ty đang kinh doanh 4
1.7.1 Sản phẩm phần mềm 4
1.7.2 Chi phí bảo trì hệ thống sau khi hết bảo hành kỹ thuật 10
1.7.3 Dịch vụ 11
CHƯƠNG 2: GIỚI THIỆU ĐỀ TÀI 13
2.1 Lý do chọn đề tài 13
2.2 Mục tiệu nghiên cứu 13
2.3 Đối tượng, phạm vi nghiên cứu 13
2.3.1 Không gian 13
2.3.2 Thời gian 13
2.3.3 Đối tượng nghiên cứu 14
2.3.4 Phạm vi nghiên cứu 14
Trang 102.4 Phương pháp nghiên cứu 14
2.4.1 Phương pháp nghiên cứu lý luận 14
2.4.2 Phương pháp chuyên gia 14
1.4.3 Phương pháp thực nghiệm 14
2.5 Nội dung 14
CHƯƠNG 3: CƠ SỞ LÝ LUẬN VÀ PHƯƠNG PHÁP NGHIÊN CỨU 16
3.1 Giới thiệu về cơ sở dữ liệu và hệ quản trị cơ sở dữ liệu 16
3.1.1 Cơ sở dữ liệu phi quan hệ (NoSQL) 16
3.1.2 Hệ quản trị cơ sở dữ liệu MongoDB 20
3.2 Khái niệm phân tích và thiết kế hệ thống thông tin 22
3.2.1 Khái niệm hệ thống thông tin và các thành phần trong hệ thống thông tin 22
3.2.2 Vòng đời phát triển hệ thống thông tin 22
3.3 Tổng quan về HTML, CSS, JavaScript 22
3.3.1 HTML 22
3.3.2 CSS 23
3.3.3 JavaScript 25
3.4 NodeJS và ReactJS 27
3.4.1 NodeJS 27
3.4.2 ReactJS 28
3.5 RESTful API 29
3.6 WebSocket và thư viện socket.io 30
3.6.1 WebSocket 30
3.6.2 Thư viện socket.io 30
3.7 Sơ lược về chương trình 30
3.8 Ý nghĩa đề tài 31
Trang 11CHƯƠNG 4: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 32
4.1 Phân tích hệ thống 32
4.1.1 Xây dựng sơ đồ phân rã chức năng BFD 32
4.1.2 Mô hình luồng dữ liệu DFD 32
4.1.2.2 Mức 1 32
4.2 Thiết kế cơ sở dữ liệu 34
4.2.1 Xây dựng mô hình thực thể kết hợp ERD 34
4.2.2 Xây dựng mô hình dữ liệu vật lý 41
4.3 Thiết kế giao diện 48
CHƯƠNG 5: KẾT LUẬN 52
5.1 Kết quả thu được 54
5.2 Hạn chế 54
5.3 Phương hướng phát triển 54
TÀI LIỆU THAM KHẢO 55
PHỤ LỤC 56
Trang 12DANH SÁCH BẢNG
Bảng 1 Bảng so sánh giữa cơ sở dữ liệu quan hệ và cơ sở dữ liệu NoSQL 18
Bảng 2 Bảng thuật ngữ trong MongoDB ứng với các thuật ngữ trong các hệ quản trị cơ sở dự liệu quan hệ 21
Bảng 3 Bảng thể hiện mức độ ưu tiên của các kiểu nguồn 24
Bảng 4 Bảng mô tả các trường của User 42
Bảng 5 Mô tả chi tiết các trường của Board 42
Bảng 6 Mô tả chi tiết các trường của List 43
Bảng 7 Mô tả chi tiết các trường của Card 43
Bảng 8 Mô tả chi tiết các trường của Label 43
Bảng 9 Mô tả chi tiết các trường của BoardMember 44
Bảng 10 Mô tả chi tiết các trường của BoardInvitation 44
Bảng 11 Mô tả chi tiết các trường của Team 45
Bảng 12 Mô tả chi tiết các trường của TeamMember 45
Bảng 13 Mô tả chi tiết các trường của TeamInvitation 45
Bảng 14 Mô tả chi tiết các trường của CardLabel 46
Bảng 15 Mô tả chi tiết các trường của Comment 46
Bảng 16 Mô tả chi tiết các trường của Checklist 47
Bảng 17 Mô tả chi tiết các trường của ChecklistItem 47
Bảng 18 Mô tả chi tiết các trường của ChecklistAssignment 47
Trang 13DANH SÁCH HÌNH
Hình 1 Mô hình luồng dữ liệu mức ngữ cảnh 32
Hình 2 Mô hình luồng dữ liệu mức 1 33
Hình 3 Mô hình thực thể kết hợp (ERD) 34
Hình 4 Mô hình dữ liệu vật lý 41
Hình 5 Giao diện đăng nhập 48
Hình 6 Giao diện đăng ký 48
Hình 7 Giao diện chính 49
Hình 8 Giao diện danh sách dự án 49
Hình 9 Giao diện làm việc dự án 50
Hình 10 Giao diện làm việc của thẻ 50
Hình 11 Giao diện danh sách nhóm 51
Hình 12 Giao diện nhóm 51
Trang 14DANH MỤC TỪ VIẾT TẮT
VD : Ví Dụ