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

(Đồ án hcmute) xây dựng ứng dụng hỗ trợ học từ vựng tiếng anh trên android

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

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 HỖ TRỢ HỌC TỪ VỰNG
TIẾNG ANH TRÊN ANDROID

GVHD: NGUYỄN TRẦN THI VĂN
SVTH: NGUYỄN MINH HOÀNG
MSSV: 15110210
SVTH: PHẠM VĂN TỔNG
MSSV: 15110336

SKL 0 0 6 7 6 1

Tp. Hồ Chí Minh, 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

NGUYỄN MINH HỒNG

15110210


PHẠM VĂN TỔNG

15110336

Đề tài:

XÂY DỰNG ỨNG DỤNG HỖ TRỢ HỌC TỪ
VỰNG TIẾNG ANH 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

NGUYỄN MINH HỒNG

15110210

PHẠM VĂN TỔNG

15110336


Đề tài:

XÂY DỰNG ỨNG DỤNG HỖ TRỢ HỌC TỪ
VỰNG TIẾNG ANH 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


ĐH SƯ PHẠM KỸ THUẬT TP.HCM

XÃ HỘI CHỦ NGHĨA VIỆT NAM

KHOA CNTT

Độ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: Nguyễn Minh Hoàng

MSSV: 15110210


Họ và tên Sinh viên 2: Phạm Văn Tổng

MSSV: 15110336

Ngành: Công nghệ Thông tin
Tên đề tài: Xây dựng ứng dụng hỗ trợ học từ vựng tiếng anh 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 và 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 … năm 2020
Giáo viên hướng dẫn
(Ký và ghi rõ họ tên)


i

do an


ĐH SƯ PHẠM KỸ THUẬT TP.HCM

XÃ HỘI CHỦ NGHĨA VIỆT NAM

KHOA CNTT

Độ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: Nguyễn Minh Hoàng

MSSV: 15110210

Họ và tên Sinh viên 2: Phạm Văn Tổng

MSSV: 15110336

Ngành: Công nghệ Thông tin
Tên đề tài: Xây dựng ứng dụng hỗ trợ học từ vựng tiếng anh trên Android
Họ và tên Giáo viên phản biện: TS. Lê Vĩnh Thịnh

NHẬN XÉT:
1. Về nội dung đề tài và 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 … năm 2020
Giáo viên phản biện
(Ký và ghi rõ họ tên)

ii

do an


LỜI CẢM ƠN
Lời đầu tiên, nhóm chúng em xin gửi lời cảm ơn chân thành đến Quý Thầy, Cô của khoa

Công Nghệ Thông Tin Trường Đại Học Sư Phạm Kỹ Thuật TP.HCM đã truyền thụ những
kiến thức, kinh nghiệm quý báu và đã tạo điều kiện thuận lợi cho chúng em được thực hiện
đề tài Khóa luận tốt nhiệp này.
Thứ hai, chúng em cũng xin được gửi lời cảm ơn chân thành và sâu sắc nhất đến thầy
Nguyễn Trần Thi Văn, người Thầy đã hướng dẫn và chỉ bảo chúng em trong suốt quá trình
chúng em thực hiện đề tài khóa luận này.
Chúng em xin cảm ơn Trường Đại Học Sư Phạm Kỹ Thuật TP.HCM đã tạo một môi
trường thuận lợi cho chúng em học tập trong thời gian qua.
Và cũng xin chân thành cảm ơn đến những anh, chị khóa trên và bạn bè đã ủng hộ và
giúp đỡ chúng em trong thời gian này.
Mặc dù chúng em đã cố gắng hồn thành thật tốt khóa luận tốt nghiệp này, nhưng chắc
chắn chúng em sẽ có những thiếu sót khơng tránh khỏi. Nhưng chúng em kính mong nhận
được sự cảm thơng và những ý kiến đóng góp của q Thầy Cô và các bạn.
Và cuối cùng, chúng em xin chân thành cảm ơn.

Tp. Hồ Chí Minh, tháng 12 năm 2019
Nhóm sinh viên thực hiện:
Nguyễn Minh Hồng
Phạm Văn Tổng

iii

do an


Trường ĐH Sư Phạm Kỹ Thuật TP. HCM
Khoa: CNTT

ĐỀ CƯƠNG KHÓA LUẬN TỐT NGHIỆP
Họ và Tên SV thực hiện 1: Nguyễn Minh Hoàng


MSSV: 15110210

Họ và Tên SV thực hiện 2: Phạm Văn Tổng

MSSV: 15110336

Thời gian làm khóa luận : từ : 23/09/2019

Đến: 11/12/2019

Chuyên ngành: Công nghệ phần mềm
Tên đề tài: Xây dựng ứng dụng hỗ trợ học từ vựng tiếng anh trên Android
Giáo viên hướng dẫn: Ths. Nguyễn Trần Thi Văn
Nhiệm vụ của luận văn:
1. Lý thuyết:
-

Tìm hiểu về hệ điều hành Android.

-

Tìm hiểu về SQLite.

2. Thực hành:
Xây dựng ứng dụng học từ vựng tiếng Anh trên Android với các tính năng chính:
-

Tra từ.


-

Quản lý từ vựng.

-

Quản lý chủ đề.

-

Đặt lịch nhắc nhở luyện tập

Đề cương viết luận văn:
MỤC LỤC
1. Phần MỞ ĐẦU
1.1. Tính cấp thiết của đề tài
1.2. Mục đích của đề tài
1.3. Cách tiếp cận và phương pháp nghiên cứu
-

Đối tượng nghiên cứu

-

Phạm vi nghiên cứu

1.5. Phân tích những ứng dụng có liên quan
1.4. Kết quả dự kiến đạt được
iv


do an


