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

ứng dụng ong tìm mật trên nền tảng 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 (2.65 MB, 70 trang )

BỘ 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

ỨNG DỤNG
ONG TÌM MẬT TRÊN NỀN TẢNG ANDROID

Sinh viên: Nguyễn Quí Nghĩa
Mã số sinh viên: 1111316
Khóa: K37

Cần Thơ, 05/2015


BỘ 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


ỨNG DỤNG
ONG TÌM MẬT TRÊN NỀN TẢNG ANDROID

Giảng viên hướng dẫn:
Ths.Võ Huỳnh Trâm

Cần Thơ, 05/2015

Sinh viên thực hiện:
Nguyễn Quí Nghĩa
Mã số: 1111316
Khóa: K37


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

LỜI CẢM ƠN
Trong quá trình làm luận văn, ngoài sự nổ lực và cố gắng của bản thân, tôi còn
nhận được rất nhiều sự chỉ dẫn tận tình của thầy cô, sự giúp đỡ, động viên của gia
đình và bạn bè.
Đầu tiên tôi xin chân thành cảm ơn cô Võ Huỳnh Trâm, người đã tận tình giúp
đỡ tôi trong suốt thời gian làm luận văn. Cô là người đã gợi ý ý tưởng đề tài cho tôi
và nhiệt tình giải đáp thắc mắc cũng như những góp ý của cô đã giúp tôi có những
chỉnh sửa phù hợp và kịp thời để tôi có thể hoàn thành tốt đề tài.
Tôi cũng chân thành bày tỏ lòng cảm ơn đến tất cả những thầy cô đã giảng
dạy, truyền đạt cho tôi những kiến thức vô cùng quý báu trong suốt bốn năm qua.
Những kiến thức đó vừa là nền tảng giúp tôi thực hiện tốt đề tài vừa là hành trang cho
tương lai sau này.
Mặc dù đã cố gắng rất nhiều nhưng vẫn khó tránh khỏi những sai sót nhất định,
kính mong nhận được sự thông cảm và góp ý của thầy cô và các bạn.

Kính chúc quý thầy cô cùng các bạn dồi dào sức khỏe và đạt nhiều thành công
trong công việc!
Cần thơ, ngày 12 tháng 5 năm2015
Sinh viên thực hiện

Nguyễn Quí Nghĩa

GVHD: Ths. Võ Huỳnh Trâm

1

SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

MỤC LỤC
KÝ HIỆU VÀ VIẾT TẮT ........................................................................................... 4
DANH MỤC HÌNH ẢNH .......................................................................................... 5
DANH MỤC BẢNG ................................................................................................... 6
TÓM TẮT ................................................................................................................... 7
ABSTRACT ................................................................................................................ 8
PHẦN I. GIỚI THIỆU .............................................................................................. 9
I.1. ĐẶT VẤN ĐỀ ............................................................................................. 9
I.2.

LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ ............................................................ 9

I.3.


MỤC TIÊU ĐỀ TÀI ................................................................................... 9

I.4.

ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU ........................................ 10

I.5.

NỘI DUNG NGHIÊN CỨU .................................................................... 11

I.6.

ĐÓNG GÓP CỦA ĐỀ TÀI ...................................................................... 12

I.7.

BỐ CỤC TÀI LIỆU .................................................................................. 12

PHẦN II.NỘI DUNG .............................................................................................. 13
II.1. CHƯƠNG I: MÔ TẢ BÀI TOÁN .......................................................... 13
II.1.1. Mô tả tổng quan .................................................................................. 13
II.1.1.1. Bối cảnh sản phẩm ....................................................................... 13
II.1.1.2. Luật chơi ....................................................................................... 13
II.1.1.3. Các chức năng của sản phẩm ...................................................... 14
II.1.1.4. Đặc điểm người sử dụng .............................................................. 16
II.1.1.5. Môi trường vận hành ................................................................... 16
II.1.2. Các yêu cầu giao tiếp bên ngoài......................................................... 16
II.1.3. Các tính năng của hệ thống (chọn lọc) .............................................. 17
II.1.3.1. Chức năng chơi ván mới .............................................................. 17
II.1.3.2. Chức năng cài đặt trò chơi .......................................................... 18

II.1.3.3. Chức năng xếp hạng người chơi ................................................. 19
II.1.4. Các yêu cầu phi chức năng................................................................. 19
II.2.

CHƯƠNG II: THIẾT KẾ VÀ CÀI ĐẶT ............................................... 21

II.2.1. Kiến trúc hệ thống .............................................................................. 21
II.2.1.1. Thiết kế kiến trúc ......................................................................... 21
II.2.1.2. Mô tả sự phân rã .......................................................................... 22
II.2.1.3. Cơ sở thiết kế ................................................................................ 24

GVHD: Ths. Võ Huỳnh Trâm

2

SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

II.2.2. Thiết kế dữ liệu ................................................................................... 24
II.2.3.1. Mô tả dữ liệu ................................................................................. 24
II.2.3.2. Từ điển dữ liệu ............................................................................. 26
II.2.3. Thiết kế chức năng .............................................................................. 29
II.2.3.1. Chức năng Đồng bộ tài khoản .................................................... 29
II.2.3.2. Chức năng Tạo tài khoản ............................................................ 31
II.2.3.3. Chức năng Chơi ván mới............................................................. 33
II.2.3.4. Chức năng Cài đặt trò chơi ......................................................... 34
II.2.3.5. Chức năng Xem thông tin tài khoản .......................................... 36
II.2.3.6. Chức năng Cập nhật thông tin tài khoản .................................. 37

