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

HỆ THỐNG THỐNG KÊ SỐ LIỆU TRÊN NHIỀU LĨNH VỰC

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.2 MB, 140 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC NÔNG LÂM TP HCM
KHOA CÔNG NGHỆ THÔNG TIN

LUẬN VĂN TỐT NGHIỆP
HỆ THỐNG THỐNG KÊ SỐ LIỆU
TRÊN NHIỀU LĨNH VỰC

Ngành
Niên khoá
Lớp
Sinh viên thực hiện

: Công nghệ thông tin
:2008-2012
:DH08DT
:Hồ Thị Cẩm Nhung
Phạm Phương Kiều

TP.HỒ CHÍ MINH, tháng 3 năm 2013


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC NÔNG LÂM TP HCM
KHOA CÔNG NGHỆ THÔNG TIN

LUẬN VĂN TỐT NGHIỆP
HỆ THỐNG THỐNG KÊ SỐ LIỆU
TRÊN NHIỀU LĨNH VỰC

Giáo viên hướng dẫn:



Sinh viên thực hiện:

Ths. Phan Võ Minh Thắng

Hồ Thị Cẩm Nhung
Phạm Phương Kiều


CÔNG TRÌNH HOÀN TẤT TẠI
TRƯỜNG ĐẠI HỌC NÔNG LÂM TP HỒ CHÍ MINH

Cán bộ hướng dẫn: Thạc sỹ Phan Võ Minh Thắng

Cán bộ phản biện: Thạc sỹ Lê Phi Hùng

Luận văn kỹ sư được bảo vệ tại HỘI ĐỒNG CHẤM LUẬN VĂN KỸ SƯ TRƯỜNG ĐẠI
HỌC NÔNG LÂM TP HỒ CHÍ MINH ngày 12 tháng 03 năm 2013


Bộ Giáo Dục và Đào Tạo

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

Trường Đại học Nông Lâm TP HCM

Độc Lập - Tự Do - Hạnh Phúc

NHIỆM VỤ LUẬN VĂN KỸ SƯ


Họ tên sinh viên: HỒ THỊ CẨM NHUNG

Giới tính: Nữ - Nơi sinh: ĐăkLăk
Ngày sinh: 02-10-1990

PHẠM PHƯƠNG KIỀU

Giới tinh: Nữ - Nơi sinh: Bình Định
Ngày sinh: 25-04-1990

I.
II.

TÊN ĐỀ TÀI: Hệ thống thống kê số liệu trên nhiều lĩnh vực
NHIỆM VỤ VÀ NỘI DUNG

Từ những dữ liệu số thu thập được, xử lý, trích lọc để tạo ra các thông tin có ích, kèm
theo đó là dữ liệu thống kê và chi tiết. Xây dựng trang web có thể bán các thông tin có
được và khách hàng sẽ thanh toán bằng điểm mà khách hàng đã có. Trang web cung cấp
các chức năng mua bán điểm, thông tin, quản lý thông tin cá nhân,..cho khách hàng, đồng
thời cung cấp các chức năng quản trị hệ thống cho người quản trị. Trang web tương tác
nhanh, tiện dụng cho người dùng
Nội dung nghiên cứu: nghiên cứu bộ công cụ SSIS để xử lý dữ liệu, tìm hiểu ngôn ngữ
lập trình web PHP và Yii framework để xây dựng trang web. Tìm hiểu script để tạo mã
nhúng cung cấp thông tin từ xa.
III. NGÀY GIAO NHIỆM VỤ: 01–09-2012
IV. NGÀY HOÀN THÀNH NHIỆM VỤ: 12-03-2012
V. HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: Thạc sỹ Phan Võ Minh Thắng
Ngày / /


Ngày

/ /

CÁN BỘ HƯỚNG DẪN

CHỦ NHIỆM CHUYÊN NGÀNH

Ngày / /
KHOA CNTT


LỜI CẢM ƠN
Lời cảm ơn đầu tiên, chúng con xin gởi đến cha mẹ lời ghi ơn sâu
sắc, những người đã sinh ra và dạy bảo chúng con trưởng thành đến
ngày hôm nay.
Chúng em xin chân thành cảm ơn các thầy cô khoa Công nghệ thông
tin trường Đại học Nông lâm TP. HCM, với những kiến thức quý báu và
sự nhiệt huyết, tận tụy mà thầy cô đã truyền đạt cho chúng em trong
suốt 4 năm học.
Đặc biệt, chúng em xin cảm ơn thầy Phan Võ Minh Thắng đã tận
tình hướng dẫn chúng em suốt thời gian qua để chúng em hoàn thành
luận văn này.
Mặc dù chúng em đã cố gắng hoàn thành tốt luận văn trong phạm
vi và khả năng cho phép nhưng chắc chắn sẽ không tránh khỏi những
thiếu sót nhất định. Chúng em kính mong nhận được sự cảm thông và
tận tình chỉ bảo của quý thầy cô và các bạn.


DANH SÁCH CHỮ VIẾT TẮT

Yii
SSIS
ELT
BIDS
OOP
MVC
DAO
RPS
CRUD
CSDL
DBMS

GVHD:Ths. Phan Võ Minh Thắng

Yes It Is
SQL Server Intergration Services
Extract Load Transform
Business Intelligence Development Studio
Object Oriented Programing
Model View Controller
Data Access Object
Request PerSecond
CreatingReadingUpdatingDeleting
Cơ Sở Dữ Liệu
Database Manager System

i

SVTH: Hồ Thị Cẩm Nhung
Phạm Phương Kiều



