您的当前位置:首页正文

概要设计说明书

来源:帮我找美食网


桂林理工大学

毕业生就业信息检索服务系统

概要设计说明书

项目团队:何超(3110717224)、曾驿钦(3110717225)

班级:计算机科学与技术2011-2班 编写日期:2014年12月20日

桂林理工大学云项目组

1 引言

“就业是民生之本”大学生就业是我国就业问题中带有战略性的核心问题。用多维视角和发展观的思维审视目前大学生就业难的现象,不难看出现象的背后有很多令人深思的问题,而这些问题多是发展中、前进中出现的。清醒地分析、科学地把握会找到多渠道解决的方案。因此,为现代大学毕业生建立就业信息检索服务系统非常必要,系统数据来源于全国各大高校毕业生就业网,并通过数据审核员进行审批操作后发布,具有可靠的来源和安全的服务;以高度的实时周期及精准的检索方式,为大学毕业生提供快捷的就业岗位数据服务和官方就业指导服务。所有的应届毕业生获得共同的就业相关信息,使得毕业生站在同一平台,以能力见高低,平等竞争,找到适合自身的职业岗位。 1.1编写目的

本文档的目的是阐述毕业生就业信息检索服务系统的概要设计。本概要设计说明书编写目的在于全面说明系统的设计考虑,包括系统概述、总体设计、功能设计、接口设计、数据结构设计、出错处理设计、系统部署设计等,以提供关于程序系统的逻辑和数据功能实现方式的总体描述。 1.2背景

本项目将开发毕业生就业信息检索服务系统,基于互联网的共享性特征,采集全国各大高校的毕业生就业网信息,并对信息进行解析、分类、去重等操作后,存储在数据库系统中,然后利用全文检索工具进行数据分词、语义识别处理,建立索引。毕业生可以通过系统平台进行模糊查询和精确查询,获得最新的就业岗位信息或指导信息。系统将以传统软件工程的喷泉模式和迭代模式进行开发。 本系统是基于操作系统之上的应用程序,系统划分为两大子系统,数据采集子系统为数据处理子系统提供原始数据支持,并决定了整个系统的更新周期,以及服务用户的范围;而数据处理子系统决定了用户查询的效率。 本项目任务提出者:广西教育部就业发展计划中心; 项目开发者:桂林理工大学云项目组进行研究和开发; 最终用户:数据审核人员、广大应届毕业生。 1.3定义

B/S(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器,服务器安装数据库。浏览器通过Web Server同数据库进行数据交互。

JSP(Java Server Pages),中文名叫java服务器页面,其根本是一个简化的Servlet设计 。JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。是一种动态页面

技术,它的主要目的是将表示逻辑从Servlet中分离出来。

SSH(Struts Spring Hibernate),集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。

MVC(Model View Controller),是模型(model)-视图(view)-控制器(controler)的缩写,一种软件设计典范,用于组织代码用一种业务逻辑和数据显示分离的方法,这个方法的假设前提是如果业务逻辑被聚集到一个部件里面,而且界面和用户围绕数据的交互能被改进和个性化定制而不需要重新编写业务逻辑MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。

ORM(Object Relational Mapping),对象关系映射是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。 简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将java程序中的对象自动持久化到关系数据库中。本质上就是将数据从一种形式转换到另外一种形式。 1.4参考资料

1)《软件工程导论》清华大学出版社; 2)《软件设计模式概述》国防科技大学出版社; 3)《搜索引擎概述》清华大学出版社; 4)《Lucene全文检索工具》电子工程出版社;

5)《软件测试导论》机械工程出版社。

2总体设计

2.1基本设计概念和处理流程

本项目采用传统的软工程喷泉模型和迭代模型,以B/S软件结构,开发一个跨平台的信息服务系统。

用户登陆服务高校信息服务用人单位信息服务毕业生信息服务职位信息服务对象关系映射模型就业指导服务Mysql数据库服务器JSP视图编码拦截器登陆拦截器异常拦截器分配器对象创建工厂HQL高级查询

