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

Xây dựng ứng dụng tham gia lớp học oline tự động theo thời khóa biểu của sinh viên

42 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 ứng dụng tham gia lớp học online tự động theo thời khóa biểu của sinh viên
Tác giả Bùi Thị Phương Thảo, Nguyễn Thái Sơn
Người hướng dẫn Cô Bùi Thị Phương Thảo
Trường học Trường Cao Đẳng Công Nghệ Thủ Đức
Chuyên ngành Công Nghệ Thông Tin
Thể loại Đề tài nghiên cứu khoa học
Năm xuất bản 2022
Thành phố TP Hồ Chí Minh
Định dạng
Số trang 42
Dung lượng 2,58 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

ỦY BAN NHÂN DÂN TP.HCM TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THỦ ĐỨCKHOA CÔNG NGHỆ THÔNG TIN NGHIÊN CỨU KHOA HỌC NĂM HỌC 2020 -2021Tên đề tài: Xây dựng ứng dụng tham gia lớp học online tự động theo

Trang 1

ỦY BAN NHÂN DÂN TP.HCM TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THỦ ĐỨC

KHOA CÔNG NGHỆ THÔNG TIN

NGHIÊN CỨU KHOA HỌC NĂM HỌC 2020 -2021Tên đề tài: Xây dựng ứng dụng tham gia lớp học online tự

động theo thời khóa biểu của sinh viên

GIẢNG VIÊN HƯỚNG DẪN

(Ký, ghi rõ họ tên)

Bùi Thị Phương Thảo

TÁC GIẢ/ CHỦ NHIỆM ĐỀ TÀI

(Ký, Ghi rõ họ tên)

Nguyễn Thái Sơn

TRƯỞNG KHOA

(Ký, Ghi rõ họ tên)

Lê Diên Tâm

TP Hồ Chí Minh, ngày 09 tháng 07 năm 2022

Trang 2

LỜI CẢM ƠN

Lời đầu tiên xin chân thành cám ơn Trường Cao Đẳng Công Nghệ Thủ Đức,Khoa Công nghệ thông tin, cô Bùi Thị Phương Thảo đã tạo mọi điều kiện, tậntâm hướng dẫn, truyền đạt kiến thức cũng như là cho em thêm ý kiến, nhận xét

để giúp em hoàn thành Đề tài Nghiên Cứu Khoa Học(NCKH) với tên đề tài là

“Xây dựng ứng dụng tham gia lớp học online tự động theo thời khóa biểu củasinh viên ”

Em đã phát triển ứng dụng này từ tháng 11 năm 2021 sau khi có ý tưởng vềứng dụng cũng như là đăng ký thực hiện đề tài NCKH với Khoa Công nghệthông tin Sau khi đăng ký đề tài và trình bày ý tưởng ra, em đã được thầy côủng hộ và tin tưởng về đề tài này Và em cũng bắt đầu phát triển, cài đặt vàtesting toàn bộ hệ thống cho đến tháng 5/2022

Cuối cùng, một lần nữa xin gửi lời cảm ơn chân thành nhất tới Trường CaoĐẳng Công Nghệ Thủ Đức, Khoa Công Nghệ Thông Tin và Cô Bùi ThịPhương Thảo

Kính chúc Thầy Cô có sức khỏe và thành công trong sự nghiệp!

Em xin chân thành cảm ơn!

Sinh viên Nguyễn Thái Sơn

Trang 4

1 Hướng dẫn chỉnh tự động mở máy trong BIOS 31

2 Hướng dẫn thêm, xóa, sửa lịch học 34

Trang 5

Hình 14: Hướng dẫn xóa, sửa lịch học 34Hình 15: Hệ thống tự động vào trang google meet của lớp học 35Hình 16: Hệ thống tự động bấm vào nút "Tham gia ngay" 35Hình 17: Hệ thống tự động tắt mic và tắt camera 36Hình 18: Hệ thống tự động lưu video đã quay vào ổ đĩa đã cài đặt 36

Trang 6

DANH MỤC SƠ ĐỒ

Sơ đồ 4: Quy trình ghi màn hình buổi học 21

Sơ đồ 5: Sơ đồ usecase của hệ thống 23

Trang 7

I PHẦN MỞ ĐẦU

1 Tính cấp thiết của đề tài

- Vào thời điểm dịch covid diễn biến phức tạp tại Việt Nam nói chung, và thành phố

Hồ Chí Minh nói riêng, việc đóng cửa trường học và cho sinh viên học online tạinhà là vô cùng cần thiết Việc này giúp sinh viên tránh tập trung đông người vàtránh tiếp xúc trực tiếp với nhau nơi công cộng nhằm ngăn chặn dịch bệnh lây lan