TÓM TẮT
Một số liệu thống kê chính xác có thể hỗ trợ đưa ra quyết định quan trọng
giúp ích cho nhiều cá nhân và tập thể.Vì vậy việc tập hợp số liệu, tạo ra số liệu
tổng hợp, thống kê rất hữu ích đối với nhiều người.Trên thực tế, số liệu tồn tại
ở mọi nơi nhưng vẫn chưa được sử dụng tối đa lợi ích, các số liệu còn tồn tại
riêng lẻ, chưa được tập hợp lại để tạo thành một thể thống nhất. Đó là lý do vì
sao cần ra đời một hệ thống có thể tập hợp nhiều con số riêng lẻ để có thể tạo
ra một thông tin số liệu có tính thống kê, đáp ứng được nhu cầu của nhiều cá
nhân, tập thể, và tận dụng được hết lợi ích của những con số riêng lẻ.
Chúng em đã được học và biết rất nhiều về Java trên ghế nhà trường.Luận
văn tốt nghiệp là một cơ hội tốt để chúng em có thể thử thách bản thân mình
bước vào một hướng mới, đó là lập trình web với ngôn ngữ PHP.Việc lập trình
một hệ thống hoàn thiện bằng PHP thuần mất rất nhiều thời gian, vì vậy chúng
em đã chọn lựa xây dựng hệ thống bằng một framework của PHP. Sau thời
gian tìm hiểu về đặc điểm, ưu nhược điểm của một số PHP theo nhiều ý kiến
khác nhau, chúng em nhận thấy Yii framework là sự lựa chọn hợp lý để chúng
em hoàn thành luận văn tốt nghiệp của mình.
Cùng với sự giúp đỡ tận tình của giảng viên hướng dẫn-thầy Phan Võ Minh
Thắng, sau thời gian thực hiện luận văn, chúng em đã có thể hiểu rõ hơn về
kiến thức một số môn học đã được học trước đó, biết cách làm việc với
PHP,Yii framework và rút ra được nhiều bài học quý bàu cho bản than.

GVHD:Ths. Phan Võ Minh Thắng

ii

SVTH: Hồ Thị Cẩm Nhung
Phạm Phương Kiều



MỤC LỤC
DANH SÁCH CHỮ VIẾT TẮT.................................................................................. i 
TÓM TẮT .................................................................................................................. ii 
MỤC LỤC..................................................................................................................iii 
DANH MỤC CÁC HÌNH ........................................................................................ vi 
DANH MỤC CÁC BẢNG .....................................................................................viii 
1  Chương 1 ............................................................................................................. 1 
MỞ ĐẦU .................................................................................................................... 1 
1.1  Lý do chọn đề tài ........................................................................................... 1 
1.2  Phạm vi nghiên cứu ....................................................................................... 2 
1.3  Mục đích nghiên cứu ..................................................................................... 2 
1.4  Bố cục luận văn ............................................................................................. 2 
2  Chương 2 ............................................................................................................. 4 
TỔNG QUAN ............................................................................................................. 4 
2.1  Khảo sát các hệ thống tương tự ..................................................................... 4 
2.1.1  Khảo sát hệ thống ....................................................... 4 
2.1.2  Khảo sát hệ thống .............................................. 6 
2.1.3  Kết luận khảo sát ..................................................................................... 6 
2.2  Tổng quan về Yii framework ........................................................................ 7 
2.2.1  PHP Framework là gì? ........................................................................... 7 
2.2.2  Tại sao phải sử dụng framework? ........................................................... 7 
2.2.3  Nguyên nhân chọn yii framework để xây dựng hệ thống ....................... 8 
3  Chương 3 ............................................................................................................. 9 
NỘI DUNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU ................................................... 9 
3.1  Phương pháp nghiên cứu ............................................................................... 9 
3.2  Giới thiệu về PHP .......................................................................................... 9 
3.3  Giới thiệu Yii Framework ........................................................................... 10 
3.3.1  Lịch sử phát triển ................................................................................... 11 

3.3.2  Ưu điểm của Yii framework .................................................................. 11 
3.3.3  Nhược điểm của Yii Framework ........................................................... 13 
3.3.4  Làm việc với Yii .................................................................................... 13 
3.3.5  Yii code generator-gii ............................................................................ 21 
3.3.6  Mô hình MVC trong Yii........................................................................ 25 
3.3.7  Wiget trong Yii ...................................................................................... 27 
3.3.8  Module................................................................................................... 27 
3.4  Công cụ thao tác dữ liệu SSIS ..................................................................... 28 
4  Chương 4 ........................................................................................................... 38 
PHÂN TÍCH VÀ THIẾT KẾ .................................................................................... 38 
4.1  Phát biểu bài toán ........................................................................................ 38 
4.2  Yêu cầu chức năng ...................................................................................... 38 
4.2.1  Người dùng chung ................................................................................. 38 
4.2.2  Super Admin.......................................................................................... 40 
4.2.3  Admin .................................................................................................... 42 
4.2.4  Khách hàng ............................................................................................ 45 
GVHD:Ths. Phan Võ Minh Thắng

iii

SVTH: Hồ Thị Cẩm Nhung
Phạm Phương Kiều


4.3  Yêu cầu phi chức năng ................................................................................ 48 
4.3.1  Giao diện ............................................................................................... 48 
4.3.2  Bảo mật.................................................................................................. 49 
4.3.3  Hiệu suất làm việc ................................................................................. 49 
4.4  Use case ....................................................................................................... 50 
4.4.1  Xác định actor, use-case ........................................................................ 50 

