1. Trang chủ
  2. » Luận Văn - Báo Cáo

XÂY DỰNG HỆ THỐNG THI TRẮC NGHIỆM TIẾNG ANH TRỰC TUYẾN

50 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây Dựng Hệ Thống Thi Trắc Nghiệm Tiếng Anh Trực Tuyến
Tác giả Phạm Ngọc Được
Người hướng dẫn ThS. Nguyễn Văn Nguyên
Trường học Đại Học Đà Nẵng
Chuyên ngành Công Nghệ Thông Tin
Thể loại Đồ Án Tốt Nghiệp
Năm xuất bản 2019
Thành phố Đà Nẵng
Định dạng
Số trang 50
Dung lượng 2,32 MB

Cấu trúc

  • 1.1. Phân tích hiện trạng thi trắc nghiệm tiếng Anh trực tuyến (15)
  • 1.2. Nghiên cứu lý thuyết (15)
    • 1.2.1. Tổng quan về Java Servlet / Jsp (15)
    • 1.2.2. Mô hình MVC (Model – View - Controller) (17)
    • 1.2.3. Tổng quan về Struts Framework (18)
    • 1.2.4. Tổng quan về công nghệ Ajax (21)
  • 1.3. Kết chương (22)
  • CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 11 2.1. Phân tích nghiệp vụ hệ thống (23)
    • 2.1.1. Nghiệp vụ của Admin (23)
    • 2.1.2. Nghiệp vụ của phòng công tác sinh viên (23)
    • 2.1.3. Nghiệp vụ của giảng viên (23)
    • 2.2. Thiết kế hệ thống (24)
      • 2.2.1. Sơ đồ phân rã chức năng (24)
      • 2.2.2. Biểu đồ ca sử dụng (24)
      • 2.2.3. Đặc tả ca sử dụng (30)
      • 2.2.4. Biểu đồ tuần tự (35)
      • 2.2.5. Biểu đồ hoạt động (36)
      • 2.2.6. Biểu đồ lớp (38)
      • 2.2.7. Thiết kế cơ sở dữ liệu (39)
    • 2.3. Kết chương (39)
  • CHƯƠNG 3: TRIỂN KHAI VÀ ĐÁNH GIÁ 28 3.1. Yêu cầu cấu hình máy chủ (40)
    • 3.2. Giao diện hệ thống Website (40)
      • 3.2.1. Giao diện một số chức năng của admin (40)
      • 3.2.2. Giao diện một số chức năng của phòng công tác sinh viên (42)
      • 3.2.3. Giao diện một số chức năng của giảng viên (43)
      • 3.2.4. Giao diện một số chức năng của sinh viên (44)
    • 3.3. Kết chương (48)
    • 2. Hướng phát triển (49)

