第二章 可行性与需求分析
这个网站需要满足快速响应用户的操作,响应时间应该很短的时间内被控制,数据将被实时更新,该网站只是一个小站,不占用太多的资源,并当然,如果有更大的内存和处理服务器和硬件支持的能力,肯定提高速度。[6]
当然博客的性能需求还有以下几个方面
多样性:博客网站是以用户作为设计的重要部分,随着网络的快速发展,不仅改变了人们的生活方式,还大大降低了信息的咨询成本,在现在用户可以有各种各样的选择,博客网站除了要把成本降下来以为,还要在多样性上下功夫,如加多点贴心的功能,或者多彩的界面等,这样才能得到用户的认可,还能留住用户。
易维护:博客系统要简单且易维护,管理起来方便才能让人更好的使用,随着博客信息量的增大,功能的增多,易维护是开发者要考虑的一个部分,要保证在后期加了很多功能以后,还是和以前一样易维护。
安全性:博客是给人分享的平台,系统的安全性是我们要考虑的问题,信心的安全,设备运行的安全,管理的安全,要保护好用户的个人信息安全,给用户一个踏实的环境,要建立起完善的安全体系。[7]
可扩展:网站发现飞速,博客对不同的用户,不同的行业,都有着不同的需求,系统在设计的时候要充分考虑到不同用户的需求,降低将来功能扩展时的难度。
2.2.2系统综合需求
前台要实现的功能:
(1) 简约的界面,色调柔和,以蓝色为主。 (2) 浏览博客的人可以自由发表评论。
(3) 搜索功能,能够对站内所有的文章进行关键字搜索
(4) 页面功能,页面是独立于文章的特定板块,有独立的评论空间,相对于其他文章而言是独立的。
后台管理功能:能对网站的大部分内容进行管理,方面用户直接管理自己的系统。 运行要求:windows平台下Apache http服务器+PHP解析引擎+MySQL数据库。 可靠性:系统运行数据要一致,如果遇到系统不能正常运行要提供快捷恢复方式。 可用性:系统要方面好用,能给用户提供所需要的东西,且可以为网页以后可以做不同的延伸,如博客的朋友圈或者好友分享功能等。
出错处理:如果用户输入的数据不是正确的,要尽可能在程序中弹出输入错误的提示,要对于系统的错误信息注意对其进行隐藏,并转给对应的处理页面进行处理。
5
华南理工大学广州学院本科毕业设计(论文)说明书
图2-1 博客信息管理系统
2.2.3 系统需求管理规划表
根据以上对系统的需求分析,我们可以得到一个更加简单的的系统需求管理规划表,本表写出了系统的各项主要功能,并且对其分类,配有间断描述,最重要的方面给出了各个功能需求的优先级,优先级的高低表示了功能实现的迫切程度和重要的程度。
表2-2 优先级需求分析表
需求名称 用户注册 登录、退出 文章添加 文章删除 描述 用户可以注册自己的各项信息 用户可以登录或者退出博客系统 若用户已经注册,用户可以发表文章 管理员可以删除全部文章,如果是普通用户只能删除自己写的文章 浏览文章 评论文章 留言 查询 博客的读者可以浏览博主的文章 博客的读者可以对博主的文章进行评论 读者可以在留言板中给博主留言 用户可以通过查询功能快速查询到感兴趣的文章 高 中 中 中 优先级 高 高 高 高
6
第二章 可行性与需求分析
2.3数据库需求分析
2.3.1 MySQL数据库简介
MySQL数据库由瑞典MySql公司开发和维护的一个精巧的SQL
(Structured Query Language,结构化查询语言)关系型数据库管理系统(DBMS)。MySQL数据早在90年代中期就开始出现,经过近10年的发展,MYSQL已经发展成为一个成熟的数据库,它不仅非常小巧灵活并且性能非常强大,提供多个接口,方面用户使用,得到了许多开发人员的认可。
MySQL数据库提供完善的SQL-92标准的结构化查询语言,如select、delete、insert、update语句。通过MySQL在操作系统上建立的ODBC可以轻松将这些SQL语句翻译成为相应的MySQL数据库管理系统指令并对数据库进行管理。作为关系型数据,
[8]
MySQL完全支持对于各种数据库对象的管理和便捷操作,这里包括表(Table)、视
图(View)、存储过程(Stored Procedure)和触发器(Trigger)等。MySQL数据库提供完全可视化的窗口,可以更直接的对数据进行管理。
当然,MySQL数据库也完全支持ADO(ActiveX Data Objects)数据库应用程序的数据库访问技术。ADO它被设计用来同新的数据库访问层OLE DB Provider一起协同工作,以提供通用数据访问(Universal Data MySQL)。OLE DB是一个底层的数据库访问接口,用它可以访问各种数据源,包括传统的关系数据库。[8]ADO封装了OLE DB程序中使用的大量COM接口,所以是一种高层访问技术。所以MySQL非常适合PHP技术开发动态网站。
2.3.2 数据库表的设计
根据该需求分析和第三部分的概要设计,可以设计要使用的一个数据库表对应的系统,首先判断数据库表的基本设计是一个表,用于存储关于一个实体或对象的信息,那么该数据库的分析和设计相对简单。[9]对于不同的对象或实体,取决于需要和该系统的未来扩展,可以适当地细分。的信息和动态信息的另一个扩展分别放置在不同的表。
当然,上表中的主键的任何信息将是重要的,以设置一个唯一的标识符,主密钥是不实际使用的术语,仅用于唯一地标识一个数据项,通常用数字自动编号。[10]通过需求分析和概要设计,在MySql数据库中建立名为db_blog的数据库,把所有的信息存在数据库里里面,在里面建立如下的表,分别为:用户表(tb_user)、文章内容表(tb_article)、文章评论表(tb_filecomment)、留言板(tb_book)、公告表(tb_public)五个表。
用户表
系统主要是为满足网络用户的需求使用博客,因为网络本身的特点,以及一个网络工具很多,它被设置比较高的用户信息,这里主要是用户的ID号,这是用来唯一识别用户的标识是用户表的主键。
7
华南理工大学广州学院本科毕业设计(论文)说明书
表2-3 用户表
序号 1 2 3 4 5 6 7 8 9 10 11 字段名 id name truename pwd birthday email city sex qq introduce fig 类型 Int Varchar Varchar Varchar Date Varchar Varchar Varchar Varchar Varchar Int 长度 50 50 50 50 50 50 50 50 10 索引 Key 备注 自动编号 用户帐号 真实姓名 用户密码 用户生日 E-mail 所在城市 用户性别 用户QQ 自我介绍 管理员 文章内容表 本表主要用来存放文章的各种信息,这也是博客系统中非常重要的一个表。其中文章ID编号为主键,唯一标识一篇文章。其它信息详见表2-4所示。 表2-4 文章信息表 序号 1 2 3 4 5 字段名 id Title content author datetime 类型 Int Varchar Mediumtext Varchar Datetime 长度 20 200 50 50 索引 Key 备注 自动编号 文章标题 文章内容 文章作者 上传时间 文章评论表 文章评论表主要存储对一篇文章的评论的各种信息,文章的评论信息相对于文章的信息而言要简单一些,评论列表存储用户对文章的评论,包括注册用户和游客都可以发表评论。主要包括唯一标识评论的id编号,是主键。表的结构如表2-5所示。 表2-5 文章评论表
序号 1 2 3 4 5 字段名 id Fileid username content datetime 类型 Int Varchar Mediumtext Varchar Datetime 长度 20 200 50 50 索引 Key 备注 自动编号 文章id 评论用户 评论内容 评论时间 8
第二章 可行性与需求分析
公告表
表2-6 公告表
序号 1 2 3 4 字段名 id Title content pubtime 类型 Int Varchar Varchar date 长度 20 200 50 50 索引 Key 备注 自动编号 公告主题 公告内容 公告时间 留言表用来保存留言板上的信息
表2-7 留言表
序号 1 2 3 4 字段名 id subject content date 类型 Int Varchar Varchar date 长度 20 200 50 50 索引 Key 备注 自动编号 留言主题 留言内容 留言时间 数据库ER关系图
数据库中的表有用户表、文章信息表、文章评论表、。本系统数据库的表的ER图如图11所示。
图2-2 用户实体图
9