4.4.2  Mô hình use-case ................................................................................... 53 
4.4.3  Đặc tả use-case ...................................................................................... 54 
4.4.4  Đăng kí .................................................................................................. 54 
4.4.5  Đăng nhập.............................................................................................. 56 
4.4.6  Đăng xuất .............................................................................................. 58 
4.4.7  Quản lý thông tin cá nhân...................................................................... 60 
4.4.8  Lấy lại mật khẩu .................................................................................... 62 
4.4.9  Tìm kiếm ............................................................................................... 64 
4.4.10  Mua điểm ............................................................................................... 67 
4.4.11  Liên hệ ................................................................................................... 69 
4.4.12  Mua thông tin ........................................................................................ 71 
4.4.13  Xem thông tin đã mua ........................................................................... 73 
4.4.14  Lấy mã nhúng ........................................................................................ 75 
4.4.15  Xem lịch sử giao dịch ............................................................................ 77 
4.4.16  Thêm admin ........................................................................................... 79 
4.4.17  Quản lý người dùng ............................................................................... 81 
4.4.18  Quản lý hóa đơn mua điểm ................................................................... 84 
4.4.19  Quản lý mua thông tin ........................................................................... 87 
4.4.20  Quản lý liên hệ ...................................................................................... 90 
4.4.21  Thêm thông tin ...................................................................................... 92 
4.4.22  Quản lý thông tin ................................................................................... 94 
4.4.23  Báo cáo .................................................................................................. 97 
4.5  Thiết kế hệ thống ....................................................................................... 100 
4.5.1  Lược đồ lớp miền ................................................................................ 100 
4.5.2  Kiến trúc hệ thống ............................................................................... 100 
4.5.3  Kiến trúc phần mềm ............................................................................ 102 
4.5.4  Kiến trúc server ................................................................................... 103 
4.5.5  Một số giao diện hệ thống ................................................................... 103 
4.6  Vấn đề và phương pháp giải quyết ............................................................ 107 
4.6.1  Sử dụng javascript tạo mã nhúng ........................................................ 107 

4.6.2  Load dữ liệu từ cơ sở dữ liệu............................................................... 109 
4.6.3  Tự động load bảng dữ liệu không thông qua model ........................... 111 
4.6.4  Wiget và hiển thị nội dung .................................................................. 112 
4.6.5  Generate code bằng Yii code generator-gii ......................................... 114 
4.6.6  Phân quyền hệ thống ........................................................................... 115 
5  Chương 5 ......................................................................................................... 117 
KẾT QUẢ ĐẠT ĐƯỢC VÀ HƯỚNG PHÁT TRIỂN ........................................... 117 
5.1  Kết quả đạt được........................................................................................ 117 
5.2  Những điều chưa làm được ....................................................................... 119 
GVHD:Ths. Phan Võ Minh Thắng

iv

SVTH: Hồ Thị Cẩm Nhung
Phạm Phương Kiều


5.3  Hướng phát triển ........................................................................................ 119 
TÀI LIỆU THAM KHẢO....................................................................................... 120 
PHỤ LỤC A ............................................................................................................ 121 
  Đối với khách hàng .......................................................................................... 121 
  Đối với admin .................................................................................................. 124 

GVHD:Ths. Phan Võ Minh Thắng

v

SVTH: Hồ Thị Cẩm Nhung
Phạm Phương Kiều



DANH MỤC CÁC HÌNH
Hình 3-1 So sánh hiệu suất làm việc của các PHP framework ..................................13 
Hình 3-2 Kiểm tra tương thích Yii với máy chủ ........................................................14 
Hình 3-3 Giao diện trang chủ ứng dụng demo ..........................................................15 
Hình 3-4 Các cấu trúc tĩnh của 1 ứng dụng Yii .........................................................17 
Hình 3-5 Nhập mật khẩu để vào trang Yii Code Generator ......................................22 
Hình 3-6 Màn hình trang Yii Code Generator ...........................................................22 
Hình 3-7 Màn hình tạo lớp model ..............................................................................23 
Hình 3-8 Màn hình tạo controller ..............................................................................24 
Hình 3-9 Công việc cụ thể của 1 ứng dụng Yii khi nó được xử lý bởi yêu cầu người
dùng ............................................................................................................................25 
Hình 3-10 Tạo project SSIS mới................................................................................29 
Hình 3-11 Một project SSIS rỗng ..............................................................................30 
Hình 3-12 Thiết lập kết nối trong SSIS .....................................................................32 
Hình 4-1 Các actor của hệ thống................................................................................50 
Hình 4-2 Các usecase của actor Người dùng .............................................................51 
Hình 4-3 Các usecase của actor Khách hàng .............................................................52 
Hình 4-4 Các usecase của actor Admin .....................................................................53 
Hình 4-5 Các usecase của actor Super Admin ...........................................................53 
Hình 4-6 Mô hình usecase .........................................................................................54 
Hình 4-7 Activity Đăng Kí.........................................................................................55 
Hình 4-8 Activity Đăng nhập .....................................................................................57 
Hình 4-9 Activity Đăng xuất......................................................................................59 
Hình 4-10 Activity Quản lý thông tin cá nhân ...........................................................60 
Hình 4-11 Activity Lấy lại mật khẩu .........................................................................63 
Hình 4-12 Activity Tìm kiếm ....................................................................................65 
Hình 4-13 Activity Mua điểm ....................................................................................67 
Hình 4-14 Activity Liên hệ ........................................................................................70 
Hình 4-15 Activity Mua thông tin .............................................................................72 

Hình 4-16 Activity Xem thông tin đã mua ................................................................74 
Hình 4-17 Activity Lấy mã nhúng .............................................................................76 
Hình 4-18 Activity Xem lịch sử giao dịch .................................................................77 
Hình 4-19 Activity Thêm admin ................................................................................79 
Hình 4-20 Activity Quản lý người dùng ....................................................................81 
Hình 4-21 Activity Quản lý hóa đơn mua điểm.........................................................85 
Hình 4-22 Activity Quản lý thông tin ........................................................................88 
Hình 4-23 Activity Quản lý liên hệ............................................................................91 
Hình 4-24 Activity Thêm thông tin ...........................................................................93 
Hình 4-25 Activity Quản lý thông tin ........................................................................95 
Hình 4-26 Activity Báo cáo .......................................................................................98 
Hình 4-27 Mô hình lớp miền ...................................................................................100 
Hình 4-28 Kiến trúc hệ thống ..................................................................................101 
Hình 4-29 Kiến trúc phần mềm ...............................................................................102 
Hình 4-30: Kiến trúc server .....................................................................................103 
GVHD:Ths. Phan Võ Minh Thắng
vi
SVTH: Hồ Thị Cẩm Nhung
Phạm Phương Kiều