- Tuy trường học đóng cửa nhưng việc học và dạy học của sinh viên và giáo viênvẫn được tiếp tục bằng phương pháp dạy học trực tuyến thông qua Google Meet.Việc học của sinh viên vẫn diễn ra bình thường nhờ các tính năng tuyệt vời củaGoogle Meet Giáo viên có thể quan sát sinh viên ngồi trước màn hình, trình chiếubài giảng, theo dõi ý kiến của sinh viên và còn tận dụng nhiều tính năng củaGoogle để việc giảng dạy được dễ dàng hơn

- Tuy nhiên việc để nhớ đường dẫn đến các lớp học, thời khóa biểu, giờ học củasinh viên đôi lúc gặp khó khăn hơn so với việc đi học ở trường Và đi học đúnggiờ cũng là một vấn đề đối với sinh viên

- Và với đề tài này, ta sẽ giải quyết được:

● Tự động truy cập đúng đường link theo thời khóa biểu của sinh viên

● Tự động yêu cầu vào lớp và chờ đồng ý vào lớp của thầy cô

- Đó chính là những lý do, em thực hiện đề tài “Xây dựng ứng dụng tham gia lớphọc online tự động theo thời khóa biểu của sinh viên”

2 Mục đích đề tài

- Giúp sinh viên vào đúng lớp học theo thời khóa biểu

- Vào lớp học đúng giờ mà không phải tốn thời gian tìm đường dẫn

- Tự động vào lớp học mà không cần phải mở Google Meet

Trang 8

- Ngoài ra còn giúp sinh viên ghi lại màn hình của buổi học và tùy chỉnh độ phângiải và các thông số phù hợp với nhu cầu cá nhân để có thể xem lại bài khi cần và

có ích cho việc rèn luyện kiến thức

4 Định hướng phát triển của đề tài

- Ứng dụng được định hướng phát triển theo giai đoạn như sau:

● Giai đoạn A, phát triển hệ thống cơ bản trên giao diện và dữ liệu cứng đượcđặt sẵn

● Giai đoạn B, bắt đầu phát triển các chức năng bên phía quản trị viên, thêmxóa sửa các dữ liệu và lưu vào database

● Giai đoạn C, chuyển qua xây dựng cho phía người dùng, truy xuất các dữliệu của quản trị viên đã tạo và phát triển thêm các chức năng

● Giai đoạn D, vận hành và bảo trì hệ thống

5 Các phần mềm đã có trước đây

- Hiện tại chưa có phần mềm nào giống với phần mềm mà nhóm chúng em đangnghiên cứu và phát triển

6 Nội dung nghiên cứu

- Remote browser bằng Selenium

Trang 9

- Thiết kế sử dụng controls của Handy Control

- Dùng để quay video trên browser sử dụng Media Stream API

Trang 10

II CÁC CÔNG NGHỆ, KỸ THUẬT SỬ DỤNG TRONG ĐỀ

TÀI

1 Các công nghệ và kỹ thuật áp dụng

- Remote browser bằng Selenium

- Quay video bằng ScreenRecorderLib

- Thiết kế sử dụng controls của Handy Control

- Dùng để quay video trên browser sử dụng Media Stream API

2 Những ưu điểm và các lý do áp dụng công nghệ

2.1 Selenium

2.1.1 Giới thiệu

Selenium là một khung kiểm tra tự động mã nguồn mở, được sử dụng để xác thực cácứng dụng dựa trên web Nó cho phép chúng tôi thực hiện các bài kiểm tra trên cáctrình duyệt và nền tảng khác nhau Một số tiện ích của nó là:

Selenium hỗ trợ nhiều ngôn ngữ lập trình như Java, Python, C #, JavaScript, Ruby,PHP và Perl

Selenium cũng độc lập với nền tảng, có nghĩa là nếu bạn viết một bài kiểm traSelenium trong hệ điều hành Windows, bạn có thể dễ dàng thực thi tương tự trênLinux hoặc macOS

Các bài kiểm tra Selenium có thể được thực hiện trên nhiều trình duyệt, như Firefox,Chrome, Internet Explorer, Safari và Opera

Nó có một cộng đồng rộng rãi sẵn sàng hỗ trợ

Thực hiện kiểm tra song song là một trong những tính năng chính của Selenium.Các thành phần của Selenium là gì?

Trang 11

Như đã nói, Selenium là một khuôn khổ, tức là nó không phải là một phần mềm đơn

lẻ mà là một bộ, bao gồm các thành phần khác nhau Tham khảo sơ đồ bên dưới đểxem sự phát triển của các thành phần Selen

