基于B/S结构小型论坛的设计与实现
2013-08-24王志鹏
王志鹏
河海大学计算机与信息学院,江苏常州 213022
随着信息技术和网络技术的发展,互联网已广泛地应用和普及。为了方便网友之间的信息交流,实现网友自由地提出问题或帮助他人解决问题,构建一个小型论坛是实现网友之间信息沟通的有效手段。
1 小型论坛的系统分析
1.1 系统开发环境
根据需要,本文采用如下开发环境:
开发环境: Windows XP Microsoft Visual Studio 2008 SQL Server 2005;
硬件实现: Pentium Ⅳ2.4G 2G 内存 250G 硬盘;
开发语言: C#;
数 据 库: SQL Server 2005;
开发工具: Microsoft Visual Studio 2008。
1.2 系统描述
对于访问论坛的用户,可分为注册会员和为注册的临时用户,这两种用户有着不同的权限,比如临时用户只能对帖子进行查看,而注册会员除了查看帖子之外,还可以发帖、回复、查找用户,并且可以对自己的注册资料进行修改等等,用户权限图如下。
1.3 系统功能描述
本论坛主要实现网友之间的相互交流,因此根据用户的需要和实际的管理条件,应由用户功能实现模块、帖子功能实现模块和后台管理模块等构成,用户可以对一些数据进行查找和修改,并且注册的用户可以对帖子进行特定的操作,而管理员可以对用户和帖子进行相关的管理,各模块的具体功能如下:
1)用户功能实现模块:(1)用户的登录;(2)用户的注册;(3)用户的查找;(4)用户资料的修改。
2)帖子功能实现模块:(1)帖子的发表;(2)帖子的回复;(3)帖子的查找。
3)后台管理模块:(1)用户的管理;(2)帖子的管理;(3)论坛信息的管理;(4)论坛版块的管理。
图1 用户权限图
该论坛的具体数据流程图如图2 所示。
2 论坛的系统设计
2.1 论坛概念模型设计
数据模型是抽象化的数据特征,在抽象地基础上描述了系统的静态特征、动态行为和约束条件,为数据库系统操作提供一个系统的、抽象的框架,要设计的论坛的ER 关系图如图3所示。
2.2 论坛数据库的结构设计
2.2.1 管理员基本资料表
号 列名 数据类型序长度小数位标识键 允许空 默认值 说明主
表1 manager
图2 论坛数据流程图
图3 论坛系统的ER 关系图
2.2.2 回复信息表
表2 replay
2.2.3 角色权限表
表3 role
2.2.4 版块信息表
2.2.5 帖子信息表
表5 topic
2.2.6 用户基本资料表
表6 users
2.3 功能模块设计
本系统分为三个大的模块,他们分别是会员资料模块、帖子资料模块和后台管理模块,本系统的功能层次图如图4 所示:
图4 论坛功能层次图
如图4 所示,各模块的功能如下:
1)会员模块
此模块用来实现会员的登陆注册和会员资料的修改和查找。
(1)会员登陆模块
会员可以通过此模块对论坛进行登陆,登陆后便可以使用所有的会员功能,比如发帖回复等等。
(2)会员注册模块
没有会员帐号的用户,可以通过此模块添加会员信息,添加成功后便可登陆论坛,使用会员功能。
(3)资料修改模块
已注册的会员在登陆后,可以通过此模块,对会员的基本资料,联系方式,密码,头像等资料进行修改。
(4)会员查找模块
已注册的会员在登陆后,可以通过此模块,对会员进行查找,并可以查看对方的资料,联系方式等等,从而方便会员之间的联系。
2)帖子模块
(1)帖子发表模块
已注册的会员在登陆后,可以在相应的论坛中,发表或转载自己的大作,发表成功后,其他会员便可以在相应的论坛中看到这篇帖子,并可以对其进行回复等操作。
(2)帖子回复模块
会员在发表完帖子后,用户便可查看相关文章,并可以在文章中对已发表的帖子进行回复。
(3)帖子查找模块
会员可以通过此模块,根据帖子的标题和作者,对相关的帖子进行查找。
3)后台管理
(1)帖子查找模块
此模块和帖子模块中的帖子查找类似,只是管理员的搜索条件比普通用户更加的广泛,使搜索变的便捷。
(2)帖子管理模块
帖子管理模块是管理员对帖子管理的平台,如果管理员查看到帖子有不适宜发表的内容时,可以对帖子选择删除或者锁定等操作,如果看到优秀的帖子,还可以将帖子进行置顶、加精。
图5 帖子管理模块
3 论坛的详细设计与实现
3.1 系统前台界面设计
1)用户登录界面
图6 用户登录界面
2)论坛首页界面
图7 论坛首页界面
3)论坛帖子页面
图8 论坛帖子页面
4)论坛发帖页面
图9 论坛发帖页面
3.2 论坛后台界面设计
1)管理员登录界面
图10 管理员登录界面
2)管理员界面
图11 管理员界面
4 测试
4.1 测试的意义
软件设计好后,最艰巨最繁重的任务就是进行软件测试。在开发大型软件系统的漫长过程中,存在很多复杂的问题,我们前期的想法未必符合现有的客观实际,同时同有关人员的沟通和配合过程中也存在相应问题,因此在软件生命周期内不可避免地存在这样和那样的问题。软件测试的目的就是力求软件设计的每个环节的完美,尽早的发现问题并进行相应的纠正。
4.2 测试的目标
软件测试过程必须遵守相应的测试规则,主要测试规则如下:
1)测试就是执行程序并发现程序中的错误的过程;
2)好的测试方案就是最大可能地发现程序中存在的错误;
3)好的测试就是能够发现程序中发现我们到目前为止没有发现的错误。
根据上面几个测试规则,我们发现测试的目的是执行程序并发现程序中的错误的过程。因此正确地认识软件测试的目标是极其必要的,测试目标的确定决定了我们如何设计一个合适的测试方案,极大可能地发现程序中存在的错误。如果为了测试程序的正确性,就会设计一些不易暴露错误的测试方案;相反,如果为了测试程序中存在的错误,就会极尽全力地设计出一个最能暴露错误的测试方案。
4.3 测试的范围
测试时,我们依据用户需求说明书和软件需求规格说明书、相应的设计文档等进行系统测试,这些测试主要包括功能测试、性能测试、用户访问与安全控制测试、用户界面测试等,而单元测试由开发人员来执行。主要测试包括:用户功能:注册新用户;登录系统;浏览公告;发表留言;添加修改等。
5 结论
通过软件的测试发现,设计的基于B/S 结构的小型交流论坛的效果良好,功能较为完备,能够满足网友之间的信息交流和沟通。同时,发现采用B/S 结构的论坛,可靠性和可维护性也比一般结构的网络要好。
[1]冯燕奎,赵德奎.ASP实用案例教程[M].清华大学出版社, 2004,5:70-100.
[2]王家华.ASP.NET 面向对象程序设计[M].东北大学出版社,2006.
[3]王宜贵.软件工程[M].北京:机械工业出版社,2002.
[4]熊节,林仪明,张凯峰,陈玉泉,等.CSDN社区电子杂志——.NET杂志,2006.
[5]金旭亮.NET 2.0 面向对象编程揭秘[M].高等教育出版社,2000.
[6]肖金秀,冯沃辉,黄元龙. ASP网络编程技术[M].1版.清华大学出版社出版,2001:17-25.
[7]求是科技.Asp数据库开发技术与工程实践[M].人民邮电出版社,2004:16-26.