Hình 4-31 Màn hình trang chủ .................................................................................104 
Hình 4-32 Màn hình trang admin.............................................................................104 
Hình 4-33 Màn hình trang xem thông tin ................................................................105 
Hình 4-34 Màn hình trang xem dữ liệu thông tin đã mua .......................................105 
Hình 4-35 Màn hình trang lấy mã nhúng .................................................................106 
Hình 4-36 Màn hình trang quản lý thông tin ...........................................................106 
Hình 4-37 Màn hình trang tạo thông tin mới ...........................................................107 
Hình 4-38 Chọn cột hiển thị trong bảng dữ liệu ......................................................113 
Hình 4-39 Back to top ..............................................................................................114 

Hình 4-40 Tool tip cho nút mua thông tin ...............................................................114 
Hình 4-41 Chọn định dạng file tải về.......................................................................114 

GVHD:Ths. Phan Võ Minh Thắng

vii

SVTH: Hồ Thị Cẩm Nhung
Phạm Phương Kiều


DANH MỤC CÁC BẢNG
Bảng 1 Các quản lý kết nối trong SSIS......................................................................... 31 
Bảng 2 SSIS Control Flow Task ................................................................................... 34 
Bảng 3 SSIS maintenance plan tasks ............................................................................ 34 
Bảng 4 SSIS containers ................................................................................................. 35 
Bảng 5 Data Flow source .............................................................................................. 35 
Bảng 6 Chuyển đổi dữ liệu ........................................................................................... 37 
Bảng 7 Dữ liệu đích ...................................................................................................... 37 

GVHD:Ths. Phan Võ Minh Thắng

viii

SVTH: Hồ Thị Cẩm Nhung
Phạm Phương Kiều


Hệ thống thống kê số liệu trên nhiều lĩnh vực  2013
1


Chương 1

MỞ ĐẦU
1.1 Lý do chọn đề tài
 Thực trạng
Quyết định của một cá nhân, một nhà lãnh đạo có ảnh hưởng rất lớn và có thể
ảnh hưởng đến sự sống còn của tổ chức, doanh nghiệp. Một quyết định cần có căn
cứ chính xác và đầy đủ, những thông tin đó cần có tính khách quan cao và phải được
thống kê trên số lượng lớn.
Vì vậy những con số thống kê rất quan trọng, có ý nghĩa rất lớn đối với nhiều
người, nhiều tổ chức. Nhưng hiện nay trên thực tế lại chưa có nhiều nơi thực hiện
việc thống kê các con số chính xác.
 Nhu cầu
Cần ra đời một hệ thống đáp ứng được nhu cầu về số liệu thống kê hiện nay.Hệ
thống có thể có thể lưu trữ một lượng dữ liệu cực lớn và cần có tính chính xác cao,
cung cấp đầy đủ thông tin thống kê và chi tiết để đáp ứng được nhu cầu về cách nhìn
tổng quan cũng như cụ thể của người dùng.
Cần ra đời một hệ thốngcó thể lưu trữ một lượng dữ liệu cực lớn, và chi tiết được
tập hợp, tổng hợp từ các trang nguồn khác, nguồn dữ liệu được bảo đảm.Cung cấp
thông tin chính xác, dễ dàng truy xuất, tìm kiếm dữ liệu nhanh.Hỗ trợ plugin cập
nhật thông tin liên tục đến từng thành viên.Giao diện dễ tương tác, sử dụng. Hỗ trợ
xuất ra các file PDF, excel…
 Bài toán đặt ra
Nhận thấy được nhu cầu đó, chúng em quyết định xây dựng một hệ thống có thể
cung cấp cho người dùng nhiều nhất có thể những thông tin số liệu thống kê cũng
như cụ thể nhằm hỗ trợ ra quyết định cho người dùng.Hệ thống sẽ cập nhật thông tin
nhanh nhất và kịp thời nhất để có thể nắm bắt tình hình trước thời đại công nghệ
thông tin này. Người dùng sẽ có thể mua điểm của hệ thống qua các hình thức thanh


GVHD:Ths. Phan Võ Minh Thắng

1

SVTH: Hồ Thị Cẩm Nhung
Phạm Phương Kiều


Hệ thống thống kê số liệu trên nhiều lĩnh vực  2013
toán tiện lợi nhất và dùng điểm đó để mua thông tin dữ liệu từ hệ thống
1.2 Phạm vi nghiên cứu
 Thu thập dữ liệu thật trên nhiều lĩnh vực
 Thiết kế & tổ chức lưu trữ dữ liệu với quy mô lớn.
 Tìm hiểu ngôn ngữ PHP và Yii Framework
 Các bộ thư viện PHP & JavaScript hỗ trợ.
 Kỹ thuật tìm kiếm, truy xuất & trích lọc dữ liệu linh hoạt.
 Tạo đối tượng nhúng cập nhật thông tin từ xa
 Tìm hiểu tạo trang web đa ngôn ngữ
 Phân tích lược đồ usecase hệ thống, phân tích kiến trúc phần mềm và kiến
trúc hệ thống từ đó tiến hành phát triển phần mềm.
 Triển khai hệ thống chạy online
1.3 Mục đích nghiên cứu
 Xử lý dữ liệu, làm sạch dữ liệu sau khi thu thập được
 Trích lọc, xử lý dữ liệu để lấy ra được những thông tin có ích, trả lời được
