Tải bản đầy đủ

Quản lý thu chi trên điện thoại di động

VIỆN ĐẠI HỌC MỞ HÀ NỘI
KHOA CÔNG NGH
NGHỆ THÔNG TIN

SAÁÁDSADADASAD

QUẢN

THU
CHI
TRÊN
ĐIỆN
THOẠ
I DI
ĐỘNG

ĐỖ ANH TÀI

QUẢN
N LÝ THU CHI TRÊN ĐIỆN THOẠI DI ĐỘ
ỘNG

Chuyên ngành: Công ngh
nghệ thông tin

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC

Hà Nội - 2016


VIỆN ĐẠI HỌC MỞ HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN

ĐỖ ANH TÀI

QUẢN
N LÝ THU CHI TRÊN ĐIỆN THOẠI DI ĐỘ
ỘNG
Chuyên ngành: Công nghệ
ngh thông tin

Giảng
ng viên hhướng dẫn:
PGS.TS Đặng
ng Thành Phu

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC

Hà Nội - 2016


VIỆN ĐẠI HỌC MỞ HÀ NỘI

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

KHOA CÔNG NGHỆ THÔNG TIN

Độc lập - Tự do - Hạnh phúc
Hà Nội, ngày

tháng


năm 2016

NHIỆM VỤ CỦA ĐỒ ÁN TỐT NGHIỆP
Họ và tên: Đỗ Anh Tài

Giới tính: Nam

Ngày sinh: 08/05/1994

Nơi sinh: Nam Định

Chuyên ngành: Công nghệ Thông tin

Mã số: 12A10010058

Lớp hành chính: 1210A02
1. TÊN ĐỀ TÀI
Quản lý thu chi trên điện thoại di động
2. NHIỆM VỤ VÀ NỘI DUNG
- Nghiên cứu và tìm hiểu hệ quản trị cơ sở dữ liệu MySQL, ngôn ngữ PHP,
ngôn ngữ Java Core ứng dụng lập trình android.
- Khảo sát hệ thống của ứng dụng.
- Phân tích thiết kế hệ thống.
- Xây dựng chương trình bao gồm đầy đủ các tính năng cơ bản cho người
dùng như xem các khoản thu chi, tạo các khoản thu chi.
3. NGÀY GIAO NHỆM VỤ: 04 – 01 – 2016
4. NGÀY HOÀN THÀNH NHIỆM VỤ:
5. CÁN BỘ HƯỚNG DẪN: PGS.TS Đặng Thành Phu

GIẢNG VIÊN HƯỚNG DẪN

KHOA CÔNG NGHỆ THÔNG TIN



LỜI NÓI ĐẦU
1. Ý nghĩa thực tiễn:
Hiện nay, các thiết bị điện thoại thông minh smartphone ngày càng phát
triển và trở nên phổ biến với mọi người cũng như mọi tầng lớp trong xã
hội. Việc lựa chọn một chiếc điện thoại smartphone phù hợp với mỗi
người không phải là dễ. Tuy nhiên, việc lựa chọn cho mình một ứng dụng
phù hợp trên điện thoại smartphone lại đơn giản hơn rất nhiều. Giờ đây,
máy tính, sách báo, tử điển, nhật ký,... đều đã được tích hợp vào điện thoại
di động.
Trong thời kì công nghệ ngày càng phát triển, giá cả leo thang, việc chi
tiêu trong gia đình cần phản tỉ mỉ và chính xác. Những dự trù đầu tháng
nếu k có ghi ghép hàng ngày từ những việc chi tiêu nhỏ nhất thì đến cuối
tháng sẽ phát sinh nhiều vấn đề trong gia đình. Vì thế, cần phải ghi chép
lại bất cứ khi nào có thu chi. Tuy nhiên, không phải lúc nào ai cũng có thể
mang bên mình một cuốn sổ thu chi và một cái bút để ghi lại. Tóm lại, vấn
đề đặt ra là phải có một cuốn sổ thu chi tiện dùng có thể sử dụng mọi lúc
mọi nơi và lưu lại được đầy đủ thông tin chi tiêu của gia đình.
Với sự phát triển của điện thoại thông minh smartphone, ai đi đâu trong
người cũng có thể mang theo một chiếc điện thoại. Với nhu cầu đặt ra phải
có một cuốn sổ thu chi trong gia đình mà không phải ai lúc nào cũng có
thể mang theo, em đã tìm hiểu và đưa ra ý tưởng lập trình một ứng dụng
trên điện thoại smartphone, (với cầu hình ngày càng cao và giá thành ngày
càng hạ)để mọi người tiện lợi sử dụng ở bất cứ mọi nơi, mọi thời điểm. Đề
tài “Quảnlý thu chi trên điện thoại di động” của em sẽ xây dựng nhằm
giải quyết vấn đề tích hợp sổ tay quản lý thu chi của gia đình vào điện
thoại di động smartphone.
2. Mục tiêu của đồ án:
a. Mục ghi chép sẽ ghi chép lại tất cả các khoản thu chi phát sinh.
b. Mục tài khoản thống kê toàn bộ số dư tài khoản như sổ tiết kiệm, thẻ
ngân hàng, ví vợ chồng ... .


