ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM
--□&□--
BÁO CÁO ĐỒ ÁN 2
ĐỀ TÀI:
XÂY DỰNG ỨNG DỤNG HỖ TRỢ HỌC TIẾNG ANH TĂNG
TÍNH THÍCH NGHI VÀ TƯƠNG TÁC
Giảng viên hướng dẫn
Sinh viên thực hiện
Lê Trần Bảo Lộc
Lê Thành Tâm
Lớp
: ThS. Nguyễn Thị Thanh Trúc
:
- 19520685
- 19520254
: SE122.N11.PMCL - Đồ Án 2
TP. HỒ CHÍ MINH, THÁNG 12 NĂM 2022
ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM
--□&□--
BÁO CÁO ĐỒ ÁN 2
ĐỀ TÀI:
XÂY DỰNG ỨNG DỤNG HỖ TRỢ HỌC TIẾNG ANH TĂNG
TÍNH THÍCH NGHI VÀ TƯƠNG TÁC
Giảng viên hướng dẫn
Sinh viên thực hiện
Lê Trần Bảo Lộc
Lê Thành Tâm
Lớp
: ThS. Nguyễn Thị Thanh Trúc
:
- 19520685
- 19520254
: SE122.N11 - Đồ Án 2
TP. HỒ CHÍ MINH, THÁNG 12 NĂM 2022
LỜI CẢM ƠN
Lời đầu tiên, chúng em xin cảm ơn ThS. Nguyễn Thị Thanh Trúc đã tạo
điều kiện tốt nhất và cung cấp những kiến thức cần thiết để hoàn thành môn Đồ
Án 2.
Chúng em cũng xin gửi lời cảm ơn sâu sắc đến ThS. Nguyễn Thị Thanh
Trúc, người đã hỗ trợ, hướng dẫn nhóm và tạo điều kiện tốt nhất để nhóm hồn
thành đề tài nghiên cứu này. Với sự hỗ trợ nhiệt tình của cơ, cuối cùng nhóm
chúng em cũng đã hoàn thiện những kiến thức cần thiết thông qua việc nghiên
cứu và học hỏi những kiến thức mới. Chúng em sẽ cố gắng ngày càng hồn thiện
mình hơn trong tương lai và tiếp tục học tập chăm chỉ để đạt được kết quả tốt nhất.
Cuối cùng, xin kính chúc các thầy cơ giảng viên bộ mơn Cơng nghệ Phần
mềm và cơ Nguyễn Thị Thanh Trúc ln có sức khỏe dồi dào, cuộc sống hạnh
phúc, tiếp tục hoàn thành sứ mệnh cao cả là truyền thụ tri thức cho thế hệ mai sau.
Xin chân thành cảm ơn cô!
Thành phố Hồ Chí Minh, tháng 12 năm 2022
MỤC LỤC
CHƯƠNG I.
TỔNG QUAN ĐỀ TÀI..................................................................................... 1
1. Mô tả bài toán và xác định nhu cầu .............................................................................................1
1.1.
1.2.
Đặt vấn đề .......................................................................................................................................1
Giải pháp .........................................................................................................................................1
2. Tổng quan đề tài ............................................................................................................................1
3. Mục tiêu đề tài ................................................................................................................................2
4. Phạm vi đề tài .................................................................................................................................2
5. Yêu cầu............................................................................................................................................3
6. Công cụ áp dụng ............................................................................................................................3
CHƯƠNG II. CÔNG NGHỆ ÁP DỤNG ................................................................................ 4
1. Công nghệ phác thảo giao diện: Figma........................................................................................4
2. Công nghệ xây dựng front-end: Ngôn ngữ JavaScript và Framework React Native .............4
2.1. Nền tảng Cross Platform ..........................................................................................................................4
2.2. React Native Framework .........................................................................................................................6
3. Công nghệ xây dựng back-end: Restful API ...............................................................................7
3.1.
3.2.
3.3.
4.
Khảo sát, đánh giá các ứng dụng học tiếng Anh hiện có ....................................................11
4.1.
4.2.
5.
Restful API là gì? ............................................................................................................................7
Text-to-speech (TTS) ......................................................................................................................8
Speech-to-text (STT).....................................................................................................................10
Ứng dụng học ngoại ngữ: Duolingo..............................................................................................11
Ứng dụng dạy tiếng Anh: Memrise ...............................................................................................12
Nghiên cứu các phương pháp học ngoại ngữ .......................................................................13
CHƯƠNG III. PHÂN TÍCH THIẾT KẾ ............................................................................... 15
1.
Cơ sở dữ liệu ...........................................................................................................................15
1.1.
1.2.
2.
Sơ đồ lớp .......................................................................................................................................15
Chi tiết các thuộc tính ...................................................................................................................15
Yêu cầu chức năng .................................................................................................................18
2.1.
2.2.
2.3.
2.4.
Sơ đồ use-case ...............................................................................................................................18
Mô tả tác nhân ...............................................................................................................................18
Danh sách use-case .......................................................................................................................19
Đặc tả use-case ..............................................................................................................................19
CHƯƠNG IV. THIẾT KẾ GIAO DIỆN ................................................................................. 37
1.
2.
Sơ đồ liên kết màn hình .........................................................................................................37
Mơ tả các màn hình ................................................................................................................40
2.1.
2.2.
2.2.
2.3.
2.4.
2.5.
2.6.
2.7.
2.8.
2.9.
Màn hình Splash............................................................................................................................40
Màn hình Onboarding ...................................................................................................................41
Màn hình Đăng nhập .....................................................................................................................42
Màn hình Đăng ký .........................................................................................................................43
Màn hình Trang chủ ......................................................................................................................44
Màn hình Khố học .......................................................................................................................45
Màn hình Bài học ..........................................................................................................................45
Màn hình Bài học đã xong ............................................................................................................46
Màn hình Xếp hạng ......................................................................................................................47
Màn hình Từ điển .........................................................................................................................48
4
2.10.
2.11.
2.12.
2.13.
2.14.
2.15.
2.16.
2.17.
2.18.
2.19.
Màn hình Thơng tin về từ .............................................................................................................49
Màn hình Chọn thư mục để ghim ................................................................................................50
Màn hình Ghim từ.........................................................................................................................51
Màn hình Thư mục ghim từ .........................................................................................................52
Màn hình Trang cá nhân ...............................................................................................................53
Màn hình Chỉnh sửa thơng tin cá nhân .........................................................................................54
Màn hình Chức năng khác ............................................................................................................55
Màn hình Dịch bằng Text .............................................................................................................56
Màn hình OCR ..............................................................................................................................57
Màn hình Đọc tin tức ....................................................................................................................58
CHƯƠNG V. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ........................................................ 59
1.
Kết quả ....................................................................................................................................59
2.
Hạn chế ....................................................................................................................................59
3.
Hướng phát triển ....................................................................................................................59
4.
Kết luận ...................................................................................................................................59
BÁO CÁO KẾT QUẢ LÀM VIỆC NHÓM VÀ BẢNG ĐIỂM ............................................... 60
TÀI LIỆU THAM KHẢO ........................................................................................................ 62
5
NHẬN XÉT
(Của giáo viên hướng dẫn)
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
.................................................................................................................................
DANH SÁCH THÀNH VIÊN NHÓM
Họ và Tên
Mã số Sinh viên
Lê Trần Bảo Lộc
19520685
Lê Thành Tâm
19520254
CHƯƠNG I. TỔNG QUAN ĐỀ TÀI
1. Mơ tả bài tốn và xác định nhu cầu
1.1.
Đặt vấn đề
Hiện nay, tiếng Anh được coi là ngôn ngữ quốc tế, phổ biến nhất trên thế
giới. Hàng triệu người từ các nền văn hóa khác nhau đều nỗ lực học tiếng Anh
mỗi ngày. Ở Việt Nam, trong nhiều lĩnh vực khác nhau trong xã hội như kinh tế,
chính trị, khoa học, du lịch, v.v... đều rất cần những người có trình độ tiếng Anh
giỏi. Cả trẻ em cũng cần phát triển trình độ ngoại ngữ của bản thân từ sớm để có
đà phát triển ngoại ngữ về sau này.
Công nghệ đang phát triển mạnh mẽ kéo theo các thiết bị công nghệ ngày
càng nhỏ gọn và thơng minh hơn trong số đó có điện thoại di động. Mọi người ai
cũng dễ dàng sở hữu cho mình một chiếc điện thoại di động vì những lợi ích nó
mang lại như sự nhỏ gọn, tiện lợi, giá thành rẻ, dễ lưu trữ thông tin, dễ cập nhật
tin tức, dễ liên lạc, giao tiếp với người khác, …
Điện thoại di động trở nên cực kì phổ biến và hữu ích. Chính vì vậy, áp
dụng cơng nghệ cho việc học tiếng Anh là phương pháp hiệu quả và hoàn toàn
hợp lý. Việc cải thiện ghi nhớ từ vựng của người học sẽ trở nên đơn giản hơn bằng
việc học từ vựng và làm những bài kiểm tra vui nhộn sau những bài học để càng
tăng thêm khả năng ghi nhớ.
1.2.
Giải pháp
Kết hợp những yếu tố trên sẽ là phương pháp sáng tạo và đạt hiệu quả cao.
Nên chúng em đã nảy ra ý tưởng này và muốn xây dụng một ứng dụng hỗ trợ
người học học tiếng Anh qua việc luyện tập với những phương pháp bài tập, ghi
nhớ từ - INGLIS (đồ án được ThS. Nguyễn Thị Thanh Trúc nắm vai trò giảng viên
hướng dẫn).
2. Tổng quan đề tài
1
• Tên đề tài: Xây dựng ứng dụng hỗ trợ học tiếng anh tăng tính thích
nghi và tương tác.
• Tên ứng dụng: Inglis.
• Link Github đồ án: Link.
3. Mục tiêu đề tài
• Xây dựng một ứng dụng di động hoạt động trên nền tảng mobile với
mục đích chính là giúp mọi người học tiếng Anh.
• Xây dựng chức năng đánh giá người dùng sau khi bài học kết thúc –
làm các bài kiểm tra, đánh giá kiến thức và tặng coin cho người dùng
khuyến khích học tập.
• Xây dựng chức năng đổi quà từ hệ thống coin.
• Xây dựng chức năng nhận diện giọng nói từ input và xử lí thơng tin
trong bài kiểm tra nói của người dùng.
• Xây dựng ứng dụng có thể quản lý thơng tin người dùng: thơng tin cá
nhân, trình độ, các bài tập đã luyện, điểm luyện kĩ năng, xếp hạng điểm
cá nhân, coin.
• Triển khai được một số animation khi thực hiện các tác vụ trên ứng
dụng.
4. Phạm vi đề tài
Vì quá trình xây dựng ứng dụng và thực hiện đề tài có giới hạn, cùng với
đó là mảng kiến thức về React Native là quá lớn, nên nhóm đã xác định phạm vi
đề tài là thực hiện các chức năng và animation cơ bản của ứng dụng đồng thời
đánh giá về khía cạnh hiệu quả của việc sử dụng ứng dụng, những ưu nhược
điểm của ứng dụng.
• Phạm vi người dùng: Hướng đến đối tượng là nhóm người dùng có
nhu cầu học từ vựng tiếng Anh cấp tốc, nhóm người dùng có nhu cầu
tìm hiểu về tiếng Anh, cũng như muốn đánh giá về trình độ từ vựng
hiện tại của bản thân.
• Phạm vị môi trường: Môi trường di động - Android & iOS.
2
• Phạm vi chức năng: Cung cấp các chức năng cơ bản như dạy từ vựng
qua các phương pháp suy đốn, flashcard, gõ từ; ghim từ; kiểm tra
trình độ, kiểm tra kiến thức qua các hình thức ơn tập thẻ ghi nhớ, ghép
thẻ, viết từ, trắc nghiệm, tặng coin, nhận diện giọng nói.
5. Yêu cầu
Một số yêu cầu nhóm đặt ra khi triển khai ứng dụng:
- Tính thân thiện: Ứng dụng phải dễ học, dễ dùng.
- Tính đúng đắn: Ứng dụng chạy khơng lỗi.
- Tính thích nghi: Ứng dụng có thể chạy tốt trên nhiều thiết bị động với
cấu hình phần cứng khác nhau và thiết kế kiến trúc thiết bị khác nhau.
- Tính tiến hóa: Ứng dụng phải dễ dàng được phát triển thêm tính năng
mà khơng gây ảnh hưởng đến những tính năng đã phát triển trước đó.
- Tính bảo trì: Ứng dụng có thể thay đổi, chỉnh sửa các chức năng mà
không gây ảnh hưởng đến các chức năng khác.
- Tính tương tác: Ứng dụng tạo ra môi trường tương tác giữa hệ thống và
người dùng.
6. Công cụ áp dụng
• Cơng cụ phát triển ứng dụng di động: Visual Studio Code.
• Cơng cụ dùng để phân tích, thiết kế: Canva, Figma.
• Cơng cụ quản lý dự án: Github, Messenger.
• Cơng cụ trao đổi thơng tin giữa thành viên nhóm: Messenger, Teams
• Cơng cụ soạn thảo báo cáo: Microsoft Word.
3
CHƯƠNG II.
CƠNG NGHỆ ÁP DỤNG
1. Cơng nghệ phác thảo giao diện: Figma
Figma là một phần mềm bao gồm nhiều công cụ thiết kế mạnh mẽ trên
nền tảng website, giúp các lập trình viên sáng tạo khơng giới hạn giao diện
người dùng để thiết kế tạo mẫu. Hoặc bạn có thể tạo bài đăng trên các mạng xã
hội cùng nhiều dự án thiết kế khác. Các designer có thể sử dụng Figma để thiết
kế giao diện website, ứng dụng trực tuyến mà không cần phải tải về máy.
Điểm đặc biệt ở Figma là các cơng cụ được cung cấp hồn tồn miễn phí
và lưu trữ thơng qua hệ thống lưu trữ đám mây. Figma được đánh giá là một
trong những công cụ thiết kế quốc dân mà bất cứ Designer website nào cũng cần
sử dụng khi làm việc.
Ưu, nhược điểm của Figma
Ưu điểm:
• Làm việc cùng nhau đồng thời.
• Dễ dàng chia sẻ tệp.
• Cơng cụ thiết kế trang web dựa trên đám mây
• Nhiều plugin có sẵn
• Nhiều phương pháp để lựa chọn
Nhược điểm:
• Khơng thể sử dụng nếu khơng có kết nối internet đang hoạt động
• Các tùy chọn tìm kiếm khơng khả dụng với các thành phần cục bộ
• Yêu cầu dung lượng RAM phù hợp và Card đồ họa tốt
2. Công nghệ xây dựng front-end: Ngôn ngữ JavaScript và
Framework React Native
2.1. Nền tảng Cross Platform
2.1.1. Cross Platform là gì?
“Trong cơng nghệ điện tốn, đa nền tảng (tiếng Anh: cross-platform hay
multi- platform) là một thuật ngữ chỉ các phần mềm máy tính hay các phương
thức điện tốn và các khái niệm được thực thi đầy đủ và vận hành cùng nhau
4
trên nhiều nền tảng máy tính. Phần mềm đa nền tảng có thểđược chia thành hai
loại; một loại yêu cầu phải thiết kế hoặc biên dịch từng phiên bản cho mỗi nền
tảng nó hỗ trợ; loại kia có thể chạy trực tiếp trên bất cứ nền tảng nào mà không
cần sự chuẩn bị thêm đặc biệt nào - chẳng hạn như phần mềm được viết bằng
một ngôn ngữ thông dịch hay được biên dịch trước sang mã bytecode có khả
năng di động bằng một trình thơng dịch hay các gói run-time thường dùng hoặc
là thành phần tiêu chuẩn trên mọi nền tảng”.
Cross platform hay Multi Platform là một nền tảng đa ứng dụng. Hiểu đơn
giản hơn là chỉ với một bản code, bạn có thể phiên dịch và sử dụng nó trên nhiều
nền tảng ứng dụng khác nhau, giúp bạn tiết kiệm được cơng sức và thời gian
đáng kể.
Chính vì lợi thế đó mà Cross platform được ưa chuộng bởi rất nhiều lập
trình viên hiện nay. Ngồi ra, khi lập trình, bạn cần phải lựa chọn tuỳ theo ưu,
nhược điểm của một Framework bởi Cross platform sử dụng Framework đa nền
tảng.
Đến thời điểm hiện tại, React-Native, Xamarin và Flutter theo thứ tự được
xem là 3 frameworks phổ biến nhất cho phép phát triển app trên smartphone sử
dụng các hệ điều hành, hay nền tảng khác nhau (cross-platform mobile
development), mà thông dụng nhất là iOS và Android. Với các frameworks này,
một chương trình được viết có thể chạy trên tất cả các nền tảng; cụ thể hơn, chỉ
cần phát triển 1 project nhưng có thể tạo ra các apps chạy trên smartphone sử
dụng iOS, Android.
Sự xuất hiện các frameworks nói trên đã hình thành các trường phái và
cộng đồng phát triển app, kèm theo là những tranh luận về việc đánh giá xếp
hạng cho các frameworks này.
2.1.2. Ưu nhược điểm của Cross Platform
Ưu điểm:
• Có thể sử dụng một bản code trên nhiều phiên bản khác nhau.
5
• Sử dụng Cross platform sẽ giúp tiết kiệm được lượng lớn chi phí và
cơng sức viết code.
• Cross platform thích hợp với những dự án lớn, địi hỏi tính linh
hoạt và đa dạng.
Nhược điểm:
• Chưa có khả năng khai thác thư viện của những nền tảng lớn như
Android hoặc iOS dù nó tiết kiệm được chi phí và có tính linh hoạt
cao.
• Q trình cấp phép cho cơng nghệ của ứng dụng Cross platform
gặp nhiều khó khăn và phức tạp.
2.2. React Native Framework
2.2.1. React Native Framework là gì?
React Native là các đoạn code đã được viết sẵn (framework) do cơng ty
cơng nghệ Facebook phát triển. Các lập trình viên React Native là người sử
dụng những framework này để phát triển nên các hệ thống, nền tảng ứng dụng
trên các hệ điều hành như IOS và Android. Ngôn ngữ lập trình được sử dụng
nhiều nhất là Javascript.
Sự ra đời của React Native đã giải quyết được bài toán về hiệu năng và sự
phức tạp khi trước đó người ta phải dùng nhiều loại ngôn ngữ native cho mỗi
nền tảng di động. Chính vì thế lập trình React Native sẽ giúp tiết kiệm được
phần lớn thời gian và công sức khi thiết kế và xây dựng nên một ứng dụng đa
nền tảng. Javascript phù hợp với rất nhiều nền tảng khác nhau.
2.2.2. Ưu, nhược điểm của React Native Framework
Ưu điểm
• Khơng phải dùng nhiều native nhờ đó đơn giản hóa quá trình xây
dựng nền tảng.
• Rút ngắn thời gian khi phát triển ứng dụng.
6
• Tối thiểu hố chi phí cho doanh nghiệp.
• Khả năng tái sử dụng code lên đến 80%.
• Mang đến trải nghiệm người dùng chất lượng hơn.
• Khơng địi hỏi kiến thức nền quá chuyên sâu, bất kỳ ai đam mê IT
cũng có thể học lập trình React Native.
Nhược điểm
• Mới chỉ hỗ trợ trên 2 nền tảng phổ biến nhất là IOS và Android.
• Hiệu năng sẽ khơng bằng những ứng dụng thuần native code.
• Độ bảo mật cịn hạn chế.
• Khơng hồn tồn free, một số thư viện cần trả phí để có thể trải
nghiệm.
• Một vài module có khả năng tùy biến thấp, khơng thực sự tốt.
3. Cơng nghệ xây dựng back-end: Restful API
3.1.
Restful API là gì?
API (Application Programming Interface) là một tập các quy tắc và cơ
chế mà theo đó, một ứng dụng hay một thành phần sẽ tương tác với một ứng
dụng hay thành phần khác. API có thể trả về dữ liệu ở những kiểu dữ liệu phổ
biến như JSON hay XML.
Restful (REpresentational State Transfer) là một dạng chuyển đổi cấu trúc
dữ liệu, một kiểu kiến trúc để viết API. Nó sử dụng phương thức HTTP đơn giản
để tạo giao tiếp giữa các máy. Vì vậy, thay vì sử dụng một URL cho việc xử lý
một số thông tin người dùng, REST gửi một yêu cầu HTTP như GET, POST,
DELETE,… đến một URL để xử lý dữ liệu.
Rest API là một tiêu chuẩn dùng trong việc thiết kế các API cho các ứng
dụng web để quản lý các resource. Restful là một trong những kiểu thiết kế API
được sử dụng phổ biến ngày nay để cho các ứng dụng (web, mobile…) khác
nhau giao tiếp với nhau.
7
Chức năng quan trọng nhất của REST là quy định cách sử dụng các HTTP
method (như GET, POST, PUT, DELETE…) và cách định dạng các URL cho
ứng dụng web để quản các resource.
Restful không quy định logic code ứng dụng và khơng giới hạn bởi ngơn
ngữ lập trình ứng dụng, bất kỳ ngơn ngữ hoặc framework nào cũng có thể sử
dụng để thiết kế một Restful API.
Ưu, nhược điểm của Restful API
Ưu điểm:
• Làm cho ứng dụng rõ ràng hơn để sử dụng. Điều này sẽ cung cấp
cho ứng dụng trọng tâm của riêng nó khi nó được đưa vào hoạt
động.
• Restful url khơng phải là một hành động mà đại diện cho một tài
nguyên cụ thể, giúp người lập trình khơng cần sử dụng q nhiều
thao tác, từ đó giảm nhầm lẫn và sai sót.
• Dễ dàng áp dụng dữ liệu trả về nhờ hiển thị dữ liệu ở các định dạng
khác nhau như HTML, XML, JSON, .. khi sử dụng restful api.
• So với các phương thức khác, việc thực thi mã trong restful api dễ
dàng và đơn giản hơn.
• Sử dụng api yên tĩnh sẽ tập trung nhiều hơn vào tài nguyên hệ
thống thay vì dữ liệu hoặc các yếu tố khác.
Nhược điểm:
• Chi phí vận hành, phát triển và sửa đổi khá cao và tốn kém.
• Yêu cầu bạn phải là người có kiến thức chuyên sâu, am hiểu về
coding cũng như lập trình.
• Gặp sự cố bảo mật khi hệ thống bị tấn công.
3.2.
Text-to-speech (TTS)
3.2.1. Text-to-speech là gì
8
Chuyển văn bản thành giọng nói (TTS) là một loại công nghệ hỗ trợ đọc
to văn bản kỹ thuật số.
Đôi khi nó được gọi là cơng nghệ “read aloud”. TTS có thể lấy các kỹ từ,
câu từ và chuyển đổi chúng thành âm thanh. TTS thường sử dụng các công nghệ
như Natural Language Processing (NLP) và Digital Signal Processing (DSP) để
chuyển đổi text thành âm thanh.
3.2.2. Phương thức & hoạt động
Hoạt động của một module Text-to-speech có thể chia thành đơn giản như
sau:
Bước 1: Tổng hợp ký tự thành từ.
Đây là bước đầu tiên, mà thường được gọi là tiền xử lý hoặc chuẩn hóa,
tất cả đều nhằm giảm sự mơ hồ: đó là việc thu hẹp nhiều cách khác nhau mà bạn
có thể đọc một đoạn văn bản thành cách thích hợp nhất. Q trình tiền xử lý bao
gồm việc xem qua văn bản và làm sạch nó để máy tính ít mắc lỗi hơn khi thực
sự đọc to các từ. Những thứ như số, ngày, giờ, chữ viết tắt, từ viết tắt và các ký
tự đặc biệt (ký hiệu tiền tệ, v.v.) cần phải được chuyển thành từ - và điều đó khó
hơn âm thanh của nó.
Bước 2: Tổng hợp từ thành âm vị.
Định nghĩa của âm vị là các mà một ký tự, từ, được đọc. Một bộ dữ liệu từ
điển về âm vị, quy tắc chuyển đổi âm vị được cho sẵn để quy định cách mà một
từ được đọc như thế nào.
Bước 3: Tổng hợp âm vị thành âm thanh.
Có ba cách tiếp cận khác nhau.
• Sử dụng bản ghi âm của con người nói các âm vị.
• Để máy tính tự tạo ra các âm vị bằng cách tạo ra các tần số âm thanh
cơ bản (hơi giống bộ tổng hợp âm nhạc)
• Bắt chước cơ chế của giọng nói con người.
9
3.3.
Speech-to-text (STT)
3.3.1. Speech-to-text là gì?
Chuyển đổi giọng nói sang văn bản là q trình chuyển đổi lời nói thành
văn bản viết. Quá trình này cũng thường được gọi là nhận dạng giọng nói. Mặc
dù các thuật ngữ này gần như đồng nghĩa, nhưng tính năng Nhận dạng giọng nói
đơi khi được sử dụng để mơ tả quy trình rộng hơn của việc trích xuất ý nghĩa từ
giọng nói, tức là hiểu giọng nói. Thuật ngữ nhận dạng giọng nói nên tránh vì nó
thường được liên kết với q trình xác định một người từ giọng nói của họ, tức
là nhận dạng người nói.
3.3.2. Phương thức & hoạt động
Tất cả các hệ thống chuyển lời nói thành văn bản đều dựa vào ít nhất hai
mơ hình: mơ hình âm học và mơ hình ngơn ngữ (acoustic model and language
model). Ngồi ra, hệ thống từ vựng lớn sử dụng mơ hình phát âm. Điều quan
trọng là phải hiểu rằng khơng có cái gọi là cơng cụ nhận dạng giọng nói phổ
biến. Để có được chất lượng phiên âm tốt nhất, tất cả các mơ hình này có thể
chun biệt cho một ngơn ngữ, phương ngữ, miền ứng dụng, loại giọng nói và
kênh giao tiếp nhất định.
Giống như bất kỳ công nghệ nhận dạng mẫu nào khác, nhận dạng giọng
nói khơng thể khơng có lỗi. Độ chính xác của bản ghi lời nói phụ thuộc nhiều
vào người nói, phong cách nói và điều kiện mơi trường. Nhận dạng giọng nói là
một q trình khó hơn những gì mọi người thường nghĩ, ngay cả đối với một
con người. Con người quen với việc hiểu giọng nói, khơng phải phiên âm nó, và
chỉ những bài phát biểu được xây dựng đúng cơng thức mới có thể được phiên
âm mà không bị mơ hồ.
Theo quan điểm của người dùng, hệ thống chuyển lời nói thành văn bản
có thể được phân loại dựa trên cách sử dụng của nó: lệnh và điều khiển, hệ
thống hộp thoại, đọc chính tả văn bản, phiên âm tài liệu âm thanh, v.v. Mỗi cách
sử dụng có yêu cầu cụ thể về độ trễ, hạn chế về bộ nhớ , kích thước từ vựng và
các tính năng thích ứng.
10
4.
Khảo sát, đánh giá các ứng dụng học tiếng Anh hiện có
4.1.
Ứng dụng học ngoại ngữ: Duolingo
Duolingo là nền tảng học ngoại ngữ miễn phí và có độ phổ biến nhất tính
đến thời điểm hiện tại. Duolingo được hình thành với sứ mệnh tạo ra một nền
tảng giáo dục miễn phí, thú vị và dễ tiếp cận với các khóa học đều tương ứng
với tiêu chuẩn quốc tế về mức độ thành thạo ngơn ngữ. Mỗi Unit trong Duolingo
sẽ có nhiều bài học khác nhau với các dạng bài tập nghe-nói, flashcard, sắp xếp
câu và các câu hỏi trắc nghiệm. Duolingo cũng đề xuất cách học giúp người học
vừa có thể củng cố kiến thức cũ và học kiến thức mới qua việc sau khi lên được
level 1 ở bài học mới thì người học sẽ quay lại học để nâng level ở bài học cũ.
Ngoài ra, ứng dụng này cũng đưa ra các tính năng khác để hỗ trợ người học như
podcast, câu chuyện và bảng xếp hạng.
Một số điểm nổi bật:
• Phù hợp cho tất cả mọi người.
• Giúp người học ghi nhớ từ vựng.
• Giảm bớt căng thẳng trong q trình học tiếng Anh.
• Tiện lợi trong việc học tiếng Anh.
• Mọi tính năng đều miễn phí.
• Học nhiều ngôn ngữ cùng một lúc.
11
Một số hạn chế:
• Nó tập trung nhiều hơn vào những người đã biết nói tiếng Anh.
• Khơng thể lựa chọn chủ đề từ vựng.
• Nó chỉ dành cho người mới bắt đầu và khơng dành cho người học
Nâng cao.
• Duolingo giống như một trò chơi hơn là một ứng dụng học tập.
• Bạn chỉ có thể học một số từ vựng và cụm từ.
4.2.
Ứng dụng dạy tiếng Anh: Memrise
Về bản chất, Memrise là một ứng dụng học ngôn ngữ bằng flashcard. Cơ
bản thì sẽ có những tờ giấy với một từ hay cụm từ tiếng Anh được viết ở một
mặt và bản dịch được viết ở mặt kia. Cách học này chủ yếu được ứng dụng để
học ngôn ngữ. Tuy nhiên, bạn vẫn có thể sử dụng nó để ghi nhớ và thực hành
các từ của các môn học hay lĩnh vực khác. Tóm lại, Memrise là một ứng dụng
học từ vựng, giúp ghi nhớ những từ và cụm từ quen thuộc bằng cách sử dụng kĩ
năng ghi nhớ và sự lặp lại. Nếu bạn muốn học thêm từ vựng mới, bạn có thể
tham gia vào các bài tập kéo dài 10 phút. Memrise sẽ giúp bạn có được những
kiến thức cơ bản cần thiết.
12
Một số điểm nổi bật:
• Phiên bản miễn phí khơng q hạn chế tính năng.
• Thường xun nhắc lại những từ đã học.
• Cung cấp nhiều khóa học, đa dạng ngơn ngữ và cấp độ.
Một số hạn chế:
• Nhiều khóa học của cộng đồng khơng được chất lượng.
• Các dạng bài tập lặp đi lặp lại
• Chỉ tập trung vào từ vựng
• Giao diện khơng hề thân thiện
• Khơng dành cho người học có trình độ cao
5. Nghiên cứu các phương pháp học ngoại ngữ
Phương pháp Flashcard
Flashcard là hình thức học và ghi nhớ phổ biến bậc nhất trên thế giới.
Đồng thời, VOCA còn áp dụng đa phương tiện VAK (Hình ảnh – âm thanh –
tương tác) để giúp bạn hình thành hình ảnh trực quan và cách phát âm chính xác
của từ vựng ấy. Ngồi năm yếu tố căn bản, các yếu tố khác như ngữ cảnh
(Context), từ đồng nghĩa (Synonyms) và cách kết hợp từ (Collocations) cũng
được tích hợp nhằm hỗ trợ bạn tạo thêm nhiều liên kết từ vựng. Tất cả tạo nên
một phiên bản flashcard học tiếng Anh thơng minh giúp q trình ghi nhớ từ
vựng của bạn đạt hiệu quả cao nhất.
Phương pháp Gamification
Phương pháp game hóa (Gamification) lấy người học làm trọng tâm
(Learner-centered) giúp người học quên đi cảm giác học căng thẳng và ghi nhớ
từ vựng một cách hiệu quả nhất.
Hình thức gõ từ và suy đoán (trắc nghiệm) được áp dụng phương pháp
tương tác câu hỏi (Inquiry-based) để phát triển khả năng suy đốn, hình thành
kiến thức từ vựng dựa trên các câu hỏi và gợi ý liên tục. Đây cũng là hình thức
13
giúp người học củng cố độ ghi nhớ và ứng dụng từ vựng với kỹ năng viết và
đọc-hiểu.
Phương pháp Phát âm
Hình thức phát âm được áp dụng phương pháp nghe – nói (Audio-lingual)
để phát triển khả năng phát âm cũng như hình thành liên kết âm thanh của từ
vựng. Người học sẽ được nghe cách phát âm đúng và yêu cầu lặp lại chính xác
từ vựng. Đây cũng là hình thức học hiệu quả giúp người học củng cố độ ghi nhớ
và ứng dụng từ vựng với kỹ năng nghe và nói.
14
CHƯƠNG III.
PHÂN TÍCH THIẾT KẾ
1. Cơ sở dữ liệu
1.1.
Sơ đồ lớp
1.2.
Chi tiết các thuộc tính
1.2.1. Bảng Account
STT
1
2
3
4
5
Thuộc tính
ID_Account
Username
Password
Type
ID_User
Kiểu dữ liệu
String
String
String
String
String
Ràng buộc
Khóa chính
Rỗng
Rỗng
Rỗng
Khóa ngoại
Diễn giải
Mã tài khoản
Tên đăng nhập
Mật khẩu
Loại tài khoản
Mã người dùng
Kiểu dữ liệu
Ràng buộc
Diễn giải
1.2.2. Bảng User
STT
Thuộc tính
15
1
2
3
4
5
6
7
8
ID_User
Name
Email
Phone
Job
Point
Rank
Time
String
String
String
String
String
Int
String
String
Khóa chính
Rỗng
Rỗng
Rỗng
Rỗng
Rỗng
Rỗng
Rỗng
Mã người dùng
Tên người dùng
Email người dùng
Số điện thoại người dùng
Nghề nghiệp người dùng
Điểm người dùng
Trình độ người dùng
Thời gian tham gia app
1.2.3. Bảng Vocabulary
STT
Thuộc tính
1
ID_Vocabulary
Kiểu dữ
liệu
String
2
3
4
5
6
7
Word
IPA
Type
Definition
VietNamese_Meaning
Example
String
String
String
String
Int
String
8
9
Example_Meaning
ID_Lesson
String
String
10
Uri
String
Ràng
buộc
Khóa
chính
Rỗng
Rỗng
Rỗng
Rỗng
Rỗng
Rỗng
Rỗng
Khóa
ngoại
Rỗng
Diễn giải
Mã từ vựng
Từ vựng
Phiên âm từ
Từ loại
Định nghĩa
Nghĩa tiếng việt
Câu ví dụ Tiếng
Anh
Nghĩa câu ví dụ
Mã bài học
Link ảnh minh họa
1.2.4. Bảng Lesson
STT
1
2
3
4
5
Thuộc tính
ID_Lesson
Name_Leson
Type
ID_Course
Uri
Kiểu dữ liệu
String
String
String
String
String
Ràng buộc
Khóa chính
Rỗng
Rỗng
Khóa ngoại
Rỗng
Diễn giải
Mã bài học
Tên bài học
Loại bài học
Mã khóa học
Link ảnh minh họa
1.2.5. Bảng Course
STT
1
2
Thuộc tính
ID_Course
Name_Course
Kiểu dữ
liệu
String
String
Ràng buộc
Khóa chính
Rỗng
16
Diễn giải
Mã khóa học
Tên khóa học
Information
Number_Lesson
Level
Content
Uri
3
4
5
6
7
String
Int
String
String
String
Rỗng
Rỗng
Rỗng
Rỗng
Rỗng
Thơng tin khóa học
Số lượng bài học
Cấp độ khóa học
Nội dung khóa học
Link ảnh minh họa
1.2.6. Bảng Learning
STT
1
2
3
4
5
6
7
8
Thuộc tính
Kiểu dữ
liệu
ID_User
String
ID_Course
String
ID_Lesson
String
State
Int
Time
Int
Memorized
Int
No_Memorized Int
Max_Point
Int
Ràng buộc
Khóa chính
Khóa chính
Khóa chính
Rỗng
Rỗng
Rỗng
Rỗng
Rỗng
Diễn giải
Mã người dùng
Mã khóa học
Mã bài học
Trạng thái bài học
Thời gian
Số từ đã thuộc
Số từ chưa thuộc
Điểm cao nhất
1.2.7. Bảng DetailLearning
STT
1
2
3
4
Thuộc tính
Kiểu dữ
liệu
ID_User
String
ID_Leson
String
ID_Vocabulary String
State
String
Ràng buộc
Diễn giải
Khóa chính
Khóa chính
Khóa chính
Rỗng
Mã người dùng
Mã bài học
Mã từ vựng
Trạng thái từ học
Ràng buộc
Diễn giải
1.2.8. Bảng Folder
STT
1
2
3
4
Thuộc tính
ID_Folder
Name_Folder
Number
ID_User
Kiểu dữ
liệu
String
String
String
String
Khóa chính
Khóa chính
Khóa chính
Rỗng
Mã thư mục
Tên thư mục
Số thứ tự
Mã người dùng
1.2.9. Bảng DetailFolder
STT
1
2
Thuộc tính
Kiểu dữ
liệu
ID_Folder
String
ID_Vocabulary String
Ràng buộc
Khóa chính
Khóa chính
17
Diễn giải
Mã thư mục
Mã từ vựng
3
Date
String
Rỗng
2. Yêu cầu chức năng
2.1.
Sơ đồ use-case
2.2.
Mô tả tác nhân
18
Ngày thêm