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

xây dựng hệ thống quản lý sử dụng phòng học trên nền tảng zend framework

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 (3.36 MB, 68 trang )

TRƯỜNG ĐẠI HỌC CẦN THƠ

ải


n

KHOA CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG

gH

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC

XÂY DỰNG HỆ THỐNG
QUẢN LÝ SỬ DỤNG PHÒNG HỌC



ờn

TRÊN NỀN TẢNG ZEND FRAMEWORK

uT

Sinh viên thực hiện:

Cán bộ hướng dẫn
TS. Huỳnh Xuân Hiệp

MSSV: 1071454


MSCB: 1067



Lưu Trường Hải Lân

Cần Thơ, 2011


TRƯỜNG ĐẠI HỌC CẦN THƠ


n

KHOA CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC

ải

XÂY DỰNG HỆ THỐNG

gH

QUẢN LÝ SỬ DỤNG PHÒNG HỌC
TRÊN NỀN TẢNG ZEND FRAMEWORK

ờn

Sinh viên thực hiện


TS. Huỳnh Xuân Hiệp
MSCB: 1067

uT



Lưu Trường Hải Lân
MSSV: 1071454

Cán bộ hướng dẫn

Cán bộ phản biện
ThS. Nguyễn Văn Linh
ThS. Trương Thị Thanh Tuyền
TS. Huỳnh Xuân Hiệp



Luận văn được bảo vệ tại:
Hội đồng chấm luận văn tốt nghiệp Bộ môn Kỹ Thuật Phần Mềm
Khoa Công nghệ Thông tin & Truyền Thông, Trường Đại học Cần Thơ
Vào ngày 17, tháng 05, năm 2011
Mã số đề tài:

Có thể tìm hiểu luận văn tại:
Thư viện Khoa Công Nghệ Thông Tin & Truyền Thông, Trường Đại học Cần Thơ
Website: />


iL
ân

TỔ CHỨC CỦA LUẬN VĂN
Mở đầu luận văn bao gồm các nội dung:


Lời cảm ơn



Mục lục: Liệt kê các chương mục và số thứ tự trang tương ứng.



Ký hiệu và viết tắt: Liệt kê những ký hiệu và chữ viết tắt trong luận văn.



Tóm tắt, abstract và từ khóa: gồm 3 phần, phần tóm tắt, phần abstract là phần dịch tóm

Hả

tắt trên ra tiếng Anh và phần từ khố liệt kê một số từ quan trọng trong luận văn.
Nội dung chính của luận văn gồm 4 chương và

• Chương 1: Tổng quan. Chương này trình bày các vấn đề tổng quan bao gồm: đặt vấn

đề, lịch sử giải quyết vấn đề, phạm vi của đề tài và phương pháp nghiên cứu hướng


ng

giải quyết vấn đề.

• Chương 2: Cơ sở lý thuyết. Chương này giới thiệu sơ lược hai nội dung cơ bản về mơ

hình MVC và Zend Framework




• Chương 3: Nội dung và kết quả nghiên cứu. Chương này tập trung trình bày hai nội

dung chính: nội dung thứ nhất sẽ trình bày kết quả phân tích và thiết kế hệ thống, nội
dung thứ hai trình bày một số trường hợp sử dụng Zend Framework để xây dựng hệ
thống.

Kết thúc luận văn bao gồm 4 nội dung:

uT

• Kết luận và đề nghị: nội dung này trình bày kết luận về toàn bộ nội dung đã nghiên cứu

và các đề nghị rút ra từ kết quả nghiên cứu.

• Phụ lục: nội dung này được trình bày nhằm xác định chi phí cho phần mềm



• Tài liệu tham khảo: trình bày danh mục các tài liệu tham khảo

• Chỉ mục (Index): trình bày các từ khoá theo vần alphabet và số thứ tự trang tương ứng

của từ khố đó

Trang 1


iL
ân

LỜI CẢM ƠN
Trong khoảng thời gian học tập và nghiên cứu thực hiện luận văn “Quản lý sử dụng
phòng học tại trường Đại Học Cần Thơ”, tôi đã gặp rất nhiều khó khăn và trở ngại, nhưng nhờ
sự giúp đỡ của của gia đình, bạn bè và sự hướng dẫn nhiệt tình của thầy hướng dẫn cùng với
sự cố gắng và nỗ lực của bản thân đã giúp tơi hồn thành luận văn này. Tơi xin chân thành
cám ơn:

Gia đình đã động viên, giúp đỡ để tôi an tâm học tập, nghiên cứu và thực hiện luận văn.

Hả

Giáo viên hướng dẫn chính TS. Huỳnh Xn Hiệp đã tận tình hướng dẫn tơi về mặt
chun mơn cũng như khích lệ cho tơi rất nhiều về mặt tinh thần trong việc hồn thành luận
văn này.

Thầy Phạm Vũ Khánh, giáo viên khóa học Zend Framework online, đã hỗ trợ tôi rất