Nội dung

ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA CÔNG NGHỆ THÔNG TIN Tel. (84-511) 3736949, Fax. (84-511) 3842771 Website: itf.dut.udn.vn, E-mail: cntt@dut.udn.vn ĐỒ ÁN TỐT NGHIỆP KỸ SƯ NGÀNH CÔNG NGHỆ THÔNG TIN ĐỀ TÀI : XÂY DỰNG HỆ THỐNG THI TRẮC NG HIỆM TIẾNG ANH TRỰC TUYẾN SINH VIÊN : PHẠM NGỌC ĐƯỢC MÃ SINH VIÊN : 1021 50093 LỚP : 1 5 T2 CBHD : T h S. NGUYỄN VĂN NGUYÊN Đà Nẵng , 12 / 201 9 NHẬN XÉT CỦA NGƯỜI HƯỚNG DẪN .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. Đà Nẵng, ngày 19 tháng 12 năm 201 9 Gi ảng viên hướng dẫn ThS. Nguyễn Văn Nguyên NHẬN XÉT CỦA NGƯỜI PHẢN BIỆN .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. Đà Nẵng, ngày … tháng 12 năm 201 9 Gi ảng vi ên ph ản biện TÓM TẮT I . Thông tin chung 1. Tên đề tài: Xây dựng w ebsite t hi trắc nghiệm tiếng Anh trực tuyến . 2. Sinh viên thực hiện: Phạm Ngọc Được . 3. Số thẻ SV: 102150093 . 4. Lớp: 15T2 . II. T óm tắt đồ án Trong thời gian gần đây, thấy được tầm quan trọng của việc học tiếng Anh trong đời sống nên các trường đại học, trung học phổ thông đã tổ chức dạy và đánh giá trình độ ngoại ngữ của học sinh, sinh viên một cách quyết liệt. Nhưng vì chưa theo kịp công nghệ nên nhiều trường học còn tổ chức theo tư duy cũ, không an toàn và tốn kém. Để giải quyết vấn đề đó, em đã phát triển đề tài “ x ây dựng h ệ thống thi trắc nghiệm tiếng Anh trực tuyến ” giúp cho hoạt động quản lý và tổ chức thi hiệu quả, thuận tiện hơn. Hệ thống sẽ bao gồm: - Hệ thống quản lý dành cho ad min; - Hệ thống quản lý dành cho giảng viên. - Hệ thống quản lý dành cho phòng Công tác sinh viên. - Hệ thống thi và xem điểm dành cho sinh viên ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA CÔNG NGHỆ THÔNG T IN CỘNG HÒA XÃ HÔI CHỦ NGHĨA VIỆT NAM Độc lập - T ự do - Hạnh phúc NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên: Phạm Ngọc Được Số thẻ sinh viên: 1021 50093 Lớp: 15T2 Khoa:CNTT Ngành: Công nghệ phần mềm 1. Tên đề tài đồ án: Xây dựng w ebsite t hi trắc nghiệm tiếng Anh trực tuyến 2. Đề tài thuộc diện: ☐ Có ký kết thỏa thuận sở hữu trí tuệ đối với kết quả thực hiện 3. Nội dung các phần thuyết minh và tính toán: - Giới thiệu mở đầu - Các nghiên cứu lý thuyết - Phân tích thiết kế hệ thống - Triển khai và đánh giá 4. Họ tên người hướng dẫn: Ths. Nguyễn Văn Nguyên 5. Ngày giao nhiệm vụ đồ án: 11 / 09 /20 19 . 6. Ngày hoàn thành đồ án: 19 / 12 /201 9 . Đà Nẵng, ngày 19 tháng 12 năm 201 9 Trưởng Bộ môn Công nghệ phần mềm TS. Lê Thị Mỹ Hạnh Người hướng dẫn ThS. Nguyễn Văn Nguyên L ỜI NÓI ĐẦU Trong suốt thời gian thực hiệ n và hoàn thành đồ án này, em đã nhận được sự giúp đỡ và hướng dẫn tận tình của các Thầy, các Cô và các bạn trong Khoa Công nghệ Thông tin Trường Đại học Bách khoa - Đại học Đà Nẵng. E m xin gửi lời cảm ơn chân thành và sâu sắc tới các Thầy Cô trong Khoa đã giảng dạy và truyền đạt những kiến thức cần thiết , những kinh nghiệm quý báu cho em có thể thực hiện đồ án này. Trước tiên chúng em xin chân thành cảm ơn thầy T h S. Nguyễn Vă n Nguyên , n gười đã từng bước hư ớng dẫn, giúp đỡ em trong quá trình thực hiện đồ án tốt nghiệ p của mình. Thứ hai, em xin được gửi lời cảm ơn đến c ông ty Gameloft Viet n am , công ty FPT Software và các anh trong công ty đã hỗ trợ, tạo điều kiện cho em tiếp cận với công nghệ mới. Để có được kết quả như ngày hôm nay, chúng em rất biết ơn gia đình và n hững người thân trong gia đình đã động viên, khích lệ, tạo mọi điều kiện thuận lợi nhất về vật chất lẫn tinh thần trong suốt quá trình học tập cũng như quá trình thực hiện đề tài tốt nghiệp này. Trong quá trình học tập, cũng như trong quá trình làm đồ án tốt nghiệp không thể tránh khỏi những thiếu sót, em rất mong được sự góp ý quý báu của tất cả các thầy cô giáo cũng như tất cả các bạn để đồ án tốt nghiệp của em được hoàn thiện hơn. Một lần nữa em xin chân thành cảm ơn và kính chúc quý Thầy Cô dồi dào sức khỏe và thành công trong cuộc sống. Đà Nẵng, ngày 1 9 tháng 12 năm 201 9 Sinh viên thực hiện Phạm Ngọc Được CAM ĐOAN Tôi xin cam đoan: 1. Những nội dung trong đồ án này là do tôi thực hiện dưới sự hướng dẫn trực tiếp của thầy ThS. Nguyễn Văn Nguyên. 2. Mọi tham khảo dùng trong đồ án đều được trích dẫn rõ ràng tên tác giả, tên công trình, thời gian, địa điểm công bố . 3. Nếu có những sao chép không hợp lệ, vi phạm , tôi xin chịu h oàn toàn trách nhiệm . Đà Nẵng, ngày 1 9 tháng 12 năm 2019 Sinh viên thực hiện Phạm Ngọc Được Đ Ạ I H Ọ C Đ À N Ẵ N G  T R Ư Ờ N G Đ Ạ I H Ọ C B Á C H K H O A KHOA CÔNG NGHỆ THÔNG TIN 54, Nguyễn Lương Bằng, Hoà Khánh, Liên Chiểu, TP. Đà Nẵng Tel. 84.511.3.736.949, Fax. 84.511.842.771 - Website: itf.dut.edu.vn - E - mail: cntt@dut.udn.vn PHIẾU DUYỆT ĐỒ ÁN TỐT NGHIỆP I. Phần dành cho Sinh viên 1. Họ và tên: Phạm Ngọc Được 2. Mã Sinh viên: 1021 50093 3. Lớp: 15T2 4. Tên đề tài: Xây dựng hệ thống w ebsite t hi trắc nghiệm tiếng Anh trực tuyến 5. Họ v à tên GVHD: ThS. Nguyễn Văn Nguyên 6. Điện thoại: 0 935699695 7. E-mail: duoc0880 @gmail.com II. Phần dành cho Hội đồng STT Nội dung đánh giá Kết luận 1. Trình bày báo cáo theo đúng mẫu qui định của Khoa 2. Không có sự sao chép nội dung báo cáo và chương trìn h đã có 3. Biên dịch mã nguồn và chạy được chương trình 4. Có kịch bản thực hiện với dữ liệu thử nghiệm 5. Kết quả thực hiện chương trình đúng theo báo cáo 6. Có sự đóng góp, phát triển của tác giả trong đồ án Ý kiến khác: ............................... ............................................................................................ .................................................................................................................................................. Kết luận:  Đạt yêu cầu  Phải sửa chữa lại  Không đạt yêu cầu Đà Nẵng, ngày 1 9 tháng 12 năm 2019 Chủ tịch Hội đồng (Ký và ghi họ tên) Cán bộ duyệt kiểm tra (Ký và ghi họ tên) Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 1 M Ụ C L Ụ C CHƯƠNG 1: CƠ SỞ LÝ THU YẾT 3 1.1. Phân tích hiện trạng t hi trắc nghiệm tiếng Anh trực tuyến ................................ 3 1.2. Nghiên cứu lý thuyết ................................................................ .......................... 3 1.2.1. Tổng quan về Java Servlet / Jsp ................................ ........................ 3 1.2.2. Mô hình MVC (Mode l – View - Controller) ................................ .... 5 1.2.3. Tổng quan v ề Struts Framework ................................ ...................... 6 1.2.4. Tổng quan về công nghệ Ajax ................................ .......................... 9 1.3. K ết chương ................................ ................................ ................................ ....... 10 CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT K Ế HỆ THỐNG 11 2.1. Phân tích nghiệp vụ hệ thống ................................ ................................ ........... 11 2.1.1. Nghiệp vụ của A dmin ................................ ................................ ..... 11 2.1.2. Nghiệp vụ của phòng công tác sinh viên ................................ ........ 11 2.1.3. Nghiệp vụ của giảng viên ................................ ............................... 11 2.2. Thi ết kế hệ thống ................................ ................................ .............................. 12 2.2.1. Sơ đồ phân rã chức năng ................................ ................................ . 12 2.2.2. Biểu đồ ca sử dụng ................................ ................................ ......... 12 2.2.3. Đặc tả ca sử dụng ................................ ................................ ............ 18 2.2.4. Biểu đồ tuần tự ................................ ................................ ................ 23 2.2.5. Biểu đồ hoạt động ................................ ................................ ........... 24 2.2.6. Biểu đồ lớp ................................ ................................ ...................... 26 2.2.7. Thiết kế cơ sở dữ liệu ................................ ................................ ..... 27 2.3. K ết chương ................................ ................................ ................................ ....... 27 CHƯƠNG 3: TRIỂN KHAI VÀ ĐÁNH G IÁ 28 3.1. Yêu cầu cấu hình máy chủ ................................ ................................ ............... 28 3.2. Giao diện hệ thống Website ................................ ................................ ............. 28 3.2.1. Giao diện một số chức năng của admin ................................ .......... 28 3.2.2. Giao diện một số chức năng của phòng công tác sinh viên ............ 30 3.2.3. Giao diện một số chức năng của giảng viên ................................ ... 31 3.2.4. Giao diện một số chức năng của sinh viên ................................ ..... 32 3.3. K ết chương ................................ ................................ ................................ ....... 36 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 37 1. Kết quả đạt được ................................ ................................ ............................ 37 2. H ướng phát triển ................................ ................................ ............................ 37 TÀI LIỆU THAM KHẢO 38 Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 2 DANH SÁCH HÌNH ẢNH Hình 1 : Sơ đồ kiến trúc của Servlet ................................................................ ............4 Hình 2 : Sơ đồ kiến trúc của jsp ................................................................ ...................5 Hình 3 : Mô hình MVC ................................................................................................ 6 Hình 4 : Kiến trúc stru ts 1 Framework ................................................................ ........8 Hình 5 : Sơ đồ hoạt động của Ajax ................................................................ ..............9 Hình 6 : Sơ đồ phân rã chức năng của hệ thống ................................ ........................ 12 Hình 7 : Biểu đồ ca sử dụng chức năng Quản lý chung ................................ ............. 12 Hình 8 :Biểu đồ ca sử dụng chức năng quản lý danh sách sinh viên ......................... 14 Hình 9 : Biểu đồ ca sử dụng của chức năng quản lý điểm ................................ ......... 15 Hình 10 : Biểu đồ ca sử dụng của chức năng ra đề ................................ .................... 15 Hình 11 : Biể u đồ ca sử dụng của chức năng quản lý danh sách kỳ thi ..................... 16 Hình 12: Biểu đồ ca sử dụng của chức năng tham gia thi ........................................16 Hình 19: Biểu đồ tuần tự chức năng Đăng nhập .......................................................23 Hình 20: Biểu đồ tuần tự chức năng đăng ký bài thi (tổ chức thi) ............................24 Hình 21: Thiết kế cở sở dữ liệu .................................................................................27 Hình 22: Giao diện chức năng đăng nhập của hệ thống ...........................................28 Hình 23: Gia diện chức năng quản lý user của admin ..............................................29 Hình 24: Giao diện chức năng import danh sách sinh viên của nhân viên phòng ban ...................................................................................................................................30 Hình 25: Giao diện chức năng quản lý danh sách và in bảng điểm sinh viên ..........30 Hình 26: Giao diện chức năng tổ chức thi của giảng viên ........................................31 Hình 27: Giao diện tạo mới bài thi ............................................................................31 Hình 28: Giao diện chức năng tạo mới câu hỏi đề thi ..............................................32 Hình 29: Giao diện chức năng hiển thị trang cá nhân của sinh viên ........................32 Hình 30: Giao diện hiển thị mô tả bài thi ..................................................................33 Hình 31: Giao diện bắt đầu thi ..................................................................................33 Hình 32: Giao diện chức năng thi .............................................................................34 Hình 33: Giao diện hiển thị kết quả sau khi thi ........................................................35 Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 3 DANH SÁCH BẢNG Bảng 1 : Ca sử dụng đăng nhập ................................ ................................ ................ 18 Bảng 2 : Ca sử dụng chọn xem danh sách user ................................ ......................... 19 Bảng 3: Ca sử dụng chọn quản lý quyền user ..........................................................19 Bảng 4: Ca sử dụng quản lý danh sách sinh viên .....................................................20 Bảng 5: Ca sử dụng tạo đề thi ..................................................................................20 Bảng 6: Ca sử dụng tạo kỳ thi ..................................................................................21 Bảng 7: Ca sử dụng tổ chức thi ................................................................................21 Bảng 8: Ca sử dụng tham gia thi ..............................................................................22 Bảng 9: Ca sử dụng xem lịch sử thi của sinh viên ...................................................22 Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 4 DANH SÁCH TỪ VIẾT TẮT Từ viết tắt Diễn giải CSDL Cơ Sở Dữ Liệu JSP JavaServer Pages AJAX Asynchronous Javascript And Xml CGI Common Gateway Interface API Application Programming Interface MVC Mode View Controller URL Uniform Resource Locator Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 1 MỞ ĐẦU 1. Tổng quan về đề tài Ngày nay c ông nghệ thông tin đã trở thành một phần tất yếu của cuộc sống con người, không những thế nó còn góp phần phát triển kin h tế trong tất cả các lĩnh vực từ kinh tế, y tế đến giáo dục . Việc ứng dụng c ông nghệ thông tin trong các hoạt động tổ chức thi trực tuyến khiến việc học và thi ở các trường học trở nên dễ dàng, chủ động và tiết kiệm hơn . Hiện nay tại các trường đại học và phổ thông trung học, hoạt động dạy và học tiếng Anh diễn ra quyết liệt . Tuy nhiên, việc tổ chức thi vẫn còn tư duy cũ là thi trên giấy, thi offline, gây tốn kém cho nhà trường, học sinh mà hiệu quả chưa cao. Để giải quyết hạn chế nêu trên, cần thiết xây dựng một hệ thống đủ mạnh, bảo mật cao, giao diện thân thiện hỗ trợ cho việc học và thi tiếng Anh tại các trường học, góp phần nâng cao hiệu quả trong công tác đánh giá, phổ cập tiếng Anh cho sinh viên, học sinh. 2. Mục đích và ý nghĩa của đề tài 2.1. Mục đích Xây dựng hệ thống thi trắc nghiệm tiếng Anh trực tuyến : - Hỗ trợ hiệu quả hơn hoạt động quản lý của N hà trường; - Hỗ trợ sinh viên, học sinh làm bài thi hiệu quả, quản lý điểm của chính mình . 2.2. Ý nghĩa Nâng cao hiệu quả trong công tác q uản lý thi trắ c nghiệm tiếng Anh . 3. Phương pháp thực hiện - Phương pháp phân tích tổng hợp từ nguồn tài liệu trên mạng ; - Phương pháp phân tích thiết kế hệ thống theo hướng đối tượng ; - Phương pháp thử nghiệm, đánh giá kết quả . Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 2 4. Bố cục của đồ án Đồ án bao gồm các nộ i dung sau: Mở đầu Chương 1: CƠ SỞ LÝ THUYẾT Chương 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG Chương 3: TRIỂN KHAI THỰC TẾ VÀ ĐÁNH GIÁ KẾT QUẢ Kết luận và hướng phát triển. Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 3 CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1.1. Phân tích hiện trạng t hi trắc nghiệm tiếng Anh trực tuyến Hiện nay phổ cập tiếng Anh cho toàn bộ sinh viên và học sinh đang là vấn đề cấp thiết tại các trường đại học, cao đẳng và trung học phổ thông. Nhằm mục đích hỗ trợ hiệu quả cho các trường học tổ chức quản lý và đánh giá chính xác trình độ tiếng Anh của học sinh sinh viên nên em đã xây dựng hệ thống thi trắc nghiệm tiếng Anh trực tuyến tại trường đại học Bách Khoa Đà Nẵng. 1.2. N ghiên cứu lý thuyết 1.2.1. Tổng quan về Java Servlet / Jsp Công nghệ Servlet được sử dụng để tạo ra ứng dụng web (nằm ở phía máy chủ và tạo ra trang we b động). Sử dụng Servlet, bạn có thể thu thập thông tin đầu vào từ người dùng thông qua các trang web, hiển thị các bản ghi từ một cơ sở dữ liệu hoặc một nguồn khác.Công nghệ servlet là mạnh mẽ và có khả năng mở rộng. Trước Servlet, ngôn ngữ kịch bản CGI ( Common Gateway Interface) được sử dụng phổ biến như một ngôn ngữ lập trình phía máy chủ. Servlet có thể được mô tả bằng nhiều cách, tùy thuộc vào ngữ cảnh:  Servlet là một công nghệ được sử dụng để tạo ra ứng dụng web.  Servlet là một API cung cấp các inter face và lớp bao gồm các tài liệu.  Servlet là một thành phần web được triển khai trên máy chủ để tạo ra trang web động. Có nhiều interface và các lớp trong API servlet như Servlet, GenericServlet, HttpServlet, ServletRequest, ServletResponse, ... Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 4 S ơ đồ dưới đây cho thấy vị trí của Servlets trong một Ứng dụng Web. Hình 1 : Sơ đồ kiến trúc của Servlet Servlet thực hiện các nhiệm vụ chính sau đây:  Đọc dữ liệu rõ ràng do khách hàng (trình duyệt) gửi. Điều này bao gồm một mẫu HTML trên một trang Web hoặc nó cũng có thể đến từ một applet hoặc một chương trình khách hàng HTTP tùy chỉnh.  Đọc dữ liệu yêu cầu HTTP ẩn được gửi bởi khách hàng (trình duyệt). Điều này bao gồm các cookie, loại phương tiện truyền thông và các chương trình nén mà trình duyệt hiểu được, v.v.  Xử lý dữ liệu và tạo ra các kết quả. Quá trình này có thể yêu cầu nói chuyện với một cơ sở dữ liệu, thực hiện một cuộc gọi RMI hoặc CORBA, gọi một dịch vụ Web, hoặc tính trực tiếp phản hồi.  Gửi dữ liệu rõ ràng (tức là tài li ệu) tới khách hàng (trình duyệt). Tài liệu này có thể được gửi bằng nhiều định dạng, bao gồm văn bản (HTML hoặc XML), nhị phân (hình ảnh GIF), Excel, v.v ...  Gửi phản hồi HTTP ẩn cho khách hàng (trình duyệt). Điều này bao gồm nói với trình duyệt hoặc các t rình khách khác loại tài liệu đang được trả về (ví dụ, HTML), thiết lập cookie và các tham số bộ nhớ đệm, và các tác vụ khác. Các lớp của gói servlet thực hiện các đặc tả Java Servlet và JSP. Các servlet Java đã được tạo ra và biên dịch giống như các lớp J ava khác. Sau khi cài đặt gói servlet và thêm chúng vào Classpath của máy tính, bạn có thể biên dịch các servlet bằng trình dịch Java của JDK hoặc bất kỳ trình biên dịch hiện tại nào khác. JSP là viết tắt của JavaServer Pages là một công nghệ để phát triển các trang web động. JSP giúp các nhà phát triển chèn java code vào các trang HTML bằng cách sử dụng các thẻ JSP đặc biệt. Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 5 JSP là một kiểu Java servlet được thiết kế để tạo ra giao diện người dùng cho một ứng dụng Java web. Các nhà phát triển web viết các JSP như các tệp văn bản kết hợp mã HTML hoặc XHTML, các phần tử XML, các action và lệnh JSP. Sử dụng JSP, bạn có thể thu thập dữ liệu đầu vào từ người dùng thông qua các Form của trang web, trình bày các bản ghi từ một cơ sở dữ liệu hoặc một nguồn khác, và tạo các trang web động. Các thẻ JSP có thể được sử dụng cho nhiều mục đích khác nhau, chẳng hạn như truy xuất thông tin từ cơ sở dữ liệu hoặc đăng ký mới, truy cập các thành phần JavaBeans, kiểm soát giữa các trang và chia sẻ thông tin giữa các request, c ác trang vv. Hình 2 : Sơ đồ kiến trúc của jsp 1.2.2. Mô hình MVC (Mode l – View - Controller) Mô hình MVC là một chuẩn mô hình và đóng vai trò quan trọng trong quá trình xây dựng – phát triển – vận hành và bảo trì một hệ thống hay một ứng dụng – phần mềm. Nó tạo ra một mô hình 3 lớp Model – View – Controller (hình 1.2) tách biệt và tương tác nhau, giúp các chuyên gia có thể dễ dàng dựa vào mô hình để trao đổi và xử lý những nghiệp vụ một cách nhanh chóng. Mô hình MVC có thể áp dụng cho các dự án trong môi trường Windows, Linux… và sử dụng bất kỳ ngôn ngữ nào như PHP, ASP, JSP… Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 6 Hình 3 : Mô hình MVC Mô hình MVC được chia làm 3 lớp xử lý gồm Model – View – Controller: - Model : là nơi chứa những nghiệp vụ tương tác với dữ liệu hoặc hệ quản trị cơ sở dữ liệu (mysql, mssql… ); nó sẽ bao gồm các class/function xử lý nhiều nghiệp vụ như kết nối database, truy vấn dữ liệu, thêm – xóa – sửa dữ liệu… ; - View : là n ơi chứa những giao diện như một nút bấm, khung nhập, menu, hình ảnh… nó đảm nhiệm nhiệm vụ hiển thị dữ liệu và giúp người dùng tương tác với hệ thống ; - Controller : là nơi tiếp nhận những yêu cầu xử lý được gửi từ người dùng, nó sẽ gồm những class/function xử lý nhiều nghiệp vụ logic giúp lấy đúng dữ liệu thông tin cần thiết nhờ các nghiệp vụ lớp Model cung cấp và hiển thị dữ liệu đó ra cho người dùng nhờ lớp View. 1.2.3. Tổng quan về Struts Framework Struts framework ban đầu được tạo ra bởi Craig McClanahan và tặng cho Apache Foundation vào tháng 5 năm 2000 và Struts 1.0 đã được phát hành vào tháng 6 năm 2001. Phiên bản ổn định hiện tại của Struts là 2.3.33 được phát hành vào tháng 7 năm 2017. Struts Framework được xây dựng trên mô hình MVC phân tầng, phân l ớp, giúp dễ quản lý và bảo trì. Bên cạnh đó, hỗ trợ nhiều các thể Struts Tag trong file Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 7 Jsp giúp các lập trình viên làm việc nhanh chóng và hiệu quả hơn khi tạo và phát triển project trên nền tảng này. Struts là một tập hợp các thư viện Java và có thể chia ra làm các nhóm sau: + Framework cơ sở + Thư viện thẻ JSP + Tiles plugin + Validator plugin a. Framework cơ sở Framework cơ sở cung cấp các tính năng MVC cốt lõi. Nền tảng của framework cơ sở là Controller servlet: ActionServlet. Phần còn lại của framewor k cơ sở bao gồm các lớp cơ sở mà ứng dụng của bạn sẽ extend và các class tiện ích. Nổi bật nhát trong các lớp cơ sở là lớp Action và lớp ActionForm. Lớp Action được sử dụng bởi ActionServlet để sử lý các request xác định. Lớp ActionForm được sử dụng để cap ture dữ liệu từ các HTML form và được sử dụng để chuyển dữ liệu trở lại View để generate response. b. Thư viện thẻ JSP Struts đưa ra các thư viện thẻ để hỗ trợ việc lập trình View logic trong JSP. Các thư viện thẻ JSP cho phép các JSP author sử dụng các t hẻ giống HTML. + HTML: Sử dụng để generate các THML form tương tac với Struts API + Bean: Sử dụng để làm việc với các Java bean object trong JSP + Logic: Sử dụng để implement các logic điều kiện đơn giản trong JSP + Nested: Sử dụng để cho phép các mức nest ed tùy ý c. Tiles plugin Tiles là một JSP template framework giúp thuận tiện cho việc tái sử dụng mã HTML. d. Validator plugin Validator là một framework với khả năng thực hiện xác nhận tính hợp lệ của dữ liệu ở cả phía server và client. 5. Chu kì sống của một Struts Trước khi đi vào chi tiết các lớp, nghía qua một chút về tiến trình thực hiện của một ứng dụng Web sử dụng Struts cũng có lẽ không thừa. Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 8 1. Trình duyệt tạo một request tới ứng dụng Struts sẽ được xử lý bới ActionServlet (Controller). 2. Ac tionServlet (Controller) populate subclass của ActionForm (View), do ta viết, với dữ liệu form HTML và invoke method validate() của nó. 3. ActionServlet (Controller) execute subclass của Action do ta viết (Controller). 4. Subclass của Action (Controller) đó sẽ tương tác với model component và chuẩn bị dữ liệu cho để hiển thị. 5. Sau đó subclass của Action (Controller) đó sẽ chuyển điều khiển tới JSP (View). 6. JSP (View) sử dụng dữ liệu nhận được để generate response về cho trình duyệt. Hình 4 : Kiến trúc struts 1 Framework Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 9 1.2.4. Tổng quan về công nghệ Ajax Ajax là viết tắt của cụm từ " A synchronous J avaScript A nd X ML ". Ajax không phải là một ngôn ngữ lập trình hay công cụ. Ajax là phương thức trao đổi dữ liệu với máy chủ và cập nhật các phần của trang web - mà không cần tải lại toàn bộ trang . Ajax chính nó là một thuật ngữ chung cho các kỹ thuật JavaScript khác nhau được sử dụng để kết nối với máy chủ web tự động mà không nhất thiết phải tải lại trang. Về mặt kỹ thuật, nó đề cập đến v iệc sử dụng các đối tượng XmlHttpRequest để tương tác với một máy chủ web động thông qua JavaScript . Hình 5 : Sơ đồ hoạt động của Ajax + Gọi một sự kiện (event) trên trang web (trang web được tải xong, click button,...). + Một đối tượng XMLHttpRequest được tạo ra bởi JavaScript. + Đối tượng XMLHttpRequest gửi một request tới web server. + Server xử lý request. + Server gửi một response trả lại trang web. + Response này được đọc bởi JavaScript. + Cập nhật thay đổi lên trang web (không cần tải lại t rang web). Có 4 lợi ích chính của việc sử dụng Ajax trong các ứng dụng web:  Callbacks : Ajax được sử dụng để thực hiện một cuộc gọi lại, thực hiện việc truy xuất và / hoặc lưu dữ liệu mà không gửi toàn bộ trang trở lại máy chủ. Bằng cách gửi lại một phần tr ang web đến máy chủ, việc sử Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 10 dụng mạng được giảm thiểu và các hoạt động diễn ra nhanh hơn. Trong các trang web băng thông hạn chế, điều này có thể cải thiện đáng kể hiệu suất mạng. Dữ liệu được gửi đến và đi từ máy chủ một cách tối thiểu.  Thực hiện các cuộ c gọi không đồng bộ : Ajax cho phép bạn thực hiện các cuộc gọi không đồng bộ đến một máy chủ web. Điều này cho phép trình duyệt của người dùng tránh phải chờ tất cả dữ liệu đến trước khi cho phép người dùng hành động một lần nữa.  Thân thiện với người dùng : Vì không phải post lại trang lên server, các ứng dụng hỗ trợ Ajax sẽ luôn nhanh hơn và thân thiện với người dùng hơn.  Tăng tốc độ : Mục đích chính của Ajax là cải thiện tốc độ, hiệu suất và khả năng sử dụng của một ứng dụng web. Một ví dụ tuyệt vời của Ajax là tính năng xếp hạng phim trên Netflix. Người dùng đánh giá một bộ phim và xếp hạng cá nhân của họ cho bộ phim đó sẽ được lưu vào cơ sở dữ liệu của họ mà không cần chờ trang làm mới hoặc tải lại. 1.3. K ết chương Chương này cung cấp cho người đọc thực trạng v ấn đề quản lý của các trường đại học hiện nay nói chung và Trường đại học bách khoa nói riêng và c ầ n thiết phải xây dựng hệ thống Website Thi trắc nghiệm tiếng Anh trực tuyến . Đồng thời phân tích các cơ sở lý thuyết , giải pháp để triển khai xây dựng hệ t hống Website Thi trắc nghiệm tiếng Anh trực tuyến . Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 11 CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG Hệ thống Hệ thống thi trắc nghiệm tiếng Anh trực tuyến gồm 4 phân quyền: Admin , phòng CTSV, giảng viên, sinh viên . Trong đó Admin là người quản lý hệ thống , có thể quản l ý người dùng hệ thống , quản lý quyền người dùng … Phòng CTSV quản lý về điểm và danh sách sinh viên. Giảng viên có quyền quản lý đề, tổ chức thi, Sinh viên quản lý lịch sử thi của chính mình và tham gia thi . 2.1. Phân tích nghiệp vụ hệ thống 2.1.1. Nghiệp vụ của A dmi n − Quản lý danh sách user : cho phép admin quản lý thông tin của user bao gồm giảng viên, nhân viên phòng công tác sinh viên ; − Quản lý quyền user : cho phép admin quản lý danh sách các quyền của user : xem, thêm mới, sửa, xóa; 2.1.2. Nghiệp vụ của phòng công tác sinh viên − Import danh sách sinh viên : cho phép nhân viên phòng công tác sinh viên có thể thêm danh sách sinh viên từ file excel ; − Quản lý danh sách sinh viên : cho phép nhân viên phòng công tác sinh viên thêm, sửa, xóa danh sách sinh viên ; − Quản lý và In điểm : cho phép nhân viên phòng công tác sinh viên quản lý và in điểm sinh viên ra file pdf ; 2.1.3. Nghiệp vụ của giảng viên − Tạo mới đề thi : cho phép giảng viên tạo mới đề thi . − Tạo mới kỳ thi : cho phép giảng viên tạo mới kỳ thi . − Tổ chức thi : cho phép giảng viên tổ chức thi . 2.1.4. Nghiệp vụ của Sinh viên − Xem lịch sử các lần thi : cho phép sinh viên xem lịch sử các lần thi . − Tham gia vào thi : cho phép sinh viên trực tiếp tham gia thi . Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 12 2.2. T hiết kế hệ thống 2.2.1. Sơ đồ phân rã chức năng Sơ đồ này cho thấy một cách tổng quát và toàn diện các chức năng, phạm vi thực hiện của Website. Hình 6 : Sơ đồ phân rã chức năng của hệ thống 2.2.2. Biểu đồ ca sử dụng Biểu đồ ca sử dụng (use case) mô tả các chức năng, sự tương tác đặc trưng giữa người dùng và Website . Nó mô tả các yêu cầu đối với Website hiện tại, những gì Website phải làm. 2.2.2.1. Tổng quát các chức năng quản lý của Admin Hình 7 : Biểu đồ ca sử dụng chức năng Quản lý chung Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 13 Hình 2.4: Biểu đồ ca sử dụng chức năng Quản lý user Hình 2.5: Biểu đồ ca sử dụng của chức năng quản lý quyền user Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 14 2.2.2.2. Tổng quát các chức năng của phòng CTSV Hình 8 : Biểu đồ ca sử dụng chức năng quản lý danh sách sinh viên Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 15 Hình 9 : Biểu đồ ca sử dụng của chức năng quản lý điểm 2.2.2.3. Tổng quát các chức năng của Giảng viên Hình 10 : Biểu đồ ca sử dụng của chức năng ra đề Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 16 Hình 11 : Biểu đồ ca sử dụng của chức năng quản lý danh sách kỳ thi 2.2.2.4. Tổng quát các chức năng của Sinh viên Hình 12: Biểu đồ ca sử dụng của chức năng tham gia thi Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 17 Hình 2.8: Biểu đồ ca sử dụng của chức năng xem lịch sử thi Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 18 2.2.3. Đặc tả ca sử dụng Đặc tả ca sử dụng là quá trình mô tả cách các tác nhân tương tác, thực hiện ca sử dụng cho phép người d ù ng hiểu rõ hơn về các h sử dụng chức năng đó. Tên ca sử dụng Đăng nhập Người dùng Admin, phòng CTSV, Giảng viên, Sinh viên . Mô tả Cho phép Admin đăng nhập vào phần quản lý. Cho phép Phòng C TSV đăng nhập vào phần quản lý và in điểm . Cho phép Giảng viên đăng nhập vào phần quản lý và tổ chức thi . Cho phép Sinh viên đăng nhập vào phần để thi . Điều kiện kích hoạt Người dùng vào trang đăng nhập hoặc truy cập các trang dành cho người dùng nhưng ch ưa đăng nhập. Các bước thực hiện 1. Người dùng nhập các thông tin tên đăng nhập và mật khẩu. 2. Hệ thống kiểm tra dữ liệu nhập là đúng. 3. Đưa đến trang quản lý hoặc trang chủ Kết quả Đưa đến trang quản lý theo quyền của user hoặc trang chủ. Trường hợp lỗi 1. Người dùng không nhập các thông tin tên đăng nhập và mật khẩu. 2. Hệ thống kiểm tra dữ liệu nhập tên đăng nhập và mật khẩu sai. 3. Thông báo lỗi ra màn hình. Bảng 1 : Ca sử dụng đăng nhậ p Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 19 Tên ca sử dụng Quản lý user (Gi ảng viên và nhân viên phòng ban) Người dùng Admin Mô tả Cho phép admin duyệt các thông tin trong danh sách user . Điều kiện kích hoạt Admin chọn xem danh sách user . Các bước thực hiện 1. Admin chọn xem . 2. Hệ thống t rả lại trang xem danh sách các user trong hệ thống (không có sinh viên ). Kết quả Đưa đến trang danh sách các user . Trường hợp lỗi Bảng 2 : Ca sử dụng chọn xem danh sách user Tên ca sử dụng Quản lý quyền user (Giảng viên và nhân viên phòng ban) Người dùng Admin Mô tả Cho phép admin duyệt các thông tin quyền trong danh sách user . Điều kiện kích hoạt Admin chọn xem danh sách quyền user . Các bước thực hiện 1. Admin chọn xem . 2. Hệ thống t rả lại trang xem danh sách các quyền user trong hệ thống (không có sinh viên ). K ết quả Đưa đến trang danh sách các quyền của user . Trường hợp lỗi Bảng 3 : Ca sử dụng chọn quản lý quyền user Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 20 Tên ca sử dụng Quản lý danh sách sinh viên Người dùng Phòng CTSV Mô tả Cho phép Phòng CTSV xem, thêm, sửa, xó a danh sách sinh viên . Điều kiện kích hoạt Phòng CTSV chọn quản lý danh sách . Các bước thực hiện 1. Phòng CTSV điền đầy đủ thông tin sinh viên . 2. Admin thêm, sửa, xóa sinh viên . 3. Hệ thống lưu thông sinh viên . 4. Trả lại thông báo đưa đến trang danh sách các si nh viên . Kết quả Thông báo và đưa đến trang danh sách các sinh viên . Trường hợp lỗi 1. Hệ thống kiểm tra các thông tin bắt buộc. 2. Thông báo yêu cầu Phòng CTSV nhập các thông tin bắt buộc. Bảng 4 : Ca sử dụng quản lý danh sách sinh vi ên Tên ca sử dụng Tạo đề Người dùng Giảng viên Mô tả Cho phép giảng viên tạo đề thi . Điều kiện kích hoạt Giảng viên chọn tạo bài thi nếu chưa có bài thi trong danh sách bài thi . Các bước thực hiện 1. Giảng viên điền đầy đủ thông tin đề thi . 2. Hệ th ống lưu thông đề thi . 3. Trả lại thông báo đưa đến trang danh sách các câu hỏi trong đề thi . Kết quả Thông báo và đưa đến trang danh sách các câu hỏi trong bài thi . Trường hợp lỗi 1. Hệ thống kiểm tra các thông tin bắt buộc. 2. Thông báo yêu cầu Giảng viên nhập c ác thông tin bắt buộc. Bảng 5 : Ca sử dụng tạo đề thi Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 21 Tên ca sử dụng Tạo kỳ thi Người dùng Giảng viên Mô tả Cho phép tạo thông tin cần thiết của 1 bài thi . Điều kiện kích hoạt Giảng viên chọn tạo kỳ thi Các bước thực hi ện 1. Giảng viên dùng chọn tạo kỳ thi 2. Điền đẩy đủ các thông tin 3. Hệ thống lưu thông tin kỳ thi 4. Trả lại thông báo và đưa đến trang cá nhân giảng viên Kết quả Thông báo và đưa đến trang cá nhân giảng viên Trường hợp lỗi Bảng 6 : Ca sử dụng tạo kỳ thi Tên ca sử dụng Tổ chức thi Người dùng Giảng viên Mô tả Cho phép tổ chức các kỳ thi . Điều kiện kích hoạt Giảng viên chọn tổ chức các kỳ thi. Các bước thực hiện 1. Giảng viên chọn tổ chức thi 2. Điền đẩy đủ các thông tin trong phần t ổ chức thi 3. Hệ thống lưu thông tin trong phần tổ chức thi 4. Trả lại thông báo và đưa đến trang cá nhân Kết quả Thông báo và đưa đến trang cá nhân Trường hợp lỗi Bảng 7 : Ca sử dụng tổ chức thi Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 22 Tên ca sử dụng Thi Người dùng Sinh viên Mô tả Cho phép sinh viên tham gia thi . Điều kiện kích hoạt Sinh viên click vào đường link bài thi Các bước thực hiện 1. Sinh viên click vào đường link bài thi 2. Hệ thống điều hướng đến phần làm bài thi của sinh viên Kết quả Hiển thị trang thi để sinh viên làm bài thi . Trường hợp lỗi Bảng 8 : Ca sử dụng tham gia thi Tên ca sử dụng Xem lịch sử thi Người dùng Sinh viên Mô tả Cho phép sinh viên xem lại lịch sử các lần thi . Điều kiện kích hoạt Sinh viên click vào xem lịch sử thi Các bước thực hiện 1. Sinh viên click vào đường link xem lịch sử thi 2. Hệ thống cập nhập và chuyển đến trang xem lịch sử thi cho sinh viên Kết quả Hiển thị danh sách lịch sử thi của sinh viên . Trường hợp lỗi Bảng 9 : Ca sử dụng xem lịch sử thi của sinh viên Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 23 2.2.4. Biểu đồ tuần tự Một số biểu đồ tuần tự tổng quát sau sẽ cho thấy rõ hơn sự tương tác cơ bản giữa các thành phần của Website trong một số chức năng quan trọng. 2.2.4.1. Đăng nhập Hình 13: Biểu đồ tuần tự chức năng Đăng nhập Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 24 2.2.4.2. Đăng ký tổ chức thi Hình 14: Biểu đồ tuần tự chức năng đăng ký bài thi (tổ chức thi) 2.2.5. Biểu đồ hoạt động Một số biểu đồ hoạt động tổng quát sau sẽ mô tả các hoạt động hay một chuỗi các hoạt động xảy ra trong quá trình thực hiện chức năng của hệ thống Website . Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 25 2.2.5.1. Sơ đồ khối hoạt động chức năng đăng nhập Hình 16: Sơ đồ khối thực hiện chức năng đăng nhập 2.2.5.2. Biểu đồ hoạt động các chức năng tổ chức thi của giảng viên Hình 17: Biểu đồ hoạt động chức năng đăng nhập 2.2.5.3. Biểu đồ hoạt động các chức năng tham gia thi của sinh viên Hình 18: Biểu đồ hoạt động chức năng vào thi Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 26 2.2.6. Biểu đồ lớp Một lớp (class) là một tập hợp các đối tượng có cùng cấu trúc, cùng hành vi... Biểu đồ lớp thể hiện các khối của bất kỳ hệ thống hướng đối tượng nào. Biểu đồ lớp mô tả cái nhìn tĩnh của mô hình hoặc một phần của mô hình, miêu tả những thuộc tí nh và hành vi một cách chi tiết . Hình 19 : Biểu đồ lớp Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 27 2.2.7. Thiết kế cơ sở dữ liệu Hình 15: Thiết kế cở sở dữ liệu 2.3. K ết chương Chương này cung cấp cho người đọc cái nhìn tổng quan về nghiệp vụ Thi trắc nghiệm tiếng Anh trực tuyến . Đồng thời tiến hành phân tích & thiết kế hệ thống Website Thi trắc nghiệm tiếng Anh trực tuyến đáp ứng mô hình nghiệp vụ nêu trên . Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 28 CHƯƠNG 3: TRIỂN KHAI VÀ ĐÁNH GIÁ 3.1. Yêu cầu cấu hình máy chủ Để triển khai và đưa Hệ thống đi vào hoạt động một cách ổn định, máy chủ cần đáp ứng được một số yêu cầu sau: − Hệ điều hành: Windows Server 2008 trở lên; − Java 8 trở lên; − Struts F ramework 1 .0 ; − Microsoft SQL Server 2012 ; − Eclipse Neon; 3.2. Giao diện hệ thống Website 3.2.1. Giao diện một số chức năng của admin Hình 16: Giao diện chức năng đăng nhập của hệ thống Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 29 Tại giao diện này, user sẽ được yêu cầu đăng nhập vào h ệ thống . Tùy vào quyền của mỗi user mà hệ thống sẽ điều hướng đến trang cá nhân theo nghiệp vụ đã được cài đặt sẵn. Hình 17: Gia diện chức năng quản lý user của admin Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 30 3.2.2. Giao diện một số chức năng của phòng công tác sinh viên Hình 18: Giao diện chức năng import danh sách sinh viên của nhân viên phòng ban Hình 19: Giao diện chức năng quản lý danh sách và in bảng điểm sinh viên Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 31 3.2.3. Giao diện một số chức năng của giảng viên Những user có role là giảng viên sẽ được đưa đến trang giảng viên, tại đây giảng viên có các chức năng tạo đề thi, tạo bài thi, tổ chức thi. Hình 20: Giao diện chức năng tổ chức thi của giảng viên Sau khi tổ chức thi thành công, những sinh viên trong nhóm thi sẽ được cập nhật bài thi để thi, những nhóm sinh viên nào ko có trong danh sách sẽ không thi. Hình 21: Giao diện tạo mới bài thi Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 32 Hình 22: Giao diện chức năng tạo mới câu hỏi đề thi 3.2.4. Gi ao diện một số chức năng của sinh viên Những user có role là sinh viên thì sau khi đăng nhập sẽ được hệ thống điều hướng đến trang cá nhân của sinh viên, tại đây sinh viên có thể xem lịch sử các lần thi và click vào bài thi được giáo viên đề nghị thi. Hình 23: Giao diện chức năng hiển thị trang cá nhân của sinh viên Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 33 Hình 24 : Giao diện hiển thị mô tả bài thi Hình 25: Giao diện bắt đầu thi Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 34 Hình 26: Giao diện chức năng thi phần đọc Đầu tiên chúng ta sẽ thi phần đọc và hình 32 cho thấy giao diện phần đọc Ở phần này em đã áp dụng thuật toán xáo trộn không lặp để thực hiện xáo trộn đề thi nhằm mục đích tạo sự khách quan, công bằng và tránh gian lận trong kiểm tr a. Đây là nội dung thuật toán : //xáo trộn không lặp một dãy số từ So_min đến So_max; Map list1; // list trước khi tráo Int So_min; Int So_max; Map list2; // list sau khi tráo For i=0 to (So_max – So_min){ Do{ R = So_min + rand()%(So_max-So_min); // r là số được tạo ra trong khoảng đã cho }while(list2.find(r) != list2.end()); // kiểm tra xem số vừa tạo có trong list2 chưa. L ist2 .insert ( std::pair ( I , list1.get _value ); // insert vào list mới } Hình 33: Giao diện cho chức năng thi phần nghe Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 35 Và cuối cùng, sau khi thi xong thí sinh click submit, giao diện sẽ chuyển đến trang kết quả tổng kết. Hình 34 : Giao diện hiển thị kết quả sau khi thi Hình 35: Giao diện hiển thị kết quả sau khi click quay lại trang cá nhân Sau khi quay lại trang cá nhân từ màn hình kết thúc thi, sinh viên sẽ được thấy điểm số cho từng phần thi của mình. Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 36 3.3. K ết chương Chương này tr ì nh bày một số yêu cầu đối với môi trường triển khai hệ thống w ebsite , quá trình vận hành hệ thống w ebsite trong thực tế giúp người đọc có cái nhìn tổng quan và cụ thể hơn về hệ thống w ebsite thi trắc nghiệm tiếng anh trực tuyến . Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 37 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 1. Kết quả đạt được Trong thời gian tìm hiểu, nghiên cứu cơ sở lý thuyết và triển khai ứng dụng công nghệ, đồ án đã đạt được những kết quả sau: Về mặt lý thuyết : − Ứng dụng các kiến thức đã học để phân tích nghiệp vụ của hệ thống w ebsite t hi trắc nghiệm tiếng Anh trực tuyến ; − S ử dụng mô hình logic MVC để triển khai xây dựng hệ thống w ebsite trên cơ sở công nghệ Java servlet / jsp ; − S ử dụng Struts Framework và SQL Server để tương tác CSDL. Về mặt thực tiễn ứng dụng : Đ ã xây dựng được hệ thống w ebsite t hi trắc nghiệm tiếng Anh trực tuyến và triển khai thực tế. Tuy nhiên, đồ án còn tồn tại các vấn đề như sau: − Cần phát triền thêm các chức năng th i phần viết và nói … ; − Vấn đề bảo mật với thông tin của w ebsite còn hạn chế. 2. H ướng phát triển Một số số hướng nghiên cứu và phát triển của đề tài như sau: − Phát triền thêm các chức năng thông báo điểm qua email … − Nghiên cứu sử dụng thêm các thuật toán mớ i vào w ebsite như thuật toán sắp xếp tổ chức các bài thi , thuật toán chấm thi cho chính xác … Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến SVTH: Phạm Ngọc Được GVHD: ThS. Nguyễn Văn Nguyên 38 TÀI LIỆU THAM KHẢO Tiếng Việt [1] Mai Văn Hà , Slide bài giảng môn Lập trình Web , Tài liệu lưu hành nội bộ, 2011. [2] Nguyễn Trọng Trí, Nghiên cứu mô hình MVC trong lập trình Java , 2011. [3] Đặng Hoài Phương, Slide bài giảng môn Lập trình hướng đối tượng trong C++ , Tài liệu lưu hành nội bộ, 2011. [4] Nguyễn Văn Nguyên, bài giảng môn tin học đại cương , 2011. [5] Lê Thị Mỹ Hạnh , Slide bài giảng môn phân tích thiết kế hướng đối tượng , Tài liệu lưu hành nội bộ, 2011. [6] Phan Huy Khánh , Tài liệu phân tích thiết kế hệ thống, lưu hành nội bộ , 2011. [7] Phạm Minh Tuấn , Slide bài giảng môn Lập trình Java , Tài liệu lưu hành nội bộ, 2011. [8] Đậu Quang Tuấn, tự học thiết kế trang web bằng javascript năm 2008. Tiếng Anh [9] Birian Driscoll, Nitin Gupta, Robert Vettor, Zeeshan Hirani, Larry Tenny, Entity Framework 6 Recipes, 2012. [10] Chistian Nagel, Jay Glynn, Morgan Skinner, Bill Evje n, Karli Watson, Proffesional Java 2012 And Struts 4.5, 2012.