những câu hỏi đã đặt ra
 Sử dụng PHP Yii framework để xây dựng trang web, bán thông tin dữ liệu đã

 Tạo đối tượng nhúng cung cấp cho người dùng để người dùng có thể truy cập
thông tin từ xa
1.4 Bố cục luận văn

CHƯƠNG 1: MỞ ĐẦU
Trình bày sự cần thiết của đề tài, lý do chọn đề tài, mục tiêu nghiên cứu, nội
dung nghiên cứu và cấu trúc của khóa luận.
CHƯƠNG 2: TỔNG QUAN
Trình bày kết quả khảo sát các hệ thống tương tự, từ đó rút ra được kết luận cho
bài toán. Giới thiệu tổng quan về Yii framework
CHƯƠNG 3: NỘI DUNG NGHIÊN CỨU

GVHD:Ths. Phan Võ Minh Thắng

2

SVTH: Hồ Thị Cẩm Nhung
Phạm Phương Kiều


Hệ thống thống kê số liệu trên nhiều lĩnh vực  2013
Giới thiệu, phân tích và hướng dẫn sử dụng PHP, Yii framework và bộ công cụ
SSIS
CHƯƠNG 4: PHÂN TÍCH VÀ THIẾT KỂ
Trình bày phát biểu bài toán, nghiệp vụ hệ thống, yêu cầu chức năng, phi chức
năng, mô hình usecacse, đặc tả usecase, kiến trúc hệ thống, kiến trúc phần mềm,
lược đồ lớp miền, và một số hình ảnh của hệ thống
CHƯƠNG 5: KẾT QUẢ ĐẠT ĐƯỢC VÀ HƯỚNG PHÁT TRIỂN
Trình bày kết quả đạt đượcvề mặt cá nhân và hệ thống sau quá trình thực hiện đề
tài, kết luận về công nghệ sử dụng. Nêu ra những điều chưa làm được, từ đó đưa ra
hướng phát triền cho hệ thống

GVHD:Ths. Phan Võ Minh Thắng


3

SVTH: Hồ Thị Cẩm Nhung
Phạm Phương Kiều


Hệ thống thống kê số liệu trên nhiều lĩnh vực  2013
2 Chương 2

TỔNG QUAN
2.1 Khảo sát các hệ thống tương tự
2.1.1

Khảo sát hệ thống

Đây là trang web của cục thống kê quốc tế, bao gồm các thống kê trên nhiều lĩnh
vực, dữ liệu thống kê của nhiều nước trên thế giới. Trang web liên kết với các trang
web thống kê của các nước
2.1.1.1

Đối trượng các hệ thống quản lý

Hệ thống chứa hơn 60 triệu dữ liệu
 Nguồn dữ liệu:
-

Các dữ liệu thống kê từ các khu vực, các nước

-


Tập hợp dữ liệu từ các tổ chức của Liên Hiệp Quốc như: Tổ Chức Nông

Nghiệp Và Lương Thực, Tổ Chức Lao Động Quốc Tế, Quỹ Tiền Tệ Quốc Tế, Liên
Minh Viễn Thông Quốc Tế, Chương Trình Phối Hợp Của Liên Hiệp Quốc Về
HIV/AIDS, Ngân Hàng Quốc Tế, Viện Thống Kê Quốc Tế UNESCO, Quỹ Nhi
Đồng Quốc Tế, Chương Trình Phát Triển Liên Hiệp Quốc, …

 Hiển thị dữ liệu:
-

Bảng dữ liệu

-

Tải về với các định đạng khác nhau( PDF, EXCEL …)

 Quản lý dữ liệu trên view
-

Quản lý dữ liệu hiểu thị theo dạng cây phân loại theo từng lĩnh vực

-

Dữ liệu là tĩnh được kết xuất sẵn

 Người dùng: cộng đồng người dùng toàn cầu như
-

Các nhà phân tích, nhà sản xuất


GVHD:Ths. Phan Võ Minh Thắng

4

SVTH: Hồ Thị Cẩm Nhung
Phạm Phương Kiều


Hệ thống thống kê số liệu trên nhiều lĩnh vực  2013
-

Các nhà báo, sinh viên, và cộng đồng người dùng

2.1.1.2

Chức năng mà hệ thống hỗ trợ

-

Tìm kiếm thông tin theo từ khóa.

-

Tìm kiếm nâng cao

-

Tìm kiếm theo lĩnh vực

-


Hiển thị thông tin theo yêu cầu hiển thị

-

Tìm thông tin theo bảng thông tin có sẵn được gom theo nhóm

-

Hệ thống hiểu thị các thông tin dưới dạng bảng

-

Hỗ trợ Plugin cho firefox

-

Đưa vào iGoogle dưới dạng Gadget

2.1.1.3

Công nghệ mà hệ thống đó dùng

Sử dụng ASP để phát triển web
Sử dụng công nghệ điện toán đám mây của Microsoft trên nền tảng Windown
Azure
2.1.1.4

Đánh giá điểm mạnh điểm yếu( hỗ trợ biểu đồ, hỗ trợ bộ lọc, dữ


liệu chết dưới dạng PDF, dữ liệu sống kết xuất dưới dạng PDF)
 Điểm yếu của hệ thống
-

Hệ thống có chức năng tìm kiếm nhưng bị hạn chế bởi từ khóa khi người

dùng nhập vào. Các từ khóa này chỉ được chấp nhận khi nhập vào các từ khóa như
trong bảng thuật ngữ mà hệ thống cung cấp( có thể kết hợp nhiều thuật ngữ).
-

Khi tìm kiếm nâng cao thì thể hệ thống sẽ đưa người dùng đến với các trang

của các tổ chức trực tiếp quản lý thông tin mà người tìm kiếm yêu cầu.
-

Biểu đồ, đưa dữ liệu vào GIS không được thể hiện trực tiếp trên trang

