博客系统软件设计说明书.docx
《博客系统软件设计说明书.docx》由会员分享,可在线阅读,更多相关《博客系统软件设计说明书.docx(16页珍藏版)》请在冰点文库上搜索。
![博客系统软件设计说明书.docx](https://file1.bingdoc.com/fileroot1/2023-6/12/e66575cf-ff15-4fc2-aad1-67ef77afa506/e66575cf-ff15-4fc2-aad1-67ef77afa5061.gif)
博客系统软件设计说明书
文档编号:
LMS-02
版本号:
V1.0
文档名称:
软件设计说明书
项目名称:
图书管理系统
编写:
学号姓名
校对:
学号姓名
审核:
学号姓名
日期:
2012年5月17日
院系:
通达学院
专业:
计算机科学与技术
1.引言
1.1编写目的
根据《需求规格说明书》,在仔细考虑讨论之后,我们又进一步对《博客管理系统》软件的功能划分、数据结构、软件总体结构进行设计,从而完成概要设计,作为软件详细设计的基础。
1.2项目背景
项目委托单位:
计算机学院软件工程系。
开发单位:
通达学院计算机科学与技术专业。
博客管理系统软件V1.0是一功能比较完善的数据管理软件,具有数据操作方便高效迅速等优点。
该软件采用功能强大的数据库软件开发工具进行开发,可在应用范围较广的WINDOWS系列等操作系统上使用。
1.3定义
Blog:
Weblog的简称。
网络日志,通常称为博客。
BMS:
BlogsMangementSystem,博客系统。
1.4参考资料
[1]RogerS.Pressman《软件工程实践者的研究方法》。
北京:
机械工业出版社,2008。
[2]郑人杰,殷人昆,陶永雷。
《实用软件工程》(第二版)。
北京:
清华大学出版社,1997。
[3]本设计《需求分析报告》。
2.任务概述
2.1目标
本文档用于描述“博客管理系统”项目的系统需求,为该项目概要设计,详细设计和测试用例的设计依据。
该需求规格说明书供概要设计人员阅读。
角色:
序号
角色
权限
1
访客
访客无需登陆就可以浏览相册、浏览博文或发表评论
2
博主
登录后就可以修改用户资料,修改密码,发布,修改,删除博文,添加,删除,修改相片,发表评论
3
博客管理员
登陆后就可以管理注册用户,管理系统用户,管理博客日志,管理留言,管理相册
2.2运行环境
硬件:
处理器:
Intel486以上系列、AMDK6以上系列
内存:
1G(非最低配置)
网络:
带宽1M(非最低配置)
软件:
操作系统:
windows(2000、XP、vista、7)、Linux
数据库:
SQLServer2008
客户端:
InternetExplore6.0及以上
主流浏览器(firefox,chrome,opera等)
2.3条件与限制
由于时间比较短,使用计算机不方便以及对于网络编程不熟悉,本博客管理系统功能不怎么太全面。
对信息的保护手段仅限于设置用户级别,以及提供数据文件的备份,比较简单,安全性能有待进一步完善。
3.总体设计
3.1处理流程
系统流程图
网民
注册
管理管理员用户
管理注册用户
博主
访客
否
登录
系统管理中心
管理中心
登录
是
登录
注册用户查看文章
否
评论管理
留言管理
系统管理员
发表评论
文章
1.主流程
1)建立与数据库的连接
2)获取系统设置
3)显示主对话框(即主界面)
4)等待用户输入,如为访客:
进入访客流程(显示访客对话框)。
如为注册用户:
进入注册用户流程(显示注册用户对话框)。
如为系统管理:
进入系统管理流程(进行授权)。
如为退出:
检查所有子窗口,关闭对话框,断开与数据库的连接。
2.访客流程
1)要求用户输入用户名,密码,验证码;
2)访客身份检验;
3)获取相关的用户信息并显示;
4)等待用户操作,如为确认,点击博主主页导航:
查看文章,发表评论,留言。
退出,则离开博主页面。
3.博主流程
1)要求用户输入用户名,密码,验证码;
2)访客身份检验;
3)获取相关的用户信息并显示;
4)等待用户操作,如确认,点击发表日志,查看日志评论及留言,回复评论及留言,修改日志等。
退出,离开主页。
4.日志流程
1)等待用户输入,如为日志类别:
日志ID,日志类别,日志类别描述,日志所属博客ID;
2)日志发表及显示:
日志ID,日志标题,日志内容,日志类别ID,日志发表时间,日志修改;
3)日志评论:
日志ID,日志评论标题,日志评论内容,回复时间,日志发表时间,评论者用户名,评论日志ID。
退出,返回主界面。
5.留言流程
等待用户输入,若发表留言:
输入留言ID,留言标题,留言内容,发表时间,回复时间,留言者名字,博客ID。
退出,离开博客界面。
6.系统管理流程
1)要求用户输入账号及口令
2)用户操作权限检验
3)根据操作权限级别显示系统管理对话框
4)等待用户输入,对用户发表留言管理,评论管理等。
7.数据统计流程
1)等待用户输入,如为开始统计:
读入统计条件,生成统计结果并显示。
如为返回:
结束统计流程。
3.2总体结构和模块外部设计
3.2.1总体结构
1)主模块调用:
访客模块,博主用户模块,日志模块,留言模块,系统管理模块。
2)访客模块调用:
访客身份检验模块,访问记录模块,数据库操作模块
3)博主用户模块调用:
博主用户身份检查模块,更新日志记录模块,更新留言记录模块,数据库操作模块。
4)日志模块调用:
数据库查询模块,数据显示模块。
5)留言模块调用:
数据库查询模块,数据显示模块。
6)系统管理模块调用:
系统管理员身份验证模块。
7)系统管理员身份验证模块:
数据库查询模块。
8)访问记录模块:
数据显示模块。
9)更新日志记录模块:
数据显示模块。
10)更新留言记录模块:
数据显示模块。
11)访客身份检验模块调用:
数据库查询模块。
12)博主用户检验模块调用:
数据库查询模块。
13)访问记录模块调用:
数据库查询模块。
3.2.2模块外部系统性描述
博客信息管理系统分为面向网络用户的前台及面向个人博客维护管理的后台,依据博客网站中所要实现的基本功能的设定,将所有功能分解为如下四个主要的功能模块来加以实现。
用户以合法的用户名及密码登录,系统即可按该登录用户的权限分配操作模块。
1.博客注册登录管理模块
博客注册登录管理模块用于建立博客网站固定的客户群体,通过记录对应的博客档案,实现对博客信息的后台维护及管理,同时也便于通过博客档案库将网站最新动态及相关企业的信息方便地传达给每一位潜在的客户。
该功能模块实现了以下几个子功能。
(1)新博客在线注册。
(2)博客登录管理。
(3)跳转到博客主页。
只有进行登录并通过身份验证的用户,才可以在个人博客页面发表日志,并借助个人设置实现对个人博客相关信息的管理维护。
对于没有经过身份验证的网络用户不允许在博客页面中发表日志,更不允许对博客页面信息进行管理维护。
该模块实现新博客的注册及登录验证功能。
其中,注册新博客时会对用户输入的注册信息进行有效性验证,包括基本数据格式的有效性以及逻辑有效性,例如,用户名被占用时将及时给出提示。
注册成功的博客登录时,会随时根据博客输入的登录信息进行提示,如用户名错误或者密码错误。
2.博客及文章检索查询模块
博客及文章检索查询模块为网络用户提供便捷的搜索,以及日志阅读浏览等功能,同时对日志的评论信息、博客推荐也能够及时反馈给网络用户。
该功能模块实现了以下几个子功能。
(1)热门博客页面推荐。
(2)最新博客日志推荐。
(3)日志信息关键字搜索。
该模块能够在网页中随时提供在线的最新日志信息。
该信息需要定期更新,网络用户可以随时获得最新日志以及最热门的博客推荐。
在客户选择了某个博客或者某个感兴趣的日志后,可以方便地跳转到对应博客页面进行日志的阅读,并和博客进行交流互动。
为了使网络用户尽快定位到所需的博客资料及日志信息,本模块提供了搜索功能,用户可以对所关注的日志信息按照标题进行关键字搜索,以避免用户浏览多个页面来寻找所需的日志信息。
3.博客页面显示模块
当网络用户进入某个人博客主页后,在该页面中将提供博客日志列表的显示,同时为了方便用户浏览,在该模块中提供根据分类名进行日志列表的显示,也提供日志评论的浏览,此外还允许用户在博客页面中发表评论及留言。
该功能模块实现了如下几个子功能。
(1)用户可以分页查看对应的日志内容及评论信息。
(2)用户可以针对日志内容发表评论。
(3)用户可以针对博客进行留言。
(4)用户可以分类查看日志内容。
在该模块中还提供了博客页面统计信息,日志、评论及留言信息分页显示等方便用户的显示效果。
4.博客个人维护管理模块
博客个人维护管理模块用于实现用户对博客个人主页及相关信息的动态管理。
该功能模块实现了如下几个子功能:
(1)日志及日志分类管理。
(2)评论及留言管理。
(3)个人基本信息维护管理。
借助该模块,用户可以随时对个人博客主页中的内容进行增加或修改,包括日志分类信息的更新、评论及留言管理等功能,也允许用户对博客的个人信息进行维护及其管理。
3.3功能分配
1.浏览功能:
日志模块,留言模块
2.更新功能:
更新日志记录模块,更新留言记录模块,数据显示模块
3.管理功能:
系统管理模块,数据库查询模块
4.权限验证功能:
博主用户身份检查模块,访客身份检验模块,系统管理员身份验证模块
4.接口设计
4.1用户接口
使用基于对话框的GUI,用户通过鼠标的点击和键盘的输入完成操作,编辑框用于用户的输入。
4.2外部接口
1.用户界面
使用Windows的标准对话框的形式,完全用对话框实现。
应用工具:
VisualC++。
1)主对话框:
三个文本框-用户名、密码、验证码;
两个按钮-确认、退出。
2)博主用户对话框:
用户ID编辑框:
用于输入博客ID;
1个链接按钮:
用于写日志;
日志显示区:
用于显示博主发布日志;
留言板显示区:
用于显示所有用户留言信息;
两个文本区:
日志与留言填写;
留言提交按钮:
提交留言请求;
退出按钮。
3)访客对话框:
用户ID编辑框:
用于输入博客ID;
查询方式复选框:
用于选择查询所需满足的条件的文章;
两个文本区:
日志与留言填写;
留言提交按钮:
提交留言请求;
提交按钮:
用于提交还书请求;
返回按钮:
用于退出对话框。
4)系统管理员对话框:
对文章评论与留言验证的两个确认按钮,两个删除按钮;
发送提示信息到受验证用户文本框;
确认,取消按钮;
退出查询按钮:
用于退出对话框。
5)更改口令对话框:
旧口令输入框:
输入旧口令;
新口令输入框:
输入新口令;
新口令确认输入框:
再输入一次新口令;
确认按钮:
确认输入的新口令,并提交。
2.软件接口
使用Access数据库的驱动程序,通过ODBC接口访问。
4.3内部接口
1.主模块:
输入:
操作系统传递至的各种消息以及用户的输入数据
输出:
用户界面显示
上层模块:
无
下层模块:
访客模块、博客用户模块、系统管理模块、日志模块、留言模块、更新日志记录模块、更新留言记录模块、数据显示模块、数据库查询模块、博主用户身份检查模块,访客身份检验模块,系统管理员身份验证模块。
2.访客模块:
输入:
用户名、密码、验证
输出:
访客界面,可进入其他博主页面
上层模块:
主模块
下层模块:
日志模块、留言模块、数据显示模块、数据库查询模块,访客身份检验模块
3.博主模块:
输入:
用户名、密码、验证
输出:
博客界面,文章发表,留言查看,可进入其他博主页面
上层模块:
主模块
下层模块:
日志模块、留言模块、数据显示模块、数据库查询模块、更新日志记录模块、更新留言记录模块、博主身份检验模块
4.系统管理员模块:
输入:
用户名、密码、验证
输出:
进入管理员界面,可进入其他博主页面,对留言及评论审核
上层模块:
主模块
下层模块:
数据显示模块、系统管理员身份验证模块
5.日志模块:
输入:
查询,发表,更新
输出:
进入博主界面,对博主文章评论
上层模块:
主模块,访客模块,博主模块
下层模块:
更新日志记录模块、数据显示模块、数据库查询模块
6.留言模块:
输入:
查询,发表
输出:
进入博主留言员界面,对博主留言
上层模块:
主模块,访客模块,博主模块
下层模块:
更新留言记录模块、数据显示模块、数据库查询模块
4.4功能分配
5.浏览功能:
日志模块,留言模块
6.更新功能:
更新日志记录模块,更新留言记录模块,数据显示模块
7.管理功能:
系统管理模块,数据库查询模块
8.权限验证功能:
博主用户身份检查模块,访客身份检验模块,系统管理员身份验证模块
5.数据结构设计
5.1逻辑结构设计
博客信息管理系统涉及的实体包括:
(1)用户:
用户ID、用户名称、用户密码、博客主题、说明、E-mail、注册日期、发表日志数。
(2)类别:
类别编号、类别名、类别描述、用户ID。
(3)日志:
日志编号、日志标题、日志内容、类别编号、发表日期、最后修改日期、用户ID、浏览次数、评论数。
(4)评论:
评论编号、评论标题、评论内容、发表日期、最后回复日期、评论人、日志编号。
(5)留言:
留言编号、留言标题、留言内容、发表日期、最后回复日期、留言人、用户ID。
综合本系统各子模块要实现的功能,通过前面对博客信息系统数据的分析可以得到:
用户表、类别表、日志表、日志评论表、留言表的数据库概念模型(E-R图)。
用户E-R图如图5.1所示。
图5.1用户E-R图
日志类别E-R图如图5.2所示。
图5.2日志类别E-R图
日志E-R图如图5.3所示。
图5.3日志E-R图
日志评论E-R图如图5.4所示。
图5.4日志评论E-R图
留言E-R图如图5.5所示。
图5.5留言E-R图
5.2物理结构设计
数据的物理结构由使用的数据库决定。
5.3数据结构与程序的关系
主模块:
连接数据库;
博主用户模块:
对博客的创建,调用日志模块、留言模块对博客数据库更新
日志模块:
日志管理显示模块列出了日志ID、日志标题以及相应的操作:
编辑日志和删除日志。
根据选择的分类显示当前分类下的日志列表。
当然,对日志进行操作的前提条件是当前登录用户具备相应的管理权限。
留言模块:
数据库更新留言。
系统操作模块:
对日志模块,留言模块,调用数据库操作模块对各个库进行相应操作,对数据进行备份,在授权操作中检验用户身份。
6.运行设计
6.1运行模块的组合
程序启动后,进入主模块,用户的单击对话框按钮事件触发主模块调用各下层模块,进入对应的子对话框,同样由用户的输入触发这些模块调用其下层模块,完成相应操作。
6.2运行控制
本软件控制流程:
主程序运行,等待用户的输入,根据用户的输入调用各子模块。
6.3出错处理及安全保密设计
1.提供丰富的出错提示信息;
2.提供一定的保密手段。
6.4维护设计