c. Mục báo cáo là hiển thị biểu đồ giữa thu và chi và có chế độ xem
theo ngày, tháng hoặc năm.
Ứng dụng sẽ liên tục gửi và nhận thông tin từ web server mỗi khi có 1
khoản thu chi nào đó. Những thông tin của gia đình sẽ được xác định bằng
một tài khoản dùng cho nhiều người dùng trong một gia đình. Từ tài khoản
chung đó có thể tạo thêm nhiều tài khoản cá nhân cho từng thành viên
trong gia đình để việc quản lý thu chi của từng cá nhân minh bạch và cụ
thể nhất.
3. Nội dung đồ án:
Đồ án được chia thành 5 phần chính
Chương 1. Khảo sát hệ thống
Chương 2: Tìm hiểu về hệ điều hành android
Chương 3. Phân tích hệ thống về chức năng
Chương 4. Phân tích hệ thống về dữ liệu
Chương 5. Xây dựng hệ thống

Sinh viên thực hiện
Đỗ Anh Tài


MỤC LỤC
CHƯƠNG I: KHẢO SÁT HỆ THỐNG ............................................................ 1
1. Mô tả bài toán .......................................................................................... 1
1.1

Định nghĩa ký hiệu sử dụng ............................................................... 2

1.2

Mô hình tiến trình nghiệp vụ .............................................................. 3

2. Biểu đồ hoạt động .................................................................................... 4
2.1

Định nghĩa kí hiệu sử dụng ................................................................ 4

2.2

Biểu đồ hoạt động .............................................................................. 5

CHƯƠNG II:TÌM HIỂU VỀ HỆ ĐIỀU HÀNH ANDROID, NGÔN NGỮ
PHP VÀ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU MYSQL NỀN TẢNG CÔNG
NGHỆ XÂY DỰNG ĐỀ TÀI ............................................................................ 9
2.1. Giới thiệu về hệ điều hành Android ......................................................... 9
2.2. Kiến trúc hệ điều hành Android ............................................................. 14
2.2.1. Linux kernel .................................................................................... 15
2.2.2. Libraries and android runtime.......................................................... 15
2.2.3. Application framework .................................................................... 16
2.2.4. Applications .................................................................................... 17
2.3. Giới thiệu về ngôn ngữ PHP ................................................................. 17
2.4 Hệ quản trị cơ sở dữ liệu MySQL .......................................................... 26
CHƯƠNG III: PHÂN TÍCH HỆ THỐNG VỀ CHỨC NĂNG ........................ 28
1. Sơ đồ phân rã chức năng ........................................................................ 28
1.1

Xác định chức năng chi tiết .............................................................. 28

1.2

Gom nhóm chức năng ...................................................................... 29

1.3

Sơ đồ chức năng............................................................................... 30

2. Sơ đồ luồng dữ liệu ................................................................................ 31
2.1 DFD mức khung cảnh ......................................................................... 31
2.2 DFD mức đỉnh..................................................................................... 32
2.3