Hướng dẫn sử dụng Selenium WebDriver thực tế nhất với các ví dụ

Hình 1: Giới thiệu về thư viện Selenium

Trong ứng dụng này sử dụng chủ yếu là Selenium WebDriver

Trang 12

Kiến trúc Selenium WebDriver

Hình dưới đây giới thiệu tổng quan về kiến trúc của Selenium WebDriver

Hình 2: Giới thiệu về Selenium WebDriver

Selenium WebDriver bao gồm bốn thành phần chính:

● Thư viện khách hàng Selenium / Ràng buộc ngôn ngữ

● Giao thức dây JSON

● Trình điều khiển trình duyệt

● Trình duyệt thực

Thư viện khách hàng Selenium / Liên kết ngôn ngữ Selenium

Để hỗ trợ nhiều ngôn ngữ, các nhà phát triển Selenium đã xây dựng các ràng buộc ngônngữ Nếu bạn đang viết các bài kiểm tra của mình trong java, bạn có thể sử dụng các liênkết Java Các thư viện khách này có thể được tải xuống từ trang web chính thức củaSelenium

Giao thức dây JSON

Trang 13

JSON là một dạng viết tắt của JavaScript Object Notation Nó chuyển dữ liệu giữa máykhách và máy chủ Nó cung cấp hỗ trợ cho các cấu trúc dữ liệu như các đối tượng vàmảng, do đó làm cho việc đọc và ghi dữ liệu dễ dàng hơn Nó hoạt động như một APIREST (Truyền trạng thái đại diện) để truyền thông tin giữa các máy chủ HTTP.

Trình điều khiển trình duyệt

Để phát triển kết nối an toàn với trình duyệt, Selenium sử dụng Trình điều khiển Mỗitrình duyệt có trình điều khiển riêng để ẩn logic bên trong chức năng của trình duyệt.Ngoài ra, mỗi ngôn ngữ tự động hóa có một trình điều khiển trình duyệt tương ứng Khithực thi các tập lệnh, một loạt các thao tác sau sẽ xảy ra:

● Mỗi lệnh Selenium tạo ra một yêu cầu HTTP tương ứng, được gửi đến

trình điều khiển trình duyệt

● Yêu cầu này được định tuyến thông qua Máy chủ HTTP

● Máy chủ HTTP hiện điều khiển việc thực thi lệnh trên trình duyệt

● Trình duyệt sẽ gửi lại trạng thái tới Máy chủ HTTP, máy chủ này sẽ

chuyển tiếp trạng thái đó tới tập lệnh tự động hóa

Một số trình điều khiển trình duyệt là ChromeDriver, GeckoDriver, IE Driver, v.v Bạn cóthể tải xuống các trình điều khiển này từ kho GitHub của các trình duyệt tương ứng

Các trình duyệt

Trình duyệt là điểm cuối của quá trình thực thi thử nghiệm của chúng tôi Selenium hỗtrợ tất cả các trình duyệt chính như Firefox, Chrome, Internet Explorer, Safari, v.v

2.1.2 Ưu điểm và lý do sử dụng công nghệ

Sử dụng Selenium do mã nguồn mở, tương thích nhiều trình duyệt, hỗ trợ đa ngôn ngữlập trình, thân thiện, dễ sử dụng và tốc độ thực thi nhanh tuy nhiên chỉ hỗ trợ ứng dụngweb, đòi hỏi kinh nghiệm lập trình và không có hỗ trợ kỹ thuật

Trang 14

2.2 ScreenRecorderLib

2.2.1 Giới thiệu

Thư viện NET để quay màn hình trong Windows, sử dụng Microsoft Media Foundationgốc để mã hóa thời gian thực thành video h264 hoặc hình ảnh PNG Thư viện này yêucầu Windows 8 trở lên để hoạt động, cũng như Visual C ++ Redistributable x64 hoặcVisual C ++ Redistributable x86 được cài đặt, tùy thuộc vào nền tảng được biên dịch.Thư viện này cũng yêu cầu Media Foundation để hoạt động, phải được cài đặt từ ServerManager nếu chạy trên Windows Server hoặc từ "Media Feature Pack" tương ứng nếuchạy trên phiên bản Windows N hoặc KN

Có sẵn trên NuGet

2.2.2 Ưu điểm và lý do sử dụng công nghệ

Sử dụng ScreenRecorderLib nhờ thư viện NET để ghi màn hình trong Windows, sử dụngMicrosoft Media Foundation gốc để mã hóa thời gian thực cho hình ảnh video H264 hoặcPNG Thư viện này cũng yêu cầu Quỹ truyền thông làm việc