ng

nhiều trong việc nghiên cứu Zend Framework.


Cộng đồng Zend Framework Việt Nam đã cùng chia sẻ và đưa ra những ý kiến đóng
góp q báu cho đề tài của tơi.




Q thầy cơ Khoa Công Nghệ Thông Tin & Truyền Thông đã tận tâm truyền đạt kiến
thức trong suốt q trình tơi học tập tại trường Đại học Cần Thơ, giúp tơi có nền tảng kiến

uT

thức để thực hiện luận văn này.

Cần Thơ, ngày 30 tháng 04 năm 2011

Sinh viên thực hiện



Lưu Trường Hải Lân

Trang 2


iL
ân

MỤC LỤC
TỔ CHỨC CỦA LUẬN VĂN....................................................................................................1

LỜI CẢM ƠN............................................................................................................................. 2
MỤC LỤC................................................................................................................................... 3
KÍ HIỆU VÀ VIẾT TẮT...........................................................................................................5
TĨM TẮT, ABSTRACT VÀ TỪ KHĨA.................................................................................6
CHƯƠNG 1: TỔNG QUAN......................................................................................................9

Hả

1.1. Đặt vấn đề..................................................................................................................... 9
1.2. Lịch sử giải quyết vấn đề............................................................................................10
1.3. Phạm vi của đề tài......................................................................................................10
1.4. Phương pháp nghiên cứu............................................................................................11
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT........................................................................................13

ng

2.1. Mơ hình MVC............................................................................................................13
2.1.1. Các thành phần trong mơ hình...............................................................................13
2.1.2. Sơ đồ hoạt động của mơ hình................................................................................14
2.1.3. Ưu nhược điểm......................................................................................................14




2.2. Zend Framework.........................................................................................................15
2.2.1. Tổng quan.............................................................................................................15
2.2.2. Một số lớp phổ biến..............................................................................................16
2.2.3. Mơ hình MVC trong Zend Framework.................................................................17

uT


2.2.4. Luồng xử lý công việc...........................................................................................18
CHƯƠNG 3: NỘI DUNG VÀ KẾT QUẢ NGHIÊN CỨU....................................................21
3.1. Đặc tả hệ thống...........................................................................................................21
3.1.1. Giới thiệu..............................................................................................................21
3.1.2. Mơ tả tổng thể.......................................................................................................21



3.2. Phân tích hệ thống......................................................................................................23
3.2.1. Sơ đồ Use Case.....................................................................................................24
3.2.2. Mơ hình MCD.......................................................................................................30
3.3. Thiết kế hệ thống........................................................................................................31
Trang 3


3.3.1. Mơ hình quan hệ dữ liệu........................................................................................31

iL
ân

3.3.2. Sơ đồ chức năng....................................................................................................32
3.4. Cấu hình ứng dụng......................................................................................................32
3.5. Sử dụng một số phương thức cơ bản trong Zend Framework.....................................36
3.5.1. Khởi tạo kết nối database......................................................................................36
3.5.2. Tạo selectbox gồm danh sách các tòa nhà.............................................................37
3.5.3. Sử dụng Zend_Validate để kiểm tra dữ liệu hợp lệ...............................................37
3.5.4. Hiển thị danh sách sinh viên..................................................................................38

Hả


3.5.5. Xây dựng lớp Zend_Validate_ConfirmPassword..................................................39
3.5.6. Cấu hình template.................................................................................................39
KẾT LUẬN VÀ ĐỀ NGHỊ.......................................................................................................41
PHỤ LỤC: XÁC ĐỊNH GIÁ TRỊ PHẦN MỀM.....................................................................42
TÀI LIỆU THAM KHẢO........................................................................................................65



uT




ng

CHỈ MỤC.................................................................................................................................. 66

Trang 4


CB: Cán Bộ



CBGD: Cán bộ phụ trách giảng dạy nhóm học phần



ĐVQL: Cán bộ phụ trách ở đơn vị quản lý




GVCV: Giáo viên cố vấn



MVC: Model – View – Controller



OOP: Object oriented programming



QLDT: Cán bộ phụ trách cơng tác quản lý đào tạo



QLTN: Người quản lý tịa nhà



QTHT: Người quản trị hệ thống



SV: Sinh Viên




TLTB: Trợ lý thiết bị



TN: Tịa nhà



ZF: Zend Framework



uT




ng

Hả



iL
ân

KÝ HIỆU VÀ VIẾT TẮT

Trang 5



iL
ân

TĨM TẮT
Trường Đại học Cần Thơ khơng ngừng xây dựng và phát triển nguồn cơ sở vật chất
nhằm phục vụ cho công tác giảng dạy, học tập và nghiên cứu. Cùng với sự phát triển này,