II.2.3.7. Chức năng Xem bảng xếp hạng .................................................. 40
II.2.3.8. Chức năng Trợ giúp ..................................................................... 41
II.2.3.9. Chức năng Thống kê tài khoản ................................................... 43
II.2.3.10. Chức năng Thống kê bảng xếp hạng ........................................ 45
II.2.4. Thiết kế giải thuật và cài đặt ............................................................. 47
II.2.4.1. Giải thuật sinh ma trận “hoa” .................................................... 47
II.2.4.2. Giải thuật lan rộng (ứng dụng DFS) .......................................... 50
II.2.5. Thiết kế Web Service (dịch vụ Web)................................................. 53
II.3.

CHƯƠNG III: KIỂM THỬ VÀ ĐÁNH GIÁ ........................................ 55

II.3.1. Mục đích .............................................................................................. 55
II.3.2. Môi trường kiểm thử .......................................................................... 55
II.3.3. Phạm vi kiểm thử ................................................................................ 55
II.3.4. Kiểm thử một số chức năng chọn lọc ................................................ 56
II.3.4.1. Chức năng Chơi ván mới............................................................. 56
II.3.4.2. Chức năng Đăng ký tài khoản .................................................... 58
II.3.4.3. Chức năng Đồng bộ tài khoản .................................................... 58
II.3.5. Đánh giá kết quả kiểm thử ................................................................. 60
PHẦN III. KẾT LUẬN ........................................................................................... 61
III.1. KẾT QUẢ ĐẠT ĐƯỢC ........................................................................... 61
III.2. HẠN CHẾ ................................................................................................. 61
III.3. HƯỚNG PHÁT TRIỂN ........................................................................... 61
TÀI LIỆU THAM KHẢO ......................................................................................... 62
PHỤ LỤC ................................................................................................................. 63

GVHD: Ths. Võ Huỳnh Trâm

3


SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

KÝ HIỆU VÀ VIẾT TẮT
Từ viết tắt

STT

Từ viết đầy đủ

1

ĐTDĐ

Điện thoại di động

2

SOAP

Simple Object Access Protocol

3

WSDL

Web Service Description Language


4

UDDI

Universal Description, Discovery, and
Integration

5

Client

Máy khách

6

Server

Máy chủ

7

CSDL

Cơ sở dữ liệu

GVHD: Ths. Võ Huỳnh Trâm

4


SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

DANH MỤC HÌNH ẢNH
Hình I. 1. Ma trận bông hoa ...................................................................................... 13
Hình I. 2. Sơ đồ phân cấp chức năng của ứng dụng Ong tìm mật ............................ 15
Hình I. 3. Sơ đồ Use-Case ......................................................................................... 15
Hình II. 1. Mô hình Client – Server .......................................................................... 21
Hình II. 2. Mô hình Client – Server trong ứng dụng Ong tìm mật ........................... 21
Hình II. 3. Sơ đồ DFD cấp 0 ..................................................................................... 22
Hình II. 4. DFD cấp 1 của tác nhân người dùng đăng nhập ..................................... 23
Hình II. 5. DFD cấp 1 của tác nhân người dùng quản lý .......................................... 23
Hình II. 6. Sơ đồ CMD trên server ............................................................................ 24
Hình II. 7. Sơ đồ PDM trên server ............................................................................ 24
Hình II. 8. Giao diện chức năng đồng bộ tài khoản .................................................. 29
Hình II. 9. Sơ đồ hoạt động chức năng đồng bộ tài khoản ....................................... 30
Hình II. 10. Giao diện chức năng tạo tài khoản ........................................................ 31
Hình II. 11. Sơ đồ hoạt động chức năng tạo tài khoản .............................................. 32
Hình II. 12. Giao diện chơi ván mới ......................................................................... 33
Hình II. 13. Sơ đồ hoạt động chức năng chơi ván mới ............................................. 34
Hình II. 14. Giao diện cài đặt trò chơi ...................................................................... 34
Hình II. 15. Sơ đồ hoạt động chức năng cài đặt trò chơi .......................................... 35
Hình II. 16. Giao diện chức năng xem thông tin tài khoản ....................................... 36
Hình II. 17. Sơ đồ hoạt động chức năng xem thông tin tài khoản ............................ 37
Hình II. 18. Giao diện cập nhật thông tin tài khoản .................................................. 37
Hình II. 19. Sơ đồ hoạt động chức năng cập nhật thông tin tài khoản ...................... 39
Hình II. 20. Giao diện chức năng xem bảng xếp hạng .............................................. 40
Hình II. 21. Giao diện chức năng xem bảng xếp hạng .............................................. 41

Hình II. 22. Giao diện chức năng trợ giúp ................................................................ 41
Hình II. 23. Sơ đồ hoạt động chức năng trợ giúp...................................................... 42
Hình II. 24. Giao diện chức năng thống kê tài khoản ............................................... 43
Hình II. 25. Sơ đồ hoạt động chức năng thống kê tài khoản..................................... 44
Hình II. 26. Giao diện chức năng thống kê bảng xếp hạng....................................... 45
Hình II. 27. Sơ đồ hoạt động chức năng thống kê bảng xếp hạng ............................ 46
Hình II. 28. Chuyển ma trận hoa sang ma trận số ..................................................... 47
Hình II. 29. Lưu đồ thuật toán sinh ma trận hoa ....................................................... 49
Hình II. 30. Mô tả giải thuật sinh ma trận ................................................................. 49
Hình II. 31. Tương quan giữa ma trận và đồ thị ....................................................... 50
Hình II. 32. Lưu đồ thuật toán lan rộng .................................................................... 51
Hình II. 33. Ví dụ minh họa giải thuật lan rộng ........................................................ 52

