论文部分内容阅读
摘 要: 主要讲述开发一个简单的博客系统如何进行系统的概要设计,数据库采用的是SQL Server 2005。该系统包括博客的一些基本功能,并对这些基本功能进行具体分析。
关键词: 博客;设计;数据库
中图分类号:TP315 文献标识码:A 文章编号:1671-7597(2011)0820047-02
博客作为Web2.0的典型代表,已风靡网络世界。什么是博客?简单一点的博客记载了日常发生的事情和自己的兴趣爱好,把自己的思想和知识与他人分享、交流,同时又通过个人博客结识了更多志趣相投的朋友;而越来越多承载专业知识的博客的出现,让人们看到了博客所蕴涵的巨大的信息价值,目前博客已成为越来越多的人获取信息的主要途径。
一些以运营博客而影响广泛的商业网站也应运而生,在国内比较知名的有新浪、网易等。
新浪博客:http://blog.sina.com.cn/。这是一个综合类博客,包括政治、军事、文化、技术、娱乐等多个板块,注册人数规模也很庞大,且有很多行业名人,具有很大的影响力。
博客园:http://www.cnblogs.com/。这是一个IT圈子的博客,在这里可以了解和学习到各种IT技术,与众多IT高手交流探讨。
网易博客:http://blog.168.com/。这是门户网站网易的一个子站点,与新浪博客功能类似,在风格上更多的是追求个性化。
百度博客:http://hi.baidu.com/。国内搜索引擎巨头百度也搭建了自己的博客网站,风格简约,但依靠其强大的搜索引擎还是吸引了规模庞大的用户群。
QQ空间:http://qzone.qq.com/。这是与QQ用户绑定的空间,个性特点突出,属于完全的个人化博客,年轻用户占绝大多数。
除了一些专门的博客网站外,大多数大型网站都会有自己的博客子站点,毕竟谁都想通过这种方式来留住访客。本文主要介绍开发一个简单的博客系统如何进行概要设计。
1 功能分析
博客系统的使用角色一般有浏览者和博主两种:博主是博客信息的发布者,浏览者是对博客内容进行浏览,也可以通过发表评论来与博主交流。下面从使用角色的角度来分析本系统。
1.1 浏览者
浏览者一般能使用的功能如下图所示用例图。
1.1.1 注册
浏览者可以通过博客网站注册功能开通自己的博客,成为一名博主。注册信息包括注册人的ID、密码和有效邮箱等。
1.1.2 浏览文章
博客最吸引人的当属博主们充满创意的文章,包括技术类、情感类、评论类,等等。浏览者可以透过文章了解到博主的情感和思想,有时候会引起共鸣进而成为朋友。
1.1.3 发表评论
浏览者可以对某篇文章发表评论,来作为与博主沟通的途径。同时,浏览者与浏览者之间也可以在此展开讨论。
1.2 博主
博主除了拥有浏览者全部功能外,还可以维护自己博客,包括外观修饰、发表文章、管理类别等,如下博主用例图。
1.2.1 管理文章
博主可以通过博客发表文章、编辑文章、删除文章等。文章可以是自己原创,也可以转帖引用,在本系统中并不作区分,都需要博主输入文章内容,只是在文章分类的时候标明是原创还是引用。
1.2.2 管理评论
博主通过管理评论功能对浏览者的评论进行回复或者删除。同时,博主可以利用评论区与浏览者进行在线讨论。
1.2.3 管理类别
为了便于组织文章,一般博客都会给文章分类,如文学、技术、理论、应用等,也可以自定文章分类,文章的分类会显示在博客首页的导航区。
1)管理公告
每一个博客都有自己的公告区,博主可以对博客公告内容进行修改。
2)友情链接
提供进入朋友博客的链接,以达到信息共享的目的。
3)更换皮肤
博客是一个很好的展示个性的舞台,喜欢装饰自己博客的博主通过“换肤”功能来装扮博客页面,更新视觉体验,向浏览者进行个性的展示,同时对自己来说也是一种愉悦的享受。
1.3 管理员
管理员是博客网站的管理者,通常对网站进行综合管理,具体来说可以有下面几个功能。
1.3.1 数据备份恢复
任何一个以信息为基础的系统都必须关注数据安全性问题,谁都无法预知系统是否会因为硬件故障或人为破坏等原因而崩溃。目前,避免数据损失、降低风险的简单有效的手段就是备份。博客系统是典型的多用户信息管理系统,所以数据的备份与恢复功能是必不可少的。
1.3.2 博客统计
作为博客系统的管理员,对博客动态信息的实时监控与统计,无疑会对作出正确的运营决策起到关键的作用。本系统也提供活跃博主统计、点击率最高的博客等统计功能。
2 系统设计
在进行系统开发之前,首先根据系统需求作系统设计,主要包括系统架构设计和数据库设计。
2.1 架构设计
从网站解决方案上,本博客系统采用分层设计的方式,方便维护和扩展,同时也能提高开发效率。本解决方案的系统模块设计如下图。
Web模块表示系统的界面部分,项目类型为ASP.NET网站,包括html页面、aspx页面、图片、样式、JavaScript脚本等网站资源。
Business模块是网站功能模块,项目类型为C#类库,用于处理用户请求与网站响应。
Util模块是个常用工具类库包,项目类型为C#类库,包含了字符串类、安全类等。
DataBase模块是访问数据库的通用类,项目类型为C#类库,本实例中为基于ADO.NET的SQL Server访问类,包括执行SQL 语句、执行存储过程、事务控制等功能。
Data模块是本系统用到的各种数据结构、数据实体等,项目类型为C#类库,这个模块有时也称为Entity模块。
.NET Framework即微软.NET平台,这是ASP.NET网站运行的大前提。该平台是系统安装获得,并且无法修改。
2.2 数据库设计
根据本博客系统设计的功能进行数据库设计,数据库服务器采用SQL Server 2005。由于系统的良好分层设计,也可以将系统扩展到其他数据库系统上去。下图描述了本网站所用数据库中数据库之间的关系。
下图为圈子(一个多名博主联合在一起的小组)功能所用到的表之间的关系。
3 小结
以上是博客系统的概要设计,虽然并不完善,但是有一定得指导作用。
参考文献:
[1]董健全,数据库实用教程,清华大学出版社,2007.
[2]曾长军,SQL Server数据库原理及应用,人民邮电出版社,2007.
[3]李春葆,数据库原理与应用,清华大学出版社,2007.
关键词: 博客;设计;数据库
中图分类号:TP315 文献标识码:A 文章编号:1671-7597(2011)0820047-02
博客作为Web2.0的典型代表,已风靡网络世界。什么是博客?简单一点的博客记载了日常发生的事情和自己的兴趣爱好,把自己的思想和知识与他人分享、交流,同时又通过个人博客结识了更多志趣相投的朋友;而越来越多承载专业知识的博客的出现,让人们看到了博客所蕴涵的巨大的信息价值,目前博客已成为越来越多的人获取信息的主要途径。
一些以运营博客而影响广泛的商业网站也应运而生,在国内比较知名的有新浪、网易等。
新浪博客:http://blog.sina.com.cn/。这是一个综合类博客,包括政治、军事、文化、技术、娱乐等多个板块,注册人数规模也很庞大,且有很多行业名人,具有很大的影响力。
博客园:http://www.cnblogs.com/。这是一个IT圈子的博客,在这里可以了解和学习到各种IT技术,与众多IT高手交流探讨。
网易博客:http://blog.168.com/。这是门户网站网易的一个子站点,与新浪博客功能类似,在风格上更多的是追求个性化。
百度博客:http://hi.baidu.com/。国内搜索引擎巨头百度也搭建了自己的博客网站,风格简约,但依靠其强大的搜索引擎还是吸引了规模庞大的用户群。
QQ空间:http://qzone.qq.com/。这是与QQ用户绑定的空间,个性特点突出,属于完全的个人化博客,年轻用户占绝大多数。
除了一些专门的博客网站外,大多数大型网站都会有自己的博客子站点,毕竟谁都想通过这种方式来留住访客。本文主要介绍开发一个简单的博客系统如何进行概要设计。
1 功能分析
博客系统的使用角色一般有浏览者和博主两种:博主是博客信息的发布者,浏览者是对博客内容进行浏览,也可以通过发表评论来与博主交流。下面从使用角色的角度来分析本系统。
1.1 浏览者
浏览者一般能使用的功能如下图所示用例图。
1.1.1 注册
浏览者可以通过博客网站注册功能开通自己的博客,成为一名博主。注册信息包括注册人的ID、密码和有效邮箱等。
1.1.2 浏览文章
博客最吸引人的当属博主们充满创意的文章,包括技术类、情感类、评论类,等等。浏览者可以透过文章了解到博主的情感和思想,有时候会引起共鸣进而成为朋友。
1.1.3 发表评论
浏览者可以对某篇文章发表评论,来作为与博主沟通的途径。同时,浏览者与浏览者之间也可以在此展开讨论。
1.2 博主
博主除了拥有浏览者全部功能外,还可以维护自己博客,包括外观修饰、发表文章、管理类别等,如下博主用例图。
1.2.1 管理文章
博主可以通过博客发表文章、编辑文章、删除文章等。文章可以是自己原创,也可以转帖引用,在本系统中并不作区分,都需要博主输入文章内容,只是在文章分类的时候标明是原创还是引用。
1.2.2 管理评论
博主通过管理评论功能对浏览者的评论进行回复或者删除。同时,博主可以利用评论区与浏览者进行在线讨论。
1.2.3 管理类别
为了便于组织文章,一般博客都会给文章分类,如文学、技术、理论、应用等,也可以自定文章分类,文章的分类会显示在博客首页的导航区。
1)管理公告
每一个博客都有自己的公告区,博主可以对博客公告内容进行修改。
2)友情链接
提供进入朋友博客的链接,以达到信息共享的目的。
3)更换皮肤
博客是一个很好的展示个性的舞台,喜欢装饰自己博客的博主通过“换肤”功能来装扮博客页面,更新视觉体验,向浏览者进行个性的展示,同时对自己来说也是一种愉悦的享受。
1.3 管理员
管理员是博客网站的管理者,通常对网站进行综合管理,具体来说可以有下面几个功能。
1.3.1 数据备份恢复
任何一个以信息为基础的系统都必须关注数据安全性问题,谁都无法预知系统是否会因为硬件故障或人为破坏等原因而崩溃。目前,避免数据损失、降低风险的简单有效的手段就是备份。博客系统是典型的多用户信息管理系统,所以数据的备份与恢复功能是必不可少的。
1.3.2 博客统计
作为博客系统的管理员,对博客动态信息的实时监控与统计,无疑会对作出正确的运营决策起到关键的作用。本系统也提供活跃博主统计、点击率最高的博客等统计功能。
2 系统设计
在进行系统开发之前,首先根据系统需求作系统设计,主要包括系统架构设计和数据库设计。
2.1 架构设计
从网站解决方案上,本博客系统采用分层设计的方式,方便维护和扩展,同时也能提高开发效率。本解决方案的系统模块设计如下图。
Web模块表示系统的界面部分,项目类型为ASP.NET网站,包括html页面、aspx页面、图片、样式、JavaScript脚本等网站资源。
Business模块是网站功能模块,项目类型为C#类库,用于处理用户请求与网站响应。
Util模块是个常用工具类库包,项目类型为C#类库,包含了字符串类、安全类等。
DataBase模块是访问数据库的通用类,项目类型为C#类库,本实例中为基于ADO.NET的SQL Server访问类,包括执行SQL 语句、执行存储过程、事务控制等功能。
Data模块是本系统用到的各种数据结构、数据实体等,项目类型为C#类库,这个模块有时也称为Entity模块。
.NET Framework即微软.NET平台,这是ASP.NET网站运行的大前提。该平台是系统安装获得,并且无法修改。
2.2 数据库设计
根据本博客系统设计的功能进行数据库设计,数据库服务器采用SQL Server 2005。由于系统的良好分层设计,也可以将系统扩展到其他数据库系统上去。下图描述了本网站所用数据库中数据库之间的关系。
下图为圈子(一个多名博主联合在一起的小组)功能所用到的表之间的关系。
3 小结
以上是博客系统的概要设计,虽然并不完善,但是有一定得指导作用。
参考文献:
[1]董健全,数据库实用教程,清华大学出版社,2007.
[2]曾长军,SQL Server数据库原理及应用,人民邮电出版社,2007.
[3]李春葆,数据库原理与应用,清华大学出版社,2007.