Tải bản đầy đủ (.pdf) (64 trang)

XÂY DỰNG WEBSITE LUYỆN KỸ NĂNG NGHE, ĐỌC THEO CHUẨN B1 - Full 10 điểm

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.52 MB, 64 trang )

LỜI CẢM ƠN

Để có thể hồn thành bài khóa luận này, ngồi sự cố gắng của bản thân, tôi đã
nhận được rất nhiều sự giúp đỡ, động viên đến từ gia đình, thầy cơ và bạn bè trong
suốt quá trình thực hiện.

Tôi xin gửi lời cảm ơn sâu sắc đến ThS. Trần Thị Diệu Hiền, giảng viên hướng
dẫn tôi nghiên cứu đề tài khóa luận này. Cơ đã hướng dẫn, chỉ bảo, góp ý và cung cấp
cho tơi những kiến thức nền tảng vô cùng quan trọng và cần thiết cho việc nghiên cứu.
Nhờ có sự giúp đỡ nhiệt tình của cơ, tơi đã hồn thành tốt bài khóa luận của mình.

Tơi xin gửi lời cảm ơn chân thành nhất đến lãnh đạo nhà trường, tất cả thầy cơ
trong khoa Tốn-Tin đã tạo những điều kiện tốt nhất để tơi có thể hồn thành khóa
luận.

Đề tài này nghiên cứu trong phạm vi và thời gian có hạn nên khó tránh khỏi
những thiếu sót hay kiến thức chưa đủ sâu rộng để giải quyết tất cả các vấn đề. Vì vậy,
tơi rất mong nhận được sự đóng góp ý kiến của quý thầy cơ, bạn bè để bài khóa luận
ngày càng hồn thiện hơn.

LỜI CAM ĐOAN

Tơi xin cam đoan: Khóa luận tốt nghiệp với đề tài: “Xây dựng Website luyện kỹ
năng nghe, đọc theo chuẩn B1” là cơng trình nghiên cứu của cá nhân tôi, không sao
chép của bất cứ ai.

Tôi xin chịu mọi trách nhiệm về cơng trình nghiên cứu của riêng mình.
Quảng Nam, ngày … tháng … năm 2023
Người cam đoan

Ngô Thanh Hà



MỤC LỤC

PHẦN 1. MỞ ĐẦU ................................................................................................................... 1
1. Lý do chọn đề tài............................................................................................................... 1
2. Tính mới của đề tài ........................................................................................................... 2
3. Mục tiêu của đề tài ........................................................................................................... 2
4. Đối tượng và phạm vi nghiên cứu ................................................................................... 2
5. Phương pháp nghiên cứu ................................................................................................. 2
6. Cấu trúc đề tài .................................................................................................................. 2

PHẦN 2. NỘI DUNG NGHIÊN CỨU .................................................................................... 3
CHƯƠNG 1. CƠ SỞ LÝ THUYẾT VÀ YÊU CẦU HỆ THỐNG........................................ 3

1.1. Cơ sở lý thuyết ............................................................................................................... 3
1.1.1. Yêu cầu kỹ năng nghe, đọc trình độ B1 .................................................................. 3
1.1.2. Cấu trúc dạng đề ...................................................................................................... 3

1.2. Khảo sát hệ thống .......................................................................................................... 4
1.2.1. Phạm vi dự án........................................................................................................... 4
1.2.2. Khởi tạo dự án .......................................................................................................... 4

1.3. Phân tích cơng nghệ và tính khả thi............................................................................. 5
1.3.1. Yêu cầu công nghệ cần thiết .................................................................................... 5
1.3.2. Khả thi về kinh tế ..................................................................................................... 9
1.3.3. Khả thi về thực tế tiếp cận........................................................................................ 9

CHƯƠNG 2. THIẾT KẾ HỆ THỐNG................................................................................. 10
2.1. Phân tích chức năng .................................................................................................... 10
2.1.1. Yêu cầu chức năng................................................................................................. 10

2.1.2. Yêu cầu phi chức năng .......................................................................................... 10
2.1.3. Đặc tả chức năng ................................................................................................... 11
2.2. Biều đồ Usecase toàn hệ thống ................................................................................... 18
2.2.1. Đặc tả UseCase ....................................................................................................... 18
2.2.2. Phân rã Usecase ..................................................................................................... 18
2.3. Biểu đồ tuần tự............................................................................................................. 25
2.4. Biểu đồ lớp.................................................................................................................... 34
2.5. Xây dựng cơ sở dữ liệu................................................................................................ 35

CHƯƠNG 3. TRIỂN KHAI HỆ THỐNG ............................................................................ 39
3.1. Cài đặt hệ thống ........................................................................................................... 39
3.1.1. Các hệ điều hành phổ biến .................................................................................... 39
3.1.2. Cài đặt Website ....................................................................................................... 41
3.2. Một số giao diện trong hệ thống ................................................................................. 42

PHẦN 3. KẾT LUẬN VÀ KIẾN NGHỊ ............................................................................... 57
1. Kết quả đạt được ............................................................................................................ 57
2. Ưu, nhược điểm .............................................................................................................. 57
2.1. Ưu điểm...................................................................................................................... 57
2.2. Nhược điểm ............................................................................................................... 57
3. Hướng phát triển ............................................................................................................ 57