GVHD: Ths. Võ Huỳnh Trâm

5

SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

DANH MỤC BẢNG
Bảng 1. Kế hoạch thực hiện ................................................................................................ 11

Bảng I. 1. Đặc tả yêu cầu chức năng chơi ván mới ................................................... 18
Bảng I. 2. Bảng đặc tả chức năng cài đặt trò chơi .................................................... 18
Bảng I. 3. Đặc tả chức năng xếp hạng người chơi .................................................... 19
Bảng II. 1. Bảng USER ............................................................................................. 26
Bảng II. 2. Bảng USER_TYPE ................................................................................. 27

Bảng II. 3. Bảng HISTORY ...................................................................................... 27
Bảng II. 4. Bảng RANK ............................................................................................ 28
Bảng II. 5. Bảng USER_RANK ................................................................................ 28
Bảng II. 6. Thành phần giao diện chức năng đồng bộ tài khoản .............................. 30
Bảng II. 7. Sử dụng dữ liệu của chức năng đồng bộ tài khoản ................................. 30
Bảng II. 8. Thành phần giao diện tạo tài khoản ........................................................ 31
Bảng II. 9. Dữ liệu sử dụng của chức năng tạo tài khoản ......................................... 32
Bảng II. 10. Thành phần giao diện chơi ván mới ...................................................... 33
Bảng II. 11. Dữ liệu sử dụng của chức năng chơi ván mới....................................... 33
Bảng II. 12. Thành phần giao diện cài đặt trò chơi ................................................... 35
Bảng II. 13. Thành phần giao diện xem thông tin tài khoản ..................................... 36
Bảng II. 14. Thành phần giao diện cập nhật thông tin tài khoản .............................. 38
Bảng II. 15. Dữ liệu sử dụng của chức năng cập nhật thông tin tài khoản ............... 38
Bảng II. 16. Thành phần giao diện xem bảng xếp hạng............................................ 40
Bảng II. 17. Dữ liệu sử dụng của chức năng xem bảng xếp hạng ............................ 40
Bảng II. 18. Thành phần giao diện trợ giúp .............................................................. 42
Bảng II. 19. Thành phần giao diện thống kê tài khoản ............................................. 43
Bảng II. 20. Dữ liệu sử dụng của chức năng thống kê tài khoản .............................. 44
Bảng II. 21. Thành phần giao diện thống kê bảng xếp hạng .................................... 45
Bảng II. 22. Dữ liệu sử dụng của chức năng thống kê bảng xếp hạng ..................... 45
Bảng III. 1. Môi trường kiểm thử .............................................................................. 55
Bảng III. 2. Trường hợp kiểm thử chức năng chơi ván mới (use-case 1) ................. 56
Bảng III. 3. Trường hợp kiểm thử chức năng chơi ván mới (use-case 2) ................. 57
Bảng III. 4. Trường hợp kiểm thử chức năng đăng ký tài khoản .............................. 58
Bảng III. 5. Trường hợp kiểm thử chức năng đồng bộ tài khoản ............................. 59
Bảng III. 6. Kết quả kiểm thử ................................................................................... 60

GVHD: Ths. Võ Huỳnh Trâm

6


SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

TÓM TẮT
Ngày nay, trong thời kỳ phát triển mạnh mẽ của các thiết bị di động thì chiếc
điện thoại thông minh đang dần trở nên phổ biến hơn. Nó cung cấp rất nhiều ứng
dụng hữu ích đáp ứng hầu hết các nhu cầu về công việc, học tập và giải trí của chúng
ta. Hiện tại có nhiều nền tảng di động phổ biến như Android, iOS, Windows Phone,
trong đó Android là nền tảng phổ biến nhất với một kho ứng dụng khổng lồ cung cấp
rất nhiều ứng dụng hay và bổ ích. Android là hệ điều hành mã nguồn mở và cung cấp
rất nhiều các thư viện lập trình cần thiết giúp cho lập trình viên có thể phát triển dễ
dàng ứng dụng của mình.
Dựa theo luật chơi của trò chơi dò mìn (Minesweeper) – một trò chơi phổ
biến trên các máy tính chạy hệ điều hành Windows, ứng dụng “Ong tìm mật” chạy
trên nền tảng Android được phát triển với nhiều đột phá vượt bậc về hình ảnh với các
chức năng hấp dẫn. Để chiến thắng trò chơi thì người chơi đóng vai trò như một chú
ong có nhiệm vụ khám phá tất cả bông hoa có mật trong một ma trận bông hoa. Người
chơi có thể tùy chọn cấp độ chơi hoặc tùy chỉnh thông số ván chơi theo ý muốn. Ngoài
ra ứng dụng còn hỗ trợ lưu điểm trực tuyến và xếp hạng người chơi dựa vào số điểm
mà họ đã tích lũy được. Đề tài tập trung vào tìm hiểu về hệ điều hành Android, nghiên
cứu cách thức phát triển một ứng dụng Android, nghiên cứu một số công nghệ mới
về Web Service, Hibernate.
Kết quả đề tài đã xây dựng tương đối hoàn chỉnh ứng dụng “Ong tìm mật”
với đầy đủ các chức năng đề ra ban đầu, ứng dụng hoạt động tốt trên nền tảng Android
2.2 trở lên. Đồng thời còn xây dựng thành công một dịch vụ Web để hỗ trợ các chức
năng của ứng dụng.


