下载
加入VIP
  • 专属下载特权
  • 现金文档折扣购买
  • VIP免费专区
  • 千万文档免费下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 BBS详细设计说明书

BBS详细设计说明书.doc

BBS详细设计说明书

阎胜时
2018-09-14 0人阅读 举报 0 0 暂无简介

简介:本文档为《BBS详细设计说明书doc》,可适用于领域

BBS详细设计说明书、引言编写目的软件背景参考资料、系统的结构、模块设计说明功能模块设计功能流程逻辑限制条件测试计划尚未解决的问题系统维护设计结束语前言随着计算机网络的飞速发展网民人数越来越多BBS论坛作为一种交流思想和感情的桥梁快捷方便正受到越来越多网友的喜爱并深刻地影响人类的交流方式。BBS是互联网一种人与人之间交互的必备工具特别是做网站必备。BBS可以通过WEB浏览器访问并且实现上传文件等诸多功能。网民们便逐步开始接受这种使用方便快捷、功能日渐强大的系统。在它上面网民们可以张贴和发布各种各样的信息讨论各式话题。随着中国网络的普及和计算机及其外设的大幅度降价Internet这个概念逐渐深入人心。中国网民的数量呈几何级数量增长BBS的普及程度也直追Email。每个网站几乎都拥有自己的BBS或者BBS链接,BBS社区提供给用户的服务是全面而且非常友好的用户在社区中可以根据自己的喜好设置不同的显示风格根据自己的需求定制各种服务、引言编写目的通过BBS系统可随时取得国际最新的软件及信息也可以通过BBS系统来和别人讨论计算机软件、硬件、Internet、多媒体、程序设计以及医学等等各种有趣的话题更可以利用BBS系统来刊登一些“征友”、“廉价转让”及“公司产品”等启事。通过此bbs论坛的编写熟悉ASPNET的工作流程。软件背景大约是从年开始国内开始了第一个BBS站。经过长时间的发展直到年随着计算机及其外设的大幅降价BBS才逐渐被人们所认识。年更是以惊人的速度发展起来。国内的BBS站按其性质划分可以分为种:一种是商业BBS站如新华龙讯网另一种是业余BBS站如天堂资讯站。由于使用商业BBS站要交纳一笔费用而商业站所能提供的服务与业余站相比并没有什么优势所以其用户数量不多。多数业余BBS站的站长基于个人关系每天都互相交换电子邮件渐渐地形成了一个全国性的电子邮件网络ChinaFidoNet(中国惠多网)。于是各地的用户都可以通过本地的业余BBS站与远在异地的网友互通信息。这种跨地域电子邮件交流正是商业站无法与业余站相抗衡的根本因素。由于业余BBS站拥有这种优势所以使用者都更乐意加入。这里“业余”字并不是代表这种类型的BBS站的服务和技术水平是业余的而是指这类BBS站的性质。一般BBS站都是由志愿者开发的。他们付出的不仅是金钱更多的是精力。其目的是为了推动中国计算机网络的健康发展提高广大计算机用户的应用水平定义根帖:即是顶层的帖子,点击“发言”按钮,输入的发言就会成为根帖,根帖中的Layer(即帖子所在的层)等于,Order(即帖子的序号)也等于。父帖和子帖:子帖就是父帖的回复帖子,父帖和子帖会拥有相同的RootID(即相应根帖的ID号),根帖的RootID等于它自己的ID,根帖的ParentID(即父帖的ID号)等于,所以判断一个帖子是不是根帖就看它的ParentID是否等于,子帖的Layer等于父帖Layer加。参考资料余青松编著清华大学出版社《基于NET的Web数据库开发技术实践教程》江红《数据库系统概论》王珊萨师煊编著高等教育出版社、系统的结构、模块设计说明功能模块设计通过对系统进行详细的需求分析获得了一个最优的设计方案,将系统划分为若干功能子模块。为了方便后期的设计与编程工作在划分系统功能模块时尽量注重模块的独立性努力做到高内聚低耦合。用户注册登陆模块要完成论坛的各项操作用户必须登陆论坛系统如果没有论坛帐户用户注册是必须的。用户命令如果是退出则清除用户的状态信息并返回BBS首页如果是登录则使用SQLServer连接数据库取得用户输入的帐号和密码并查询数据库将得出的结果和用户输入的信息做比较验证正确显示用户已经登陆到系统错误将返回消息让用户从新输入如果用户想注册帐户则返回注册页面用户填写信息后将检测信息的正确性如果帐号允许注册则完成帐号的注册将信息写入到数据库中如果帐户已经存在则返回错误信息告诉用户帐号存在请用户重新输入并完成注册进程结束。帐户信息模块当用户登陆系统后在个人工具箱中可以通过点击个人资料修改的链接来修改个人资料(其中帐户名是不允许修改的)通过最近发表的话题来查看和修改自己发布的帖。文章发布模块用户登陆系统后可以查看其他所有用户发的文章并可以发布自己的话题也可响应回复其他用户和自己发表的话题。公告制度模块论坛管理员可以通过后台管理系统发布论坛公告公告可以选择版面公告的主题并可以设置字体的颜色大小等工具支持UBBCode论坛的制度上可以设置对文章操作的客户积分。例如用户每发一篇文章则增加一定量的积分。版块管理模块论坛管理员可以通过后台管理系统控制论坛的版块管理员可以完成下列功能:添加分类或版面版面配置或删除并可以对已存在的版块设置属性(包括名称类别隐藏属性默认风格主题回复排序等)。信息管理模块信息管理模块主要完成下面的功能:社区信息配置添加管理员编辑管理员设定等级配置权限重新登录安全退出用户等级管理团队用户列表黑名单用户查询。以上的功能完成了整个论坛的配置用户的管理管理员的管理都可以通过对应的链接来完成。功能提供完善的用户登录功能,要求为不同用户提供分级权限。提供标准的加贴、删贴功能,并且每一个帖子的内容不加限制,帖子必须能显示加贴时间、作者,以及是否有回贴,有多少个回贴。提供回帖功能,每个回帖有父贴。父帖与子帖是一对多的关系,删除父帖后,子帖也连带被删除。提出精华区的概念,为每个版面都提供一个精华区,其中内容是多次提出的热点问题。完全是WWW模式,即只要有浏览器即可访问本BBS系统。设计方法基于WEB的通用BBS系统其系统定义部分采用面对对象的系统分析方法并结合传统的结构化分析方化设计出其系统模型如果采用面向对象的程序设计语言开发系统则可以很方便地从系统分析阶段平滑地过渡到设计阶段。但是本系统采用ASP技术我们知道ASP不支持继承和强类型转换等面向对象程序设计所必需的功能只能采用一定的技术措施用传统的结构型程序设计方式实现诸如继承等这类功能。下面就部分系统实现做一下简要说明:(系统主页面Mainasp这是BBS网站的HomePage程序首先进行用户身份判断。本系统用户身份信息经登录后保存在SESSION对象的USERNAME和ADMINBOARD两个变量里。匿名用户(既Guest)这两个变量为空或没有定义普通用户USERNAME变量有用户在本系统注册的会员昵称但其ADMINBOARD变量没有定义或为空版主用户其ADMINBOARD变量保存有他管理版面的ID如果ADMINBOARD变量为“”则为超级会员。依据程序对用户所做的判断插入相应用户的功能操作菜单。这就实现了不同层次对象的同一方法的不同功能。譬如Guest::mainasp载入的功能菜单为genheadasp,Super::mainasp载入的功能菜单则为superheadasp。注意:功能菜单文件其实就是普通的aspx文件按照各自所属的操作对象列示其相应的功能链接。各级别用户私有功能的实现方法私有功能是不能为比其级别高的用户所继承的功能。因此私有功能ASP网页应进行具体某个级别身份的识别非这个级别层次的用户则被拒绝访问。各级别用户公有功能的实现方法公有功能是可以为比其级别高的用户所继承的功能。因此公有功能ASP网页只进行比其级别低的用户身份的识别如果此用户级别低则拒绝继续访问。此外高级别的用户可以进行功能重载譬如匿名用户只能查看本系统会员列表但是超级会员在查看的同时还可以进行管理操作如修改删除等。下面是所有公用功能的重载列表:Guest::useradminasp查看本论坛注册会员列表Super::useradminasp查看并管理本论坛注册会员列表Guest::adminorlistasp查看本论坛版主列表Super::adminorlistasp查看并管理本论坛版主列表Adminor::articleadminasp自已管理辖版面范围内的贴子维护Super::articleadminasp本论坛所有版面贴子维护Adminor::linkadminasp添加或维护自已曾添加的友情链接Super::linkadminasp维护所有友情链接列表Adminor::newpostasp在自已管理版面发布公告Super::newpostasp在任一版面发布公告会员用户积分的计算模型会员用户每提交一篇文章可以积十分。回复某篇文章则可以积五分同时原文作者积三分。版主申请条件以及计算模型版主申请条件:为正式注册会员一个会员最多管理二个版面一个版面最多五个管理员。计算机模型:用户提出申请超级用户审批。审批完成前此会员不能再次就同一版面申请版主权限。(超文本信息输入具有普通会员身份以上级别的用户发表贴子或回复贴子时可以在其贴子内插入诸如滚动文字字体大小颜色不同的文字以及超链接等等。系统接受用户输入时对带格式文本应进行相应的编码(Encode),系统显示带超文本信息的贴子时则应进行相应的解码(Decode)。userlogasp源代码如下:<!#includefile="dbconrwasp"><responseexpires=OnErrorResumeNextDimstrUserNameDimstrSQL,objRSstrUserName=RequestForm("username")strUserPassword=RequestForm("password")strSQL="SELECT*FROMuserlistWHEREusername='"strUserName"'"setobjRS=objDBConnExecute(strSQL)session("username")=""session("adminboard")=""DimbLogSucc,repmsg,reptxt,repurlIfobjRSEOFThen'UserDoesn'tExistsbLogSucc=repmsg="此用户不存在"repurl="userlogasp"reptxt="请重新登录"Else'UserExistsIfobjRS("password")=strUserPasswordThenbLogSucc=session("username")=strUserNamerepmsg="欢迎"strUserName"您已登录成功"repurl="mainasp"reptxt="返回论坛首页"ElsebLogSucc=repmsg="密码输入错误"repurl="userlogasp"reptxt="请重新登录"EndifEndIf><!#includefile="dberrorasp"><objRSClose'JudgeifsuperadministratororboardmanagerifbLogSucc=thenstrSQL="SELECT*FROMadminorlistWHEREusername='"strUsername"'"setobjRS=objDBConnExecute(strSQL)iferrnumber<>thenresponsewrite"数据库操作失败:"errdescriptionendifIfNotobjRSEOFThenifobjRS("status")="Y"thensession("adminboard")=Cint(objRS("manbid"))endifendif'WriteLogobjRSclosestrSQL="INSERTINTOloginfo(userid,userip,intime)"strSQL=strSQL"VALUES('"strUserName"','"strSQL=strSQLrequestservervariables("remotehost")"','"strSQL=strSQLnow()"')"setobjRS=objDBConnexecute(strSQL)iferrnumber<>thenresponsewrite"数据库操作失败:"errdescriptionendifendifobjRScloseobjDBConnCloseSetobjRS=NothingSetobjDBConn=Nothing><html><body><tablealign='center'><tr><tdalign='center'><=repmsg><td><tr><tr><tdalign='center'><fontcolor="#"><aid="reinput"href="<=repurl>"><=reptxt><a><font><SCRIPTlanguage="javascript"type="textjavascript">setTimeout("locationhref=reinputhref",)<SCRIPT><td><tr><table><body><html>确定了用户的会员身份以后在每个需要进行身份识别的ASP网页插入身份识别代码如果此用户具有访问这个ASP网页的权限则输出其相应的HTML文件否则系统转到用户登录网页要求用户重新登录以取得访问此ASP功能网页的合法身份。例如论坛基本信息设置ASP网页需要访问者具有超级会员身份在本网页前必须插入以下一段代码:<'ChecktheSuperAdministratorRightResponseExpires=ifSession("adminboard")<>""ThenResponseredirect"userlogasperrmsg=您没有超级用户管理权限请重新登录或退出!"EndIf>流程逻辑接口用户接口本系统采用的标准的VB编写内部套用Java脚本、XML、CSS风格统一用户可通过一个窗体即可完成所有的输入工作本模块不涉及大图片、音频和视频等这样能保证输出时的快速性。用户可以直观的查看数据和填写数据尽可能的简化操作其主界面简便易于使用。外部接口系统的数据库连接主要采用访问SQLServer数据库的方式这样的连接方法简单避免了直接连接所产生的弊端所有的数据库操作都交给SQLServer数据库的访问全部由操作系统内部来完成。数据库的接口采用ADONET连接实现。使用SQLServer来存放BBS的所有数据包括用户信息文章数据用户信件用户消息系统数据等。内部接口ADONET完成应用程序和数据库的连接存储分配数据库设计,在整个BBS系统中,首先设计了三个数据库:系统的用户信息,包括用户的其一、就是User(用户信息数据库),用来存放登记在本BBSID号、姓名、EMail地址、密码等个人信息。其中用户的ID号是自动编号,并没有特殊的意义,只是用来表示唯一的一名用户,其他各列都是文本类型。在此库中并没有为用户设计权限,即所有的用户在此库中都是平等的。其二、是Board(版面数据库),用来记录版面的名称、版主的ID号、版面的ID号等信息,这里版主的ID与User库中的用户ID是相关联的,即该表的Boardmaster与User表中的UserID是一致的,通过Boardmaster必定能找到位于User库中属于该版主的一些个人信息,这样它与User库相结合,就能够为不同的用户划分了不同的两个权限,一是版主权限,二是普通用户权限。其三、是Announce(帖子数据库),其中存放所发送帖子的ID、题目、作者、连接地址、子帖号、父帖号、帖子的内容、长度、所在的层次,以及所在版面等信息,在这里通过是否有子帖、是否有父帖、父帖的个数、所在的层次等项建立一个帖子的二级树状结构。为了代码的维护以及系统实现的容易性,只采用了二级结构,即只有父帖才能有回帖,回帖下面不能再有回帖,一组帖子中只能有一个父帖,但可以有多个子帖。同时为了能够显示该帖子的影响程度,可加上一个点击数一项,表示该帖子被查看过的次数。此外,为了能够把大家都感兴趣的话题集中起来,也就是要加上一个精华区,这样必然要有一个。限制条件在整个BBS系统的设计过程中,WEB数据库访问技术是至关重要的,它完全影响着开发工具的选择、服务器端脚本的选择、数据库的选择,以及执行速度、安全性等多方面因素,而实现WEB数据库访问的方法多种多样。这里选择ADO技术来实现本BBS系统与数据库的连接,这可以把ADO与ASP结合起来,建立提供数据库信息的网页内容,在网页中执行SQL命令,对数据库进行查询、插入、更新、删除等操作,在ADO中可以用VB脚本,Java脚本语言来控制数据库的访问和查询结果的输出。测试计划实现目标:没有注册的用户能够在登录时自动注册,并给出友好提示。帖子列表支持分页显示使得可以轻松查看所有帖子。帖子拥有点击统计更方便了解热点话题。站长版面管理实现WEB在线编辑管理工作更加轻松随意。超强帖子查询功能。根据您感兴趣的内容快速获得信息可对帖子按主题和发言人姓名按版面进行查询。其中主题查询实施模糊查询方法。尚未解决的问题当初现帐号密码等通常的错误时用户可以重新输入信息即可解决或是重新启动客户端当出现无法连接数据库或者是查询中的错误通常系统管理员重新启动服务即可解决由于数据库的连接错误是全局的所以重新启动服务是最佳的操作。系统维护设计用于系统的检查与维护的检测点和专用模块在这个版本中没有出将会在后续开发中增加例如自动重新启动服务自动纠正数据的错误。以及用户数据的安装问题密码的加密问题结束语本系统采用WWW技术,采用流行的BS开发模式,现已基本实现了BBS论坛的基本功能,使注册用户之间的交流更为简单、方便、灵活,而且使用方便、扩展性好、便于维护,是传统BBS系统的一大改进。在这次bbs课程设计中小组得到了很大的提高和发展在此感谢一切给与了帮助的同学及老师同时在此说一声老师辛苦了。sky工作室成员:徐维林晓燕王超李晋科

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

文档小程序码

使用微信“扫一扫”扫码寻找文档

1

打开微信

2

扫描小程序码

3

发布寻找信息

4

等待寻找结果

我知道了
评分:

/18

BBS详细设计说明书

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利