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

Xây dựng ứng dụng học tiếng anh thông minh English-learn

66 0 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 UNG DỤNG HỌC TIENG ANH THONG MINH ENGLISH-LEARN
Tác giả NGUYEN PHU THỊNH
Người hướng dẫn TS. ĐÀO THỊ THUY QUYNH
Trường học Học Viện Công Nghệ Bưu Chính Viễn Thô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 2021
Thành phố Hà Nội
Định dạng
Số trang 66
Dung lượng 13,89 MB

Nội dung

Người ta học và sử dụng tiếng Anh với nhiều mục đích khác nhau, dé đáp ứng nhu cau giao tiếp ngày càng lớn trong xã hội, dé kiếm được công việc tốt hơn, thăng tiễn trong sự nghiệp hay dé

Trang 1

HỌC VIEN CÔNG NGHỆ BƯU CHÍNH VIỄN THONG

KHOA CÔNG NGHỆ THÔNG TIN I

Trang 2

HỌC VIEN CÔNG NGHỆ BƯU CHÍNH VIỄN THONG

KHOA CÔNG NGHỆ THÔNG TIN I

Trang 3

ĐÔ ÁN TOT NGHIỆP

LỜI CẢM ƠN

Trong quá trình thực hiện đô án, đê có được kêt quả như ngày hôm nay, em đã nhận được sự giúp đỡ, quan tâm, động viên từ thây cô, bô mẹ và bạn bè Và qua đây,

em muôn được gửi lời cảm ơn tới tât cả mọi người.

Đầu tiên, em xin bày tỏ lời cảm ơn sâu sắc tới cô TS Đào Thị Thúy Quỳnh —

Giảng viên Khoa Công nghệ thông tin I — Học viện Công nghệ Bưu chính Viễn thông

đã tận tình chỉ bảo, hướng dẫn, hỗ trợ em trong suốt quá trình thực hiện đồ án

Em cũng xin chân thành cảm ơn các thầy cô trong Học viện Công nghệ Bưu

chính Viễn thông, đặc biệt là thầy cô Khoa Công nghệ thông tin I đã tận tâm dạy dỗ,

truyền đạt rất nhiều cho em trong suốt quá trình học tập và rèn luyện tại Học viện, giúp

em trau đồi tư duy và kỹ năng và kiến thức sẽ là hành trang giúp em tự tin hơn trong

công việc, cuộc sông và những mục tiêu trong tương lai

Cuối cùng em xin phép gửi lời cảm ơn tới gia đình, bạn bè, đã luôn giúp đỡ,quan tâm, động viên em trong suốt quá trình học tập, nghiên cứu và hoàn thành đồ ántốt nghiệp

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

Hà Nội, tháng 12 năm 2021

Nguyễn Phú Thịnh

NGUYEN PHU THỊNH - B17DCCN578

Trang 4

ĐÔ ÁN TOT NGHIỆP

NHAN XÉT, DANH GIA, CHO DIEM

(Của giáo viên hướng dẫn)

Giáo viên hướng dan

TS ĐÀO THỊ THÚY QUỲNH

NGUYEN PHU THỊNH - B17DCCN578

Trang 5

ĐÔ ÁN TOT NGHIỆP

NHAN XÉT CUA GIÁO VIÊN PHAN BIEN

Giáo viên phản biện

NGUYEN PHU THỊNH - B17DCCN578

Trang 6

ĐÔ ÁN TOT NGHIỆP

MỤC LỤC

LOT CAM 80) DA Anh aaa Ả 1

DANH MỤC CÁC KÝ HIEU VÀ CHỮ VIET TẮT - 2s ©ss©s2©sse+ss©+s2 7

