软件技术专业毕业设计.docx
- 文档编号:9671625
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:18
- 大小:24.55KB
软件技术专业毕业设计.docx
《软件技术专业毕业设计.docx》由会员分享,可在线阅读,更多相关《软件技术专业毕业设计.docx(18页珍藏版)》请在冰豆网上搜索。
软件技术专业毕业设计
软件技术专业毕业设计
公文软件技术专业毕业设计
毕业选题:
莘莘博客系统-后台界面设计与测试
学生姓名:
蒋XX
院系名称:
软件工程系
所学专业:
软件技术
所在班级:
.net1203班
学生学号:
2012XXXX
提交日期:
2015年1月12日
摘要
莘莘博客系统,是一个以文章说说形式来发布自己的所见,所感,所闻,所得的互联网信息发布系统,它方便了我们对学习,工作,生活的交流。
本文以博客文章的发布管理为基础,在根据其实际需求,详细的阐述了本系统的设计思路及开发过程。
本系统的主要功能可分为三大块:
发布博客、评论博客、博客分类。
除此三个主要功能外,本系统还根据互联网的发展,以及人们的需求添加了:
首页风格更改、首页模块可自由添加或删除、以及添加了时下比较流行的在线会员聊天的个性化功能。
在开发的过程中,采用了mVc的分层思想,设计了专门的缓存策略,并且运用了Ajax,jAVAScript的前端开发技术,大大提高了用户的体验效果。
本系统属于B/S结构系统,采用PHP为开发语言,mySQl为数据库,IIS为服务器,再结合开源模板框架onethink进行开发,由此整个系统无论是从用户体验,还是系统安全,运行速度都是很好的。
关键词:
博客;mysql;onethink;
前言-4-
第一章系统技术方案-5-
1.2开发工具-5-
1.2.1关于PHP-5-
1.2.2关于mySql-5-
1.2.3关于onethink-6-
1.2.4关于javaScript-6-
1.2.5关于Ajax-6-
1.2.6关于mVc-6-
第二章系统可行性分析-8-
2.1开发背景-8-
2.2市场分析-8-
2.3技术分析-8-
第三章需求分析-9-
3.1性能要求-9-
3.2运行环境要求-9-
3.2.1硬件要求-9-
3.2.2软件要求-9-
3.3.1系统概述-9-
3.3.2系统基本概述-9-
3.3.3系统分析-10-
3.3.4功能详细说明-10-
第四章系统后台登录界面-13-
4.1登录界面-13-
4.2修改密码-15-
第五章系统测试-17-
5.1链接测试-17-
5.2表单测试-17-
5.3浏览器兼容测试-18-
参考文献-19-
致谢-20-
前言
随着互联网技术的高速发展和日益的普及,互联网用户迅速增加,用户对互联网的寄托也发生了翻天覆地的变化,用户不甘于只单单的被动的接受互联网提供的内容,更希望能够加入到内容制造的大家庭中,这时传统的Web应用已经显得力不从心,而Web2.0的出现,极大的改变了这一局面。
所谓Web2.0其核心就是用户不只是内容的被动浏览者,同时也是内容的制造者。
正是因为整个互联网产品设计理念的重大变化,具有代表性的Web2.0时代的互联网产品也就相继出现,如:
论坛,博客、威客,社区、RSS和SNS等。
那么什么是博客呢?
它与个人网站、社区、网上刊物、微型门户、新闻网页等究竟有什么区别?
博客也称为网络日志,是英文blog的谐音,由很多经常更新的帖子(也叫日志或者个人文章)顺序倒序排列,最新的帖子在最上面,这些帖子的内容不一定要长篇大论,具体内容格式也没有任何要求,它以个人纯粹的个想法和心得,包括你对时事新闻、国家大事的个人看法,或者一日三餐、服饰打扮的精心料理等等,也可以是在基于某一主题的情况下或者是在某一共同领域内由一群人集体创作的内容。
类似于传统的“网络日志”,但又不同于传统的“网络日志“,传统的”网络日志“是带有显示的私人性质的,而博客则是私人性和公共性的有效结合,绝不仅仅是纯粹个人思想的表达和日常锁事的记录,它所提供的内容可以用来进行交流和为他人提供帮助,是可以包容事个互联网的,具有极高的共享精神和价值。
博客还有个最大的特点是可以图文并茂的描述一件事,在文字、图片和视频等的共同描述下,使得内容更加生动形象。
博客由2000年悄然进入中国,随后得到迅速发展,但业绩平平,直到2004年由于某一事件,才让民众了解博客,并运用博客。
2005年,财大气粗的原本不看好博客的几大门户,也加入到博客的春秋战国时代,开始了你死我活的拼杀。
第一章系统技术方案
注释:
本章主要从开发语言,及相关开发工具进行说明
博客提供了信息的实时发布,动态展示,信息状态的跟踪,以及博客和浏览者、博客和博客之间互动等这些高交互行为,就注定了对技术的要求会比较苛刻,加上经济上的限制,因此必需选择一种技术架构成熟,稳定性好,执行效率高、经济实惠的解决方案。
通过上网查找资料权衡后,决定选择PHP+mySQl结合框架onethink作为本系统开发路线。
1.2开发工具
1.2.1关于PHP
PHP是HypertextPreprocessor的简称,是一种HTmL内嵌式编程语言。
它的语法混合了c、java和Perl优点及它的新语法,比cGI、ASP或者Perl更快速地执行动态网页。
总的来说,它有以下几个方面的优点:
1.支持的数据库非常广泛,大到SyBASE、mySQL、oRAcLE,小到Access都支持。
2.跨平台性非常好,支持Windows系列操作系统,LINUX操作系统和UNIX操作系统。
同时支持多种Web服务器。
3.开源软件,升级更新速度非常快。
4.免费软件,无须花钱购买。
5.PHP5.0有成熟的面向对象体系,能够适应基本的面向对象要求,适合开发大型项目。
1.2.2关于mySql
mySQL是基于SQL的,完全网络化的跨平台关系型数据库系统,同时是具有客户机/服务器体系结构的分布式数据库管理系统。
它具有体积小,功能强,使用简便,管理方便,运行速度快,安全可靠性高,尤其是开源这一特点,所以很多企业为了降低网站总体拥有成本而选择了mySQL作为网络数据库。
更重要的是提供了用于c、c++、Eiffel、java、Perl、PHP、Python、Ruby和Tcl等API,支持多线程,充分利用cPU资源,从而可以很容易的将其加入到各种应用中。
1.2.3关于onethink
onethink由上海顶想技术信息技术有限公司是一个开源的内容管理框架,基
于最新的ThinkPHP3.2版本,开发提供更方便更安全的WEB应用开发体验,采用了全新的架构设计和命名空间机制,融合了模块化和插件化的设计理念于一体,开启了国内WEB应用的傻瓜式开发的新潮流。
1.2.4关于javaScript
javaScript是目前互联网上最流行的脚本语言,并且目前所有主要浏览器都能很好的支持它。
在当今Web2.0时代的应用中,无一不借助它来提升客户端的用户体验。
1.2.5关于Ajax
AjAX全称为“AsynchronousjavaScriptandXmL”(异步javaScript和XmL),它不是一门新的语言,而是借助于已经存在的javascript和XmL组合成一种全新的技术。
它能和服务器端进行异步通信,所为的异步即为当前页面和服务器端进行通信时,当前浏览用户全然不知。
比如典型的应用有,当用户去一个网站进行注册时,在当前页面没有任何变化的情况下,当输入完注册用户名后,系统马上就告诉你,该用户是否已注册,其实在用户输入完用户名的瞬间,用户名就被异步的传到了服务器端,然后将后台处理的状态返回给当前网页,然后由javaScript将状态呈现给当前用户。
除了注册用户名的验证外,当今各大搜索引擎公司提供的关键字智能提示功能也是基于这样的一个原理来实现。
1.2.6关于mVc
mVc是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。
使用mVc应用程序被分成三个核心部件:
模型、视图、控制器。
它们各自处理自己的任务。
优点如下:
1.低耦合性
视图层和业务层分离:
这样就允许更改视图层代码而不用重新编译模型和控制器代码,同样,一个应用的业务流程或者业务规则的改变只需要改动mVc的模型层即可。
因为模型与控制器和视图相分离,所以很容易改变应用程序的数据层和业务规则。
2.高重用性和可适用性
随着技术的不断进步,现在需要用越来越多的方式来访问应用程序。
mVc模式允许你使用各种不同样式的视图来访问同一个服务器端的代码。
它包括任何WEB(HTTP)浏览器或者无线浏览器(wap),比如,用户可以通过电脑也可通过手机来订购某样产品,虽然订购的方式不一样,但处理订购产品的方式是一样的。
由于模型返回的数据没有进行格式化,所以同样的构件能被不同的界面使用。
例如,很多数据可能用HTmL来表示,但是也有可能用WAP来表示,而这些表示所需要的仅令是改变视图层的实现方式,而控制层和模型层无需做任何改变。
3.较低的生命周期
mVc使降低开发和维护用户接口的技术含量成为可能。
4.快速的部署
使用mVc模式使开发时间得到相当大的缩减,它使程序员集中精力于业务逻辑,界面程序员(HTmL开发人员)集中精力于表现形式上。
5.可维护性
分熟视图层和业务逻辑层也使得WEB应用更易于维护和修改。
6.有利于软件工程化管理
由于不同的层各司其职,每一层不同的应用具有某些相同的特征,有利于通过工程化、工具化管理程序代码。
第二章系统可行性分析
2.1开发背景
随着互联网技术的高速发展,生活节奏的加快,博客被越来越多的人选择作为学习和交流的工具。
博客的内容丰富多彩,有对其他网站的超链接和评论,有个人构思,还有新闻日志、照片、诗歌和散文等。
博客具有自主性、开放性、互动性和共享性的特点,是一个很好的交流的渠道,思想展现的舞台和学术探讨的园地。
2.2市场分析
据最新统计,不含港澳台,目前我国一共有1983所,总人数达2600多万人,相信对于21世纪的高校学生来说,不会上网的几乎不存在,只要我们的博客系统做的够对校园学生的胃口,我们的博客系统PV(页面的浏览数)一定会不断上升。
经过上面的阐述,发现虽然价值非常可观,但是从我国当前社会BSP(博客服务提供商)的数量众多,在这个众人都去抢的蛋糕面前,我们究竟能分到多少呢?
讲到这里,不得不谈一个博的广度和深度的问题。
有的BSP提供的博客是适合了所有网民的,它们没有明确的指出他们的用户是哪一类人群,而有的BSP确明指出提供的博客是什么类型或者某个行业,当然也有的没有明确指定,但博客似乎已经倾向于某一批人群或者某一领域。
比如:
国内的比较著名的财经博客:
中金博客、和讯博客和金融界博客,它们的目标人群基本就是广大股民和从事证券或者金融相关行业的人员,所以这些人一般上网浏览博客的话,会倾向于这几家BSP所提供的博客。
著名的IT技术博客如:
博客巴士和cSDN博客等。
几大门户之一的新浪博客,但主要侧重于名人博客,通过名人效应,带动着广大粉丝网友参与到其中的互动中。
而在当今整个IT界相当有影响力的腾讯公司,它们则借
助于强大的用户群,将他们的博客产品QQ空间覆盖到了80%以上的上网用户。
虽然我们的博客系统在广度上超不过他们,但可以从一个行业入手,只专注与一个行业的博客,从专著来跟他们竞争。
在加上基于中国这么一个庞大的网民群体,相信还是能分到属于我们的那一小块蛋糕。
2.3技术分析
博客作为一个典型的Web2.0应用,所面临的技术挑战在前面的分析中已经提到。
对于这样的挑战,幸好有onethink这个开源框架,onethink完全是为博客系统的开发量身订做的。
有了onethink这个框架,使得整个开发过程变得简单不少,不仅大大的加快的系统的开发速度也使得系统的安全性得到了有效的保障。
再加上数据库采用小巧,高效的mySQL数据库,使得系统的响应时间更短,使得整个系统的运行效率能够发挥到极致。
第三章需求分析
3.1性能要求
本系统必须要满足7*24小时能够正常访问,在外在环境正常的情况下,页面打开的时间不能超3秒,能够兼容现今各大主流的浏览器。
3.2运行环境要求
3.2.1硬件要求
电脑:
200G及以上硬盘,1G运行内存
3.2.2软件要求
操作系统:
win7以上X86架构64位
Web服务器:
Apache2.0及以上版本
PHP:
php5.0及以上版本
mySQL:
mySQL5.0及以上版本
onethink正式版
3.3功能需求
3.3.1系统概述
本系统的最主要功能是体现多用户的使用,用户可以在本系统注册申请自己的博客。
一旦用户申请了自己的博客,就可以将心得体会等发表到自己的博客上,当发表了自己的心得体会后,浏览者就可以对用户所发表的日志的内容进行评论。
除此之外注册过的用户在登录状态下还可以关注其他的会员,关注成功后还可以通过系统的聊天功能与他人发起聊天。
3.3.2系统基本概述
系统主要提供的功能包括以下几方面:
1.博主的注册和登录
2.日志的发布和管理,包括日志管理和分类选择功能,其中日志管理功能包括日志的添加、删除和修改。
而分类选择功能则包括日志评论权限的设置、日志所需图片的上传、日志预览功能和日志存为草稿功能。
3.日志分类管理,包括分类的添加、删除、和修改。
4.博客设置,主要是博客的个人信息修改完善。
5.活动创建,活动管理(活动审核、活动分类)
6.页面布局设置,包括页面版本和内容模块两大功能。
7.文章评论,包括评论的添加、删除、修改和查询四大功能。
8.聊天功能,用户注册账号后即可与添加关注的用户进行聊天
9.系统管理后台,主要包括用户管理、博客管理、模块管理和评论管理,日志审核五大功能。
3.3.3系统分析
本博客系统主要包括以下几类用户:
1.游客
此类用户不是本系统的用户或者没有登录、对于当前系统来讲,只是一名匿名的浏览者。
在系统中,所有游客都没有身份标识,他们只能浏览博客中的日志。
2.注册用户
此类用户和游客的唯一区别为该类用户属于系统登录用户,在系统中有用户ID作为他们的唯一标识,并拥有自己的博客,用户浏览其它用户的博客时,仅仅是一个有身份标识的浏览者而已,但一旦用户进入了自己的博客主页,那么这时身份除了是一名浏览者外,还是一名博主,这时将拥有博主的所有权限。
3.管理员
该类用户为博客系统的网站管理员,具有上述用户的所有管理权限,能够进行系统的一般维护及会员所发起活动的审核等等。
3.3.4功能详细说明
1.游客用例图
图3-1游客用例图
图3-1用例分析说明如下:
浏览日志:
阅读系统内所有博客的日志。
2.会员用例图
图3-2会员用例图
图3-2用例分析说明如下:
浏览日志:
阅读系统内所有博客的日志。
发表评论:
由于注册用户具有身份标识,在可以对浏览的日志进行评论。
个人资料管理:
可以对自己的个人资料进行更新。
3.管理员用例图
图3-4系统管理员用例图
图3-2用例分析说明如下:
用户管理:
对系统中的博客用户进行管理,有些用户可能在博客里发表一些反动言论或者一些违法的日志,对于这种情况,系统管理员需要对该类用户的博客进行删除,以维护整个博客系统内容的健康。
具体操作包括通过用户名或者某一关键字对用户博客进行搜索,这样方便管理员对违法用户的查找,其次就对是违法博客的删除。
日志管理:
该操作是对系统内所有的日志进行统一管理,为了方便的对日志的查找,管理员可以通过关键字、日期段等搜索选项来对日志进行搜索。
对于违法日志,管理员可以在这里进行统一清除。
评论管理:
日志管理:
该操作是对系统内所有的日志进行统一管理,为了方便的对日志的查找,管理员可以通过关键字、日期段、作者和IP地址等几个搜索选项来对日志进行搜索。
对于违法日志,管理员可以在这里进行统一清除。
模块管理:
对系统内所提供的模块可能在这里进行统一的添加、删除和修改。
活动审核:
管理员可以对用户发起的活动进行审核,审核不通过则活动发起失败
第四章系统后台登录界面
4.1登录界面
这是进入后台管理的一扇门,要进入后台进行管理需要有密码这把钥匙,在界面设计发面采用的是简洁实用的方案,没有做验证码的功能
(1)界面及功能实现核心代码
<formaction=“{:
U(‘login’)}”method=“post”class=“login-form”style=“margin:
100px200px;”>
<h3class=“welcome”><iclass=“login-logo”></i>毕业设计后台管理</h3>
<divid=“itemBox”class=“item-box”>
<divclass=“item”>
<iclass=“icon-login-user”></i>
<inputtype=“text”name=“username”placeholder=“请填写用户名”autocomplete=“off”/>
</div>
<spanclass=“placeholder_copyplaceholder_un”>请填写用户名</span>
<divclass=“itemb0”>
<iclass=“icon-login-pwd”></i>
<inputtype=“password”name=“password”placeholder=“请填写密码”autocomplete=“off”/>
</div>
<ifcondition=“APP_DEBUGeqfalse”>
<spanclass=“placeholder_copyplaceholder_pwd”>请填写密码</span>
<divclass=“itemverifycode”>
<iclass=“icon-login-verifycode”></i>
<inputtype=“text”name=“verify”placeholder=“请填写验证码”autocomplete=“off”>
<aclass=“reloadverify”title=“换一张”href=“javascript:
void(0)”>换一张?
</a>
</div>
<spanclass=“placeholder_copyplaceholder_check”>请填写验证码</span>
<div>
<imgclass=“verifyimgreloadverify”alt=“点击切换”src=“{:
U(‘Public/verify’)}”>
</div>
</if>
</div>
<divclass=“login_btn_panel”>
<buttonclass=“login-btn”type=“submit”>
<spanclass=“in”><iclass=“icon-loading”></i>登录中..</span>
<spanclass=“on”>登录</span>
</button>
<divclass=“check-tips”></div>
</div>
</form>
(2)界面实现效果
图4.1后台登录界面
4.2修改密码
管理员可在此修改密码
(1)核心代码
<formaction=“{:
U(‘User/submitPassword’)}”method=“post”class=“form-horizontal”>
<divclass=“form-item”>
<labelclass=“item-label”>原密码:
</label>
<divclass=“controls”>
<inputtype=“password”name=“old”class=“textinput-large”autocomplete=“off”/>
</div>
</div>
<divclass=“form-item”>
<labelclass=“item-label”>新密码:
</label>
<divclass=“controls”>
<inputtype=“password”name=“password”class=“textinput-large”autocomplete=“off”/>
</div>
</div>
<divclass=“form-item”>
<labelclass=“item-label”>确认密码:
</label>
<divclass=“controls”>
<inputtype=“password”name=“repassword”class=“textinput-large”autocomplete=“off”/>
</div>
</div>
<divclass=“form-item”>
<buttontype=“submit”class=“btnsubmit-btnajax-post”target-form=“form-horizontal”>确认</button>
<buttonclass=“btnbtn-return”onclick=“javascript:
history.back(-1);returnfalse;”>返回</button>
</div>
</form>
(2)页面效果图
第五章系统测试
基于Web(B/S结构)的系统测试和传统的软件测试即有相同之处,也有不同的地方,对软件测试提出了挑战,基于Web的系统测试不但要验证系统的功能是否按照计划的要求运行,而且还要评价系统在各浏览器下以及各分辨率下是否能正常显示,最重要的是,要从最终用户的角度进行安全性和可用性进行考虑。
本章将从链接测试、浏览器兼容、表单测试、连接速度和几个方面来对本系统进行测试,测试情况如下。
5.1链接测试
链接是Web应用的主要特征,页面与页面之间是靠它联系起来的。
链接测试主要从以下几个方面来进行测试。
1.测试所链接的页面是否链接到了指定的页面,即没有死链接或者没有链错地方。
2.测试系统是否存在孤立的页面,即只有知道这个页面的链接地址才能访问。
测试报告如表5-1所示。
博客首页博客首页博客列表页
链接是否错误否否否
是否有孤立页面否否否
5.2表单测试
当用户向Web应用服务器提交信息时,就需要使用表单操作,例如用户注册、
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件技术 专业 毕业设计