2. Phần NỘI DUNG
1. Chương 1: Cơ sở lý thuyết
1.1. Giới thiệu về hệ điều hành Android
1.2. Giới thiệu về những phiên bản của hệ điều hành Android
2. Chương 2: Khảo sát thị trường và xác định yêu cầu
2.1. Khảo sát hiện trạng những ứng dụng liên quan
2.2. Xác định yêu cầu cho ứng dụng
3. Chương 3: Phân tích yêu cầu và thiết kế cơ sở dữ liệu
3.1. Mô tả công việc
3.2. Usecare diagram
3.3. Sequence diagram
3.4. Thiết kế cơ sở dữ liệu
4. Chương 4: Thiết kế giao diện và xử lý
4.1. Giao diện khởi động
4.2. Giao diện chính
4.3. Giao diện luyện tập tự chọn
4.4. Giao diện tra từ
4.5. Giao diện tùy chỉnh
4.6. Giao diện bài tập nghe
4.7. Giao diện bài tập chọn từ theo nghĩa
4.8. Giao diện bài tập chọn nghĩa theo từ
4.9. Giao diện chọn số lần nhắc nhở luyện tập
4.10. Giao diện chọn ngày thông báo luyện tập
4.11. Giao diện chọn giờ thông báo luyện tập
4.12. Giao diện chi tiết từ
4.13. Giao diện thêm từ
5. Chương 5: Cài đặt và kiểm thử

5.1. Cài đặt ứng ụng và kiểm thử các màn hình chính
5.2. Tổng hợp kết quả kiểm thử
v

do an


5. Phần KẾT LUẬN
6. Tài liệu tham khảo
KẾ HOẠCH THỰC HIỆN
STT
1

Thời Gian

Nhiệm vụ

Ghi chú

23/9-29/9

- Tìm hiểu về hệ điều hành Android và các ứng

(Tuần 1)

dụng tương tự đề tài
- Tìm hiểu về SQLite

2


30/9-6/10
(Tuần 2,3,4)

- Tìm hiểu, phân tích thị trường và những ứng
dụng có liên quan.
- Xác định yêu cầu cho ứng dụng
- Thiết kế Usecase

3

7/10-20/10

- Thiết kế cơ sở dữ liệu
- Thiết kế giao diện chính

4
5
6
7

8

9
10

21/10-10/11

- Thiết kế, chỉnh sửa giao diện

(Tuần 5,6,7)


- Thiết kế chức năng

11/11- 1/12

- Thiết kế giao diện

(Tuần 8,9,10) - Thiết kế chức năng
2/12-8/12

- Xử lý chức năng nghe từ

(Tuần 11)

- Xử lý chức năng tìm kiếm từ

9/12-15/12

- Xử lý chức năng làm bài kiểm tra

(Tuần 12)

- Sửa các lỗi của ứng dụng

16/12-28/12
(Tuần 13,14)

- Chỉnh sửa các lỗi của ứng dụng
- Hoàn thiện các chức năng
- Viết báo cáo


29/12-4/12

- Viết báo cáo.

(Tuần 15)

- Chỉnh sửa các lỗi của ứng dụng.

5/12-11/12

- Hoàn tất ứng dụng.

(Tuần 16)

- Báo cáo.

Ý kiến của Giáo viên hướng dẫn

Ngày … tháng … năm 2019

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

Người viết đề cương

vi

do an



KHÓA LUẬN TỐT NGHIỆP

MỤC LỤC
PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN...................................................... i
PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN ........................................................ii
LỜI CẢM ƠN ..................................................................................................................... iii
ĐỀ CƯƠNG KHÓA LUẬN TỐT NGHIỆP .......................................................................iv
MỞ ĐẦU ............................................................................................................................ 10
CƠ SỞ LÝ THUYẾT ................................................................................... 12
1.1.

GIỚI THIỆU VỀ HỆ ĐIỀU HÀNH ANDROID .................................................. 12

1.1.1.

Giới thiệu về hệ điều hành Android ............................................................... 12

1.1.2.

Giới thiệu về những phiên bản của hệ điều hành Android ............................ 12

1.1.3.

Lý thuyết về hệ điều hành Android ................................................................ 13

1.1.4.

Ưu điểm và nhược điểm của hệ điều hành Android ...................................... 14

1.1.5.


Thực trạng hiện nay của hệ điều hành Android ............................................. 15

1.2.

GIỚI THIỆU VỀ SQLITE .................................................................................... 15

1.2.1.

Giới thiệu về SQLite ...................................................................................... 15

1.2.2.

Các chức năng chính của SQLite ................................................................... 15

1.2.3.

Những lợi ích và hạn chế của SQLite ............................................................ 18
KHẢO SÁT THỊ TRƯỜNG VÀ XÁC ĐỊNH YÊU CẦU .......................... 19

2.1.

KHẢO SÁT HIỆN TRẠNG NHỮNG ỨNG DỤNG LIÊN QUAN .................... 19

2.1.1.

Ứng dụng Duolingo........................................................................................ 19

2.1.2.


3000 từ vựng tiếng Anh thông dụng .............................................................. 23

2.1.3.

6000 từ vựng phổ biến ................................................................................... 25

2.2.

XÁC ĐỊNH YÊU CẦU CHO ỨNG DỤNG ........................................................ 27

2.2.1.

Yêu cầu chức năng ......................................................................................... 27

2.2.2.

Yêu cầu phi chức năng ................................................................................... 27
PHÂN TÍCH YÊU CẦU VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU ...................... 29

3.1. MÔ TẢ CÔNG VIỆC ............................................................................................. 29
3.1.1. Yêu cầu nghiệp vụ của người dùng .................................................................. 29
3.1.2. Các quy định / Công thức liên quan ................................................................. 30
3.2. USECASE DIAGRAM ........................................................................................... 31
2