DFD mức dưới đỉnh ......................................................................... 33


CHƯƠNG IV: PHÂN TÍCH HỆ THỐNG VỀ DỮ LIỆU ................................ 37
1. Xác định kiểu thực thể ........................................................................... 37
2. Xác định kiểu thuộc tính ........................................................................ 38
3. Xác định kiểu liên kết ............................................................................ 39
4. Mô hình quan hệ .................................................................................... 40
5. Đặc tả dữ liệu ......................................................................................... 41
CHƯƠNG V: XÂY DỰNG HỆ THÔNG ........................................................ 46
5.1. Sơ đồ hoạt động dữ liệu: ........................................................................... 46
5.2 Giao diện ứng dụng: ............................................................................... 47
5.2.1. Giao diện đăng nhập ........................................................................ 47
5.2.2. Giao diện đăng ký............................................................................ 49
5.2.3.Giao diện chọn người dùng: ............................................................. 51
5.2.4. Giao diện menu: .............................................................................. 53
5.2.5. Giao diện thu: .................................................................................. 55
5.2.6. Giao diện thêm mới thu: .................................................................. 57
5.2.7 Giao diện chi tiết khoản thu: ............................................................. 59
5.2.8 Giao diện thống kê ........................................................................... 61
5.2.9 Giao diện quản lý người dùng .......................................................... 63
KẾT LUẬN ..................................................................................................... 65
1. Mục tiêu của đồ án: ................................................................................ 65
2. Kết quả................................................................................................... 65
TÀI LIỆU THAM KHẢO ............................................................................... 66


DANH MỤC CÁC CHỮ VIẾT TẮT

STT Tên viết tắt

Tên đầy đủ

1

DATN

Đồ án tốt nghiệp

2

PTS

Adobe Photoshop

Chương trình xử lí ảnh

3

SQL

Structured Query

Hệ quản trị cơ sở dữ

Language

liệu tự do nguồn mở

4

CSDL

5

SDK

6

LTUD

Lập trình ứng dụng

7

R

Read

Đọc

8

C

Create

Tạo

9

U

Update

Chỉnh sửa

10

DFD

Data Flow Diagram

Mô hình đặc tả dữ liệu

Dịch ra tiếng việt

Cơ sở dữ liệu
Software

Bộ công cụ phát triển

Development Kit

phần mềm


DANH MỤC CÁC BẢNG
Bảng 3.1.1: Xác định kiểu thực thể

16

Bảng 3.1.2: Gom nhóm chức năng

17

Bảng 4.2: Xác định kiểu thực thể

25

Bảng 4.3: Xác định kiểu thuộc tính

26

Bảng 4.4: Xác định kiểu liên kết

27

Bảng 6.1: tblTaikhoan

29

Bảng 6.2: tblTaikhoancanhan

29

Bảng 6.3: tblThu

29

Bảng 6.4: tblChi

30

Bảng 6.5: tblVayno

30

Bảng 6.6: tblChovay

30

Bảng 6.7: tblCTThu

31

Bảng 6.8: tblCTChi

31

Bảng 6.9: tblCTVayno

32

Bảng 6.10: tblCTChovay

32


DANH MỤC CÁC HÌNH VẼ
Hình 1.2.2: Mô hình tiến trình nghiệp vụ

11

Hình 1.3.2.1: Biểu đồ hoạt động “Quản lý người dùng”

13

Hình 1.3.2.2: Biểu đồ hoạt động “Quản lý thu chi”

14

Hình 1.3.2.3: Biểu đồ hoạt động “Quản lý sổ vay nợ”

15

Hình 1.3.2.4: Biểu đồ hoạt động “Thống kê, báo cáo”

16

Hình 3.1.3: Sơ đồ phân rã chức năng

19

Hình 3.2.1: DFD mức khung cảnh

20

Hình 3.2.2: DFD mức đỉnh

21

Hình 3.2.3.1: Quản lý người dùng

22

Hình 3.2.3.2: Quản lý thu chi

23

Hình 3.2.3.3: Quán lý sổ vay nợ

24

Hình 3.2.3.4: Thống kê, báo cáo