GVHD: Ths. Võ Huỳnh Trâm

7

SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

ABSTRACT
Nowadays, in the development of the mobile devices, so the smart phones is
more and more popular. It provide many useful applications. They are many
platforms which famous such as Android, iOS, Windows Phone. Android is the most
famous platforms which has a huge store application. It is a open source operating
system which support a lot of programming libary, as a result, the developer can
develop their applications easily.
“Ong tim mat” application run on Android platform which based on rules of
“Minesweeper” game – a popular game in Window operating system, “Ong tim mat”
has many breakthroughs about pictures and many new functions interesting. To
victory the game, a player acts as a bee is responsible for exploring all the flowers
have honey in a matrix flowers, the player can option level playing or customize
parameters of set. In addition, the application also support functions online saving
score and ranking with user’s score. This project focuses on studying about Android
operating system, doing research the ways to develop the Android application, doing
research some new technology about Web Service, Hibernate.
A result of the project, I has built a quite complete “Ong tim mat”
applications with all funtion which was posed initial, the applications can run on
Android platform from version 2.2 or more. In addition, I has also built Web Service
which provide services for functions of the application.


GVHD: Ths. Võ Huỳnh Trâm

8

SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

PHẦN I. GIỚI THIỆU
I.1. ĐẶT VẤN ĐỀ
Ngày nay với sự phát triển nhanh chóng của khoa học công nghệ. Việc sở
hữu một chiếc smartphone (Điện thoại thông minh) đang dần trở nên phổ biến.
Đi theo xu hướng đó các ứng dụng trên kho ứng dụng cũng phát triển nhanh
chóng cả về số lượng lẫn chất lượng. Mỗi chiếc điện thoại đều chạy một nền tảng
nhất định, một số nền tảng phổ biến hiện nay là Android, iOS, Windows phone,
trong đó Android là nền tảng được ưa chuộng nhất, nguyên nhân là do Android
cung cấp khả năng tùy biến tốt và đặc biệt quan trọng là do Android có một kho
ứng dụng lớn nhất hiện nay với trên 1,4 triệu ứng dụng trong năm 2014 (theo App
Annie).
Hầu hết chúng ta điều đã quen thuộc với trò chơi dò mìn (Minesweeper),
đây là một trò chơi kinh điển trên các máy tính chạy hệ điều hành Windows, với
một luật chơi rất đơn giản nhưng đòi hỏi người chơi phải có tư duy logic tốt để
không “dính phải mìn”.
Tôi thực hiện đề tài “Ứng dụng Ong tìm mật” với mong muốn tạo ra một
ứng dụng hay và hấp dẫn về mặt hình ảnh và tính năng giúp cho mọi người có
thêm một lựa chọn cho nhu cầu giải trí của mình, đồng thời đây cũng là cơ hội
giúp nâng cao khả năng tự nghiên cứu của bản thân.
I.2. LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ
Dựa trên luật chơi của trò chơi dò mìn (Minesweeper), ứng dụng “Ong tìm

mật” được xây dựng với nhiều chức năng và hình ảnh hấp dẫn.
Hiện tại trên kho ứng dụng của Android có một số ứng dụng tương tự như
“Ăn táo tìm sâu”, “Pony Minesweeper” nhưng giao diện và hình ảnh còn đơn điệu
chưa được hấp dẫn và hỗ trợ âm thanh chưa được tốt.
I.3. MỤC TIÊU ĐỀ TÀI
- Nghiên cứu kiến thức lập trình trên nền tảng Android và các thành phần của
nó.
- Tìm hiểu công nghệ về Webservice, Hibenate.
- Nâng cao khả năng viết báo cáo, thuyết trình và tự nghiên cứu.
- Phát triển một ứng dụng hay chạy trên nền tảng Android giúp người chơi giải
trí sau những giờ làm việc mệt mỏi.

GVHD: Ths. Võ Huỳnh Trâm

9

SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

I.4. ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU
Bao gồm ba nhóm người dùng:
- Nhóm người dùng tự do: là người dùng có nhu cầu trải nghiệm ứng
dụng mà không cần có tài khoản để đăng nhập vào ứng dụng. Vì không đăng
nhập nên ứng dụng chỉ cung cấp các chức năng: chơi ván mới, trợ giúp, cài
đặt, đăng ký, đăng nhập. Đây là nhóm người dùng có khả năng từ bỏ ứng dụng
cao, tiêu chí để niếu kéo họ tiếp tục sử dụng ứng dụng là giao diện đẹp, khoa
học, hấp dẫn, xử lý nhanh.
- Nhóm người dùng đăng nhập ứng dụng: là người dùng có nhu cầu lưu