2.3 HandyControl

2.3.1 Giới thiệu

HandyControl là một thư viện điều khiển WPF viết lại gần như tất cả các kiểu gốc và baogồm hơn 80 điều khiển tùy chỉnh (ngày càng tăng)

2.3.2 Ưu điểm và lý do sử dụng công nghệ

Sử dụng HandyControl là một thư viện điều khiển WPF viết lại hầu hết tất cả các kiểugốc và bao gồm hơn 80 điều khiển tùy chỉnh (ngày càng)

Trang 15

III ĐẶC TẢ YÊU CẦU PHẦN MỀM

1 Mô tả yêu cầu

- Yêu cầu xây dựng một ứng dụng giúp sinh viên tự động tham gia vào

các lớp học mà không phải tìm link và thời khóa biểu vào mỗi buổi học

- Giúp sinh viên vào học đúng giờ đúng môn, đúng lớp học

- Giao diện thân thiện, dễ dùng, xử lý nhanh

- Tích hợp các tiện ích như ghi màn hình, tùy chỉnh độ phân giải

2 Mục tiêu hệ thống

- Đáp ứng các nhu cầu của sinh viên trong việc tham gia vào các lớp học

đúng giờ Ghi lại bài giảng của giảng viên Tiết kiệm thời gian tìm link

và hạn chế việc đi học sai lớp

3 Phạm vi hệ thống

- Ứng dụng phù hợp với sinh viên trong thời gian giãn cách xã hội phải

học online, phù hợp với các tình huống khó khăn sinh viên không thể

đến lớp học trực tiếp

4 Các chức năng của người dùng

- Thêm, xóa, sửa lịch học

- Ghi màn hình

- Tự động tham gia lớp học mà không cần phải bật trình duyệt và tìm

link lớp học

Trang 16

5 Lấy yêu cầu phần mềm

5.1 Quy trình thêm lịch học

5.1.1 Mô hình

Trang 18

Sơ đồ 1: Quy trình thêm lịch học

5.1.2 Mô tả quy trình

● Để vào lớp học tự động, người dùng cần phải thêm lịch học vào danh

sách lịch học để có thể vào lớp Đầu tiên, người dùng phải vào màn

hình quản lý lịch học

● Tiếp theo, người dùng cần phải điền đầy đủ các thông tin bao gồm: tên

lớp học, ngày bắt đầu, ngày kết thúc, giờ bắt đầu, giờ kết thúc, link,

trình duyệt, hồ sơ và tên

● Tiếp theo người dùng nhấn lưu Nếu nhập đủ thông tin thì sẽ thêm được

lịch thành công Nếu thêm thông tin không đủ thì thông báo lỗi sẽ hiển

thị và người dùng sẽ phải nhập lại thông tin

5.2 Quy trình xóa lịch học

5.2.1 Mô hình

Trang 19

Sơ đồ 2: Quy trình xóa lịch học

5.2.2 Mô tả quy trình

● Đầu tiên người dùng vào màn hình quản lý lịch học

● Tiếp theo người dùng nhấn chọn lịch học cần xóa

● Tiếp theo người dùng nhấn nút xóa

● Lịch học được xóa thành công

5.3 Quy trình chỉnh sửa lịch học

5.3.1 Mô hình

Trang 20

Sơ đồ 3: Quy trình sửa lịch học

5.3.2 Mô tả quy trình

● Đầu tiên người dùng vào màn hình quản lý lịch học

● Tiếp theo người dùng nhận chọn lịch học cần chỉnh sửa trong bảng

● Tiếp theo người dùng nhập các thông tin cần chỉnh sửa của lịch học

theo đúng nhu cầu

5.4 Quy trình ghi màn hình buổi học

5.4.1 Mô hình

Trang 21

5.4.2 Mô tả quy trình

● Máy tự động khởi động và mở ứng dụng

● Tiếp theo sẽ mở trinhg duyệt và vào trang google meet

● Ứng dụng sẽ tự động tắt mic, tắt camera và gửi yêu cầu tham gia cho

giáo viên

● Nếu yêu cầu được chấp thuận thì sẽ mở ghi màn hình khi được vào lớp

và đóng ghi màn hình khi kết thúc buổi học

● Tiếp theo ứng dụng sẽ tải video về

● Nếu yêu cầu không được chấp thuận thì ứng dụng sẽ tự động làm mới

trang và quay về bước tắt mic, tắt camera

6 Yêu cầu khác

6.1 Hệ điều hành và dòng máy phù hợp

- Chỉ một số dòng máy và hệ điều hành phù hợp mới có thể sử dụng