mà sử dụng từ các trang ,
o và các trang này sử dụng dữ liệu từ để tạo lập
bản đồ…
 Điểm mạnh của hệ thống

GVHD:Ths. Phan Võ Minh Thắng

5

SVTH: Hồ Thị Cẩm Nhung
Phạm Phương Kiều



Hệ thống thống kê số liệu trên nhiều lĩnh vực  2013
-

Việc tìm kiếm được hỗ trợ khá nhiều từ tìm kiếm thông thường đến tìm kiếm

nâng cao. Và còn hỗ trợ các thông tin đã được lọc sẵn( chức năng “explorer”).
-

Biểu diễn dữ liệu: dữ liệu được gom theo nhóm: theo năm, theo quốc

gia…khi hiển thị
-

Truy cập: hỗ trợ cho phép người dùng truy cập một lượng lớn lên đến 50000

dữ liệu cùng một lúc
-

Cách thức hiểu thị bản dự liệu đa dạng tùy chỉnh theo mục đích người xem

2.1.2

Khảo sát hệ thống

Hệ thống thông kê số liệu tổng cục thống kê Việt Nam
-

Dữ liệu tĩnh, chỉ tìm kiếm theo đơn vị thời gian

-


Lượng dữ liệu ít, đa số dữ liệu đã được tổng hợp được từ các địa phương và

dữ liệu khá tổng quát, không chi tiết
-

Dữ liệu được quản lý theo đơn vị thời gian

2.1.3

Kết luận khảo sát

Các hệ thống đã cung cấp được nhiều chức năng có ích cho người dùng.Cung
cấp được một lượng lớn dữ liệu. Nhưng còn một số hạn chế đã nêu ở phần điểm yếu
của hệ thống, và hệ thống thống kê số liệu của tổng cụ Việt Nam cũng có một số hạn
chế tương tự
Hệ thống chưa cung cấp được mã nhúng giúp người dùng xem thông tin từ xa
Từ đó cần xây dựng một hệ thống có thể cung cấp các chức năng tương tự, tổng
hợp được các thông tin dữ liệu thống kê có tính khả dụng cao.Xây dựng hệ thống
trang web có thể đưa thông tin tổng hợp được đến với người dùng, cho phép người
dùng có thể thao tác trực tiếp được với dữ liệu dạng bảng. Trang web còn cung cấp
chức năng quản trị cho người dùng là người quản trị để quản trị hệ thống và tài
khoản khách hàng. Hệ thống cung cấp cho khách hàng đoạn mã nhúng để khách
hàng có thể truy cập thông tin từ xa.

GVHD:Ths. Phan Võ Minh Thắng

6

SVTH: Hồ Thị Cẩm Nhung

Phạm Phương Kiều


Hệ thống thống kê số liệu trên nhiều lĩnh vực  2013
2.2 Tổng quan về Yii framework
2.2.1

PHPFramework là gì?

PHP frameworks làm cho sự phát triển của những ứng dụng web viết bằng ngôn
ngữ PHP trở nên trôi chảy hơn, bằng cách cung cấp 1 cấu trúc cơ bản để xây dựng
những ứng dụng đó. Hay nói cách khác, PHP framework giúp đỡ lập trình viên thúc
đẩy nhanh chóng quá trình phát triển ứng dụng, giúp tiết kiệm được thời gian, tăng
sự ổn định cho ứng dụng, và giảm thiểu số lần phải viết lại mã cho lập trình
viên.Ngoài ra Framework còn giúp những người mới bắt đầu có thể xây dựng các
ứng dụng ổn định hơn nhờ việc tương tác chính xác giữa các Database, mã (PHP) và
giao diện (HTML) 1 cách riêng biệt.Điều này cho phép dành nhiều thời gian để tạo
ra các ứng dụng web, hơn là phí thời gian để viết các đoạn mã lặp lại trong 1 project.
2.2.2

Tại sao phải sử dụng framework?

Có rất nhiều lý do khác nhau để các lập trình viên sử dụng PHP framework,
nhưng 1 trong những lý do chính vẫn là khả năng giúp các lập trình viền tăng tốc
quá trình phát triển ứng dụng. Việc sử dụng lại các mã lệnh giống nhau trong nhiều
project sẽ giúp tiết kiệm được thời gian và công sức 1 cách đáng kể. Một framework
sẽ cung cấp sẵn các module nền tảng cần thiết để xây dựng 1 project, vì thế, các lập
trình viên có thể tận dụng được thời gian để phát triển các ứng dụng thực tế, hơn là
mất thời gian để xây dựng lại nền tảng trên mỗi project.
Sự ổn định là 1 lý do lớn đối với các lập trình viên đang sử dụng Framework.

Tính đơn giản là 1 điểm mạnh của PHP, đó là lý do tại sao lại có nhiều người thích
sử dụng nó, nhưng đồng thời đó cũng là điểm yếu của nó. PHP thì khá dễ học và sử
dụng, đặc biệt là đối với những người mới làm quen với lập trình, tuy nhiên, họ có
thể thường xuyên viết mã 1 cách không khoa học và thậm chí không hề nhận thức
được điều này, với PHP, trong nhiều trường hợp các ứng dụng vẫn sẽ làm việc được,
nhưng vô tình họ có thể tạo ra các lỗ hổng bảo mật lớn trong mã lệnh của mình, và
bị hacker khai thác.

GVHD:Ths. Phan Võ Minh Thắng

7

SVTH: Hồ Thị Cẩm Nhung
Phạm Phương Kiều