DANH U (0(0827.01/C1 0N NHuma 8

DANH MỤC HINH VEvecssssssssessssssessessessessssssessessessessssssesscsscsscsassasssscsscssssaesscsasesseeseesees 9

MO DAU ovecssessessesssssssessssssesssssssssuessscssessscssscsssssscssscsucesscsuessscsassucssscanessscsaecaneesseeseessees H

CHUONG 1: GIỚI THIỆU VE UNG DỤNG HỌC TIENG ANH - 13

1.1 GIỚI THIEU CHUNG 2-5 52222 se se EssSssEssesserserserssessesse 13

1.1.1 Bài toán về nhu cầu học tiếng Anh -s- << se csessessesesecse 131.1.2 Một số ứng dụng học tiếng Anh hiện nay . -s-sccsscss5ssess 13

1.1.3 Giải pháp và mục tiêu cần đạt được -s s-sccsecsecssessess 171.2 GIỚI THIỆU NODEJS PLATFORM . 2 s<©csecssevssesserssesse 18

1.2.1 NÑode,JS là gi? 0-5 s9 9 TH 09.09 000000008096 18

1.2.2 Ưu điểm của Node.JS -s-s<csssvsvssevseevsersserserssersserssrse 19

1.2.3 Nhược điểm của NodedS -scscscsscsscssessrssrsssrssrssrssrssese 20

1.4.2 Ưu điểm của ReaetJS -sc<ccscsserserssrssrssrssrrsersrrssrssrssrssese 25

1.4.3 Nhược điểm của ReactIS -s-scscscsscssssserserserserssrssrssese 251.5 KET LUẬN CHƯNG -.s-s- 5£ se s2 ©ss£ss£EseEseEssESsExsExserserserssrssesse 25

CHUONG 2: PHAN TÍCH VA THIẾT KE HE THONG UNG DỤNG HOC TIENG

ANH THONG MINH - ENGLISHLEARN scssessssssssssesssesssessecssesscssesssesssessesssesssesseess 27

2.1 GIỚI THIEU HE THONG .- s2 2s s2 ssss£ssesseEseEssessessessse 27

Trang 7

ĐÔ ÁN TOT NGHIỆP

2.2 BIEU DO USE,CA SE, -5°e°©©++s©EE+deEEE+AeEEEAASEEEkAeerrkrerrkerrrkee 28

2.2.1 Danh sách Ca USECASE - 0 5s 9 0 00096 060 28

2.2.2 Sơ đồ usecase tổng quát . s- se se ©ss©ssesseEseEsstsstssesserserserssrssesse 29

2.2.3 Biểu đồ usecase chỉ tiẾ( -s-ceskeserkkstrkktrkkerkketrkserkserkke 30

2.3 KICH BAN CHUAN VÀ NGOẠI LLỆ -. -s-s- se se ©ss©ssessessessss 36

2.3.1 Usecase đăng Ky co cọ ọ H TH TH T0 00090004 36 2.3.2 Usecase đăng nhập d- <5 s 9 9.4.9 90.0 0H TY 004000406968096 36

2.3.3 Usecase tra từ điỄn -s-csccsccserseresrestkstrserserssrasrksrtsrrssrssrssrssssse 37

2.3.4 Usecase học từ vựng “TÍO E ÍC << 5 s s9 9 999 09 00000960 8 38

2.3.5 Usecase học câu giao tiẾp -scsscsscesceserssrserssresrsstrserssrssrssrssssse 38

2.3.6 Usecase học từ vựng EllaslCaFCỈ << 5< 5S 9S 99.96 89968996886 39 2.3.7 Usecase tra ngữ phiấp o- << G sọ 9 9 lọ g0 0 009.0809806 40

2.3.8 Usecase tra động từ bất quy (ắC -s-scsccssesersrsssssessrsserssrsee 41

2.3.9 Usecase luyện fậẬpD d- ó5 s9 9 9 0 0 0 000 00908800968096 41 2.3.10 Usecase Lưu từ yêu thich co <5 55 s9 HH 0060896 42 2.3.11 Usecase translate 5-5 < 5 << 9 HH 09.0006 86086 860 43 2.3.12 Usecase đóng ØÓD o- G0 ọ Họ ụ nọ cọ l0 00.00 8098 06 44

2.4 BIEU DO LỚP PHAN TÍCH - 2° s°E+sseervxeerrxsserorre 45

2.5 THIẾT KE CƠ SỞ DU LIỆU -< 2s s2 s2 ssss£ssesseEssessessessse 45

2.6 BIEU DO TUẦN TỰ CHO CÁC CHỨC NĂNG -s-s°-scsses 48

2.6.1 Usecase tra từ điỂn, từ VỰng -s- s-css<cscsessessessvsersersessessssersee 48

2.6.2 Usecase học câu giao tiẾp -scss se cescsserssrserssresrssrrserssrssrssrssrrse 49

2.6.3 Usecase tra ngữ pháp d ó5 s9 9.9 TH 000060006 00 50 2.6.4 Usecase luyện (ẬD << << HH HH In 000010 50 2.6.5 Usecase ẦTATISÏ/AÝC - GG- GS Ọ Họ cọ 00000006008 51

3.1.1 Môi trường thử nghiệm và cai đặt ứng dụng -.-s- <5 «se 54

3.1.2 Kết nối MongoDB Atlas với Nodejs SerYer- -s sscsscsscssesse 54

3.2 GIAO DIEN UNG DỤNG es-ss©csessersstrseresersetrserseersersserssse 56

3.3 KET LUẬN CHƯƠNGG 5< 5< se se ssevssEssEssEeerssrtsrrssrssrssrssrssee 62

KET LUAN SA neanaaunu ÔÒ 63

NGUYEN PHU THỊNH - B17DCCN578

Trang 8

ĐÔ ÁN TOT NGHIỆP

TÀI LIEU THAM KHẢ O 2- 2< 5< ©ẻ£Sẻ£Se£EE£EE£EESE+EEEEeExetketkerrsrrerrerrssree

NGUYEN PHU THỊNH - B17DCCN578

Trang 9

ĐÔ ÁN TOT NGHIỆP

DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIET TAT

ACID: Atomicity - Consistency - Isolation

- Durability

Tính nguyên tố nhất quán cô lập

-bền vững

noSQL: not only Structured Query

Language Ngôn ngữ truy van phi cau trúc

RDBMS: Relational Database

mạng Internet.

HTML: HyperText Markup Language Một ngôn ngữ đánh dâu được thiết kế

dé tạo ra các trang web.

các tài liệu viét băng ngôn ngữ HTML

và XHTML.

trên Internet.

NGUYEN PHU THỊNH - B17DCCN578

Trang 10

ĐÔ ÁN TOT NGHIỆP

DANH MỤC BANG

Bang 1.1 So sanh SQL v6i nOSQL 01 24

Bang 2.1: Danh sách các uS€C8S€ - - cà 1H TH ng ng HH HH re 29 Bảng 2.2: Kịch ban usecase đăng Ky -. nnSnn SH HH HH HH ng nh gưky 36 Bang 2.3: Kịch ban usecase đăng nhập - (119v ng ngư 37

Bang 2.4: Kịch ban usecase tra từ điễn -¿- 2-5 ©sSx+E2 2E EEEEEE121121 2111111 cyeeg 38

Bang 2.5: Kịch ban usecase hoc từ vựng TOIEÍC - - 5 5 3xx sksseeeeeseree 38

Bang 2.6: Kịch ban usecase học câu giao tiẾp 2- 5-52 S22c2E2EEeEEeEEerkrrxerkrred 39

Bảng 2.7: Kịch bản usecase học từ vựng Flashcard - - - se ksssekkseeseeeske 40

Bang 2.9: Kịch ban usecase tra động từ bất quy tC eececeecesceseesessesseseseesessesseseseeees 41

Bang 2.10: Kịch ban usecase luyện tap - - S3 3+ 3S ng ng 42 Bang 2.11: Kịch bản usecase lưu từ yêu thích - 5 55 + + Eeeeeskesrrsereree 43 Bảng 2.12: Kịch ban usecase trarISÌÏAf - - - c3 2 3221111311 11911 1 9111 8111 8111 1 ng re 44 Bang 2.13: Kịch bản usecase đóng ØÓT - Ác 2c 1911191191 HH ng ng ke, 45

Bang 2.14: Lược đồ cơ sở dữ liỆu -2- 5£ £+S£2EE9EE£EEEEEEEEEEE2E127171 7121222 re 48

NGUYEN PHU THỊNH - B17DCCN578

Trang 11

ĐÔ ÁN TOT NGHIỆP

DANH MỤC HÌNH VE

Hình 1.1: Giao diện ứng dụng Duolingo 2G 5 2221133311191 1 E9 1E1EEkkessrre 14

Hình 1.2: Giao diện ứng dụng MermrIse - - - + + SE nghiệt 15

Hình 1.3: Giao diện ứng dụng Từ điển TFlat 2- 22 5 ©5++2x22+v£x+2zxzzeersrs 16

Hình 1.4: Giao diện ứng dụng Busuu G6 6S E211 E91 9111k kg hp 17

Hình 1.5: Mô tả các thành phần quan trọng của Node.js 2-5 522522 s22: 19

Hình 1.6: Mô tả cách lưu trữ dữ liệu trong MongolD - - -s-csccccsscrsseeeeessee 21

Hình 2.1: Biểu đồ usecase tong quát - 2 2-52 2E EEEEE 2112212121 re 30

Hình 2.2: Biểu đồ chỉ tiết usecase đăng ký - 2-52 2E EEEeEErrrrrrrrrred 30Hình 2.3: Biểu đỗ chỉ tiết usecase đăng nhập 2¿- 5: ©52+2x22xvzxezxrrrxersree 30Hình 2.4: Biểu đồ chỉ tiết usecase tra từ điỂn :-5¿©5¿25++2+ExeExerxrkerrserrrred 31Hình 2.5: Biểu đồ chi tiết usecase học từ vựng TOEIC s-cs+sseseseeereesee 31

Hình 2.6: Biéu đỗ chỉ tiết usecase học câu giao tiẾp 2-52 s+cxscxczxzrzrsrred 32

Hình 2.7: Biểu đồ chi tiết usecase học từ vựng Flashcard - « ««++<++ex+ses 32Hình 2.8: Biểu đồ chi tiết usecase tra ngữ pháp - ¿+ ++c++xzkerxerxersrrerrees 33Hình 2.9: Biểu đồ chi tiết usecase tra động từ bất quy tắc -:-ce+cz+cec: 33Hình 2.10: Biéu đồ chi tiết usecase luyện tập -2-5¿+522c+2E2EEeEEerErrrrxrrkrred 34Hình 2.11: Biểu đồ chi tiết usecase lưu từ yêu thích -. ¿-2cs++cx+2s+ecsz+ 34Hình 2.12: Biểu đồ chi tiết usecase transÏate s- 5c 5c +S¿+S++£££xeExerxzxerrxsrxrred 35Hình 2.13: Biểu đồ chi tiết usecase đóng góp - 2-52 cSE+St‡EE2E2EeEEeEEeErrerreei 35Hình 2.14: Biéu đồ lớp phân tích toàn hệ thống - 2 2 22 ++£E+zE£z£z+£+zzxze: 45Hình 2.15: Biéu đồ tuần tự Tra từ điền, từ VỰN HH kệ 49Hình 2.16: Biểu đồ tuần tự Học câu giao tiẾp -¿ 5¿©5¿c++2c+vcxerxrsrxersree 49Hình 2.17: Biéu đồ tuần tự Tra ngữ pháp ¿+ 2 2 2+E++E£EE£EE2EEEerEerkerkrrerrees 50

Hình 2.18: Biểu đồ tuần tự Luyện tap - ¿52 ©E+2E2E2 2 E2 EEEEeEErrkrrrrrrrred 51

Hình 2.19: Biểu đồ tuần tự Translate c:5c+t 2tr 5IHình 2.20: Biểu đồ tuần tự Đóng gÓ - 2-52 St E22 2E 1212112112121 1 tyeeU 52

Hình 2.21: Biểu đồ lớp thiết kẾ 2-2 + £+E£+EE+EE£EEEEEEEEEEEE2EEEEXEEEEEEEEEEErrrrred 53

Hình 3.1: Giao diện tra từ điỀn cc: 2tv tt tre 57Hình 3.2: Giao diện học câu giao ti€p cecceccecceessssseseessesessessesestesessessesseseesessesseseseses 58

Hình 3.3: Giao diện từ vựng FlashCarr - - 5 113111311113 11 9 11 9111 vn re 59 Hình 3.4: Giao diện học ngữ phấp - ¿+ E111 11H nhiệt 59

NGUYEN PHU THỊNH - B17DCCN578

Trang 12

ĐÔ ÁN TOT NGHIỆP

Hình 3.6: Giao diện 'TransÏafe - - c c1 1 2222210111111 1192211 111111199011 11kg 11 ket

Hình 3.7: Giao diện đóng BÓP - HH HH TH TH HH nh HH

NGUYEN PHU THỊNH - B17DCCN578

10

Trang 13

ĐÔ ÁN TOT NGHIỆP

MỞ ĐẦU

Hiện nay, tiếng Anh được coi là ngôn ngữ phô biến nhất trên thế giới Chính vì

vậy, nhu cầu học tiếng Anh trở nên cần thiết đối với mọi người Ở Việt Nam, tiếng

Anh cũng nên rat quan trọng kế từ khi dat nước bắt đầu thực hiện chính sách mở cửahội nhập ra khu vực và quốc tế Người ta học và sử dụng tiếng Anh với nhiều mục

đích khác nhau, dé đáp ứng nhu cau giao tiếp ngày càng lớn trong xã hội, dé kiếm

được công việc tốt hơn, thăng tiễn trong sự nghiệp hay dé giành được cơ hội di du học

và sinh sống tại nước ngoài Cùng với đó là sự phát triển bùng nỗ của công nghệ trong

nhiều năm trở lại đây Do đó có thể dễ dàng tìm kiếm trên internet các công cụ hỗ trợ

học tiếng Anh phù hợp với từng độ tuôi và từng cách tiếp cận khác nhau như:

- Ứng dụng Doulingo - học tiếng Anh miễn phí

- Ung dụng học tiếng Anh giao tiếp TFlat

- Ứng dụng Memrise - Learn English - Speak English

- Ứng dụng học tiếng Anh BusuuTuy nhiên, các ứng dụng hiện nay thường chỉ tập trung và chuyên về một chứcnăng nhất định như ứng dụng ngữ pháp tiếng Anh thì chỉ có thể học ngữ pháp, ứng

dụng giao tiếp thì chỉ học phần nói, Duolingo cũng là ứng dụng mà người dùng vào

học dé ghi nhớ thường xuyên Vậy khi người ding muốn vừa tra cứu từ điển, ngữ pháp

kết hợp với ôn luyện bài tập để ghi nhớ phần lý thuyết đã học thì sẽ gặp nhiều khó

khăn Chính vì vậy, dé hỗ trợ cho người học, em đã quyết định nghiên cứu đồ án với

dé tài: "Xây dựng ứng học tiếng Anh thông minh - EnglishLearn" dé tạo thành một

ứng dụng web tích hợp đầy đủ các chức năng đáp ứng ứng nhu cầu học và luyện

Mục đích của ứng dụng là nhằm cung cấp cho người dùng một nền tảng họctiếng Anh hiệu qua, dé dang sử dụng và tạo hứng thú khi học Ứng dụng kết hợp nhiềuchức năng, học từ vựng, câu đa dạng theo chủ đề và cấp độ Ngoài ra, ứng dụng còn

giúp người dùng củng có, ghi nhớ lý thuyết đã học qua các bài ôn luyện trắc nghiệm,flash-card và đưới dạng các game giải trí Nổi bật hơn, ứng dụng còn cung cấp tính

năng "Google Translate" hỗ trợ dịch bằng cả văn bản và hình ảnh giúp người dùng có

thể tra cứu nhanh chóng và thuận tiện hơn

Cấu trúc của đồ án bao gồm 3 chương như sau:

Chương 1: Giới thiệu về ứng dụng học tiếng Anh

Chương này sẽ trình bày khái quát về nhu cầu học tiếng Anh, đưa ra một số ứng

dụng thực tế, hạn chế và đề xuất cách giải quyết Tổng quan về ứng dụng học tiếng

Anh thông minh EnglishLearn.

Trình bày về nền tảng ngôn ngữ lập trình web, NodeJS cùng một số công nghệ

khác dé xây dựng hệ thống

NGUYEN PHU THỊNH - B17DCCN578

11

Trang 14

ĐÔ ÁN TOT NGHIỆP

Chương 2: Phân tích và thiết kế hệ thống ứng dụng học tiếng anh thông minh

-EnglishLearn

Chương này trình bay cụ thé quá trình phân tích, thiết kế các lớp, cơ sở dit liệu,xác định yêu cầu ứng dụng và mô tả các chức năng chính

Chương 3: Cài đặt và thử nghiệm chương trình

Chương này sẽ trình bày về quá trình thử nghiệm ứng dụng, cài đặt môi trường

và giao diện chức các chức năng của ứng dụng học tiếng Anh thông minh

EnglishLearn.

NGUYEN PHU THỊNH - B17DCCN578

12

Trang 15

ĐÔ ÁN TOT NGHIỆP

CHUONG 1: GIỚI THIỆU VE UNG DUNG HỌC TIENG ANH

Chương nay sẽ giới thiệu tong quan về nhu cau học tiếng Anh, một số ứng dụng

học tiếng Anh hiện nay, các hạn chế và đề xuất hướng giải quyết, mục tiêu của ứng

dụng và trình bày sơ lược về các công nghệ được sử dụng dé xây dựng hệ thống

1.1 GIỚI THIỆU CHUNG

1.1.1 Bài toán về nhu cầu học tiếng Anh

Hiện nay, tiếng Anh chính là ngôn ngữ rất thông dụng trên toàn thế giới Vớicác bạn học sinh, sinh viên thì việc học tiếng Anh là hết sức cần thiết, vì các nhà tuyển

dụng sẽ luôn ưu tiên lựa chọn một ứng viên có khả năng sử dụng thành thạo tiếng Anh

hơn là một ứng viên chỉ biết mỗi chuyên môn Việc học một ngôn ngữ mới nói chung

và việc học Tiếng Anh nói riêng, là một thử thách không hè nhỏ, cần rất nhiều sự nỗ

lực, quyết tâm và kiên trì Các nguồn tri thức trên thế giới hầu hết được viết bằng tiếng

Anh thì việc học tiếng Anh dé tiếp cận các nguồn tri thức đó là hết sức cần thiết Hay

đơn giản như việc đọc, nghe và xem tin tức ở các báo đài nước ngoài, bạn cũng cần

phải có tiếng Anh thì mới hiểu được nội dung tin tức đó họ nói gì Học tiếng Anh sẽ

giúp bạn trở nên năng động hơn, tự tin giao tiếp hơn, được tiếp cận với nhiều nền văn

hóa khác nhau cũng như được giao lưu, kết bạn với rất nhiều bạn bè trên toàn thế giới

Theo phương pháp truyền thống, ban đầu mọi người đều học những cái cơ bản

nhất dé tiếp cận một ngôn ngữ, làm quen dan với tiếng Anh Khi đến trường, lên lớp sẽ

được học qua các bài giảng sách vở, làm bài tập trong giáo trình Cứ như vậy, học trên

lớp, về nhà làm bài tập hết sức khô khan và rất nhiều người cảm thấy chán nản vì cách

học cổ điền này Thậm chí dù có học thêm nhiều hơn nữa thì cũng chỉ là nhồi nhét

kiến thức, lâu dần không động vào sẽ quên ngay

Chính vì vậy nên có rất nhiều nghiên cứu để cho ra rất nhiều cách học tiếngAnh phù hợp cho từng đối tượng khác nhau, tiếng Anh cho người đi làm, tiếng Anh

cho học sinh tiêu học, trung học, tiếng Anh dành cho những người đi du lịch nước

ngoài

1.1.2 Một số ứng dụng học tiếng Anh hiện nay

e Những ứng dụng học tiếng Anh trên các website, smart-phone:

- Ứng dụng Duolingo: Đây là một ứng dụng học ngôn ngữ miễn phí, với hệ thốngbài tập đa dạng giúp người dùng dễ dàng tiếp thu Ứng dụng hỗ trợ học hơn 30

ngôn ngữ khác trên thế giới như: tiếng Anh, tiếng Pháp, tiếng Đức, Ứng dụng

Duolingo nỗi tiếng với giao diện bắt mắt và có các chức năng đặt mục tiêu, theo

dõi cũng như nhắc người dùng học tập, bảng xếp hạng với bạn bè

NGUYEN PHU THỊNH - B17DCCN578

13

Trang 16

ĐÔ ÁN TOT NGHIỆP

- Nhược điểm: Không thé lựa chọn chủ đề từ vựng Vì người học phải hoàn thành

tất cả bài học cùng một chủ đề trong một Unit sau đó mới có thé chuyén sang chu

dé khác ở Unit sau nên người học sẽ không thê lựa chọn và học từ vựng cho chủ đề

Hình 1.1; Giao điện ứng dụng Duolingo

- App học tiếng Anh - Memrise: là ứng dụng học tiếng Anh với nguồn học liệu

phong phú, hữu ích, phù hợp với đại đa số người dùng và hoàn toàn miễn phí Hơn

1.000 video tiếng Anh với giọng của người bản địa Hơn 100 khóa học với đáp ứngnhu cầu phô biến của người học Cải thiện sức mạnh não bộ và trau dồi từ vựng

hiệu quả.

- Nhược điểm: ứng dụng chỉ tập trung chủ yêu về phan nói, phát âm và thông qua

phương tiện là video.

NGUYEN PHU THỊNH - B17DCCN578

14

Trang 17

ĐÔ ÁN TOT NGHIỆP

Pick a language to learn

G7 (+) SPANISH (MEXICO)(PORTUGAL)

© PoRTUGUESE (BRAZIL) = ourcu

Hình 1.2: Giao diện ứng dung Memrise

- Ung dụng Từ điển TFlat: là ứng dụng học từ vựng khá phổ biến trên thiết bị di

động Các chức năng chính của app: tra cứu từ điển, lưu và xem từ vung đã học,

Trang 18

VIỆT - ANH GHI CHỦ

Sà Luyện Nói Tiếng Anh với Mexu

@ Từ Biển Việt Anh

@Œ® Cửa Số Tra Nhanh

Biết thưởng thức âm nhac

To have a good ear for music; to have a musical ear

- Ứng dụng học tiếng Anh Busuu: được biết đến là trang mạng xã hội học tiếng Anh.

Với các bài học đều có tiêu chuân Khung tham chiếu trình độ ngôn ngữ chung của

châu Âu Ngoài ra bài học trong Busuu được xếp từ dé Beginner đến khó Advanced,

với số lượng lên đến hơn 150 chủ đề cùng hơn 3000 từ và cụm từ vựng khác nhau

- Nhược điểm: phiên bản miễn phí sẽ giới hạn ở 20 bài học và cần phải nâng cấp tài

khoản để học thêm

NGUYEN PHU THỊNH - B17DCCN578

16

Trang 19

ĐÔ ÁN TOT NGHIỆP

®

2

= Hoàn thành Tiếng Anh >

Bắt đầu với trình độ tiếng Anh A1! (i) 1 phú.

O

Bài học 2: Tôi là Sara

Nói tên của bạn

Bài học 3: Các bạn có khỏe không?

Hỏi và nổi xem bạn cảm thấy như thé nào

# On tap: Giớithiệu

Hình 1.4: Giao điện ứng dụng Busuu

1.1.3 Giải pháp và mục tiêu cần đạt được

e Giải pháp

- Đề có thể khắc phục, giải quyết các vấn đề trên, trong đồ án này sẽ xây dựng

ứng dụng học tiếng anh thông minh EnglishLearn với mục đích tổng hợp các chứcnăng và khắc phục nhược điểm các ứng dụng nêu trên gặp phải Người dùng không

cần mua tài khoản hoặc mat phi dé trải nghiệm tat cả tính năng của ứng dụng Một ứng

dụng hoàn toàn miễn phi, không có quảng cáo, nguồn dit liệu tin cậy cùng với đa dangtính năng như: tra cứu từ điển, học từ vựng, ngữ pháp theo từng chủ đề, từng chuyên

ngành và cấp độ, luyện tập thông qua hệ thống bài thi trắc nghiệm, ghép từ Ngoài ra,người dùng có thé dich văn bản, dịch hình ảnh nhanh chóng trực tiếp ngay trên ứng

dụng.

e Mục tiêu

- Hiểu được các lý thuyết, khái niệm của nền tảng lập trình web (HTML5,

CSS3, Javascript), cách xây dựng một ứng dụng web sử dụng các kĩ thuật và công

nghệ cần thiết Hiểu rõ cách hoạt động của công nghệ và phân chia hợp lý trong

những yêu cầu hệ thống cụ thé

- Nắm được tổng quan về NodeJS, RESTful API và các ứng dụng của nó Hiểu

cách thức hoạt động trong mỗi service được sử dụng.

- Hiểu rõ các hệ quản tri cơ sở dữ liệu, so sánh được giữa các loại cơ sở dữ liệuSQL với noSQL Một số hệ quản trị cơ sở dit liệu phô biến như: MySQL,

Trang 20

ĐÔ ÁN TOT NGHIỆP

1.2 GIỚI THIEU NODEJS PLATFORM

1.2.1 NodeJS 1a gi?

Node.js là một nền tang chạy trên môi trường V8 JavaScript runtime - một trình

thông dịch JavaScript cực nhanh chạy trên trình duyệt nhân Chromium Bình

thường thì cũng có thể tải bộ V8 và nhúng nó vào bat cứ thứ gi NodeJS làm điều

đó đối với các web server JavaScript suy cho cùng cũng chỉ là một ngôn ngữ, vậythì không có lý do gì dé nói nó không thể sử dụng trên môi trường server tốt như là

trong trình duyệt của người dùng được.

Trong một môi trường server điển hình LAMP (Linux-Apache-MySQL- PHP),

bạn có một web server là Apache hoặc NGINX nằm dưới, cùng với PHP chạy trên

nó Mỗi một kết nói tới server sẽ sinh ra một thread mới, và điều này khiến ứng

dụng nhanh chóng trở nên chậm chap hoặc quá tải - cách duy nhất dé hỗ trợ nhiều

người dùng hơn là bang cách bổ sung thêm nhiều máy chủ Don giản là nó không

có khả năng mở rộng tốt Nhưng với Node.js thì điều này không phải là van đề

Không có một máy chủ Apache lắng nghe các kết nói tới và trả về mã trạng thái

HTTP - bạn sẽ phải tự quản lý kiến trúc lõi của máy chủ đó May mắn thay, có một

số module giúp thực hiện điều này được dễ dàng hơn, nhưng công việc này vẫn gâycho bạn một chút khó khăn khi mới bắt đầu Tuy nhiên, kết quả thu được là một

ứng dụng web có tốc độ thực thi cao

JavaScript là một ngôn ngữ dựa trên sự kiện, vì vậy bất cứ thứ gì xảy ra trên

server đều tạo ra một sự kiện non-blocking Mỗi kết nối mới sinh ra một sự kiện;

dữ liệu nhận được từ một upload form sinh ra một sự kiện data-received, việc truy

vấn dữ liệu từ database cũng sinh ra một sự kiện Trong thực tế, điều này có nghĩa

là một trang web Node.js sẽ chang bao giờ bị khóa (lock up) và có thê hỗ trợ cho

hàng chục nghìn user truy cập cùng lúc Node.Js đóng vai trò của server Apache

-và thông dịch mã ứng dụng chạy trên nó Giống như Apache, có rất nhiều module

(thư viện) có thé được cài đặt dé bổ sung thêm các đặc trưng và chức năng - như

lưu trữ dir liệu, hỗ trợ file Zip, đăng nhập bằng Facebook, hoặc các công thanh

toán Dĩ nhiên, nó không có nhiều thư viện như PHP, nhưng Node.js vẫn đang ở

trong giai đoạn ban đầu và có một cộng đồng rất mạnh mẽ ở đằng sau nó

Một khái niệm cốt lõi của Node.js đó là các function bất đồng bộ (asynchronous

functions), vì vậy về cơ bản thì mọi thứ chạy trên nền tảng này Với hầu hết các

ngôn ngữ kịch bản máy chủ, chương trình phải đợi mỗi function thực thi xong

trước khi có thể tiếp tục chạy tiếp Với Node.Js, bạn xác định function sẽ chạy dé

hoàn thành một tác vụ nao đó, trong khi phan còn lai của ứng dụng van chạy đồng

thời Nó là một chủ đề : phức tạp nhưng là một trong những đặc trưng tiêu biểu của Node.js, vì vậy việc nắm vững nó là điều hết sức quan trọng.

NGUYEN PHU THỊNH - B17DCCN578

18

Trang 21

ĐÔ ÁN TOT NGHIỆP

Node.js chỉ là một môi trường — điều này có nghĩa bạn tự phải làm mọi thứ Sẽchăng có bất kỳ máy chủ mặc định nào cả Một đoạn script xử lý tất cả các kết nối

với Client Điều này làm giảm đáng ké số lượng tài nguyên được sử dụng trong

ứng dụng.

Lược đồ dưới đây mô tả các thành phan quan trọng của Node.js:

1.2.2 Ưu điểm của NodeJS

Tại sao sử dụng Node.js? Dưới đây là vài đặc điểm quan trọng biến Node.js trở

thành sự lựa chọn hàng đầu trong phát triển phần mềm:

e_ Bất đồng bộ và hướng sự kiện (Event Driven): Tat các các APIs của thư viện

Node.js đều không đồng bộ, nghĩa là non-blocking (không khóa) Nó rất cần

thiết vì Node.js không bao giờ đợi một API trả về dữ liệu Server chuyền sangmột API sau khi gọi nó và có cơ chế thông báo về sự kiện của Node.js giúp

server nhận đựa phản hồi từ các API gọi trước đó

e Chạy rất nhanh: Dựa trên V8 Javascript Engine của Google Chrome, thư viện

Node.js rất nhanh trong các quá trình thực hiện code

e_ Các tiến trình đơn giản nhưng hiệu năng cao: Node.js sử dụng một mô hình

luồng đơn (single thread) với các sự kiện lặp Các cơ chế sự kiện giúp server trả

lại các phản hồi với một cách không khóa và tạo cho server hiệu quả cao ngược

NGUYEN PHU THỊNH - B17DCCN578

19

Trang 22

ĐÔ ÁN TOT NGHIỆP

lại với các cách truyền thống tạo ra một số lượng luồng hữu hạn dé quan lýrequest Nodejs sử dụng các chương trình đơn luồng và các chương trình nàycung cấp các dịch vụ cho số lượng request nhiều hơn so với các server truyền

thống như Apache HTTP Server

Không đệm: Ứng dụng Node.js không lưu trữ các đữ liệu buffer

Có giấy phép: Node.js được phát hành dựa vào MIT License

1.2.3 Nhược điểm của NodeJS

Giống như hau hết các công nghệ mới, việc triển khai Node.js trên host không

phải là điều đễ dàng Nếu bạn có một web hosting xài chung, bạn không thểđơn giản tải lên một ứng dụng Node.js và mong chờ nó hoạt động tốt VPS và

dedicated server là một sự lựa chọn tốt hơn - bạn có thé cai đặt Node.Js trên

chúng Thậm chí dễ hơn là sử dụng một dịch vụ có khả năng mở rộng như là

Heroku, và bạn có thể hoàn toàn an tâm dé phát triển trang web của mình trên

đó - bạn chỉ cần trả tiền khi cần thêm nhiều tài nguyên hơn

Mặt khác, chúng ta rất dễ cài đặt Node.js chạy cục bộ trên máy tính của bạn sửdụng các hệ điều hành như Windows, Mac hoặc Linux và bắt đầu phát triển ứngdụng ngay lập tức - chỉ việc tải phiên bản Node.js tương ứng Một điều quan

trọng nên chú ý là Node.js không chi đơn giản là một sự thay thế cho Apache

-các ứng dụng web đang tồn tại sẽ không có khả năng tương thích, và bạn sẽ làm

việc hiệu quả với những ứng dụng phát triển từ đầu (mặc dù có rất nhiềuframework ngoài kia dé hỗ trợ với nhiều đặc trưng phổ biến)

1.2.4 Express Framework

Express là một framework được xây dựng trên nền tảng của Nodejs Nó cungcấp các tính năng mạnh mẽ dé phát triển web hoặc mobile Express hỗ trợ các

method HTTP và middleware tạo ra API vô cùng mạnh mẽ và dễ sử dụng.

Các tính năng nổi bật của Express:

Thiết lập router cho phép sử dụng với các hành động khác nhau dựa trên

phương thức HTTP và URL.

Hỗ trợ xây dựng theo mô hình MVC

Cho phép định nghĩa middleware giúp tô chức và tái sử dụng code

Hỗ trợ RESTful API

1.3 HE QUAN TRI CƠ SO DU LIEU MONGODB

1.3.1 MongoDB la gi?

MongoDB là một co sở dt liệu thuộc chuẩn NoSQL, khác với những hệ

RDBMS như MySQL, PostgreSQL hay Oracle Giống như những NoSQL khác,

NGUYEN PHU THỊNH - B17DCCN578

20

Trang 23

ĐÔ ÁN TOT NGHIỆP

MongoDB sẽ không dùng bảng dé lưu trữ dữ liệu, thay vào đó nó sẽ lưu dữ liệu

bằng các document riêng biệt, dữ liệu được lưu dưới dạng JSON như sau:

Hình 1.6: Mô tả cách lưu trữ dữ liệu trong MongoDB

e MongoDB là một database hướng tải liệu (document), các dữ liệu được lưu

trữ trong document kiêu JSON thay vì dang bảng như CSDL quan hệ nêntruy vấn sẽ rất nhanh

e Với CSDL quan hệ chúng ta có khái niệm bảng, các cơ sở dữ liệu quan hệ

(như MySQL hay SQL Server ) sử dụng các bảng dé lưu dit liệu thì với

MongoDB chúng ta sẽ dùng khái niệm là collection thay vì bảng.

e So với RDBMS thì trong MongoDB collection ứng với table, còn document

sẽ ứng với row, MongoDB sẽ dùng các document thay cho row trong RDBMS.

e Các collection trong MongoDB được cấu trúc rất linh hoạt, cho phép các dữ

liệu lưu trữ không cần tuân theo một cấu trúc nhất định

e Thông tin liên quan được lưu trữ cùng nhau dé truy cập truy van nhanh

thông qua ngôn ngữ truy vấn MongoDB

1.3.2 Ưu điểm của MongoDB

e Do MongoDB sử dụng lưu trữ dữ liệu dưới dạng Document JSON nên mỗi một

collection sẽ có các kích cỡ và các document khác nhau, linh hoạt trong việc

lưu trữ dữ liệu, nên việc insert rất dễ dàng

NGUYEN PHU THỊNH - B17DCCN578

21

Trang 24

ĐÔ ÁN TOT NGHIỆP

« Di liệu trong MongoDB không có sự ràng buộc lẫn nhau, không có join như

trong RDBMS nên khi insert, xóa hay update nó không cần phải mất thời giankiểm tra xem có thỏa mãn các ràng buộc dữ liệu như trong RDBMS

« MongoDB rất dé mở rộng (Horizontal Scalability) Trong MongoDB có một

khái niệm cluster là cụm các node chứa dữ liệu giao tiếp với nhau, khi muốn

mở rộng hệ thống ta chỉ cần thêm một node với vào cluster:

e Truong dữ liệu “ id” luôn được tự động đánh index (chỉ mục) để tốc độ truy

van thông tin đạt hiệu suất cao nhất

« Khi có một truy van dir liệu, bản ghi được cache lên bộ nhớ Ram, dé phuc vu

lượt truy van sau dién ra nhanh hơn mà không cần phải đọc từ 6 cứng

« _ Hiệu năng cao: Tốc độ truy van (find, update, insert, delete) của MongoDB

nhanh hon han so với các hệ quản trị cơ sở dit liệu quan hệ (RDBMS) Với một

lượng đữ liệu đủ lớn thì thử nghiệm cho thấy tốc độ insert của MongoDB có thênhanh tới gấp 100 lần so với MySQL

1.3.3 Nhược điểm của MongoDB

e Một ưu điểm của MongoDB cũng chính là nhược điểm của nó MongoDB

không có các tính chất ràng buộc như trong RDBMS nên khi thao tác với

mongoDB thì phải hết sức can thận

e Tốn bộ nhớ do đữ liệu lưu dưới dạng key-value, các collection chỉ khác về

value do đó key sẽ bị lặp lại Không hỗ trợ join nên dễ bị dư thừa dữ liệu.

e© Khi insert/update/remove bản ghi, MongoDB sẽ chưa cập nhật ngay xuống

6 cứng, mà sau 60 giây MongoDB mới thực hiện ghi toàn bộ dữ liệu thay đổi từ RAM xuống 6 cứng điêu này sẽ là nhược điểm vì sẽ có nguy cơ bị

mất dữ liệu khi xảy ra các tình huống như mất điện

1.3.4 So sánh SQL và noSQL

Tham số SQL NoSQL

Định nghĩa Cơ sở dit liệu SQL chủ yếu được Cơ sở dữ liệu NoSQL chủ yếu được

gọi là RDBMS hoặc Cơ sở dữ liệu gọi là cơ sở dữ liệu không liên quan quan hệ hoặc phân tán

Design for RDBMS truyén thong sử dụng cú _ Hệ thống co sở dữ liệu NoSQL bao

pháp và truy vân SQL dé phân tích gồm nhiều loại công nghệ cơ sở dữ

và lay dữ liệu dé có thêm thông tin liệu khác nhau Các cơ sở dit liệu này

chi tiết Chúng được sử dụng cho được phát triển dé đáp ứng nhu cầu

các hệ thống OLAP trình bay cho sự phát triển của ứng

dụng hiện đại.

NGUYEN PHU THỊNH - B17DCCN578

22

Trang 25

ĐÔ ÁN TOT NGHIỆP

Ví dụ Oracle, Postgres, and MS-SQL.

Phù hợp cho Đây là 1 lựa chọn lý tưởng cho môi

trường truy vân phức tạp

Lưu trữ dữ SQL databases không thích hợp cho

liệu phân câp việc lưu trữ dữ liệu phân cap.

Variations Một loại có biến thé nhỏ

Năm phát Nó được phát triển vào những năm

triên 1970 đê giải quyét các vân đê với

lưu trữ tệp phăng

Open-source Một sự kết hợp của mã nguồn mở

như Postgres & MySQL, và thương mại như Oracle Database.

Tính nhất Nó phải được cấu hình cho sự nhất

quán quán chặt chẽ.

Được sử dụng RDBMS database là tùy chọn thích

tot nhâtcho hợp đê giải quyết các vân dé vê

ACID.

Tam quan Nó nên được sử dung khi hiệu lực

trọng dữ liệu là siêu quan trọng

NoSQL Không có ngôn ngữ query

NoSQL databases có thé dựa trên tài

liệu, cặp khóa-giá trị, cơ sở dữ liệu biểu đồ

NoSQL databases sử dung lược đồ

động cho dt liệu phi câu trúc.

NoSQL databases có thé mo réng theo

chiéu ngang

MongoDB, Redis, , Neo4j, Cassandra,

Hbase.

Không phủ hợp với truy van phức tap

Phù hợp hơn cho kho lưu trữ dữ liệu

phân câp vì nó hô trợ phương thức cặp khóa-giá tri.

Nhiêu loại khác nhau bao gôm các kho khéa-gia tri, cơ sở dt liệu tải liệu và

cơ sở đữ liệu đô thị.

Được phát triển vào cuối những năm

2000 đê khắc phục các van dé và hạn chê cua SQL databases.

Open-source

Nó phụ thuộc vào DBMS như một sé

cung cấp tính nhất quán mạnh mẽ như

MongoDB, trong khi những người khác cung câp chỉ cung câp sự nhất quan cuôi cùng, như Cassandra.

NoSQL được sử dụng tốt nhất đề giải

quyết các vân đê về tính khả dụng của dir liệu

Sử dụng khi nó quan trọng hơn để có

dữ liệu nhanh hon dt liệu chính xác

NGUYEN PHU THỊNH - B17DCCN578

23

Trang 26

ĐÔ ÁN TOT NGHIỆP

Tham số SQL NoSQL

Lua chọn tốt Khi bạn cần hỗ trợ truy vấn động Sử dụng khi bạn cần mở rộng quy mô

nhât dựa trên yêu câu thay đôi

Tính năng tốt Hỗ trợ đa nền tảng, Bảo mật và Dễ sử dụng, hiệu suất cao và công cụ

nhât miên phí linh hoạt.

Mô hình ACID (Atomicity, nhất quán, cách Cơ bản (Về cơ bản có sẵn, trạng thái

ACID và ly va độ bên) là một chuân cho mềm, phù hợp cuối cùng) là một mô

BASE RDBMS hình của nhiều hệ thống NoSQL

Performance SQL hoạt động tốt và nhanh thì việc Nhanh hơn SQL NoSQL thì

desgin tốt là cực kì quan trọng và denormalized cho phép bạn lấy được

ngược lại tất cả thông tin về một item cụ thê với

các condition mà không cần JOIN liên

quan hoặc truy van SQL phức tap

Kết luận Dự án đã có yêu cầu đữ liệu rõ ràng Phù hợp với những dự án yêu cầu đữ

xác định quan hệ logic có thể được liệu không liên quan, khó xác định, xác định trước đơn giản mềm dẻo khi đang phát triển

Bang 1.1 So sánh SQL với noSQL

1.4 GIỚI THIEU THU VIEN REACTJS

1.4.1 ReactJS là gi?

React là một thư viện UI phat triển bởi Facebook dé hỗ trợ việc xây dựng

những thành phan (components) UI có tính tương tác cao, có trạng thái và có thé sử

dụng lại được React được sử dụng tại Facebook, Instagram được viết hoàn toàn

trên React.

Một trong những điểm hấp dẫn của React là thư viện này không chỉ hoạt động

trên phía client, mà còn được render trên server và có thê kêt nôi với nhau React

so sánh sự thay đôi giữa các giá trị của lân render này với lân render trước vả cập

nhật ít thay đôi nhât trên DOM.

Nó cũng sử dụng khái niệm là Virtual DOM (DOM ảo) Virtual DOM tạo ra

bản cache cấu trúc đữ liệu của ứng dụng trên bộ nhớ Sau đó, ở mỗi vòng lặp, nó

liệt kê những thay đôi và sau đó là cập nhật lại sự thay đôi trên DOM của trình

duyệt một cách hiệu quả Điều này cho phép ta viết các đoạn code như thể toàn bộ

trang được render lại dù thực tế là Reactjs chi render những component hay

subcomponent nào thực sự thay đồi

NGUYEN PHU THỊNH - B17DCCN578

24

Trang 27

ĐÔ ÁN TOT NGHIỆP

1.4.2 Ưu điểm của ReactJS

Reactjs giúp việc viết các đoạn code JS dé dàng hơn: Nó dung cú pháp đặc biệt

là JSX (Javascript mở rộng) cho phép ta kết hợp giữa code HTML và

Javascript Ta có thể thêm vào các đoạn HTML vào trong hàm render mà khôngcần phải nói chuỗi Đây là đặc tinh thú vị của Reactjs Nó sẽ chuyên đổi các

đoạn HTML thành các hàm khởi tạo đối tượng HTML bằng bộ biến đổi JSX

Nó có nhiều công cụ phát triển: Khi bạn bắt đầu Reactjs, đừng quên cài đặt ứng

dụng mở rộng của Chrome dành cho Reactjs Nó giúp ban debug code dé dàng

hơn Sau khi bạn cài đặt ứng dụng này, bạn sẽ có cái nhìn trực tiếp vào virtual

DOM như thé bạn đang xem cây DOM thông thường

Render tầng server: Một trong những vấn đề với các ứng dụng đơn trang là tối

ưu SEO và thời gian tai trang Nếu tat cả việc xây dựng và hiền thị trang đềuthực hiện ở client, thì người dung sẽ phải chờ cho trang được khởi tạo và hiểnthị lên Điều này thực tế là chậm Hoặc nếu giả sử người dung vô hiệu hóa

Javascript thì sao? Reactjs là một thư viện component, nó có thê vừa render ởngoài trình duyệt sử dụng DOM và cũng có thể render bằng các chuỗi HTML

mà server trả về

Làm việc với van đề test giao diện: Nó cực kì dé dé viết các test case giao dién

vi virtual DOM duoc cai dat hoan toan bang JS

Hiệu năng cao đối với các ứng dụng có dữ liệu thay đổi liên tục, dé dang cho

bảo trì và sửa lỗi.

1.4.3 Nhược điểm của ReactJS

Reactjs chỉ phục vụ cho tầng View React chỉ là View Library nó không phải là

một MVC framework như những framework khác Đây chỉ là thư viện của

Facebook giúp render ra phần view Vì thế React sẽ không có phần Model và

Controller, mà phải kết hợp với các thư viện khác

Tích hợp Reactjs vào các framework MVC truyền thống yêu cầu cần phải cầu

hình lại.

React khá nặng nếu so với các framework khác React có kích thước tương

tương với Angular (Khoảng 35kb so với 39kb của Angular) Trong khi đó Angular là một framework hoàn chỉnh

Khó tiếp cận cho người mới học Web

1.5 KET LUẬN CHUONG

Chương 1 đã trình bày so lược về phần mềm web "Ung dung học tiếng Anh

thông minh - EnglishLearn" Nêu rõ được bài toán về nhu cau học tiếng Anh

hiện nay, một 36 ứng dung thực tế được người dùng sử dụng và những nhược điểm

NGUYEN PHU THỊNH - B17DCCN578

25

Trang 28

ĐÔ ÁN TOT NGHIỆP

còn tồn tại Đồng thời đã đưa ra hướng giải quyết cũng như các công nghệ liên

Trang 29

ĐÔ ÁN TOT NGHIỆP

CHƯƠNG 2: PHAN TÍCH VÀ THIẾT KE HE THONG UNG DỤNG HỌC

TIENG ANH THONG MINH - ENGLISHLEARN

Nội dung chính cua chương:

Giới thiệu hệ thống

Biểu đồ usecase

Chỉ tiết usecaseBiểu đồ tuần tựBiểu dé lớp

LLL LL AN Thiết kế cơ sở dữ liệu

2.1 GIỚI THIỆU HỆ THÓNG

2.1.1 Mô tả hệ thống

Hệ thống được xây dựng giúp cho người có nhu cầu học tiếng anh dễ dàng tra cứu, ghi nhớ va ôn luyện tiếng Anh Hiện này, công nghệ ngày càng phát triển dẫn đến có rất nhiều nguồn thông tin, tài liệu học tiếng Anh, đôi khi người học không

thể tìm kiếm và chọn lọc phủ hợp với nhu cầu của mình Do đó việc xây dựng một

trang web đáp ứng nhu cầu học tiếng Anh đơn giản, hiệu quả, phù hợp với nhu cầu

tìm kiếm là rất cần thiết

Trang web cung cấp các tính năng cho người học có thé dé dàng tra cứu từ điển,

học từ vựng, ngữ pháp, các mẫu câu phù hợp với trình độ người học được đánh giá

thông qua bài entry-test Bên cạnh đó là hệ thống bài tập giúp người học có thé ôn

luyện để ghi nhớ những phần lý thuyết đã học, gây hứng thú trong học tập Ngoài

ra, hệ thống còn cung cấp tính năng Translate đa ngôn ngữ giúp người dùng dễ

dàng dịch nhanh chóng các từ, đoạn văn bản hay hình ảnh.

2.1.2 Mô tả chức năng

> Người dùng truy cập vào web dé tra cứu từ điển

Người dùng có thê đăng nhập, đăng ký tài khoản

Người dùng có thể học từ vựng theo các chủ đề (TOEIC)

Người dùng có thé học các câu giao tiếp thông dụngNgười dùng có thê ghi nhớ từ vựng với phương pháp Flashcard

Người dùng có thê ôn luyện lý thuyết ngữ pháp cùng các ví dụ đi kèm

Người dùng có thê tra cứu động từ bất quy tắc với phát âm trực tiếp

Người dùng có thê luyện tập củng cố kiến thức thông qua các bai tập trắc

VVVVV VV nghiém

Người dùng có thé lưu các từ yêu thích dé ghi nhớ hơn

Người dùng có thê dịch văn bản hoặc dịch hình ảnh

Người dùng có thé đóng góp thêm từ hoặc câu

VV Vv

NGUYEN PHU THỊNH - B17DCCN578

27

Trang 30

ĐÔ ÁN TOT NGHIỆP

2.1.3 Yêu cầu về chất lượng hệ thống

e Tinh hiệu quả

e Tinh tương thích

e Tính tiện dụng

2.1.4 Xác định và mô tả tác nhân

Tìm kiếm nhanh và chính xácKết hợp đa dạng các chức năng

Tương thích trên tất cả các trình duyệt của các nền tảng khác nhau

Giao diện hiền thị responsive trên các loại thiết bị như smartphone,

tablet, PC

Giao diện đơn giản, dễ sử dụng.

Người dùng: là người truy cập sử dụng phần mềm ứng dụng, có thể có hoặc

không cần đăng ký tài khoản

2.2 BIEU ĐỎ USECASE

2.2.1 Danh sách các usecase

STT Tên Usecase Ý nghĩa

1 Dang ky Chức nang cho phép người dùng đăng ky tài

khoản

2 Đăng nhập Chức năng cho phép người dùng đăng nhập

vào hệ thông

3 Tra từ điên Chức năng cho phép người dùng tra từ điển

và có thé chon theo chủ đề, phân loại từ.

4 Học từ vựng TOEIC | Chức năng cho phép người dùng học các từ

vựng trong TOEIC va xem chi tiệt từ đó.

5 Học câu giao tiếp Chức năng cho người dùng học các mẫu câu

giao tiệp thông dụng, nghĩa và phát âm trực tiép của câu.

6 Học từ vựng Chức năng cho phép người dùng học từ

Flashcard vựng theo phương pháp thẻ Flashcard và ở

chê độ thư viện ảnh

7 Tra ngữ pháp Chức năng tông hợp | sô cau trúc câu trong

tiêng Anh cũng như cách sử dụng kèm với các ví dụ minh họa

8 Tra cứu bảng động từ | Chức năng cho phép người dùng tra cứu các

bất quy tắc động từ bat quy tắc và lọc theo các trường

hợp đặc biệt trong tiếng Anh

NGUYEN PHU THỊNH - B17DCCN578

28

Trang 31

ĐÔ ÁN TOT NGHIỆP

củng cô qua các bài test.

sách các từ cá nhân yêu thích đê dê dàng ghi nhớ.

11 Translate Chức nang cho phép người dùng dich văn

bản hoặc hình ảnh 1 cách nhanh chóng.

thêm từ hoặc câu cho hệ thông.

Lam bai tap <<Extend>>

Xem kếtquả “~~ Xem kết quả

extension points Dịch văn bản Dịch hình ảnh

NGUYEN PHU THỊNH - B17DCCN578

29

Trang 32

DO AN TOT NGHIỆP

Hình 2.1: Biéu đồ usecase tổng quát

2.2.3 Biéu đồ usecase chỉ tiết

Trang 33

ĐÔ ÁN TOT NGHIỆP

e Usecase tra từ điên

me de

_ at

Ngày đăng: 08/03/2024, 13:57