được tính năng tự động khởi động máy tính

- PC phù hợp với tính năng tự khởi động máy

6.2 Bộ nhớ máy đủ lớn

- Chức năng tự động quay màn hình yêu cầu bộ nhớ phải đủ lớn để chứa

video sau mỗi buổi học Mỗi video quay trong vòng nhiều giờ nên dung

lượng có thể lớn

Trang 22

7 Chức năng của hệ thống

7.1 Sơ đồ Usecase

Sơ đồ 5: Sơ đồ usecase của hệ thống

7.2 Mô tả Usecase

1 UC-AD-01 Thêm lịch học Cho phép Actor có thể thêm lịch

học vào danh sách lịch học

2 UC-AD-02 Xóa lịch học Cho phép Actor có thể xóa lịch học

khỏi danh sách lịch học

3 UC-AD-03 Sửa lịch học Cho phép Actor có thể sửa lịch học

4 UC-AD-04 Ghi màn hình buổi học Cho phép Actor có thể ghi màn

hình buổi học

7.3 Yêu cầu chức năng

UC-AD-01: Thêm lịch học

Trang 23

Tên Thêm lịch học UC-AD-01

Mô tả Cho phép Actor có thể thêm lịch học vào danh sách lịch học

màn hình quản lý lịch học

Pre-condition User phải có sẵn lịch học đúng theo TKB của nhà trường

Post condition Lịch học sẽ được thêm vào danh sách lịch học

Basic Flow 1 Vào màn hình Quản lý lịch học

4 Hiện thông báo lỗi

5 Nhập lại thông tin lịch học

6 Nhấn lưu

7 Lịch học được thêm mới

Trang 24

Hình 3: Chức năng thêm lịch học

UC-AD-02: Xóa lịch học

Tên Xóa lịch học UC-AD-02

Mô tả Cho phép Actor có thể xóa lịch học khỏi danh sách lịch học

lịch học

Pre-condition Actor phải có lịch học cần xóa

Post condition Lịch học sẽ bị xóa khỏi danh sách lịch học

Basic Flow 1 Vào màn hình Quản lý lịch học

2 Nhấn chọn lịch học cần xóa trong bảng

3 Nhấn xóa

Trang 25

4 Lịch học bị xóa

Exception

Flow

Hình 4: Chức năng xóa lịch học

Trang 26

UC-AD-03: Sửa lịch học

Tên Sửa lịch học UC-AD-03

Mô tả Cho phép Actor có thể sửa lịch học

lịch học

Pre-condition Actor phải có lịch học cần sửa và thông tin cần sửa

Post condition Lịch học được cập nhật

Basic Flow 1 Vào màn hình Quản lý lịch học

2 Nhập thông tin mới của lịch học

4 Hiện thông báo lỗi do thông tin chưa đúng yêu cầu

5 Nhập lại thông tin

6 Nhấn lưu

7 Thông tin được cập nhật

Trang 27

Hình 5: Chức năng sửa lịch học

Trang 28

UC-AD-04: Ghi màn hình

Tên Ghi màn hình UC-AD-04

Mô tả Cho phép Actor có ghi màn hình buổi học

bật máy tính trong BIOS

Pre-condition Actor phải có máy tính hoặc hệ điều hành tương thích

Post condition Video được ghi lại

Basic Flow 1 Máy tự động khởi động và mở ứng dụng

2 Tiếp theo sẽ mở trinhg duyệt và vào trang googlemeet

3 Ứng dụng sẽ tự động tắt mic, tắt camera và gửiyêu cầu tham gia cho giáo viên

4 Nếu yêu cầu được chấp thuận thì sẽ mở ghi mànhình khi được vào lớp và đóng ghi màn hình khikết thúc buổi học

5 Tiếp theo ứng dụng sẽ tải video về

4 Nếu yêu cầu không được chấp thuận thì ứng dụng

sẽ tự động làm mới trang và quay về bước tắt mic,tắt camera

5 Gửi yêu cầu tham gia

6 Yêu cầu được chấp thuận

7 Mở ghi màn hình

8 Đóng màn ghi hình khi kết thúc buổi học

Trang 29

9 Video được tải về máy

Hình 6: Chức năng ghi màn hình buổi học

Trang 30

IV HƯỚNG DẪN SỬ DỤNG

1 Hướng dẫn chỉnh tự động mở máy trong BIOS

Bước 1: Vào BIOS bằng Setting hoặc bằng CMD

Hình 7: Hướng dẫn vào BIOS bằng setting hoặc CMD

Bước 2: Chọn Advanced sau đó chọn APM Confirmation

Ngày đăng: 09/10/2023, 09:40

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w