PHẦN 4. TÀI LIỆU THAM KHẢO ..................................................................................... 58
PHẦN 5: PHỤ LỤC HÌNH ẢNH .......................................................................................... 59

PHẦN 1. MỞ ĐẦU

1. Lý do chọn đề tài
Trong cuộc sống của chúng ta, việc học các ngoại ngữ là một bài học bổ ích và


quan trọng. Việc học tiếng Anh là một trong những thứ mà rất nhiều người quan tâm
và ưu tiên hàng đầu. Để tốt nghiệp và sống một cuộc sống hiện đại cần phải có các kỹ
năng tiếng Anh. Tuy nhiên, việc học tiếng Anh có thể rất khó và cần một khoảng thời
gian dài.

Vì vậy, thiết kế một website luyện thi tiếng Anh B1 có thể là một trợ giúp quý
báu cho những ai đang học tiếng Anh. Website sẽ cung cấp các bài tập khác nhau,
được xây dựng trên các cơ sở kiến thức của tiếng Anh, sử dụng công nghệ hiện đại,
nhằm tăng cường khả năng tư duy của người dùng. Website cũng có thể được phát
triển để cung cấp kho bài giảng, video và ơn luyện, để người dùng có thể ôn lại những
cấu trúc của tiếng Anh; cung cấp các bài kiểm tra thường xuyên để kiểm tra tình trạng
học tập của người dùng.

Do đó, website luyện thi tiếng Anh B1 cần cung cấp các bài học, các bài kiểm
tra, và một nền tảng hỗ trợ cải thiện khả năng tiếng Anh của người dùng. Đây là một
cách hồn tồn hợp lí và hiệu quả để học tiếng Anh với tốc độ cao. Cũng cần có thêm
các tính năng hỗ trợ để giúp người dùng cải thiện khả năng nói và cảm nhận tiếng Anh
như: các cuộc trò chuyện trực tuyến, các bài tập phát âm, bài học ngữ pháp, và các tính
năng khác như làm ví dụ, dịch thuật, và hỗ trợ từ điển. Việc tích hợp các tính năng này
trên Website sẽ giúp người dùng cải thiện hiểu biết và sử dụng tiếng Anh một cách cẩn
thận hơn.

Để giúp người dùng theo đuổi mục tiêu học tập, Website cũng có thể có chức
năng theo dõi và ghi lại thành tích học tập của người dùng để định hướng học tập tốt
hơn cho họ. Để làm cho website được sử dụng dễ dàng hơn, trang website cũng có thể
có các phần trợ giúp trực tuyến và hỗ trợ để giải quyết những vấn đề khó khăn liên
quan đến học tiếng Anh.

Với mục tiêu đó, tơi chọn: “Xây dựng Website luyện kỹ năng nghe, đọc theo
chuẩn B1” làm đề tài khóa luận tốt nghiệp của mình.


1

2. Tính mới của đề tài
Giúp người học cải thiện trình độ Anh văn trong thời gian ngắn nhất; sử dụng

công nghệ hiện đại để xây dựng một ứng dụng website dành cho người học và cung
cấp các tính năng như khả năng tạo ra câu hỏi, các video hướng dẫn, cấu hình câu trả
lời đúng cho các câu hỏi và cung cấp một hệ thống xử lý thống kê và ôn luyện cho
người học.
3. Mục tiêu của đề tài

Xây dựng được ứng dụng website có các tính năng nâng cao kỹ năng đọc và
nghe của học sinh, sinh viên, cải thiện việc học phần quan trọng nhất trong kì thi Anh
văn.
4. Đối tượng và phạm vi nghiên cứu

Đối tượng: Được thiết kế cho học sinh, sinh viên ơn luyện thi trình độ B1 trên
các trình duyệt website.

Phạm vi của nghiên cứu: Khả năng tạo các câu hỏi, các video hướng dẫn và cấu
hình câu trả lời đúng cho các câu hỏi, cùng với một hệ thống xử lý thống kê để phục
vụ cho mục đích ơn tập.
5. Phương pháp nghiên cứu

Bài khóa luận có sử dụng các phương pháp nghiên cứu như:
- Phương pháp phân loại và hệ thống hóa lý thuyết
- Phương pháp nghiên cứu thực nghiệm
- Phương pháp thu thập số liệu
- Phương pháp phân tích tổng kết kinh nghiệm

6. Cấu trúc đề tài
Bài khóa luận ngồi phần mở đầu và kết luận thì nội dung được chia làm 3
chương:
Chương 1: Cơ sở lý thuyết và yêu cầu hệ thống.
Chương 2: Thiết kế hệ thống.
Chương 3: Triển khai hệ thống.

2

PHẦN 2. NỘI DUNG NGHIÊN CỨU

CHƯƠNG 1. CƠ SỞ LÝ THUYẾT VÀ YÊU CẦU HỆ THỐNG

1.1. Cơ sở lý thuyết

1.1.1. Yêu cầu kỹ năng nghe, đọc trình độ B1
Khung tham chiếu trình độ ngơn ngữ chung Châu Âu CEFR được thành lập bởi

Hội đồng Châu Âu (Council of Europe) nhằm đánh giá khả năng ngôn ngữ của bạn.
Chính thức ra mắt năm 2001 và khơng ngừng được bổ sung và hồn thiện để “xếp
hạng” chính xác năng lực ngôn ngữ của người học, CEFR được coi là bước ngoặt
trong đánh giá trình độ ngơn ngữ.