25

Hình 4.5: Mô hình quan hệ

29


1

CHƯƠNG I: KHẢO SÁT HỆ THỐNG
1. Mô tả bài toán
Ứng dụng hướng tới đối tượng người dùng là một gia đình với 2 thành viên thu
chi chính là vợ chồng
Ứng dụng yêu cầu cần có một tài khoản đăng nhập chung cho một gia đình. Tài
khoản này sẽ do vợ hoăc chồng đăng ký, sau đó sẽ dựa vào tài khoản đó để tạo
tải khoản cho người còn lại
Với lần đăng nhập đầu tiên, ứng dụng sẽ yêu cầu người tạo tài khoản cá nhân
cho từng người. Sau khi đã tạo xong đầy đủ thông tin cho các tài khoản con, từ
lần đăng nhập tiếp theo, sau bước đăng nhập tài khoản chung, ứng dụng sẽ hiển
thị ra một dánh sách chọn tài khoản con và người dùng sẽ nhập mật khẩu cá
nhân của tài khoản con của mình để tiến hành bắt đầu tạo các khoản thu chi.
Tiếp theo, người dùng sẽ bắt đầu lựa chọn 1 trong 2 nhóm thu nhập hoặc chi tiêu
để tạo khoản. Tùy theo mục chọn mà người dùng sẽ đặt tiêu đề, nội dung và số
tiền ví dụ như tiền lương, tiền lãi... hoặc du lịch, ăn uống... .
Sau đó, ứng dụng sẽ trả về vị trí trước đó của ứng dụng là nhóm mục thu hay chi
vừa nhập lên dánh sách. Người dùng cũng có thể dễ dàng sửa lại mục vừa nhập
nếu nhập sai hoặc lỗi bằng cách nhấn giữ khoản đó và tiến hành sửa.
Ứng dụng có chức năng báo cáo giúp người dùng xem lại thông tin thu chi đã
nhập theo tuần hoặc theo tháng tùy theo từng người dùng. Chức năng báo cáo
còn đưa ra cho người dùng biểu đồ so sánh mức độ chi tiêu trong tuần, tháng
hoặc năm.
Bên cạnh đó, ứng dụng còn có chức năng sổ vay nợ ghi chép lại các khoản cho
vay/nợ để tiện cho người dùng theo dõi. Mỗi lần tạo 1 khoản vay nợ, người dùng
cần cung cấp thông tin của người vay/nợ, số tiền, ngày vay/nợ và ngày trả. Khi
gần tới hạn trả tiền, ứng dụng sẽ gửi đến người dùng thông báo để chuẩn bị trả
hoặc thu sao cho hợp lý.


2

1.1 Định nghĩa ký hiệu sử dụng
bộ phận>
phận>

năng 1>
1>

Bộ phận trong hệ thống

năng 2>
2>
............
............
năng n>
n>

Tác nhân tác động vào hệ thống

Luồng thông tin


3

1.2 Mô hình tiến trình nghiệp vụ

Hình 2.2: Mô hình tiến trình nghiệp vụ


4

2. Biểu đồ hoạt động
2.1 Định nghĩa kí hiệu sử dụng
Bắt đầu

Giấy tờ giao dịch

Chức năng

Kho

Dữ liệu vào kho

Luồng dữ liệu

Kết thúc

Kiểm tra


5

2.2 Biểu đồ hoạt động
2.2.1 Biểu đồ hoạt động “Quản lý người dùng”


6

3.2.2 Biểu đồ hoạt động “Quản lý thu chi”


7

3.2.3 Biểu đồ hoạt động “Quán lý sổ vay nợ”


8

3.2.4 Biểu đồ hoạt động “Thống kê, báo cáo”


9

