课程设计说明书NO.1沈阳大学APS.NET校园论坛BBS1课程设计的目的设计开发基础BBS,通过BBS系统可随时取得各种最新的信息;也可以通过BBS系统来和别人讨论计算机软件、硬件、Internet、多媒体、程序设计以及人文、地理等等各种有趣的话题;还可以利用BBS系统来发布一些“问题”、“廉价转让”、“招聘人才”及“求职应聘”等启事;更可以召集亲朋好友到聊天室内高谈阔论……这个精彩的天地就在你我的身旁,只要您拥有一台可以访问互联网的计算机,就可以通过这个交流平台,来享用它的种种服务。2设计方案论证2.1系统功能需求分析2.1.1基本功能论坛的基本功能是构成论坛系统的必要功能,包括如下基本功能。1)发帖。论坛最初是为了互相讨论话题而诞生的,发表帖子就是表达自己的看法,与他人进行讨论,因此发帖是论坛首要的功能。2)浏览帖子。发表了帖子,就要供他人浏览查看,与他人分享自己的想法和经验。3)回帖。浏览了他人发帖子,想要发表自己的想法,参与讨论,就可以回复这个帖子。其实,发帖→浏览帖子→回帖三大功能周而复始的循环进行,就构成论坛,每个参与论坛的人,主要目的就是发帖,查看已经发表的帖子,针对自己感兴趣的帖子进行回帖,参与讨论。三大基本功能的相互关系如图1所示。图1论坛基本功能关系图发帖回帖浏览帖子帖子列表课程设计说明书NO.2沈阳大学2.1.2扩展功能除以上基本功能外,其他的论坛功能都是扩展功能,包括如下功能。1)注册登录。方便经常发帖的人不需要重复填写个人信息。2)分板块浏览帖子。有利于具有相同兴趣的用户相互讨论,不易跑题。3)编辑帖子。提供给用户更新自己发言的选择。4)删除帖了。如果用户发表了不符合论坛规则的帖子,则需要管理员删除这些帖子。5)转移帖子。论坛划分了板块,如果帖子内容不属于所在板块的关注话题,那么管理员可以选择将此帖移动到所属话题的板块中去。6)置顶帖子。管理员如果需要强调某些帖子的重要,有必看性,可以将这些帖子置顶。7)指定精华帖。如果管理员认为某帖子内容很好,可以作上标记,推荐给用户看,用户也可以只看精华帖。8)搜索帖子。方便用户查找自己需要的内容。9)管理板块。论坛板块需要先创建,才能被使用,管理员还可以删改板块的相关信息。10)设置参数。论坛一般有一些初始化信息,比如论坛名称,每页显示帖子的数量等参数信息。11)管理用户。管理员可以对论坛注册用户进行管理,直接添加用户,赋予相关权限,也可以修改已注册用户的权限,对于违规用户可以删除。论坛扩展功能图,如图2所示。课程设计说明书NO.3沈阳大学图2论坛扩展功能图1.2系统可行性分析可行性研究的目的,就是用最小的代价在尽可能短的时间内确定问题是否能够解决。要达到这个目的,必须分析几种主要的可能解法的利弊,从而判断原定的系统规模和目标是否现实,系统完成后所能带来的效益是否大到值得投资开发这个系统的程度。因此,可行性研究实质上是要进行一次大大压缩简化了的系统分析和设计的过程,也就是在较高层次上以较抽象的方式进行的系统分析和设计的过程。系统的可行性分析主要包括技术上的可行性、经济上的可行性、操作上的可行性、法律上的可行性和开发环境上的可行性。本系统的可行性分析如下:在技术方面:随着国内软件开发的日益发展壮大,各种中小企事业单位已具备独立开发各种类型的软件的能力,能够满足不同行业的特别的需求。从整个系统的技术构成上来看,它属于一个数据库应用类的系统。其基本操作就是对存在数据库中的数据进行添加、删除、查找、编辑等。所以就单纯的数据库应用来看,暂不存在太大的技术问题。因此从技术方面考虑开发此系统是可行的。在经济方面:现在越来越多的人都通过网络做许多事情,这个BBS系统易于操作,虽然对硬件要求比较高但是其安全性和管理性比较好,实用性比较好,相信经济效益也比较高。因此从经济方面考虑开发此系统是可行的。转移板块管理板块指定精华置顶编辑删除帖子作者用户注册登录课程设计说明书NO.4沈阳大学在操作方面:随着时代的发展,全民素质逐步提高,不论是对于电脑系统的基本操作还是对于系统的维护都有了一定的基础。同时还可以配置专业的电脑维护人员来维护电脑,不必担心电脑故障问题,因此从操作方面考虑开发此系统是可行的。在法律方面:此系统没有侵犯他人合法权益,系统所涉及的条款与国家的现行法律没有抵触,不损害国家、集体、个人的任何利益,所以在法律上是完全可行的。开发环境可行性:开发此BBS系统需要的硬件环境要求比较高,操作系统为ServerPack2的Windows2000Server或AdvancedServer,WindowsXPProfessional或WindowsServer2003系列产品之一,需要安装Internet信息服务,还要有ASP.NET环境,目前来看操作系统和各种软件都不是问题,系统硬件也可以满足,所以从开发环境上来说是可行的。1.3数据流分析数据是信息的载体,是今后系统要处理的主要对象。因此必须对系统调查中所收集的数据统计和处理以及数据的过程进行分析和整理。如果有没弄清楚的问题,应立刻返回去弄清楚它。应该在此分析过程中研究清楚并解决它。数据与数据流程分析是今后建立数据库系统和设计功能模块处理过程的基础。其具体的做法是:按照业务流程图清理出的业务流程顺序,将相应调查过程中所掌握的数据处理过程绘制成一套完整的数据流图。根据结构流图画出初步数据流图。如图3所示。图3论坛流程图论坛管理帖子管理用户管理板块管理普通用户浏览帖子发表帖子回复帖子用户登录判断权限管理员课程设计说明书NO.5沈阳大学从流程图上可以看到论坛完成的走向,其实每一个流程的节点处都有许多功能,如表1所示。表1论坛功能表论坛板块表浏览帖子发贴回帖搜索帖子编辑帖子删除帖子精华贴置顶帖子转移帖子用户注册用户登录控制用户权限修改注册信息设置论坛参数管理板块管理用户2.1系统介绍与功能模块本系统是利用ASP.NET程序设计语言来开发一个功能完善的BBS管理系统,它包括网站前台系统和后台系统。用户在前台的注册、登录,以及修改个人的注册信息组合为注册登录模块。用户浏览板块、浏览主题贴列表、查看帖子组合成浏览模块。用户发帖、回帖、编辑自己发布的帖子组合成发帖回帖模块。管理员编辑帖子、删除帖子、转移帖子、置顶帖子和指定精华帖子组合成管理帖子模块。以上4个模块是前台模块。后台模块都是与管理员相关的,设置论坛参数单独为论坛设置模块;创建、修改和删除板块为管理板块模块;添加、删除和设置权限为管理用户模块。论坛的模块体系图,如图4所示。从用户的角度分析问题,首先区分系统中有几种用户,目前的BBS系统,为了使其简介明了,简化了用户体系,论坛中有两种用户:注册用户和管理员。一般论坛中的版主权限,划分给管理员,这也是为了分清论坛的使用者和管理者。对于注册用户,在论坛的注册行为可以归纳如下。1)注册个人身份,登录论坛,登录成功后可以修改自己的注册信息。这些行为只与用户登录相关,功能独立,设计为注册登录模块。2)浏览板块表,选择某板块,浏览其下的主题帖子列表,查看帖子内容,选择需要的帖子。这些行为是用户读取论坛的板块及帖子的相关信息,设计为浏览模块。3)可以发表新帖子,也可以回复也有的帖子,同时可以编辑自己写的帖子内容。这些行为是用户参于论坛讨论,发表自己见解的行为,设计成发帖回帖模块。管理员需要负责整个论坛的正常运转,因此他需要更多的管理功能,可以归纳为如下行为。课程设计说明书NO.6沈阳大学图4论坛的模块体系图1)具备注册用户的功能。因为管理员也论坛用户,可以参与论坛中的讨论。2)管理帖子。管理员对论坛的帖子有监督的权利,好的帖子要奖励,捣乱的帖子要删除,标识精华帖子,置顶帖子,转移发错板块的帖子,这些行为都是针对帖子的操作,设计为管理帖子模块。3)管理板块。论坛中的板块,需要管理员进行创建、管理板块信息,这些行为是对板块的操作,高计为管理板块模块。4)管理用户。用户注册成功后,需要管理员赋予权限,才能使用论坛的相关功能。后台模块论坛系统前台模块注册登录模块浏览模块发帖回帖模块管理帖子模块管理板块模块管理用户模块论坛设置模块课程设计说明书NO.7沈阳大学同时,管理员可以自主添加、删除用户,这些针对用户信息的操作,设计成管理用户模块。论坛的功能模块列表,如表2所示。表2论坛的功能模块列表模块子模块注册登录模块注册登录修改个人信息浏览模块板块列表主题帖子列表查看帖子内容搜索帖子发帖回帖模块发帖回帖编辑自己的帖子管理帖子模块删除编辑置顶管理帖子模块转移指定精华管理板块创建修改删除管理用户添加删除设定权限每个模块的功能,都真实反映需求,通过对需求的认真分析,可以设计出符合要求的单独模块。对于论坛系统来说,联系各个模块的主线是使用者的权限,用户能使用论课程设计说明书NO.8沈阳大学坛的哪些功能是由用户的权限决定的,论坛的每个功能与相应的权限对应,例如,注册用户具有浏览帖子、发帖、回帖的权限,那么他就能使用论坛中的浏览、发帖、回帖功能。同一类用户使用的功能模块,是以使用者为中心连接起来的。另外,操作同类事物的功能模块,也是有相互关系的。因此,浏览模块与发帖模块、管理帖子模块关联,是由论坛系统流程决定的,如图5所示。图5帖子相关模块关系图管理板块模块与浏览模块关联,是由帖子与板块的父子关系决定的。帖子依附于板块,先有板块,后有帖子,帖子必须发表在某个板块上,如图6所示。图6管理模块与浏览模块关系图管理用户模块与注册登录模块关联,是由同一类对象——用户决定的。注册后获得论坛的身份,成为用户,所有的用户需要接受管理员的管理,用户登录证明自己在论坛中的身份,如图7所示。图7管理用户模块与注册登录模块关系图弄清楚模块间的关系,就可以设计出论坛系统的整体架构,如图8所示。发帖回帖发帖回帖管理帖子板块浏览帖子管理板块注册登录用户管理用户课程设计说明书NO.9沈阳大学图8论坛整体架构图系统因入口的不同而分为前台系统与后台系统。前台系统包括注册登录模块、浏览模块、发帖回帖模块、管理帖子模块;后台系统包括管理用户模块、管理板块模块。2.2数据库设计设计数据库系统时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。2.2.1数据库概念设计概念结构设计是整个数据库设计的关键,它是通过对用户需求进行综合、归纳与抽象。得到数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体以及它们之间的关系,为后面的结构设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的流动,如图9所示的E-R图。管理帖子浏览帖子发帖回帖管理板块选择板块用户注册登录管理用户管理员搜索课程设计说明书NO.10沈阳大学图9整体E-R图2.2.2数据库逻辑设计根据物理结构设计的三原则即尽可能减少数据冗余和重复;结构设计与操作设计相结合;数据结构要具有相对的稳定性,进行本系统中关系数据库表结构设计。表3论坛数据表序号数据表名称说明1T_Operator操作员(用户)表2T_Forum论坛回帖表3T_Topic论坛主题表4T_UserPara系统参数表5T_Mark积分头衔表6T_OperatorFunction用户功能权限关联表7T_Function功能表帖子主题标题主题内容发布时间发布人其它…回帖主题发帖回帖1N性别其它…头像年龄密码登录名用户名手机号用户M管理N论坛版面版块名管理者论坛参数简介公告其它…它…课程设计说明书NO.11沈阳大学1)用户表(T_Operator)包括功能ID、正在操作的功能名称、头衔ID、积分、登录名称、密码、头像、注册时间、真实姓名、电话号码、手机号、MSN号、QQ号、ICQ号、地区、邮编、是否管理员、是否版主、发帖数量、回帖数量、身份证号、当前动作、IP地址、是否删除、是否踢出、踢出人(版主)、年龄、性别。如图10所示图10用户信息结构图2)论坛回帖表(T_Forum)回帖ID、回帖标题、回复的主题、回帖内容、回帖人ID、回帖日期、是否删除。如图11所示课程设计说明书NO.12沈阳大学图11论坛回帖信息结构图3)论坛主题表(T_Topic)