Phân tích hiện trạng thi trắc nghiệm tiếng Anh trực tuyến

Hiện nay phổ cập tiếng Anh cho toàn bộ sinh viên và học sinh đang là vấn đề cấp thiết tại các trường đại học, cao đẳng và trung học phổ thông Nhằm mục đích hỗ trợ hiệu quả cho các trường học tổ chức quản lý và đánh giá chính xác trình độ tiếng Anh của học sinh sinh viên nên em đã xây dựng hệ thống thi trắc nghiệm tiếng Anh trực tuyến tại trường đại học Bách Khoa Đà Nẵng.

Nghiên cứu lý thuyết

Tổng quan về Java Servlet / Jsp

Công nghệ Servlet được sử dụng để tạo ra ứng dụng web (nằm ở phía máy chủ và tạo ra trang web động) Sử dụng Servlet, bạn có thể thu thập thông tin đầu vào từ người dùng thông qua các trang web, hiển thị các bản ghi từ một cơ sở dữ liệu hoặc một nguồn khác.Công nghệ servlet là mạnh mẽ và có khả năng mở rộng Trước Servlet, ngôn ngữ kịch bản CGI (Common Gateway Interface) được sử dụng phổ biến như một ngôn ngữ lập trình phía máy chủ

Servlet có thể được mô tả bằng nhiều cách, tùy thuộc vào ngữ cảnh:

 Servlet là một công nghệ được sử dụng để tạo ra ứng dụng web

 Servlet là một API cung cấp các interface và lớp bao gồm các tài liệu

 Servlet là một thành phần web được triển khai trên máy chủ để tạo ra trang web động