Trình độ B1 là bậc thứ ba trên khung CEFR (bậc trung cấp – Intermediate),
tương đương với cấp độ tiếng Anh Cambridge KET Cambridge Pass with Distinction
(đỗ xuất sắc vượt cấp 140-150 điểm), PET Cambridge Pass và Pass with Merit, FCE
Cambridge 140-159 điểm, IELTS 4.0-5.0, TOEFL iBT 42-71, TOEIC Listening &
Reading 550-780. Người đạt trình độ B1 biết khoảng 2,000 từ tiếng Anh. Theo
Cambridge, để đạt cấp độ B1 cần khoảng 350-400 giờ học tiếng Anh có hướng dẫn.


Cụ thể, người học tiếng Anh trình độ B1 có các khả năng ngơn ngữ về kỹ năng
Nghe:

- Có thể theo dõi và hiểu được dàn ý của các bài nói ngắn, đơn giản về các chủ đề
quen thuộc nếu được diễn đạt theo giọng chuẩn, rõ ràng.

- Có thể theo dõi và hiểu được các bài giảng hay cuộc nói chuyện về đề tài quen
thuộc hoặc trong phạm vi chun mơn của mình nếu được diễn đạt một cách đơn giản
với cấu trúc rõ ràng.

Về kỹ năng Đọc:
- Có thể đọc hiểu các văn bản chứa đựng thông tin rõ ràng về các chủ đề liên quan
đến chuyên ngành và lĩnh vực yêu thích, quan tâm của mình.
- Có thể xác định các kết luận chính trong các văn bản nghị luận có sử dụng các
tín hiệu ngơn ngữ rõ ràng.
- Có thể nhận diện mạch lập luận của văn bản đang đọc, dù không nhất thiết phải
thật chi tiết.

1.1.2. Cấu trúc dạng đề
Đề thi kiểm tra Chuẩn đầu ra ngoại ngữ được thực hiện theo các yêu cầu về trình

độ như quy định được ban hành kèm theo Thông tư số 01/2014/TT-BGDĐT ngày
24/01/2014 của Bộ Giáo dục và Đào tạo như sau:

3

Đề tiếng anh B1 đối với kỹ năng nghe:
Kỹ năng nghe đề thi này gồm có 3 phần thi với thời gian hoàn thành là 40 phút
cho 35 câu hỏi trắc nghiệm 4 lựa chọn.
- Phần 1: Gồm 8 câu hỏi trắc nghiệm.

+ Nghe 8 đoạn hội thoại ngắn và chọn đáp án đúng.
+ Mỗi đoạn hội thoại tương ứng với 1 câu hỏi.
- Phần 2: Gồm 12 câu hỏi trắc nghiệm.
Nghe 3 đoạn hội thoại dài và chọn đáp án đúng.
Mỗi đoạn hội thoại tương ứng với 4 câu hỏi đã được chỉ định trên đề.
- Phần 3: Gồm 15 câu hỏi trắc nghiệm.
+ Nghe 3 đoạn hội thoại dài và chọn đáp án đúng.
+ Mỗi đoạn hội thoại tương ứng với 5 câu hỏi được chỉ định sẵn trên đề tiếng anh
B1.
Đề tiếng anh B1 đối với kỹ năng đọc:
Kỹ năng đọc đề thi này gồm có 4 phần thi với thời gian hoàn thành là 60 phút cho
40 câu hỏi trắc nghiệm 4 lựa chọn
- Đọc hiểu 4 đoạn văn và chọn đáp án đúng.
- Mỗi đoạn văn tương ứng với 10 câu hỏi.
1.2. Khảo sát hệ thống
1.2.1. Phạm vi dự án
Dự án tập trung phân tích các chức năng hỗ trợ học tập trực tuyến về Tiếng Anh
trình độ B1. Chủ yếu tập trung vào hai kỹ năng: Đọc và Nghe. Có tổ chức các bài thi
thử để người dùng cọ xát, quen cấu trúc đề.
1.2.2. Khởi tạo dự án
Dự án sử dụng ngôn ngữ JavaScript trên nền tảng React. Gồm hai thành phần
chính:
Backend tạo mã API, kết nối cơ sở dữ liệu với MongoDB và Frontend chứa các
file hiển thị giao diện người dùng và gọi API đến Backend.

4

1.3. Phân tích cơng nghệ và tính khả thi

1.3.1. u cầu công nghệ cần thiết


Ngôn ngữ front-end như HTML, CSS, Javascript và công cụ phát triển website
như React, nền tảng backend như NodeJS. Công cụ quản lý cơ sở dữ liệu MongoDB để
lưu trữ dữ liệu của website.

1.3.1.1. HTML

HTML là viết tắt của cụm từ Hypertext Markup Language
(tạm dịch là Ngôn ngữ đánh dấu siêu văn bản). HTML được sử
dụng để tạo và cấu trúc các thành phần trong trang web hoặc
ứng dụng, phân chia các đoạn văn, heading, titles,
blockquotes… và HTML khơng phải là ngơn ngữ lập trình.

Một tài liệu HTML được hình thành bởi các phần tử HTML
(HTML Elements) được quy định bằng các cặp thẻ (tag và attributes). Các cặp thẻ này
được bao bọc bởi một dấu ngoặc ngọn (ví dụ <html>) và thường là sẽ được khai báo
thành một cặp, bao gồm thẻ mở và thẻ đóng.