thông tin và điểm số lại, người dùng phải đăng ký một tài khoản và đăng nhập
vào ứng dụng. Đây là nhóm người dùng có khả năng gắn bó cao với ứng dụng.
- Nhóm người dùng quản trị: là người dùng có nhu cầu quản lý thống kê
các thông tin của hệ thống.
Đối với người dùng tự do, ứng dụng cung cấp các chức năng:
 Bắt đầu một ván chơi mới.
 Xem thông tin về luật chơi và có thể xem thông tin về trò chơi.
 Cài đặt độ khó cho trò chơi, cài đặt âm thanh.
 Đăng ký một tài khoản mới để đồng bộ vào ứng dụng.
 Đăng nhập vào ứng dụng để có thể lưu điểm trực tuyến.
Đối với người dùng đã đăng nhập:
 Bắt đầu một ván chơi mới.
 Xem thông tin về luật chơi và có thể xem thông tin về trò chơi.
 Cài đặt độ khó cho trò chơi, cài đặt âm thanh.
 Xem bảng xếp hạng những người chơi có số điểm cao nhất.
 Thay đổi thông tin email hoặc thay đổi mật khẩu.
 Đăng xuất tài khoản khỏi ứng dụng.
Đối với người dùng quản trị ngoài các chức năng của người dùng đã đăng
nhập ứng dụng còn cung cấp các chức năng:
 Thống kê người dùng: giúp người quản trị có cái nhìn tổng quan về
các tài khoản người dùng trong hệ thống.
 Thống kê xếp hạng: người dùng có thể xem bảng xếp hạng theo ngày.
 Người dùng có thể thay đổi thông tin email hoặc thay đổi mật khẩu
của mình.

GVHD: Ths. Võ Huỳnh Trâm

10

SVTH: Nguyễn Quí Nghĩa



Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

I.5. NỘI DUNG NGHIÊN CỨU
-

Phương pháp thu thập thông tin:
 Thu thập, chọn lọc thông tin từ Internet.
 Trao đổi và tham khảo góp ý của giáo viên hướng dẫn

-

Về lý thuyết:
 Phương pháp tổ chức, phân tích, thiết kế các thành phần của ứng
dụng.
 Ngôn ngữ lập trình: Java, XML.
 Các Framework: SOAP (KSOAP2), Hibenate.

-

Về kỹ thuật:
 Sử dụng công cụ Power Designer 15.1 để thiết kế các sơ đồ.
 Dùng hệ quản trị cơ sở dữ liệu MySQL 5.6 để quản lý cơ sở dữ liệu.
 Sử dụng server Glassfish 4.1
 Ngôn ngữ lập trình được sử dụng: Java, XML.
 Sử dụng công cụ Adobe Photoshop CS6 để thiết kế hình ảnh.

Kế hoạch thực hiện:
STT

1

2

3
4
5
6
7
8

Nội dung công việc
Tuần
Bắt đầu
Tìm hiểu nền tảng hệ điều hành
Android cũng như các thành
2
05/01/2015
phần của nó.
Tìm hiểu phương pháp lập
trình, các công cụ lập trình và
3
12/01/2015
công cụ giả lập.
Phát triển ý tưởng và nghiên
cứu các giải thuật cho ứng
4
19/01/2015
dụng.
Hoàn thành đặc tả.

Hoàn thành thiết kế.
5 - 7 26/01/2015
Viết code cho ứng dụng
8 - 14 16/02/2015
Chỉnh sữa, cài đặt chương trình
15
06/04/2015
Hoàn thành mẫu trường hợp
16
13/04/2015
kiểm thử
Hoàn thành tài liệu báo cáo và 17 20/04/2015
chương trình
19
Bảng 1. Kế hoạch thực hiện

GVHD: Ths. Võ Huỳnh Trâm

11

Kết thúc

09/01/2015

16/01/2015

23/01/2015
13/02/2015
03/04/2015
10/04/2015

17/04/2015
08/05/2015

SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

I.6. ĐÓNG GÓP CỦA ĐỀ TÀI
Xây dựng thành công ứng dụng Ong tìm mật với giao diện và tính năng hấp
dẫn giúp cho mọi người có thêm sự lựa chọn cho nhu cầu giải trí của mình.
I.7. BỐ CỤC TÀI LIỆU
Nội dung quyển luận văn gồm các phần sau:
Phần I: Giới thiệu
Phần này trình bày sơ lược về lý do phát sinh ý tưởng đề tài, giới thiệu
những đề tài tương tự đã được thực hiện, mục tiêu đề ra sau khi thực hiện đề tài
này cũng như nội dung nghiên cứu và những đóng góp của đề tài này.
Phần II: Nội dung
Phần này đi sâu vào đặc tả yêu cầu phần mềm, phân tích các thành phần
của hệ thống và kiểm thử sản phẩm của đề tài.
Mô tả hệ thống: mô tả tổng quan về bài toán, giới thiệu luật chơi ứng
dụng Ong tìm mật, đồng thời trình bày các yêu cầu chức năng và phi chức năng
của ứng dụng.
Thiết kế và cài đặt: Trình bày thiết kế các thành phần của hệ thống
bao gồm kiến trúc hệ thống, thiết kế dữ liệu, thiết kế các chức năng, thiết kế các
giải thuật và cài đặt bằng ngôn ngữ lập trình Java.
Kiểm thử và đánh giá: trình bày kiểm thử một số chức năng chính của
ứng dụng.
Phần III: Kết luận
Nhận xét kết quả đã đạt được sau khi thực hiện đề tài, những mặt hạn

chế cũng như hướng phát triển của đề tài.

GVHD: Ths. Võ Huỳnh Trâm

12

SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