Có nhiều interface và các lớp trong API servlet như Servlet, GenericServlet, HttpServlet, ServletRequest, ServletResponse,

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 4

Sơ đồ dưới đây cho thấy vị trí của Servlets trong một Ứng dụng Web

Hình 1: Sơ đồ kiến trúc của Servlet

Servlet thực hiện các nhiệm vụ chính sau đây:

 Đọc dữ liệu rõ ràng do khách hàng (trình duyệt) gửi Điều này bao gồm một mẫu HTML trên một trang Web hoặc nó cũng có thể đến từ một applet hoặc một chương trình khách hàng HTTP tùy chỉnh

 Đọc dữ liệu yêu cầu HTTP ẩn được gửi bởi khách hàng (trình duyệt) Điều này bao gồm các cookie, loại phương tiện truyền thông và các chương trình nén mà trình duyệt hiểu được, v.v

 Xử lý dữ liệu và tạo ra các kết quả Quá trình này có thể yêu cầu nói chuyện với một cơ sở dữ liệu, thực hiện một cuộc gọi RMI hoặc CORBA, gọi một dịch vụ Web, hoặc tính trực tiếp phản hồi

 Gửi dữ liệu rõ ràng (tức là tài liệu) tới khách hàng (trình duyệt) Tài liệu này có thể được gửi bằng nhiều định dạng, bao gồm văn bản (HTML hoặc XML), nhị phân (hình ảnh GIF), Excel, v.v

 Gửi phản hồi HTTP ẩn cho khách hàng (trình duyệt) Điều này bao gồm nói với trình duyệt hoặc các trình khách khác loại tài liệu đang được trả về (ví dụ, HTML), thiết lập cookie và các tham số bộ nhớ đệm, và các tác vụ khác