系统采用MVC设计模式,基于SSH三大框架的Web应用,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑;对象关系映射提供了概念性的、易于理解的模型化数据的方法。ORM方法论基于三个核心原则,简单:以最基本的形式建模数据;传达性:数据库结构被任何人都能理解的语言文档化;精确性:基于数据模型创建正确标准化了的结构。典型地,建模者通过收集来自那些熟悉应用程序但不熟练的数据建模者的人的信息开发信息模型。基于IoC设计模型,应用控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体将其所依赖的对象的引用传递给它。

用户访问登录系统首页注册高校信息管理用人单位管理毕业生管理收藏夹管理职位信息管理就业指导信息系统参数配置检索事务采集状态建立索引数据分类用户注销语义分析网页解析结束数据采集模拟登陆图片识别网页访问基础服务原始数据登陆账户地址数据 2.2结构

本系统划分为两大子系统。每个子系统采用业务逻辑、数据、界面显示分离的方法组织代码。数据采集子系统是数据的基础,数据处理子系统是整个软件的核心,虽然他们可以相互独立运行,但是在运行服务中,他们是密不可分的。

DCS数据采集子系统,完成数据的采集以及预处理,并将原始数据存储到数据库。子系统主要完成六个模块:高校就业网链接信息管理、模拟登陆账户管理、图片识别模块、数据爬虫模块、原始数据管理、系统管理模块。高校就业网链接信息管理,管理各高校就业网链接IP地址,由任务提出方广西教育部就业发展中心提供;模拟登陆账户管理,管理各高校登陆用户数据,并建立模拟系统完成自动登陆访问;图片识别模块,采用OCR技术通过检测暗、亮的模式确定其形状,然后用字符识别方法将形状翻译成计算机文字的过程,为模拟登陆提供验证码信息转换服务;数据爬虫模块,采用Java网络API编写的爬虫软件,预先设定递归深度,进行递归解析网页链接,得到链接后进行去重操作;原始数据管理,完成对原始数据的增删改查操作;系统管理模块,对更新周期、递归深度等系统变量的设置。

数据采集子系统链接数据管理登陆账户管理图片识别模块网络爬虫模块原始数据管理系统参数配置 DPS数据处理子系统,完成对原始数据的深层次分析,并将得到的基本服务数据通过审核后进行存储,通过全文检索工具进行分词建立索引,为用户提供访问接口。子系统主要完成十个模块:语义分析模块、分类聚类模块、高校信息管理、用人单位信息管理、毕业生信息管理、个人收藏夹管理、职位信息管理、就业指导信息管理、数据审核管理。语义分析模块,基于神经网络的可进行人工训练的智能模块,是整个系统的核心部分,完成对网页信息的解析到职位信息提取或用人单位信息提取;分类聚类模块,利用聚类算法完成数据的分类,并对个人收藏模块进行数据挖掘,为用户推荐喜好的就业信息;高校信息管理,高校信息数据库,来源于百度百科,并根据高校专业标准进行分类存储,用户可在系统中进行数据查看、修改、添加、删除等操作;用人单位信息管理,用人单位信息,来源于原始数据的解析和数据内容整合,用户可对数据基本的操作;毕业生信息管理,毕业生登陆系统的账户信息及个人详情信息的操作,包括毕业生的教育背景、求职意向、获奖情况、实践经验、个人特长、自我评估等内容,用户还可以选择简历模板进行自动生成.doc简历;收藏夹管理,为数据挖掘提供依据,并为用户提供更快捷的定位方式;职位信息管理,服务基础数据的提取结构,用户可以通过多种方式进行组合查询,获得结果列表后也可以进行多种类型排序,如

点击率、发布时间等;就业指导信息管理,根据原始数据进行分类,得到多种类型的指导信息;数据审核管理,主要用户是数据审核员和超级管理员,来自爬虫获得的原始数据,进行深层次处理后,统一由他们进行审核后发布。

数据处理子系统语义分析模块分类聚类模块高校信息管理用人单位管理毕业生信息管理收藏夹管理职位信息管理就业指导管理数据审核管理