Nhưng một số thẻ đặc biệt lại khơng có thẻ đóng và dữ liệu được khai báo sẽ nằm
trong các thuộc tính (ví dụ như thẻ <img>).

Cha đẻ của HTML là Tim Berners-Lee, cũng là người khai sinh ra World Wide
Web và chủ tịch của World Wide Web Consortium (W3C – tổ chức thiết lập ra các
chuẩn trên môi trường Internet). Các thiết lập và cấu trúc HTML được vận hành và
phát triển bởi World Wide Web Consortium (W3C). Bạn có thể kiểm tra tình trạng
mới nhất của ngôn ngữ này bất kỳ lúc nào trên trang W3C’s website.

1.3.1.2. CSS

CSS là chữ viết tắt của Cascading Style Sheets, nó là một

ngơn ngữ được sử dụng để tìm và định dạng lại các phần tử
được tạo ra bởi các ngôn ngữ đánh dấu (HTML). Nói ngắn gọn
hơn là ngơn ngữ tạo phong cách cho trang web. Bạn có thể hiểu
đơn giản rằng, nếu HTML đóng vai trị định dạng các phần tử
trên website như việc tạo ra các đoạn văn bản, các tiêu đề,
bảng,… thì CSS sẽ giú p chúng ta có thể thêm style vào các phần tử HTML đó như
đổi bố cục, màu sắc trang, đổi màu chữ, font chữ, thay đổi cấu trúc…

CSS được phát triển bởi W3C (World Wide Web Consortium) vào năm 1996, vì
HTML khơng được thiết kế để gắn tag để giúp định dạng trang web.

5

Phương thức hoạt động của CSS là nó sẽ tìm dựa vào các vùng chọn, vùng chọn
có thể là tên một thẻ HTML, tên một ID, class hay nhiều kiểu khác. Sau đó là nó sẽ áp
dụng các thuộc tính cần thay đổi lên vùng chọn đó.

Mối tương quan giữa HTML và CSS rất mật thiết. HTML là ngôn ngữ markup
(nền tảng của site) và CSS định hình phong cách (tất cả những gì tạo nên giao diện
website), chúng là không thể tách rời.
1.3.1.3. JavaScript

JavaScript là ngơn ngữ lập trình website phổ biến hiện nay,
nó được tích hợp và nhúng vào HTML giúp website trở nên
sống động hơn. JavaScript đóng vai trị như là một phần của
trang web, thực thi cho phép Client-side script từ phía người
dùng cũng như phía máy chủ (Nodejs) tạo ra các trang web
động.

JavaScript là một ngơn ngữ lập trình thơng dịch với khả năng hướng đến đối

tượng. Là một trong 3 ngơn ngữ chính trong lập trình web và có mối liên hệ lẫn nhau
để xây dựng một website sống động, chuyên nghiệp:

- HTML: Hỗ trợ trong việc xây dựng layout, thêm nội dung dễ dàng trên website.
- CSS: Hỗ trợ việc định dạng thiết kế, bố cục, style, màu sắc,…
- JavaScript: Tạo nên những nội dung “động” trên website.
Nhiệm vụ của Javascript là xử lý những đối tượng HTML trên trình duyệt. Nó có
thể can thiệp với các hành động như thêm/ xóa/ sửa các thuộc tính CSS và các thẻ
HTML một cách dễ dàng. Hay nói cách khác, Javascript là một ngơn ngữ lập trình trên
trình duyệt ở phía client. Hiện nay cùng với sự xuất hiện của NodeJS đã giúp cho
Javascript có thể làm việc ở backend.
1.3.1.4. NodeJS
NodeJS là một môi trường runtime chạy JavaScript đa nền
tảng và có mã nguồn mở, được sử dụng để chạy các ứng dụng
web bên ngồi trình duyệt của client. Nền tảng này được phát
triển bởi Ryan Dahl vào năm 2009, được xem là một giải pháp
hoàn hảo cho các ứng dụng sử dụng nhiều dữ liệu nhờ vào mơ
hình hướng sự kiện (event-driven) không đồng bộ.

6

NodeJS được sử dụng để xây dựng rất nhiều loại ứng dụng khác nhau, trong đó
phổ biến nhất gồm có:

Ứng dụng trò chuyện trong thời gian thực: Nhờ vào cấu trúc khơng đồng bộ đơn
luồng, Node.JS rất thích hợp cho mục đích xử lý giao tiếp trong thời gian thực. Nền
tảng này có thể dễ dàng mở rộng quy mơ và thường dùng để tạo ra các chatbot. Bên
cạnh đó, các tính năng liên quan đến ứng dụng trị chuyện như: chat nhiều người,
thơng báo đẩy,… cũng có thể dễ dàng được bổ sung nhờ NodeJS.


Internet of Things (IoT): Các ứng dụng IoT thường bao gồm nhiều bộ cảm biến
phức tạp để gửi những phần dữ liệu nhỏ. Node.JS là một lựa chọn lý tưởng để xử lý
các yêu cầu đồng thời này với tốc độ cực nhanh.

Truyền dữ liệu: Netflix là một trong số những công ty lớn trên thế giới chuyên sử
dụng Node.JS cho mục đích truyền dữ liệu. Sở dĩ vì đây là một nền tảng nhẹ và cực
nhanh, đồng thời còn cung cấp một API chuyên dùng để stream.

