课程设计III设计说明书网上论坛管理系统学生姓名学号班级成绩指导教师计算机科学与技术系2011年9月9日课程设计III课程设计评阅书注:指导教师成绩60%,答辩成绩40%,总成绩合成后按五级制记入。
课程设计任务书2010—2011学年第1学期专业:学号:姓名:课程设计名称:课程设计III设计题目:网上论坛管理系统完成期限:自2011 年8 月29 日至2011 年9 月9 日共 2 周设计依据、要求及主要内容:主要功能:主要从以下几方面进行数据库设计1.用户、管理员管理。
2.版块信息管理;3.帖子管理;4.广告版块管理要求:利用DB的设计工具PD或者Erwin完成1.需求分析:开发背景与意义、系统需求概况、DFD、DD2.概念结构设计:实体属性图、E—R图3.DB设计:逻辑结构设计、物理结构设计摘要在网络技术逐渐渗入社会生活各个层面的今天,以前网站上的论坛管理系统要用户登陆以后才能进行相关访问及互动。
而随着网络互联技术的进步,现在网站投票只需打开网页就可进行论坛留言。
论坛对象是很多的,各个层次都可进行论坛访问,访问和留言从到指定用户进行表格到现在通过网络直接点击相应就可进行。
网上论坛管理系统可解决游客访问及留言,致使现在几乎各个网站都有各种类型网站论坛管理系统。
网络提供给我们的不只是一个获取信息的来源,而且还是一个可以相互交流的空间,网上论坛正是一种供人们进行交流的网络空间。
论坛用户可以发表自己的观点,随着网络用户要求的不断提高及计算机科学的迅速发展,特别是数据库技术在Internet中的广泛应用,Web站点向用户提供的服务将越来越丰富,越来越人性化,人们在感受到它带来的好处之后,也越来越离不开网上论坛的好处以及优越性。
关键字:论坛;数据库;管理系统目录1课题分析 (1)2系统需求分析 (2)2.1开发背景与意义 (2)2.2需求分析 (3)2.2.1 需求定义与分析 (3)2.2.2 需求分析中的数据对象 (3)2.2.3 数据流图 (3)2.2.4数据字典 (3)2.3 实体属性图 (5)2.4 系统E-R图 (7)3 逻辑结构设计 (8)4 物理结构设计 (9)4.1建立索引 (9)4.2数据存放位置 (9)4.3系统配置 (9)4.4建立论坛系统中各实体对应的表 (9)总结 (11)1课题分析用户使用论坛的流程一般是,首先注册登录进入论坛,然后选择某个板块,就某个话题展开讨论,通过发帖功能发布新的话题,也可以通过回帖功能恢复已有的话题,管理员要管理论坛,软件需要具有的功能有创建、编辑、删除论坛的板块、管理注册的用户、管理帖子、设置论坛基本参数。
这样的流程就决定了论坛所应具有的功能。
一般而言论坛应包括以下内容:(1)用户可以进入论坛发表帖子;(2)管理员可以创建新的板块;(3)管理员对论坛进行管理,也可以对用户进行限制。
2系统需求分析2.1开发背景与意义当今世界科学技术飞速发展,尤其以通信、计算机、网络为代表的互联网技术更是日新月异。
由于计算机互联网在政治、经济、生活等各个领域的发展、运用以及网络的迅速普及和全社会对网络的依赖程度,计算机网络已经成为国家的经济基础和命脉,成为社会和经济发展强大动力,其地位越来越重要。
在对论坛系统进行开发之前,必须首先对系统进行整体规划和设计,否则就会导致开发工作量大,系统不符合要求。
更为糟糕的是,还可能会导致系统不完善或整个系统根本无法运行。
因此,系统的总体规划与设计是论坛系统必备且首要的步骤。
具体到本系统而言,就是根据论坛管理系统的目标、内容、规模、性质、现有的配置等具体情况,进行系统可行性分析,明确系统开发目标,整体规划网站的物理结构。
对系统进行可行性分析是系统规划的关键步骤,必须在可行性报告通告后,才可以进入实质性的论坛管理系统应用分析阶段。
论坛管理系统的建立是可以有效的用户间日常交流和学习的投资,其设计理念很简单,变传统的打电话或面对面的交流方式为计算机自动化进行网上论坛信息交流管理,既省时间又提高效率。
因此在系统构建时,只要我们本着丰富用户间的信息资源,为用户和管理员提供最为方便的快捷的信息阅览和管理手段,去吸引用户,那么论坛管理系统安全可行的。
2.2需求分析2.2.1 需求定义与分析通常情况下用户使用论坛,要按照一定的流程来进行操作。
用户注册登录进入论坛,就某个问题展开讨论,通过发帖功能发布新的话题,通过回帖功能回复已有的话题,通过搜索功能查找已有的话题。
管理员要管理论坛,软件需要具有的功能有创建,编辑,删除论坛的板块,管理注册的用户,管理帖子,设置论坛基本参数。
2.2.2 需求分析中的数据对象网上论坛系统中有对用户、管理员管理;板块信息管理;帖子管理;广告板块管理的设计,按照不同的实体分类,可以分为4类实体对象:板块、帖子、用户和论坛。
这四类对象可以设计为四个数据实体,如果使用数据库存储它们,就可以设计四个基本数据表的集合来存储这些实体的基本信息。
2.2.3 数据流图图2.1 论坛系统数据流图2.2.4数据字典一.数据项1.数据项:adminid含义说明:唯一标识每个管理员别名:管理员编号2.数据项:userid含义说明:唯一标识每个用户别名:用户序号3.数据项:bkid含义说明:唯一标识每个版块信息别名:版块编号4.数据项:tzid含义说明:唯一标识每个帖子信息别名:帖子编号5.数据项:ggid含义说明:唯一标识每个广告版块信息别名:广告编号二.数据结构数据结构反映了数据之间的组合关系。
一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和数据结构混合组成。
本系统中对数据结构的具体描述如下:1.数据结构:管理员含义说明:是论坛管理系统中的主体数据结构,定义了管理员的有关信息组成:用户名、密码、权限标示等。
2.数据结构:用户名含义说明:是论坛管理系统中的主体数据结构,定义了用户的有关信息组成:用户名、密码、电子邮件、头像、用户等级等。
3.数据结构:版块信息含义说明:是论坛管理系统中版块的有关信息组成:版块所属类型、版块的分类号、版主、上级版面、版块样式等。
4.数据结构:帖子信息含义说明:是论坛管理系统中帖子的有关信息组成:所属版面、父帖子ID、子帖子ID、用户、主题、内容、发帖时间等。
5.数据结构:广告版块信息含义说明:是论坛管理系统中广告的有段信息组成:所属版面、标题、内容、用户名、时间等。
三.整体系统框架图如下图2.2 论坛系统整体框架2.3 实体属性图用户信息实体图如图2.3.1所示图2.3.1 用户信息实体图管理员信息实体图如图2.3.2所示图2.3.2 管理员信息实体图板块信息实体图如图2.3.3所示图2.3.3 板块信息实体图帖子信息实体图如图2.3.4所示图2.3.4 帖子信息实体图广告板块信息实体图如图2.3.5所示图2.3.5 广告板块信息实体图2.4 系统E-R图图2.4系统E—R图3逻辑结构设计关系模型的逻辑结构是一组关系模式的集合。
E-R图则是由实体,实体的属性和实体间的联系三个要素组成。
所以将E-R图转换为关系模型实际上就是要将实体,实将每一个实体转换成一个关系(关系就是给出关系名,写出属性,并标明该关系的主键)1.管理员信息(管理员编号、用户名、密码、权限标示)在此联系中主码为管理员编号,管理员与帖子是一对多的关系。
2.用户信息(用户序号、用户名、密码、电子邮件、头像、用户等级)在此联系中主码为用户序号。
3.版块信息(版块所属类型、管理员编号、版块编号、版主、上级版面、版块样式)在此联系中主码为版块编号,版块与管理员是多对一的关系,所以管理员编号传入版块信息中作非主属性。
4.帖子信息(帖子编号、管理员编号、所属版面、用户、主题、内容、发帖时间)在此联系中主码为帖子编号,帖子信息与管理员是多对一的关系。
5.广告版块信息(广告版块编号、管理员编号、所属板面、标题、内容、用户名、时间)在此联系中主码为广告版块编号,广告信息与管理员是多对一的关系。
4 物理结构设计4.1建立索引建立索引,使得对数据库的查询、插入、修改和删除的速度加快,效率也提高。
4.2数据存放位置在开发本系统时因数据库的规模大,但因开发环境条件限制,所以数据库是存在个人的计算机磁盘上。
4.3系统配置开发以及运用本数据库应用系统时要求操作系统拥有WINDOWS 2000以上的配置,能创建数据库,保存数据,并将系统数据库作为应用系统运行操作的数据源,为方便开始时创建和调试查看数据库内容,要求系统装有SQL SERVER 2000。
4.4建立论坛系统中各实体对应的表在用户信息表中,用户名和用户密码字段是必须填写的字段,用户登录时使用。
电子邮件地址和用户名字是在需要发送联系信时使用。
如下表4.1所示。
表4.1用户信息表在板块信息表中,定义了板块的名称和说明信息,通过版主id可以通过管理认证用户是否有修改本板块信息的权利。
如下表4.2所示。
表4.2 板块信息表在帖子信息表中,定义了用户名发表的标题与内容信息,以及用户名和电子邮件地址和发表时间,如下表4.3所示表4.3 帖子信息表在管理员信息表中,定义了用户名与密码信息,如下表4.4所示表4.4 管理员信息表在广告板块信息表中,定义了用户ID和广告主题与内容信息,如图4.5所示表4.5 广告板块信息表总结通过这次课程设计,我从中学到了许多新的知识,而且通过这次课程设计,培养了我综合多门学科中的知识、迅速规划并开发出目标系统的能力。
严格按工程的方法来设计系统相当重要,不能认为基于Web的数据库管理的BBS系统很小,可以无需花太多的时间来做系统分析,甚至可以无需经过系统定义而直接进入系统编码阶段。
系统分析过于简单,系统定义过于抽象,则在系统设计阶段遇到的困难就越多,特别是其中不得不做一些功能性甚至系统结构性方面的变动,将面对许多重复性的工作。
在系统开发过程中重复工作过多,将会极大地影响系统开发的积极性,从而影响整个系统的质量。
在这一点上,体会尤深,即接近系统开发一半的时间用在系统分析与系统定义上,后来越来越乱越来越复杂,不得不重新考虑系统开发计划的合理性。
总之,系统分析越充分,系统定义越具体,那么后续的系统设计与开发工作就越有效率,且系统的质量也越有保障。
参考文献[1] 柏亚军. 数据库原理基础及应用实例集锦[M].北京:人民邮电出版社,2002[2] 周影.数据库实例教程[M].北京:电子工业出版社,2002[3] 陈海山.网络编程[M].北京:清华大学出版社,2001[4] 李存珠,李宣东. 软件工程概论[M].南京大学计算机系出版, 2001。