Hệ thống thống kê số liệu trên nhiều lĩnh vực  2013
Hầu hết các PHP framework đều có sẵn rất nhiều thành phần mở rộng
(extensive), và cũng có rất nhiều framework khác nhau để lựa chọn.Thậm chí còn có
thể tự viết riêng cho mình 1 framework. Tuy nhiên, nên cân nhắc kỹ trước khi quyết
định sử dụng 1 framework nào cho mình hay không, nên tự đặt câu hỏi cho chính
mình là: Nó có tiết kiệm được cho chúng ta thời gian và công sức hay không ? Có
giúp ứng dụng hoạt động tốt hơn không ? Có cải thiện được sự ổn định cho ứng
dụng không?...
2.2.3

Nguyên nhân chọn yii framework để xây dựng hệ thống

Hiện nay trên thị trường phát triển ứng dụng web, PHP là ngôn ngữ phổ biến,
được nhiều tổ chức sử dụng, mà trong đó nổi bật nhất là Yii framework và Zend

framework.
Yii framework có một số điểm đặc biệt và nổi trội phù hợp với hệ yêu cầu của hệ
thống, đáp ứng được các chức năng mà hệ thống đưa ra
Hệ thống của chúng em làm việc với đối tượng chính là thông tin, làm việc với
một lượng dữ liệu lớn, và nếu có thể sẽ còn lớn hơn nữa trong tương lai. Vì vậy cần
có một framework có thể làm việc nhanh và nhẹ, không phải cài đặt quá nhiều nhằm
nâng cao hiệu quả của hệ thống
Hệ thống làm việc với cơ sở dữ liệu lớn, và được đặt tại hệ quản trị cơ sở dữ liệu
SQL Server nhằm tương tác với bộ công cụ SSIS để xử lý dữ liệu.Sau đó cần phải
được đưa lên host để chạy online, thử nghiệm triển khai trên thực tế, mà host lại hỗ
trợ hệ quản trị cơ sở dữ liệu MySQL, nên sẽ có sự thay đổi hệ quản trị cơ sở dữ liệu
của hệ thống. Vì vậy cần có một framework hỗ trợ dễ dàng thay đổihệ quản trị cơ sở
dữ liệu mà không phải cấu hình nhiều
Từ những lý do trên và tìm hiểu một số ưu điểm của Yii, chúng em quyết định
chọn Yii framework để phát triển hệ thống

GVHD:Ths. Phan Võ Minh Thắng

8

SVTH: Hồ Thị Cẩm Nhung
Phạm Phương Kiều


Hệ thống thống kê số liệu trên nhiều lĩnh vực  2013
3 Chương 3

NỘI DUNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU
3.1 Phương pháp nghiên cứu
Để tiến hành nghiên cứu và xây dựng hệ thống, chúng em đã sử dụng một số

phương pháp nghiên cứu:
 Phương pháp quan sát khoa học
Khảo sát hệ trang web của tổng cục thống Kê Việt Nam và trang web của thống
kê của thế giới để có thể học hỏi một số chức năng cần thiết cho hệ thống ví dụ cho
phép người dùng chọn cột dữ liệu để xem, tải dữ liệu về máy,…Và xây dựng thêm
một số chức năng mà hệ thống chưa có.
 Phương pháp phân tích và tổng hợp lý thuyết
Từ những chức năng và yêu cầu đã được đặt ra, đọc và phần tích các điểm nổi
bật của các kiến thức, công nghệ có liên quan đến những mặt của hệ thống, sau đó
rút ra những điểm ưu và nhược của công nghệ đó. Tổng hợp các ưu nhược điểm để
quyết định sẽ sử dụng công nghệ nào để giải quyết các vấn đề trong đề tài.
 Phương pháp phân loại lý thuyết
Nghiên cứu và sắp xếp các kiến thức lý thuyết đã có và các công cụ thực hiện
thành các nhóm để sử dụng trong quá trình thực hiện hệ thống.
 Phương pháp mô hình hóa
Xác định các đối tượng thực tế được nghiên cứu trong công trình, mô hình hóa
các đối tượng này dưới dạng tri thức máy để thao tác và tạo cơ sở dữ liệu
3.2 Giới thiệu về PHP
PHP (viết tắt của "PHP: Hypertext Preprocessor") là một ngôn ngữ lập trình kịch
bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng viết cho
máy chủ, mã nguồn mở. Nó rất thích hợp với web và có thể dễ dàng nhúng vào
trang HTML. Do được tối ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn, cú
pháp giống C và Java, dễ học và thời gian xây dựng sản phẩm tương đối ngắn hơn
so với các ngôn ngữ khác nên PHP đã nhanh chóng trở thành một ngôn ngữ lập
trình web phổ biến nhất thế giới.
Thẻ <?php và thẻ ?> sẽ đánh đấu sự bắt đầu và sự kết thúc của phần mã PHP qua
đó máy chủ biết để xử lý và dịch mã cho đúng. Đây là một điểm khá tiện lợi của
PHP giúp cho việc viết mã PHP trở nên khá trực quan và dễ dàng trong việc xây
GVHD:Ths. Phan Võ Minh Thắng


9

SVTH: Hồ Thị Cẩm Nhung
Phạm Phương Kiều


Hệ thống thống kê số liệu trên nhiều lĩnh vực  2013
dựng phần giao diện ứng dụng HTTP.
Ngôn ngữ, các thư viện, tài liệu gốc của PHP được xây dựng bởi cộng đồng và
có sự đóng góp rất lớn của Zend Inc., công ty do các nhà phát triển cốt lõi của PHP
lập nên nhằm tạo ra một môi trường chuyên nghiệp để đưa PHP phát triển ở quy
mô doanh nghiệp.
Một số ưu điểm của PHP:
-

PHP có tốc độ xử lý nhanh, hiệu quả cao hơn các ngôn ngữ server

script khác.
-

PHP là mã nguồn mở, nên chi phí để phát triển hệ thống rất thấp thích hợp

cho các doanh nghiệp vừa và nhỏ.
-

