网上人才招聘系统
1、概述 3
2、系统分析 4
2.1、问题定义 4
2.2、可行性研究 4
2.2.1、可行性需求分析 4
2.2.2、数据流分析 5
2.2.3、数据字典 6
2.2.4、程序流程图 6
2.2.4、开发进度计划 6
2.3、需求分析 7
2.3.1、功能需求分析 7
2.3.2、数据需求分析 10
2.3.3、性能需求分析 10
3、系统设计 11
3.1、概要设计 11
3.1.1、系统主要框架 11
3.1.2、系统软件结构 12
3.1.3、系统功能模块划分 12
3.2、详细设计 14
3.2.1、系统开发环境 14
3.2.2、UML主要建模图 15
4、数据库设计 17
4.1、数据库概念设计 17
4.1、数据库逻辑设计(建立数据库请以此表为准) 19
4.1、数据库物理设计 20
5、系统实施(代码见附件) 21
6、系统测试 21
7、系统发布 22
8、操作说明书 22
8.1、工程部署说明 22
8.2、系统操作说明书 23
9、小组团队 28
10、心得体会 29
11、参考文献 30
摘 要
随着信息技术的发展,网络在人们生活和交际中的应用越来越广泛。 招聘网站为应聘者提供了方便、快捷的应聘途径。对招聘单位来说,招聘网站也为他们提供了查询、检索应聘者信息的平台,使招聘工作变得轻松易行。应聘者和招聘公司/单位可以在网上通过Internet,突破时间和空间的限制实现工作求职和公司/单位的人才招聘。网上招聘与传统招聘相比具有招聘范围广,信息量大,可挑选余地大,有大量素质高、技术高的应聘人员,招聘效果好,费用低的优势,因此获得了越来越多公司的认可,同时它有着经营成本低、库存虚拟、用户检索方便、地域限制少等特点。
本系统是使用JAVA平台中的JSP语言开发基于B/S体系结构的Web应用程序,在jkd 环境下,使用 java 编程语言并结合 MYSQL 数据库开发的一套网络招聘系统。可以根据登录身份而行使不同的权限实现了用户注册、登录、验证身份及用户数据的采集、搜索/查看用户信息,站内最新新闻信息发布。个人用户把简历提交给自己合意公司,企业用户通过简历提取自己合意人员的联系方式,管理员管理整个网站。
1、概述
近年来人才市场的活跃和大企业对高素质人才的需求殷切,无疑为招聘求职网站生存和发展提供了广阔的空间。与其他传统的人才中介相比较,网上招聘具有成本低、容量大、速度快和强调个性化服务的优势。它允许更加灵活的交互方式,提供更丰富的信息资源。网上招聘在一些发达国家已成为颇为流行的求职招聘方式,因而在国内也迅速受到外企、私企和一些大型国企的青睐。建立一个网上人才招聘系统无疑大大的提高、方便企业和人才的融合。
2、系统分析
2.1、问题定义
随着社会的发展和信息技术的进步,人们在日常生活中对信息的要求更加强烈。对于一个企业来说,人才的招聘是企业人事管理中的重要的环节,涉及到企业工作人员的整体素质水品,而以往人才的选择往往是十分繁琐的,如不计其数的简历的审阅将耗费大量人力;招聘会人数众多,很难管理,时间有限不利交流等等这些都是我们亟待解决的问题。
应用网络的优势,实现招聘时企业和人才的交互选择,应聘者无需奔波于招聘现场,印制并投放多份简历,企业在审阅简历时直接从计算机上调用对比,大大降低人力成本。设计开发出一个拥有用户注册、简历的投放和查找、查看录用状态、查看用人单位等功能的网上人才招聘系统, 为企业和人才立足于信息时代提供必要的信息保障。
2.2、可行性研究
2.2.1、可行性需求分析
本系统主要从经济、技术、操作三方面来对论述其可行性:
经济可行性研究的目是对一个待开发系统进行一种“现有的条件下是否可行?”的研究。研究过程需要对组织的经济状况和投资能力进行分析。开发本系统成本低、见效快。由于本系统突破了时间和空间的限制,只要服务器开通,本系统的合法用户随时可以了解自己想了解的信息。因而,该系统在经济上是可行的。
技术可行性研究是研究现有的技术条件能否顺利完成开发工作,硬、软件配置能否满足开发的需要等等。本系统对用于开发系统的计算机硬件和软件的要求程度不高,采用 JSP和MYSQL 开发本系统,是当前的主流技术。因而,该系统在技术上是可行的。 从以上方面的分析基础上,得出结论:开发网上人才招聘系统是十分必要和可行的。
网上人才系统简单易懂,采用主流B/s架构而且为图形界面,在操作方面对于般人来说是没问题的。
2.2.2、数据流分析
本系统顶层数据流图:
0层数据流图
2.2.3、数据字典
2.2.4、程序流程图
2.2.4、开发进度计划
负责人/进度
负责模块 主要负责人 审核负责人 开发进度
概述 陈浩 陈罗志 (上学期)第十四周
系统分析 陈罗志 陈罗志 (上学期)第十四周
系统设计 陈罗志、胡瑞钦 陈罗志 (上学期)第十四周
系统数据库设计 何志芳、余伦厚 陈罗志 (上学期)第十四周
系统实施 陈罗志、胡瑞钦、余伦厚 陈罗志 第一周
撰写文档 陈罗志 陈罗志 第一周
2.3、需求分析
2.3.1、功能需求分析
网上人才管理系统分为前台管理和后台管理。前台管理包括浏览新闻、职位查询、查看企业信息、维护个人信息等功能。后台管理包括新闻管理、企业信息管理、职位信息管理、应聘信息查询等模块[6]。后台管理具体描述如下:
(1) 新闻管理
◆ 添加新闻,包括新闻标题与新闻内容; ◆ 修改新闻; ◆ 删除新闻。
(2) 企业信息管理
◆ 添加企业信息,包括企业名称、企业简介等信息;
◆ 修改企业信息;
◆ 删除企业信息。
(3) 职位管理
◆ 添加职位;
◆ 修改职位;
◆ 删除职位。
(4) 应聘信息管理
◆ 查看应聘信息;
◆ 删除应聘信息。
(5) 系统用户管理
◆ 系统用户的录入,包括用户名、密码等信息;
◆ 修改自己的密码;
◆ 退出登录状态;
◆ 用户信息的查看。
(6) 系统用户管理功能
◆ Admin用户修改自己的密码;
◆ Admin用户创建或删除企业用户;
◆ 企业用户修改自己的密码;
◆ 企业用户修改自己的用户信息;
◆ 注册个人用户;
◆ 个人用户修改自己的密码
功能模型UML建模图下:
各类用户的功能具体描述如下:
(1)管理员
描述:管理员维护整个系统。管理员对应聘者、招聘者进行统计;添加应聘者或者招聘者、查询职位情况,对不符合要求的职位进行处理,进行用户管理;发布新闻信息,数据备份和恢复等。
(2)应聘者
可以登录系统、填写职位表的信息进行应聘、浏览和查询相关信息
(3)招聘者
可以登录系统、填写职位表的信息进行招聘、浏览和查询相关信息
2.3.2、数据需求分析
首先根据使用该系统的用户的角色的不同分为三种不同用户:
系统管理员:负责管理网站上的各种信息,包括发布新闻,管理新闻和查看,拥有并且负责删除所有的非法不真实的个人注册用户和企业注册用户。
应聘者:游客可以在本系统注册,注册时可以选择自己是“个人”用户还是“企业”用户,可以在线填写个人基本情况、发布求职信息、浏览新闻、查看招聘和求职信息,在线向自己满意的公司提交简历,在个人收藏夹里查看自己提交简历到哪几个公司。
招聘者:可以在线填写企业基本情况,发布企业招聘信息,浏览新闻,查看求职和招聘信息,在线查看和管理个人用户提交的简历功能。根据简历提取符合本公司人员的联系方式。
2.3.3、性能需求分析
1、数据安全性能:提供用户身份认证,以及不合法人员使用。系统应能正
2、确响应用户的请求。正确的显示用户的请求。
3、友好性:好的图形用户界面;对于用户不合法的输入,系统应能给出错误提示信息。
4、系统容量:对于大规模的综合院校,人数众多,信息繁杂,需要可靠性5、高的以及海量的存储空间。
6适应性性能要求:对于系统的非正常情况,系统应能够检测出来并及时给用户以提示。如数据库连接出现问题等。
3、系统设计
3.1、概要设计
3.1.1、系统主要框架
3.1.2、系统软件结构
3.1.3、系统功能模块划分
模块是软件结构的基础,软件结构的好坏完全由模块的属性体现出来,把软件模块化的目的是为了降低软件复杂性,使软件设计,测试,调试,维护等工作变得简易,但随着模块数目的增加,通过接口连接这些模块的工作量也随之增加。从这些特性可得出如图的一条总的成本(或工作量)曲线,在考虑模块化时,应尽量使模块数接近于图中的M,它使得研制成本最小,而且应尽量避免不足的模块化或超量。
模块化与总体成本
系统总体功能模块
在系统初始化时,有一个默认的“系统管理员”用户Admin,由程序设计人员手动地添加到数据库中。Admin用户可以创建企业用户;个人用户则可以通过注册产生;所有用户都可以修改自己用户信息和密码。
本系统共分为六大模块:
公用模块:负责对登陆用户信息的验证、密码修改等。
用户管理模块:负责对用户(管理员,招聘者,应聘者)的添加、删除、修改等操作。
招聘者管理模块:负责对招聘者的添加、删除、修改等操作。
招聘表管理模块:负责对招聘表的添加、删除、修改等操作。
应聘者管理模块:负责对应聘者的添加、删除、修改等操作。
新闻管理模块:负责对新闻的发表、删除、修改等操作。
其中用户管理功能模块的关系如图
3.2、详细设计
3.2.1、系统开发环境
硬件环境
CPU 2.8 GHz(最低要求 800Mhz)
内存 1 GB (最低256)
硬盘占用 初始700k左右(具体视文件总容量的递增而增加)最低要求1M
显示器 VGA 或以上 (1024*768 分辨率效果更好)
软件环境
操作系统 任何支持java+ Apache Tomcat 5.1虚拟机系统
系统 Web 服务器 Apache Tomcat 5.1
系统数据库服务器 MySQL 6.0
系统运行 JDK 环境 JDK 1.5
开发平台
网页设计工具 Myeclipse+Dreamwave cs4
3.2.2、UML主要建模图
类图:
状态图:
活动图:
4、数据库设计
4.1、数据库概念设计
在网上招聘系统中,数据库应当有如下要求:
(1)用户表{权限、用户名、密码、性别}
(2)招聘者表{用户名、密码、企业名称、电子邮件}
(3)职位表{职位编号、应聘者、需求人数、学历要求、发布时间、确认时间、电子邮箱}
(4)新闻表{新闻编号、发表时间、新闻作者、新闻标题、新闻内容}
(5)应聘者表{用户名、密码、联系电话、个人简介、电子邮箱}
4.1、数据库逻辑设计(建立数据库请以此表为准)
应聘者表(candidates)
字段 类型(长度) 备注 是否主键
Yuser Char(10) 登录用户名 主键
Ysex char(2) 性别 非主键
Ytel Char(20) 电话 非主键
Ymail Char(20) 电子邮箱 非主键
Yintro Char(100) 个人简介
Ypassword Char(10) 登陆密码 非主键
招聘者(recruiters)
字段 类型(长度) 备注 是否主键
Zuser char(10) 登录 主键
Zmail Char(20) 电子邮箱 非主键
Zintro Char(100) 企业简介
Zpassword Char(10) 登陆密码 非主键
用户表(admin)
字段 类型(长度) 备注 是否主键
Auser char(10) 用户名 主键,非空
Apassword Char(10) 密码 非主键,非空
新闻表(news)
字段 类型(长度) 备注 是否主键
Auser Char(10) 新闻作者 非空
Ntime Datatime 发表时间 非空
Ntitle Char(20) 新闻题目
Nid Text 新闻id 主键
Ncontent Text 新闻内容 非主键
所发布招聘信息表(post)
字段 类型(长度) 备注 是否主键
Zuser Char(10) 招聘者 主键
Yuser char(10) 求职者 外键,可空
Ztitle Char(20) 招聘标题
Znum Int(2) 需求人数 非主键
Zgrade Char(10) 学历要求 非主键
Zcontent Char(200) 发布内容
Ztimea Datetime 发布时间 主键
Ztimeb Datetime 确认时间
4.1、数据库物理设计
物理设计的步骤如下:
(1) 存储记录结构
设计综合分析数据存储要求和应用需求,设计存储记录格式。
(2) 存储空间分配
存储空间分配有两个原则:
①存取频度高的数据尽量安排在快速、随机设备上,存取频度低的数据则安排在速度较慢的设备上。
②相互依赖性强的数据尽量存储在同一台设备上,且尽量安排在邻近的存储空间上。
从提高系统性能方面考虑,应将设计好的存储记录作为一个整体合理地分配物理存储区域。尽可能充分利用物理顺序特点,把不同类型的存储记录指派到不同的物理群中。
(3) 访问方法的设计
一个访问方法包括存储结构和检索机构两部分。存储结构限定了访问存储记录时可以使用的访问路径;检索机构定义了每个应用实际使用的访问路径。
(4) 物理设计的性能评价
① 查询响应时间
从查询开始到有结果显示之间所经历的时间称为查询响应时间。查询响应时间可进一步细分为服务时间、等待时间和延迟时间。
在物理设计过程中,要对系统的性能进行评价。性能评价包括时间、空间、效率、开销等各个方面。
② 存储空间
存储空间存放程序和数据。程序包括运行的应用程序、DBMS子程序、OS子程序等。数据包括用户工作区、DBMS工作区、OS工作区、索引缓冲区、数据缓冲区等。
存储空间分为主存空间和辅存空间。设计者只能有限度地控制主存空间,例如可指定缓冲区的分配等。但设计者能够有效地控制辅存空间。
③ 开销与效率
设计中还要考虑以下各种开销,开销增大,系统效率将下降。
5、系统实施(代码见附件)
6、系统测试
系统模块比较多,不可能把每一个模块的测试情况都写出来,本测试采用用例测试的标准对登录模块进行应聘者登陆、管理员登陆测试:
测试用例编号 001
测试项目 网上人才招聘系统
测试标题 应聘者登陆
测试级别 重要
预置条件 数据库具有相关数据 aaa aaa
输入 用户名 aaa 密码 aaa 权限 :一般用户
测试步骤 在登录框输入相关数据
预期输出 登录成功,刷新主页,显示本人信息
测试结果 登录成功,刷新主页,显示本人信息
测试用例编号 002
测试项目 网上人才招聘系统
测试标题 管理登陆
测试级别 重要
预置条件 数据库具有相关数据 admin admin
输入 用户 admin admin
测试步骤 进入后台,输入相关数据
预期输出 跳转到后台主页,提示欢迎字眼
测试结果 跳转到后台主页,提示欢迎字眼
7、系统发布
8、操作说明书
8.1、工程部署说明
1、确保你所用的计算机按照好了 Mysql 6.0+ Myeclipse 8.0+tomcat 5。0
2、在命令行提示符下登录mysql 导入数据库:
然后打开工程目录中的MYSQL下载的online.txt ,把里边的文本贴到上边运行窗口即可!
3、在MYEclipse 中导入 附件工程:
部署好之后,
开启Tomcat 服务器:
在地址栏输入http://localhost:8080/EmploymentSystem/ 即可进入到主页
8.2、系统操作说明书
程序运行的总体界面如下:
除了前台的主页模板是下载下来的,里边的jsp核心代码都是我们组员打上去的。系统不是很完善、由于时间和技术文件有某些模块的某些功能还没完成。
前台登录和搜索模块:登录分为一般用户登录和企业用户登录、搜索分为四个条件搜索,分别是:标题搜索、内容搜索、运气搜索、学历搜索;
登录成功以及搜索标题“大招聘”和搜素全部的效果:
新闻的前台显示:
点击链接可以进入相应的新闻界面:
还有一个就是招聘者发表招聘信息,本来需要在前台显示的,可是时间太紧了,没有完成,太可惜!~
后台主页:
后台主页大部分都是另外两个组员完成的,界面比较简陋、功能比较单一。主要就是我们小组没有美工人才。所以就将就将就吧。
应聘者管理模块
招聘者管理
本人在完成新闻管理模块的时候,并没有实现“修改”和删除功能,就实现了添加功能,而修改和删除功能要以后的版本中会继续完善!
点击“添加”按钮后,弹出添加;然后提交就可以了;提交好的新闻同时可以在主页的“最近新闻”板块看到!~
9、小组团队
姓名 学号 备注 主要任务
陈罗志 06 组长 系统架构、文档撰写、系统编码
胡瑞钦 16 核心组员 数据建模、数据库设计、系统编码
余伦厚 37 核心组员 系统分析、数据库设计、系统编码
何志芳 14 组员 系统测试等
陈浩 46 组员 需求分析等
10、心得体会
首先,非常感谢本小组组员对本人的支持,这份设计报告没有他们的帮助要这如此短的时间内完成是有很大的难度。本小组有5个组员,实际打代码的只有三个人。做需求分析、报告的完成等很大一部分都是组长一个人完成。通过本次课程设计,使本小组明白:不是人越多,就做的越快,做的越好。选人,要选技术好的,有能力的。
本次设计让本小组整体掌握了开发软件撰写软件开发文档所需经历的全过程以及面向对象的思想;在软件实施开发之前的需求分析、总体设计、详细设计等几大模块的准备工作是必不可少的,尤其是开发文档中的各种数据流图、各种流程图,它们在整个软件开发过程中有着举足轻重的作用。
但是,本小组再进行小组团队合作的时候、也有不少的分歧;在还没充分分析好整个系统的工作流程就开始工作了,导致后期的数据库某些键值的修改带来了非常大的难度和麻烦。除了这一点,团队的合作也带来了不少的麻烦,主要是我们三个编代码的在刚开始没有充分沟通、做出一致意见的时候就开始开工了!做出了的几乎是一人一个版本!参数不同、风格不同,这也减缓了我们小组的开发进度。Jsp 的乱码问题也是比较烦人的东西。
总之,本次设计让我们受益匪浅,对开发系统的流程、UML建模也有一定的了解,给今后的工作打下了基础。更重要的是学会了小组合作的技巧和方式。在此,感谢许老师孜孜不倦的许波老师的教导。
11、参考文献
1、 数据系统概述(第四版) 王珊 高等教育出版社 2005
2、 2、jsp 实用简明教程(第2版) 钟得源 清华大学出版社
3、 MySQL 权威指南(原书第2版) (美)PaulduBois 机械工业出版社
4、 Java Web 开发技术大全 李宁 清华大学出版社