yêu cầu đặt ra là phải quản lý và vận dụng hiệu quả nguồn cơ sở hạ tầng của nhà trường trên
cơ sở tin học hóa các quy trình quản lý truyền thống. Trong đó việc quản lý sử dụng phòng
học tại trường là một trong những hệ thống quản lý thiết thực và đã được thực hiện trong đề

tài này. Về mặt lý thuyết, đề tài đã giới thiệu tổng quan về mơ hình MVC; cách cài đặt, cấu

Hả

hình một ứng dụng trên nền Zend Framework cũng như cách sử dụng một số lớp cơ bản
trong Zend Framework... Về mặt thực tiễn, đề tài đã giới thiệu quy trình xây dựng một hệ
thống quản lý trên nền Zend Framework nói chung và hệ thống quản lý sử dụng phịng học
tại trường ĐHCT nói riêng.

Website quản lý sử dụng phòng học được thực hiện trên nền Zend Framework, các mơ

ng

hình hướng đối tượng được phân tích bằng cơng cụ Power Desginer 15.2, cơng cụ lập trình
Zend Studio 8.0. Ngơn ngữ lập trình được sử dụng là PHP và hệ quản trị cơ sở dữ liệu My
SQL.





Hệ thống sau khi được xây dựng đã đạt được những chức năng cơ bản như quản lý
thơng tin phịng học, tòa nhà, đơn vị, cán bộ và sinh viên tại trường. Đồng thời quản lý thời
khóa biểu sử dụng phịng của các nhóm học phần nhằm quản lý việc đăng ký sử dụng tòa



uT

nhà, phòng học của cán bộ và sinh viên.

Trang 6


iL
ân

ABSTRACT
Can Tho University (CTU) is in the progress of constructing and developing

infrastructures for more qualified teaching, studying and researching. Simultaneously with

this progress, managing and utilizing of infrastructures in an effective way based on
computerizing traditional managing methods are considered to be essential duties. Foremost

amongst these is the system of classroom managing, which is constructed in this thesis. For
theoretical values, this thesis introduces briefly about MVC model, installing method and


Hả

configuration of an application on Zend Framework as well as some basic classes in Zend

Framework… For practical values, this thesis introduces the constructing process of a
managing system on Zend Framework in general and the classroom managing system for
CTU in specific.

The managing website of using classrooms was built on Zend Framework. In addition,

ng

object-oriented models were analyzed by Power Desginer 15.2 and Zend Studio 8.0. PHP
was used as the coding language together with My SQL.
The achieved system possessed some typical functions such as managing information of




class rooms, buildings, faculties and students of CTU. Besides, the schedule of room using



uT

was managed in order to support the management of classroom registering.

Trang 7





Đăng ký phòng học



MVC



OOP



PHP & MySQL



Quản lý phòng học



Zend



Zend Framework

Hả


Đại học Cần Thơ



uT




ng



iL
ân

TỪ KHĨA

Trang 8


Chương 1: Tổng quan

iL
ân

CHƯƠNG 1: TỔNG QUAN
1.1. ĐẶT VẤN ĐỀ

Trong những năm gần đây, trường Đại học Cần Thơ không ngừng hoàn thiện và phát

triển, trở thành cơ sở đào tạo trọng điểm và là trung tâm văn hóa – khoa học kỹ thuật của đồng
bằng Sông Cửu Long. Từ một số ít ngành đào tạo ban đầu, trường đã củng cố, phát triển thành
một trường đa ngành đa lĩnh vực với khoảng 76 chuyên ngành đại học, 28 chuyên ngành cao
học, 8 chuyên ngành nghiên cứu sinh và 1 chuyên ngành cao đẳng. Nhằm hỗ trợ tốt cho việc mở

Hả

rộng đào tạo, cơ sở hạ tầng cũng như trang thiết bị của trường luôn được quan tâm nâng cấp và
phát triển, đặc biệt là hệ thống phòng học phục vụ cho công tác giảng dạy, đào tạo, học tập và
nghiên cứu.

Hiện nay, ngoài các nhà học trực thuộc Khoa, Viện, Trung tâm, Trường cịn có nhiều dãy

ng

nhà học chung phục vụ cho các lớp học phần như dãy nhà học A1, nhà học A3, nhà học B1, nhà
học C1… Hiện nay, các nhà học, phòng học được quản lý theo phương pháp thủ cơng. Theo đó,
nhà học hay một số phòng trong nhà học được giao cho một hoặc nhiều Đơn vị tiếp quản phục
vụ công tác giảng dạy, đào tạo, nghiên cứu, .... đặc thù riêng của Đơn vị. Ngồi các giờ học




chính quy, đa số các dãy nhà học được bàn giao cho Trung tâm ngoại ngữ sử dụng vào buổi tối
phục vụ việc giảng dạy ngoại ngữ cho sinh viên. Sinh viên có thể sử dụng các phịng học khi
khơng có lớp học phần để tự học, học nhóm, tổ chức sinh hoạt, … Việc sử dụng ngồi giờ này
có thể được hợp thức hóa bằng việc đăng ký theo mẫu đơn giấy có sẵn, sau đó cán bộ quản lý