do an


KHÓA LUẬN TỐT NGHIỆP
3.3. SEQUENCE DIAGRAM ......................................................................................... 32

3.3.1. Chức năng luyện tập ngẫu nhiên ....................................................................... 32
3.3.2. Chức năng luyện tập tùy chọn ........................................................................... 33
3.3.3. Chức năng tra từ ................................................................................................ 34
3.3.4. Chức năng thêm từ mới ..................................................................................... 35
3.4.5. Chức năng xóa từ ............................................................................................... 36
3.4.6. Chức năng thêm vào danh sách yêu thích ......................................................... 37
3.4.7. Chức năng lập lịch luyện tập ............................................................................. 38
3.4. THIẾT KẾ CƠ SỞ DỮ LIỆU .................................................................................. 39
3.4.1. Mô hình cơ sở dữ liệu ........................................................................................ 39
3.4.2. Bảng mơ tả các thuộc tính của cơ sở dữ liệu ..................................................... 39
THIẾT KẾ GIAO DIỆN VÀ XỬ LÝ .......................................................... 41
4.1. GIAO DIỆN KHỞI ĐỘNG..................................................................................... 41
4.1.1. Màn hình giao diện khởi động ........................................................................... 41
4.1.2. Mô tả thành phần giao diện ............................................................................... 41
4.2. GIAO DIỆN CHÍNH............................................................................................... 42
4.2.1. Màn hình giao diện chính ................................................................................. 42
4.2.2. Mô tả thành phần giao diện và các xử lý .......................................................... 43
4.3. GIAO DIỆN LUYỆN TẬP TỰ CHỌN .................................................................. 44
4.3.1. Màn hình giao diện luyện tập tự chọn .............................................................. 44
4.3.2. Mô tả thành phần giao diện và các xử lý .......................................................... 45
4.4. GIAO DIỆN TRA TỪ ............................................................................................. 47
4.4.1. Màn hình giao diện tra từ .................................................................................. 47
4.4.2. Mô tả thành phần giao diện và các xử lý .......................................................... 48
4.5. GIAO DIỆN TÙY CHỈNH ..................................................................................... 50
4.5.1. Màn hình giao diện tùy chỉnh ........................................................................... 50
4.5.2. Mô tả thành phần giao diện và các xử lý .......................................................... 51
4.6. GIAO DIỆN BÀI TẬP NGHE................................................................................ 53
4.6.1. Màn hình bài tập nghe ...................................................................................... 53
4.6.2. Mơ tả thành phần giao diện và các xử lý .......................................................... 54
3


do an


KHÓA LUẬN TỐT NGHIỆP
4.7. GIAO DIỆN BÀI TẬP CHỌN TỪ THEO NGHĨA ............................................... 55
4.7.1. Màn hình giao diện chọn từ theo nghĩa ............................................................ 55
4.7.2. Mô tả thành phần giao diện và các xử lý .......................................................... 56
4.8. GIAO DIỆN BÀI TẬP CHỌN NGHĨA THEO TỪ ............................................... 57
4.8.1. Màn hình giao diện chọn nghĩa theo từ ............................................................ 57
4.8.2. Mô tả thành phần giao diện và các xử lý .......................................................... 58
4.9. GIAO DIỆN CHỌN SỐ LẦN NHẮC NHỞ LUYỆN TẬP ................................... 59
4.9.1. Màn hình giao diện chọn số lần nhắc nhở luyện tập ........................................ 59
4.9.2. Mô tả thành phần giao diện và các xử lý .......................................................... 60
4.10. GIAO DIỆN CHỌN NGÀY THÔNG BÁO LUYỆN TẬP................................... 60
4.10.1. Màn hình giao diện chọn ngày thơng báo luyện tập ....................................... 60
4.10.2. Mô tả thành phần giao diện và các xử lý ........................................................ 61
4.11. GIAO DIỆN CHỌN GIỜ THƠNG BÁO LUYỆN TẬP ...................................... 61
4.11.1. Màn hình giao diện chọn giờ thông báo luyện tập .......................................... 61
4.11.2. Mô tả thành phần giao diện và các xử lý ......................................................... 62
4.12. GIAO DIỆN CHI TIẾT TỪ .................................................................................. 63
4.12.1. Màn hình giao diện chi tiết từ ......................................................................... 63
4.12.2. Mô tả thành phần giao diện và các xử lý ........................................................ 64
4.13. GIAO DIỆN THÊM TỪ ....................................................................................... 65
4.13.1. Màn hình giao diện thêm từ ............................................................................ 65
4.13.2. Mô tả thành phần giao diện và các xử lý ........................................................ 66
CÀI ĐẶT VÀ KIỂM THỬ .......................................................................... 67
5.1.

CÀI ĐẶT ỨNG DỤNG VÀ KIỂM THỬ CÁC MÀN HÌNH .............................. 67


5.1.1.

Màn hình khởi động ....................................................................................... 67

5.1.2.

Màn hình giao diện chính ............................................................................... 67

5.1.3.

Màn hình giao diện luyện tập tự chọn ............................................................ 68

5.1.4.

Màn hình giao diện tra từ ............................................................................... 70

5.1.5.

Màn hình giao tùy chỉnh ................................................................................ 70

5.1.6.

Màn hình giao diện bài tập nghe .................................................................... 71

5.1.7.

Màn hình giao diện bài tập chọn từ theo nghĩa .............................................. 72
4


do an


KHĨA LUẬN TỐT NGHIỆP
5.1.8.

Màn hình giao diện chọn nghĩa theo hình ...................................................... 73

5.1.9.

Màn hình giao diện số lần nhắc nhở luyện tập............................................... 74