Thời gian triển khai ứng dụng nhanh chóng, đơn giản và dễ cài đặt.

-

Số lượng nhà cung cấp hosting PHP khá nhiều.


-

PHP có sự hỗ trợ của cộng đồng phát triển mã nguồn mở rất lớn.

-

Tính linh động vì nó có thể chạy trên nhiều hệ điều hành khác nhau

như Unix, Windows và nhiều biến thể khác nhau của chúng.
-

Lập trình theo hướng đối tượng.

-

PHP sử dụng nhiều hệ quản trị cơ sở dữ liệu khác nhau, trong đó

có MySQL.
-

Dễ dàng cho việc học và sử dụng.

3.3 Giới thiệu Yii Framework
Trang chủ:
Diễn đàn: />Yêu cầu:
-

PHP : 5.1.x


-

Web Server: Apache httpd 2.0.40

-

CPU: Dual Intel Xeon 3.2GHz

GVHD:Ths. Phan Võ Minh Thắng

10

SVTH: Hồ Thị Cẩm Nhung
Phạm Phương Kiều


Hệ thống thống kê số liệu trên nhiều lĩnh vực  2013
-

Ổ đĩa cứng: 73GB 15K RPM SCSI/SAS HDD

Yii là từ viết tắt của từ Yes, it is! Hoặc cũng có thể là viết ngắn gọn 3 chữ cái đầu
của Easy (dễ dàng), Efficient (hiệu suất) và Extensible (khả năng mở rộng).
Yii là 1 PHP Framework mã nguồn mở và hoàn toàn miễn phí, có hiệu năng cao,
giúp bạn phát triển tốt nhất các ứng dụng Web 2.0.Yii được xây dựng để phát triển
các ứng dụng Web quy mô lớn dựa trên nền tảng component (thành phần sử dụng
lại). Yii cho phép tái sử dụng tối đa các thành phần của hệ thống để tăng tốc độ viết
ứng dụng.
3.3.1


Lịch sử phát triển

Tiền thân của Yii chính là PRADO framework.Tác giả của Yii là Qiang Xue,
một người Trung Quốc.Qiang Xue bắt đầu xây dựng Yii vào khoảng 1/1/2008.Có
nghĩa là tính tới nay mới được 3 năm. Qiang Xue cũng chính là người đã từng phát
triển PRADO framework, tuy nhiên, nhận thấy PRADO có nhiều hạn chế và bản
thân Qiang Xue muốn phát triển 1 framework mang những đặc điểm như dễ sử
dụng, dễ tiếp cận, bảo mật cao và chuyên nghiệp hơn nên là Qiang Xueđã sử dụng
kinh nghiệm của mình trong thời gian phát triển PRADO để viết ra Yii. Sau gần 1
năm phát triển, tới 3/12/20008, bản Yii đầu tiên đó là Yii framework 1.0đãđược phát
hành và nhanh chóng được mọi người đón nhận. Phiên bản mới nhất hiện nay là Yii
framework 1.1.11
3.3.2
-

Ưu điểm của Yii framework

Là framework MVC nhưng có kiến trúc OOP rất tốt và lại hướng component

nên mức độ tái sử dụng giữa các project rất cao. Yii đặc biệt chạy nhanh hơn Zend
và Symfony
-

Hỗ trợ trên tất cả các DBMS bởi PDO (PHP Data Object)

-

Yii được đóng gói với các tính năng giúp đáp ứng những nhu cầu cao trên

ứng dụng web hiện nay. AJAX cho phép web tích hợp các widgets, thực thi của một


GVHD:Ths. Phan Võ Minh Thắng

11

SVTH: Hồ Thị Cẩm Nhung
Phạm Phương Kiều


Hệ thống thống kê số liệu trên nhiều lĩnh vực  2013
kiến trúc MVC, DAO và quan hệ lớp ActiveRecord, kiểm soát truy cập, xem video
chuyên nghiệp, quốc tế (I18N),và nội địa hoá
-

Cung cấp sẵn phương thức xác thực/phân quyền giúp người dùng có thể cấp

phát và quản lý tài khoản người dùng một cách dễ dàng nhất
-

Hỗ trợ thay đổi giao diện theo chủ đề một cách đơn giản

-

Kết nối webservice để giao tiếp với các hệ thống khác một cách dễ dàng

-

Lập trình đa ngôn ngữ(I18N)

-


Sử dụng bộ nhớ cache giúp cải thiện hiệu suất của ứng dụng web

-

Tự động phát sinh code giúp tiết kiệm thời gian và tăng sự tiện lợi cho lập

trình viên
-

Yii đơn giản trong cách viết kết hợp với thế mạnh "scripting" của PHP và cơ

chế mảng index (associative array)
-

Yii rất nhẹ và được trang bị giải pháp cache tối ưu nên đặc biệt hữu dụng cho

ứng dụng Web có dung lượng dữ liệu trên đường truyền lớn như web portal, forum,
CMS, e-commerce, v.v.
-

Có tài liệu đầy đủ trên trang chủ và có nhiều diễn đàn, trang web, nhiều cộng

đồng mạng hỗ trợ, trả lời thắc mắc,..
-

Tốc độ xử lý nhanh nhờ sử dụng kỹ thuật lazy loading

-


Hiệu suất xử lý của Yii rất cao. Biểu đồ dưới đây cho thấy hiệu quả hơn hẳn

so với các Framework PHP khác. RPS là viết tắt của “Request per second” nhằm mô
tả việc làm mới ứng dụng có thể xử lý trong mỗi giây. Số càng cao thì tính hiệu quả
càng lớn của Framework. Sự thuận lợi này của Yii rất cần thiết cho người sử dụng
khi tương tác với ứng dụng.

GVHD:Ths. Phan Võ Minh Thắng

12

SVTH: Hồ Thị Cẩm Nhung
Phạm Phương Kiều


×