Lịch sử giải quyết vấn đề Có nhiều ứng dụng tương tự được viết trên pc, windows phone và ngay cả Android nhưng đa phần thì chỉ tập trung vào xây dựng ngay những trò chơi mà lược bỏ đi p
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CẦN THƠ KHOA CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG
LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC NGÀNH KỸ THUẬT PHẦN MỀM
Đề tài THIẾT KẾ PHẦN MỀM HỌC VÀ CHƠI CHO BÉ
TRÊN NỀN TẢNG ANDROID
Sinh viên: Trần Văn Tùng MSSV: 1111364 Khóa 37
Cần Thơ, 5/2015
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CẦN THƠ KHOA CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG
BỘ MÔN CÔNG NGHỆ PHẦN MỀM
LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC NGÀNH KỸ THUẬT PHẦN MỀM
Đề tài THIẾT KẾ PHẦN MỀM HỌC VÀ CHƠI CHO BÉ
TRÊN NỀN TẢNG ANDROID
Người hướng dẫn Sinh viên thực hiện Ths Võ Huỳnh Trâm Trần Văn Tùng
Mã số: 1111364 Khóa: 37
Cần Thơ, 5/2015
Trang 3LVTN : Thiết kế phần mềm Học và chơi cho bé trên nền tảng Android
LỜI CẢM ƠN
Sau khoảng bốn tháng thực hiện luận văn, đề tài “Phát triển Ứng dụng học
và chơi cho bé trên nền tảng Android” đã hoàn thành Ngoài sự cố gắng bản thân,
em còn nhận được sự giúp đỡ tận tình của thầy cô và bạn bè Em xin chân thành
cảm ơn thầy cô, bạn bè và tất cả mọi người đã tạo mọi sự thuận lợi để em có đủ
điều kiện và kiến thức để hoàn thành đề tài luận văn của mình
Đầu tiên, em xin cảm ơn Khoa Công nghệ thông tin và truyền thông Đại học
Cần Thơ đã đồng ý và tạo điều kiện cho em thực hiện luận văn này
Và quan trọng nhất là sự theo dõi và đồng hành giúp đỡ trong suốt quả trình
thực hiện đề tài luận văn của cô Võ Huỳnh Trâm Em xin cảm ơn cô vì những
định hướng, chia sẻ kinh nghiệm và những điều chỉnh trong từng giai đoạn thực
hiện đề tài này
Em cũng xin chân thành cảm ơn các thầy cô Khoa Công nghệ thông tin và
truyền thông đã tận tình truyền đạt kiến thức, chia sẻ kinh nghiệm, hỗ trợ tài liệu
Đó là những điều tuyệt vời từ thầy cô giúp em có đủ những nền tảng, những trang
bị và sự tự tin để thực hiện được đề tài
Cuối cùng cảm ơn bạn bè và các anh chị khóa trước đã đồng hành, sát cánh
giúp đỡ, chia sẻ những kinh nghiệm, kĩ năng và tài liệu để em vững tinh thần và
bình tĩnh thực hiện đúng tiến độ suốt quá trình làm luận văn hay hơn hết là suốt
quá trình học tập ở dưới mái nhà chung Đại học Cần Thơ
Tuy vậy, luận văn vẫn còn gặp nhiều thiếu sót và hạn chế vì thế em rất mong
muốn nhận được sự thông cảm và đóng góp ý kiến của tất cả quý thầy cô để luận
văn của em có thể hoàn chỉnh hơn và thực hiện tốt những mục tiêu mà đề tài đã
Trang 4MỤC LỤC
LỜI CẢM ƠN 3
TÓM TẮT 9
ABSTRACT 10
PHẦN GIỚI THIỆU 11
I Đặt vấn đề 11
II Lịch sử giải quyết vấn đề 11
III Mục tiêu của đề tài 11
IV Đối tượng và phạm vi nghiên cứu 12
V Nội dung nghiên cứu 12
VI Những đóng góp chính của đề tài 12
VII Bố cục của luận văn 12
PHẦN NỘI DUNG 14
CHƯƠNG 1- MÔ TẢ BÀI TOÁN 14
1.1 Mô tả tổng quan 14
1.1.1 Bối cảnh của sản phẩm 14
1.1.2 Các chức năng của sản phẩm 14
1.1.3 Đặc điểm người sử dụng 14
1.1.4 Môi trường vận hành 15
1.1.5 Các ràng buộc về thực thi và thiết kế 15
1.1.6 Các giả định và phụ thuộc 15
1.2 Các yêu cầu giao tiếp bên ngoài 15
1.2.1 Giao diện người sử dụng 15
1.2.2 Giao tiếp phần cứng 21
1.2.3 Giao tiếp phần mềm 22
1.3 Các tính năng của hệ thống 22
1.3.1 Bảng chữ cái và phát âm 22
1.3.2 Ghép vần 22
1.3.3 Trò chơi đoán chữ 23
1.3.4 Bảng số 1-10 23
Trang 5LVTN : Thiết kế phần mềm Học và chơi cho bé trên nền tảng Android
1.3.5 Các hình cơ bản 24
1.3.6 Trò chơi học Toán 24
1.4 Các yêu cầu phi chức năng 25
1.4.1 Yêu cầu thực thi 25
1.4.2 Yêu cầu an toàn 25
1.4.3 Yêu cầu bảo mật 25
1.4.4 Các đặc điểm chất lượng phần mềm 25
1.4.5 Các quy tắc nghiệp vụ 26
1.5 Các yêu cầu khác 26
1.5.1 Cơ sở dữ liệu 26
1.5.2 Giao diện 27
1.5.3 Cách đặt tên 27
1.5.4 Dễ cài đặt và gỡ bỏ 27
CHƯƠNG 2- THIẾT KẾ VÀ CÀI ĐẶT GIẢI PHÁP 28
2.1 Tổng quan hệ thống 28
2.1.1 Tổng quan về chức năng 28
2.1.2 Tổng quan về thiết kế 28
2.2 Kiến trúc hệ thống 28
2.2.1 Thiết kế kiến trúc 28
2.2.2 Mô tả sự phân rã 31
2.2.3 Cơ sở thiết kế 31
2.3 Thiết kế dữ liệu 31
2.3.1 Mô tả dữ liệu 31
2.3.2 Từ điển dữ liệu 34
2.4 Thiết kế theo chức năng 34
2.4.1 Chức năng Xem bảng chữ cái và học cách phát âm 34
2.4.2 Chức năng Xem danh sách các vần 38
2.4.3 Chức năng Đoán chữ 44
2.4.4 Chức năng Xem bảng số từ 1-10 47
2.4.5 Chức năng xem các hình cơ bản 49
2.4.6 Chức năng Làm Toán 50
CHƯƠNG 3- KIỂM THỬ VÀ ĐÁNH GIÁ 53
Trang 63.1 Mục tiêu 53
3.2 Phạm vi 53
3.3 Chi tiết kế hoạch kiểm thử 53
3.3.1 Các tính năng sẽ được kiểm thử 53
3.3.2 Các tính năng sẽ không được kiểm thử 53
3.3.3 Cách tiếp cận 53
3.3.4 Tiêu chí kiểm thử thành công/ thất bại 54
3.3.5 Tiêu chí đình chỉ và yêu câu bắt đầu lại 54
3.3.6 Sản phẩm bàn giao của kiểm thử 54
3.4 Quản lý kiểm thử 54
3.4.1 Các hoạt động / công việc được lập kế hoạch; 54
3.4.2 Môi trường kiểm thử 55
3.4.3 Trách nhiệm và quyền hạn 55
3.4.4 Kế hoạch 55
3.5 Các trường hợp kiểm thử 56
3.5.1 Trường hợp kiểm thử 1: Xem bảng chữ cái và học phát âm 56
3.5.2 Trường hợp kiểm thử 2: Xem danh sách các vần 58
3.5.3 Trường hợp kiểm thử 3: Chức năng đoán chữ 59
3.5.4 Trường hợp kiểm thử 4: Xem bảng số từ 1-10 61
3.5.5 Trường hợp kiểm thử 5: Xem các hình cơ bản 62
3.5.6 Trường hợp kiểm thử 6: Làm Toán 63
PHẦN KẾT LUẬN 65
I Kết quả đạt được 65
II Hạn chế 65
III Hướng phát triển 65
TÀI LIỆU THAM KHẢO 66
PHỤ LỤC 67
Trang 7LVTN : Thiết kế phần mềm Học và chơi cho bé trên nền tảng Android
DANH MỤC HÌNH ẢNH
Hình 1-2 Giao diện menu Học tiếng Việt 16
Hình 1-1 Giao diện menu chính 16
Hình 1-3 Giao diện menu Học Toán 17
Hình 1-4 Giao diện xem Bảng chữ cái 17
Hình 1-5 Giao diện chức năng Học ghép vần 18
Hình 1-6 Giao diện chức năng Đoán chữ 18
Hình 1-7 Giao diện chức năng Xem danh sách các số từ 1-10 19
Hình 1-8 Giao diện chức năng Xem danh sách các hình cơ bản 19
Hình 1-9 Giao diện hộp thoại khi trả lời đúng 20
Hình 1-10 Giao diện chức năng Trò chơi làm Toán 20
Hình 1-11 Giao diện hộp thoại khi trả lời sai 21
Hình 1-12 Giao diện hộp thoại khi hoàn thành gói câu hỏi 21
Hình 2-1 Kiến trúc hệ thống 29
Hình 2-2 Kiến trúc hệ thống 29
Hình 2-3 Sơ đồ các chức năng của ứng dụng 31
Hình 2-4 Giao diện chức năng Xem bảng chữ cái 34
Hình 2-5 Lưu đồ chức năng xem bảng chữ cái 36
Hình 2-6 Lưu đồ chức năng xem danh sách các vần 38
Hình 2-7 Giao diện chức năng Trò chơi đoán chữ 44
Hình 2-8 Lưu đồ chức năng Trò chơi đoán chữ 46
Hình 2-9 Giao diện chức năng Xem danh sách các số từ 1-10 47
Hình 2-10 Lưu đồ chức năng xem danh sách các số từ 1-10 48
Hình 2-11 Giao diện chức năng xem các hình cơ bản 49
Hình 2-12 Lưu đồ chức năng xem các hình cơ bản 50
Hình 2-13 Giao diện chức năng trò chơi Làm Toán 51
Hình 2-14 Lưu đồ chức năng Trò chơi làm Toán 52
Trang 8DANH MỤC BẢNG
Bảng 1-1 Tính năng Xem bảng chữ cái và phát âm 22
Bảng 1-2 Tính năng Xem danh sách các vần 23
Bảng 1-3 Tính năng Trò chơi đoán chữ 23
Bảng 1-4 Tính năng Xem các số từ 1-10 24
Bảng 1-5 Tính năng Xem các hình cơ bản 24
Bảng 1-6 Tính năng Trò chơi làm Toán 25
Bảng 2-1 Cấu trúc bảng data ghép vần 32
Bảng 2-2 Cấu trúc bảng data Câu hỏi 33
Bảng 2-3 Cấu trúc bảng data Cộng - trừ 33
Bảng 2-4 Cấu trúc bảng data Number 34
Bảng 2-5 Các thành phần giao diện chức năng Xem bảng chữ cái 35
Bảng 2-7 Các thành phần giao diện bảng ghép vần 39
Bảng 2-8 Dữ liệu sử dụng chức năng Học ghép vần 39
Bảng 2-9 Các thành phẩn giao diện Trò chơi đoán chữ 44
Bảng 2-10 Dữ liệu được sử dụng chức năng Trò chơi đoán chữ 46
Bảng 2-11 Các thành phần giao diện chức năng Xem danh sách các số 47
Bảng 2-12 Các thành phần giao diện chức năng Xem các hình cơ bản 49
Bảng 2-13 Các thành phần giao diện chức năng Trò chơi làm Toán 51
Bảng 2-14 Dữ liệu sử dụng của chức năng Trò chơi làm Toán 52
Bảng 3-1 Môi trường kiểm thử 55
Bảng 3-2 Kế hoạch kiểm thử 55
Bảng 3-3 Kết nhập trường hợp kiểm thử 1 57
Bảng 3-4 Kết xuất trường hợp kiểm thử 1 58
Bảng 3-5 Kết nhập trường hợp kiểm thử 2 59
Bảng 3-6 Kết xuất trường hợp kiểm thử 2 59
Bảng 3-7 Kết nhập trường hợp kiểm thử 3 60
Bảng 3-8 Kết xuất trường hợp kiểm thử 3 60
Bảng 3-9 Kết nhập trường hợp kiểm thử 4 61
Bảng 3-10 Kết xuất trường hợp kiểm thử 4 62
Bảng 3-11 Kết nhập trường hợp kiểm thử 5 63
Bảng 3-12 Kết xuất trường hợp kiểm thử 5 63
Bảng 3-13 Kết nhập trường hợp kiểm thử 6 64
Bảng 3-14 Kết xuất trường hợp kiểm thử 6 64
Trang 9LVTN : Thiết kế phần mềm Học và chơi cho bé trên nền tảng Android
TÓM TẮT
Trong những năm gần đây, khoa học công nghệ thế giới có những sự phát
triển vượt bậc Cùng với nó, các thiết bị di động thông minh đi kèm các hệ điều
hành cho di động cũng phát triển một cách nhanh chóng Và một trong những cái
tên không thể bỏ qua là hệ điều hành Android – một trong những hệ điều hành
phát triển bậc nhất cùng với cộng đồng các nhà phát triển khổng lồ
Đi cùng với xu hướng phát triển đó nên tôi chọn đề tài “Thiết kế Phần mềm
học và chơi cho bé trên nền tảng Android” Đề tài sẽ sử dụng bộ công cụ lập trình
Android Studio được google cung cấp miễn phí dành riêng để phát triển các ứng
dụng Android Ngoài ra còn sử dụng phần mềm Genymotion để giả lập các thiết
bị chạy hệ điều hành Android Ứng dụng sẽ bao gồm 2 chức năng chính là Học
tiếng Việt và Học Toán Với chức năng Học tiếng Việt, người sử dụng có thể học
cách phát âm các chữ cái, học cách ghép các vần và tham gia kiểm tra kiến thức
qua trò chơi đoán chữ Với chức năng Học Toán, người sử dụng có thể học cách
nhận biết các con số, học phép tính cộng trừ và tham gia kiểm tra kiến thức thông
qua trò chơi làm Toán
Đề tài đã được xây dựng tương đối hoàn chỉnh các chức năng của ứng dụng
được đề ra ban đầu Ứng dụng hoạt động tốt trên các thiết bị có cấu hình trung
bình chạy hệ điều hành Android phiên bản 4.2 hoặc cao hơn
Trang 10ABSTRACT
In recent years, science and technology in the world are developed
strongly Together with it, smart mobile devices and OS of mobile also is
developed very fast And one of the OSs can’t be ignored which is Android OS –
OS is developed very strongly with huge community of developers
In this trend of develop, I chose topic “Design Learn and Play for kids
Software with Android basis” This project will be programmed with Android
Studio (Google provide free for Android developer) In addition, I also use
Genymotion to create Android Virtual Device This application consists of two
main function are learn Vietnamese and learn Math In Learn Vietnamese
function, users can learn to pronounce alphabetics, learn to spell and check
knowledge with words guest game With Learn Math function, users can learn
about numbers, plus and minus operation and check knowledge with calculate
games
This project was contruct functions complete like plan This application
active easy with Android device version 4.2 or higher
Trang 11LVTN : Thiết kế phần mềm Học và chơi cho bé trên nền tảng Android
PHẦN GIỚI THIỆU
I Đặt vấn đề
Trẻ em luôn phải đến trường học với biết bao nhiêu là sách vở, nhồi nhét kiến
thức quá nhiều, thường thì thầy cô chỉ tập trung thế nào để bé học được đủ kiến
thức mà không chú trọng vào phương pháp sinh động, nhẹ nhàng mà dễ hiểu, dần
dần hình thành thói quen học theo kiểu rập khuôn Khác với thời đại trước kia,
hiện tại trẻ con được tiếp xúc với những sản phẩm công nghệ từ rất sớm nên việc
học cần được hiện đại hơn, kích thích sự hứng thú từ chính bản thân trẻ
Xuất phát từ lí do đó, ứng dụng Học và chơi cho bé có thể giúp mang lại sự
trải nghiệm tốt hơn cho bé, không cần giấy bút, bỏ qua những giờ học căng thẳng
trên lớp, ứng dụng sẽ cung cấp những trò chơi trắc nghiệm kiến thức đơn giản đan
xen vào đó là những bài học thú vị
II Lịch sử giải quyết vấn đề
Có nhiều ứng dụng tương tự được viết trên pc, windows phone và ngay cả
Android nhưng đa phần thì chỉ tập trung vào xây dựng ngay những trò chơi mà
lược bỏ đi phần cung cấp kiến thức, thêm vào đó là sự tách biệt của chức năng
học chữ cái, phát âm với chữ số và học đếm nên phần nào tạo nên sự hạn chế cho
ứng dụng Ý tưởng của ứng dụng “Học và chơi cho bé” là mang lại thế giới phong
phú giúp các bé học Toán, học phát âm, nhận biết màu sắc, các hình dạng cơ bản
Đã có rất nhiều ứng dụng về vấn đề này trên hệ thống google play:
Bé vui học - Võ Duy Tuấn
Bé học chữ - Hồ Quang Minh
Bé học chữ cái - TPPlus
Và còn nhiều ứng dụng nội dung tương tự
Các ứng dụng quá chú trọng vấn đề trò chơi, không tập trung vào
vấn đề học của bé
Có cách phát âm theo từng chữ cái nhưng không hướng dẫn cách
ghép vần
III Mục tiêu của đề tài
Đề tài được phát triển nhằm nghiên cứu kiến thức lập trình trên hệ điều hành
Android - hệ điều hành trên thiết bị di động phát triển bậc nhất hiện nay
Sau khi ứng dụng được hoàn thành phải đảm bảo tối thiểu các yêu cầu sau:
Đảm bảo song song 2 yếu tố, vừa học vừa chơi cho bé, xem cả hai là
cốt lõi, quan trọng như nhau
Trang 12 Giao diện dễ sử dụng, trực quan, sinh động, bé có thể sử dụng được
ngay hoặc qua hướng dẫn đơn giản
Hình ảnh gần gũi gắn liền với những thứ xung quanh của bé, những thứ
mà bé gặp hằng ngày
IV Đối tượng và phạm vi nghiên cứu
Tập trung nghiên cứu đối tượng người dùng chính là trẻ em, tìm hiểu sở
thích, thói quen và những mong muốn của đối tượng người dùng này từ đó
phát triển ứng dụng theo hướng thích hợp nhất
Tìm hiểu sách giáo khoa Toán và Tiếng Việt lớp 1 để có cái nhìn chính xác
nhất về những kiến thức cần cung cấp của ứng dụng, khai thác cách trình
diễn hình ảnh từ sách giáo khoa để không gây ra sự xa lạ với nhứng thứ mà
trẻ được học trên lớp
V Nội dung nghiên cứu
Tìm hiểu về hệ điều hành Android: lịch sử phát triển, đặc điểm của hệ điều
hành, các thiết bị dùng hệ điều hành, kiến trúc của hệ điều hành
Tìm hiểu phương pháp lập trình trên nền tảng Android
Tìm hiểm sử dụng xml để lập trình giao diện cho ứng dụng Android
Học cách sử dụng hệ quản trị cơ sở dữ liệu nhỏ gọn SQLite – một hệ quản
trị CSDL thường được sử dụng trên các ứng dụng dành cho các thiết bị hạn
chế về bộ nhớ, các thiết bị di động
Nghiên cứu kĩ về ngôn ngữ lập trình Java vì lập trình Android dựa trên nền
tảng là ngôn ngữ Java
Phương pháp lập trình hướng đối tượng vì lập trình Android nói riêng hay
lập trình Java nói chung là phương pháp lập trình thuần hướng đối tượng
Tìm hiểu và phát triển một ứng dụng Android đạt được những tiêu chí
mong muốn
VI Những đóng góp chính của đề tài
Tạo được ứng dụng giúp việc dạy trẻ tại nhà của phụ huynh trở nên dễ dàng
hơn
Những chức năng của ứng dụng đảm bảo đạt được những mục đích vừa học
vừa chơi về học bảng chữ cái, phát âm, chữ số, những hình học cơ bản, màu
sắc
VII Bố cục của luận văn
Gồm 3 phần:
o Phần giới thiệu:
Trang 13LVTN : Thiết kế phần mềm Học và chơi cho bé trên nền tảng Android
Nêu khái quát về quá trình hình thành ý tưởng của đề tài từ lịch sử
giải quyết các vấn đề tương tự, qua đó nhắm đến mục tiêu khoanh
vùng phạm vi nghiên cứu, định hướng được phương pháp giải quyết
vấn đề hiện tại
o Phần nội dung
Chương 1 – Mô tả bài Toán
Mô tả một cách khái quát các tính năng của hệ thống, các yêu cầu
chức năng và phi chức năng, nhắm đến mục đích giúp người dùng có
thể hiểu được hệ thống
Chương 2 – Thiết kế và cài đặt giải pháp
Trình bày tổng quan hệ thống, chi tiết hóa các thiết kế kiến trúc,
trình bày rõ thiết kế cơ sở dữ liệu của hệ thống, chi tiết hóa các công
việc phải làm của từng chức năng cụ thể
Chương 3 – Kiểm thử và đánh giá
Lập kế hoạch kiểm thử, trình bày chi tiết các trường hợp kiểm thử và
các kết quả sau khi kiểm thử
o Phần kết luận
Trình bày rõ các kết quả đạt được và các hạn chế mà sản phẩm vẫn
còn tồn tại từ đó có hướng phát triển trong tương lai
Trang 14PHẦN NỘI DUNG CHƯƠNG 1- MÔ TẢ BÀI TOÁN 1.1 Mô tả tổng quan
1.1.1 Bối cảnh của sản phẩm
Hiện tại trong hệ thống google play có khá nhiều sản phẩm tương tự ứng
dụng Học và chơi cho bé, đặc điểm chung của nhóm ứng dụng này là kích thích
tinh thần tự học, sự đam mê, hứng thú với lối vừa học vừa chơi này
Ý tưởng về ứng dựng là muốn tạo ra một sản phẩm vừa giúp bé học làm
Toán, học phát âm tiếng Việt và nhận biết thế giới xung quanh bằng những hình
ảnh về đồ vật, cây cối, động vật xung quanh
1.1.2 Các chức năng của sản phẩm
Chức năng học tiếng Việt
Cung cấp bảng chữ cái và cách phát âm của từng chữ cái khi mỗi chữ
cái được chọn, giúp bé tập làm quen và nhận biết
Trình bày cách ghép vần dựa trên cơ sở Sách giáo khoa Tiếng Việt lớp
1
Trò chơi nhìn hình đoán chữ: đưa ra một ảnh chụp hoặc một hình vẽ yêu
cầu bé chọn trong những đáp án hiển thị trên màn hình
Chức năng học Toán
Cung cấp bảng số từ 1-10, tương ứng từng ô số là số lượng con vật bằng
với giá trị đó, giúp trẻ nhận biết được từng con số cụ thể
Hình học: cung cấp một số ví dụ về 3 hình cơ bản (vuông, tròn, tam giác)
để trẻ tiếp thu dễ dàng
Trò chơi tập đếm: Đếm số lượng của loại hình cụ thể, loài vật cụ thể hay
đồ vật cụ thể; lồng ghép vào là những phép tính cộng trừ đơn giản và
chắc chắc không được vượt quá 10
1.1.3 Đặc điểm người sử dụng
Đối tượng quan tâm ở đây là các bé từ 3 – 6 tuổi, đối tượng hướng tới của
ứng dụng mang đặc điểm chưa biết đọc chữ, chưa biết đếm số, hoặc vừa bắt đầu
tập đọc, tập tính Toán cộng trừ Ngoài ra mở rộng thêm phần quan sát hình ảnh,
luyện cho bé nhận biết được thế giới xung quanh, qua những đồ vật, con vật gần
gũi nhất
Không giống với những ứng dụng Android khác, ứng dụng Học và chơi cho
bé này tiếp cấn đối tượng là trẻ em Đối tượng này rất quan tâm và chú trọng rất
nhiều đến sự đa sắc màu, giao diện, âm thanh vui tươi và nội dung không nên quá
Trang 15LVTN : Thiết kế phần mềm Học và chơi cho bé trên nền tảng Android
phức tạp nhưng phải đảm bảo thú vị, đủ sức lôi cuốn, thu hút được đối tượng đặc
biệt này
1.1.4 Môi trường vận hành
Ứng dụng hoạt động được trên tất cả các thiết bị di động sử dụng hệ điều
hành Android phiên bản từ 4.1 trở lên
Môi trường giả lập:
o Hệ điều hành Microsoft Windows 8.1
o Thiết bị di động sử dụng hệ điều hành Android 4.2.0 hoặc lớn hơn
1.1.5 Các ràng buộc về thực thi và thiết kế
Thiết kế cơ sở dữ liệu đảm bảo đủ và đúng để đảm bảo bộ nhớ cho những
thiết bị di động - đây là thiết bị rất hạn chế về bộ nhớ
o Thiết kế giao diện cần đảm bảo hợp lí, một trong những nhược điểm
của các thiết bị Android là hạn chế về kích thước màn hình hiển thị
o Môi trường giả lập:
Hệ điều hành Microsoft Windows 8.1
Android Studio là một Android ide chính thức dùng để phát triển các ứng dụng chạy hệ điều hành Android
JDK 7
o Môi trường thực tế: các thiết bị di động sử dụng hệ điều hành Android
4.1 hoặc các phiên bản cao hơn
1.1.6 Các giả định và phụ thuộc
Các giả định
Người sử dụng cần biết sử dụng các thiết bị di động Android như
smartphone hay tablet
Cấu hình thiết bị Android thỏa cấu hình tối thiểu
Phụ thuộc
Vì phần mềm về học tập nên cần phải chính xác, tham khảo đến kiến thức
từ sách giáo khoa
1.2 Các yêu cầu giao tiếp bên ngoài
1.2.1 Giao diện người sử dụng
Do đối tượng hướng đến là trẻ em nên cần thiết kế giao diện phần mềm
đơn giản, dễ sử dụng nhưng cần tạo sự thu hút bằng cách phối màu, hình
ảnh sao cho thật vui tươi, khỏe khoắn
Trang 16 Cần chọn những hình ảnh hiển thị gần gũi hơn với cuộc sống thường ngày
của trẻ em và cũng cần phải có sự mới lạ
Hình 1-2 Giao diện menu chính
Hình 1-1 Giao diện menu Học tiếng Việt
Trang 17LVTN : Thiết kế phần mềm Học và chơi cho bé trên nền tảng Android
Hình 1-3 Giao diện menu Học Toán
Hình 1-4 Giao diện xem Bảng chữ cái
Trang 18Hình 1-5 Giao diện chức năng Học ghép vần
Hình 1-6 Giao diện chức năng Đoán chữ
Trang 19LVTN : Thiết kế phần mềm Học và chơi cho bé trên nền tảng Android
Hình 1-7 Giao diện chức năng Xem danh sách các số từ 1-10
Hình 1-8 Giao diện chức năng Xem danh sách các hình cơ bản
Trang 20Hình 1-10 Giao diện chức năng Trò chơi làm Toán
Hình 1-9 Giao diện hộp thoại khi trả lời đúng
Trang 21LVTN : Thiết kế phần mềm Học và chơi cho bé trên nền tảng Android
Hình 1-11 Giao diện hộp thoại khi trả lời sai
Hình 1-12 Giao diện hộp thoại khi hoàn thành gói câu hỏi
1.2.2 Giao tiếp phần cứng
Phần mềm sẽ giao tiếp với màn hình để hiển thị những hình ảnh, text hay
các animation, bằng Android SDK ta có thể thực hiện giao tiếp với màn
hình dễ dàng và hiệu quả
Trang 22 Đối với việc xử lý âm thanh, phần mềm cần giao tiếp với loa của thiết bị,
cần tìm hiểu cách để đưa âm thanh ứng dụng đển loa
1.2.3 Giao tiếp phần mềm
Phần mềm hoàn toàn hoạt động độc lập với các phần mềm khác, chỉ giao
tiếp với hệ điều hành để thực hiện các chức năng
1.3 Các tính năng của hệ thống
1.3.1 Bảng chữ cái và phát âm
Tên yêu cầu Học bảng chữ cái và cách phát âm
Mức độ ưu tiên
Nội dung Cho phép người sử dụng xem và nghe từng chữ cái
Đối tượng sử dụng Tất cả người sử dụng
Tiền điều kiện
Xử lý 1 Người dùng chọn chức năng bảng chữ cái
2 Người dùng click chọn chữ cái cần nghe
3 Người dùng click chọn từ ngữ có bao gồm chữ cái để nghe cách phát âm
4 Sau đó, người dùng trở về menu chính khi click chọn biểu tượng home
Kết quả Người dùng vừa nghe được cách phát âm của từng
chữ cái
Bảng 1-1 Tính năng Xem bảng chữ cái và phát âm
1.3.2 Ghép vần
Tên yêu cầu Ghép vần
Mức độ ưu tiên
Nội dung Cho phép người sử dụng tra cứu được cách phát
âm của từng vần cụ thể, lấy cơ sở từ sách giáo khoa
Đối tượng sử dụng Tất cả người sử dụng
Tiền điều kiện
Xử lý 1 Người dùng chọn chức năng ghép vần
Trang 23LVTN : Thiết kế phần mềm Học và chơi cho bé trên nền tảng Android
2 Giao diện của chức năng hiện ra người dùng tùy chọn vần cụ thể để nghe
3 Sau đó nếu đã ko còn nhu cầu sử dụng chức năng này người dùng trở về menu chính khi click chọn biểu tượng home
Kết quả Người dùng nghe phát âm của từng âm
Bảng 1-2 Tính năng Xem danh sách các vần
1.3.3 Trò chơi đoán chữ
Tên yêu cầu Trò chơi nhìn hình đoán chữ
Mức độ ưu tiên
Nội dung Cho phép người sử dụng nhìn hình ảnh và chọn
đáp án đúng Đối tượng sử dụng Tất cả người sử dụng
Tiền điều kiện
Xử lý 1 Người dùng chọn chức năng nhìn hình đoán
chữ
2 Người dùng chọn đáp án ứng với hình ảnh hiển thị phía trên
3 Sau đó khi không còn nhu cầu sử dụng chức năng này người dùng trở về menu chính khi click chọn biểu tượng home
Kết quả Người dùng xem hình ảnh và chọn đáp án đúng
Bảng 1-3 Tính năng Trò chơi đoán chữ
1.3.4 Bảng số 1-10
Tên yêu cầu Cung cấp bảng số từ 1-10
Mức độ ưu tiên
Nội dung Cho phép người sử dụng tra cứu các con số, ứng
với mỗi con số có một số lượng con vật cụ thể, và khi chọn từng con số cụ thể sẽ nghe được cách đọc của con số đó
Trang 24Đối tượng sử dụng Tất cả người sử dụng
Tiền điều kiện
Kết quả Người dùng chọn đáp án đúng với bài Toán
Bảng 1-4 Tính năng Xem các số từ 1-10
1.3.5 Các hình cơ bản
Tên yêu cầu Cung cấp bảng tham khảo gồm có ví dụ trên 3 hình
phổ biến nhất với bé Mức độ ưu tiên
Nội dung Cho phép người sử dụng tra cứu các hình cơ bản
Đối tượng sử dụng Tất cả người sử dụng
Tiền điều kiện
Kết quả Người dùng chọn đáp án đúng với bài Toán
Bảng 1-5 Tính năng Xem các hình cơ bản
1.3.6 Trò chơi học Toán
Tên yêu cầu Cung cấp các câu hỏi liên quan đến đếm số lượng
và tính cộng trừ Mức độ ưu tiên
Nội dung Cho phép người sử dụng tra cứu các hình cơ bản
Trang 25LVTN : Thiết kế phần mềm Học và chơi cho bé trên nền tảng Android
Đối tượng sử dụng Tất cả người sử dụng
Tiền điều kiện
Kết quả Người dùng chọn đáp án đúng với bài Toán
Bảng 1-6 Tính năng Trò chơi làm Toán
1.4 Các yêu cầu phi chức năng
1.4.1 Yêu cầu thực thi
Trong điều kiện ổn định, thời gian chuyển trạng thái, chuyển các màn hình
không quá 500ms
Xử lý ổn định trên các phiên bản Hệ điều hành Android 4.2 trở lên
Ứng dụng có thể hoạt động 24/7
1.4.2 Yêu cầu an toàn
Không bị mất dữ liệu của ứng dụng khi thiết bị bị tắt
Nếu có lỗi xảy ra cần thông báo và gợi ý hướng xử lý cho người sử dụng
Một hệ thống an toàn là phải có các ràng buộc chặt chẽ về mặt kĩ thuật,
điều đó nhằm để giảm thiểu các mối đe dọa làm hư hỏng, gây lỗi phần
mềm, và để cho khách hàng có thể chấp nhận được những giá trị từ phần
mềm
Chủ động tránh các yếu tố có thể gây ra lỗi, thống kê các lỗi có thể xảy ra
từ đó có biện pháp phòng tránh và đối phó
Những yếu tố có thể trở thành nguyên nhân gốc của những lỗi, làm nguy
hại đến đến hệ thống sẽ được loại bỏ hoặc làm giảm đến mức chấp nhận
được
1.4.3 Yêu cầu bảo mật
Phầm mềm sau khi được phát triển hoàn chỉnh sẽ công bố mã nguồn cho
tổ chức hoặc cá nhân nào muốn tham gia vào phát triển phần mềm này
Dữ liệu của chương trình sẽ được mã hóa
1.4.4 Các đặc điểm chất lượng phần mềm
Phần mềm phải đảm bảo thông suốt về mặt tài liệu
Hoạt động ổn định trên các phiên bản Android lớn hơn, không xảy ra lỗi
nghiêm trọng
Trang 26 Tất cá các chức năng, các cách xử lý phải được mô tả rõ ràng trong tài liệu
đặc tả và tài liệu thiết kế chi tiết
Ứng dụng thực thi chính xác các chức năng được thiết kế
Đảm bảo tính dễ sử dụng, nếu có khó khăn thì cung cấp thêm hướng dẫn
cho người dùng
Hoạt động chính xác về thời gian và tính điểm
Đảm bảo tính dễ bảo trì, tương lai có thể hoàn thiện, nâng cấp sản phẩm,
mở ra nhiều hướng phát triển mới cho ứng dụng
Lập trình: chú thích rõ ràng các hàm, các lớp, các dòng lệnh
Đối với người sử dụng
o Tính khả dụng: Người sử dụng có thể sử dụng được, hiểu được, học
được trong từng trường hợp cụ thể một cách dễ dàng Khả năng hấp
dẫn người dùng sử dụng phần mềm này đối với họ
o Tính chức năng: Phần mềm cung cấp đầy đủ các chức năng đáp ứng
được nhu cầu sử dụng khi phần mềm làm việc trong trường hợp cụ thể
Đảm bảo phù hợp mục đích người sử dụng, cung cấp kết quả tính Toán
với mức độ chính xác cần thiết, có thể tương tác qua lại giữa các phân
hệ phần mềm trong hệ thống
o Tính tin cậy: Phần mềm có thể hoạt động tương đối ổn định trong những
điều kiện cụ thể như: có thể tránh các kết quả sai, chịu lỗi được khi phần
mềm hoạt động không ổn định hoặc lỗi giao diện, có thể phục hồi lại dữ
liệu có liên quan đến lỗi xảy ra
Đối với nhà phát triển
o Khả năng bảo trì: Phần mềm có thể chỉnh sửa, cải tiến và thích nghi được
với những thay đổi của môi trường, của yêu cầu và của chức năng Dễ
dàng phân tích, chuẩn đoán và xác định các phần để sửa chữa, cải tiến
Có thể chấp nhận một số thay đổi nhất định trong quá trình triển khai
o Tính khả chuyển: có thể sử dụng trên các phiên bản Android 4.2 trở lên
Không đụng độ với các phần mềm khác cùng chạy song song và có thể
chia sẻ tài nguyên giữa chúng
o Tính hiệu quả: khả năng trả lời, xử lý kết quả hay yêu cầu truy cập với
thời gian nhanh chóng trong trường hợp số lượng thực hiện công việc
nhiều nhất Sử dụng tối ưu nguồn tài nguyên để thực hiện công việc
1.4.5 Các quy tắc nghiệp vụ
Đây là phần mềm đa người dùng, nên bất cứ ai có nhu cầu sử dụng điều có
thể thao được tất cả chức năng trên phần mềm
1.5 Các yêu cầu khác
1.5.1 Cơ sở dữ liệu
Xây dựng cơ sở dữ liệu đơn giản nhất có thể bằng SQLite để dễ dàng truy
vấn và lưu trữ dữ liệu một cách hiệu quả và ít tốn tài nguyên nhất
Trang 27LVTN : Thiết kế phần mềm Học và chơi cho bé trên nền tảng Android
Trang 28CHƯƠNG 2- THIẾT KẾ VÀ CÀI ĐẶT GIẢI PHÁP
2.1 Tổng quan hệ thống
2.1.1 Tổng quan về chức năng
Ứng dụng được xây dựng chức năng theo 2 nhiệm vụ: đảm bảo việc học
tập, trò chơi trí tuệ cho bé
Mỗi nhiệm vụ sẽ bao gồm phần cung cấp đầy đủ kiến thức tối thiểu cần
có song song với trò chơi trắc nghiệm lại những kiến thức bé đã học được
Từ nhiệm vụ đặt ra, ứng dụng sẽ được xây dựng những chức năng sau đây:
o Ở lĩnh vực Tiếng Việt, bao gồm 3 chức năng chính:
Xem danh sách 29 chữ cái và cách phát âm
Xem và học cách ghép các vần trong Tiếng Việt
Trắc nghiệm kiểm tra lại kiến thức ghép vần và nhận biết các chữ cái
o Ở lĩnh vực Toán, bao gồm 3 chức năng chính:
Xem, học cách nhận biết, làm phép tính cộng trừ đơn giản danh sách
các số từ 1-10
Xem và nhận biết các hình cơ bản
Trắc nghiệm kiểm tra lại kiến thức về làm Toán và các hình cơ bản
2.1.2 Tổng quan về thiết kế
Hệ thống được thiết kế phân theo chức năng rõ ràng, mỗi chức năng là
một module riêng nhằm tạo sự dễ dàng, giúp người lập trình dễ dàng hiểu
rõ toàn bộ hệ thống, giúp giảm thiểu sai sót trong quá trình lập trình
Lợi ích của việc phân chia chức năng theo module là thuận lợi trong việc
debug, sửa chữa code Tách biệt từng chức năng riêng biệt
Khi cần sửa chữa một chức năng nào sẽ không ảnh hưởng đến phần còn
lại của chương trình, giúp giai đoạn bảo trì hay nâng cấp không gặp khó
khăn
2.2 Kiến trúc hệ thống
2.2.1 Thiết kế kiến trúc
Do hệ thống chỉ hoạt động local nên ta sẽ thiết kế đơn giản như sau:
Người dùng sẽ thao tác với ứng dụng qua giao diện người sử dụng
Trang 29LVTN : Thiết kế phần mềm Học và chơi cho bé trên nền tảng Android
Trang 30 Lớp giao diện:
o Đây là lớp tạo nên giao diện cho người sử dụng, nó sẽ là nơi tiếp nhận
và kết xuất ra kết quả của chương trình
o Có nhiệm vụ xử lý, kiểm tra các dữ liệu nhập
o Tiếp nhận các event của người dung, kiểm tra dữ liệu được nhập vào,
gửi yêu cầu xử lý xuống
Lớp xử lý:
o Đây là lớp xử lý chính các dữ liệu trước khi được đưa lên hiển thị trên
màn hình hoặc xử lý các dữ liệu trước khi lưu dữ liệu xuống cơ sở dữ
Các layer giao tiếp với nhau:
(có thể là bằng câu lệnh select hay thông qua proceduce) và đưa lên lớp xử lý, tại
đây lớp xử lý cần xử lý dữ liệu và chuyển đến lớp giao diện và tại giao diện sẽ
hiển thị thông tin
Trang 31LVTN : Thiết kế phần mềm Học và chơi cho bé trên nền tảng Android
2.2.2 Mô tả sự phân rã
Sơ đồ chức năng của ứng dụng:
2.2.3 Cơ sở thiết kế
Thiết kế kiến trúc theo kiểu phần lớp xử lý riêng, giao diện riêng và lớp
dữ liệu riêng tạo rất nhiều thuận lợi
Người lập trình có thể lập trình giao diện trên xml mà không phải sửa
chữa các chức năng đã hoàn thành
Học Toán
Xem bảng chữcái và học cách phát âm
Xem danh sách các vần
và học cách phát âm
Đoán chữ
Xem bảng số từ1-10
Xem các hình cơ
bản
Làm Toán
Hướng dẫn tínhcộng, trừ
Hình 2-3 Sơ đồ các chức năng của ứng dụng
Trang 32 Sử dụng 4 bảng dữ liệu:
BẢNG GHÉP VẦN
Img_van Text Lưu trữ tên file ảnh hiển thị vần
Aud_van Text Lưu trữ tên file audio phát âm
vần
Img_ghepvan Text Lưu trữ tên file ảnh hiển thị từ
chứa vần
Aud_ghepvan Text Lưu trữ tên file audio phát âm từ
Img_minhhoa Text Lưu trữ tên file ảnh minh họa
Noidung_aud Text Câu hỏi dưới dạng text
Img_chinh Text Tên file ảnh minh họa cho nội dung
câu hỏi
Trang 33LVTN : Thiết kế phần mềm Học và chơi cho bé trên nền tảng Android
Phuong_an1 Text Câu trả lời 1
Phuong_an2 Text Câu trả lời 2
Phuong_an3 Text Câu trả lời 3
Phuong_an4 Text Câu trả lời 4
Bảng 2-3 Cấu trúc bảng data Cộng - trừ
Trang 34Bảng Number
Bảng 2-4 Cấu trúc bảng data Number
Hệ thống sẽ sử dụng hệ quản trị cơ sở dữ liệu nhỏ gọn SQLite được tích
hợp sẵn trong Android SDK
Sử dụng add-on SQLite Manager của trình duyệt web để dễ dàng sử
dụng hệ quản trị cơ sở dữ liệu SQLite
2.3.2 Từ điển dữ liệu
2.4 Thiết kế theo chức năng
2.4.1 Chức năng Xem bảng chữ cái và học cách phát âm
Mục đích: Biễu diễn bảng 29 chữ cái tiếng Việt và cách phát âm cho từng
chữ cái giúp người dùng học được cách phát âm và nhận biết chữ cái
Giao diện:
Hình 2-4 Giao diện chức năng Xem bảng chữ cái
Trang 35LVTN : Thiết kế phần mềm Học và chơi cho bé trên nền tảng Android
Các thành phần của giao diện:
o Bước 3: Người dùng click chọn trên chữ cái
o Bước 4: Chương trình xử lý phát âm tương ứng với từng chữ cái đó
o Bước 5: Người dùng tiếp tục lặp lại bước 3 hoặc chọn button home để