5.1.10. Màn hình giao diện chọn ngày thơng báo luyện tập ...................................... 74
5.1.11. Màn hình giao diện chọn giờ thơng báo luyện tập ......................................... 75
5.1.12. Màn hình giao diện chi tiết từ ........................................................................ 76
5.1.13. Màn hình giao diện thêm từ ........................................................................... 76
5.2.

TỔNG HỢP KẾT QUẢ KIỂM THỬ ................................................................... 78

KẾT LUẬN ........................................................................................................................ 79
1. KẾT QUẢ ĐẠT ĐƯỢC ........................................................................................... 79
2. ƯU ĐIỂM ................................................................................................................. 79
3. HẠN CHẾ ................................................................................................................ 79
4. HƯỚNG PHÁT TRIỂN ........................................................................................... 79
TÀI LIỆU THAM KHẢO .................................................................................................. 80

5

do an



KHÓA LUẬN TỐT NGHIỆP

DANH MỤC BẢNG BIỂU
Bảng 1. Bảng phân tích những ứng dụng liên quan ........................................................... 11
Bảng 2: 1.1. Bảng các phiên bản của hệ điều hành Android .............................................. 12
Bảng 3: 1.2. Bảng thị phần Adroid năm 2016 và năm 2017 .............................................. 15
Bảng 4: 3.1. Yêu cầu chức năng nghiệp vụ của người dùng .............................................. 29
Bảng 5: 3.2. Bảng các quy định / công thức liên quan ....................................................... 30
Bảng 6: 3.3. Bảng mơ tả các thuộc tính Words .................................................................. 39
Bảng 7: 3.4. Bảng mơ tả các thuộc tính của chủ đề ........................................................... 40
Bảng 8: 3.5. Bảng mô tả các thuộc tính của Question........................................................ 40
Bảng 9: 4.1. Bảng mơ tả các thành phần giao diện khởi động ........................................... 41
Bảng 10: 4.2. Bảng mơ tả các thành phần giao diện chính ................................................ 43
Bảng 11: 4.3. Bảng mô tả các xử lý ................................................................................... 43
Bảng 12: 4.4. Bảng mô tả các thành phần giao diện luyện tập tự chọn ............................. 45
Bảng 13: 4.5. Bảng mô tả các xử lý ................................................................................... 45
Bảng 14: 4.6. Bảng mô tả các thành phần giao diện tra từ ................................................. 48
Bảng 15: 4.7. Bảng mô tả các xử lý ................................................................................... 49
Bảng 16: 4.8. Bảng mô tả các thành phần giao diện tùy chỉnh .......................................... 51
Bảng 17: 4.9. Bảng mô tả các xử lý ................................................................................... 52
Bảng 18: 4.10. Bảng mô tả các thành phần giao diện bài tập nghe .................................... 54
Bảng 19: 4.11. Bảng mô tả các xử lý ................................................................................. 54
Bảng 20: 4.12. Bảng mô tả các thành phần giao diện chọn từ theo nghĩa ......................... 56
Bảng 21: 4.13. Bảng mô tả các xử lý ................................................................................. 56
Bảng 22: 4.14. Bảng mô tả các thành phần giao diện chọn nghĩa theo từ ......................... 58
Bảng 23: 4.15. Bảng mô tả các xử lý ................................................................................. 58
Bảng 24: 4.16. Bảng mô tả các thành phần giao diện chọn số lần nhắc nhở luyện tập ..... 60
Bảng 25: 4.17. Bảng mô tả các xử lý ................................................................................. 60

Bảng 26: 4.18. Mô tả các thành phần giao diện chọn ngày thông báo luyện tập ............... 61
Bảng 27: 4.19. Bảng mô tả các xử lý ................................................................................. 61
Bảng 28: 4.20. Mô tả các thành phần giao diện chọn giờ thông báo luyện tập ................. 62
Bảng 29: 4.21. Bảng mô tả các xử lý ................................................................................. 62
6

do an


KHĨA LUẬN TỐT NGHIỆP
Bảng 30: 4.22. Bảng mơ tả các thành phần giao diện chi tiết từ ........................................ 64
Bảng 31: 4.23. Bảng mô tả các xử lý ................................................................................. 64
Bảng 32: 4.24. Bảng mô tả các thành phần giao diện thêm từ ........................................... 66
Bảng 33: 4.25. Bảng mô tả các xử lý ................................................................................. 66
Bảng 34: 5.1. Bảng kiểm thử màn hình khởi động ............................................................ 67
Bảng 35: 5.2. Bảng kiểm thử màn hình giao diện chính .................................................... 67
Bảng 36: 5.3. Bảng kiểm thử màn hình giao diện luyện tập tự chọn ................................. 68
Bảng 37: 5.4. Bảng kiểm thử màn hình giao diện tra từ .................................................... 70
Bảng 38: 5.5. Bảng kiểm thử màn hình tùy chỉnh .............................................................. 70
Bảng 39: 5.6. Bảng kiểm thử màn hình giao diện bài tập nghe ......................................... 71
Bảng 40: 5.7. Bảng kiểm thử màn hình giao diện bài tập chọn từ theo nghĩa ................... 72
Bảng 41: 5.8. Bảng kiểm thử màn hình giao diện chọn nghĩa theo hình ........................... 73
Bảng 42: 5.9. Bảng kiểm thử màn hình giao diện sô lần nhắc nhở luyện tập .................... 74
Bảng 43: 5.10. Bảng kiểm thử màn hình giao diện chọn ngày thơng báo luyện tập .......... 74
Bảng 44: 5.11. Bảng kiểm thử màn hình giao diện chọn giờ thơng báo luyện tập ............ 75
Bảng 45: 5.12. Bảng kiểm thử màn hình giao diện chi tiết từ ............................................ 76
Bảng 46: 5.13. Bảng kiểm thử màn hình giao diện thêm từ ............................................... 76
Bảng 47: 5.14. Bảng thống kê kết quả kiểm thử ................................................................ 78