Các lớp của gói servlet thực hiện các đặc tả Java Servlet và JSP Các servlet Java đã được tạo ra và biên dịch giống như các lớp Java khác Sau khi cài đặt gói servlet và thêm chúng vào Classpath của máy tính, bạn có thể biên dịch các servlet bằng trình dịch Java của JDK hoặc bất kỳ trình biên dịch hiện tại nào khác

JSP là viết tắt của JavaServer Pages là một công nghệ để phát triển các trang web động JSP giúp các nhà phát triển chèn java code vào các trang HTML bằng cách sử dụng các thẻ JSP đặc biệt

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 5

JSP là một kiểu Java servlet được thiết kế để tạo ra giao diện người dùng cho một ứng dụng Java web Các nhà phát triển web viết các JSP như các tệp văn bản kết hợp mã HTML hoặc XHTML, các phần tử XML, các action và lệnh JSP

Sử dụng JSP, bạn có thể thu thập dữ liệu đầu vào từ người dùng thông qua các Form của trang web, trình bày các bản ghi từ một cơ sở dữ liệu hoặc một nguồn khác, và tạo các trang web động

Các thẻ JSP có thể được sử dụng cho nhiều mục đích khác nhau, chẳng hạn như truy xuất thông tin từ cơ sở dữ liệu hoặc đăng ký mới, truy cập các thành phần JavaBeans, kiểm soát giữa các trang và chia sẻ thông tin giữa các request, các trang vv

