BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
THÀNH PHỐ HỒ CHÍ MINH
ĐỒ ÁN TỐT NGHIỆP
NGÀNH CƠNG NGHỆ THÔNG TIN
XÂY DỰNG ỨNG DỤNG LUYỆN NGHE TOEIC
TRÊN ANDROID
GVHD:Nguyễn Trần Thi Văn
SVTT: PHẠM NHẬT DUY
MSSV:15110180
SVTT: NGUYỄN ĐÌNH THÁI
MSSV:15110380
SKL 0 0 5 7 3 6
Tp. Hồ Chí Minh, năm 2019
do an
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM
KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN : CÔNG NGHỆ PHẦN MỀM
--------
PHẠM NHẬT DUY 15110180
NGUYỄN ĐÌNH THÁI 15110380
Đề tài:
XÂY DỰNG ỨNG DỤNG LUYỆN NGHE TOEIC
TRÊN ANDROID
KHÓA LUẬN TỐT NGHIỆP KỸ SƯ CNTT
GIÁO VIÊN HƯỚNG DẪN
ThS.NGUYỄN TRẦN THI VĂN
KHÓA 2015-2019
do an
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM
KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN : CÔNG NGHỆ PHẦN MỀM
--------
PHẠM NHẬT DUY 15110180
NGUYỄN ĐÌNH THÁI 15110380
Đề tài:
XÂY DỰNG ỨNG DỤNG LUYỆN NGHE TOEIC
TRÊN ANDROID
KHÓA LUẬN TỐT NGHIỆP KỸ SƯ CNTT
GIÁO VIÊN HƯỚNG DẪN
ThS.NGUYỄN TRẦN THI VĂN
KHÓA 2015-2019
do an
ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM
KHOA CÔNG NGHỆ THÔNG TIN
*******
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh Phúc
*******
PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Họ và tên Sinh viên 1: Phạm Nhật Duy
MSSV 1: 15110180
Họ và tên Sinh viên 2: Nguyễn Đình Thái
MSSV 2: 15110380
Ngành: Công nghệ Thông tin
Tên đề tài: Xây dựng ứng dụng luyện nghe Toeic trên Android
Họ và tên Giáo viên hướng dẫn : Ths. Nguyễn Trần Thi Văn
NHẬN XÉT
1. Về nội dung đề tài & khối lượng thực hiện:
....................................................................................................................................................
....................................................................................................................................................
....................................................................................................................................................
....................................................................................................................................................
....................................................................................................................................................
2. Ưu điểm:
....................................................................................................................................................
....................................................................................................................................................
....................................................................................................................................................
....................................................................................................................................................
....................................................................................................................................................
3. Khuyết điểm
....................................................................................................................................................
....................................................................................................................................................
....................................................................................................................................................
....................................................................................................................................................
....................................................................................................................................................
4. Đề nghị cho bảo vệ hay khơng ?
5. Đánh giá loại :
6. Điểm :
TP. Hồ Chí Minh, ngày
tháng
Giáo viên hướng dẫn
(Ký & ghi rõ họ tên)
do an
năm 2019
ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM
KHOA CÔNG NGHỆ THÔNG TIN
*******
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh Phúc
*******
PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
Họ và tên Sinh viên 1: Phạm Nhật Duy
MSSV 1: 15110180
Họ và tên Sinh viên 2: Nguyễn Đình Thái
MSSV 2: 15110380
Ngành: Công nghệ Thông tin
Tên đề tài: Xây dựng ứng dụng luyện nghe Toeic trên Android
Họ và tên Giáo viên phản biện: ......................................................................................
NHẬN XÉT
1. Về nội dung đề tài & khối lượng thực hiện:
....................................................................................................................................................
....................................................................................................................................................
....................................................................................................................................................
....................................................................................................................................................
....................................................................................................................................................
3. Ưu điểm:
....................................................................................................................................................
....................................................................................................................................................
....................................................................................................................................................
....................................................................................................................................................
....................................................................................................................................................
4. Khuyết điểm
....................................................................................................................................................
....................................................................................................................................................
....................................................................................................................................................
....................................................................................................................................................
....................................................................................................................................................
7. Đề nghị cho bảo vệ hay không ?
8. Đánh giá loại :
9. Điểm :
TP. Hồ Chí Minh, ngày
tháng
Giáo viên phản biện
(Ký & ghi rõ họ tên)
do an
năm 2019
LỜI CẢM ƠN
Đầu tiên, chúng em xin chân thành gửi lời cám ơn đến các thầy cô, giảng viên
trường Đại Học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh nói chung, và khoa
Cơng Nghệ Thơng Tin, chun ngành Cơng Nghệ Phần Mềm nói riêng vì đã dạy dỗ,
cung cấp những kiến thức quan trọng về cả khía cạnh chuyên ngành và xã hội, giúp
chúng em có được kinh nghiệm, kỹ năng trong công việc, học tập, cách sống thật đúng
đắn.
Đặc biệt, chúng em cũng xin cảm ơn một cách chân thành nhất đối với thầy,
giảng viên Ths Nguyễn Trần Thi Văn, người đã trực tiếp hướng dẫn nhóm hồn
thành khóa luận tốt nghiệp này. Trong q trình thực hiện, thầy đã hỗ trợ, cung cấp
những kiến thức hữu ích, tạo động lực để nghiên cứu những kiến thức mới, nhiệt tình
giúp đỡ và hướng dẫn chúng em những lúc gặp khó khăn, định hướng đi đúng đắn
nhất.
Bài báo cáo khóa luận tốt nghiệp, cũng như ứng dụng hồn thành có thể cịn
nhiều khuyết điểm và hạn chế. Kính mong các thầy cơ góp ý chân thành để đề tài của
chúng em hoàn thiện hơn. Cho chúng em những định hướng trong tương lai, có thêm
kinh nghiệm cho những đề tài, cũng như cách thức làm việc chuyên nghiệp hơn, hỗ trợ
cho công việc của chúng em sau này. Cuối cùng chúng em chúc các thầy, cô sức khỏe
thật dồi dào, nhiệt huyết trong giảng dạy để góp phần đào tạo cho những lớp sinh viên
đi sau, những bậc nhân tài, tương lai của đất nước sau này.
Chúng em xin chân thành cảm ơn!
TP. Hồ Chí Minh, ngày .... tháng .... năm 2019
Sinh viên
Phạm Nhật Duy, Nguyễn Đình Thái
do an
ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM
KHOA CÔNG NGHỆ THÔNG TIN
ĐỀ CƯƠNG LUẬN VĂN TỐT NGHIỆP
Họ và Tên SV thực hiện 1: Phạm Nhật Duy
Mã Số SV: 15110180
Họ và Tên SV thực hiện 2: Nguyễn Đình Thái
Mã Số SV: 15110380
Thời gian làm luận văn: từ 18/03/2019 đến 30/6/2019
Chuyên ngành: Công nghệ phần mềm
Tên luận văn: Xây dựng ứng dụng luyện nghe Toeic trên Android
GV hướng dẫn: ThS. Nguyễn Trần Thi Văn
Nhiệm vụ của luận văn:
1. Tìm hiểu ngơn ngữ lập trình Java để xây dựng ứng dụng trên cơng cụ Android
Studio.
2. Tìm hiểu cơ sở dữ liệu Room, MySQL, dữ liệu dạng JSON.
3. Tìm hiểu mơ hình lập trình MVVM.
4. Tìm hiểu và sử dụng layout trong Android
5. Tìm hiểu Webservice, Rest API
6. Tìm hiểu ngơn ngữ PHP trong việc xây dựng Website quản lý.
7. Tìm hiểu các thư viện Retrofit, Glide.
8. Xây dựng các yêu cầu và thực thi các yêu cầu của đề tài.
MỤC LỤC
PHẦN MỞ ĐẦU
1. Tính cấp thiết của đề tài
2. Mục đích của đề tài
3. Cách tiếp cận và phương pháp nghiên cứu
4. Nội dung thực hiện và phương pháp thực hiện
5. Kết quả dự kiến đạt được
PHẦN NỘI DUNG:
do an
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1.1. Tổng quan về hệ điều hành android:
1.2. Layout trong Android
1.3. Giới thiệu về JSON
1.4. Mơ hình MVVM
1.5. Room Database
1.6. Retrofit
1.7. Web Hosting
CHƯƠNG 2 : KHẢO SÁT HIỆN TRẠNG
2.1 Hiện trạng
2.2 Khảo sát các ứng dụng liên quan
CHƯƠNG 3: TIẾP NHẬN YÊU CẦU
3.1. Đặc tả yêu cầ
3.2. Lược đồ usecase
CHƯƠNG 4: THIẾT KẾ HỆ THỐNG
4.1. Thiết kế cơ sở dữ liệu
4.2. Thiết kế giao diện
4.3. Thiết kế xử lý
CHƯƠNG 5: CÀI ĐẶT VÀ KIỂM THỬ
5.1. Cài đặt
5.2. Kiểm thử
PHẦN KẾT LUẬN
1.1. Đánh giá ứng dụng
1.2. Ưu và nhược điểm của đề tài
1.3. Hướng phát triển của đề tài
TÀI LIỆU THAM KHẢO
KẾ HOẠCH THỰC HIỆN
Tên đề tài: Xây dựng ứng dụng luyện nghe TOEIC trên Android
Họ và tên SV thực hiện:
1. Phạm Nhật Duy
MSSV: 15110180
do an
2. Nguyễn Đình Thái
MSSV:15110380
Giáo viên hướng dẫn: Nguyễn Trần Thi Văn
Thời gian: 15 tuần
Ngày bắt đầu: 18/03/2019
Ngày kết thúc: 30/06/2019
Kế hoạch cụ thể:
Tuần
1+2
3+4+5
6+7+8
9+10
Ngày
18/3-29/3
1/4-19/4
22/4-10/5
13/5-25/5
Nhiệm vụ (Cơng việc
dự kiến)
Người
chịu trách
nhiệm
- Tìm hiểu Web
Hosting
- Duy
- Tìm hiểu ngơn ngữ
PHP
-Tìm hiểu về Room
database
- Tìm hiểu về
Retrofit,GSOn
- Xây dựng cơ sở dữ
liệu
Sản phẩm
- Trang web chứa dữ
liệu dạng JSON
- Chức năng lưu
thông tin làm bài
- Thái
-Duy
+Thái
- Áp dụng vào để lưu
trữ dữ liệu trên host
và load dữ liệu về
ứng dụng
- Xây dựng chức năng
- Thái
học từ song ngữ
- Thiết kế giao diện
Website quản lí đề thi
- Duy
- Bổ sung dữ liệu cho
ứng dựng như âm thanh,
đề thi, từ vựng.
- Hoàn thành chức
năng làm trắc
nghiệm từ vựng xong
ngữ và xem kết quả
- Hoàn thành giao
diện Website quản lí
- Ứng dụng có nhiều
đề thi hơn
- Xây dựng chức năng
luyện nghe điền khuyết
- Xây dựng chức năng
chia sẻ đề thi
- Xây dựng các tính
năng cơ bản cho
Website quản lí
-Hồn thành chức
năng luyện nghe điền
khuyết có gợi ý.
- Hồn thành chức
năng chia sẻ đề thi
qua mail
- Website quản lí có
các chức năng cơ bản
như đăng nhập, đăng
xuất.
do an
-Thái
-Duy
11+12
13
27/5-8/6
10/6/-15/6
14
17/6/-22/6
15
24/6-30/6
-Hồn thiện các chức
năng Website quản lí
- Hồn thiện giao diện
ứng dụng
-Duy
- Chỉnh sửa, tổng hợp
báo cáo, kiểm thử
chương trình.
-Kiểm tra lại tồn bộ
chương trình và báo
cáo.
-Trao đổi với GVHD về
báo cáo và chương trình
Duy +
Thái
- Hồn tất chương trình.
Ý kiến của giáo viên hướng dẫn
-Thái
Duy +
Thái
Duy +
Thái
-Website quản lí có
tính năng chỉnh sửa,
cập nhật dữ liệu
- Hồn thiện giao
diện ứng dụng
Ứng dụng hoàn
thành cơ bản
Ứng dụng đã kiểm
và sửa lỗi
Bản báo cáo hồn
chỉnh để in và nộp
TP.Hồ Chí Minh, ngày
(ký và ghi rõ họ tên)
tháng
Người viết đề cương
do an
năm 2019
MỤC LỤC
MỤC LỤC
LỜI MỞ ĐẦU ............................................................................................................. 1
PHẦN MỞ ĐẦU ......................................................................................................... 2
1.
TÍNH CẤP THIẾT VÀ LÝ DO CHỌN ĐỀ TÀI ............................................................. 2
2.
MỤC TIÊU CỦA ĐỀ TÀI .............................................................................................. 2
3.
ĐỐI TƯỢNG VÀ PHẠM VI CỦA ĐỀ TÀI .................................................................... 2
4.
NỘI DUNG THỰC HIỆN VÀ PHƯƠNG PHÁP THỰC HIỆN....................................... 2
1
Nội dung thực hiện: .............................................................................. 2
2
Phương pháp thực hiện: ........................................................................ 3
NỘI DUNG BÁO CÁO ĐỀ TÀI ..................................................................................... 3
5.
PHẦN NỘI DUNG ...................................................................................................... 4
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT ............................................................................. 4
1.1.
TỔNG QUAN HỆ ĐIỀU HÀNH ANDROID: ................................................................. 4
1.1.1.
Android là gì: ........................................................................................ 4
1.1.5.
Đặc điểm của hệ điều hành Android: .................................................... 8
1.2.
LAYOUT TRONG ANDROID ......................................................................................17
1.2.1.
Layout là gì ? ...................................................................................... 17
1.2.2.
Cấu trúc một file layout : .................................................................... 18
1.3.
GIỚI THIỆU VỀ JSON .................................................................................................19
1.3.1.
JSON là gì ? ........................................................................................ 19
1.3.2.
Cấu trúc JSON: ................................................................................... 19
1.4.
MƠ HÌNH MVVM ........................................................................................................20
1.4.1.
Giới thiệu MVVM .............................................................................. 20
1.4.2.
Các thành phần của MVVM ............................................................... 20
1.4.3.
Ưu điểm và nhược điểm: ..................................................................... 21
1.5.
ROOM DATABASE .....................................................................................................21
1.5.1.
Room Database là gì? ......................................................................... 21
1.5.2.
Các thành phần chính của Room Database: ......................................... 22
1.6.
RETROFIT ....................................................................................................................22
1.6.1.
Rest API ............................................................................................. 22
1.6.2.
Retrofit là gì ? ..................................................................................... 23
1.7.
WEB HOSTING ............................................................................................................23
CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG ................................................................ 24
i
do an
MỤC LỤC
2.1
Hiện trạng ......................................................................................................................24
2.2
Khảo sát các ứng dụng liên quan ....................................................................................24
CHƯƠNG 3: TIẾP NHẬN YÊU CẦU ...................................................................... 27
3.1
ĐẶC TẢ YÊU CẦU ......................................................................................................27
3.1.1.
Yêu cầu chức năng nghiệp vụ: ............................................................ 27
3.1.2.
Yêu cầu chức năng hệ thống: .............................................................. 27
3.1.3.
Yêu cầu phi chức năng: ....................................................................... 27
3.2
LƯỢC ĐỒ USECASE ...................................................................................................27
3.2.1.
Các sơ đồ usecase ............................................................................... 27
3.2.2.
Đặc tả usecase..................................................................................... 31
CHƯƠNG 4: THIẾT KẾ HỆ THỐNG ....................................................................... 34
4.1
THIẾT KẾ CƠ SỞ DỮ LIỆU ........................................................................................34
4.1.1.
Lược đồ logic ................................................................................................................34
4.1.2.
Chi tiết các bảng dữ liệu.................................................................................................34
4.1.2.1.
Account .............................................................................................. 34
4.1.2.2.
Role .................................................................................................... 34
4.1.2.3.
SerialTitle ........................................................................................... 35
4.1.2.4.
Title .................................................................................................... 35
4.1.2.5.
PartOfTitle .......................................................................................... 35
4.1.2.6.
Question ............................................................................................. 36
4.1.2.7.
Answer ............................................................................................... 36
4.1.3.
Lược đồ quan hệ ............................................................................................................37
4.2
THIẾT KẾ GIAO DIỆN ................................................................................................37
4.2.1.
Thiết kế giao diện màn hình khởi động ............................................... 37
4.2.2.
Thiết kế giao diện màn hình chính ...................................................... 38
4.2.3.
Thiết kế giao diện màn hình chờ tải dữ liệu......................................... 40
4.2.4.
Thiết kế giao diện làm kiểm tra và xem đáp án Part 1 ......................... 41
4.2.5.
Thiết kế giao diện làm kiểm tra và xem đáp án Part 2 ......................... 43
4.2.6.
Thiết kế giao diện làm kiểm tra và xem đáp án Part 3 ......................... 45
4.2.7.
Thiết kế giao diện làm kiểm tra và xem đáp án Part 4 ......................... 46
4.2.8.
Thiết kế giao diện nộp bài ................................................................... 48
4.2.9.
Thiết kế giao diện thông báo điểm số .................................................. 50
4.2.10.
Thiết kế giao diện thông báo xác nhận thao tác ................................... 51
4.2.11.
Thiết kế giao diện chức năng .............................................................. 52
ii
do an
MỤC LỤC
4.2.12.
Thiết kế giao diện danh sách các chủ đề từ vựng ................................. 53
4.2.13.
Thiết kế giao diện từ vựng .................................................................. 54
4.2.14.
Thiết kế giao diện học từ vựng Anh – Việt.......................................... 55
4.2.15.
Thiết kế giao diện học từ vựng qua cách phát âm ................................ 59
4.2.16.
Thiết kế giao diện danh sách các mẹo làm bài ..................................... 60
4.2.17.
Thiết kế giao diện mẹo làm bài ........................................................... 61
4.2.18.
Thiết kế giao diện danh sách các thành ngữ ........................................ 62
4.2.19.
Thiết kế giao diện trợ giúp .................................................................. 63
4.2.20.
Thiết kế giao diện thông tin sản phẩm ................................................. 64
4.2.21.
Thiết kế giao diện luyện nghe ............................................................. 65
4.2.22.
Thiết kế giao diện chia sẻ tài liệu ........................................................ 68
4.2.23.
Thiết kế giao diện đăng nhập Website quản lí ..................................... 69
4.2.24.
Thiết kế giao diện trang chủ Website quản lí....................................... 70
4.2.25.
Thiết kế giao diện quản lí bộ đề .......................................................... 71
4.2.26.
Thiết kế giao diện thêm bộ đề ............................................................. 73
4.2.27.
Thiết kế giao diện chi tiết bộ đề .......................................................... 74
4.2.28.
Thiết kế giao diện thêm đề thi ............................................................. 75
4.2.29.
Thiết kế giao diện quản lí bài thi ......................................................... 76
4.2.30.
Thiết kế giao diện chi tiết bài thi ......................................................... 79
4.2.31.
Thiết kế giao diện thêm đề thi ............................................................. 80
4.3
THIẾT KẾ XỬ LÝ ........................................................................................................81
4.3.1.
Hiển thị danh sách đề thi ..................................................................... 81
4.3.2.
Làm bài thi ......................................................................................... 82
4.3.3.
Xem từ vựng ....................................................................................... 83
4.3.4.
Làm trắc nghiệm từ vựng song ngữ Anh Việt ..................................... 84
4.3.5.
Luyện nghe điền khuyết ...................................................................... 85
4.3.6.
Xem mẹo làm bài ................................................................................ 86
CHƯƠNG 5: CÀI ĐẶT VÀ KIỂM THỬ .................................................................. 88
5.1.
CÀI ĐẶT.......................................................................................................................88
5.1.1.
Cơng cụ hỗ trợ ...............................................................................................................88
5.1.2.
Cài đặt chương trình ......................................................................................................88
5.1.3.
Cấu trúc chương trình ....................................................................................................90
5.1.4.
Lược đồ lớp ...................................................................................................................90
5.2.
KIỂM THỬ ...................................................................................................................94
iii
do an
MỤC LỤC
5.2.1.
Danh sách các testcase ........................................................................ 94
5.2.2.
Chi tiết các testcase ............................................................................. 95
PHẦN KẾT LUẬN.................................................................................................... 97
1
KẾT QUẢ ĐẠT ĐƯỢC ...................................................................................... 97
2
ƯU VÀ NHƯỢC ĐIỂM CỦA ĐỀ TÀI: .............................................................. 97
3
2.1.
Ưu điểm: .......................................................................................................................97
2.2.
Nhược điểm: ..................................................................................................................97
HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI ............................................................... 98
TÀI LIỆU THAM KHẢO.......................................................................................... 99
iv
do an
DANH MỤC HÌNH ẢNH
DANH MỤC HÌNH ẢNH
Thị phần hệ điều hành di động toàn cầu quý 1/2017.[1] .............................. 4
Các phiên bản hệ điều hành Android[2] ....................................................... 5
Kiến trúc của hệ điều hành Android ............................................................ 8
Những yêu cầu cho phần cứng của Android .............................................. 11
Cấu trúc file class của Java và file thực thi Dalvik. .................................... 12
Vòng đời của Activity [4] .......................................................................... 13
Định dạng của một chuỗi JSON.[7] ........................................................... 20
Các thành phần của MVVM [8]................................................................. 21
Mơ hình Rest API.[10] .............................................................................. 22
Khảo sát các cách học tiếng Anh[11] ..................................................... 24
Lược đồ usecase tổng quát ..................................................................... 28
Lược đồ usecase quản lí đề thi ............................................................... 29
Lược đồ usecase luyện nghe trắc nghiệm .............................................. 29
Lược đồ usecase chia sẻ tài liệu.............................................................. 30
Lược đồ usecase luyện nghe điền khuyết ................................................ 30
Lược đồ usecase học từ vựng ................................................................. 31
Lược đồ logic ......................................................................................... 34
Sơ đồ quan hệ cơ sở dữ liệu ................................................................... 37
Giao diện màn hình khởi động ............................................................... 38
Giao diện màn hình chính ...................................................................... 39
Sơ đồ biến cố màn hình chính ................................................................ 40
Giao diện chờ tải dữ liệu ........................................................................ 40
Sơ đồ biến cố màn hình tải dữ liệu ......................................................... 41
Giao diện làm bài trong phần 1 .............................................................. 42
Sơ đồ biến cố màn hình làm bài và xem đáp án ...................................... 43
Giao diện làm bài và xem đáp án trong phần 2 ....................................... 44
Giao diện làm bài và xem đáp án phần 3 ................................................ 45
Giao diện làm bài và xem đáp án trong phần 4 ....................................... 47
Giao diện nộp bài ................................................................................... 49
Sơ đồ biến cố màn hình nộp bài ............................................................. 49
Giao diện thông báo điểm số .................................................................. 50
Sơ đồ biến cố màn hình thơng báo điểm sơ ............................................ 51
v
do an
DANH MỤC HÌNH ẢNH
Giao diện thơng báo xác nhận thao tác ................................................... 51
Sơ đồ biến cố màn hình xác nhận thao tác .............................................. 52
Giao diện chức năng............................................................................... 52
Sơ đồ biến cố màn hình chức năng ......................................................... 53
Giao diện danh sách các chủ đề từ vựng ................................................. 53
Sơ đồ biến cố màn hình danh sách chủ đề .............................................. 54
Giao diện từ vựng .................................................................................. 54
Sơ đồ biến cố màn hình chức năng ......................................................... 55
Giao diện học từ Anh – Việt................................................................... 56
Giao diện sau khi chọn đáp án ................................................................ 57
Giao diện danh sách trả lời sai................................................................ 58
Hiển thị giao diện trắc nghiệm phát âm .................................................. 59
Giao diện thông báo sau khi chọn đáp án ............................................... 60
Giao diện danh sách các mẹo làm bài ..................................................... 61
Giao diện mẹo làm bài ........................................................................... 62
Giao diện danh sách các thành ngữ......................................................... 63
Mô tả giao diện danh sách các thành ngữ ............................................... 63
Giao diện trợ giúp .................................................................................. 64
Giao diện thông tin sản phẩm ................................................................. 65
Giao diện bắt đầu luyện nghe ................................................................. 66
Giao diện thông báo đúng và gợi ý âm thanh từ điền khuyết ................. 67
Giao diện chia sẻ tài liệu ........................................................................ 68
Giao diện hiển thị hình ảnh tài liệu ......................................................... 69
Giao diện đăng nhập .............................................................................. 70
Sơ đồ biến cố giao diện đăng nhập ......................................................... 70
Giao diện trang chủ ................................................................................ 71
Sơ đồ biến cố giao diện trang chủ ........................................................... 71
Giao diện quản lí bộ đề .......................................................................... 72
Giao diện chỉnh sửa bộ đề ...................................................................... 72
Sơ đồ biến cố giao diện quản lí bộ đề ..................................................... 73
Giao điện thêm bộ đề ............................................................................. 74
Sơ đồ biến cố giao diện thêm bộ đề ........................................................ 74
Giao diện chi tiết đề thi .......................................................................... 74
Giao diện sửa đề thi................................................................................ 75
vi
do an
DANH MỤC HÌNH ẢNH
Giao diện thêm đề thi ............................................................................. 76
Giao diện quản lí bài thi ......................................................................... 77
Giao diện chỉnh sửa bài thi ..................................................................... 77
Giao diện thêm phần thi ......................................................................... 78
Giao diện chi tiết các phần thi ................................................................ 79
Giao diện thêm đề thi ............................................................................. 80
Lược đồ tuần tự danh sách đề thi ............................................................ 81
Lược đồ tuần tự chức năng làm bài thi ................................................... 82
Lược đồ tuần tự chức năng xem từ vựng ................................................ 83
Lược đồ tuần tự chức năng trắc nghiệm từ vựng song ngữ Anh Việt ...... 84
Lược đồ tuần tự luyện nghe điền khuyết ................................................. 85
Lược đồ tuần tự chức năng xem mẹo làm bài ......................................... 86
Hình ảnh cài đặt truy cập Internet ........................................................... 88
Các thư viện cần thiết ............................................................................. 88
Hình ảnh lớp interface API..................................................................... 89
Hình lớp DAO History ........................................................................... 89
Cấu trúc của chương trình ...................................................................... 90
Sơ đồ lớp giao diện màn hình chính ....................................................... 91
Lược đồ lớp làm bài Part 1 ..................................................................... 93
vii
do an
DANH MỤC BẢNG
DANH MỤC BẢNG
Bảng 1:
Các loại layout chính trong ViewGroup..................................................... 18
Bảng 2:
Các loại View cơ bản ................................................................................ 19
Bảng 3:
Khảo sát các ứng dụng học TOEIC ............................................................ 26
Bảng 4:
Mô tả usecase luyện nghe trắc nghiệm ....................................................... 31
Bảng 5:
Mô tả usecase học từ vựng ........................................................................ 32
Bảng 6:
Mô tả usecase làm trắc nghiệm từ vựng ..................................................... 32
Bảng 7:
Mô tả usecase luyện nghe điền khuyết ....................................................... 33
Bảng 8:
Mô tả usecase chi sẻ đề thi ........................................................................ 33
Bảng 9:
Bảng tài khoản .......................................................................................... 34
Bảng 10:
Bảng phân quyền.................................................................................... 35
Bảng 11:
Bảng bộ đề ............................................................................................. 35
Bảng 12:
Bảng đề thi ............................................................................................. 35
Bảng 13:
Bảng phần thi ......................................................................................... 36
Bảng 14:
Bảng câu hỏi .......................................................................................... 36
Bảng 15:
Bảng câu trả lời ...................................................................................... 37
Bảng 16:
Mô tả giao diện màn hình khởi động ...................................................... 38
Bảng 17:
Mơ tả giao diện màn hình chính ............................................................. 39
Bảng 18:
Mơ tả giao diện tải dữ liệu ...................................................................... 41
Bảng 19:
Mô tả giao diện làm bài và xem đáp án phần 1 ....................................... 43
Bảng 20:
Mô tả giao diện làm bài và xem đáp án trong phần 2 .............................. 45
Bảng 21:
Mô tả giao diện làm bài và xem đáp án trong phần 3 .............................. 46
Bảng 22:
Mô tả giao diện làm bài và xem đáp án trong phần 4 .............................. 48
Bảng 23:
Mô tả giao diện nộp bài .......................................................................... 49
Bảng 24:
Mô tả giao diện thông báo điểm số ......................................................... 50
Bảng 25:
Mô tả giao diện thông báo xác nhận thao tác .......................................... 52
Bảng 26:
Mô tả giao diện chức năng ..................................................................... 53
Bảng 27:
Mô tả giao diện danh sách các chủ đề từ vựng........................................ 54
Bảng 28:
Mô tả giao diện từ vựng ......................................................................... 55
Bảng 29:
Mô tả chức năng học từ vựng Anh Việt .................................................. 58
Bảng 30:
Mô tả chức năng danh sách trả lời sai ..................................................... 58
Bảng 31:
Mô tả chức năng làm trắc nghiệm qua phát âm ....................................... 60
Bảng 32:
Mô tả giao diện danh sách các mẹo làm bài ............................................ 61
viii
do an
DANH MỤC BẢNG
Bảng 33:
Mô tả giao diện mẹo làm bài .................................................................. 62
Bảng 34:
Mô tả giao diện trợ giúp ......................................................................... 64
Bảng 35:
Mô tả giao diện thông tin sản phẩm ........................................................ 65
Bảng 36:
Mô tả chức năng luyện nghe................................................................... 68
Bảng 37:
Mô tả chức năng chia sẻ tài liệu ............................................................. 69
Bảng 38:
Mô tả chức năng đăng nhập .................................................................... 70
Bảng 39:
Mô tả chức năng giao diện trang chủ ...................................................... 71
Bảng 40:
Mô tả chức năng quản lí bộ đề ............................................................... 73
Bảng 41:
Mơ tả chức năng thêm bộ đề .................................................................. 74
Bảng 42:
Mô tả chức năng chi tiết đề thi ............................................................... 75
Bảng 43:
Mô tả chức năng thêm đề ....................................................................... 76
Bảng 44:
Mơ tả chức năng quản lí bài thi .............................................................. 79
Bảng 45:
Mô tả chức năng chi tiết bài thi .............................................................. 80
Bảng 46:
Mô tả chức năng thêm phần thi .............................................................. 81
Bảng 47:
Bảng Activities Flow hiển thị danh sách đề thi ....................................... 82
Bảng 48:
Activities Flow làm bài thi ..................................................................... 83
Bảng 49:
Activities Flow xem từ vựng .................................................................. 84
Bảng 50:
Activities Flow trắc nghiệm từ vựng song ngữ ....................................... 85
Bảng 51:
Activities Flow luyện nghe điền khuyết ................................................. 86
Bảng 52:
Activities Flow xem mẹo làm bài ........................................................... 87
Bảng 53:
Bảng mô tả sơ đồ lớp Title ..................................................................... 92
Bảng 54:
Mô tả lược đồ lớp làm bài Part 1 ............................................................ 94
Bảng 55:
Danh sách các testcase ........................................................................... 94
Bảng 56:
Chi tiết các testcase ................................................................................ 96
ix
do an
LỜI MỞ ĐẦU
LỜI MỞ ĐẦU
Trong cuộc sống hiện nay, tiếng anh ngày càng trở nên quan trọng và thiết yếu.
Ngoại trừ dùng để giao tiếp, tiếng anh còn được sử dụng rộng rãi để làm tiêu chuẩn để
xét tốt nghiệp trong các trường cao đẳng đại học.
Đối với một số ngành như công nghệ thông tin với tài liệu chủ yếu là viết bằng
tiếng anh càng làm rõ sự quan trọng của tiếng anh trong học tập, nghiên cứu.
1
do an
PHẦN MỞ ĐẦU
PHẦN MỞ ĐẦU
1. TÍNH CẤP THIẾT VÀ LÝ DO CHỌN ĐỀ TÀI
Nhu cầu học tiếng Anh của sinh viên ngày càng cao:
Phục vụ cho việc học tập: nội dung chương trình các mơn học đa phần đều
sử dụng tiếng Anh. Chuẩn đầu ra tiếng Anh ở các trường Đại học khác nhau
và có xu hướng nâng cao qua các năm.
Làm việc sau khi ra trường: nhu cầu tuyển dụng sinh viên giỏi tiếng Anh ở
các công ty Việt Nam, các cơng ty nước ngồi có trụ sở ở Việt Nam.
Chi phí học tiếng Anh, thời gian học và chất lượng giảng dạy ở các trung
tâm là mối bận tâm hàng đầu của sinh viên khi học tiếng Anh bên ngoài.
Kỹ năng nghe là kỹ năng hầu hết các sinh viên lo sợ và rất kém kỹ năng này
và địi hỏi phải có một q trình học và luyện tập hợp lí.
Vì thế, để nâng cao khả năng ngoại ngữ cho sinh viên, cụ thể là kỹ năng nghe
tiếng Anh. Nhóm tiểu luận muốn xây dựng một ứng dụng “Luyện nghe Toeic trên
android” miễn phí khơng chỉ cho sinh viên mà tồn bộ những ai muốn cải thiện khả
năng nghe tiếng Anh của mình.
2. MỤC TIÊU CỦA ĐỀ TÀI
Các mục tiêu của đề tài đặt ra để xây dựng ứng dụng :
o Xây dựng ứng dụng luyện nghe qua bộ đề mẫu. Ngồi ra có thêm các
tính năng học từ vựng và bổ trợ luyện nghe.
o Xây dựng Website quản lí dữ liệu (dành cho người quản lí).
3. ĐỐI TƯỢNG VÀ PHẠM VI CỦA ĐỀ TÀI
Đối tượng và phạm vi nghiên cứu của đề tài là: Cơ sở dữ liệu Room, mơ hình
MVVM, thao tác với file JSON và Web Hosting.
Thời gian thực hiện trong vòng 15 tuần.
4. NỘI DUNG THỰC HIỆN VÀ PHƯƠNG PHÁP THỰC HIỆN
1
Nội dung thực hiện:
4.1.1
Lý thuyết:
Tìm hiểu ngơn ngữ lập trình Java để xây dựng ứng dụng trên cơng cụ
Android Studio
2
do an
PHẦN MỞ ĐẦU
Tìm hiểu cách thao tác với cơ sở dữ liệu Room, MySQL
Tìm hiểu các kỹ thuật trong lập trình Android như: mơ hình MVVM,
xử lý đa luồng, xử lý bất đồng bộ
Xây dựng các yêu cầu và thực thi các yêu cầu của đề tài
4.1.2
Thực hành:
Xây dựng ứng dụng luyện nghe Toeic sử dụng hệ điều hành
Android có các tính năng chính như sau:
2
-
Luyện nghe và làm trắc nghiệm Toeic
-
Lưu lịch sử kết quả kiểm tra
Phương pháp thực hiện:
4.2.1 Lý thuyết:
Tìm hiểu tại các trang tài liệu chính thống
Tìm hiểu tại các diễn đàn nổi tiếng như stackoverflow
Tìm hiểu một số ứng dụng đã có trên CH Play
Tham khảo ý kiến giảng viên hướng dẫn
4.2.1 Thực hành:
Sử dụng công cụ Android Studio
Sử dụng smartphone có hệ điều hành Android 6.0 trở lên
Sử dụng Host để lưu dữ liệu online và tạo trang JSON
5. NỘI DUNG BÁO CÁO ĐỀ TÀI
Đề tài gồm 5 chương, nội dung của mỗi chương là
Chương 1: Tổng quan – Chương này giới thiệu tổng quan đề tài, bao gồm
lời mở đầu, tính cấp thiết và lý do chọn đề tài, mục tiêu của đề tài, đối tượng
và phạm vi đề tài, nội dung thực hiện và phương pháp thực hiện
Chương 2: Cơ sở lý thuyết – Giới thiệu về Android, các đặc điểm của
Android, giới thiệu về MVVM, Room, các thư viện sử dụng…
Chương 3: Phân tích, thiết kế và mơ tả chức năng ứng dụng
Chương 4: Kết luận
Chương 5: Tài liệu tham khảo
3
do an
CHƯƠNG 1 : CƠ SỞ LÝ THUYẾT
PHẦN NỘI DUNG
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1.1.
TỔNG QUAN HỆ ĐIỀU HÀNH ANDROID:
1.1.1. Android là gì:
Là một hệ điều hành mã nguồn mở dành cho thiết bị di động như điện
thoại di động, máy tính bảng và netbooks.
Được phát triển bởi Google, dựa trên nền tảng Linux và các phần mềm
mã nguồn mở.
Android phát triển để cạnh tranh với các hệ điều hành khác như iOS,
BlackBerry OS, Windows Phone, v.v…
Thị phần hệ điều hành di động toàn cầu quý 1/2017.[1]
1.1.2. Hoàn cảnh ra đời:
Khi ngành công nghiệp điện thoại di động sang một trang mới, một hệ
điều hành mở có thể dùng chung cho nhiều hãng điện thoại với những tùy chọn
riêng biệt là một miếng mồi béo bở mà Google nhìn thấy đầu tiên. Dưới đây là
những cột mốc đáng nhớ trong quá trình hình thành và phát triển của hệ điều
hành Android:
10/2013, Android (inc) ra đời như một hãng phần mềm, với mục tiêu
tạo ra những thiết bị thông minh, đáp ứng nhu cầu của người dùng.
8/2005, gã khổng lồ google mua lại Android với toàn bộ nhân viên.
4
do an
CHƯƠNG 1 : CƠ SỞ LÝ THUYẾT
10/2008, hệ điều hành Android đã chính thức trở thành phần mềm mã
nguồn mở.
12/2008, có thêm 14 thành viên mới gia nhập dự án Android được
cơng bố, gồm có ARM Holdings, Atheros Communications, Asustek
Computer Inc, Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp,
và Vodafone Group Plc [2].
1.1.3. Các phiên bản android:
Phiên bản đầu tiên của hệ điều hành Android ra đời vào tháng 9/2008 và
tháng 2/2009 khơng có tên gọi chính thức, sau này, những phiên bản tiếp theo
ra đời với tên gọi là những món tráng miệng với vần đầu của bảng Anphabet CD-E-F-G-H-I…[2]
Các phiên bản hệ điều hành Android[2]
Android Cupcake 1.5, 4/2009: Phiên bản này có một số tính năng đáng
chú ý như: khả năng ghi lại và xem video thơng qua chế độ máy ghi
hình, tải video lên YouTube và ảnh lên Picasa trực tiếp từ điện thoại, tích
hợp bàn phím ảo với khả năng đốn trước văn bản.
Android Donut 1.6, 9/2009: Phiên bản này giúp nâng cao trải nghiệm
trên kho ứng dụng Android Market, tích hợp giao diện tùy biến cho phép
người dùng xóa nhiều ảnh cùng lúc, nâng cấp Voice Search, nâng cấp
khả năng tìm kiếm bookmarks, history, contacts và web trên màn hình
chủ, bước đầu hỗ trợ màn hình độ phân giải WVGA.
5
do an
CHƯƠNG 1 : CƠ SỞ LÝ THUYẾT
Android Eclair 2.0 + 2.1, 10/2009. Phiên bản này có sự cải thiện rõ rệt
trong giao diện người dùng, tối ưu hóa tốc độ phần cứng, hỗ trợ nhiều
kích cỡ và độ phân giải màn hình hơn, thay đổi giao diện duyệt web và
hỗ trợ chuẩn HTML5, Exchange ActiveSync 2.5, nâng cấp Google Maps
3.1.2, camera zoom kĩ thuật số tích hợp đèn flash, nâng cấp bàn phím ảo
và kết nối Bluetooth 2.1.
Android Froyo 2.2 5/2010: Phiên bản này chú trọng nâng cấp tốc độ xử
lí, giới thiệu engine Chrome V8 JavaScript, hỗ trợ Adobe Flash10.1,
thêm tính năng tạo điểm truy cập Wi-Fi. Một tính năng đáng chú ý khác
hỗ trợ chuyển đổi nhanh chóng giữa các ngơn ngữ và từ điển trên bàn
phím đồng thời cho phép cài đặt và cập nhật ứng dụng ở các thiết bị mở
rộng bộ nhớ.
Android Gingerbread 2.3, 12/2010: Phiên bản này đã nâng cấp đáng kể
giao diện người dùng, cải thiện bàn phím ảo, thêm tính năng copy/paste,
hỗ trợ cơng nghệ giao tiếp tầm sóng ngắn NFC, hỗ trợ chuẩn video
WebM và nâng cao tính năng copy–paste.
Android Honeycomb 3.0, 2/2011: Đây là phiên bản hệ điều hành dành
riêng cho máy tính bảng tablet với giao diện mới tối ưu hóa cho tablet, từ
các thao tác đều phụ thuộc màn hình cảm ứng (như lướt web, duyệt
mail...).
Android 4.0 Ice Cream Sandwich, cuối 2011:Android 4.0 nhắm đến việc
duyệt web nhanh hơn, tối ưu hóa hiệu suất hoạt động của thiết bị, kéo dài
thời gian dùng pin…
Android Jelly Bean 4.1 +4.2, 2012: quan trọng hơn hết của Jelly Bean
không phải là về giao diện hay ứng dụng mới mà về Project Butter giúp
mang lại độ mượt chưa từng có cho Android.
Android 4.3 Jelly Bean 4.3, 24/4/2013: đi kèm những tính năng mới như
hỗ trợ kết nối Bluetooth Smart, bộ API OpenGL ES 3.0, bổ sung tính
năng sử dụng Wi-Fi để định vị ngay cả khi người dùng tắt kết nối này đi
cùng nhiều thay đổi lớn nhỏ khác.[2]
6
do an