PHẦN II. NỘI DUNG
II.1. CHƯƠNG I: MÔ TẢ BÀI TOÁN
II.1.1. Mô tả tổng quan
II.1.1.1. Bối cảnh sản phẩm
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. Hiện nay Android trở thành nền tảng điện thoại
thông minh phổ biến nhất thế giới, đây là hệ điều hành mã nguồn mở và cung
cấp rất nhiều các thư viện lập trình cần thiết cho lập trình viên phát triển dễ
dàng ứng dụng của mình.
Trò chơi Ong tìm mật trên nền tảng Android dựa trên trò chơi dò mìn
(Minesweeper) nhưng có thay đổi đôi chút về hình ảnh: thay những ô vuông
trong ma trận bằng những bông hoa tươi thắm và quả mìn thì thay bằng bông
hoa không có mật. Ngoài ra ứng dụng có cải tiến thêm chức năng xếp hạng
người chơi.
II.1.1.2. Luật chơi
Trò chơi khởi đầu với một bảng ô vuông (m hàng, n cột) chứa đầy
những bông hoa tươi thắm, người chơi lần lượt lựa chọn những bông hoa để
lấy mật, nếu không may mở nhằm bông hoa không có mật thì người chơi

thua cuộc, nếu có mật thì một con số (có thể là một vùng các con số) xuất
hiện, mỗi con số cho biết có bao nhiêu bông hoa không có mật liền kề với
nó. Người chơi chỉ chiến thắng sau khi đã mở hết những bông hoa có mật.

Hình I. 1. Ma trận bông hoa

GVHD: Ths. Võ Huỳnh Trâm

13

SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

II.1.1.3. Các chức năng của sản phẩm
Ứng dụng bao gồm các chức năng sau:
-

Đồng bộ tài khoản: người dùng đăng nhập vào ứng dụng để có
thể lưu điểm trực tuyến.
Đăng ký: đăng ký một tài khoản mới để đồng bộ.
Trợ giúp: hiển thị thông tin về luật chơi hoặc có thể xem thông
tin về trò chơi.
Cài đặt: cài đặt độ khó cho trò chơi, có thể bật hoặc tắt âm thanh
theo ý muốn.
Chơi ván mới: bắt đầu một ván chơi mới.
Đăng xuất: đăng xuất tài khoản khỏi ứng dụng.
Cập nhật thông tin tài khoản: cập nhật thông tin về Email hoặc
thay đổi mật khẩu

Xếp hạng: xem thông tin bảng xếp hạng những người chơi có
điểm cao nhất.
Thống kê người dùng: thống kê số lượng người dùng trong hệ
thống.
Thống kê xếp hạng: xem bảng xếp hạng theo ngày.

GVHD: Ths. Võ Huỳnh Trâm

14

SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

Hình I. 2. Sơ đồ phân cấp chức năng của ứng dụng Ong tìm mật

Hình I. 3. Sơ đồ Use-Case

GVHD: Ths. Võ Huỳnh Trâm

15

SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

II.1.1.4. Đặc điểm người sử dụng
Người dùng tự do: là người dùng có nhu cầu trải nghiệm ứng dụng

mà không cần có tài khoản để đăng nhập vào ứng dụng. Vì không đăng nhập
nên ứng dụng chỉ cung cấp các chức năng: chơi ván mới, trợ giúp, cài đặt,
đăng ký, đăng nhập.
Người dùng đăng nhập ứng dụng: là người dùng có tài khoản và đã
đăng nhập vào ứng dụng. Ứng dụng cung cấp các chức năng: chơi ván mới,
trợ giúp, cài đặt, xem bảng xếp hạng, cập nhật thông tin tài khoản và đăng
xuất.
Người dùng quản lý: là người dùng có nhu cầu quản lý thống kê các
thông tin của hệ thống. Ngoài chức năng của người dùng đã đăng nhập ứng
dụng còn cung cấp các chức năng: Thống kê tài khoản, thống kê bảng xếp
hạng.
II.1.1.5. Môi trường vận hành
Ứng dụng được triển khai theo kiến trúc Client-Server.
-

-

Đối với Client: ứng dụng chạy trên các ĐTDĐ nền tảng Android
2.2 trở lên.

 Yêu cầu phần cứng:
 Chipset: tối thiểu 1.0 Ghz
 Ram: tối thiểu 512 Mb
 Bộ nhớ trong: tối thiểu 20MB trống
Server là một Web Sevice chạy Server Glassfish 4.1, sử dụng
Hibernate để truy xuất CSDL MySQL.

II.1.2. Các yêu cầu giao tiếp bên ngoài
-


Về giao diện người dùng phải đáp ứng các yêu cầu:
 Giao diện đẹp, thân thiện, bố trí các Menu khoa học không rối mắt.
 Màn hình Menu chính trình bày đầy đủ các chức năng cơ bản của
ứng dụng
 Màn hình giao diện trò chơi được bố trí cân đối, hình ảnh đẹp mắt
có kết hợp âm thanh khi chơi, cho phép người dùng bật hoặc tắt
âm thanh theo ý muốn.

-

Về giao tiếp truyền tin:

GVHD: Ths. Võ Huỳnh Trâm

16

SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

 Server là một web service giao tiếp dựa trên XML và HTTP, trong
đó XML làm nhiệm vụ mã hóa và giải mã dữ liệu và dùng SOAP
để truyền tải.
II.1.3. Các tính năng của hệ thống (chọn lọc)
(Các mức đánh giá được quy định từ thấp đến cao theo số 1 đến 9)
II.1.3.1. Chức năng chơi ván mới
REQ05
Mã yêu cầu
Chơi ván mới

