软件工程课程设计报告题目:个人博客学生:程鹏辉王振娅赵利利班级:计科133班日期:2015年11月13日目录一、引言.................................................................3二、可行性分析研究报告..................................................4三、软件需求规格说明书..................................................7四、数据要求说明书.....................................................10五、概要设计文档........................................................12六、详细设计文档.......................................................14七、软件测试报告.......................................................20八、软件使用手册.......................................................21九、分工表.............................................................24一、引言编写目的近年来随着信息技术的进步,Blog也快速扩张,它已经满足不了用户的需求。目前用户在网络上发表文章、张贴内容的目的有很大的差异,但是,由于沟通方式比电子邮件、讨论群组以及BBS和论坛更简单和容易,博客系统已经成为广大各界用户进行沟通的主流工具,本系统是针对博客用户的需求设计的,可以完成博客登入、发表、浏览、修改博文、上传、浏览照片、点赞、留言等主要功能。此可行性研究,实现了在最短的时间内以最小的代价确定问题是否可以解决,从而确定进一步对系统进行开发。项目背景软件名称:个人博客系统项目任务确定者:老师项目开发者:学生用户:使用于广大的学生及普通用户符号和定义Blog(个人博客系统):一个Blog就是一个网页它通常是由简短且经常更新的Post(张贴的文章)所构成;这些张贴的文章都按照年份和日期倒序排列,也就是最新的放在最上面,最旧的放在最下面。不同Blog的内容和目的有很大的不同,从对网络资源的整理与评论,到有关公司、个人的构想,从新闻、照片到日记、诗歌、散文,甚至科幻小说都应有尽有。许多Blog只是个人所见所闻,所想之事的内心独白,而其它一些Blog则可能是一群人基于某个特定主题或共同利益领域的集体创作。Blog就像是对网络传达的实时讯息。撰写这些Weblog或Blog的人就叫做Blogger或Writer,即博客。JcommonJfreechart开源的类库JfreechartJAVA平台上的一个开放的图标绘制类库C/S(Client/Server):客户机/服务器参考资料《软件工程导论》(第六版)——张海藩牟永敏清华大学出版社《软件工程—原理、方法及应用》(第三版)----史济明顾春华郑红高等教育出版社二、可行性分析研究2.2研究方法(1)调研传统系统效率和特点通过调研和对比传统系统的工作方式和特点,发现效率和实用性的差距。通过理论和现实技术发展的特点和要求,估算和提出效率、功能的提升。(2)参考目前已有的网站和案例如今博客在网络上比比皆是,可以参考和学习已有的一些优秀个人博客的特点和成功之处,来发现传统系统需要改进的地方和新的开发入口。2.3系统可行性分析2.3.1技术条件可行性分析本系统主要由PHP的框架thinkphp框架作为主要开发技术,thinkPHP框架已经流行和发展了数年,技术相对比较成熟,开发系统稳定可靠。系统采用优秀的关系型数据库管理系统MYSQL作为后台数据库,能和Windows以及当前各种系统很好的兼容搭配,便捷的php程序开发软件phpstorm,以及程序运行环境apace本地服务器。其它辅助网站设计的技术相当丰富,相应开发环境和工具也一应俱全,比如用于网页界面设计的DreamweaverCS3,还有一些图形处理软件如PhotoshopCS2等都是相当成熟和简便的开发工具。2.3.2经济可行性分析1、支出完全可以利用现有的设备,不需要增加新的硬件设备;需要经常性的软件维护费用。2、效益投资回收周期。目前的情况还不可以确定具体的效益,只能根据后期的点击率和使用效率来确定,使用方面的可行性,使用本软件的用户需要有一定的计算机基础。2.4数据流程第一层:第二层:第三层:2.5结论意见通过以上研究,这个个人博客系统是可行的。他运用一系列的技做到零成本,是一个不错的系统,当然以后可能会出现一系列的问题,到时再具体改进。三、软件需求规格说明书3.1需求分析系统需求分析是现代软件工程应用于系统开发的一项重要环节,通过需求分析可以明确系统的各项需求和功能,根据这些需求和功能可以更好地指导下一步的系统开发和设计,避免了在设计之后对需求的变更而导致的大量返工。个人博客系统访客文章评论留言后台管理员前台访客访客登陆浏览评论访客登陆查询查询、浏览、修改、删除3.1.1系统实现目标概述基于个人博客以上的特点,本系统要实现个人博客的主要基本功能有主界面,用户登录发表文章,用户登录/退出,游客发表评论,分页浏览文章和评论等。用户可以在任何时候写下自己的主张,记录下自己的点点滴滴。而游客主要的权限是阅读博客所写的文章,阅读后可以发表评论和留言。以上是个人博客的系统功能目标,当然由于个人博客的网络流行特点以及个人个性的展示,还适当要求界面比较漂亮轻快,直观便捷,操作方式简单以及人性化。3.1.2个人博客系统的主要功能(1)前台广大博客用户的登录主要包括的功能:阅读博客、发表评论、博客登录、发表留言。阅读博客给广大用户提供便捷的在线阅读自己感兴趣的文章。发表评论提供给阅读者对自己所阅读的博客发表自己的观点、作相关的评论。注册博客以满足用户本系统真正的博客用户,登录本系统从而满足自己更多的需求,包括发表留言等。(2)个人博客管理的功能:发表文章、文章管理、消息管理、个人资料管理。博客登录系统以后可以发表自己的文章、并且对自己发表的文章作最基本的管理,包括增删改查等。(3)消息管理功能:用户对自己收到的信息进行查阅、评论与删除。个人详细资料是博客用户对自己的个人资料做出完善,包括增删改查等。(4)系统管理的功能:用户管理、博客分类、公告管理、评论管理、系统维护。(4.1)用户管理功能:实现管理员对博客用户的审核等操纵。(4.2)博客分类功能:实现了系统对博客用户发表的博客做出类型的归并。(4.3)评论管理:对进入本系统的游客所发表的评论进行查看管理,而对于已经过期或不良评论进行删除操作,使博客可以做到及时的更新,以利于网站的维护。系统维护功能实现了系统的安全性等。3.1.3性能分析1、性能要求方便、快捷、有效的实现博客用户以及系统管理员的要求,进行数据的操作速度快。简洁美观。2、数据精确度(1)要按照严格的数据个时输入,否则系统不给予响应。(2)查询时要保证查全率,所有相应区域包含查询关键字的记录都能查找到3、时间特性要求(1)运行环境各个页面的链接响应时间有固定值4、灵活性该系统的设计模块属于普通模式,当要添加新的功能时,接口具有兼容性,可以随时更新。5、接口用户接口:本系统采用图形用户接口,以鼠标和键盘为用户接口,方便用户对博客系统的有效操作,更好滴在博客里进行交流。内部接口:内部页面和数据库连接,对应的页面输入框和现实框的内容在数据库得到显示。3.1.4统的输入输出输入:博客用户和系统管理员的基本信息,博客用户的博客等。输出:博客用户的各项浏览结果。3.2页面设计本网站的页面主页分为三大部分:网站公共页面、注册用户页面、管理员管理页面。(1)公共页面公共页面主要是指非注册用户可以进入的页面,包括网站首页,新闻详细页面,用户注册页面,用户登录页面等。(2)用户页面这部分页面是为已近注册的用户提供的页面。包括,用户个人博客的首页,个人博文列表和编辑添加等页面,个人音乐盒页面等。(3)管理员管理页面这部分的页面是管理员对网站进行相关操作时所进入的页面。包括管理员首页,新闻编辑页面,用户编辑页面,图片编辑页面等.四、数据要求说明书(1)主要是数据库系统,其中包括的数据库有:个人信息管理包括用户名、密码。个人信息详情表(2)博客管理对博客的删除、查询、修改、增加。博客表(3)分类管理文章的属性。博客类型表(4)留言评论管理包括回复人,内容及时间,删除。用户信息详情表五、概要设计文档5.1系统体系结构基于B/S结构的个人博客网站系统,应由终端(用户主机/浏览器)、WEB服务器、数据服务器构成。个人博客网站的核心是中间的接入服务器和应用服务器部分。个人博客网站的总体结构图如图所示:Web服务器数据服务器PC博客网站总体结构5.2系统模块划分(1)博客模块:前台的主要作用,是为用户提供一个可以浏览内容的窗口。所以,前台页面要突出网站的主题,吸引游客的二次访问。(2)本系统的前台主要功能模块如下:文章模块:主要用于显示文章列表及对文章的浏览。图片模块:主要用于显示图片列表及对图片的浏览。留言版模块:主要用于游客留言。统计查看模块:主要用于显示博客系统的一些信息。后台功能模块如下:管理员登陆模块:用于博客管理员登陆后台。文章各管理模块:可以添加、修改、和删除文章。留言版管理模块:可以查看网友的留言。5.3系统接口的概要设计(1)用户接口:主要分为前台普通用户的操作界面和后台管理员用户操作页面。概要的说明为本系统采用图形用户接口,以鼠标和键盘为用户接口,方便用户对博客系统的有效操作。打开博客主页面,用户输入正确的用户名和密码就能进入博客系统,否则将一直停留在主页面或者以游客的身份进行访问。外部接口:内部接口:包括主模块、访客模块、博主模块、系统管理员模块、留言模块、日志模块、权限验证模块软件接口:使用Access数据库的驱动程序,通过ODBC接口访问。5.4运行设计(1)运行模块组合程序启动后,进入主模块,用户的单击对话框按钮事件触发主模块调用各下层模块,进入对应的子对话框,同样由用户的输入触发这些模块调用其下层模块,完成相应操作。(2)运行控制用户在登陆首页面之后,有两种选择方式进行博客系统的访问。一是登陆自己的账号密码进行用户登陆,另一种是以游客的身份进行访问博客系统。而管理员则是直接输入管理员账号密码进入管理员界面。(3)运行时间在软件的需求分析中,对运行时间的要求为对作出的操作有较快的反应。网络硬件对运行时间又较大的影响,当网络负载过大时不利于操作的反应。所以要使用高性能的服务器。5.5系统出错处理设计(1)出错信息由于输入信息不符合规范(如输入账号密码格式不正确),由于硬件方面的错误(网络传输超时、硬件出错等)称之为软错误;对于删除等关键的操作,应该提供提示确认机制;对于数据文档要提供相应的保密措施设置。(2)补救措施针对不同类型的错误,给出相应的错误提示语句、输出错误语句、记录磁盘信息、恢复再执行。(3)系统维护设计主要是对服务器上的数据库以及相关文件进行维,数据库维护:使用数据库的维护功能机制,比如:定期备份数据库,定期检测数据库的一致性,定期查看操作日志等;5.6人工处理过程(1)采集信息:在创建博客数据库之前,必须对博客信息有一个透彻的了解。(2)表示对象:在采集信息的过程中,必须标识将由博客数据库管理的主要对象或实体。(3)建立对象实体:可以以数据库体为参考。(4)标识每个对象的信息类型。六、详细设计文档详细设计是整个系统设计中最重要的一个步骤。下面对系统的主要模块进行详细的介绍。6.1软件总体设计1.博客网站的流程图如下所示:游客用户系统管理员注册匿名访问管理中心登录否是查看最新推荐图片查看文章及相关评论文章管理图片管理朋友圈管理用户管理博客网站