Computer Era No.72019
0引言
高校人才引进系统,是为了满足高校在人才引进特别是高层次人才引进工作上的具体业务需求而设计开发的信息系统。系统的主要目标是人才引进管理工作规范化、高效化和信息化。
在人才引进系统出现之前,工作人员一般都是通过手工方式来完成这项工作,传统管理方式费时费力、效率低下、对信息进行查、更新、维护都比较困难,信息保密性差,无法保证数据的一致性、统计查询易出差错、报表生成难度大等一系列问题。
随着计算机技术的飞速发展,各种信息管理系统被开发出来,但传统开发技术较为陈旧,体系混乱,系统的可维护性及可扩展性较差。Django [1]是一款基于
Python 语言的开源Web 应用框架,因其具有操作简易、成本低、扩展灵活、安全等特点和优势,应用范围越来越广。从简单的、中小型应用扩展到复杂的、大型系统应用中,逐渐成为一种发展趋势,已经与PHP、J2EE、ASP.NET 等Web 开发平台并驾齐驱。无论是从质量、性能,还是从价格考虑,Django 框架平台都将在高校信息化发展过程中得到人们的关注。
1技术可行性
Python 是一种面向对象的解释型计算机程序设计语言,具有丰富和强大的库。Python 已经成为继Java、C++之后的第三大语言,相对于其他语言,它简单易学、可移植、可扩展、可嵌入、拥有丰富的库、开放源码
DOI:10.16644/jki33-1094/tp.2019.07.013
基于Django的高校人才引进系统设计与实现*
陈镭1,张凡龙2
(1.南京审计大学人力资源部,江苏南京211815;2.南京审计大学信息工程学院)
要:高校传统人才引进工作性质复杂、效率较低。针对该问题使用Python 语言设计并实现了一套基于Django 框架
的Web 系统,使人才引进流程可视化、透明化,显著提高了办公效率。该系统具有成本低、扩展灵活、性能稳定、数据安全等特点,在高校人事管理系统及其他信息系统中具有很好的示范效应。关键词:Python ;Django 框架;Web 系统;人才引进中图分类号:TP311
文献标志码:A
文章编号:1006-8228(2019)07-40-03
Design and implementation of Django based college talent introduction system
Chen Lei 1,Zhang Fanlong 2
(1.Dept.of Human Resource,Nanjing Audit University,Nanjing,Jiangsu 211815,China;
2.Dept.of Information Engineering,Nanjing Audit University )
Abstract :The traditional introduction of talents in colleges and universities is complex and inefficient.To solve this problem,a Django framework based web system is designed and implemented with Python language,which makes the process of talent introduction visualized and transparent,and significantly improves office efficiency.The system has the remarkable characteristics of low cost,flexible expansion,stable performance and data security.It has a good demonstration effect in personnel management system and other information systems in colleges and universities.Key words :Python ;Django framework ;Web system ;talent introduction
收稿日期:2019-03-25
*基金项目:国家自然科学基金(61603192)
作者简介:陈镭(1987-),男,河南人,硕士研究生,工程师,主要研究方向:数据挖掘,信息安全。通讯作者:张凡龙(1985-),男,山东宁阳人,博士,副教授,主要研究方向:模式识别,机器学习。
·
·40
计算机时代2019年第7期
等。因此Python 适用于Web 系统开发、桌面应用开发,移动应用开发,自动化脚本开发,科学计算等领域。Django 是基于Python 语言开发的开源网站框架,封装后的功能简单、易操作,深受广大用户喜爱。Django 强调代码复用,有很强的可扩展性,有大量功能强大的第三方插件,多个组件很方便的以插件形式服务于整个框架。
Django基于MVC的设计十分优美:Django 提供了开发网站经常用到的模块,减少了重复代码。基于Django 的Web 应用开发活动主要集中在models.py、templates 文件夹中的各模板文件及views.py 文件内。控制器接受用户输入的部分由框架通过urls.py 文件中自定义的正则表达式进行自行匹配,用户
只需关注模型(Model )、模板(Template)和视图(Views ),因此Django 的开发模式通常也称为MTV开发模式[2],
如图1所示。
图1Django 架构图
模型(Model ),作为数据存取层,处理与数据相关的事务,包括如何存取、如何验证有效性、包含哪些行为,以及各数据之间的关系。
模板(Template),作为表现层,处理与表现层相关的事务:如何把结果在Web 页面或其他类型的文档中进行显示。
视图(View ),作为业务逻辑层,负责捕获URL、存取模型、调取恰当模板、处理相关业务逻辑,视图层是模型层与模板层的桥梁。
2系统分析与设计
2.1需求分析
高校人事部门的工作是十分复杂的,其工作内容
涉及人才、人事、师资、劳资、档案等方面。
整体的人事管理系统应包含以下几个子系统:招聘管理系统、人事管理系统、职称管理系统、培训管理系统、人事档案系统等,围绕着这些模块,在具体业务实现上需要进行细化和业务流程的优化。
人事管理系统结构复杂,通常需要添加新的功能模块,所以系统的可维护性和扩展性必须要好,而Django 项目由负责不同业务逻辑的独立App 组成,使复杂系统变得逻辑清晰,提高系统的开发效率、降低维护成本、提升软件的可维护性和扩展性。
人才引进工作,特别是高层次人才的引进,主要由各高校人才工作办公室承担。另外,人才办的职责还包括国内和海外高层次人才的服务、考核、续聘。人才引进过程中的待遇测算、合同签订、科研测评、高层次人才信息库建设与维护等。2.2系统模块设计
本文在现有的高层次人才引进工作流程的基础上进行了合理的优化,进行详细的系统功能设计。高层次人才引进的一般流程为:用人单位制定年度进人计划、学校审批、人事部门和用人单位发布招聘信息、应聘者报名、用人单位审查、用人单位考核、人事部门测算待遇,最终由学校层面会议审定。
引进流程按系统模块可划分为:用户管理模块、权限管理模块、登录/注册模块、用人计划管理模块、招聘发布管理模块、报名及审核模块、待遇测算模块等,不同模块由不同功能的页面组成,如图2
所示。
图2人才引进系统模块图
用户管理模块:系统登录时自动进行身份判别,按照访问者的身份进入其相应的操作界面,用户等级一般分为三类,超级管理员用户拥有最高权限,高级用户(学校领导、人事部门、用人单位)其次,拥有部分管理权限,普通用户(应聘者)的权限最低。
权限管理模块:采用基于角的访问控制,对于用户来说,不同的用户作为不同的角,具有不同的
·
·41
Computer Era No.72019
操作权限。判断当前模块的当前操作是否需要认证;如果需要认证并且尚未登录,跳到认证网关,如果已经登录,判断当前用户是否具有访问权限;通过委托认证进行用户身份认证;获取用户的决策访问列表。
登录/注册模块[3]:应聘者在使用系统前必须先注册。考虑到保密和安全的需要,人事部门、用人单位用户不开放注册,默认为系统后台超级管理员进行添加、修改和删除。
用人计划管理模块:用人单位提交计划、学校审批等功能。
招聘发布管理模块:用人单位、人事部门发布招聘岗位公告管理。
报名及审核模块:注册后的应聘人员,选择相应岗位进行报名,用人单位、人事部门对应聘人员材料真实性、是否符合报考条件进行审核。
待遇测算模块:对考核通过的应聘人员,根据学校人才评价算法自动进行待遇测算,输入为应聘人员科研成果,如论文、项目、获奖、荣誉和年龄等多因素综合测算,输出为应聘人员待遇。
3系统实现
3.1数据库设计
数据库设计为了对数据库进行四个基本操作(CURD):创建、更新、读取和删除。人事系统中各个子系统,子系统每一个模块都会涉及到CURD操作。在对CURD不断变幻的操作中满足业务逻辑,从而实现人事系统复杂的功能。
数据库是整个系统的关键,数据库设计的好坏起着决定性的作用,人事系统数据库设计要遵循以下原则[4]。
⑴体现系统的需求,数据库设计应该优先满足系统的业务需求,准确表达数据之间的关联关系。
⑵保证数据的一致性,通过主键、外键、非空、唯一索引等保证数据的健壮。
⑶提高数据查询效率,通过合理创建表结构、视图、增加索引等方式,提高数据的查询效率。
⑷良好的扩展性,必要时能根据需求变化扩展数据结构。3.2系统开发
系统开发采用上文中提到的Django框架的MTV 三层架构。分别为模型层、模版层及视图层。系统后台采用Django自带的Admin管理模块,可以快速便捷地管理数据。
Web服务器采用Apache服务器,它是一款开放源码的Web服务器,可在大多数操作系统上稳定运行,它快速、可靠,通过简单的模块进行扩展,也可做代理服务器使用,Apache是目前比较流行的Web服务器软件。
数据库服务器采用Mysql,关系数据管理系统,使用标准化SQL查询语言。Mysql体积小、速度快、灵活、成本低,开放源代码,十分适合人事管理系统。
Django对Mysql数据库进行操作,需要设置数据库连接[5],即在setting.py文件中设置如下:其中ENGINE设置数据引擎,NAME设置数据库名称,USER连接数据库的用户名,PASSWORD连接数据库的密码,HOST服务器的IP地址,PORT数据库使用的端口号。
4结束语
高校人才引进工作以往多采用人工操作,效率低且容易出错。人才引进工作信息化迫在眉睫。本文设计实现了一套基于Django框架的Web系统,使人才引进流程可视化、透明化。从部署以后运行的效果看,该系统稳定、安全、适用性广泛。下一步将考虑人事管理系统、职称管理系统、培训管理系统、人事档案等其他信息系统的实现与部署。
参考文献(References):
[1]Django[EB/OL].<docs.djangoproject/zh-hans/
2.1/>.
[2]周君.基于Django框架的智能图书推荐系统.[J].电子科技,
2018.31(12):78-81
[3]何方园.基于Web的高校人事管理系统的设计与实现[D].吉
林大学,2015.
江苏人力资源招聘网[4]陈镭.基于LNMPA架构的Web系统设计与实现[J].计算机
时代,2014.8:22-26
[5]肖均磊,王敏,任想河,王俊.基于Django
设计与实现[J].信息通信,2018(9):138-139
··42