本文通过采用B/S架构,MySQL数据库以及python语言、django/flask框架,结合国内线上管理现状,开发了一个基于django的企业人才引进服务平台。系统分为多个功能模块:用户信息、企业信息、招聘信息、应聘信息等。通过系统测试,本系统实现了系统设计目标,相对于人工管理方式,本系统有效的减少了学校的经济投入,并且大幅度提升了企业人才引进服务管理的效率。
语言:Python
框架:django/flask
软件版本:python3.7.7
数据库:mysql
数据库工具:Navicat
前端框架:vue.js
通过比较两个不同因素的框架,可以看出Flask和Django不能被标记为单一功能中的最佳框架。当Django在快速发展的大型项目中看起来更好并且提供更多功能时,Flask似乎更容易上手。这两个框架对于开发Web应用程序都非常有用,应根据当前的需求和项目的规模来选择它们。
最新python的web框架django/flask都可以开发.基于B/S模式,前端技术:nodejs+vue+Elementui+html+css
,前后端分离就是将一个单体应用拆分成两个独立的应用:前端应用和后端应用,以JSON格式进行数据交互.充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护等特点
随着信息时代的来临,过去的传统管理方式缺点逐渐暴露,对过去的传统管理方式的缺点进行分析,采取计算机方式构建企业人才引进服务平台。本文通过课题背景、课题目的及意义相关技术,提出了一种企业信息、招聘信息、应聘信息等于一体的系统构建方案。目 录
摘 要 I
Abstract II
1 绪 论 1
1.1 课题背景 1
1.2 课题目的及意义 1
1.3 课题研究现状 2
1.4 论文主要工作内容 3
2 系统关键技术 4
2.1 django/flask框架 4
2.2 MySQL数据库 4
2.3 B/S架构 5
2.4python语言 5
3 系统分析 7
3.1 可行性分析 7
3.1.1 技术可行性 7
3.1.2 操作可行性 7
3.1.3 经济可行性 7
3.1.4 法律可行性 7
3.2 系统性能分析 8
3.2.1 系统安全性 8
3.2.2 数据完整性 8
3.3 系统功能分析 8
3.4 系统流程分析 10
3.4.1 数据开发流程 10
3.4.2 用户登录流程 10
3.4.3 系统操作流程 11
3.4.4 添加信息流程 12
3.4.5 修改信息流程 12
3.4.6 删除信息流程 13
4 系统设计 14
4.1 系统概要 14
4.2 系统结构设计 14
4.3数据库设计 15
4.3.1 数据库设计原则 15
4.3.2 数据库实体 15
4.3.2 数据库表设计 16
4.4 系统时序图 18
4.4.1 注册时序图 18
4.4.2 登录时序图 19
4.4.3 管理员修改用户信息时序图 19
4.4.4 管理员管理系统信息时序图 20
5 系统的实现 21
5.1 基本任务 21
5.2 前台功能模块 21
5.3 管理员功能模块 24
5.4 用户功能模块 28
5.5 企业功能模块 28
6 系统测试 31
6.1 测试环境 31
6.2 测试目的 31
6.3 测试概述 31
6.4 单元测试 33
6.4.1 注册测试 33
6.4.2 登录测试 33
6.5 集成测试 34
结 论 35
参考文献 36
致 谢 37
1 绪 论
1.1课题背景
随着网络的高速发展,网络技术的应用越来越广泛,信息化技术发展迅速,计算机管理系统优势逐渐体现,并且大量的计算机进入了千家万户。企业人才引进服务平台成为信息时代的一个重要代表,由于其涉及的数据量过大,过去的人工管理方式已经很难再维持下去,所以引用了信息化技术来进行管理[1]。计算机系统管理方式替代了人工管理方式,相对过去人工管理方式,利用计算机进行企业人才引进服务平台查询便利、信息准确率高、成本降低、效率提高、本次系统开发主要以企业人才引进服务为对象,根据功能需求开发整个信息化系统。
1.2 课题目的及意义
随着信息化管理技术不断发展,传统的企业人才引进服务已经无法适应,效率与预期相差甚远,因此需要开发一套操作方便,效率较高的企业人才引进服务平台。当前,21新世纪,人们已经进入了信息时代,人们获取信息的方式大大增加,摆脱了传统的报纸、电视、广播等媒体,而是从各种网络、自媒体平台上获取信息,这就导致日常生活中产生的数据信息十分巨大,尤其是对于企业人才引进服务管理,更需要大量的信息[2]。本系统能为用户、企业提供一个企业人才引进服务管理平台,就能够快速有效的帮助用户在线查询应聘信息等,企业发布招聘信息等,并且可以让管理员能够轻松效率地添加所有的信息。系统开发的意义主要在于两个方面,一方面,系统上线后,能够为用户与企业带来很大便利,企业人才引进服务管理涉及的数据量较大,要求精度高,采用计算机系统能够很好满足此需求,并且随着目前电脑的普及,方便用户使用。另一方面,通过自己动手操作设计系统,不仅可以提升自己的学习兴趣,也是在进入社会之前的一次很好的锻炼机会。
1.3课题研究现状
其实,相关的研究在国外已经开展了很多年了,将企业人才引进服务与信息技术相融合的理念在欧美等发达国家的企业建设中很受欢迎美国开放的Ravel平台,能够在电脑上实现远程企业信息、招聘信息、应聘信息等功能,极大的丰富了线上管理模式。于是希望通过互联网技术保障实现企业人才引进服务平台[3]。但现如今,也有许多国外学者提出,信息化时代带来的局面乱象越来越多,日益增长的企业人才引进服务管理平台让人应接不暇,需一场数字化的现代化的转型,建立可靠的企业人才引进服务平台,实现数字管理。
随着网上企业人才引进服务不断的增加,越来越多的人们开始加入了网上企业人才引进服务大潮中,但是我国网上企业人才引进服务管理效果低下,而且出错率也很高。因此大家迫切需要一款更加专业化的企业人才引进服务平台,设计该系统主要目的是为了方便用户可以有一个非常好的企业人才引进服务管理平台,管理员也可以通过该系统进行更加方便的管理操作。
1.4 论文主要工作内容
本文设计并实现了一个企业人才引进服务平台,主要包括以下具体工作内容:
(1)参考国内外相关系统开展了系统的需求分析,明确了用户信息、企业信息、招聘信息、应聘信息等主要功能需求;
(2)设计系统技术方案,采用python语言,选用MySQL数据库、B/S架构、django/flask框架来设计并实现本系统。
(3)具体介绍了各个功能模块的设计与实现。
(4)对系统的注册、登录等功能进行了全面的测试[4]。
3 系统分析
3.1 可行性分析
企业人才引进服务平台主要目标是实现网上的相关信息管理服务。在确定了目标后,我们从以下四方面对能否实现本系统目标进行可行性分析[5]。
3.1.1 技术可行性
技术上的可操作性是项目建设顺利进行的一个关键因素,技术措施必须达到要求,方能使项目顺利进行。该方案使用了开放源码的代码,并使用 python等技术,对软件的设计具有适度的困难和对电脑的硬件需求。所有的技术都很容易使用。该项目具有技术上的可行性[6]。
3.1.2 操作可行性
当今社会,电脑已经是耳熟能详的存在了,绝大部分用户都可以通过电脑轻松操作本系统。由此可知,我们的管理系统对于绝大部分用户来说,操作是完全可行的,并不存在操作上的盲区[7]。
3.1.3 经济可行性
本系统所需要用到的所以的工具都是开源,不收费的,并且本系统因为不具有太过于复杂的结构,用户维护系统的费用也不高。所以,本系统的经济可行性是可行的。
3.1.4 法律可行性
此企业人才引进服务平台是自己设计的管理系统,具有很大的实际意义。因为无论是软件还是数据库,采用的都是开源代码,因此这个系统的开发和设计,并不存在侵权等问题,在法律上完全具有可行性。
综上所述,企业人才引进服务平台在技术、经济、操作和法律上都具有很高的可行性,开发此程序是可行的[8]。
3.2 系统性能分析
3.2.1 系统安全性
企业人才引进服务管理制度必须由领导机构严格执行。具体要求如下:
(1)如果要使用企业人才引进服务平台,必须先注册才能进行登录。未获许可的使用者,不可以任意的方法,进入或浏览系统资讯及资料,因而本系统将会得到保护。
(2)在不同司法管辖区的具体实施。使用其他权限登录时,无法跳过此操作[9]。
(3)如果专门应用,该系统将包含许多必须保密的数据和信息。该系统存在系统漏洞,发布此信息将给用户造成重大损失。因此,我们充分保证了该规则和系统的发展趋势。
3.2.2 数据完整性
(1)必须对所有的数据进行详尽的记载,而该信息的内容不得为空白。
(2)各种资料的关联一定要恰当。
(3)在不同的档案中,同一资料资讯应该互相相符[10]。
3.3 系统功能分析
企业人才引进服务平台主要有管理员和用户、企业,三个功能模块:管理员模块、用户、企业模块。以下将对这三个功能的作用进行详细的剖析[11]。
管理员模块:管理员在系统中的是核心用户,管理员登录后,可以对后台系统进行管理。主要功能有:系统首页、个人中心、用户管理、企业管理、职位分类管理、企业信息管理、招聘信息管理、应聘信息管理、系统管理等功能。
4.3.3 数据库表设计
企业人才引进服务平台有一个内部数据库。对于数据库系统设计一般基于对我国现有企业数据库系统进行优化管理的操作系统。通常广泛采用的企业数据库资源管理软件系统主要类型包括mysqlserver、mysql、oracle等。该管理系统主要采用了mysql大型数据库资源管理软件。
下表将详细列出企业人才引进服务平台的数据库中所有列表。每一份量表的设计成果列出数据库的表信息属于设计的一部分,下面介绍数据库中的各个表的详细信息。
表4-1:关于我们
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
subtitle varchar 200 副标题
content longtext 4294967295 内容
picture1 longtext 4294967295 图片1
picture2 longtext 4294967295 图片2
picture3 longtext 4294967295 图片3
表4-2:收藏表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
refid bigint 商品id
tablename varchar 200 表名
name varchar 200 名称
picture longtext 4294967295 图片
type varchar 200 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注) 1
inteltype varchar 200 推荐类型
remark varchar 200 备注
表4-3:企业信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
qiyezhanghao varchar 200 企业账号
qiyemingcheng varchar 200 企业名称
lianxidianhua varchar 200 联系电话
qiyeyouxiang varchar 200 企业邮箱
qiyeleixing varchar 200 企业类型
qiyefengmian longtext 4294967295 企业封面
qiyexingzhi varchar 200 企业性质
yuangongrenshu varchar 200 员工人数
qiyejieshao longtext 4294967295 企业介绍
clicktime datetime 最近点击时间
clicknum int 点击次数 0
表4-4:企业
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
qiyezhanghao varchar 200 企业账号
mima varchar 200 密码
qiyemingcheng varchar 200 企业名称
farenxingming varchar 200 法人姓名
lianxidianhua varchar 200 联系电话
yingyezhizhao longtext 4294967295 营业执照
qiyeyouxiang varchar 200 企业邮箱
sfsh varchar 200 是否审核 待审核
shhf longtext 4294967295 审核回复
表4-5:公告信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture longtext 4294967295 图片
content longtext 4294967295 内容
表4-6:职位分类
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
zhiweifenlei varchar 200 职位分类
表4-7:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
name varchar 100 配置参数名称
value varchar 100 配置参数值
表4-8:招聘信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
zhiweimingcheng varchar 200 职位名称
zhiweifenlei varchar 200 职位分类
zhiweifengmian longtext 4294967295 职位封面
qiyezhanghao varchar 200 企业账号
qiyemingcheng varchar 200 企业名称
lianxidianhua varchar 200 联系电话
xinzidaiyu varchar 200 薪资待遇
gongzuodidian varchar 200 工作地点
gongzuoshijian varchar 200 工作时间
faburiqi date 发布日期
gongzuoneirong longtext 4294967295 工作内容
sfsh varchar 200 是否审核 待审核
shhf longtext 4294967295 审核回复
clicktime datetime 最近点击时间
clicknum int 点击次数 0
表4-9:关于我们
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
subtitle varchar 200 副标题
content longtext 4294967295 内容
picture1 longtext 4294967295 图片1
picture2 longtext 4294967295 图片2
picture3 longtext 4294967295 图片3
表4-10:用户
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuzhanghao varchar 200 用户账号
mima varchar 200 密码
yonghuxingming varchar 200 用户姓名
xingbie varchar 200 性别
lianxifangshi varchar 200 联系方式
touxiang longtext 4294967295 头像
nianling int 年龄
表4-11:应聘信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
zhiweimingcheng varchar 200 职位名称
zhiweifenlei varchar 200 职位分类
qiyezhanghao varchar 200 企业账号
qiyemingcheng varchar 200 企业名称
lianxidianhua varchar 200 联系电话
xinzidaiyu varchar 200 薪资待遇
gongzuodidian varchar 200 工作地点
gongzuoshijian varchar 200 工作时间
yingpinshijian date 应聘时间
gerenjianli longtext 4294967295 个人简历
yonghuzhanghao varchar 200 用户账号
yonghuxingming varchar 200 用户姓名
lianxifangshi varchar 200 联系方式
sfsh varchar 200 是否审核 待审核
shhf longtext 4294967295 审核回复
表4-12:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP
表4-13:token表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
userid bigint 用户id
username varchar 100 用户名
tablename varchar 100 表名
role varchar 100 角色
token varchar 200 密码
addtime timestamp 新增时间 CURRENT_TIMESTAMP
expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP
4.4 系统时序图
对于系统设计的详细描述主要采用了时序图的方式,时序图描述了对象之间传递消息的时间顺序, 用来表示用例中的行为顺序, 是强调消息时间顺序的交互图; 时序图描述的事物: 时序图描述系统中类和类之间的交互, 将这些交互建模成消息交换, 时序图描述了类以及类之间的交换以完成的期望行为的消息, 时序图中每条消息都代表了类的一个操作或者引起状态机改变的触发事件。
5 系统的实现
5.1 基本任务
该系统的实施方式是指能精确地描绘要实施的对象,以便后续的代码可以按照系统的实际情况用编程的方式来写相应的软件。
系统实现的基本任务如下:
(1)模块的数据结构进行设计,在之前的需求分析、概要设计中更加明确地界定更加含糊的资料类型。
(2)更加精确地对每个模板进行了更加细致的算法设计,并对每个组件的处理过程进行了算法的说明。
(3)执行实体化的资料库。
(4)其他设计:有时候,还要考虑到系统的不同,如:输入/输出格式设计、代码设计、人机对话设计等。
(5)对系统的说明书进行编写。
(6)评审:审查程序中的规则和数据库的实体构造。
系统结构可分为具有三个不同功能的包的python源代码、系统的数据库文件、界面代码。python源代码中三个不同包分别为控制、逻辑、缩写层,分别控制也不同的程序具有不同的性质。有了他们就能对系统的数据进行增删改查,完成界面的显示和数据统计,产生随机数和属性文件的读取。定时器类、翻页工具类等,包含了日期转换、字符串处理、获取编译环境等信息。这些类极大地方便了python编程,日常开发中,经常要用来这些类。
5.2 前台功能模块
当游客打开系统的网址后,首先看到的就是首页界面。在这里,游客能够看到企业人才引进服务平台的导航条显示首页、企业信息、招聘信息、公告信息、后台管理、个人中心。
6 系统测试
6.1 测试环境
企业人才引进服务平台的测试环境如表6-1所示。
表6-1 测试环境信息表
分类 名称 版本
操作系统 Windows 7
数据库 MySQL 8.0
浏览器 Chrome 87.0.4280.88
6.2 测试目的
进行软件测试主要是为了验证产品或者系统是否完成了实现功能,测试能够防止系统出现错误,还能降低开发成本减少不必要的花销,其次测试的好处包括防止错误、降低开发成本和提高性能[12]。其次,通过软件的检测可以对项目的安全性进行鉴别。向开发人员提供软件测试的反馈,并为项目的安全性评价提供必要的资料。此外,软件的检测保证在正式发布之前能够满足在线要求。在每一个开发过程中不断跟踪和对软件的测试。还有,软件测试还能保证系统到达预期的标准,从而能够尽快上线。
在本系统中,主要测试前台和后台,分别对系统的不同模块进行测试,比如用户登录等功能是否实现,实现过程中是否出现问题等。是否能够处理不同的数据。前台主要测试:用户界面的实现和不同界面的交互情况,后台主要测试系统经过管理后前后台链接是否顺畅,前台界面是否及时更新,更新是有误[13]。
6.3 测试概述
1.测试的原则
(1)测试应该以用户的需要为基础。从用户的观点来考虑,最大的问题是软件不能达到用户的预期。有时候,软件产品的测试结果非常完美,但却不是客户最终想要的产品,那么软件产品的开发就是失败的,而测试工作也是没有任何意义的。因此测试应依照客户的需求配置环境,并且按照客户的使用习惯进行测试并评价结果。
(2)尽早测试。由于软件开发过程中的各种不同的环节都会出现问题,所以要及早进行测试,将软件的检测工作渗透到整个软件的整个寿命过程,使测试者可以及早地察觉并防止这些缺陷。减少了 bug修理费用。
(3)穷尽测试是不可能的。因为受时间和财力的制约,无法实现所有不同的输入和输出的综合测试,测试者能够基于测试的风险和轻重缓急等来决定测试的重点,由此来进行测试,并在测试成本、风险和收益间找到一个平衡点。
这是因为测试者不能按时进行测试案例的升级,也可能是因为他们太了解测试案例和目标而导致的。
2.测试的方法
测试方法主要有人工测试和机器测试两种测试方法。
(1)人工测试
人工测试又称代码复审,包括个人复查、走查、会审三种方法。
(2)机器测试
计算机检测有两种方式:黑盒测试和白盒测试。黑盒测试:从外观上找出它的缺点和错误。黑盒测试是在编程接口上进行的,它仅仅是为了检验样品的执行情况,而不是根据要求规范的要求进行;白盒测试:对软件的内在构造进行了剖析,即在编程接口上进行了试验,其目的仅仅在于检验样品的执行情况,而不能满足要求规范的要求,检测来寻找问题。
在最终的检测中,本研究采取了将后黑盒子检测与白盒子检测相融合的方式。黑箱试验是为了对系统的输入、输出性能进行测试,以发现其性能上的误差和潜在的不足。白箱试验的目的是为了检测程序和程序的运行路线,从而找出运行中的问题。该系统有两种方式:单位试验和综合试验。
6.4 单元测试
6.4.1 注册测试
在对注册模块进行测试时,先键入用户名和密码等信息,再按下注册键测试是否能正常注册系统。如果信息填写错误,能否弹出弹框,用来提示用户何处输入错误。
注册测试用例如下表所示。
表6-2注册测试用例
测试模块 用户注册模块测试
测试目的 测试当注册信息输入不符合要求时,系统是否能进行相应处理并给出提示。
测试方法 黑盒测试
测试数据 1不输入用户名和密码,直接点击注册。
2输入未注册过的用户名。例如:qwer
3输入正确用户名,两次密码不一样。例如:用户名qwerty、密码 0001,确认密码1111
预期结果 1 界面不跳转,弹出对话框,提示用户输入必填项。
2界面跳转,弹出对话框,提示用户注册成功。
3界面不跳转,弹出对话框,提示两次密码不一致。
实际结果 与预期结果相同。
结论 注册模块实现成功。
6.4.2 登录测试
登录模块需要测试的功能有:输入登录名和密码,点击“登录”按钮,如果信息添加正确,是否正常进入系统首页。如果信息填写错误,能否弹出弹框,提示用户信息输入有误。登录测试用例如下表所示。
表6-3登录测试用例
测试模块 用户登录模块测试
测试目的 测试当登录信息输入不符合要求时,系统是否能进行相应处理并给出提示。
测试方法 黑盒测试
测试数据 1不输入用户名和密码,直接点击登录。
2输入未注册过的用户名。例如:qwertyu
3输入正确用户名,错误密码。例如:用户名qwertyu、密码 000
4输入正确用户名,正确匹配密码。例如:用户名qwertyu、密码 111
预期结果 1 界面不跳转,弹出对话框,提示用户输入必填项。
2界面不跳转,弹出对话框,提示用户当前用户名尚未注册。
3界面不跳转,弹出对话框,提示用户密码错误。
4界面实现跳转,登录功能正常进行。
实际结果 与预期结果相同。
结论 登录模块实现成功。
6.5 集成测试
集成测试的方案主要如下所述:
(1)在完成安装部署后,将该系统移植到其他电脑,并可以顺利地运行该系统。
(2)用户信息管理模块综合测试,新增一个新的使用者 qq,指定一个普通的角色,查看普通角色的特权,并储存设定。作为 qqq登录,以了解所具有的权利。
(3)根据企业人才引进服务平台的具体设计和实施,采用多种角色的方式,对各个模块的性能进行检测,并检测各个模块之间的逻辑功是否正确。
通过实验证明,该开发的系统能够满足企业人才引进服务管理程序和基础需求。
结 论
企业人才引进服务平台是一款公平、包容、易操作的系统,基本上能满足使用者的需求,也符合本人的初始发展目的与发展方向。本文主要研究了 python语言和 MySQL等技术时的应用,它们都具有自己的优势,使其在实际应用中可以实现功能的稳定,同时也可以实现用户的各种需要。在具体的系统要求和功能模块的具体分析之后,进行了有针对性的设计,最终经过了测试,使整个系统可以正常工作,该企业人才引进服务平台设计完成。
在这个企业人才引进服务管理的过程中,我参照了许多有关的案例,互相学习,互相借鉴。目前已逐渐改进,但仍存在许多缺陷,需要今后继续研究。在设计过程中我遇到了很多困难,包括知识上和技术上,同时由于长时间没有进行独立开发工作,编码熟练度有了明显的下降,一些常用的函数和编码技巧也变得生疏,但好在我及时做出了学习,查阅各种资料,进行广泛的钻研,多做请教,依靠互联网和书籍不断吸取知识,完善自己,最终在师生的协助下,成功完成了该系统。
我认为此系统还是有很多优点的,首先系统结构清晰,易于理解。设计合理,符合用户习惯和人机交互要求,能给用户带来很好的使用体验。代码简洁,注释全面,易于后期的管理和维护,代码健壮,鲁棒性高,适合企业和用户使用。但同时,也存在部分内容设计不合理,有待改进的情况,我会不断学习。