论文部分内容阅读
摘要:随着信息化技术的应用,企业信息化进程也在蓬勃发展。传统企业员工计算机水平参差不齐,在企业推广信息化进程中会出现各种各样的问题。问题管理平台是企业信息化进程中不可缺少的部分,它的内容,使用的方便性对于信息系统的用户,开发者及运维人员来说都至关重要。
关键词:J2EE 通用问题管理系统 问题追踪 SSH
0 引言
通用问题管理平台是在实际的企业生产运行中,根据所遇到的问题,提出的解决方案。公司近几年在信息化建设中,取得了较大的发展,ERP系统,财务系统,合同管理系统等各类信息系统在不停的建设。企业人员的计算机水平参差不齐,这导致在新系统上线初期,总会产生大量的问题。这些问题包括系统本身在运行期间发现的bug,使用人员对系统不熟悉产生的误解等等。建设网上问题管理平台成为高效的运维方式的选择。通过网上问题管理平台,用户可以提出问题,运维人员可以迅速的解决问题。如果有类似问题,普通用户可以直接在问题管理平台查出答案,不用进行提问,提高工作效率。
1 系统需求分析
系统的主要需求是为企业信息化进程中,不断上线的新系统,提供一个问题发布,解决的网络平台,即一个用户在线交流的平台。用户可以及时的在网上得到问题的解决方案,而不需要遇到问题就电话沟通运维人员,提升工作效率。
基于以上需求分析,那么系统整体轮廓应该如下:
①系统应该基于B/S架构,用户不需要安装任何程序。
②能够实现问题的提出,解答,管理以及问题状态的跟踪等需求。
③流程简单,界面简单明了,操作方便,使用门槛低。
④提供多种集成方式,方便与其他应用系统集成。
⑤支持单公司,多公司等运行模式,使得系统适用各种环境。
⑥系统支持多种数据库,系统高度可配置。
2 系统的设计
2.1 系统功能模块划分
系统的主要功能是实现问题的提问及解答。整个系统的工作流程为信息系统普通用户提出问题,系统根据问题的模块和类型,分配给相应的运维人员,运维人员接收问题,予以解答,或者其他普通用户也可以回复这个问题。提问者确认问题已经解决后,由提问者将问题状态改为已解决。基于整个工作流程和问题的管理,系统主要功能模块划分为如下六个:
2.1.1 身份认证模块
系统应该支持多种认证模式,方便与其他系统集成。具体需实现以下三种身份认证模式:LDAP认证、GET请求方式认证、系统独立认证。
2.1.2 问题管理模块
该模块主要负责处理与问题相关的操作。包括提出问题,回复问题,浏览问题,更改问题状态。运维人员删除非法问题和回复等操作。
2.1.3 问题搜索模块
该模块主要负责根据不同条件搜索问题。可以根据问题编号,关键字,提问人,模块,类型等条件进行搜索问题。方便用户查找类似的问题。
2.1.4 系统配置模块
该模块主要是系统管理员来配置整个系统的运行参数。如使用何种认证方式,LDAP认证服务器的地址,问题提出时是否邮件通知相关人员,系统通知邮件的邮件服务器,账户等系统必要的运行参数。
2.1.5 问题属性配置
该模块主要负责配置问题的相关属性。包括配置公司信息,系统支持多公司版本,每个公司的数据是独立的。为每个公司配置问题的版块信息,为每个公司配置问题的类型信息。
2.1.6 统计报表模块
为了更直观的了解系统现在所有问题的解决情况,系统支持柱状图和饼图来描述系统中问题解决的进度。
2.2 系统结构设计
系统采用B/S又称Browser/Server架构,客户端为浏览器,通过HTTP协议与服务器进行通信。
在服务器端,会有WEB应用服务器及数据库服务器共同工作,WEB服务器接受客户端请求,处理请求,如果需要保存或者查询数据,将与数据库服务器进行通信,查询或保存相应数据。WEB服务器处理后返回给客户端。
2.3 系统层次架构设计
本系统使用MVC的设计模式,使用新SSH框架作为系统框架,将系统分为三层,持久层,业务层,表现层。
①表现层,负责控制业务逻辑层与表现层的交互,调用业务逻辑层,并将业务数据返回给表现层作组织表现,采用JSP+Struts2标签的形式进行页面展示。
②业务层,负责实现业务逻辑。业务逻辑层以DAO层为基础,通过对DAO组件的包装,完成系统所要求的业务逻辑,同时依赖于Spring的声明行事务,进行事务控制,以及Action类中service对象的自动注入。
③持久层,负责与持久化对象交互。该层封装了数据的增、删、查、改的操作。
整个MVC框架中,系统使用了hibernate作为持久层的实现基础,由spring作为容器管理所有对象,使用spring的声明事务来控制数据库事务。使用struts2作为表现层框架。
2.4 系统类图设计
Java语言提供的一大好处就是将面向对象的思想应用到程序设计及开发中的每个环节。在面对复杂的业务逻辑时,面向对象的思想能更好的提取业务逻辑中的实体,从而使得开发人员能更清晰的关注业务逻辑。系统将使用领域模型来驱动数据库设计,也就是说系统将进行实体类的设计,然后用实体类来映射数据库,这样的设计使得开发者能更清晰的掌握业务逻辑,而不是去分析数据库的细节。所有先进行实体设计,类设计,然后映射为数据表,可以通过类图来表示表之间的关系。
2.4.1 实体设计
系统设计了10个实体对象。这些实体对象分别如下:网站管理员、普通用户、运维人员、公司、问题版块、问题类型、问题、附件、回复、配置。
2.4.2 类图设计
类图(Class diagram)是为了描述模型的静态结构,包括模型中存在的类、类的内部结构以及它们与其他类的关系等。类图能更清晰的表示模型内部之间的关系。根据上一小节的实体设计,可以将系统类图分为两个部分。一部分是以问题实体为中心以及关联实体构成。具体如图2-1问题相关类图所示。
图2-1 问题相关类图
第二部分为辅助部分类图,如图2-2所示
图2-2 辅助相关类图
3 小结
本系统采用当前最为流行的J2EE三层框架系统架构,在各层分别采用了最新的开源框架技术,Struts2框架,Spring框架和Hibernate框架。在实现处理中显得更为简洁。
通用问题管理平台系统虽然只是“企业信息化”非常小的辅助部分。但它不仅仅可以作为企业信息系统的运维系统,还可以作为企业内部的任务追踪系统,IT公司的BUG跟踪系统,服务企业的在线答疑系统等等。一个在线的交流平台对于现实的工作有着重要的意义。
参考文献:
[1][美]Rogers Cadenhead.Java编程入门经典.梅兴文译.第4版.北京:人民邮电出版社,2007.
[2][美]Bruce Eckel. Thinking In Java.英文第4版.北京:机械工业出版社,2007.
[3]孙卫琴.《精通Struts:MVC的Java Web设计与开发》,电子工业出版社.
作者简介:刘妍东(1976-),女,山东莱州人,讲师,硕士学位,从事计算机软件开发及应用的研究。
关键词:J2EE 通用问题管理系统 问题追踪 SSH
0 引言
通用问题管理平台是在实际的企业生产运行中,根据所遇到的问题,提出的解决方案。公司近几年在信息化建设中,取得了较大的发展,ERP系统,财务系统,合同管理系统等各类信息系统在不停的建设。企业人员的计算机水平参差不齐,这导致在新系统上线初期,总会产生大量的问题。这些问题包括系统本身在运行期间发现的bug,使用人员对系统不熟悉产生的误解等等。建设网上问题管理平台成为高效的运维方式的选择。通过网上问题管理平台,用户可以提出问题,运维人员可以迅速的解决问题。如果有类似问题,普通用户可以直接在问题管理平台查出答案,不用进行提问,提高工作效率。
1 系统需求分析
系统的主要需求是为企业信息化进程中,不断上线的新系统,提供一个问题发布,解决的网络平台,即一个用户在线交流的平台。用户可以及时的在网上得到问题的解决方案,而不需要遇到问题就电话沟通运维人员,提升工作效率。
基于以上需求分析,那么系统整体轮廓应该如下:
①系统应该基于B/S架构,用户不需要安装任何程序。
②能够实现问题的提出,解答,管理以及问题状态的跟踪等需求。
③流程简单,界面简单明了,操作方便,使用门槛低。
④提供多种集成方式,方便与其他应用系统集成。
⑤支持单公司,多公司等运行模式,使得系统适用各种环境。
⑥系统支持多种数据库,系统高度可配置。
2 系统的设计
2.1 系统功能模块划分
系统的主要功能是实现问题的提问及解答。整个系统的工作流程为信息系统普通用户提出问题,系统根据问题的模块和类型,分配给相应的运维人员,运维人员接收问题,予以解答,或者其他普通用户也可以回复这个问题。提问者确认问题已经解决后,由提问者将问题状态改为已解决。基于整个工作流程和问题的管理,系统主要功能模块划分为如下六个:
2.1.1 身份认证模块
系统应该支持多种认证模式,方便与其他系统集成。具体需实现以下三种身份认证模式:LDAP认证、GET请求方式认证、系统独立认证。
2.1.2 问题管理模块
该模块主要负责处理与问题相关的操作。包括提出问题,回复问题,浏览问题,更改问题状态。运维人员删除非法问题和回复等操作。
2.1.3 问题搜索模块
该模块主要负责根据不同条件搜索问题。可以根据问题编号,关键字,提问人,模块,类型等条件进行搜索问题。方便用户查找类似的问题。
2.1.4 系统配置模块
该模块主要是系统管理员来配置整个系统的运行参数。如使用何种认证方式,LDAP认证服务器的地址,问题提出时是否邮件通知相关人员,系统通知邮件的邮件服务器,账户等系统必要的运行参数。
2.1.5 问题属性配置
该模块主要负责配置问题的相关属性。包括配置公司信息,系统支持多公司版本,每个公司的数据是独立的。为每个公司配置问题的版块信息,为每个公司配置问题的类型信息。
2.1.6 统计报表模块
为了更直观的了解系统现在所有问题的解决情况,系统支持柱状图和饼图来描述系统中问题解决的进度。
2.2 系统结构设计
系统采用B/S又称Browser/Server架构,客户端为浏览器,通过HTTP协议与服务器进行通信。
在服务器端,会有WEB应用服务器及数据库服务器共同工作,WEB服务器接受客户端请求,处理请求,如果需要保存或者查询数据,将与数据库服务器进行通信,查询或保存相应数据。WEB服务器处理后返回给客户端。
2.3 系统层次架构设计
本系统使用MVC的设计模式,使用新SSH框架作为系统框架,将系统分为三层,持久层,业务层,表现层。
①表现层,负责控制业务逻辑层与表现层的交互,调用业务逻辑层,并将业务数据返回给表现层作组织表现,采用JSP+Struts2标签的形式进行页面展示。
②业务层,负责实现业务逻辑。业务逻辑层以DAO层为基础,通过对DAO组件的包装,完成系统所要求的业务逻辑,同时依赖于Spring的声明行事务,进行事务控制,以及Action类中service对象的自动注入。
③持久层,负责与持久化对象交互。该层封装了数据的增、删、查、改的操作。
整个MVC框架中,系统使用了hibernate作为持久层的实现基础,由spring作为容器管理所有对象,使用spring的声明事务来控制数据库事务。使用struts2作为表现层框架。
2.4 系统类图设计
Java语言提供的一大好处就是将面向对象的思想应用到程序设计及开发中的每个环节。在面对复杂的业务逻辑时,面向对象的思想能更好的提取业务逻辑中的实体,从而使得开发人员能更清晰的关注业务逻辑。系统将使用领域模型来驱动数据库设计,也就是说系统将进行实体类的设计,然后用实体类来映射数据库,这样的设计使得开发者能更清晰的掌握业务逻辑,而不是去分析数据库的细节。所有先进行实体设计,类设计,然后映射为数据表,可以通过类图来表示表之间的关系。
2.4.1 实体设计
系统设计了10个实体对象。这些实体对象分别如下:网站管理员、普通用户、运维人员、公司、问题版块、问题类型、问题、附件、回复、配置。
2.4.2 类图设计
类图(Class diagram)是为了描述模型的静态结构,包括模型中存在的类、类的内部结构以及它们与其他类的关系等。类图能更清晰的表示模型内部之间的关系。根据上一小节的实体设计,可以将系统类图分为两个部分。一部分是以问题实体为中心以及关联实体构成。具体如图2-1问题相关类图所示。
图2-1 问题相关类图
第二部分为辅助部分类图,如图2-2所示
图2-2 辅助相关类图
3 小结
本系统采用当前最为流行的J2EE三层框架系统架构,在各层分别采用了最新的开源框架技术,Struts2框架,Spring框架和Hibernate框架。在实现处理中显得更为简洁。
通用问题管理平台系统虽然只是“企业信息化”非常小的辅助部分。但它不仅仅可以作为企业信息系统的运维系统,还可以作为企业内部的任务追踪系统,IT公司的BUG跟踪系统,服务企业的在线答疑系统等等。一个在线的交流平台对于现实的工作有着重要的意义。
参考文献:
[1][美]Rogers Cadenhead.Java编程入门经典.梅兴文译.第4版.北京:人民邮电出版社,2007.
[2][美]Bruce Eckel. Thinking In Java.英文第4版.北京:机械工业出版社,2007.
[3]孙卫琴.《精通Struts:MVC的Java Web设计与开发》,电子工业出版社.
作者简介:刘妍东(1976-),女,山东莱州人,讲师,硕士学位,从事计算机软件开发及应用的研究。