Hình 2: Sơ đồ kiến trúc của jsp

Mô hình MVC (Model – View - Controller)

Mô hình MVC là một chuẩn mô hình và đóng vai trò quan trọng trong quá trình xây dựng – phát triển – vận hành và bảo trì một hệ thống hay một ứng dụng – phần mềm Nó tạo ra một mô hình 3 lớp Model – View – Controller (hình 1.2) tách biệt và tương tác nhau, giúp các chuyên gia có thể dễ dàng dựa vào mô hình để trao đổi và xử lý những nghiệp vụ một cách nhanh chóng Mô hình MVC có thể áp dụng cho các dự án trong môi trường Windows, Linux… và sử dụng bất kỳ ngôn ngữ nào như PHP, ASP, JSP…

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 6

Mô hình MVC được chia làm 3 lớp xử lý gồm Model – View – Controller:

- Model: là nơi chứa những nghiệp vụ tương tác với dữ liệu hoặc hệ quản trị cơ sở dữ liệu (mysql, mssql… ); nó sẽ bao gồm các class/function xử lý nhiều nghiệp vụ như kết nối database, truy vấn dữ liệu, thêm – xóa – sửa dữ liệu…;

- View: là nơi chứa những giao diện như một nút bấm, khung nhập, menu, hình ảnh… nó đảm nhiệm nhiệm vụ hiển thị dữ liệu và giúp người dùng tương tác với hệ thống ;

- Controller: là nơi tiếp nhận những yêu cầu xử lý được gửi từ người dùng, nó sẽ gồm những class/function xử lý nhiều nghiệp vụ logic giúp lấy đúng dữ liệu thông tin cần thiết nhờ các nghiệp vụ lớp Model cung cấp và hiển thị dữ liệu đó ra cho người dùng nhờ lớp View.

Tổng quan về Struts Framework

Struts framework ban đầu được tạo ra bởi Craig McClanahan và tặng cho Apache Foundation vào tháng 5 năm 2000 và Struts 1.0 đã được phát hành vào tháng 6 năm 2001 Phiên bản ổn định hiện tại của Struts là 2.3.33 được phát hành vào tháng 7 năm 2017

Struts Framework được xây dựng trên mô hình MVC phân tầng, phân lớp, giúp dễ quản lý và bảo trì Bên cạnh đó, hỗ trợ nhiều các thể Struts Tag trong file

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 7

Jsp giúp các lập trình viên làm việc nhanh chóng và hiệu quả hơn khi tạo và phát triển project trên nền tảng này

Struts là một tập hợp các thư viện Java và có thể chia ra làm các nhóm sau:

+Validator plugin a Framework cơ sở

Framework cơ sở cung cấp các tính năng MVC cốt lõi Nền tảng của framework cơ sở là Controller servlet: ActionServlet Phần còn lại của framework cơ sở bao gồm các lớp cơ sở mà ứng dụng của bạn sẽ extend và các class tiện ích Nổi bật nhát trong các lớp cơ sở là lớp Action và lớp ActionForm Lớp Action được sử dụng bởi ActionServlet để sử lý các request xác định Lớp ActionForm được sử dụng để capture dữ liệu từ các HTML form và được sử dụng để chuyển dữ liệu trở lại View để generate response b Thư viện thẻ JSP

Struts đưa ra các thư viện thẻ để hỗ trợ việc lập trình View logic trong JSP Các thư viện thẻ JSP cho phép các JSP author sử dụng các thẻ giống HTML

+ HTML: Sử dụng để generate các THML form tương tac với Struts API

+ Bean: Sử dụng để làm việc với các Java bean object trong JSP

+ Logic: Sử dụng để implement các logic điều kiện đơn giản trong JSP

+ Nested: Sử dụng để cho phép các mức nested tùy ý c Tiles plugin

Tiles là một JSP template framework giúp thuận tiện cho việc tái sử dụng mã HTML d Validator plugin

Validator là một framework với khả năng thực hiện xác nhận tính hợp lệ của dữ liệu ở cả phía server và client