Tên yêu cầu
Mức 9
Mức độ ưu tiên
Mức 9
Lợi ích
Mức 9
Chi phí
Mức 4
Rủi ro
Đây là tính năng chính của ứng dụng cho phép người dùng
Nội dung
bắt đầu một ván chơi mới.
Đối tượng sử dụng Người chơi đã có tài khoản hoặc người chơi tự do.
Tiền điều kiện
Xử lý
1. Để chơi một ván mới người dùng bấm nút “Chơi” trong
màn hình menu chính.
2. Ứng dụng tính toán lại ma trận các bông hoa và hiển
thị giao diện chơi trò chơi, bao gồm ma trận hoa, số
điểm và thời gian còn lại.
3. Người chơi bắt đầu chơi dựa theo luật chơi.
4. Nếu người chơi thua cuộc hoặc quá thời gian quy định
thì hiện thông báo “Thất bại”, nếu người chơi thắng
cuộc thì hiện thông báo “Chiến thắng”.
5. Ứng dụng tính toán số điểm và hiển thị cho kết quả ván
chơi.
5.1. Nếu chưa đăng nhập thì kết thúc tiến trình.
5.2. Nếu đã đăng nhập thì tiếp tục bước 6.
Kết quả
Ghi chú


6. Hệ thống gửi kết quả cho Server.
Chuyển đến màn hình menu chính.
- Thời gian tối đa của mỗi ván chơi là 2 phút

GVHD: Ths. Võ Huỳnh Trâm

17

SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

Bảng I. 1. Đặc tả yêu cầu chức năng chơi ván mới
II.1.3.2.

Chức năng cài đặt trò chơi

Mã yêu cầu
Tên yêu cầu
Mức độ ưu tiên
Lợi ích
Chi phí
Rủi ro
Nội dung
Đối tượng sử dụng
Tiền điều kiện
Xử lý


REQ04
Cài đặt trò chơi
Mức 4
Mức 5
Mức 5
Mức 4
Tính năng này cho phép người dùng cài đặt độ khó và cài
đặt âm thanh cho trò chơi.
Người chơi đã có tài khoản hoặc người chơi tự do.
1. Để cài đặt trò chơi người dùng chọn nút “cài đặt” trong
màn hình menu chính.
2. Ứng dụng hiển thị giao diện cài đặt bao gồm:
- Combobox độ khó với các lựa chọn: khó, trung bình,
dễ, tùy chọn
- Nút bật/tắt âm thanh.
3. Người dùng điều chỉnh các thông số.
3.1. Nếu chọn độ khó là tùy chọn thì các thanh
cuộn hiện ra cho phép người dùng tùy chỉnh số
hàng, số cột, tỷ lệ hoa có mật trong một khoảng
giá trị cho phép.
4. Người dùng nhấn nút “Lưu”.

5. Ứng dụng cập nhật lại các giá trị cài đặt và quay về
menu chính.
Chuyển đến màn hình menu.
Kết quả
Tỷ lệ hoa không có mật phải <= 50%
Ghi chú
Với mỗi mức độ chơi (khó, trung bình, dễ) ứng dụng sẽ tự
thay đổi các thông số (số hàng, số cột, tỷ lệ hoa không có

mật) phù hợp, riêng mức độ tùy chọn cho phép người dùng
tự đặt các thông số trong một khoản giá trị cho phép.
Bảng I. 2. Bảng đặc tả chức năng cài đặt trò chơi

GVHD: Ths. Võ Huỳnh Trâm

18

SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

II.1.3.3.

Chức năng xếp hạng người chơi

Mã yêu cầu
Tên yêu cầu
Mức độ ưu tiên
Lợi ích
Chi phí
Rủi ro
Nội dung
Đối tượng sử dụng
Tiền điều kiện
Xử lý

REQ09
Xếp hạng người chơi

Mức 7
Mức 7
Mức 8
Mức 6
Đây là tính năng cho phép người dùng xem danh sách những
người chơi có số điểm cao nhất và thứ hạng của bản thân.
Người chơi có tài khoản đăng nhập
Người chơi đã đăng nhập vào ứng dụng
1. Để xem bảng xếp hạng người dùng chọn “bảng xếp
hạng” trong giao diện menu chính.
2. Hệ thống tiến hành giao tiếp với Server để lấy thông
tin.
2.1 Nếu trong quá trình giao tiếp có lỗi xảy ra thì
hiển thị thông báo “Lỗi giao tiếp với Server!” và
đi đến bước 5.

Kết quả
Ghi chú

3.

Ứng dụng hiển thị màn hình xếp hạng chứa các
thông tin: bảng xếp hạng 10 người chơi có số điểm
cao nhất (chứa các cột: thứ hạng, tên người chơi, số
điểm).

4.

Người dùng chọn nút “quay lại”.


5.
Kết thúc tiến trình.
Chuyển đến màn hình menu chính.

Bảng I. 3. Đặc tả chức năng xếp hạng người chơi
II.1.4. Các yêu cầu phi chức năng
- Hỗ trợ giao diện tiếng Việt thân thiện với người dùng.
- Các nút chức năng tổ chức trên form dễ dàng thao tác.
- Các thông báo phải ngắn gọn, súc tích, dễ hiểu.