uT


tịa nhà sẽ xem xét cấp quyền sử dụng phòng học cho cán bộ hay sinh viện đã gửi giấy đăng ký
sử dụng.

Với một lượng lớn nhà học, phòng học cũng như số lượng Đơn vị, cán bộ và sinh viên thì

việc quản lý thủ cơng như trên gặp phải một số vấn đề bất cập. Do đó, yêu cầu đặt ra là phải



quản lý và sử dụng hiệu quả hệ thống nhà học, phòng học của trường trên cơ sở tin học hóa các
quy trình quản lý truyền thống. Nhằm giải quyết yêu cầu này, đề tài “Quản lý sử dụng phòng học
tại trường Đại học Cần Thơ” được thực hiện với mục tiêu xây dựng một website quản lý sử dụng
phòng học hiệu quả trên nền Zend Framework.

Trang 9


Chương 1: Tổng quan

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

iL
ân

Ứng dụng cơng nghệ thơng tin nói chung và ứng dụng các ứng dụng Web nói riêng vào
cơng tác quản lý ở các đơn vị như trường học, cơ quan, xí nghiệp, … đã trở nên phổ biến và
quen thuộc trong những năm gần đây. Điển hình ở trường Đại Học Cần Thơ, các hệ thống quản
lý của trường ngày càng được tin học hóa như các hệ thống: quản lý sinh viên, quản lý đăng ký
học phần, quản lý kết quả học tập của sinh viên, … Tuy nhiên đề tài xây dựng hệ thống quản lý
tình hình sử dụng và đăng ký phòng học tại đơn vị này lại là một đề tài mới chưa được thực

hiện. Đặc biệt đề tài này được thực hiện trên nền tảng Zend Framework, một xu hướng mới cho

Hả

việc lập trình web hiện nay.

Cũng giống như những PHP Framework khác, trong giai đoạn đầu Zend Framework có
rất ít các thư viện xử lý và rất nhiều khuyết điểm, lúc này để hoàn thành một ứng dụng Web
bằng Zend Framework địi hỏi phải tích hợp nhiều thư viện khác để hỗ trợ Framework này. Tuy

ng

nhiên càng về sau Zend Framework càng hoàn thiện hơn và bổ sung những thư viện mới rất hữu
ích cho các ứng dụng web. Và đó cũng lý do tại sao có nhiều cơng ty lớn như IGN.com,
RottenTomatoes.com, AskMen.com, IBM… đã chọn Zend Framework làm nền tảng phát triển
các ứng dụng trực tuyến. Việc chọn Zend Framework để xây dựng các ứng dụng Web ngày càng




phổ biến ở những thị trường phần mềm lớn như Nhật, Mỹ, Châu Âu … Nhu cầu xây dựng các
ứng dụng Web bằng Zend Framework ở Việt Nam trong những năm gần đây cũng dần trở nên
cấp thiết hơn.

Do đó việc xây đựng hệ thống quản lý tình hình sử dụng phịng tại trường Đại học Cần

uT

Thơ trên nền tảng Zend Framework là một đề tài mới, mở ra con đường nghiên cứu và xây dựng
các ứng dụng Web bằng công nghệ Zend Framework.

1.3. PHẠM VI CỦA ĐỀ TÀI
Về mặc phân tích và thiết kế hệ thống: kết quả thu được của đề tài từ các mơ hình phân



tích hệ thống, cơ sở dữ liệu, … hồn tồn có khả năng xây dựng phần cơ sở dữ liệu cho ứng
dụng Web quản lý tình hình sử dụng phòng tại trường Đại học Cần Thơ.
Về mặt lập trình: trên cơ sở nghiên cứu và áp dụng Zend Framework, hoàn thành các nội

dung chủ yếu sau:
Trang 10


Chương 1: Tổng quan



Hiểu và vận dụng thành cơng các lớp Zend Framework để xây dựng thành công các

iL
ân

module chủ yếu cho hệ thống: module cố vấn học tập, đơn vị quản lý, quản trị thiết bị, trợ
lý thiết bị, quản lý tịa nhà và quản lý đào tạo.


Đảm bảo hệ thống vận hành theo đúng cấu trúc của một ứng dụng Zend Framework (theo
mơ hình MVC).




Tối ưu hóa các lớp, sử dụng các lớp Zend Framework thay cho cách viết thẻ HTML.



Đảm bảo sự độc lập của các module, dễ dàng phát triển và nâng cấp hệ thống.



Hả

1.4. PHƯƠNG PHÁP NGHIÊN CỨU:

Nghiên cứu Zend Framework thơng qua website chính: hay từ
website của cộng đồng Zend Việt Nam: />


Lập kế hoạch thực hiện đề tài:

1

03/01/2011 đến
09/01/2011

2

10/01/2011 đến
16/02/2011

3


