Tải bản đầy đủ (.docx) (50 trang)

KHÓA LUẬN TỐT NGHIỆP : HỆ THỐNG QUẢN LÝ HOẠT ĐỘNG THỰC HIỆN, BẢO VỆ LUẬN VĂN THẠC SỸ

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 (537.98 KB, 50 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Trần Lê Vương

HỆ THỐNG QUẢN LÝ HOẠT ĐỘNG
THỰC HIỆN, BẢO VỆ LUẬN VĂN THẠC SỸ

KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin

HÀ NỘI – 2016


ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Trần Lê Vương

HỆ THỐNG QUẢN LÝ HOẠT ĐỘNG
THỰC HIỆN, BẢO VỆ LUẬN VĂN THẠC SỸ

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công Nghệ Thông Tin

Cán bộ hướng dẫn: TS Nguyễn Việt Anh

HÀ NỘI – 2016


VIETNAM NATIONAL UNIVERSITY, HANOI


UNIVERSITY OF ENGINEERING AND TECHNOLOGY

Trần Lê Vương

THE MANAGEMENT SYSTEM OF UPHOLDING
THE MASTER DEGREE THESIS

Major: Information Technology

Supervisor: Dr Nguyễn Việt Anh

HÀ NỘI – 2016


TÓM TẮT

Tóm tắt khóa luận tốt nghiệp:
Chúng ta đang sống trong một thời đại mới, thời đại phát triển rực rỡ của Công
nghệ thông tin. Cùng sự phát triển mạnh mẽ của công nghệ thông tin và Internet, việc
ứng dụng các thành tựu nghiên cứu của công nghệ thông tin vào hoạt động công tác quản
lý đã đem lại không ít những thành công và hiệu quả to lớn. Nội dung khóa luận tập trung
vào ứng dụng công nghệ trong bài toán quản lý hoạt động thực hiện bảo vệ luận văn thạc
sĩ. Từ các bước tìm hiểu quy trình triển khai ứng dụng trên Phalcon Framework, bài luận
sẽ triển khai xây dựng ứng dụng hệ thống để giải quyết bài toán trên.
Từ khóa: Hệ thống quản lý, quy trình thực hiện bảo vệ luận văn thạc sĩ


ABSTRACT

Abstract: In the era of information technology (IT), we are accessing to and

utilizing technology applications in almost all fields of our daily lives. Together with the
strong development of IT and the Internet, the application of most IT research
achievements into management gained a remarkable amount of success and great effects.
This thesis focuses on the technology application in “the management of upholding the
Master Degree thesis” problem. From steps that studying the process of deploying apps
based on Phalcon Framework, the thesis will deploy to develop a system in order to solve
the above problem.
Keywords: Management System, Upholding the Master Degree thesis


LỜI CẢM ƠN

Em xin bày tỏ lòng biết ơn sâu sắc tới các thầy, các cô trong khoa Công nghệ thông
tin, trường Đại học Công nghệ - Đại học Quốc gia Hà Nội đã tạo mọi điều kiện thuận lợi
cho em trong suốt quá trình học tập tại trường và làm luận văn tốt nghiệp.
Đặc biệt, em xin được gửi tới thầy Nguyễn Việt Anh lời cảm ơn chân thành nhất.
Trong quá trình thực hiện luận văn, thầy luôn định hướng, góp ý, sửa chữa những chỗ sai
giúp em không bị mất phương hướng tìm hiểu. Đến hôm nay luận văn đã được hoàn
thành, đó chính là nhờ sự nhắc nhở, đôn đốc và giúp đỡ nhiệt tình của thầy và cô.
Trong quá trình nghiên cứu và triển khai đề tài không tránh khỏi nhiều thiếu sót, em
kính mong nhận được sự thông cảm, bổ sung và đóng góp ý kiến của các quý thầy cô để
đề tài của em được hoàn thiện hơn.
Em xin chân thành cảm ơn!
Hà Nội, ngày 21 tháng 4 năm 2016
Tác giả

Trần Lê Vương


LỜI CAM ĐOAN


Em xin cam đoan đây là công trình nghiên cứu của riêng em và được sự hướng dẫn
khoa học của TS. Nguyễn Việt Anh. Những số liệu, hình ảnh phục vụ cho việc phân tích,
nhận xét, đánh giá được em thu thập từ các nguồn khác nhau có ghi rõ trong phần tài liệu
tham khảo.
Ngoài ra, trong luận văn còn sử dụng một số nhận xét, đánh giá cũng như số liệu
của các tác giả khác, cơ quan tổ chức khác đều có trích dẫn và chú thích nguồn gốc.
Nếu phát hiện có bất kỳ sự gian lận nào em xin hoàn toàn chịu trách nhiệm về nội
dung luận văn của mình.
Hà Nội, ngày 10 tháng 4 năm 2016
Tác giả


MỤC LỤC


DANH MỤC CÁC KÝ HIỆU VÀ VIẾT TẮT
Ký hiệu

Ý nghĩa

HV

Học viên

GV

Giảng viên

VPK


Văn phòng khoa

PHP

Personal Home Page

ORM

Object-relational mapping

MVC

Model-View-Controller

RAM

Random-access memory

9


MỞ ĐẦU
1. Lý do chọn đề tài
Việc ứng dụng các thành tựu nghiên cứu công nghệ thông tin vào hoạt động công
tác quản lý hành chính đã đem lại không ít những thành công và hiệu quả to lớn.Việc dần
thay thế, tự động hóa, vi tính hóa các thủ tục giấy tờ văn bản theo cách làm việc cũ sẽ
giúp cho quá trình quản lý trở nên nhanh chóng, dễ dàng và hiểu quả hơn.
Trong quá trình tìm hiểu về quy trình thực hiện, bảo vệ luận văn thạc sỹ, tôi nhận
thấy một số điểm khó khăn trong quy trình thực hiện truyền thống. Học viên thường nhận

được danh sách đề tài gợi ý thông qua các văn bản của nhà trường. Tuy nhiên, mỗi khi có
sự thay đổi về danh sách đề tài thường không được cập nhật một cách nhanh nhất và đầy
đủ nhất. Các thao tác về nghiệp vụ thường gồm nhiều bước, nhưng thường được làm thủ
công nên còn tốn khá nhiều thời gian. Tương tác giữa giảng viên và học viên không có
một môi trường thống nhất, quá trình tương tác cũng không được ghi lại chi tiết một cách
tự động.
Và để giải quyết những nhược điểm trên, dưới sự hướng dẫn, hỗ trợ của TS Nguyễn
Việt Anh, tôi mạnh dạn đề nghị xây dựng một hệ thống quản lý quy trình thực hiện, bảo
vệ luận văn thạc sỹ và đồng thời lựa chọn làm đề tài đó làm khóa luận tốt nghiệp.
2. Nội dung nghiên cứu
Nội dung luận văn tốt nghiệp gồm bốn phần chính, và trình bày theo các nội dung
chính sau:
-

Tổng quan bài toán nhằm giới thiệu tổng quan về bài toán, nghiệp vụ.
Tim hiểu về Phalcon Framework và xây dựng quy trình phát triển ứng dụng bằng
framework.
Xây dựng hệ thống quản lý quy trình thực hiện, bảo vệ luận văn thạc sĩ: Thực hiện
quá trình từ bước phân tích đến kết quả quá trình triển khai hệ thống.
Tổng kết lại quá trình thực hiện xây dựng hệ thống quản lý hoạt động thực hiện,
bảo vệ luận văn thạc sĩ, những điều đã đạt được và gợi ý các bước phát triển tiếp
theo.

3. Mục đích và phương pháp
Mục đích của bài luận là tìm hiểu cách thức phát triển một ứng dụng bằng một nền
tảng công nghệ có sẵn. Từ đấy xây dựng một quy trình phát triển ứng dụng dựa trên nền
tảng công nghệ đó và áp dụng vào giải quyết bài toán
Phương pháp tìm hiểu đi từ tổng hợp, phân tích nghiệp vụ của hoạt động thực hiện,
bảo vệ luận văn thạc sĩ, từ đó ứng dụng công nghệ lựa chọn vào giải quyết bài toán trên.
4. Kết quả dự kiến

Kết quả mong muốn thu được từ bài khóa luận là xây dựng được hệ thống quản lý
dựa trên những nền tảng công nghệ hiện nay, góp phần hỗ trợ tối đa tương tác giữa giảng
10


viên và học viên, cũng như với văn phòng khoa trong bài toán quản lý hoạt động thực
viện, bảo vệ luận văn thạc sỹ.

11


CHƯƠNG 1. TỔNG QUAN VỀ BÀI TOÁN
1.1 Mô tả nghiệp vụ
Nghiệp vụ của bài toán có thể được tóm tắt như sau: Học viên sau thời gian tham
gia học tập sẽ được thực hiện đề tài luận văn. Việc nhận đề tài có thể được thực hiện dưới
hai hình thức: Từng bộ môn, khoa tập hợp các đề tài nghiên cứu của giảng viên, thông
báo rộng rãi để các học viên đăng ký đề tài phù hợp với mình hoặc trong quá trình học
tập học viên chủ động đăng ký với thầy để lựa chọn đề tài.
Sau khi lựa chọn được đề tài, học viên lập đề cương nghiên cứu. Thầy giáo hướng
dẫn, bộ môn, khoa xác nhận thẩm định đề cương. Học viên bắt đầu tính thời gian thực
hiện đề tài luận văn ngay sau khi Nhà trường ra quyết định công nhận tên đề tài và thầy
hướng dẫn. Học viên thực hiện luận văn, sau khi có kết quả nghiên cứu, học viên tiến
hành thủ tục báo cáo tiến độ trước hội động của bộ môn, khoa để kiểm tra và ra quyết
định có thể bảo vệ kết quả đó hay không. Nếu được bảo vệ, học viên nộp đơn và hồ sơ
xin bảo vệ cho Khoa phụ trách, khoa lập danh sách hội đồng báo cáo phòng đào tạo,
phòng đào tạo ra quyết định thành lập hội đồng, Khoa thực hiện các thủ tục để thực hiện
buổi bảo vệ. Học viên nộp hồ sơ sau bảo vệ cho Khoa.
Bảng dưới đây tóm tắc các công việc trong qui trình thực hiện luận văn.
STT
Công việc

1.
Học viên (HV) nhận đề tài luận văn:
Cách 1: HV trực tiếp liên hệ với cán bộ hướng dẫn nhận
đề tài, hướng nghiên cứu.
Cách 2: HV lựa chọn đề tài từ danh sách đề tài nghiên
cứu của các bộ môn
2.
Khoa phê duyệt, ra quyết định

3.
4.
5.

6.

7.

Kết quả
Đăng ký đề tài,
thầy hướng dẫn,
đề cương chi tiết

Danh sách tên đề
tài, người hướng
dẫn
HV thực hiện luận văn: Tương tác với cán bộ hướng dẫn, Kết quả nghiên
thay đổi đề tài (nếu có – theo mẫu)
cứu (luận văn)
HV đăng ký kiểm tra tiến độ (mẫu)
Luận văn

Khoa tổ chức thẩm định luận văn của học viên trước các Kết quả thẩm
hội đồng chuyên môn
định chất lượng
luận văn
Khoa gửi HV kết quả thẩm định luận văn
Luận văn có
được bảo vệ
trước hội đồng
hay không
HV nộp hồ sơ xin bảo vệ (theo mẫu) cho Khoa gồm:
Đầy đủ hồ sơ
– Đơn xin bảo vệ
bảo vệ
– Nhận xét của cán bộ hướng dẫn
12


8.

9.

10.
11.
12.

13.

14.
15.


– Lý lịch khoa học (Học viên điền đầy đủ thông tin
và Khoa sẽ xác nhận tại mục Đơn vị đào tạo)
– Bản sao bằng tốt nghiệp Đại học
– Thông tin luận văn ( tiếng Anh và tiếng Việt)
– Phiếu thanh toán tốt nghiệp (Học viên nộp hết học
phí tại Phòng Kế hoạch – Tài vụ; và nộp kèm thẻ
học viên cho VPK và các xác nhận Khoa sẽ xác
nhận, học viên không phải đi xin xác nhận)
– 01 quyển luận văn đóng bìa mềm, bóng kính có
chữ ký đồng ý của cán bộ hướng dẫn tại trang bìa
phụ.
– File thông tin luận văn (Tiếng Anh và tiếng Việt )
– Tóm tắt Luận văn in trên khổ A5 (tối đa 24 trang)
– Bản sao hợp lệ chứng chỉ đầu ra Tiếng Anh
– Các công trình đạt được (bài báo…, nếu có)
Khoa gửi danh sách học viên, đĩa CD ghi Thông tin luận Tài liệu, hồ sơ
văn, phân công Hội đồng chấm cho phòng ĐT
phục vụ bảo vệ,
danh sách các
hội đồng sơ bộ
Khoa thông báo danh sách hội đồng chấm, thời gian bảo Danh sách các
vệ cho học viên
hội đồng và kế
hoạch bảo vệ
Khoa gửi học viên quyết định thành lập hội đồng
Học viên chuyển tài liệu cho các Thầy/Cô trong hội đồng:
Cán bộ hội đồng đọc và viết nhận xét phản biện
Khoa tổ chức cho HV bảo vệ luận văn: Khi bảo vệ đề
nghị Học viên chú ý ghi lại những yêu cầu chỉnh sửa của
hội đồng (nếu có)

HV nộp hồ sơ sau bảo vệ cho Khoa
– 01 quyển luận văn đóng bìa cứng có chữ ký đồng
ý của GVHD
– 01 đĩa CD ghi toàn văn luận văn, thông tin luận
văn, tóm tắt và slide trình bày
– 01 giấy biên nhận đã nộp tài liệu cho TTTV,
ĐHQGHN ( 01 quyển bìa cứng, 01 đĩa CD ghi
toàn văn luận văn, thông tin luận văn, tóm tắt luận
văn)
– 02 ảnh 3x4
– Biên bản chỉnh sửa luận văn (nếu hội đồng yêu
cầu)
Khoa nộp hồ sơ sau bảo vệ cho phòng ĐT
Xét tốt nghiệp
Quyết định công
nhận học vị và
cấp bằng
13


1.2 Danh sách chức năng
Dựa trên bảng tóm tắt quy trình thực hiện luận văn, qua phân tích, chức năng của hệ
thống được chia thành năm nhóm chức năng chính như sau:
– Đăng ký, xét duyệt đề tài luận văn
– Thực hiện đề tài luận văn
– Bảo vệ luận văn
1.2.1 Đăng ký, xét duyệt đề tài luận văn
Đây là nhóm chức năng từ bước học viên đăng ký đề tài cho đến bước cán bộ của
văn phòng khoa phê duyệt người hướng dẫn, tên đề tài cũng như đề cương.
– Đối với học viên: Học viên lựa chọn đề tài dựa trên danh sách đề tài có trong danh

sách, hoặc tạo đề tài mà mình mong muốn và đồng thời cho phép tạo đề cương.
• Lựa chọn đề tài
• Đăng ký đề tài
• Xây dựng đề cương
– Đối với giảng viên: Học viên sau khi đăng ký đề tài cần có sự phê duyệt tham gia
hướng dẫn đề tài từ giảng viên. Ngoài ra giảng viên cũng có thể đề xuất thêm đề
tài.
• Đề xuất đề tài
• Xác nhận hướng dẫn
• Phê duyệt đề cương
– Đối với Cán bộ nghiệp vụ (Khoa): Sau khi giảng viên đã xác nhận tham gia đề tài
cùng học viên, cán bộ nghiệp vụ kiểm tra phê duyệt đề tài, đề cương, cán bộ
hướng dẫn.
• Phê duyệt tên đề tài, cán bộ hướng dẫn
• Phê duyệt đề cương
• Quyết định công nhận tên đề tài, cán bộ hướng dẫn
1.2.2 Thực hiện đề tài luận văn
Đây là nhóm chức năng trong quá trình học viên thực hiện luận văn, hỗ trợ giảng
viên và học sinh tương tác với nhau.
– Đối với học viên: Học viên trong quá trình thực hiện đề tài cần báo cáo tiến độ
thực hiện đề tài với giảng viên. Hệ thống cần hỗ trợ xem lại nhật ký quá trình thực
hiện đề tài. Ngoài ra học viên có thể thay đổi cũng như ra hạn thực hiện đề tài.
• Thay đổi đề tài
• Nhật ký quá trình thực hiện đề tài
• Báo cáo tiến độ thực hiện đề tài
• Ra hạn thực hiện đề tài
– Đối với giảng viên: Trong quá trình thực hiện đề tài của học viên, giảng viên có
thể kiểm tra, đánh giá để cho phép bảo vệ/không bảo vệ đề tài. Giảng viên cần phê
duyệt nếu như học viên có nhu cầu thay đổi đề tài.
• Thay đổi đề tài

• Nhật ký quá trình thực hiện đề tài
14


• Cho phép bảo vệ/ không bảo vệ đề tài
1.2.3 Bảo vệ luận văn
Đây là nhóm chức năng hỗ trợ quá trình bảo vệ luận văn.
– Đối với học viên: Cho phép học viên làm đơn, nộp hồ sơ bảo vệ. Học viên cũng có
thể nộp hồ sơ sau bảo vệ, và nhận quyết định thành lập hội đồng.
• Làm đơn xin bảo vệ
• Nộp hồ sơ xin bảo vệ
• Nhận quyết định thành lập hội đồng
• Nộp hồ sơ sau bảo vệ
– Đối với giảng viên: Phê duyệt cho học viên bảo vệ, bổ sung nhận xét hướng dẫn,
đồng thời cho phép đề xuất hộ đồng thẩm định.
• Xác nhận đồng ý cho học viên bảo vệ
• Đề xuất hội đồng thẩm định
• Viết nhận xét hướng dẫn
– Đối với cán bộ nghiệp vụ: Lúc này, cán bộ nghiệp vụ cần thẩm định kết quả
nghiên cứu, kiểm tra hồ sơ bảo vệ. Nếu hồ sơ học viên hoàn thiện, cán bộ có thể ra
quyết định thành lập hội đồng, và lập kế hoạch tổ chức bảo vệ.
• Thẩm định kết quả nghiên cứu
• Kiểm tra hồ sơ bảo vệ
• Ra quyết định thành lập hội đồng
• Lập kế hoạch tổ chức bảo vệ
• Kiểm tra hồ sơ sau bảo vệ
– Đối với phản biện: Cần viết đánh giá, nhận xét về học viên
• Viết nhận xét phản biện

15



CHƯƠNG 2. TÌM HIỂU VỀ PHALCON FRAMEWORK VÀ QUY
TRÌNH PHÁT TRIỂN ỨNG DỤNG
2.1 Giới thiệu về Phalcon Framework
2.1.1 Phalcon Framework
Ra đời vào năm 2012, Phalcon là một PHP framework mã nguồn mở miễn phí được
xây dựng nhằm hỗ trợ phát triển các ứng dụng web theo mô hình kiến trúc MVC và cung
cấp đầy đủ các tính năng tiện ích như ORM, các template engine cho hiển thị, caching dữ
liệu, phân trang và một loạt các tính năng khác.
Không giống như hầu hết các PHP Framework, thay vì phải download cả một gói
thư viện gồm nhiều file PHP thì với Phalcon chỉ cần cài đặt chúng như một PHP module.
Nhờ vậy mà quá trình cài đặt diễn ra rất nhanh chóng. Bên cạnh đó, do được viết dưới
dạng PHP module nên toàn bộ Framework đều được nạp sẵn vào trong RAM khi hệ
thống khởi động, loại bỏ hoàn toàn quá trình đọc Framework từ ổ đĩa cứng mỗi khi có
request tới giúp tối ưu hóa tốc độ thực thi, xứng đáng tên gọi của mình.[1]
2.1.2 Ưu điểm và nhược điểm
-

-

Ưu điểm:
+ Hiệu suất thực thi cao, tốc độ thực thi nhanh (nhanh nhất trong tất cả các
PHP framework hiện nay)
+ Dung lượng nhỏ gọn, dễ dàng cài đặt
+ Dễ học, dễ lập trình đối với người mới bắt đầu
+ Cấu trúc thư mục đơn giản, dễ hiểu, dễ điều chỉnh
+ Các thao tác xử lý dữ liệu đơn giản, thuận tiện
+ Các tính năng được hỗ trợ là cực kỳ phong phú
+ Mã nguồn đẹp mắt nhờ sử dụng Template engine

+ Cộng đồng developer ngày một gia tăng
+ Web site viết bằng Phalcon có thể chạy đồng thời, an toàn cùng các web
site PHP viết bằng thư viện khác.
Nhược điểm:
+ Vẫn là một framwork còn “non trẻ”: cộng đồng sử dụng không đông đảo
bằng một số framework lâu đời khác, tuy nhiên vẫn đang gia tăng từng
ngày.
+ Không chạy được trên môi trường Shared Hosting: có thể khắc phục bằng
thư viện Rachet.
+ Phiên bản Phalcon 1 được viết bằng C nên việc debug là khó khăn: điều
này được giải quyết phần nào với phiên bản Phalcon 2 được viết bằng
Zephir.

16


2.2 Quy trình phát triển ứng dụng bằng Phalcon Framework
Trong quá trình tìm hiểu framework cũng như dựa trên kinh nghiệm thực tế, tôi đã
xây dựng quy trình phát triển ứng dụng gồm các bước như sau:
(1) Xây dựng Server và cài đặt Framework
(2) Xây dựng cấu trúc ứng dụng
(3) Xây dựng cơ sở dữ liệu
(4) Xây dựng các Model tương ứng với các bảng trong cơ sở dữ liệu
(5) Xây dựng các Controller và View tương ứng với từng chức năng
(6) Xây dựng các thành phần bổ trợ
Bài toán minh họa: Xây dựng ứng dụng cho phép người dùng đăng nhập vào hệ
thống để tạo và xem các bài viết.
2.2.1 Xây dựng Server và cài đặt Framework
Hiện tại, Phalcon Framework hỗ trợ ba nền tảng Web Server phổ biến là Apache,
Nginix và Cherokee. Tùy theo mục đích và nhu cầu của ứng dụng, chúng ta sẽ lựa chọn

công nghệ Web Server phù hợp nhất. Về cơ sở dữ liệu, Phalcon hỗ trợ cả hai mô hình cơ
sở dữ liệu quan hệ và không quan hệ. Đồng thời Phalcon cũng yêu cầu phiên bản PHP tối
thiểu là 5.3.
Tùy phiên bản hệ điều hành làm Web Server, quá trình cài đặt Framework cũng có
sự khác biệt. Chi tiết quá trình cài đặt Framework có thể tham khảo tại trang chủ của
Phalcon Framework [2].
Với bài toán minh họa, do tính đơn giản về chức năng và xử lý nên sẽ sử dụng
Apache làm Web Server và Mysql làm hệ quản trị cơ sở dữ liệu.
2.2.2 Xây dựng cấu trúc thư mục ứng dụng
Một điểm đặc trưng của Phalcon Framework rất khác so với nhiều PHP Framework
hiện nay đó chính là không dựng sẵn khuôn mẫu của cấu trúc ứng dụng. Do đó, chúng ta
có thể tự tạo ra cấu trúc thư mục phù hợp nhất với ứng dụng và sau đó sẽ cấu hình
Phalcon theo mô hình cấu trúc mà chúng ta đang sử dụng.
Để xây dựng cấu trúc thư mục, chúng ta cần có bước đánh giá, phân tích sơ bộ về
hệ thống. Qua đó xây dựng cấu trúc thư mục phù hợp nhất, dễ thao tác và thuận tiện trong
quá trình bảo trì sửa lỗi.
Với bài toán minh họa, do tính chất đơn giản của bài toán nên sẽ sử dụng cấu trúc
thư mục như hình bên. Trong đó:
+ controllers, models, views tương ứng là các folder của Controller, Model và View.
+ configs: folder lưu trữ các file thiết lập cấu hính của ứng dụng
17


+ public: folder thường sẽ lưu trữ các nguồn tài nguyên chung của ứng dụng như
các file Css, Js hay các file ảnh.

Hình . Cấu trúc thư mục cơ bản cho bài toán minh họa

2.2.3 Xây dựng cơ sở dữ liệu
Trong bước này, chúng ta tập trung tạo cơ sở dữ liệu thông qua tài liệu phân tích

thiết kế. Sau đó, thiết lập cài đặt bước đầu để ứng dụng kết nối tới cơ sở dữ liệu đã tạo.
Trong bài toán minh họa, chúng ta có hai bảng cơ sở dữ liệu là NguoiDung và
BaiViet. Do sử dụng Mysql làm hệ quản trị, chúng ta sẽ tiến hành tạo cơ sở dữ liệu theo
quy trình của hệ cơ sở dữ liệu Mysql. Để kết nối project với cơ sở dữ liệu của ứng dụng,
chúng ta tạo file config.php trong folder configs rồi thiết lập thông số kết nối username,
password, dbname theo như thông số trên Server cài đặt.
2.2.4 Xây dựng Model
Đối với cơ sở dữ liệu, chúng ta có thể tương tác trực tiếp thông qua các câu lệnh hỗ
trợ của PHP. Tuy nhiên, Phalcon còn sử dụng mô hình Object Relational Mapping(ORM)
để hỗ trợ người lập trình trong quá trình tương tác với cơ sở dữ liệu. Ưu điểm rất lớn của
mô hình này đó là giảm thiểu đoạn mã lặp, tăng tốc độ phát triển ứng dụng. Do đó trong
quy trình phát triển này, tôi lựa chọn việc tương tác với cơ sở dữ liệu thông qua mô hình
trên.
Với mỗi bảng cơ sở dữ liệu, chúng ta sẽ xây dựng một Model tương ứng với bảng
đó. Trong đó, mỗi trường của bảng sẽ là thuộc tính trong Model. Ngoài ra một số các
ràng buộc thuộc tính trong bảng như NOT NULL, UNIQUE; ràng buộc buộc về quan hệ
giữa các bảng cũng được framework hỗ trợ và miêu tả trong Model. Chi tiết các ràng
buộc và cú pháp, tham khảo chi tiết tại link [3].
Với bài toán minh họa, với bảng NguoiDung,ta có biểu diễn tương ứng bên Model
như hình bên.
Trong đó, hai trường dữ liệu(tendangnhap, matkhau) của bảng được
Hình 3 Model NguoiDung
biểu diễn bởi hai thuộc tính của Model($tendangnhap, $matkhau).

18


Đồng thời, các ràng buộc về dữ liệu NOT NULL, độ dài tối đa cũng được Model
biểu diễn thông qua các class PresenceOf và StringLength.
Bảng NguoiDung

+ tendangnhap: VARCHAR(20), NOT
NULL
+ matkhau: VARCHAR(20), NOT
NULL
Hình Bảng cơ sở dữ liệu NguoiDung

2.2.5 Xây dựng Controller và View tương ứng với từng chức năng
Phalcon sử dụng kiến trúc Model – View – Controller để quản lý mã nguồn một
cách hiểu quả. Trong đó, Controller giữ nhiệm vụ nhận yêu cầu từ người dùng và đưa ra
phương thức xử lý còn View sẽ đảm nhận nhiệm vụ hiển thị thông tin, tương tác với
người dùng. Do đó, với mỗi chức năng, ta cần tạo bộ các View và Controller tương ứng
với nó.
Trong Phalcon, khi truy cập vào đường dẫn có dạng như https://a/b/c/d/e, mặc định
hệ thống sẽ gọi Controller C, và truy câp đến action D với biến kèm theo là E. Đồng thời
mặc định cũng gọi View có dạng D.volt hoặc D.html hoặc D.phtml tùy theo template
engine mà ứng dụng sử dụng.
Để xây dựng Controller trong Phalcon, class xây dựng cần có hậu tố “Controller”
và actions phải có hậu tố “Action”. Tất cả các Controller đều phải kế thừa từ lớp
Phalcon\Mvc\Controller.
Phalcon sử dụng Volt framework nhằm giúp quá trình xây dựng View nhanh hơn,
các đoạn mã trở nên ngắn gọn và súc tích. Chi tiết tham khảo tại trang tài liệu của
Framework [4].
Với bài toán minh họa, tính năng đăng nhập của bài toán có thao tác như sau:
(1) Người dùng nhập tài khoản và mật khẩu vào giao diện ứng dụng.
(2) Hệ thống sẽ kiểm tra xem với tài khoản và mật khẩu người dùng nhập vào có
trùng với người dùng nào trong cơ sở dữ liệu không.
(3) Nếu có, người dùng được xác thực và cho phép đến trang xem bài viết.
(4) Nếu không sẽ thông báo lỗi và bắt người dùng nhập lại thông tin.
Dưa trên logic đăng nhâp, ta xây dựng được Controller tương ứng với các bước
logic được chuyển sang các đoạn mã tương ứng như trong hình


19


Hình 5 Controller cho chức năng đăng nhập

2.2.6 Xây dựng các thành phần bổ trợ
Tùy tính năng cũng như độ phức tạp của chức năng, chúng ta có thể xây dựng thêm
các thành phần bổ trợ đề giải quyết bài toán một cách cụ thể hơn.
Các thành phần bổ trợ có thể là các thư viện bên ngoài, hoặc có thể là các đoạn mã
sử dụng xử lý một thao tác, nghiệp vụ chung nào đó. Thông thường trong Phalcon, các
thư viện, thành phần bổ trợ thương được đặt trong thư mục Plugins hoặc Library.
Mục đích chính của việc xây dựng các thành phần bổ trợ nhăm tái sử dụng các đoạn
mã, tranh các đoạn mã lặp, đồng thời giúp cho việc quản lý các đoạn mã trở nên hiểu quả
hơn. Tuy nhiên trong trường hợp đơn giản, việc tách các đoạn mã để tạo thành các thành
phần bổ trợ có thể làm cho dự án trở nên cồng kềnh, không cần thiết. Do đó cần cân nhắc
trước khi xây dựng thành phần bổ trợ để đạt hiểu quả cao nhất
Đối với bài toán minh họa, do tính đơn giản nên trong trường hợp này không cần
xây dựng thêm thành phần bổ trợ.

20


CHƯƠNG 3. XÂY DỰNG HỆ THỐNG QUẢN LÝ QUY TRÌNH
THỰC HIỆN, BẢO VỆ LUẬN VĂN THẠC SỸ
3.1 Phân tích, thiết kê hệ thống
3.1.1 Biểu đồ Use Case

Hình 6 Biểu đồ Use Case phân hệ chức năng cơ bản của hệ thống


3.1.1.1 Use case phân rã chức năng Đăng ký, xét duyệt đề tài luận văn

Phân hệ gồm các chức năng chính sau:
- Học viên:
+ Lựa chọn đề tài
+ Đăng ký đề tài
+ Xây dựng đề cương
- Giảng viên:
+ Đề xuất đề tài
+ Xác nhận hướng dẫn
+ Thẩm định đề cương chi tiết
- Cán bộ nghiệp vụ:
+ Phê duyệt tên đề tài, cán bộ hướng dẫn
+ Phê duyệt đề cương
+ Quyết định công nhận tên đề tài, cán bộ hướng dẫn
21


Hình 7 Biểu đồ Use Case phân rã chức năng Đăng ký, xét duyệt đề tài luận văn

3.1.1.2 Use case phân rã chức năng Thực hiện luận văn

Phân hệ gồm các chức năng chính sau:
- Học viên:
+ Thay đổi đề tài
+ Nhật ký quá trình thực hiện đề tài
+ Báo cáo tiến độ thực hiện đề tài
+ Ra hạn thực hiện đề tài
- Giảng viên:
+ Thay đổi đề tài

+ Nhật ký quá trình thực hiện đề tài
+ Cho phép bảo vệ/ không bảo vệ đề tài

22


Hình 8 Biểu đồ Use Case phân rã chức năng Thực hiện luận văn

3.1.1.3 Use case phân rã chức năng Bảo vệ luận văn

Phân hệ gồm các chức năng chính sau:
-

-

-

-

Học viên:
+ Làm đơn xin bảo vệ
+ Nộp hồ sơ xin bảo vệ
+ Nhận quyết định thành lập hội đồng
+ Nộp hồ sơ sau bảo vệ
Giảng viên:
+ Xác nhận đồng ý cho học viên bảo vệ
+ Đề xuất hội đồng thẩm định
+ Viết nhận xét hướng dẫn
Cán bộ nghiệp vụ:
+ Thẩm định kết quả nghiên cứu

+ Kiểm tra hồ sơ bảo vệ
+ Ra quyết định thành lập hội đồng
+ Lập kế hoạch tổ chức bảo vệ
+ Kiểm tra hồ sơ sau bảo vệ
Phản biện:
+ Viết nhận xét phản biện

23


Hình 9 Biểu đồ Use Case phân rã chức năng Bảo vệ luận văn

3.1.2 Mô tả use case chi tiết
3.1.2.1 Đăng ký, xét duyệt đề tài

3.1.2.1.1 Lựa chọn đề tài
Tên use case: Lựa chọn đề tài

Mức độ BMT: Bắt buộc

Actor chính: HV

Actor phụ: HT

Mô tả: HV lựa chọn đề tài từ danh sách các đề tài đã có (do giảng viên đề xuất)
Điều kiện bắt đầu: HV đăng nhập thông tin hệ thống
Điều kiện sau khi dùng: Thông báo kết quả cho HV
Trình tự các sự kiện:
Hoàn cảnh sử dụng thành công cơ bản:
1. HV đăng nhập vào hệ thống.

2. HV lựa chọn chức năng lựa chọn đề tài.
3. Hiển thị danh sách các đề tài chưa có học viên đăng ký tham gia, cung cấp
cung cấp giao diện tìm kiếm đề tài theo các tiêu chí khác nhau.
4. HV lựa chọn 01 đề tài phù hợp
5. Yêu cầu xác nhận việc chọn đề tài.
6. Hiển thị thông báo HV đã đăng ký đề tài trên và lưu vào csdl
Các hoàn cảnh sử dụng phụ:
Trường hợp bị lỗi thì hiển thị thông báo lỗi
Yêu cầu phi chức năng: Mỗi sinh viên chỉ được chọn 01 đề tài.Thời gian thực hiện
nhanh.

24


3.1.2.1.2 Đăng ký đề tài
Tên use case: Đăng ký đề tài

Mức độ BMT: Bắt buộc

Actor chính: HV

Actor phụ: HT

Mô tả: HV sau khi trao đổi với giảng viên, sẽ đăng ký tên đề tài và người hướng
dẫn
Điều kiện bắt đầu: HV đăng nhập thông tin hệ thống
Điều kiện sau khi dùng: Thông báo kết quả cho HV
Trình tự các sự kiện:
Hoàn cảnh sử dụng thành công cơ bản:
1. HV đăng nhập vào hệ thống.

2. HV lựa chọn chức năng Đăng ký đề tài.
3. Cung cấp giao diện cho phép HV nhập tên đề tài.
4. Kiểm tra tính hợp lệ (nếu tên đề tài đã có trong hệ thống thì cảnh báo).
5. Cung cấp giao diện cho phép HV nhập tên giảng viên hướng dẫn (Có thể lựa
chọn từ danh sách giảng viên có sẵn trên hệ thống)
6. Cung cấp giao diện cho phép HV lưu trữ thông tin về đề tài vào csdl.
7. Nếu yêu cầu sửa thông tin đề tài → nhập thông tin cần sửa, kiểm tra tính hợp
lệ dữ liệu, lưu thông tin về đề tài
8. Nếu yêu cầu xóa thông tin đề tài → xóa thông tin đề tài.
Các hoàn cảnh sử dụng phụ:
Trường hợp bị lỗi thì hiển thị thông báo lỗi
Yêu cầu phi chức năng: Mỗi sinh viên chỉ được đăng ký 01 đề tài.Thời gian thực
hiện nhanh.
3.1.2.1.3 Xây dựng đề cương
Tên use case: Xây dựng đề cương

Mức độ BMT: Bắt buộc

Actor chính: HV

Actor phụ: HT

Mô tả: HV xây dựng đề cương nghiên cứu chi tiết của đề tài
Điều kiện bắt đầu: HV đã lựa chọn được đề tài nghiên cứu
Điều kiện sau khi dùng: Thông báo kết quả cho HV
Trình tự các sự kiện:
Hoàn cảnh sử dụng thành công cơ bản:
1. HV đăng nhập vào hệ thống.
2. HV lựa chọn chức năng Xây dựng đề cương chi tiết.
3. Hiển thị danh sách các phiên bản khác nhau của đề cương

4. Nếu yêu cầu thêm mới đề cương → cung cấp giao diện thêm mới, kiểm tra
tính hợp lệ dữ liệu, lưu thông tin đề cương chi tiết
5. Cung cấp giao diện xác nhận bản đề cương hoàn chỉnh, và gửi mail thông
báo đến giảng viên hướng dẫn để tiến hành phê duyệt
6. Nếu yêu cầu sửa đổi đề cương → cung cấp giao diện sửa đổi thông tin, kiểm
25


×