CHƯƠNG II:TÌM HIỂU VỀ HỆ ĐIỀU HÀNH ANDROID, NGÔN NGỮ
PHP VÀ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU MYSQL NỀN TẢNG CÔNG
NGHỆ XÂY DỰNG ĐỀ TÀI
2.1. Giới thiệu về hệ điều hành Android
Android – hệ điều hành dành cho điện thoại di động[3]:
Android là hệ điều hành điện thoại di động mã nguồn mở miễn phí
do công ty Google phát triển dựa trên nền tảng của Linux. Android là
hệ điều hành gồm 12 triệu dòng code
Các ứng dụng không được phép truy cập đến dữ liệu của nhau, cũng
không được phép truy cậpđến dữ liệu của HĐH, trừ khi được chính
ứng dụng đó cung cấp
Các ứng dụng hỗ trợ khả năng giao tiếp với người dùng đến đâu là
do khả năng và thiết kế của người lập trình, còn bản thân Android đã
hỗ trợ đầy đủ các giao tiếp cho ứng dụng.
Android – hệ điều hành dành cho điện thoại di động được phát triển
bởi Google và ngày càng trở nên phổ biến với các hãng liên tục ra
mắt các mẫu điện thoại sử dụng Android.
Lịch sử phát triển của Android
Cách các nhà sản xuất điện thoại dùng Android là họ cho ra một
dòng điện thoại, lấy bản open source của Android về, chỉnh sửa lại
cho phù hợp với dòng điện thoại đó, rồi cài vào và tung ra thị trường.
Do đó các bản Android khác nhau được gọi là các bản Room khác
nhau của Android.
Thiết bị chuẩn của Android bao gồm 4 phím chính (cứng hoặc mềm)
là home, back, search và menu (iPhone chỉ có duy nhất phím Home).


10

-

Phím Home sẽ quay trở về màn hình home

-

Phím back quay lại màn hình trước đó

-

Phím search và menu sẽ tùy từng ứng dụng mà chúng sẽ có action

tương ứng.
Android được xây dựng trên nhân linux và được phân phối miễn phí.
Không giống như Windows mobile và Apple iPhone, tuy cả hai đều cung cấp
môi trường phát triển ứng dụng phong phú và đơn giản dễ tiếp cận nhưng
luôn có sự ưu tiên cho các ứng dụng mặc định có sẵn của hệ điều hành
(native applications). Với Android mọi ứng dụng đều được viết trên cùng
một tập API, thế nên không có sự phân biệt giữa các ứng dụng mặc định và
các ứng dụng của bên thứ ba. Người dùng hoàn toàn có thể thay thế mọi ứng
dụng mặc định bằng các ứng dụng yêu thích của mình, thậm chí ngay cả màn
hình thực hiện cuộc gọi mà màn hình nhà (home scream).

Hình 2.1 Quá trình phát triển của hệ điều hành Android

Các nhà phát triển ứng dụng cho Android dựa trên ngôn ngữ Java. Sự ra
mắt của Android vào ngày 5 tháng 11 năm 2007 gắn với sự thành lập liên


11

minh thiết bị cầm tay mã nguồn mở, bao gồm 78 công ty phần cứng và phần
mềm viễn thông nhằm mục đích tạo nên chuẩn mở cho điện thoại di động
trong tương lai. Google công bố hầu hết các mã nguồn Android theo bản cấp
phép Apache.

Hình 2.2. Các thành viên của liên minh di động mở
Các ứng dụng có sẵn trên Android
Một điện thoại Android thông thường sẽ đi kèm với một vài ứng dụng có
sẵn, bao gồm:
Một trình email tương thích với Gmail
Chương trình quản lý tin nhắn SMS
Chương trình quản lý thông tin cá nhân, bao gồm cả lịch làm việc,
danh bạ và được đồng bộ hóa với dịch vụ Google


12

