信息管理与信息系统论文.docx
《信息管理与信息系统论文.docx》由会员分享,可在线阅读,更多相关《信息管理与信息系统论文.docx(34页珍藏版)》请在冰豆网上搜索。
信息管理与信息系统论文
毕业设计
师生专题讨论系统
设计与开发
学院xxxxxxxxxxxxxxxxxxxxxx
专业班级信息管理与信息系统xxx班
学生姓名吴XXX
学号xxxxxxxxx
指导教师xxxxx
职称讲师
二○一四年四月
毕业设计原创性声明
本人郑重声明:
所呈交毕业设计,是本人在指导教师的指导下,独立进行研究工作所取得的成果。
除文中已经注明引用的内容外,本设计不包含任何其他人或集体已经发表或撰写过的作品成果。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律结果由本人承担。
设计作者签名:
年月日
摘要
随着当今社会的信息技术的飞速发展,学校也已进入信息化时代。
为了给大学老师和学生之间的提供一个更好、更快捷的互动交流平台,决定开发师生专题讨论系统。
通过对本校学生和老师的需求调查以及对现有BBS交流系统结构的了解,本系统的开发过程包括系统的技术分析与设计、前台的界面设计、后台数据库的建立及维护三个方面。
用户界面要求美观大方,使功能切实可行;要求数据库可以正确实现简单的论坛功能;其中最复杂的环节就是对整个系统的需求分析以及功能模块的设计和技术实现。
经过分析,本系统数据库为SQLServer2005,以JSP作为前台展示,此外还使用当前最流行的SSH(Struts、Hibernate、Spring),其中视图层还运用JavaScript和Ajax技术,系统运行环境为Tomcat服务器。
系统实现了论坛的模块管理、发帖管理、用户管理等必需的功能,其操作简单,界面友好,运行比较稳定,适用于高等院校学生和老师之间学习和交流。
【关键词】师生专题讨论系统;JSP;SQL2005;SSH;B/S
Abstract
Withtherapiddevelopmentofinformationtechnologyintoday'ssociety,theschoolalsohasenteredtheinformationage.Inordertoprovideuniversityteachersandstudentsabetterandmoreefficientinteractivecommunicationplatform,Idecidedtodevelopathematicforumfortheexchangeofteachersandstudents.
ThroughasurveyoftheneedsofourstudentsandteachersandtheunderstandingofthestructureofexistingBBSsystem,thedevelopmentprocessofthissystemincludesthreeaspects:
thetechnicalanalysisanddesignofsystem,userinterfacedesign,maintenanceandestablishmentofbackgrounddatabase.Theuserinterfaceshouldbeelegantandpractical,atthesametime,thesimplefunctionoftheforumshouldbeachievedbytheuseofthedatabasecorrectly;themostcomplicatedaspectisthedemandanalysisofthewholesystem,designandtechnologyachievementoffunctionmodule.Afteranalysis,SQLServer2005waschosenasthesystemdatabase,usingJSPasfrontdisplay,inadditiontotheuseofthemostpopularSSH(Struts,Hibernate,Spring).TheviewlayerusesJavaScriptandAjaxtechnology.ThesystemoperatingenvironmentisTomcatserver.Systemrealizessomenecessaryfunctionsincludingforummodulemanagement,postingmanagement,usermanagement,andithassimple,user-friendly,morestableoperation,whichissuitableforlearningandcommunicationamonguniversitystudentsandteachers.
Keywords:
Teachersandstudents’thematicsystem;JSP;SSH;B/S;SQLServer2005
目录
第1章绪论
(1)
1.1开发背景及现状
(1)
1.2可行性分析
(1)
1.3需求分析
(2)
第2章系统分析(4)
2.1功能模块分析(4)
2.2组织/功能关联分析(6)
2.3业务流程分析(6)
2.4数据流程分析(8)
2.5数据字典(10)
第3章系统设计(13)
3.1系统总体功能结构图(13)
3.2系统数据资源分布(14)
3.3系统运行环境(14)
3.4代码设计(15)
3.5数据库设计(16)
3.6输入、输出及菜单设计(19)
3.7IPO设计(21)
3.8系统组件设计(26)
第4章系统实现(28)
4.1系统框架的实现(28)
4.2系统功能的实现(30)
总结(33)
参考文献(34)
第1章绪论
1.1开发背景及现状
随着我们社会发展,计算机技术也得到了蓬勃发展,使得计算机已广泛应用于各个行业,大学也不例外。
对于学生在大学学习的过程中的一个很重要的环节“师生交流”来说,利用计算机来实现学生和老师之间的学术交流,是非常适应当前社会发展的要求,以促进学生的学习和教师了解学生学习的速度及状况有很大的帮助。
目前在大学期间,受各方面的因素影响,老师和学生之前的学术交流局限在短暂的课堂之中。
对于基础好的学生来说,及时在课堂中提出问题并且在课堂中得到老师的指导固然是好,但是对大部分学生来说,由于大学课堂讲授的知识点比较多,需要一段时间去消化和理解所接受的新知识点,这就导致了当学生课下遇到问题时,就很难再寻求到老师的帮助。
在这种情况下,学生的对学习的爱好就会降低,教师的课堂教学效果也降低。
这时,一个完善的师生专题讨论系统就可以有效的解决这方面的问题。
师生专题讨论系统拥有许多优点,例如:
老师和学生之间沟通不受各种现实的条件限制、交流快捷等。
这些优点能够极大地提高学生学习效率,提高教师教学质量,达到事半功倍的效果。
1.2可行性分析
可行性分析也称为可行性研究,它是在根据需求分析人员,针对新的系统去调研,通过收集相关的资料,最后从多个方面(包括技术、经济、法律等)进行分析和专门研究,根本目标就是要避免投资失误,保证新系统的开发出来能够适合企业的使用,真正可以帮助企业解决当前办公效率低下等问题,从而提高办公效率。
下面将分别从技术、经济、操作和法律可行性四个方面对师生专题系统的建设进行分析和研究。
1.2.1技术可行性
根据师生交流系统的各方面约束条件,决定师生交流系统所需要的技术要求。
本系统对硬件方面没有特殊的要求,可以是简单的PC机,也可以是性能比较高的服务器。
在软件方面,通常使用的操作系统我们选择微软的Window系列;对于开发工具方面选用当前流行的、免费的Eclipse,避免开发工具的版权问题;后台采用的数据库为微软的SqlServer2005,该型号的数据库为中型数据库,它有着对数据处理快,管理数据性能好等优势;在整个系统的开发语言上选择的是Java语言,它具有安全性好,易学易用,跨平台等优势,此外Java组织还提供了相当丰富而的开发框架(Struts、Hibernate、Spring等)供开发者使用,这使得我们的师生专题讨论系统更容易实现。
因此在技术上是可行的。
1.2.2经济可行性
本校已经具有信息化的处理设施,同时也已经拥有支持该系统的应用平台,因此在设备方面无需投入资金。
对于开发成本来说,该系统的开发基于本人对程序开发的实践学习而来,本人一方面是以实践为目的来开发当前系统,另一方面处于自愿为学校开发,学校无需资金投入,并且软件开发过程投入的成本不高,因此开发经费完全可以接受。
所以经济上也是可行的。
1.2.3操作可行性
用户操作方便。
即使略懂电脑的初学者也能通过系统的导航条进行相关操作;系统中的一切数据都可以通过管理员来管理,对整个系统的数据维护方面操作简单,此外该系统还具有很强的适应力;容易扩充。
所以操作方面也可行。
1.2.4法律可行性
本系统纯为个人设计,在开发过程中没有涉及合同、责任、版权等与国家相关法律规定相抵触的方面。
因此,本系统在法律上是可行的。
1.2.5分析结论
通过以上的分析,技术、经济、运行和法律都具有可行性,故该师生专题讨论系统可以进行设计和实现。
1.3需求分析
1.3.1系统功能需求分析
经过同老师和学生的需求调研。
得出该师生专题讨论系统的实现,重点需要实现如下功能:
1)板块管理:
该系统是以板块的形式将信息展示出来,板块下可分多个主题,主题下可对应多个消息帖,主贴下可包含多个回帖。
通过对板块进行管理,可以将专题讨论的内容结构化,清晰化。
普通管理员可以对当前已存在的板块进行修改和删除,如果执行板块删除操作,则隶属于当前板块所有的主题和消息贴将级联被删除。
2)主题管理:
主题父级元素为板块,下级元素则为消息贴。
管理员可以根据需求对某板块下的主题进行增删改。
当管理员删除某主题,则该主题下的所有消息贴以及回帖都将会被级联删除。
3)发帖管理:
师生通过发帖的形式来进行讨论,一张消息贴可有多个回帖,普通管理员通过后台可以实时监控发帖详情,对于发帖和回帖有充分控制的权限,对于不符合要求的消息贴可以给与冻结或者删除,来保证系统的良好运行环境。
1.3.2系统性能需求分析
理论上来说,本系统性能需求可分为下面三个方面:
(1)系统的吞吐量
系统吞吐量就是系统在单位时间内可以接受和处理的访问请求的数量,请求量越多,说明该系统的运行性能越强。
(2)系统的响应时间
系统的响应时间是指当用户充客户端真正发出请求过后,到服务器返回请求资源这过程所需要消耗的时间,响应时间可以用来评价服务器的性能以及网络的性能。
(3)系统的安全性
安全性是指计算机系统的数据不受非授权用户访问的能力。
整个系统不应由于操作失误,甚至恶意攻击而遭到破坏。
系统的安全性能可以通过给用户设置密码,或者对相应的重要数据进行安全上的可逆加密操作。
第2章系统分析
2.1功能模块分析
通过对系统的需求分析得出,该系统主要分为两个模块:
2.1.1前台模块
图1前台功能模块结构图
其中具体功能叙述如下:
1)用户注册:
通过用户注册,实现系统识别当前操作人为游客还是普通用户,游客只有浏览权限,没有发帖和回帖的权限。
2)用户登陆:
用户通过用户名和密码登录,登录通过之后进入系统。
3)系统状态:
显示当前系统中已存在的用户数量,模块数量,主题数量和帖子数量。
4)板块信息:
板块为该系统最大的元素,其下含有主题,通过板块信息将系统内容格式化,让用户使用起来更容易、更清晰。
5)主题信息:
主题信息为帖子的父节点,显示当前主题说明以及含有的帖子数量。
6)帖子信息:
显示帖子名称,已经发帖人和发帖时间,帖子包含两个模块,分别是发表新帖和回复已经存在的帖子。
2.1.1后台管理模块
图2后台功能模块结构图
根据角色不同,各自功能叙述如下:
A.普通用户:
1)个人资料管理:
普通用户可以修改自己的密码等个人信息。
比如用户的姓名,密码和联系方式等。
2)个人发帖查看:
普通用户可以通过查看自己的发帖,了解发帖详情,是否通过管理员审核等信息。
B.普通管理员:
1)用户管理:
普通管理员可以对用户进行管理,比如对个人信息的修改和删除和普通用户的修改和删除。
个人信息管理主要是对于密码,姓名等信息进行更新。
2)板块管理:
普通管理员可以添加新的板块和管理当前板块的信息。
一个板块主要包括板块名称、板块说明和创建者三个信息,其中板块名称和说明管理员可以进行修改,当管理员删除该板块时,则会级联删除当前板块下的所有信息,包括所有主题和所有帖子。
3)主题管理:
普通管理员可以修改或者删除当前已经存在的主题,还可以添加新的主题。
管理已有主题包括对已有主题的修改与删除等操作。
修改主题主要是指修改主题名称和主题说明,对于主题所属的板块,本系统出自安全考虑则不允许修改;当管理员删除当前主题时,则级联删除当前主题下的所有帖子信息。
添加新主题主要操作包括选择新主题所属的板块,编辑新主题的名称和主题说明。
4)发帖管理:
主要包括审核新的发帖、锁定或者解锁帖子和删除帖子。
新帖默认的状态为通过审核的状态,当新帖的内容不符合要求,管理员可以通过锁定当前新帖或者直接删除当前帖子。
删除当前帖子将会级联删除所有关于该贴的回帖信息。
C.超级管理员:
1)个人资料管理:
超级管理员可以修改自己的密码等个人信息,比如用户的姓名,密码和联系方式等。
2)管理普通管理员:
超级管理员拥有对当前系统已有普通管理员信息的管理权限。
对普通管理员管理主要是对普通管理员的资料进行适当的更新。
2.2组织/功能关联分析
组织/功能联系表
2.3业务流程分析
流程图也称作输入和输出图。
流程图它可以直观地反映一个工作流程的具体过程,它可以很清晰的观察到具体的步骤,可以了解事情是如何进行的,以及决定应如何改进过程极有帮助。
数据流程基本组成及符号说明如表1所示:
表1数据流程图符号
本系统可以将访问论坛的用户分为已注册用户与未注册用户(即游客),并赋予不同的权限,比如临时用户只能对帖子进行查看,而注册的用户里还分普通用户、普通管理员和超级管理员,普通用户不仅可以查看帖子,还能发表新帖,并且对已有帖子进行回复,同时,还可以更新自己的注册资料;普通管理员还具有更多的权限,比如管理普通用户,管理板块、管理主体和帖子等等;超级管理员具有全部权限,主要权限是管理普通管理员。
系统的前台的流程图如下:
图3系统前台业务流程图
管理员在进入系统后台时,系统要判断用户是否登录,如果没有登录,则返回到登录界面;对于可以登录的用户还要对权限进行判断,判断该用户是否有权限进入后台。
系统后台可进行板块管理、主题管理、发帖管理和用户管理,其后台流程图如下所示:
图4系统后台业务流程图
2.4数据流程分析
师生专题讨论系统是为了给大学老师和同学之间、同学与同学之间的网上交流的平台,所以论坛的流程是以用户为中心进行的。
数据流程图(DataFlowChart),是描述系统数据流程的工具,它将数据独立抽象出来,通过图形方式描述信息的来龙去脉和实际流程。
数据流程图是表示操作或数据的方向。
数据流图具有以下两个特性:
1)抽象性:
表现在它去除了具体的物质,通过剩下的数据的流动、加工处理与存储等描述数据的流程。
2)概括性:
表现在它把组成信息的各部分不同业务处理过程联系成一个整体。
数据流图由以下四种基本元素组成,既外部实体、数据流、处理(功能)、数据存储等,数据流图中所用的符号如下:
外部实体处理数据流数据存储
2.4.1顶层数据流程图
图5顶层数据流程图
2.4.2底层数据流程图
(1)用户注册数据流程图
图6用户注册数据流程图
(2)用户发帖和回帖数据流程图
图7用户回帖和发帖数据流程图
(3)普通管理员板块管理数据流程图
图8板块资料管理数据流程图
(4)普通管理员主题管理数据流程图
图9主题管理数据流程图
2.5数据字典
2.5.1数据项定义
表2数据项定义表
2.5.2数据结构定义
表3数据结构定义表
2.5.3数据存储定义
表4数据存储定义表
2.5.4数据流定义
表5数据流定义表
2.5.5处理逻辑定义
表6处理逻辑定义表
第3章系统设计
3.1系统总体功能结构图
3.1.1总体功能结构图
图10系统总体功能结构图
根据系统分析模块中的功能模块分析,师生专题讨论系统的功能分为系统的前台功能结构图和系统后台功能结构图。
3.1.2前台功能结构图
图11系统前台功能结构图
3.1.3后台功能结构图
图12系统后台功能结构图
3.2系统数据资源分布
系统中的用户信息分布在服务器上,用户(包括普通用户和管理员)通过浏览器就可以收取注册信息进行审核,从而及时对系统中的注册等信息情况进行处理,对非法操作者进行监督和检查。
此外,管理员也只需要在本地通过浏览器来对系统进行管理,例如对当前系统的板块、主题、发帖等管理。
3.3系统运行环境
3.3.1软件运行平台
本系统设计运行在Windows7旗舰版操作系统环境下。
如果条件允许的情况下,可以使用网络操作系统,例如WindowsServer2008。
服务器类型:
Tomcat6.0。
Java环境:
Jdk1.7.0_25。
数据库类型:
SqlServer2005。
3.3.2硬件运行平台
CPU:
主频2GHz以上。
内存:
1G以上。
硬盘空间:
至少需要50G以上的硬盘空间来安装所需的组件。
以上为系统建设配置,实际系统运行平台配置建议不低于上述。
3.4代码设计
表7代码设计表
为了保证代码输入的正确性,我们为系统中的代码新增设计了校验码。
下面通过一个例子来说明代码校验的工作方式:
例如:
某用户的帖子号是1001201404001的说明:
原代码:
101201404001
位权:
1312111098765432
乘积之和:
26+0+11+20+9+16+7+12+0+0+0+2=102
模:
11
102/11=9…………3
校验位:
3
因此代码为:
10012014040013
3.5数据库设计
3.5.1概念结构设计
(1)系统E-R图
图13系统E-R图
(2)实体属性图
图14用户实体-属性图
图15板块实体-属性图
图16主题实体-属性图
图17发帖实体-属性图
图18回帖实体-属性图
3.5.2逻辑结构设计
下面的表格是对应数据库中的一个具体的表。
表中具体内容及相关设定如下所示。
(1)用户表
用户基本资料表存储在用户表的基本信息,或者当用户日志记录了用户的基本信息,包括如登录,密码,和最后登陆时间。
用户基本信息表的建立主要是为了记录一些信息,那些信息是用户最常用的。
表8用户表(Users)
(2)板块表
表9板块表(Board)
(3)主题表
表10主题表(Theme)
(4)帖子表
表11帖子表(Note)
(5)回帖表
表12回复表(Message)
3.6输入、输出及菜单设计
对于系统来说,特别是交互量比较多的系统来说,用户界面设计是十分重要的,只有一个良好的界面,才能够加深浏览者和使用着的印象。
界面的设计可以分为两个部分。
第一部分是自己在图纸上大体画出的功能模块草图。
第二部分是网页制作该部分在工具软件上完成,例如:
Eclipse、Dreamweaver等。
3.6.1输入设计
(1)用户注册模块设计:
图19师生专题讨论系统注册页面设计图
(2)添加管理员模块设计:
图20师生专题讨论系统添加管理员设计图
3.6.2输出设计
(1)首页面模块设计:
图21师生专题讨论系统首页面设计图
(2)后台管理页面模块设计:
图22师生专题讨论系统后台管理页面设计图
3.7IPO设计
(1)主控IPO图
(2)用户注册IPO图
(3)用户管理IPO图
(4)发帖管理IPO图
3.8系统组件设计
在整个系统中,为了解决诸如中文显示乱码,非法访问,网页内容编辑等此类的问题,本系统需要设计一些组件,来解决相关的问题
1)权限控制组件
在系统的用户经常会遇到关于权限的问题,比如没有登陆的用户只可以查看帖子,而即使登陆的用户,也只能对自己设定好的权限进行操作,不允许操作管理员类似的功能。
为了解决该问题,系统中是通过Session中的用户数据来判定用户是否登录,通过Session中已存在的用户信息与数据库中用户权限信息,来判断该用户的真正角色,之后再决定用户的操作权限。
系统判断的流程如下:
图23访问权限流程图
2)信息加密组件
在系统中通常用户的关键信息需要进行加密,特别是用户的密码。
该系统中解决此问题的方法是通过MD5进行加密,即定义好一个加密方法,传入原始密码,返回加密后的密码信息,其流程图如下:
图24敏感信息加密流程图
3)在线编辑器组件
在系统的使用过程中,经常需要对附带图片的文章、新闻、帖子、通告等进行编辑。
普通的文本域只能处理普通文字效果,但是无法做到图文并茂的效果。
该系统中使用Kindeditor在线编辑器来解决此问题。
在线编辑器的处理流程如下:
初始化组件
KindEditor编辑器
图25在线编辑器使用流程图
第4章系统实现
4.1系统框架的实现
在系统的整体设计中,我们采取了三层结构.这样结构的优点是灵活,移植和可维护性高,每个层在处理上都有各自不同的功能,各层之间通过接口来调用,来达到最大程度的解耦作用。
系统三层分别是模型(Model)、视图层(View)和控制层(Control),当前IT业存在许多MVC框架,例如SpringMVC,SSH等。
本系统使用的是SSH(Struts+Hibernate+Spring)作为系统构架。
图26SSH框架结合使用图
4.1.1视图层的建立
在视图层上,主要是基于JSP和AJAX异步传输技术来进行建立,这些资源都通过Struts来进行调度。
Struts的核心为拦截器,即拦截每一个来自客户端的请求,对请求进行数据包装,之后将请求调度。
图27Struts核心配置文件
4.1.2持久层的建立
Hibernate是一种使用Java语言创建的对象关系映射,使用GNU宽通用公共许可证发行的自由、开源的软件,为面向对象的领域模型到传统的关系型数据库的映射提供了一个便于使用的框架。
该系统的所有ORM映射文件为:
com/bbs/domain/Users.hbm.xml
com/bbs/domain/Board.hbm.xml