Các SPA (Single-page application) phức tạp: Trong SPA, toàn bộ ứng dụng được
load vào trong một trang duy nhất, do đó sẽ có một số request được thực hiện trong
nền. Vòng lặp sự kiện (event loop) của Node.JS cho phép xử lý các request theo hướng
non-blocking.

Các ứng dụng REST dựa trên API: JavaScript được sử dụng trong cả frontend lẫn
backend của trang. Do đó một server có thể dễ dàng giao tiếp với frontend qua REST
API bằng Node.js. Bên cạnh đó, Node.JS cịn cung cấp nhiều package như Express.js
hay Koa để việc xây dựng ứng dụng web trở nên dễ dàng hơn bao giờ hết.

1.3.1.5. ReactJS

ReactJS là một thư viện JavaScript mã nguồn mở được phát
triển bởi Facebook nhằm tạo ra các ứng dụng web nhanh và hiệu
quả với mã nguồn. Mục đích chính của ReactJS là khiến cho
website hoạt động mượt mà, khả năng mở rộng cao và đơn giản.
Thay vì làm việc trên toàn ứng dụng web, ReactJS cho phép các
nhà phát triển có thể phá vỡ giao diện người dùng phức tạp một
cách thuận lợi thành các thành phần đơn giản.

ReactJS là một trong những công nghệ đáng để doanh nghiệp lựa chọn nhằm hiện
thực mục tiêu vượt mặt đối thủ cạnh tranh. ReactJS cho phép doanh nghiệp tạo ra các

ứng dụng web có UI tốt hơn, qua đó nâng cao trải nghiệm của người dùng như lượt
tương tác, tỷ lệ click, lượt chuyển đổi. Các doanh nghiệp sử dụng ReactJS có giao diện
ứng dụng tốt hơn các đơn vị sử dụng các framework khác vì ReactJS ngăn chặn việc
cập nhật của DOM giúp ứng dụng nhanh và truyền tải tốt hơn UX.

7

1.3.1.6. MongoDB

MongoDB hay Mongo Database là phần mềm cơ sở dữ liệu
opensource (mã nguồn mở) dạng NoSQL hỗ trợ nhiều nền tảng
lập trình và được thiết kế theo kiểu hướng đối tượng. Những
bảng dữ liệu trong MongoDB (các Collection) được thiết kế với
cấu trúc linh hoạt cho phép dữ liệu được lưu trữ không cần phải
tuân theo định dạng cấy trúc nào.

Thay vì các bản ghi, trường dữ liệu như trong SQL, MongoDB sử dụng lưu trữ dữ
liệu dưới dạng JS N nên từ đó mỗi Collection sẽ sở hữu những kích thước và các
document riêng. Vì vậy, nó có thể sử dụng lưu trữ các dữ liệu lớn có kích thước và độ
phức tạp đa dạng (Big Data).

MongoDB có khá nhiều những tính năng hỗ trợ người dùng trong quản lý, lưu trữ
và xử lý dữ liệu phức tạp.

Do sử dụng lưu trữ dữ liệu dưới dạng Document JS N nên mỗi Collection đều có
thiết kế kích thước và thuộc những document khác nhau. Tuy nhiên chúng lại khá linh
hoạt khi tiến hành lưu trữ bởi vậy nếu người dùng muốn lưu thêm dữ liệu chỉ cần
insert là xong. Những dữ liệu lưu trong hệ thống của MongoDB không bị ràng buộc
nhau, khơng bị phụ thuộc bởi khóa chính hay khóa phụ như hệ quản trị cơ sỡ dữ liệu
quan hệ nên khi thực hiện các thao tác thêm, sửa, xóa thì sẽ đơn giản hơn việc kiểm tra

ràng buộc như trong hệ quản trị cơ sỡ dữ liệu quan hệ. Khả năng mở rộng tốt của
MongoDB được đánh giá cao bởi nó sử dụng cụm các node chứa những dữ liệu giao
tiếp được với nhau được gọi là Cluster. Từ đó để mở rộng bạn chỉ cần thêm một node
vào hệ thống. Những index cho từng dữ liệu sẽ là tự động để hỗ trợ truy vấn thông tin
nhanh và đạt hiệu suất cao. Tốc độ truy vấn đáng kể của MongoDB là một lượi thế so
với những hệ quản trị cơ sở dữ liệu khác. Thử nghiệm cho thấy ở một lượng dữ liệu
chung, MongoDB có khả năng insert nhanh gấp 100 lần so với SQL.

Để triển khai trang website có tính năng tối ưu nhất, cần sử dụng các kỹ thuật,
công cụ và công nghệ hiện đại như HTML5, CSS3, Bootstrap. Bên cạnh đó, cần phải
sử dụng các cơng cụ hỗ trợ hiệu suất tốt nhất để phân tích và xử lý dữ liệu và cung cấp
các tài nguyên và dịch vụ trực tuyến cần thiết như nhà cung cấp dịch vụ lưu trữ và
nguồn lực đáng tin cậy.

8

1.3.2. Khả thi về kinh tế
Mức độ khả thi kinh tế phụ thuộc vào số lượng người dùng website, chi phí để

xây dựng và bảo trì website.
Website khi hồn thành được chạy frontend trên nền tảng git và backend trên nền