Phiên bản thu gọn của Google Map cho điện thoại, bao gồm
StreetView, tìm kiếm địa chỉ, chỉ đường, tình trạng giao thông…
Trình duyệt Web dựa trên nhân Webkit.
Chương trình tán gẫu (Chat).
Trình đa phương tiện (chơi nhạc, xem phim…).
Android MarketPlace cho phép người dùng tải về và cài đặt các ứng
dụng mới.
Tất cả các ứng dụng có sẵn đều được viết bằng ngôn ngữ Java và sử
dụng Android SDK. Các dữ liệu về thông tin người dùng được các ứng dụng
có sẵn sử dụng như thông tin về danh bạ vẫn hoàn toàn có thể được sử dụng
bởi các ứng dụng của bên thứ ba. Tương tự vậy, ứng dụng của bạn hoàn toàn
có thể xử lý các sự kiện như các cuộc gọi đến, nhận một tin nhắn mới… thay
cho các ứng dụng có sẵn.
Androidsoftware development kit (SDK)
Bộ SDK của Android bao gồm mọi thứ cần thiết giúp bạn có thể lập
trình, debug, test ứng dụng Android.
Android API: Cốt lõi của bộ SDK là thư viện các hàm API và
Google cũng chỉ sử dụng bộ API này để xây dựng các ứng dụng có
sẵn cho Android.
Development tool: SDK bao gồm rất nhiều công cụ để giúp biên
dịch, sửa lỗi và hỗ trợ trong việc lập trình ứng dụng.
Android Emulator: Trình giả lập thiết bị chạy Android thực sự với
nhiều Skin thay thế, cực kì tiện lợi cho việc test ứng dụng Android
ngay trên máy tính mà không cần phải thông qua một thiết bị chạy
Android thực.
Tài liệu: SDK bao gồm một bộ tài liệu rất chi tiết, giải thích cặn kẽ
chính xác những gì bao gồm trong mỗi page, class cùng với cách sử


13

dụng chúng. Ngoài tài liệu về “code”, còn có những tài liệu dùng để
“getting started” và giải thích các nguyên tắc và cơ chế hoạt động
của ứng dụng trong Android.
Code mẫu: SDK bao gồm các ứng dụng mẫu đơn giản minh họa cho
các tính năng nổi bật trên Android, cũng như các ứng dụng demo
cách sử dụng các tính năng của bộ API.
Các thư viện của Android
Android cung cấp các gói API để phát triển ứng dụng. Sau đây là các
API mà tất cả các thiết bị Android đều tối thiểu phải hỗ trợ để giúp cho chúng
ta một cái nhìn tổng quát về thư viện này.
Android.util : Gói API lõi, chứa các class cấp thấp như container,
string formatter, XML parsing.
Android.os : Truy cập tới chức năng của hệ điều hành như : gởi nhận
tin nhắn, giao tiếp nội bộ giữa các ứng dụng, thời gian…
Android.graphics: Cung cấp các lớp liên quan tới xử lý đồ họa ở mức
thấp. Hỗ trợ các hàm cơ bản như vẽ điểm, vẽ miền, tô màu.. trên
khung canvas.
Android.text: Cung cấp các hàm phân tích và xử lý chuỗi.
Android.database: Cung cấp các lớp cấp thấp cần thiết để làm việc
với database.
Android.content: Dùng để quản lý các tài nguyên, các nội dung và
các gói.
Android.view: Views là lớp cha của mọi lớp giao diện người dùng.
Android.widget: Được thừa kế từ lớp View, bao gồm các lớp cơ bản
để xây dựng giao diện widget như: list, button, layout..
Android.map: Gói API cấp cao, dùng để truy cập tới các chức năng
của GoogleMap.


14

Android.app: Gói API cấp cao, bao gồm các Activity và Service –
hai lớp cơ sở cho mọi ứng dụng Android.
Android.telephony: Cung cấp cho bạn khả năng tương tác trực tiếp
với các chức năng cơ bản của một điện thoại như nghe, gọi, tin nhắn
Android.webkit: cung cấp một webView control trên nền webkit để
có thể nhúng ứng dụng, cùng với các API điều khiển cơ bản như
stop, refresh, cookieManager…
2.2. Kiến trúc hệ điều hành Android
Android gồm 4 thành phần:



Hệ điều hành (Linux Kernel).



Thư viện và các giao diện lập trình ứng dụng (Libraries and
Android Runtime).



Khung ứng dụng (Application Framework).



Ứng dụng (Applications).

Mô hình sau (Hình 2.3) thể hiện một cách tổng quát các thành phần của
hệ điều hành Android. Mỗi phần sẽ được đặc tả một cách chi tiết dưới đây.


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×