17/01/2011 đến
23/01/2011

4

24/01/2011 đến
30/01/2011

5

Nội dung chính

31/01/2011 đến
06/02/2011

ng

Thời gian

• Liên hệ với giáo viên hướng dẫn
• Lập kế hoạch nghiên cứu Zend Framework

uT




Tuần


• Tìm hiểu Zend Framework

07/02/2011 đến
13/02/2011

7

14/02/2011 đến
20/02/2011

• Nhận đề tài “Quản lý sử dụng phịng học tại trường Đại
Học Cần Thơ”

8

21/02/2011 đến
27/02/2011

• Xác định giá trị phần mềm

9

28/02/2011 đến
06/03/2011

• Quyển báo cáo:
◦ Chương 1: Tổng quan
• Tìm hiểu Zend Framework




6

Trang 11


Chương 1: Tổng quan

11

14/03/2011 đến
20/03/2011

• Phân tích hệ thống
• Quyển báo cáo
◦ Chương 2: Cơ sở lý thuyết
• Tìm hiểu Zend Framework

12

21/03/2011 đến
27/03/2011

• Sơ đồ Use case

13

28/03/2011 đến
03/04/2011


• Phân tích hệ thống
• Quyển báo cáo
◦ Chương 2: Cơ sở lý thuyết

04/04/2011 đến
10/04/2011

• Lập trình 1
• Kiểm thử đơn vị
• Quyển báo cáo:
◦ Chương 3: Nội dung và kết quả nghiên cứu

Hả

14

ng

10

iL
ân

07/03/2011 đến
13/03/2011

• Phân tích hệ thống
• Quyển báo cáo
◦ Chương 2: Cơ sở lý thuyết
• Tìm hiểu Zend Framework


• Lập trình 2
• Kiểm thử đơn vị
• Quyển báo cáo:
◦ Chương 3: Nội dung và kết quả nghiên cứu

11/04/2011 đến
17/04/2011

16

18/04/2011 đến
24/04/2011

• Lập trình 3
• Quyển báo cáo:
◦ Tóm tắt, abstract và từ khóa

17

25/04/2011 đến
01/05/2011

• Lập trình 4:
• Hồn thành quyển báo cáo

18

02/05/2011 đến
08/05/2011


• Hồn thành lập trình
• Kiểm thử hệ thống
• Hồn thành quyển báo cáo

19

09/05/2011 đến
15/05/2011

• Hồn thành nội dung quyển báo cáo
• Chuẩn bị slide báo cáo
• Liên hệ giáo viên hướng dẫn để báo cáo trước

20

16/05/2011 đến
22/05/2011

• Báo cáo luận văn



uT




15


Trang 12


Chương 2: Cơ sở lý thuyết

iL
ân

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
2.1. MƠ HÌNH MVC:

ng

Hả

2.1.1. Các thành phần trong mơ hình:




Hình 2.1.1.1: Mơ hình kiến trúc MVC

Trong kiến trúc này, hệ thống được chia thành 3 tầng tương ứng đúng với tên gọi của nó (Model
– View – Controller). Ở đó nhiệm vụ cụ thể của các tầng được phân chia như sau:


Model (Tầng dữ liệu): Là một đối tượng hoặc một tập hợp các đối tượng biểu diễn cho

uT


phần dữ liệu của chương trình. Nó được giao nhiệm vụ cung cấp dữ liệu cho cơ sở dữ
liệu và lưu dữ liệu vào các kho chứa dữ liệu. Tất cả các nghiệp vụ logic được thực thi ở
Model. Dữ liệu vào từ người dùng sẽ thông qua View đến Controller và được kiểm tra ở
Model trước khi lưu vào cơ sở dữ liệu. Việc truy xuất, xác nhận, và lưu dữ liệu là một



phần của Model



View (Tầng giao diện): Là phần giao diện với người dùng, bao gồm việc hiện dữ liệu ra
màn hình, cung cấp các menu, nút bấm, hộp đối thoại, chọn lựa …, để người dùng có thể
thêm, xóa. sửa, tìm kiếm và làm các thao tác khác đối với dữ liệu trong hệ thống.. Thông

Trang 13


Chương 2: Cơ sở lý thuyết

thường, các thông tin cần hiển thị được lấy từ thành phần Models.
Controller (Tầng điều khiển): Là phần điều khiển của ứng dụng, điều hướng các nhiệm

iL
ân



vụ (task) đến đúng phương thức (method) có chức năng xử lý nhiệm vụ đó. Nó chịu trách
nhiệm xử lý các tác động về mặt giao diện, các thao tác đối với models, và cuối cùng là

chọn một view thích hợp để hiển thị ra màn hình.

ng

Hả

2.1.2. Sơ đồ hoạt động của mơ hình:




Hình 2.1.2.1: Sơ đồ 1 chuỗi MVC đơn giản
2.1.3. ƯU NHƯỢC ĐIỂM:
2.1.3.1. Ưu điểm:


Trong trường hợp sử dụng mơ hình MVC để phát triển phần mềm: Có tính chun nghiệp
hóa, có thể chia cho nhiều nhóm được đào tạo nhiều kỹ năng khác nhau, từ thiết kế mỹ

uT

thuật cho đến lập trình đến tổ chức database. Giúp phát triển ứng dụng nhanh, đơn giản,
dễ nâng cấp..



Đối với trường hợp bảo trì: Với các lớp được phân chia theo như đã nói, thì các thành
phần của một hệ thống dễ được thay đổi, nhưng sự thay đổi có thể được cơ lập trong từng




lớp, hoặc chỉ ảnh hưởng đến lớp ngay gần kề của nó, chứ khơng phát tán náo loạn trong
cả chương trình.



Khu cần mở rộng ứng dụng: Với các lớp được chia theo ba lớp như đã nói, việc thêm
chức năng vào cho từng lớp sẽ dễ dàng hơn là phân chia theo cách khác.
Trang 14


Chương 2: Cơ sở lý thuyết

2.1.3.2 Nhược điểm:
Đối với dự án nhỏ việc áp dụng mơ hình MC gây cồng kềnh, tốn thời gian, …



Mất khá nhiều thời gian trong việc trung chuyển dữ liệu giữa các tầng.

iL
ân



2.2. ZEND FRAMEWORK:
2.2.1. Tổng quan:
2.2.1.1 Khái niệm:



Zend Framework là sản phẩm framework mã nguồn mở được phát triển trên nền PHP 5.0

Hả

theo chuẩn hướng đối tượng.


Zend Framwork là framework theo mơ hình MVC.



Zend Framework có hỗ trợ làm việc với Tempalate engine kết hợp cùng tầng View

ng

2.2.1.2. Phạm vi ứng dụng:

Tạo ứng dụng web theo mơ hình chuẩn MVC



Url tiêu chuẩn, ngắn gọn



Hỗ trợ phân quyền tới từng Action



Có các thành phần thư viên hỗ trợ API của các nhà cung cấp như Google, Yahoo, Flick




Quản lý code dễ dàng, liệt kê và lấy các truy vấn history



Dễ dàng phát triển thêm các ứng dụng nhúng, sử dụng Plugins

uT






2.2.1.2. Ưu khuyết điểm:

Zend Framework là một PHP framework ra đời khá trễ, tiếp thu những tinh hoa và khắc phục
những sai lầm mà các framework trước mắc phải.



Ưu điểm:


ZF được viết theo kiểu OOP nên nó thừa hưởng các thế mạnh của kiểu viết này. Các lớp
của ZF được BA (Business Analysis) rất chuẩn và khi cần mở rộng bạn có thể dùng thể
dùng tính chất thừa kế của OOP. Nói chung là chúng ta không phải chỉnh sửa core của
Trang 15



Chương 2: Cơ sở lý thuyết

ZF.
Hầu như các version mới của ZF ko có nhiều thay đổi trong core nên ta có thể dễ dàng
update.


ZF tích hợp được gần như tất cả các thư viện PHP và các CMS khác để sử dụng. Ví dụ:
Smarty - Pear - FCKEditer - Drupal ..



Các viết của ZF rất thân thiện và đơn giản. Tích hợp những mới nhất của lập trình web
như: JSON - Search - Syndication - Web Services...

ZF được sử dụng trong các dự án lớn và có kế hoạch phát triển dài lâu

Hả



iL
ân



Khuyết điểm:


Mất nhiều thời gian để tìm hiểu về thư viện của ZF



Một số lớp chưa ổn định, có sự thay đổi, gây khó khăn cho người sử dụng khi cập nhật
các phiên bản.

2.2.1.4. Quá trình phát triển:

Trải qua giai đoạn hình thành và phát triển, Zend Framework hiện tại có 11 phiên bản, và






ng



phiên bản mới nhất hiện tại là 1.11.


Các phiên bản đã phát hành: Zend Framework 1.11, Zend Framework 1.10, Zend
Framework 1.9, Zend Framework 1.8, Zend Framework 1.7, Zend Framework 1.6, Zend
Framework 1.5, Zend Framework 1.0, Zend Framework 0.9, Zend Framework 0.8, Zend

uT

Framework 0.6


2.2.2. Một số lớp phổ biến:


Zend_Acl: giúp chúng ta phân quyền cho ứng dụng chi tiết trên từng action, controller và
module

Zend_Auth: cung cấp một API cho việc chứng thực tài khoản khi đăng nhập vào hệ thống



Zend_Cache: giúp cho các ứng dụng khơng phải sử dụng CPU hoặc truy xuất vào





database quá nhiều

Trang 16


Chương 2: Cơ sở lý thuyết

Zend_Controller: giúp lấy các request từ phía Client và thực thi nó bằng các Action



Zend_Currency: xử lý tất cả các vấn đề liên quan đến tiền tệ