5 Chu kì sống của một Struts

Trước khi đi vào chi tiết các lớp, nghía qua một chút về tiến trình thực hiện của một ứng dụng Web sử dụng Struts cũng có lẽ không thừa

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 8

1 Trình duyệt tạo một request tới ứng dụng Struts sẽ được xử lý bới ActionServlet (Controller)

2 ActionServlet (Controller) populate subclass của ActionForm (View), do ta viết, với dữ liệu form HTML và invoke method validate() của nó

3 ActionServlet (Controller) execute subclass của Action do ta viết (Controller)

4 Subclass của Action (Controller) đó sẽ tương tác với model component và chuẩn bị dữ liệu cho để hiển thị

5 Sau đó subclass của Action (Controller) đó sẽ chuyển điều khiển tới JSP (View)

6 JSP (View) sử dụng dữ liệu nhận được để generate response về cho trình duyệt

Hình 4: Kiến trúc struts 1 Framework

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 9

Tổng quan về công nghệ Ajax

Ajax là viết tắt của cụm từ "Asynchronous JavaScript And XML" Ajax không phải là một ngôn ngữ lập trình hay công cụ Ajax là phương thức trao đổi dữ liệu với máy chủ và cập nhật các phần của trang web - mà không cần tải lại toàn bộ trang Ajax chính nó là một thuật ngữ chung cho các kỹ thuật JavaScript khác nhau được sử dụng để kết nối với máy chủ web tự động mà không nhất thiết phải tải lại trang Về mặt kỹ thuật, nó đề cập đến việc sử dụng các đối tượng XmlHttpRequest để tương tác với một máy chủ web động thông qua JavaScript.

Hình 5: Sơ đồ hoạt động của Ajax

+ Gọi một sự kiện (event) trên trang web (trang web được tải xong, click button, )

+ Một đối tượng XMLHttpRequest được tạo ra bởi JavaScript

+ Đối tượng XMLHttpRequest gửi một request tới web server

+ Server gửi một response trả lại trang web

+ Response này được đọc bởi JavaScript

+ Cập nhật thay đổi lên trang web (không cần tải lại trang web)

Có 4 lợi ích chính của việc sử dụng Ajax trong các ứng dụng web:

 Callbacks: Ajax được sử dụng để thực hiện một cuộc gọi lại, thực hiện việc truy xuất và / hoặc lưu dữ liệu mà không gửi toàn bộ trang trở lại máy chủ Bằng cách gửi lại một phần trang web đến máy chủ, việc sử

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 10 dụng mạng được giảm thiểu và các hoạt động diễn ra nhanh hơn Trong các trang web băng thông hạn chế, điều này có thể cải thiện đáng kể hiệu suất mạng Dữ liệu được gửi đến và đi từ máy chủ một cách tối thiểu

 Thực hiện các cuộc gọi không đồng bộ: Ajax cho phép bạn thực hiện các cuộc gọi không đồng bộ đến một máy chủ web Điều này cho phép trình duyệt của người dùng tránh phải chờ tất cả dữ liệu đến trước khi cho phép người dùng hành động một lần nữa

 Thân thiện với người dùng: Vì không phải post lại trang lên server, các ứng dụng hỗ trợ Ajax sẽ luôn nhanh hơn và thân thiện với người dùng hơn

 Tăng tốc độ: Mục đích chính của Ajax là cải thiện tốc độ, hiệu suất và khả năng sử dụng của một ứng dụng web Một ví dụ tuyệt vời của Ajax là tính năng xếp hạng phim trên Netflix Người dùng đánh giá một bộ phim và xếp hạng cá nhân của họ cho bộ phim đó sẽ được lưu vào cơ sở dữ liệu của họ mà không cần chờ trang làm mới hoặc tải lại.

Kết chương

Chương này cung cấp cho người đọc thực trạng vấn đề quản lý của các trường đại học hiện nay nói chung và Trường đại học bách khoa nói riêng và cần thiết phải xây dựng hệ thống Website Thi trắc nghiệm tiếng Anh trực tuyến Đồng thời phân tích các cơ sở lý thuyết, giải pháp để triển khai xây dựng hệ thống Website Thi trắc nghiệm tiếng Anh trực tuyến

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 11

PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 11 2.1 Phân tích nghiệp vụ hệ thống

Nghiệp vụ của Admin

− Quản lý danh sách user: cho phép admin quản lý thông tin của user bao gồm giảng viên, nhân viên phòng công tác sinh viên;

− Quản lý quyền user: cho phép admin quản lý danh sách các quyền của user: xem, thêm mới, sửa, xóa;

Nghiệp vụ của phòng công tác sinh viên

− Import danh sách sinh viên: cho phép nhân viên phòng công tác sinh viên có thể thêm danh sách sinh viên từ file excel;

− Quản lý danh sách sinh viên: cho phép nhân viên phòng công tác sinh viên thêm, sửa, xóa danh sách sinh viên;

− Quản lý và In điểm: cho phép nhân viên phòng công tác sinh viên quản lý và in điểm sinh viên ra file pdf;

Nghiệp vụ của giảng viên

− Tạo mới đề thi: cho phép giảng viên tạo mới đề thi

− Tạo mới kỳ thi: cho phép giảng viên tạo mới kỳ thi

− Tổ chức thi: cho phép giảng viên tổ chức thi

2.1.4 Nghiệp vụ của Sinh viên

− Xem lịch sử các lần thi: cho phép sinh viên xem lịch sử các lần thi

− Tham gia vào thi: cho phép sinh viên trực tiếp tham gia thi

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 12

Thiết kế hệ thống

2.2.1 Sơ đồ phân rã chức năng

Sơ đồ này cho thấy một cách tổng quát và toàn diện các chức năng, phạm vi thực hiện của Website

Hình 6: Sơ đồ phân rã chức năng của hệ thống

2.2.2 Biểu đồ ca sử dụng

Biểu đồ ca sử dụng (use case) mô tả các chức năng, sự tương tác đặc trưng giữa người dùng và Website Nó mô tả các yêu cầu đối với Website hiện tại, những gì Website phải làm.

2.2.2.1 Tổng quát các chức năng quản lý của Admin

Hình 7: Biểu đồ ca sử dụng chức năng Quản lý chung

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 13

Hình 2.4: Biểu đồ ca sử dụng chức năng Quản lý user

Hình 2.5: Biểu đồ ca sử dụng của chức năng quản lý quyền user

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 14

2.2.2.2 Tổng quát các chức năng của phòng CTSV

Hình 8:Biểu đồ ca sử dụng chức năng quản lý danh sách sinh viên

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 15

Hình 9: Biểu đồ ca sử dụng của chức năng quản lý điểm

2.2.2.3 Tổng quát các chức năng của Giảng viên

Hình 10: Biểu đồ ca sử dụng của chức năng ra đề

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 16

Hình 11: Biểu đồ ca sử dụng của chức năng quản lý danh sách kỳ thi

2.2.2.4 Tổng quát các chức năng của Sinh viên

Hình 12: Biểu đồ ca sử dụng của chức năng tham gia thi

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 17

Hình 2.8: Biểu đồ ca sử dụng của chức năng xem lịch sử thi

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 18

2.2.3 Đặc tả ca sử dụng Đặc tả ca sử dụng là quá trình mô tả cách các tác nhân tương tác, thực hiện ca sử dụng cho phép người dùng hiểu rõ hơn về cách sử dụng chức năng đó

Tên ca sử dụng Đăng nhập

Người dùng Admin, phòng CTSV, Giảng viên, Sinh viên

Mô tả Cho phép Admin đăng nhập vào phần quản lý

Cho phép Phòng CTSV đăng nhập vào phần quản lý và in điểm

Cho phép Giảng viên đăng nhập vào phần quản lý và tổ chức thi

Cho phép Sinh viên đăng nhập vào phần để thi Điều kiện kích hoạt Người dùng vào trang đăng nhập hoặc truy cập các trang dành cho người dùng nhưng chưa đăng nhập

1 Người dùng nhập các thông tin tên đăng nhập và mật khẩu

2 Hệ thống kiểm tra dữ liệu nhập là đúng

3 Đưa đến trang quản lý hoặc trang chủ

Kết quả Đưa đến trang quản lý theo quyền của user hoặc trang chủ

Trường hợp lỗi 1 Người dùng không nhập các thông tin tên đăng nhập và mật khẩu

2 Hệ thống kiểm tra dữ liệu nhập tên đăng nhập và mật khẩu sai

3 Thông báo lỗi ra màn hình

Bảng 1: Ca sử dụng đăng nhập

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 19

Tên ca sử dụng Quản lý user (Giảng viên và nhân viên phòng ban)

Mô tả Cho phép admin duyệt các thông tin trong danh sách user Điều kiện kích hoạt Admin chọn xem danh sách user

2 Hệ thống trả lại trang xem danh sách các user trong hệ thống (không có sinh viên )

Kết quả Đưa đến trang danh sách các user

Bảng 2: Ca sử dụng chọn xem danh sách user

Tên ca sử dụng Quản lý quyền user (Giảng viên và nhân viên phòng ban) Người dùng Admin

Mô tả Cho phép admin duyệt các thông tin quyền trong danh sách user Điều kiện kích hoạt Admin chọn xem danh sách quyền user

2 Hệ thống trả lại trang xem danh sách các quyền user trong hệ thống (không có sinh viên )

Kết quả Đưa đến trang danh sách các quyền của user

Bảng 3: Ca sử dụng chọn quản lý quyền user

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 20

Tên ca sử dụng Quản lý danh sách sinh viên

Mô tả Cho phép Phòng CTSV xem, thêm, sửa, xóa danh sách sinh viên Điều kiện kích hoạt Phòng CTSV chọn quản lý danh sách

1 Phòng CTSV điền đầy đủ thông tin sinh viên

2 Admin thêm, sửa, xóa sinh viên

3 Hệ thống lưu thông sinh viên

4 Trả lại thông báo đưa đến trang danh sách các sinh viên

Kết quả Thông báo và đưa đến trang danh sách các sinh viên

Trường hợp lỗi 1 Hệ thống kiểm tra các thông tin bắt buộc