7


do an


KHĨA LUẬN TỐT NGHIỆP

DANH MỤC HÌNH ẢNH
Hình 1: 2.1. Màn hình giao diện đăng nhập ....................................................................... 19
Hình 2: 2.2. Màn hình giao diện chính ............................................................................... 20
Hình 3: 2.3. Màn hình giao diện học tập ............................................................................ 21
Hình 4: 2.4. Giao diện thơng tin tài khoản và cài đặt ......................................................... 21
Hình 5: 2.5. Giao diện chính và cài đặt nhắc nhở .............................................................. 23
Hình 6: 2.6. Màn hình giao diện từ u thích và từ theo chủ đề ........................................ 23
Hình 7: 2.7. Giao diện bài tập của 3000 từ vựng tiếng Anh thông dụng ........................... 24
Hình 8: 2.8. Một số giao diện của ứng dụng ...................................................................... 25
Hình 9: 2.9. Giao diện bài kiểm tra của ứng dụng ............................................................. 26
Hình 10: 3.1. Usecase diagram ........................................................................................... 31
Hình 11: 3.2. Lược đồ tuần tự của chức năng luyện tập ngẫu nhiên. ................................. 32
Hình 12: 3.3. Lược đồ tuần tự của chức năng luyện tập tùy chọn ..................................... 33
Hình 13: 3.4. Lược đồ tuần tự của chức năng tra từ ........................................................... 34
Hình 14: 3.5. Lược đồ tuần tự của chức năng thêm từ mới................................................ 35
Hình 15: 3.6. Lược đồ tuần tự của chức năng xóa từ ......................................................... 36
Hình 16: 3.7. Lược đồ tuần tự của chức năng chức năng thêm từ vào danh sách u thích
............................................................................................................................................ 37
Hình 17: 3.8. Lược đồ tuần tự của chức năng lập lịch luyện tập ....................................... 38
Hình 18: 3.9. Mơ hình cơ sở dữ liệu ................................................................................... 39
Hình 19: 4.1. Màn hình giao diện khởi động ..................................................................... 41
Hình 20: 4.2. Màn hình giao diện chính ............................................................................. 42
Hình 21: 4.3. Màn hình giao diện luyện tập tự chọn .......................................................... 44
Hình 22: 4.4. Màn hình giao diện tra từ ............................................................................. 47

Hình 23: 4.5. Màn hình giao diện tùy chỉnh ....................................................................... 50
Hình 24: 4.6. Màn hình giao diện bài tập nghe .................................................................. 53
Hình 25: 4.7. Màn hình giao diện chọn từ theo nghĩa ........................................................ 55
Hình 26: 4.8. Màn hình giao diện chọn nghĩa theo từ ........................................................ 57
Hình 27: 4.9. Màn hình giao diện số lần nhắc nhở luyện tập ............................................. 59
Hình 28: 4.10. Màn hình giao diện chọn ngày thông báo luyện tập .................................. 60
8

do an


KHĨA LUẬN TỐT NGHIỆP
Hình 29: 4.11. Màn hình giao diện chọn giờ thơng báo luyện tập ..................................... 61
Hình 30: 4.12. Màn hình gai diện chi tiết từ ...................................................................... 63
Hình 31: 4.13. Màn hình giao diện thêm từ ....................................................................... 65

9

do an


KHĨA LUẬN TỐT NGHIỆP

MỞ ĐẦU
1. TÍNH CẤP THIẾT CỦA ĐỀ TÀI
Ngành Công nghệ thông tin (CNTT) trong thập kỷ qua đã có những bước phát triển
mạnh mẽ và nhanh chóng trên thế giới cũng như trong nước. Công nghệ thông tin đã góp
phần cho sự phát triển kinh tế của nước ta trong thời kỳ hội nhập và đổi mới.
Công nghệ thông tin đang được sử dụng hầu hết trong tất cả các ngành nghề hiện
nay, giúp cải thiện tốc độ và chất lượng, nâng cao hiệu suất trong công việc.

Việc ứng dụng công nghệ thông tin giúp con người tự học thông qua công nghệ ngày
càng trở nên hiệu quả và nâng cao hiệu suất học tập của người học một cách nhanh chóng
và hiệu quả.
Tuy nhiên, nước ta đang trong thời kỳ hội nhập và đổi mới, việc học tiếng Anh là
một điều cần thiết đối với người dân Việt Nam. Việc học từ vựng tiếng Anh tốn nhiều thời
gian và phải được ôn, luyện hàng ngày mà smartphone hiện nay được sử dụng rộng rãi. Vì
vậy, nhóm chúng em đã nghiên cứu và phát triển đề tài “Xây dựng ứng dụng hỗ trợ học từ
vựng tiếng anh trên Android” với mong muốn giúp việc học từ vựng của người dân được
trở nên thuận tiện, dễ dàng tiếp thu và có thể trau dồi kiến thức tiếng Anh mỗi ngày để nâng
cao kiến thức về tiếng Anh một cách nhanh chóng và chính xác.
2. MỤC ĐÍCH CỦA ĐỀ TÀI
2.1. Mục đích về cơng nghệ
-

Tìm hiểu về q trình phát triển ứng dụng trên Android.

-

Tìm hiểu về SQLite.

2.2. Mục đích về ứng dụng
-

Xây dựng một ứng dụng “hỗ trợ học từ vựng tiếng anh trên Android” với một
giao diện thân thiện, sinh động, sử dụng dễ dàng để giúp người học có hứng thú
học tập và được học một cách dễ dàng để trau dồi thêm kiến thức từ vựng của
mình.

