Bài viết này đi vào xây dựng Module quản trị hệ thống cho hệ thống phần mềm hỗ trợ công tác xét công nhận đạt tiêu chuẩn chức danh GS, PGS của Việt Nam.
Trang 1TẠP CHÍ KHOA HỌC ĐẠI HỌC SÀI GÒN Số 23 (48) - Tháng 12/2016
Xây dựng module quản trị hệ thống của hệ thống phần mềm hỗ trợ cơng nhận đạt tiêu chuẩn chức danh
Giáo sư, Phĩ Giáo sư
Building system-management module for software supporting the recognization of
Professors and associate Professors
ThS NCS Nguyễn Đức Huy Hội đồng Chức danh Giáo sư Nhà nước
Nguyen Duc Huy, M.A Ph.D student The State Council for Professor Title of Vietnam
Tĩm tắt
Nhằm nâng cao chất lượng đội ngũ GS, PGS và tằng cường hội nhập quốc tế, việc xây dựng hệ thống phần mền hỗ trợ cơng nhận đạt tiêu chuẩn trực tuyến là rất cần thiết Bài viết này đi vào xây dựng Module quản trị hệ thống cho hệ thống phần mềm hỗ trợ cơng tác xét cơng nhận đạt tiêu chuẩn chức danh GS, PGS của Việt Nam Đây là module hết sức quan trọng và là cơ sở để xây dựng các module chức năng của hệ thống
Từ khĩa: Giáo sư, phần mềm, quản trị
Abstract
In order to improve the quality of professors and associate professors in Vietnam and enhance international integration, it is necessary to construct a software supporting the application and regconization of those titles This artcile proposes to build a system-management module for the software supporting those procedures in Vietnam This is a very important module and a foundation on which functional modules will be constructed
Keywords: Professor, software, administration
1 Giới thiệu
Phát triển các lĩnh vực Giáo dục, Khoa
học - Cơng nghệ để xây dựng đất nước là
trách nhiệm của tồn Đảng, tồn dân và
của tồn xã hội, trong đĩ đội ngũ Giáo sư
(GS) và Phĩ giáo sư (PGS) là lực lượng
nịng cốt, giữ vai trị quyết định và dẫn dắt
việc phát triển sự nghiệp đào tạo và nghiên
cứu khoa học của Việt Nam Nhằm nâng
cao chất lượng đội ngũ GS, PGS và tằng
cường hội nhập quốc tế, xây dựng hệ thống phần mền hỗ trợ cơng nhận đạt tiêu chuẩn trực tuyến là rất cần thiết
Hệ thống phần mềm hỗ trợ cơng tác xét cơng nhận đạt tiêu chuẩn chức danh
GS, PGS là hệ thống phần mềm cĩ nhiều người dụng cùng sử dụng hệ thống cùng một thời gian Hệ thống cĩ nhiều quyền
sử dụng phù hợp với những quy trình đăng kí xét duyệt GS, PGS Hệ thống
Trang 2gồm có nhiều quyền sử dụng, nhiều danh
mục quản lý Mục tiêu của bài báo này
nhằm xây một module quản trị hệ thống
quản lý các danh mục cũng như người
dùng là điều rất cần thiết giúp hệ thống
được vận hành một cách thông suốt và
chính xác
2 Tổng quan module quản trị hệ thống
Module quản trị hệ thống bao gồm các
chứ năng:
Quản lý người dùng
o Thêm người dùng mới
o Thay đổi thông tin người dùng
o Xóa người dùng khỏi CSDL
Quản lý phân quyền người dùng
o Thêm các vai trò mới
o Thay đổi thông tin vai trò
o Gán người dùng cho các vai trò của hệ thống
o Gán các vai trò với các hội đồng
Quản lý hệ thống danh mục sử dụng trong hệ thống
o Danh mục tỉnh thành
o Danh mục ngành/lĩnh vực
o Danh mục chuyên ngành
o Danh mục dân tộc
o Danh mục hội đồng ngành/cơ sở
o Danh mục các loại công bố
o Danh mục các đợt xét duyệt
Đóng mở hệ thống
o Đóng hệ thống
o Mở hệ thống
Hình 1: Sơ đồ tổng quan module quản trị hệ thống
3 Xây dựng chi tiết về module quản trị hệ thống
3.1 Quản lý người dùng
Hình 2 Hệ thống quản lý người dùng
Cơ sở dữ liệu quản lý người dùng
a Thông tin chức năng
- Lưu các thông tin về tài khoản của
người dùng hệ thống
- Tác nhân tác động:
o Người quản trị: thêm, sửa, xóa các tài khoản không phải là ứng viên
o Các ứng viên: đăng ký tài khoản online
- Tên bảng: tbl_user
Module
quản trị hệ
thống
Quản lý người dùng
Phân quyền người dùng
Quản lý hệ thống danh mục
Đóng mở
hệ thống
Quản lý người dùng
Thêm người dùng
Thay đổi thông tin người dùng
Xóa người dùng
Trang 3b Luồng sự kiện chính
Hành động của tác nhân Phản ứng của hệ thống
Khi nhấn nút Thêm mới Sinh ra 1 bản ghi người dùng mới Nhập thông tin chung với các trường dữ liệu Hiển thị nút ‘Lưu thay đổi’
c Các trường dữ liệu của bảng tbl_user
Trường dữ liệu Tên trên DB Kiểu dữ liệu Ghi chú
Tên truy cập * UserName Varchar(16)
Mật khẩu * Password Varchar(16) Mã hóa
Có đang Active không * IsActive TINYINT(1) Lúc đầu khi người dùng mới
đăng ký mà chưa activate qua mail IsActive = 0
Tên đầy đủ FullName Varchar(64)
Triển khai xây dựng chức năng quản lý người dùng
Chức năng thêm, sửa, xóa người dùng tại AdminController
public function add_user(){
$role_lst = [];
$role_lst[]="Chưa phân quyền";
foreach (Role::all() as $role) {
$role_lst[$role->Role_ID] = $role->Name;
} return view('admin.add_user', compact('role_lst'));
}
public function edit_user($id){
$user = User::findorFail($id);
$role_lst = [];
$role_lst['0']="Chưa phân quyền";
foreach (Role::all() as $role) {
$role_lst[$role->Role_ID] = $role->Name;
} return view('admin.edit_user', compact('user','role_lst'));
}
Trang 43.2 Phân quyền người dùng
Tổng quan phần phân quyền người dùng của module quản trị hệ thống
Hình 3 Hệ thống phân quyền người dùng
Quản trị viên nhập thông tin để thêm vai trò người dùng hoặc thêm vai trò người dùng thuộc hội đồng cơ sở Quản trị viên nhập đủ thông tin và nhấn nút Thêm
Cơ sở dữ liệu phân quyền người dùng
Quản lý vai trò người dùng
a, Thông tin chức năng
- Lưu các thông tin về vai trò của
người dùng hệ thống
- Tác nhân tác động:
o Người quản trị: thêm, sửa, xóa
- Tên bảng: tbl_role
b, Luồng sự kiện chính
Hành động của tác nhân Phản ứng của hệ thống
Khi nhấn nút Thêm mới Sinh ra 1 bản ghi vai trò mới Nhập thông tin chung với các trường dữ liệu Hiển thị nút ‘Lưu thay đổi’
c, Các trường trong bảng tbl_role
Trường dữ liệu Tên trên DB Kiểu dữ liệu Ghi chú
Loại vai trò * RoleType TINYINT =0: quản trị viên
=1: hội đồng nhà nước
=2: hội đồng chuyên ngành
=3: hội đồng cơ sở
=4: ủy viên
=5: ứng viên
Phân
quyền
người
dùng
Thêm vai trò người dùng
Thay đổi thông tin vai trò
Gán người dùng cho các vai trò HT
Gán các vai trò với các hội đồng
Trang 5Quản lý vai trò người dùng thuộc các
hội đồng
a, Thông tin chức năng
- Phân vai trò cho các hội đồng:
một hội đồng có nhiều vai trò như chủ
tịch, thư ký, ủy viên Một vai trò cũng có
thể thuộc về nhiều hội đồng Do đó mối
quan hệ giữa vai trò và hội đồng là nhiều
– nhiều
- Bảng dữ liệu này đảm bảo rằng khi một ủy viên thuộc hội đồng A đăng nhập
hệ thống sẽ chỉ nhìn thấy dữ liệu của hội đồng mình, mà không nhìn được dữ liệu của các hội đồng khác
- Tác nhân tác động:
o Người quản trị: thêm, sửa, xóa các phân quyền
- Tên bảng: tbl_role_council
b, Luồng sự kiện chính
Hành động của tác nhân Phản ứng của hệ thống
Người quản trị chọn vai trò, và chọn hội
đồng tương ứng
Khi nhấn nút Thêm mới Sinh ra 1 bản ghi mới trong vào danh sách Nhập thông tin chung với các trường dữ liệu Hiển thị nút ‘Lưu thay đổi’
Chọn nút ‘Lưu thay đổi’ Ghi bản ghi vào CSDL
c, Các trường trong CSDL của bảng tbl_role_council
Trường dữ liệu Tên trên DB Kiểu dữ liệu Ghi chú
d, Triển khai phân quyền người dùng
Sau khi đăng nhập, hệ thống sẽ kiểm tra ($role_type == && $is_active == ) để phân quyền cho người dùng ở tác nhân nào của hệ thống
if($authdata)
{
$user = User::where('Email', $user);
$user = $user->first();
$is_active = $user->IsActive;
$id = $user->User_ID;
$role_id = $user->Role_ID;
$role = Role::where('Role_ID', $role_id);
$role = $role->first();
$role_type = $role->RoleType;
Session::put('user_ID', $id);
if($role_type == 5 && $is_active == 1)
Trang 6
3.3 Quản lý hệ thống danh mục
Hình 41 Hệ thống quản lý danh mục
Danh mục các lĩnh vực (ngành)
a, Thông tin chức năng
- Tác nhân tác động:
o Người quản trị: thêm sửa xóa
o Người dùng khác: chỉ xem thông tin
- Tên bảng: tbl_topic
b, Luồng sự kiện chính
Hành động của tác nhân Phản ứng của hệ thống
Khi nhấn nút Thêm mới Sinh ra 1 bản ghi lĩnh vực mới
Nhập thông tin chung với các trường dữ liệu Hiển thị nút ‘Lưu thay đổi’
Chọn nút ‘Lưu thay đổi’ Ghi bản ghi vào CSDL
các mục khác
c, Các trường dữ liệu trong bảng tbl_topic
Trường dữ liệu Tên trên DB Kiểu dữ liệu Ghi chú
Tên tiếng Anh Eng_Name Varchar(64) Định dạng hiển thị:
tên ngành tiếng Việt (Tên tiếng anh)
Mô tả Description Varchar(256)
Danh mục các chuyên ngành khoa học
a, Thông tin chức năng
- Tác nhân tác động:
o Người quản trị: thêm, sửa, xóa
o Người dùng khác: chỉ xem thông tin
- Tên bảng: tbl_major
Danh mục lĩnh vực
Quản lý
hệ thống
danh
mục
Danh mục chuyên ngành
Danh mục hội đồng ngành/ cơ
sở
Danh mục loại công bố
Danh mục đợt sét duyệt
Trang 7b, Luồng sự kiện chính
Hành động của tác nhân Phản ứng của hệ thống
Khi nhấn nút Thêm mới Sinh ra 1 bản ghi chuyên ngành mới
Nhập thông tin chung với các
trường dữ liệu Hiển thị nút ‘Lưu thay đổi’
Chọn nút ‘Lưu thay đổi’ Ghi bản ghi vào CSDL
Xóa Chỉ xóa khi bản ghi chưa được chọn ở các mục khác
c, Các trường dữ liệu trong bảng tbl_major
Trường dữ liệu Tên trên DB Kiểu dữ liệu Ghi chú
Mã chuyên ngành * Value Varchar(16)
Tên chuyên ngành * Name Varchar(64)
Tên tiếng Anh Eng_Name Varchar(64) Khi hiển thị: tên chuyên
ngành tiếng Việt (Tên tiếng anh)
Danh mục các hội đồng ngành/cơ sở
a, Thông tin chức năng
- Tác nhân tác động:
o Người quản trị: thêm sửa xóa
o Người dùng khác: chỉ xem thông tin
- Tên bảng: tbl_council
b, Luồng sự kiện chính
Hành động của tác nhân Phản ứng của hệ thống
Khi nhấn nút Thêm mới Sinh ra 1 bản ghi hội đồng cơ sở/ ngành
mới Nhập thông tin chung với các trường dữ liệu Hiển thị nút ‘Lưu thay đổi’
Chọn nút ‘Lưu thay đổi’ Ghi bản ghi vào CSDL
các mục khác
c, Các trường dữ liệu trong bảng tbl_council
Trường dữ liệu Tên trên DB Kiểu dữ liệu Ghi chú
Trang 8Tên hội đồng * Name Varchar(64)
Chủ tịch hội đồng Chairman Varchar(64)
Là hội đồng
ngành/cơ sở *
IsSubCouncil TINYINT(1) = 0: hội đồng cơ sở
= 1: hội đồng ngành
Danh mục các loại công bố
a, Thông tin chức năng
- Tác nhân tác động:
o Người quản trị: thêm, sửa, xóa
o Người dùng khác: chỉ xem thông tin
- Tên bảng: tbl_publication_type
b, Luồng sự kiện chính
Hành động của tác nhân Phản ứng của hệ thống
Khi nhấn nút Thêm mới Sinh ra 1 bản ghi loại công bố mới Nhập thông tin chung với các trường dữ liệu Hiển thị nút ‘Lưu thay đổi’
ở các mục khác
c, Các trường dữ liệu trong bảng tbl_publication_type
Trường dữ liệu Tên trên DB Kiểu dữ liệu Ghi chú
ID * PublicationType_ID TINYINT Auto inscrease
Mã loại công bố * Value Varchar(16)
Tên loại công bố * Name Varchar(64)
Danh mục đợt xét duyệt (năm xét duyệt)
a, Thông tin chức năng
- Tác nhân tác động:
o Người quản trị: thêm, sửa, xóa
o Người dùng khác: chỉ xem thông tin
- Tên bảng: tbl_period
b, Luồng sự kiện chính
Hành động của tác nhân Phản ứng của hệ thống
Khi nhấn nút Thêm mới Sinh ra 1 bản ghi đợt xét duyệt mới Nhập thông tin chung với các trường dữ liệu Hiển thị nút ‘Lưu thay đổi’
ở các mục khác
Trang 9c, Các trường trong CSDL của bảng tbl_period
Trường dữ liệu Tên trên DB Kiểu dữ liệu Ghi chú
Mã đợt xét duyệt * Value Varchar(16) Mặc định = năm đang xét Tên đợt xét duyệt * Name Varchar(16) Mặc định = năm đang xét
Mở đợt xét duyệt * IsOpen TINYINT(1) =0: đóng đợt xét duyệt
=1: mở kỳ xét duyệt
3.4 Đóng mở hệ thống
Hệ thống xét duyệt được mở và đóng vào
ngày chỉ định do đó, vào thời gian cho phép
ứng viên vào hệ thống khai thông tin để tham
gia vào quá trình xét duyệt ứng viên GS, PGS
Sau khi khai xong, hệ thống sẽ đóng để các ủy viên hội đồng chấm và thực hiện quá trình xét duyệt Quản trị viên sẽ đóng, mở hệ thống vào ngày chỉ định theo lịch của hội đồng chức danh giáo sư nhà nước
Quá trình đóng hệ thống cho từng quyền người sử dụng
public function getIsOpen(){
$isopen = Period::where('Name', 2016)->first();
return view('admin.is-open')->with([
'isopen' => $isopen, ]);
}
public function changeOpenCandidate()
{
$isopencandidate = Period::where('Name', 2016)->first();
if($isopencandidate->IsOpenCandidate){
$isopencandidate->IsOpenCandidate = 0;
$isopencandidate->update();
return Redirect::route('getIsOpen');
}
Khi quản trị viên đóng hệ thống ở role
nào thì role đó sẽ chỉ có thể xem mà không
được sửa, xóa bất kì thao tác nào đã thực
hiện trước đó Quản lý đóng mở hệ thống
đã bảo tính pháp lý, trung thực của hệ
thống xét duyệt
4 Kết luận
Vai trò của module quản trị hệ thống
là rất quan trọng trong hệ thống hỗ trợ xét duyệt chức danh GS, PGS Module giúp quản trị viên quản lý các danh mục trong
hệ thống giúp hệ thống hoạt động chính xác, tối ưu nhất
Bài viết trên đã trình bày chi tiết từng phần trong module quản trị hệ thống Từ góc nhìn người sử dụng, đến góc nhìn cơ
Trang 10sở dữ liệu và triển khai Từ đó, góp phần
tối ưu cũng như cải tiến cho hệ thống ngày
càng thuận tiện và chính xác hơn Đồng
thời, bài viết cũng đưa ra hướng nghiên
cứu tiếp theo đối với tác giả, đó là hoàn
thiện các module chức năng trực thuộc
module quản trị hệ thống nhằm hoàn thiện
hệ thống phần mền và đưa hệ thống phần
mềm vào triển khai hỗ trợ công tác xét
công nhận đạt tiêu chuẩn chức danh GS,
PGS của Việt Nam
TÀI LIỆU THAM KHẢO
1 http://www.nafosted.gov.vn/vi/he-thong-oms/
2 http://www.ieee.org/publications_standards/p ublications/authors/author_submission.html
3 https://edas.info/doc/authors.html
4 Biểu mẫu đăng ký xét duyệt chức danh PGS/GS năm 2015, Hội đồng Chức danh Giáo sư Nhà nước
5 https://laravel.com/
6 Thạc Bình Cường (2002), Giáo trình phân tích và thiết kế hệ thống thông tin, Nxb Khoa
học và Kỹ thuật
Ngày nhận bài: 26/11/2016 Biên tập xong: 15/12/2016 Duyệt đăng: 20/12/2016