tảng render nên hoàn toàn khả thi về kinh tế.
1.3.3. Khả thi về thực tế tiếp cận

Hệ thống cung cấp kiến thức và kỹ năng cần thiết hỗ trợ người dùng học tập, nâng
cao trình độ tiếng Anh của mình, tiến đến đạt kết quả tốt trong kỳ thi lấy bằng tiếng
Anh B1.

9


CHƯƠNG 2. THIẾT KẾ HỆ THỐNG

2.1. Phân tích chức năng
2.1.1. Yêu cầu chức năng

Website luyện kỹ năng nghe, đọc tiếng Anh cần các chức năng chính như:
- Chức năng đăng kí, đăng nhập thành viên và đăng xuất. Có hỗ trợ đăng nhập
bằng tài khoản Google và xác thực email khi đăng kí tài khoản.
- Cung cấp các bài giảng, video và bài tập ôn luyện để người dùng có thể ơn lại
những kỹ năng đọc, nghe tiếng Anh.
- Cung cấp các bài kiểm tra thường xuyên, thi thử để kiểm tra tình trạng học tập
của người dùng.
- Các tính năng hỗ trợ để giúp người dùng cải thiện khả năng nghe và phát âm
tiếng Anh như: dịch thuật, và hỗ trợ từ điển.
- Chức năng theo dõi và ghi lại thành tích học tập của người dùng để định hướng
học tập tốt hơn cho họ.
- Học viên có thể làm bài tập trực tuyến trên máy tính, điện thoại, hoặc sử dụng
các cơng cụ xuất bản để làm bài thi hoặc in bài tập.
- Xây dựng hệ thống tra cứu và người học cũng có thể tìm kiếm bài viết, tác giả
trực tiếp từ trang website.
- Cung cấp các cơng cụ phân loại u thích của người học, báo cáo đánh giá, và
cảm nhận của người học đối với các bài học.
- Hệ thống thông báo thường xuyên để người học có thể ln ln được thơng
báo về các khóa học mới, các kỳ thi, và các thông tin liên quan khác.
- Chức năng đăng bài học, bài thi thử của giáo viên và quản trị viên.
- Các chức năng quản lí của admin như: Quản lí bài viết, bài thi thử, quản lí người
dùng,…
2.1.2. Yêu cầu phi chức năng


- Hiển thị dữ liệu theo cách hiệu quả nhất với những cảm hứng đồ họa và thân
thiện với người dùng. Website hỗ trợ giao diện trên nhiều loại thiết bị.

- Đảm bảo tiêu chuẩn cơ bản như độ bền, tính năng, hiển thị, hiệu suất và thuận
tiện để truy cập cho người sử dụng.

10

- Các kiến trúc phần mềm và khả năng lưu trữ dữ liệu của thiết kế website này
phải được xác định, để cung cấp môi trường luyện thi trực tuyến năng động, đáp ứng
các nhu cầu của người học cần.

2.1.3. Đặc tả chức năng

Bảng 1.1. Chức năng đăng nhập bằng email

Qui tắc Chức năng Loại
R1.1
R1.2 Người dùng yêu cầu đăng nhập. Hiện
R1.3
R1.4 Hệ thống lấy đường dẫn trang hiện tại và chuyển sang Hiện
R1.5.1 trang đăng nhập.
R1.5.2
R1.6 Người dùng điền user và password vào form đăng nhập Hiện
và gửi thông tin đăng nhập.

Cơ sở dữ liệu kiểm tra thông tin đăng nhập hợp lệ hay n
không.

Nếu thông tin đúng, hệ thống lưu thông tin đăng nhập Hiện

và quay về trang trước đó.

Nếu sai, hệ thông báo đăng nhập lỗi và yêu cầu nhập Hiện
lại.

Người dùng làm việc với hệ thống. Hiện

Bảng 1.2. Chức năng ạo tài khoản

Qui tắc Chức năng Loại
R2.1
R2.2 Người dùng yêu cầu Tạo tài khoản. Hiện
R2.3
Người dùng điền tên đăng nhập (mail), tên hiển thị và Hiện
R2.4.1 password vào form Tạo tài khoản và gửi yêu cầu.

R2.4.2 Cơ sở dữ liệu kiểm tra thông tin tài khoản hợp lệ hay n
R2.5 không (địa chỉ mail đã tồn tại hay chưa, mật khẩu người
dùng có đủ dài).

Nếu thông tin đúng, hệ thống thông báo Tạo tài khoản Hiện
thành công và thông báo đã gửi email xác thực đến địa
chỉ email của người dùng. Gửi một thông báo về việc
tạo tài khoản thành công đến tài khoản người dùng.

Nếu sai, hệ thông báo lỗi và yêu cầu nhập lại thông tin. Hiện

Người dùng làm việc với hệ thống. Hiện

11


Bảng 1.3. Chức năng đăng nhập bằng tài khoản Google

Qui tắc Chức năng Loại
R3.1
R3.2 Người dùng yêu cầu đăng nhập. Hiện
R3.3
R3.4 Hệ thống lấy đường dẫn trang hiện tại và chuyển sang Hiện
R3.5 trang đăng nhập.
R3.6
Người dùng chọn đăng nhập với Google. Hiện
Qui tắc
R4.1 Người dùng chọn tài khoản Google để đăng nhập. Hiện
R4.2
R4.3.1 Hệ thống tạo tài khoản cho người dùng nếu gmail tương n
R4.3.2 ứng chưa có trong cơ sở dữ liệu.
R4.3.3
R4.4 Hệ thống lưu thông tin người dùng và quay về trang Hiện
trước đó.
Qui tắc
R5.1 Bảng 1.4. Chức năng xác thực tài khoản email
R5.2
Chức năng Loại