3. CÁCH TIẾP CẬN VÀ PHƯƠNG PHÁP NGHIÊN CỨU
-


Tìm hiểu cách xây dựng một ứng dụng Android bằng ngôn ngữ lập trình Java.

-

Tìm hiểu về cơ sở dữ liệu SQLite, cơng cụ Xamarin Test Cloud.

-

Tìm hiểu những ứng dụng học tiếng anh trên Android có liên quan.
10

do an


KHĨA LUẬN TỐT NGHIỆP
4. PHÂN TÍCH NHỮNG ỨNG DỤNG CĨ LIÊN QUAN
Bảng 1. Bảng phân tích những ứng dụng liên quan

Ứng dụng

Duolingo

3000 từ vựng tiếng anh

6000 từ vựng thông dụng

thông dụng
Nghe từ








Nghĩa của từ







Phiên âm

Khơng





Hình ảnh minh họa



Khơng




Chọn từ u thích

Khơng





Tìm kiếm từ

Khơng



Khơng

Từ theo chủ đề







Đăng nhập



Khơng


Khơng

Câu ví dụ minh họa



Khơng

khơng







sử dụng từ
Kiểm tra từ đã học

5. KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC
-

Hoàn thành ứng dụng đúng tiến độ.

-

Ứng dụng có đầy đủ chức năng đã đề ra.

-


Ứng dụng đạt được những yêu cầu đã đề ra.

11

do an


KHÓA LUẬN TỐT NGHIỆP

CƠ SỞ LÝ THUYẾT
1.1.

GIỚI THIỆU VỀ HỆ ĐIỀU HÀNH ANDROID

1.1.1. Giới thiệu về hệ điều hành Android
Android là một hệ điều hành dựa trên nền tảng Linux được thiết kế dành cho các
thiết bị di động có màn hình cảm ứng như điện thoại thơng minh và máy tính bảng. Ban
đầu, Android được phát triển bởi Tổng cơng ty Android, với sự hỗ trợ tài chính từ Google
và sau này chính thức được Google mua lại vào năm 2005 và tiếp tục phát triển Android
trở thành một nền tảng hiệu quả hơn.
Android ra mắt vào năm 2007 cùng với tuyên bố thành lập Liên minh thiết bị cầm
tay mở: một hiệp hội gồm các công ty phần mềm và viễn thông với mục tiêu đẩy mạnh
các tiêu chuẩn mở cho các thiết bị di động.
Android chính thức xuất hiện trên thị trường lần đầu tiên vào ngày 22 tháng 10 năm
2008 với sự ra mắt của chiếc điện thoại HTC Dream.
1.1.2. Giới thiệu về những phiên bản của hệ điều hành Android
Lịch sử phiên bản của hệ điều hành di động Android bắt đầu với bản Android beta
vào tháng 11 2007. Phiên bản thương mại đầu tiên, Android 1.0, được phát hành vào
tháng 9 năm 2008. Android đang được phát triển bởi Google và Open Handset Alliance
(OHA), và đã có một số bản cập nhật cho hệ điều hành này kể từ khi ra mắt.

Bảng 2: 1.1. Bảng các phiên bản của hệ điều hành Android

Tên mã

Số phiên bản

Ngày phát hành

Cấp API

1

23 - 09 - 2008

1

1.1

09 - 02 - 2009

2

Cupcake

1.5

27 - 04 - 2009

3


Donut

1.6

15 - 09 - 2009

4

Eclair

2.0 - 2.1

26 - 10 - 2009

5–7

Froyo

2.2 - 2.2.3

20 - 05 - 2010

8

Gingerbread

2.3 - 2.3.7

06 - 12 - 2010


9-10

Honeycomb

3.0 - 3.2.6

22 – 02 – 2011

11 – 13

Ice Cream Sandwich

4.0 - 4.0.4

18 – 10 – 2011

14 – 15

No codename

12

do an


KHÓA LUẬN TỐT NGHIỆP
Jelly Bean

4.1 - 4.3.1


09 – 07 – 2012

16 – 18

KitKat

4.4 - 4.4.4

31 – 10 – 2013

19 – 20

Lollipop

5.0 - 5.1.1

12 – 11 – 2014

21 – 22

Marshmallow

6.0 - 6.0.1

05 – 10 – 2015

23

7.0


22 – 08 – 2016

24

7.1.0 - 7.1.2

04 – 10 – 2016

25

8.0

21 – 08 – 2017

26

8.1

05 – 12 – 2017

27

Pie

9.0

06 – 08 – 2018

28


Android Q

10.0

03 – 09 – 2019

29

Nougat
Oreo

1.1.3. Lý thuyết về hệ điều hành Android
Lập trình Android hiện nay đang thực hiện trên nền Java, ngoài ra cần bộ công cụ
phát triển ứng dụng Android SDK để bắt đầu học lập trình Android. Có rất nhiều các
cơng cụ cho phép tiến hành lập trình Android như Android Studio, Eclipse, NetBean…
Ở trong đề tài này,nhóm sinh viên làm việc với Android Studio để lập trình Android. Do
các cơng cụ để phát triển chương trình càng ngày càng được cập nhật mới và dễ dàng
tìm thấy trên các cơng cụ tìm kiếm hiện nay nên nhóm sinh viên sẽ khơng trực tiếp đề
cập tới q trình cài đặt các cơng cụ này.
Các thành phần chính của 1 ứng dụng Android:
-

Activity: hiểu một cách đơn giản thì Activity là nền của 1 ứng dụng. Khi khởi
động 1 ứng dụng Android nào đó thì bao giờ cũng có 1 main Activity được gọi,
hiển thị màn hình giao diện của ứng dụng cho phép người dùng tương tác.

-