Zend_Date: xử lý tất cả các vấn đề liên quan thời gian



Zend_Db: Dựa trên đối tuợng PDO (PHP Data Objects), cung cấp cách thức giao tiếp
với database

iL
ân





Zend_Feed: xử lý với Rss và Atom feeds



Zend_File: cung cấp, hỗ trợ mở rộng việc upload và download của các tập tin. Nó gắn

Hả

liền với kiểm tra các chức năng của tập tin.


Zend_Filters: lọc dữ liệu trước khi thực hiện một quá trình xử lý nào đó




Zend_Form: đơn giản hóa việc tạo form và xử lý các ứng dụng trên website.



Zend_Local: là một thư viện trả lời cho câu hỏi làm sao ứng dụng c1o thể sử dụng trên



ng

tồn thế giới

Zend_Search: là một lớp cung cấp cho chúng ta các phương thức search trên nội dung




của các tập tin lưu trữ thơng tin.


Zend_Translate: là giải pháp cho các ứng dụng đa ngơn ngữ



Zend_Validate: dùng để kiểm tra dữ liệu nhập vào có phù hợp với u cầu hay khơng



Zend_View: chính là tầng View trong mơ hình MVC, giúp chúng ta hiển thị những kết


uT

quả trong xử lý Controller và Models ra bên ngoài



2.2.3. Mơ hình MVC trong Zend Framework

Hình 2.2.3.1: Mơ hình MVC trong Zend Framework
Trang 17


Chương 2: Cơ sở lý thuyết

Bất cứ một ứng dụng nào được xây dựng theo mơ hình MVC nào thì cũng điều phải tuân thủ



Model : Cung cấp tập hợp các lớp được trừu tượng hóa sử dụng cho việc truy xuất dữ
liệu. Lớp phục vụ: Zend_DB, Zend_DB_Table



View : Định nghĩa các thơng tin hiển thị phía người dụng sau khi được xử lý và trả về từ
controller. Lớp phục vụ: Zend_View



iL

ân

những ngun tắc mà mơ hình MVC mang lại.Hình 1: Mơ hình MVC trong Zend Framework

Controller : Kiểm sốt dữ liệu vào ra. Xuất thông tin ra tầng View khi được thực thi. Lớp

Hả

phục vụ: Zend_Controller

Khi có một request từ người dùng. Controller sẽ tiếp nhận request, phân tích request, sau đó sẽ
phân luồng request để gọi đến Model và View tùy vào request mà người dùng đã gửi. Khi người
dùng gửi một request từ browser thì nơi đầu tiên tiếp nhận request đó đầu tiên là controller. Tùy

ng

vào request, mà controller sẽ phân luồng đến model và view.

Tóm lại, một ứng dụng được xây dựng theo mơ hình MVC hoạt động tổng quát như sau: Tiếp
nhận request từ trình duyệt dưới dạng HTML. Sau đó được biên dịch thơng qua Java Servlet →
controller tiếp nhận, phân tích request để phân luồng đến model và view. Cuối cùng trả về trình




duyệt dưới dạng một response HTML.

2.1.4. LUỒNG XỬ LÝ CƠNG VIỆC:
2.1.4.1. Luồng xử lý cơng việc trong:


uT

Giải thích quy trình:

Bước 1: Một yêu cầu được tạo ra và đối tượng Request Object được tạo ra



Bước 2: routeStartup được nạp



Bước 3: Router xử lý yêu cầu



Bước 4: routerShutdown được nạp







Bước 5: dispatchLoopStartup được nạp



Bước 6: Qui trình gửi thơng tin được bắt đầu


Trang 18


Chương 2: Cơ sở lý thuyết

Bước 7: preDispatch được nạp (thực hiện trước các action)



Bước 8: Dispathcher gọi Action Controller (điều hướng: gọi đến action nào?, controller
nào?, module nào?)

iL
ân



Bước 9: Action Controller tạo Response Object



Bước 10: postDispatch được nạp



Bước 11: Nếu có Action nào được gọi thì quay lại bước 7



Bước 12: dispatchLoopShutdown được nạp




Bước 13: Response được gửi lại



uT




ng

Hả



Hình 2.1.4.1.1: Quy trình làm việc trong Zend Framework
Trang 19


Chương 2: Cơ sở lý thuyết

2.1.4.2. Cách làm việc và xây dựng lớp



iL
ân


Các lớp được phân cấp theo tên thư mục:

Trên thực tế, Zend Framework dựa vào thư viện để đọc và làm việc trên các lớp một cách
rất cụ thể. Bởi đường dẫn chi tiết của chúng đã được thể hiện rõ nét ngay trên tên của
chúng.



Ví dụ:

◦ Với class Zend_Db_Table ta có thư mục Zend/Db/Table.php

class

Zend_Application_Bootstrap_Bootstrapper

Hả

◦ Với

ta



thư

mục