Hệ thống gửi email thông báo tạo tài khoản của người n
dùng và một đường link xác thực tài khoản.

Người dùng Nhấn vào đường dẫn. Hiện

Hệ thống thông báo xác thực thành công cho người Hiện

dùng.

Nếu người dùng đã xác thực rồi, hệ thống thông báo đã Hiện
xác thực trước đó.

Nếu đường dẫn xác thực sai (do người dùng tự nhập) thì Hiện
hệ thống thông báo lỗi.

Người dùng nhấn vào quay về trang chủ. Hiện

Bảng 1.5. Chức năng quên mật khẩu

Chức năng Loại

Người dùng chọn quên mật khẩu. Hiện

Hệ thống thông báo và tự động gửi email chứa mật khẩu Hiện
đăng nhập về email mà người dùng đã đăng ký. Đồng
thời gửi một thông báo về bảo mật tài khoản đến tài
khoản người dùng.

12

Bảng 1.6. Chức năng em thông tin cá nh n

Qui tắc Chức năng Loại
R6.1
R6.2 Người dùng chọn icon Ảnh đại diện. Chọn trang cá Hiện
R6.3 nhân.


Qui tắc Hệ thống hiển thị trang thông tin cá nhân người dùng. Hiện
R7.1
R7.2 Người dùng xem các thông tin liên quan như ngày tạo Hiện
R7.3 tài khoản, tên hiển thị, ảnh đại diện, địa chỉ email, các
bài viết mà người dùng đã tạo.
R7.4
R7.5.1 Bảng 1.7. Chức năng Cài đặt thông tin cá nhân
R7.5.2
Chức năng Loại
R7.6
Người dùng chọn icon Ảnh đại diện. Chọn Cài đặt. Hiện
R7.7
R7.8.1 Hệ thống hiển thị trang Cài đặt thông tin tài khoản Hiện
người dùng.
R7.8.1.1
R7.8.1.2 Người dùng chọn nút Chỉnh sửa và thay đổi các thông Hiện
R7.8.2 tin của mình như tên hiển thị, ảnh đại diện, mật khẩu
R7.9 đăng nhập.

Người dùng chọn Lưu để xác nhận thay đổi thông tin Hiện
hoặc Hủy để bỏ qua thao tác thay đổi thông tin.

Nếu người dùng chọn Lưu, hệ thống thay đổi thông tin n
người dùng và hiển thị thông tin mới trên trang.

Nếu người dùng chọn Hủy, hệ thống đóng form thay n
đổi thông tin người dùng và hiển thị thông tin cũ của
người dùng.

Người dùng chọn Button Đổi mật khẩu để thay đổi mật Hiện

khẩu và điền mật khẩu cũ và mật khẩu mới cần thay
đổi, xác nhận lại mật khẩu mới.

Người dùng chọn Đổi mật khẩu để xác nhận thay đổi Hiện
mật khẩu hoặc Hủy để bỏ qua.

Nếu người dùng chọn Đổi mật khẩu, hệ thống kiểm tra n
mật khẩu cũ có đúng, mật khẩu mới và nhập lại có
giống nhau và đủ dài hay không.

Nếu thông tin hợp lệ, hệ thống thông báo thành công. Hiện

Nếu thông tin không hợp lệ, hệ thống thông báo lỗi. Hiện

Nếu người dùng chọn Hủy, hệ thống đóng form Đổi n
mật khẩu người dùng.

Khi người dùng thay đổi thông tin thành công, hệ thống Hiện
gửi một thông báo đến tài khoản người dùng thông báo
về sự kiện này.

13

Bảng 1.8. Chức năng ìm kiếm thơng tin

Qui tắc Chức năng Loại
R8.1
R8.2 Người dùng nhấn vào Input Search và nhập nội dung Hiện
R8.3 cần tìm kiếm
R8.4

R8.5 Cơ sở dữ liệu tìm kiếm người dùng, bài viết, thi thử liên n
quan đến từ khóa

Hệ thống hiển thị người dùng, bài viết, thi thử liên quan Hiện
đến từ khóa tìm kiếm.

Người dùng chọn vào mục tương ứng để xem thông tin Hiện
bài viết hoặc trang cá nhân người dùng.

Nếu khơng tìm thấy thơng tin, hệ thống thông báo cho Hiện
người dùng.

Bảng 1.9. Chức năng ra cứu từ điển

Qui tắc Chức năng Loại
R9.1
R9.2 Người dùng nhấn vào menu từ điển Hiện
R9.3
R9.4 Hệ thống hiển thị trang Từ điển Hiện

Người dùng nhập từ khóa cần tìm kiếm. Hiện

Hệ thống lấy thông tin và hiển thị thơng tin về từ khóa Hiện
cần tìm nếu có như: Cách phát âm, ngữ nghĩa, cách
dùng, từ cùng nghĩa với nó,…

Bảng 1.10. Chức năng Làm bài trong các bài học về Đọc, Nghe

Qui tắc Chức năng Loại
R10.1