2.3功能需求与程序的关系 功能需求 高校就业网链接数据库管理 就业网登陆账户管理 图片识别模块 网络爬虫模块 原始数据管理 语义分析模块 分类聚类模块 高校信息管理 用人单位信息管理 毕业生信息管理 收藏夹管理 职位信息管理 就业指导信息管理 数据审核管理

数据采集子系统      数据处理子系统          2.6人工处理过程

基础服务数据的发布必须通过数据审核员进行审核。 2.7尚未解决的问题

1)各高校的毕业生就业网用户登录账户数据库; 2)语义识别模块中的语料库采集;

3接口设计

3.1用户接口

系统提供可视化交互界面,系统会根据用户的操作转换为Http数据表单,并将数据包发送到指定服务接口,系统会以JSON数据结构响应用户。表单信息是由键值对数据构成,JSON数据表示对象属性模型。 3.2外部接口

本系统通过Java虚拟机启动,所以系统依赖于虚拟机接口;系统数据来源互联网各高校就业网信息,所以需要HTTP协议的支持;系统采用Mysql关系型数据库支持,所以需要Java对Mysql数据库的驱动程序接口;数据处理子系统中,会建立检索文件,所以需要操作系统文件操作接口;系统还提供邮件服务,所以需要STMP协议支持和邮件服务程序。 3.3内部接口

系统采用传统的软件工程方法,分模块迭代式开发;我们可将系统划分为三个层次:首先是视图层,其次是服务层,最后是数据层;视图层与服务层之间通过执行分配器进行对接,服务层与数据层之间利用关系对象映射进行对接。整个系统由对象生成器和依赖注入接口进行控制。

4运行设计

4.1运行模块组合

系统采用多例模式进行开发,多个用户可以进行并发访问,并且保证数据的同步性;系统开发处理缓冲模块,当多用户进行并发访问数据库时,超过数据库预先设定的最大并发数量,系统将对访问用户提交到等待状态,待系统资源分配完毕,会自动响应用户请求。

数据采集子系统,运行状态标识,当且仅当数据采集模块完成一个周期的倍数时,才允许数据处理子系统提取原始数据进行处理。 4.2运行控制

本系统是跨平台的Web应用程序,用户通过浏览器进行访问控制;软件运行

在Windows操作系统之上,并且需要安装Java运行环境,开发过程中需要相应的开发程序接口。本系统存在于应用层,所以基于IP网络协议,并通过高层的HTTP协议进行通信。 4.3运行时间

数据采集子系统。当采集数据范围较大时,系统需要运行分钟级的时间,数据的采集会受带宽及服务器性能影响,采集子系统基于Mysql数据库引擎,所以也受限于数据库引擎的最大并发访问数量和连接池。

数据处理子系统,是整体系统价值体现,直接影响到用户的体验。基于Lucene

的开源全文检索工具采用倒排索引文件,可以减少响应运行时间,将检索响应时间缩短在毫秒级完成。

5系统数据结构设计

5.1逻辑结构设计要点 链接地址数据: 数据字段 University IP URL ParseInterface Date 数据字段 University Username Password IsVerify Date 原始数据:

数据类型 字符串varchar 字符串varchar 字符串varchar 字符串varchar 时间date 数据类型 字符串varchar 字符串varchar 字符串varchar 布尔型boolean 时间date 数据类型 字符串varchar 字符串varchar 字符串varchar 整型int 时间date 数据类型 字符串varchar 字符串varchar 字符串varchar 字符串varchar 字符串varchar 字符串varchar 时间date 数据类型 字符串varchar 是否为空 否 否 否 否 否 是否为空 否 否 否 否 否 是否为空 否 否 否 否 否 是否为空 否 否 否 否 否 否 否 是否为空 否 数据描述 大学全称 链接IP地址 就业网资源地址 解析对应程序接口 记录创建时间 数据描述 大学全称 登陆账户名 就业网资源地址 是否需要验证码 记录创建时间 数据描述 标题名称 编码方式 内容主体 版本编号 采集时间 数据描述 大学名称 地址信息 联系电话 邮件地址 大学类型 大学简介 记录创建时间 数据描述 单位名称 登陆账户数据:

数据字段 Title Charset Body Version Date 高校数据:

数据字段 University Address Telephone Email Category Introduction Date 用人单位数据:

数据字段 Company Address Telephone Email Category Introduction Date 毕业生数据: 数据字段 Name Cno Major University Address Telephone Email Category Introduction Date 职位数据:

数据字段 Name Major Condition Number I_Address Telephone Email Company I_date Date

字符串varchar 字符串varchar 字符串varchar 字符串varchar 字符串varchar 时间date 数据类型 字符串varchar 字符串varchar 字符串varchar 字符串varchar 字符串varchar 字符串varchar 字符串varchar 字符串varchar 字符串varchar 时间date 数据类型 字符串varchar 字符串varchar 字符串varchar 字符串varchar 字符串varchar 字符串varchar 字符串varchar 字符串varchar 字符串varchar 时间date 否 否 否 否 否 否 是否为空 否 否 否 否 否 否 否 否 否 否 是否为空 否 否 否 否 否 否 否 否 否 否 地址信息 联系电话 邮件地址 大学类型 大学简介 记录创建时间 数据描述 学生姓名 学生学号 主修专业 教育背景 地址信息 联系电话 邮件地址 学生类型 自我评价 记录创建时间 数据描述 职位名称 相关专业 求职条件 招聘人数 招聘地点 联系电话 邮件地址 用人单位 招聘时间 记录创建时间 5.2物理结构设计要点

用户登陆信息、和毕业生信息属于保密性数据,一般用户无法直接访问;为了加快系统检索速度,我们将建立一定的索引。 5.3数据结构与程序的关系

数据结构对应子系统程序如下图所示:

数据结构 高校就业网链接数据 就业网登陆账户数据 原始数据 高校数据 用人单位数据 毕业生数据 职位数据 数据采集子系统    数据处理子系统     6系统出错处理设计

6.1常见HTTP状态信息

200 (成功) 服务器已成功处理了请求。

201 (已创建) 请求成功并且服务器创建了新的资源。 202 (已接受) 服务器已接受请求,但尚未处理。

203 (非授权) 服务器已成功处理了请求,但返回的信息可能来自另一来源。 204 (无内容) 服务器成功处理了请求,但没有返回任何内容。 205 (重置内容) 服务器成功处理了请求,但没有返回任何内容。 206 (部分内容) 服务器成功处理了部分 GET 请求。 304 (未修改) 自从上次请求后,请求的网页未修改过。 305 (使用代理) 请求者只能使用代理访问请求的网页。 400 (错误请求) 服务器不理解请求的语法。 401 (未授权) 请求要求身份验证。 403 (禁止) 服务器拒绝请求。

404 (未找到) 服务器找不到请求的网页。

500 (服务器内部错误) 服务器遇到错误,无法完成请求。 501 (尚未实施) 服务器不具备完成请求的功能。

502 (错误网关) 服务器作为网关或代理,从上游服务器收到无效响应。 503 (服务不可用) 服务器目前无法使用。

504 (网关超时) 没有及时从上游服务器收到请求。

505 (HTTP 版本不受支持) 服务器不支持请求中所用的 HTTP 协议版本。 6.2 补救措施

1)采用数据冗余方法保证系统安全性,用户数据会有2-3个备份记录; 2)当发生软件故障时,如内存溢出、死锁等情况时,系统会终止部分程序可以避免用户长时间等待;

3)系统按时间轴方式运行,没隔相应的时间点,会自动进行状态备份,当发生不可避免灾害后,进行数据恢复;

4)系统建立强大的日志管理,对事务处理和回滚提供支持。

6.3 系统维护设计

系统采用面向对象设计语言,使用JUnit工具在编码过程中设计单元测试案

例,当系统出现问题时,以模块方式进行检测,精准定位故障点,提高维护效率。

因篇幅问题不能全部显示,请点此查看更多更全内容

Top