library/Zend/Application/Bootstrap/Bootstrapper.php

Controller thể hiện trên URL:


http://localhost/zfdemo/admin/: Tìm tới indexAction trong adminController để thực thi



http://localhost/zfdemo/admin/login:

tới

ng

adminController để

Tìm

loginAction

trong

controller

thực thi



Tìm tới vewsAction trong controller newsController









uT

và get id=15 để thực thi.

Trang 20


Chương 3: Nội dung và kết quả nghiên cứu

iL
ân

CHƯƠNG 3: NỘI DUNG VÀ KẾT QUẢ NGHIÊN CỨU
3.1. ĐẶC TẢ HỆ THỐNG:
3.1.1. Giới thiệu:

Xây dựng hệ thống quản lý sử dụng phòng trong phạm vi trường Đại học Cần Thơ. Đây là một hệ
thống phát triển mới hồn tồn khơng xây dựng dựa trên một hệ thống cũ nào. Có khả năng sẽ
phát triển để tích hợp vào hệ thống quản lý đào tạo của nhà trường.

Hả

3.1.2. Mô tả tổng thể:
3.1.2.1. Mô tả thực trạng:


Trường ĐHCT phân bố thành ba Khu, mỗi Khu tọa lạc ở một địa chỉ xác định. Trong Khu có các
tịa nhà, nhà học, hội trường, … Các Đơn vị trực thuộc của trường như các Phòng ban, Khoa,
Viện, Trung tâm, … tùy theo tình hình sử dụng phịng học của đơn vị mình và tùy theo sự thống

ng

nhất của Phòng Đào tào và Phòng Quản trị – Thiết bị mà các nhà học sẽ được chuyển cho các
đơn vị này quản lý và sử dụng. Các nhà học gồm có các phịng học, mỗi phịng học có tên và
một sức chứa xác định.




Các phịng học sẽ được xếp lịch để sử dụng theo kế hoạch chung của nhà trường hay mục đích
sử dụng của Đơn vị quản lý nhà học nói riêng. Ngồi ra đa số các buổi học vào ban đêm các
phòng học đều được Trung tâm Ngoại ngữ sử dụng. Do đó để tiện cho quá trình quản lý nhà học,
mỗi nhà học đều có cán bộ quản lý nhà học, phục vụ cơng tác quản lý nhà học đó.

uT

Thơng thường để có thể sử dụng được phịng học (ngồi kế hoạch sử dụng chung của nhà
trường) các cá nhân cần phải làm thủ tục mượn phòng và chờ sự phê duyệt của cán bộ quản lý
nhà học.

3.1.2.2. Các chức năng của hệ thống :



Có hai chức năng chính: chức năng quản trị và chức năng của người sử dụng bình thường (người

đăng ký: sinh viên và cán bộ)


Chức năng quản trị:
◦ Quản lý cơ sở hạ tầng: Khu, nhà học, phòng học, …
Trang 21


Chương 3: Nội dung và kết quả nghiên cứu

◦ Quản lý thông tin, chức vụ của cán bộ
◦ Quản lý thông tin, chức vụ của sinh viên
◦ Quản lý học kỳ, năm học
◦ Quản lý lịch sử dụng phòng
◦ Quản lý nhóm người dùng hệ thống
Chức năng người dùng:

Hả



iL
ân

◦ Quản lý thông tin các đơn vị trực thuộc

◦ Quản lý thơng tin cá nhân
◦ Đăng ký sử dụng phịng

ng


3.1.2.3. Người sử dụng:

Hệ thống được sử dụng bởi 8 nhóm người sử dụng chính. Các nhóm được liệt kê và miêu tả các
chức năng chính như sau:

Quản lý đào tạo: cập nhật các mơn học, nhóm học phần được mở ở mỗi học kỳ năm học.



Quản trị hệ thống: quản lý nhóm người dùng và phân quyền sử dụng cho các nhóm người
dùng đó.








Quản trị thiết bị: quản lý thơng tin khu, nhà học, phòng học, … Cấp quyền sử dụng và

uT

quản lý phịng cho các đơn vị


Trợ lý thiết bị: quản lý thơng tin đơn vị




Đơn vị quản lý: quản lý thông tin lớp, thông tin cán bộ, chức vụ cán bộ, thông tin cố vấn
học tập và cấp quyền quản lý nhà học cho cán bộ.
Giáo viên cố vấn: quản lý thơng tin sinh viên, chức vụ sinh viên.






Quản lý tòa nhà: quản lý lịch sử dụng phòng, kết quả đăng ký sử dụng phịng



Người đăng ký (sinh viên và cán bộ): đăng ký sử dụng phòng.

Trang 22


Chương 3: Nội dung và kết quả nghiên cứu

uT




ng

Hả


iL
ân

3.1.2.4. Quy trình đăng ký sử dụng phịng:



Hình 3.1.2.4.1: Quy trình đăng ký phòng

Trang 23


×