R10.2 Người dùng chọn menu Đọc, hoặc Nghe. Hiện
R10.3
R10.4 Hệ thống hiển thị danh sách các bài tập. Hiện

R10.5 Người dùng chọn vào bài mà mình muốn. Hiện
R10.6
R10.7 Hệ thống lấy thông tin và hiển thị đề bài, các câu hỏi và Hiện
đáp án dưới dạng trắc nghiệm từ hai đáp án (True or
R10.8 False) hoặc nhiều đáp án.

Người dùng làm bài. Hiện

Người dùng chọn nộp bài. Hiện

Hệ thống tiếp nhận Chi tiết bài kiểm tra và tự động n
chấm điểm.

Hệ thống hiển thị thông chi tiết về bài làm như điểm số, Hiện
đáp án, gợi ý đáp án,…

14

Bảng 1.11. Chức năng Game về từ vựng

Qui tắc Chức năng Loại
R11.1
R11.2 Người dùng chọn menu Game Hiện
R11.3
R11.4 Hệ thống hiển thị danh sách các trò chơi. Hiện
R11.5

R11.6.1 Người dùng chọn vào trị chơi mà mình muốn. Hiện
R11.6.2
R11.7 Hệ thống lấy thông tin và hiển thị danh sách hình ảnh Hiện
và danh sách từ vựng.
Qui tắc
R12.1 Người dùng ghép hình ảnh với từ vựng tương ứng theo Hiện
R12.2 từng cặp.

R12.3 Nếu ghép đúng, hình ảnh và từ vựng ảnh đi, kèm âm Hiện
R12.4. thanh phát âm về từ vựng đó được phát lên.

R12.5 Nếu ghép sai, hiển thị màu đỏ, rồi giữ nguyên trạng thái Hiện
cũ.
R12.6
R12.7 Trò chơi kết thúc khi tất cả các từ khóa và hình ảnh Hiện
tương ứng đều ghép cặp đúng hết

Bảng 1.12. Chức năng àm bài thi thử

Chức năng Loại

Hệ thống hiển thị danh sách các bài thi thử, thời hạn Hiện
đăng kí, làm bài và hết hạn.

Trong thời gian đăng kí, người dùng chọn đăng kí. Hệ Hiện
thống gửi thông báo về thông tin kỳ thi thử cho người
dùng.

Khi đến thời gian làm bài, chỉ những người đã đăng kí Hiện
mới được làm bài.


Nếu người dùng chọn làm bài mà chưa đăng nhập, hệ Hiện
thống chuyển sang trang đăng nhập. Người dùng đăng
nhập. Hệ thống quay lại trang làm bài.

Khi vào trang làm bài Đọc hoặc Nghe. Cơ sở dữ liệu lấy n
đề kiểm tra và tự động xáo trộn đáp án. Sau đó tạo bài
kiểm tra trong cơ sở dữ liệu.

Hệ thống hiển thị đề bài, các câu hỏi và đáp án dưới Hiện
dạng trắc nghiệm với bốn đáp án.

Người dùng làm bài kiểm tra, với các chức năng như Hiện
chọn đáp án, chuyển câu hỏi bất kì trên danh sách câu
hỏi, hoặc chuyển sang câu tiếp theo, câu trước trong
thời gian giới hạn được đếm ngược.

15

R12.8 Bài kiểm tra được nộp khi người dùng chọn nộp bài và Hiện
R12.9 xác nhận nộp bài hoặc hết thời gian.
R12.10
R12.11 Hệ thống tiếp nhận Chi tiết bài kiểm tra và tự động n
chấm điểm và lưu Chi tiết kiểm tra và cơ sở dữ liệu.

Hệ thống hiển thị kết quả bài kiểm tra khi hết giờ làm Hiện
bài cho phép của kì thi thử.

Hệ thống hiển thị Bảng xếp hạng, hướng dẫn đáp án. Hiện
Cho phép tải file pdf bài thi thử.


Bảng 1.13. Chức năng uản l Bài học, hi thử

Qui tắc Chức năng Loại
R13.1
Quản trị viên hoặc giáo viên đăng nhập tài khoản mình. Hiện
R13.2 Chọn menu Admin.
R13.3
R13.4 Hệ thống hiển thị giao diện quản lí của admin. Hiện

R13.5 Quản trị viên chọn menu QL Bài học Read hoặc Listen. Hiện
R13.6
Hệ thống lấy thông tin và hiển thị danh sách các Bài học Hiện
R13.7 do Giáo viên đó đăng hoặc tất cả các Bài học có trong
cơ sở dữ liệu nếu đó là admin.
R13.8
R13.9 Chọn Button với Icon Edit để sửa thông tin bài học. Hiện

R13.10.1 Hệ thống hiển thị form Sửa. Nhập thông tin cần sửa và Hiện
R13.10.2 chọn Sửa để Sửa thông tin Bài học, hoặc Hủy để bỏ qua
thao tác.

Nếu chọn Sửa, Cở sở dữ liệu thay đổi thông tin của Bài n
học đó.

Chọn Button với Icon Delete để xóa Bài học. Hiện

Hệ thống gửi xác nhận có muốn xóa Bài học đó hay Hiện
không.


Nếu chọn Có, Cở sở dữ liệu xóa Bài học đó. n

Nếu chọn Không, hệ thống bỏ qua thao tác. n

16


×