2 Thông báo yêu cầu Phòng CTSV nhập các thông tin bắt buộc

Bảng 4: Ca sử dụng quản lý danh sách sinh viên

Tên ca sử dụng Tạo đề

Mô tả Cho phép giảng viên tạo đề thi Điều kiện kích hoạt Giảng viên chọn tạo bài thi nếu chưa có bài thi trong danh sách bài thi

1 Giảng viên điền đầy đủ thông tin đề thi

2 Hệ thống lưu thông đề thi

3 Trả lại thông báo đưa đến trang danh sách các câu hỏi trong đề thi

Kết quả Thông báo và đưa đến trang danh sách các câu hỏi trong bài thi

Trường hợp lỗi 1 Hệ thống kiểm tra các thông tin bắt buộc

2 Thông báo yêu cầu Giảng viên nhập các thông tin bắt buộc

Bảng 5: Ca sử dụng tạo đề thi

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 21

Tên ca sử dụng Tạo kỳ thi

Mô tả Cho phép tạo thông tin cần thiết của 1 bài thi Điều kiện kích hoạt Giảng viên chọn tạo kỳ thi

1 Giảng viên dùng chọn tạo kỳ thi

2 Điền đẩy đủ các thông tin

3 Hệ thống lưu thông tin kỳ thi

4 Trả lại thông báo và đưa đến trang cá nhân giảng viên

Kết quả Thông báo và đưa đến trang cá nhân giảng viên

Bảng 6: Ca sử dụng tạo kỳ thi

Tên ca sử dụng Tổ chức thi

Mô tả Cho phép tổ chức các kỳ thi Điều kiện kích hoạt Giảng viên chọn tổ chức các kỳ thi

1 Giảng viên chọn tổ chức thi

2 Điền đẩy đủ các thông tin trong phần tổ chức thi

3 Hệ thống lưu thông tin trong phần tổ chức thi

4 Trả lại thông báo và đưa đến trang cá nhân

Kết quả Thông báo và đưa đến trang cá nhân

Bảng 7: Ca sử dụng tổ chức thi

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 22

Tên ca sử dụng Thi

Mô tả Cho phép sinh viên tham gia thi Điều kiện kích hoạt Sinh viên click vào đường link bài thi

Các bước thực hiện 1 Sinh viên click vào đường link bài thi

2 Hệ thống điều hướng đến phần làm bài thi của sinh viên

Kết quả Hiển thị trang thi để sinh viên làm bài thi

Bảng 8: Ca sử dụng tham gia thi

Tên ca sử dụng Xem lịch sử thi

Mô tả Cho phép sinh viên xem lại lịch sử các lần thi Điều kiện kích hoạt Sinh viên click vào xem lịch sử thi

Các bước thực hiện 1 Sinh viên click vào đường link xem lịch sử thi

2 Hệ thống cập nhập và chuyển đến trang xem lịch sử thi cho sinh viên

Kết quả Hiển thị danh sách lịch sử thi của sinh viên

Bảng 9: Ca sử dụng xem lịch sử thi của sinh viên

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 23

Một số biểu đồ tuần tự tổng quát sau sẽ cho thấy rõ hơn sự tương tác cơ bản giữa các thành phần của Website trong một số chức năng quan trọng

Hình 13: Biểu đồ tuần tự chức năng Đăng nhập

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 24

2.2.4.2 Đăng ký tổ chức thi

Hình 14: Biểu đồ tuần tự chức năng đăng ký bài thi (tổ chức thi)

Một số biểu đồ hoạt động tổng quát sau sẽ mô tả các hoạt động hay một chuỗi các hoạt động xảy ra trong quá trình thực hiện chức năng của hệ thống Website

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 25

2.2.5.1 Sơ đồ khối hoạt động chức năng đăng nhập

Hình 16: Sơ đồ khối thực hiện chức năng đăng nhập

2.2.5.2 Biểu đồ hoạt động các chức năng tổ chức thi của giảng viên

Hình 17: Biểu đồ hoạt động chức năng đăng nhập 2.2.5.3 Biểu đồ hoạt động các chức năng tham gia thi của sinh viên

Hình 18: Biểu đồ hoạt động chức năng vào thi

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 26

Một lớp (class) là một tập hợp các đối tượng có cùng cấu trúc, cùng hành vi Biểu đồ lớp thể hiện các khối của bất kỳ hệ thống hướng đối tượng nào Biểu đồ lớp mô tả cái nhìn tĩnh của mô hình hoặc một phần của mô hình, miêu tả những thuộc tính và hành vi một cách chi tiết

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 27

2.2.7 Thiết kế cơ sở dữ liệu

Hình 15: Thiết kế cở sở dữ liệu

Kết chương

Chương này cung cấp cho người đọc cái nhìn tổng quan về nghiệp vụ Thi trắc nghiệm tiếng Anh trực tuyến Đồng thời tiến hành phân tích & thiết kế hệ thống Website Thi trắc nghiệm tiếng Anh trực tuyến đáp ứng mô hình nghiệp vụ nêu trên

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 28

TRIỂN KHAI VÀ ĐÁNH GIÁ 28 3.1 Yêu cầu cấu hình máy chủ

Giao diện hệ thống Website

3.2.1 Giao diện một số chức năng của admin

Hình 16: Giao diện chức năng đăng nhập của hệ thống

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 29

Tại giao diện này, user sẽ được yêu cầu đăng nhập vào hệ thống Tùy vào quyền của mỗi user mà hệ thống sẽ điều hướng đến trang cá nhân theo nghiệp vụ đã được cài đặt sẵn

Hình 17: Gia diện chức năng quản lý user của admin

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 30

3.2.2 Giao diện một số chức năng của phòng công tác sinh viên

Hình 18: Giao diện chức năng import danh sách sinh viên của nhân viên phòng ban

Hình 19: Giao diện chức năng quản lý danh sách và in bảng điểm sinh viên

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 31

3.2.3 Giao diện một số chức năng của giảng viên

Những user có role là giảng viên sẽ được đưa đến trang giảng viên, tại đây giảng viên có các chức năng tạo đề thi, tạo bài thi, tổ chức thi

Hình 20: Giao diện chức năng tổ chức thi của giảng viên

Sau khi tổ chức thi thành công, những sinh viên trong nhóm thi sẽ được cập nhật bài thi để thi, những nhóm sinh viên nào ko có trong danh sách sẽ không thi

Hình 21: Giao diện tạo mới bài thi

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 32

Hình 22: Giao diện chức năng tạo mới câu hỏi đề thi

3.2.4 Giao diện một số chức năng của sinh viên

Những user có role là sinh viên thì sau khi đăng nhập sẽ được hệ thống điều hướng đến trang cá nhân của sinh viên, tại đây sinh viên có thể xem lịch sử các lần thi và click vào bài thi được giáo viên đề nghị thi

Hình 23: Giao diện chức năng hiển thị trang cá nhân của sinh viên

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 33

Hình 24: Giao diện hiển thị mô tả bài thi

Hình 25: Giao diện bắt đầu thi

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 34

Hình 26: Giao diện chức năng thi phần đọc Đầu tiên chúng ta sẽ thi phần đọc và hình 32 cho thấy giao diện phần đọc Ở phần này em đã áp dụng thuật toán xáo trộn không lặp để thực hiện xáo trộn đề thi nhằm mục đích tạo sự khách quan, công bằng và tránh gian lận trong kiểm tra Đây là nội dung thuật toán:

//xáo trộn không lặp một dãy số từ So_min đến So_max;

Map list1; // list trước khi tráo

Map list2; //list sau khi tráo

For i=0 to (So_max – So_min){

R = So_min + rand()%(So_max-So_min); // r là số được tạo ra trong khoảng đã cho

}while(list2.find(r) != list2.end()); // kiểm tra xem số vừa tạo có trong list2 chưa

List2.insert( std::pair( I,list1.get_value);// insert vào list mới

Hình 33: Giao diện cho chức năng thi phần nghe

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 35

Và cuối cùng, sau khi thi xong thí sinh click submit, giao diện sẽ chuyển đến trang kết quả tổng kết

Hình 34: Giao diện hiển thị kết quả sau khi thi

Hình 35: Giao diện hiển thị kết quả sau khi click quay lại trang cá nhân

Sau khi quay lại trang cá nhân từ màn hình kết thúc thi, sinh viên sẽ được thấy điểm số cho từng phần thi của mình

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 36

Kết chương

Chương này trình bày một số yêu cầu đối với môi trường triển khai hệ thống website, quá trình vận hành hệ thống website trong thực tế giúp người đọc có cái nhìn tổng quan và cụ thể hơn về hệ thống website thi trắc nghiệm tiếng anh trực tuyến

SVTH: Phạm Ngọc Được GVHD: ThS Nguyễn Văn Nguyên 37

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

Trong thời gian tìm hiểu, nghiên cứu cơ sở lý thuyết và triển khai ứng dụng công nghệ, đồ án đã đạt được những kết quả sau:

− Ứng dụng các kiến thức đã học để phân tích nghiệp vụ của hệ thống website thi trắc nghiệm tiếng Anh trực tuyến;

− Sử dụng mô hình logic MVC để triển khai xây dựng hệ thống website trên cơ sở công nghệ Java servlet / jsp;

− Sử dụng Struts Framework và SQL Server để tương tác CSDL

Về mặt thực tiễn ứng dụng: Đã xây dựng được hệ thống website thi trắc nghiệm tiếng Anh trực tuyến và triển khai thực tế

Tuy nhiên, đồ án còn tồn tại các vấn đề như sau:

− Cần phát triền thêm các chức năng thi phần viết và nói…;

− Vấn đề bảo mật với thông tin của website còn hạn chế.

Hướng phát triển

Một số số hướng nghiên cứu và phát triển của đề tài như sau:

− Phát triền thêm các chức năng thông báo điểm qua email…

− Nghiên cứu sử dụng thêm các thuật toán mới vào website như thuật toán sắp xếp tổ chức các bài thi, thuật toán chấm thi cho chính xác…

Ngày đăng: 25/02/2024, 11:10

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w