《网络留言簿》
详 细 设 计
院 系: 计算机科学技术学院
班 级: XXXX班
小 组: 第八组
负 责 人: XXXXX
合 作 人:
一、引言
1.1编写目的
使项目成员和项目干系人了解项目开发计划书的作用、希望达到的效果。开发计划书的编写是为了使项目成员以及项目干系人之间的共识与约定,项目生命周期所有活动的行动基础,以便项目团队根据本计划书开展工作。
1.2项目背景
留言簿提供互动交流的同时, 其副面影响也开始显现。网络留言板简称留言板又称为留言簿或留言本,是目前网站中使用较广泛的一种与用户沟通、交流的方式。通过留言板的方式,可收集来自用户的意见或需求信息,并可作出相应的回复,从而实现网站与客户之间及不同客户之间的交流与沟通。在网络日益发展的今天,如何利用网络平台,创新高校网络思想政育机制,已经成为高校思想政治教育的新课题。
在网络日益发展的今天,如何利用网络平台,创新高校网络思想政育机制,已经成为高校思想政治教育的新课题。校园网是学校的门户网站,与学生的学习生活息息相关,受到大学生的普遍关注。很多学者在谈到加强高校的网络思想政治教育时,都着重强调了校园网的网络教育平台作用。但是从目前情况来看,校园网并未在网络思想政治教育中发挥出应有的作用。这一方面是由于校园网站建设缺乏统一部署,网络思想政治教育资源未得到有效地整合;另一方面是由于校园网的思想政治教育功能未得到高校管理层的充分重视,校园网的功能定位未得以明确,进而使得校园网建设结构不严谨,主题不突出,杂乱而无序。自2000 年教育部下发的《教育部关于加强高等学校思想政治教育进网络工作的若干意见》之后,各类思想政治教育网站如雨后春笋般出现,网络思想政治教育的研究与探讨也随之增多。目前,网络思想政治教育已取得了一定的成效,但从系统性和实效性上来看仍存在诸多问题。如何充分发挥网络的作用,创建高校网络思想政治教育的新机制,增强网络思想政治教育的实效性,是目前高校亟待解决的问题。
论坛用当今主流的网站开发技术ASP语言进行开发。论坛将采用B/S体系结构,人们通过浏览器就可以访问教学网站的主页,保证的服务器的安全。数据库Microsoft公司的SQL Server2005数据库。该论坛功能较齐全,在这里可以自由地发表自己的观点和对论坛的主题发表意见,我们还可以对网友的问题及时地解决,获取对自己有用的知识。本网站严格按照软件项目开发的流程进行开发,对于网站开发的可行性分析、需求分析、详细设计以及对网站的测试计划都有详细的论述和实现过程。
1.3相关定义
项目开发周期:项目开发总体的时间,按计划从项目开始到测试结束的时间。 需求:用户解决问题或达到目标所需的条件或功能;系统或系统部件要满足合同、标准,
2
规范或其它正式规定文档所需具有的条件或权能。
1.4参考资料
《软件文档写作》 肖刚、古辉、程振波、张元鸣,清华大学出版社。
二、 程序系统结构
结构图如下: 网络留言簿
游客 普通用户 管理员用户
浏回复 模块 普通用户注册模块 普通用户登陆模块 用户修改密码模块 用户留言及查看模块 管理员登陆模块 修改修改用户信息 管理查看留言模块 添加回复模块 删除留言
览 模块 三、程序设计说明
3.1程序描述
3.1.1系统的开发环境:
基于微软平台ASP环境,使用SQL2005数据库。适用于IE8.0以上版本浏览器。
3.1.2 ASP语言选择:
选择一个好的编程语言十分的重要,当前,面对众多的编程语言,很多人无从选择,而本人看到asp的以上众多特点,个人认为:
3
SQL后台数据库+ASP服务器端程序+客户端IE浏览器,是一个精练实用高效的组合模式。在这种使用模式中,ASP程序无疑是最重要的,是沟通客户端和后台数据库之间的桥梁。在ASP程序中,建立对SQL数据库的连接,是客户能够访问后台数据库的前提。 鉴于前面介绍ASP优点的原因,又有上面组合的优势,本人的留言板使用asp语言也是十分正确而实用的。
3.1.3 选择SQL作为数据库
留言板有了使用环境,接下来就该选择合适的数据库。由于数据库对整个留言板的管理和运作起到置关重要的作用,所以选择数据库成为了重中之重。
在基于微软IIS/PWS的网络平台上,通过服务器端运行的ASP程序来访问后台数据库,是一种最常见的模式了。而对于小型的数据库应用需求,微软的SQL数据库,应该是与ASP程序配套使用的首选。
而将SQL作为我留言板的数据库,也是考虑到了以下几点: 1.SQL数据库使用简单,可以迅速掌握。
2.SQL数据库的ODBC驱动程序支持的SQL指令全。SQL具有强大的数据库功能,结构简单、理论基础坚实、独立性高。适合开发中型管理系统。
3.用SQL数据库开发的程序转化为SQL Server数据库也非常简单,只要用 SQL Server的导入功能将SQL数据库转化为SQL Server数据库。而对于数据库语句,因为采用的是标准的SQL语言,读取SQL数据库和读取SQL Server数据库基本上是一样的,只要改写一下连接数据库的语句。
4.整体说来ASP与SQL的结合使得系统的开发简单、快捷、操作方便、易于系统管理和系统维护,而且执行效率高,且配置简单、移植方便。
3.2系统的功能:
该留言板具有的主要功能如下:
1、可以按照发言时间的先后顺序,留言板自动排序; 2、友好简洁的管理界面,便于管理员维护留言板; 3、管理员具有回复和删除留言的权限;
4、管理员可以修改留言板页面的名称和网址以及每页显示的留言数; 5、拥有更多留言者的信息,包括名字等; 6、具有页数跳转功能;
7、具有防止留言客户非法进入管理界面功能;
3.2.1管理员的功能模块
管理员登录系统以后管理用户(删除用户、浏览用户、修改用户信息);管理留言(浏览留言、发表留言、回复留言、删除留言(全部、回复)).
4
3.2.2 普通用户的功能模块
用户子系统主要为注册用户使用而设计,用户登陆系统以后所能进行的功能选择以及系统为用户所提供的其他服务,它包括对用户登陆进行管理,用户修改密码,查询学生用户自己的相关信息,查询回复,留言,删除自己的留言,删除自己的回复,退出系统。
3.2.3 游客(未登录)用户模块功能
游客是未登录用户,权限较少,只能浏览留言和回复他人留言,不能发起留言,如果想进行更多操作可以申请注册用户。
3.3性能
3.3.1精度
系统对数据处理的准确性要求应当满足: 1)系统产生的数据保留到小数点后两位。
2)为了保证产生的结果误差最小系统用到的数据应保留到小数点后两位。 3)没有特殊要求的实型数据一般保留到小数点后两位。
4) 整数保留到个位。
3.3.2 时间特性要求(1秒=1000毫秒)
1响应时间,精确到10毫秒
2更新处理时间,精确到10毫秒
3数据的转换和传送时间 ,误差控制在100毫秒 4计算时间,精确到10毫秒
3.3.3灵活性
1网络留言薄的操作较为简单,执行操作单一。
2运行环境受限制(用asp语言,运行环境要求较高)。 3数据灵活性较高(精度见上)。
3.4输入项
输入汉字(int型)、字母、数字和字符(string型)。
输入要求文明上网,留言薄中不得输入脏话或者敏感话题,否则将被删除或封号处理。
3.5输出项
我们用到了两种输出值的方法:表达式语句和print语句。需要控制输出格式,不仅仅是显示空格分开的值。有两种办法控制输出格式:
5
一种办法是自己进行字符串处理,用字符串的片断和合并操作可以产生任何可以想象的格式。标准模块string包含了诸如把字符串填充到指定的列宽这样的有用操作。
另一种办法是使用%运算符,此运算符以一个字符串为左运算元,它按C的sprintf()函数格式把右运算元转换为字符串,返回转换结果。
3.6数据库设计
3.6.1数据库介绍
我的数据库采用的是SQL数据库,采用的原因也已经介绍了。以下就介绍留言板数据库的组成。
1.数据库整体介绍: 留言板数据库总共有3张表,具体如下: 数据库表名 admin Message information 说明 用来存放管理员的名字和密码 用来存放用户的信息 用来表明该留言板的留言信息 表4-1 2.数据库各个表的介绍:
Admin表存放的是后台管理员的用户名和密码,详细设计如下表所示: Admin表 : 字段名称 类型 说明 id 自动编号 编号 adminname 文本 管理员名字 adminpass 文本 管理员密码 表 4-2 表Message: 字段名 类型 备注 PID Pname Ppassword Plevel Ptime Psex Page Pemail Phones
表的作用 管理登陆 管理用户信息 留言板的留言信息 Int Varchar(20) Varchar(20) Varchar(20) Datatime Char(2) Int Varchar(30) Varchar(20) 用户ID,主键,自动生成 用户名, 用户密码。 用户权限 注册时间,自动获取系统时间 性别 年龄 邮箱check约束包含@) 联系电话 6
表4-3
表information 字段名称 类型 id name Url home num badid badwords 自动编号 文本 文本 文本 文本 文本 文本 说明 编号 留言板名字 留言板主页 留言板所在网站主页 留言每页显示记录数 屏蔽使用的呢称 屏蔽使用的字符 表4-4 3.6.2留言板数据库的连接:
留言板中很多数据例如,管理员登陆时检测名字和密码,进行删除和修改留言时,都需要用到和数据库的连接。所以应该将与数据库的连接专门作为一个ASP文件,这样不仅方便,而且也增加安全性。
我的这个留言板中,就是以odbc_connection文件作为单独一个ASP文件连接数据库的!而具体连接数据库的ASP代码见下:
Dim db,ConnStr
connstr=\"DBQ=\"+server.mappath(\"message.mdb\")+\";DefaultDir=;DRIVER={Microsoft SQL Driver (*.mdb)};\"
Set db=Server.CreateObject(\"ADODB.Connection\") db.Open ConnStr
3.6.3留言板文件夹中文件的介绍:
有了数据库,就应该设计留言板的各个页面。本留言板由1个文件夹,11个文件组成,简单介绍各文件的作用:
index.asp:留言板主页,主要功能是进行访客的留言进行回复和删除管理和管理员
登陆和注销。
#message.mdb:留言板的数据库文件,存放访客和管理员以及留言板的相应信息。 odbc_connection.asp:留言板与数据库的连接的文件,作为单独的一个ASP文件,
适合进行修改和管理。
delete.asp:删除留言所执行的asp文件。 login.asp:管理员登陆界面的asp文件。 Logout.asp:管理员注销退出时执行的asp文件。
7
admin.asp:管理员管理留言板界面的asp文件。
adminsave.asp:对asp进行修改并保存修改的asp文件。 add.asp:将留言添加到数据库里的asp文件。 Reply.asp:管理员对留言进行回复的asp文件。 Imq:存放留言板版面设计中的背景和框架图片。
3.7流程逻辑
有了合适的技术,确定了留言板的功能,应该就此给出整体结构的流程图:
开 始
选择进入 选择管理员
界 面
选择用户 用户登录界面 管理员登 陆界面
不修改 是否修改留 言、用户信息 回复、发表留言 修改 对留言板的内容进行修改, 并保存修改
输出
结 束
8
3.8接口
3.81用户接口
说明将向用户提供的命令和它们的语法结构,以及软件的回答信息。用户接口设计如表3-16所示。
1 2 3 4 5 6 7 8 9 10 命令 IE浏览器输入地址 点击进入论坛按钮 点击发表新帖按钮 点击个人资料按钮 点击查找按钮 点击登录按钮 点击注册按钮 点击收藏按钮 点击提前按钮 点击回复按钮 用户接口设计表 功能 回答信息 进入论坛 进入论坛页面 进入论坛 进入首页 发表帖子 贴子发表成功 查询个人资料 显示个人信息信息 查找会员 显示所查找会员信息 登录到论坛 进入论坛首页 注册成为会员 显示注册成功 收藏帖子 显示帖子收藏成功 将帖子提前 帖子显示靠前 回复帖子 进入编辑页面 错误信息 无信息 无信息 无信息 无信息 无信息 无信息 无信息 无信息 无信息 无信息 说明:用户和软件测试人员仔细阅读用户接口说明,回答信息是不是一样
3.8.2外部接口
说明本系统同外界的所有接口的安排包括软件与硬件之间的接口、本系统与各支持软件之间的接口关系。外部接口设计如表3-17所示
键盘 有关 输入 鼠标 输入 外部接口设计
硬件 显示器 输出 打印机 扫描器 数据库 提供数据 软件 Xp 输入法 操作系统 输入 汉字 3.8.3 内部接口
说明本系统之内的各个系统元素之间的接口的安排。内部接口设计如表3-18所示。
9
编号 I000 I002 I003 中文名称 系统管理员接口 论坛管理员接口 类别管理员 内部接口设计 英文名称 功能 admininterface 所有操作 bbsadmininterface categoryadmininterfac除了系统设置的其他所有操作 效果 完成功能 完成功能 完成功能 I004 版块管理员接口 I003 用户接口 I004 页面接口 前台对帖子、附件、e 公告的增删改查,及对待审核帖子的操作;后台对版块显示顺序的排序、添加、编辑、删除版块、分配新版主的操作 boardadmininterface 前台对帖子、附件、公告的增删改查,及对待审核帖子的操作; 后台对版块描述信息的编辑操作 userinterface 前台对帖子的查看、回复、提前、收藏,及发送消息 后台无操作 pageinterface 数据项的分页 完成功能 完成功能 超链接完成
3.9留言板首页设计:
我留言板的首页文件index.asp,功能主要是为访客留下相关的信息,并进行留言,以及管理员进行删除和回复留言。界面相对简单,但功能很实用!留言板的基本功能实现具体如下:
1. 在留言中,最重要是要保留留言用户的相关信息和留言内容,我将其放入message数据库中。
2. 对于访客的留言功能,则是交给了add.asp文件执行。
3. 对于删除留言功能,我又做了一个delete.asp文件,通过连接数据库,在利用超联接将对留言的删除操作从index.asp转到delete.asp文件中去执行。
4. 而对于主页面中的管理员登陆界面,也是通过超连接从index.asp转到login.asp文件中执行的。
10
5. 关于版主的回复,还是通过超连接从index.asp转到reply.asp文件中去执行的。
由于首页是进行修改和查看留言本的主要阵地,是进行一切管理和体现大部分功能的地方,所以特别的重要。主页中留言的页面如下:
3.10存储分配
Message表说明了如何存储与用户帐户有一对多关系的信息。由于每个用户帐户可能有任意数量的与其关联的评论,我们可以这样来定义该关系的模型:创建一个表来存储评论,并在该表中设置一列,用于将每条评论链接回发表该评论的特定用户。使用SqlMembershipProvider 时,最好这样来建立该链接:创建一个名为UserId 的uniqueidentifier 类型的列,并在该列和 aspnet_Users.UserId 之间建立一个外键约束。
现在,我们需要将三个列与每个用户帐户关联起来,以便存储用户的家乡、主页和签名,这些信息将出现在用户发表的留言板评论中。
3.11限制条件
1.在安全方面,许多留言板做了很多加密限制,我则加入了对系统中关键名字的过滤以及在index主界面的删除和回复中设置了权限,防止访客和其他人员对留言进行删除。
而对于删除和回复权限的设置,则是通过先与数据库中admin表连接,然后在login管理员登陆界面中登陆成功后,将管理员的名字保存在cookies里:response.Cookies(\"adminname\")=adminname,在 delete.asp文件中加入if
11
request.cookies(\"adminname\")=\"\" then来判断是否是管理员,然后进行删除和回复操作。这点保证了删除和回复权限,使留言板的安全性又上升了一个档次。
2.对于防止留言不良信息,是各大留言板严禁的,也是促进我国网络健康发展的必要措施。
而对于对不良留言屏蔽的实现,首先是先与数据库中的information表连接,然后是用ASP语言实现的。
3.12 测试计划(详细见软件测试)
项目开发结束之后,对项目进行测试,包括内部测试,外部测试。
内部测试:
由相关测试人员对软件相关测试项进行测试,这是在开发单位内部进行的。
外部测试:
通过签订协议,交付给相关用户进行使用,然后根据用户使用的反馈情况来了解系统存在的问题,并修复。
3.13尚未解决问题
1.不能自动屏蔽用户不文明上网,应该使脏话部分自动屏蔽显示为“*”。 2.软件只有专人维护,但是没有专门的人负责管理和升级数据库系统。
12
因篇幅问题不能全部显示,请点此查看更多更全内容