Service: thành phần chạy ẩn trong Android. Service sử dụng để update dữ liệu,
đưa ra các cảnh báo (Notification) và không bao giờ hiển thị cho người dùng

thấy.

-

Content Provider: kho dữ liệu chia sẻ. Content Provider được sử dụng để quản
lý và chia sẻ dữ liệu giữa các ứng dụng.

13

do an


KHÓA LUẬN TỐT NGHIỆP
-

Intent: nền tảng để truyền tải các thông báo. Intent được sử dụng để gửi các thông
báo đi nhằm khởi tạo 1 Activity hay Service để thực hiện công việc bạn mong
muốn.

-

Broadcast Receiver: thành phần thu nhận các Intent bên ngoài gửi tới.

-

Notification: đưa ra các cảnh báo mà không làm cho các Activity phải ngừng
hoạt động.

-


Activity, Service, Broadcast Receiver và Content Provider mới là những thành
phần chính cấu thành nên ứng dụng Android, bắt buộc phải khai báo trong
AndroidManifest.

1.1.4. Ưu điểm và nhược điểm của hệ điều hành Android
1.1.4.1. Ưu điểm
-

Là hệ điều hành có mã nguồn mở nên khả năng tuỳ biến cao, có thể tùy ý chỉnh
sửa mà khơng có sự can thiệp hay cấm cản từ Google.

-

Đa dạng sản phẩm, rất nhiều hãng điện thoại, thiết bị công nghệ đã ưu ái chọn
Android cho thiết bị của họ, giá cả thì hợp lý từ bình dân đến cao cấp.

-

Kho ứng dụng Google Play Store đồ sộ.

-

Thân thiện và dễ sử dụng.

-

Khả năng đa nhiệm, chạy cùng lúc nhiều ứng dụng cao.

1.1.4.2. Nhược điểm
-


Dễ nhiễm phần mềm độc hại và virus. Do tính chất mã nguồn mở, nhiều phần
mềm khơng được kiểm sốt có chất lượng không tốt hoặc lỗi bảo mật vẫn được
sử dụng.

-

Kho ứng dụng q nhiều dẫn đến khó kiểm sốt chất lượng, thiếu các ứng dụng
thật sự tốt.

-

Sự phân mảnh lớn. Trong khi một số thiết bị Android xuất sắc đã trình làng như
Galaxy S5, Galaxy Note 4, Xperia Z3…, vẫn cịn rất nhiều sản phẩm giá rẻ bình
thường khác.

-

Cập nhật không tự động với tất cả thiết bị. Khi một phiên bản hệ điều hành mới
ra mắt, không phải tất cả sản phẩm đều được cập nhật, thậm chí nếu muốn trải
nghiệm bạn thường xuyên phải mua mới thiết bị.
14

do an


KHÓA LUẬN TỐT NGHIỆP
1.1.5. Thực trạng hiện nay của hệ điều hành Android
Thông qua bảng so sánh thiết bị sử dụng Android qua các năm 2016 và 2017 dưới
đây, ta thấy thị phần của Android là lớn nhất và không ngừng tăng. Điều đó chứng tỏ

sức cạnh tranh của hệ điều hành Android là rất lớn và hứa hẹn nhiều triển vọng trong
tương lai.
Bảng 3: 1.2. Bảng thị phần Adroid năm 2016 và năm 2017

Operating
System

1.2.

2016 Units

2016 Market
Share (%)

2017 Units

2017 Market
Share (%)

Android

1,268,567.7

84,8

1,320,118.1

85.9

iOS


216,064.0

14,4

214,924.4

14.0

Other OS

11,332.2

0.8

1,493.0

0.1

Total

1,495,959.0

100

1,536,535.5

100

GIỚI THIỆU VỀ SQLITE


1.2.1. Giới thiệu về SQLite
SQLite là một hệ quản trị cơ sở dữ liệu quan hệ, khác với các hệ quản trị CSDL khác
nó khơng cần client–server database engine (một dịch vụ, ứng dụng cài đặt đầy đủ thơng
qua nó kết nối, tương tác với các CSDL), nó được nhúng vào rất nhiều chương trình khác
nhau, từ desktop, mobile đến website. Hầu hết ngôn ngữ lập trình có các thư viện hỗ trợ
kết nối, truy vấn đến SQLite như: PHP, C, Java, C#, JavaScript... Nó được nhúng vào
các trình duyệt, vào các hệ thống nhúng, hệ điều hành như Android, IOS ... đều đã nhúng
mặc định.
Vì SQLite khơng cần client–server database engine nên có thể hiểu file CSDL đã
tích hợp mọi thứ, sử dụng ngay mà khơng cần phải cài đặt thêm thứ gì.
SQLite tương thích với chuẩn SQL.
1.2.2. Các chức năng chính của SQLite
-

Khơng cần cài đặt: SQLite không cần phải cài đặt, chỉ cần có file database là
SQLite có thể hoạt động như bình thường.

-

Khơng cần máy chủ: như đã nói ở trên, do không cần cài đặt, SQLite cũng
không cần máy chủ như SQL server hay mySQL, khơng có các phương thức xác
15

do an


KHÓA LUẬN TỐT NGHIỆP
thực, cũng như các cổng liên lạc TCP/IP, tất cả các ứng dụng đều có thể truy cập
vào SQLite.

-

Chỉ 1 file chứa database: database của SQLite có thể được đặt ở bất cứ đâu
trong bộ nhớ thiết bị. Các công cụ cơ sở dữ liệu SQL khác có xu hướng lưu trữ
dữ liệu dưới dạng một tập hợp lớn các tệp. Thông thường các tệp này nằm ở một
vị trí tiêu chuẩn mà chỉ có chính cơng cụ cơ sở dữ liệu có thể truy cập. Điều này
làm cho dữ liệu an toàn hơn, nhưng cũng làm cho nó khó truy cập hơn. Một số
cơng cụ cơ sở dữ liệu SQL cung cấp tùy chọn ghi trực tiếp vào đĩa và bỏ qua tất
cả các hệ thống tệp cùng nhau. Điều này cung cấp hiệu suất bổ sung, nhưng với
chi phí thiết lập và bảo trì phức tạp đáng kể.