GVHD: Ths. Võ Huỳnh Trâm

19

SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

-

Một số nút thay thế bằng những biểu tượng sinh động dễ hiểu.
Giao diện đẹp, thân thiện.

GVHD: Ths. Võ Huỳnh Trâm

20

SVTH: Nguyễn Quí Nghĩa



Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

II.2. CHƯƠNG II: THIẾT KẾ VÀ CÀI ĐẶT
II.2.1. Kiến trúc hệ thống
II.2.1.1. Thiết kế kiến trúc
Mô hinh Client – Server: là một mô hình nổi tiếng trong mạng
máy tính, được áp dụng rất rộng rãi. Ý tưởng của mô hình này là máy
con (đóng vai trò là máy khách) gửi một yêu cầu (request) để máy chủ
(đóng vai trò người cung ứng dịch vụ), máy chủ sẽ xử lý và trả kết quả
về cho máy khách.

Hình II. 1. Mô hình Client – Server
Ứng dụng mô hình Client – Server vào ứng dụng.
 Client: là Ứng dụng Ong tìm mật chạy trên ĐTDĐ của người dùng.
 Server: là một Webservice cung cấp các phương thức xử lý các yêu
cầu từ Client.
Request

Request

Ứng

WebService

Network
Data

Data
Truy vấn

(Hibemate)

CSDL

Hình II. 2. Mô hình Client – Server trong ứng dụng Ong tìm mật
Webservice (dịch vụ Web): là một hệ thống phần mềm được
thiết kế để hỗ trợ khả năng tương tác giữa các ứng dụng trên các máy
tính khác nhau thông qua mạng Internet. Giao diện chung và sự gắn kết
mô tả bằng XML. Dịch vụ Web là tài nguyên phần mềm có thể xác định
bằng địa chỉ URL, thực hiện các chức năng và đưa ra các thông tin người
dùng yêu cầu. Dịch vụ Web cho phép client và server tương tác được
với nhau ngay cả trong những môi trường khác nhau. Kiến trúc bao gồm
ba phần chính: SOAP (Simple Object Access Protocol), WSDL (Web
Service Description Language) và UDDI (Universal Description,

GVHD: Ths. Võ Huỳnh Trâm

21

SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

Discovery, and Integration). UDDI được sử dụng để đăng ký và khám
phá dịch vụ Web đã được miêu tả cụ thể trong WSDL. Giao tác UDDI
sử dụng SOAP để nói chuyện với UDDI server, sau đó các ứng dụng
SOAP yêu cầu một dịch vụ Web. Các thông điệp SOAP được gửi đi
chính xác bởi HTTP và TCP/IP.
II.2.1.2. Mô tả sự phân rã

Thông tin đồng bộ

Người dùng đăng nhập

Thông tin bảng xếp hạng

Thông tin điều kiện thống kê xếp hạng
Thông tin đăng ký
Thông tin điều kiện thống kê tài khoản

1

Thông tin tài khoản

Hệ thống ứng dụng Ong tìm
mật

Kết quả ván chơi
Thông tin cập nhật tài khoản

Thông tin cập nhật tài khoản
Thông tin tài khoản

Kết quả thống kê tài khoản
Thông tin bảng xếp hạng
Người dùng quản lý
Thông tin đồng bộ tài khoản

Hình II. 3. Sơ đồ DFD cấp 0


GVHD: Ths. Võ Huỳnh Trâm

22

SVTH: Nguyễn Quí Nghĩa


Đề tài: Ứng dụng Ong tìm mật trên nền tảng Android

Lịch sử

3

1.9
Thêm lịch sử
Kết quả ván chơi hợp lệ

1.7
2

Bảng xếp hạng : 1

Xem bảng xếp hạng ngày
hiện tại

1.8
Kiểm tra tính chính xác
của kết quả

Thông tin bảng xếp hạng

Kết quả ván chơi
1.5

Thông tin đăng ký

Người dùng đăng nhập

Kiểm tra hợp lệ
Thông tin đăng ký hợp lệ

1.10

Thông tin cập nhật tài khoản

Kiểm tra thông tin
cập nhật : 1

Thông tin tài khoản

1.2
Kiểm tra tài khoản
Thông tin cập nhật tài khoản hợp lệ
Thông tin đồng bộ

1.1

Thông tin đăng ký đã kiểm tra

Kiểm tra đăng nhập : 1


1.6
1

Đăng ký

1.11

Tài khoản : 1

Cập nhật thông tin tài khoản : 1

Hình II. 4. DFD cấp 1 của tác nhân người dùng đăng nhập
Bảng xếp hạng : 2

2

Thông tin điều kiện thống kê bảng xếp
hạng

1.3
Thống kê bảng xếp hạng

1.10
Thông tin cập nhật tài khoản

Thông tin bảng xếp hạng
Thông tin điều kiện thống kê tài khoản

Kiểm tra thông tin
cập nhật : 2


Người dùng quản lý

Thông tin tài khoản

Thông tin tài khoản hợp lệ
Thông tin đồng bộ

1.1
Kiểm tra đăng nhập : 2

1.4
Thống kê tài khoản

Kết quả thống kê tài khoản

1

Tài khoản : 2

1.11
Cập nhật thông tin tài khoản : 2

Hình II. 5. DFD cấp 1 của tác nhân người dùng quản lý

GVHD: Ths. Võ Huỳnh Trâm

23

SVTH: Nguyễn Quí Nghĩa



×