-

Database ổn định và chạy đa nền tảng: Hầu hết các công cụ cơ sở dữ liệu SQL
khác yêu cầu bạn kết xuất và khôi phục cơ sở dữ liệu khi chuyển từ nền tảng này
sang nền tảng khác và thường khi nâng cấp lên phiên bản phần mềm mới hơn.
Nhưng với SQLite bạn chỉ cần 1 file data, bạn có thể chạy trên bất cứ nền tảng
nào từ x86, x64, linux, .....

-

Gọn nhẹ: Khi được tối ưu hóa về kích thước, tồn bộ thư viện SQLite với mọi
thứ được kích hoạt có kích thước nhỏ hơn 500KiB (như được đo trên x86 bằng
tiện ích "kích thước" từ bộ biên dịch GNU.) Các tính năng khơng cần thiết có thể
bị vơ hiệu hóa trong thời gian biên dịch để tiếp tục giảm kích thước của thư viện
dưới 300KiB nếu muốn.

-

Cấu trúc lệnh linh động: Hầu hết các công cụ cơ sở dữ liệu SQL sử dụng gõ

tĩnh. Một kiểu dữ liệu được liên kết với mỗi cột trong một bảng và chỉ các giá trị
của kiểu dữ liệu cụ thể đó mới được phép lưu trữ trong cột đó. SQLite nới lỏng
hạn chế này bằng cách sử dụng kiểu gõ. Trong cách gõ tệp kê khai, kiểu dữ liệu
là một thuộc tính của chính giá trị, khơng phải của cột trong đó giá trị được lưu
trữ. Do đó, SQLite cho phép người dùng lưu trữ bất kỳ giá trị nào của bất kỳ kiểu
dữ liệu nào vào bất kỳ cột nào bất kể loại khai báo của cột đó. .

-

Bản ghi có thể thay đổi độ dài: Hầu hết các công cụ cơ sở dữ liệu SQL khác
được phân bổ một lượng không gian đĩa cố định cho mỗi hàng trong hầu hết các
bảng. Họ chơi các thủ thuật đặc biệt để xử lý BLOB và CLOB có thể có chiều
16

do an


KHÓA LUẬN TỐT NGHIỆP
dài khác nhau. Nhưng đối với hầu hết các bảng, nếu bạn khai báo một cột là
VARCHAR (100) thì cơng cụ cơ sở dữ liệu sẽ phân bổ 100 byte dung lượng đĩa
bất kể bạn thực sự lưu trữ bao nhiêu thơng tin trong cột đó.
Ngược lại, SQLite chỉ sử dụng lượng không gian đĩa thực sự cần thiết để lưu
trữ thông tin liên tiếp. Nếu bạn lưu trữ một ký tự trong cột VARCHAR (100), thì
chỉ một byte không gian đĩa được sử dụng. (Trên thực tế hai byte - có một số chi
phí ở đầu mỗi cột để ghi lại kiểu dữ liệu và độ dài của nó.)
-

Mã nguồn mở: Mã nguồn thành SQLite được thiết kế để người lập trình trung
bình có thể đọc và truy cập được. Tất cả các thủ tục và cấu trúc dữ liệu và nhiều
biến tự động được nhận xét cẩn thận với thơng tin hữu ích về những gì họ làm.


-

Các câu lệnh có thể biến đổi thành lệnh của máy ảo: Mỗi công cụ cơ sở dữ
liệu SQL biên dịch mỗi câu lệnh SQL thành một loại cấu trúc dữ liệu nội bộ nào
đó sau đó được sử dụng để thực hiện công việc của câu lệnh. Nhưng trong hầu
hết các công cụ SQL, cấu trúc dữ liệu nội bộ là một mạng lưới phức tạp gồm các
cấu trúc và đối tượng được liên kết với nhau. Trong SQLite, dạng câu lệnh được
biên dịch là một chương trình ngắn với ngơn ngữ giống như ngơn ngữ máy.
Người dùng cơ sở dữ liệu có thể xem ngơn ngữ máy ảo này bằng cách thêm từ
khóa EXPLAIN vào truy vấn.

-

Domain mở: Mã nguồn cho SQLite nằm trong miền công cộng. Khơng có khiếu
nại về bản quyền được thực hiện trên bất kỳ phần nào của mã nguồn cốt lõi. (Tài
liệu và mã kiểm tra là một vấn đề khác - một số phần của tài liệu và logic kiểm
tra bị chi phối bởi giấy phép nguồn mở.) Tất cả những người đóng góp cho phần
mềm lõi SQLite đã ký các bản khai tuyên bố từ chối bất kỳ lợi ích bản quyền nào
trong mã. Điều này có nghĩa là bất kỳ ai cũng có thể làm bất cứ điều gì họ muốn
một cách hợp pháp với mã nguồn SQLite.

-

Các câu lệnh mở rộng của ngôn ngữ SQL: SQLite cung cấp một số cải tiến
cho ngôn ngữ SQL thường không được tìm thấy trong các cơng cụ cơ sở dữ liệu
khác. Từ khóa EXPLAIN và gõ bảng kê khai đã được đề cập ở trên. SQLite cũng
cung cấp các câu lệnh như REPLACE và mệnh đề ON CONFLICT cho phép
kiểm soát bổ sung đối với việc giải quyết các xung đột ràng buộc. SQLite hỗ trợ
17


do an


×