ASP课设报告.docx
- 文档编号:10460448
- 上传时间:2023-02-13
- 格式:DOCX
- 页数:34
- 大小:1.85MB
ASP课设报告.docx
《ASP课设报告.docx》由会员分享,可在线阅读,更多相关《ASP课设报告.docx(34页珍藏版)》请在冰豆网上搜索。
ASP课设报告
辽宁工业大学
WEB程序设计课程设计(论文)
题目:
博客网站的设计与实现
院(系):
电子与信息工程学院
专业班级:
学号:
学生姓名:
指导教师:
教师职称:
******
起止时间:
2011.7.4---2011.7.9
课程设计(论文)任务及评语
院(系):
电子与信息工程学院 教研室:
网络工程
学号
学生姓名
专业班级
课程设计(论文)题目
博客网站的设计与实现
课程设计(论文)任务
1.采用B/S结构进行设计。
2.采用Access进行数据库设计。
3.确定网站的主题、内容、功能。
4.网站的整体设计。
5.网页的详细设计包括功能设计、界面设计、数据库设计。
6.网站的测试与发布。
7.网站的更新与维护。
指导教师评语及成绩
成绩:
指导教师签字:
年月日
绪论
背景分析
博客,译自英文Blog,它是互联平台上的个人信息交流中心。
它可以让每个人零成本、零维护地创建自己的网络媒体,随时把及的思想火花和灵感更新到博客网站上。
第一批中文博客是在2002年出现的,早些时候博客只是一个新的网络名词并无特殊之处,。
就在不经意间,博客竟如雨后春笋般冒出来,博得越来越多网民的欢心,并在互联网上引发了一股博客热潮。
博客的发展现状呈现出以下特点:
发展速度惊人;从精英向大众人群迅猛扩展;博客人群主体更加多元化;博客服务商激增,出现群雄争霸局面;博客资源争夺激烈,博客服务商面临市场洗牌。
博客发展到今天已经取得了相当规模的成就,以新浪、搜狐、网易为代表的三大门户网站都已经推出了自己的博客服务,还有一些著名的专业博客网站都已经对博客资源展开了激烈的争夺。
在规模扩大的同时博客技术也在不断的进步和完善,目前博客技术已经取得的成果包括:
发表日志,发表评论,相册等一些通用功能。
但是现在的博客技术还不够完善,要想永久确立它的网络地位必须不断开发并推出新的博客技术来满足人们的需要。
本课题的研究正是基于这样一种追求博客新技术的基础上而展开的。
设计的意义
从上面的背景知识我们已经了解到博客在互连网上已经具有相当的规模,可以说它已经被人们所接受,博客改变着人们的交流方式和情感体验和表达形态,改变着人们聚散的方式;它无限放大着人们对于未来信息世界的预想,它影响着整个中国互联网的发展走向,甚至可能在今后一个时期,波及或影响着现实社会的民主决策过程。
无疑博客这样一种影响力颇大的媒介将有利于我们好的思想好的事物的传播,有利于社会的进步。
所以我们要把这种好的影响力发挥到最大,怎样提高博客影响力必然就要求开发博客新技术来获得更多人的认可。
一旦博客研究取得关键性技术的新突破,将会在网络世界掀起一股前所未有的博客浪潮,介时将会有更多的人拥有自己的博客,博客影响力也将倍增。
这时通过博客一些新的科学技术将更容易推广,好的政策好的思想也会更加容易传播,如果这样相信社会的进步将会是显而易见的。
设计目标及结论
博客网站是一个ASP与数据库技术结合的典型应用程序,由前台用户操作和后台博主管理模块组成,规划系统功能模块如下:
(1)前台用户操作:
该模块主要包括我的文章、我的相册、博主登录、Blog搜索、博主推荐、最新评论、网站统计等功能。
(2)后台博主管理:
该模块主要包括文章信息管理、相册信息管理、管理员资料管理等功能。
可行性分析
可行性研究
可行性研究的目的不是解决问题,而是确定问题是否值得去解决,研究在当前的具体条件下,开发新系统是否具备必要的资源和其它条件。
可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能解决。
如果没有可行的解,那么花费在这项工程上的任何时间、资源、人力和经费都是无谓的浪费。
所以进行可行性分析是非常必要的。
通过对部分博客用户的调查和查阅大量的相关资料,发现博客技术从出现到现在一直在不断的发展中,博客的功能也从最初的只有简单的文章发表到现在集日志发表、评论、留言、相册等多功能于一身。
有博客用户反映这些功能已经不能完全满足他们的需求,他们期待技术更成熟,功能更全面的新的博客技术的出现。
把握博客技术的发展动态对更好的开发设计本课题有很大的帮助,在调研过程中反映出来的对博客新技术的迫切需求更加激励了我要出色的完成本课题的设计。
调研还发现目前的博客系统存在局限性,例如现在博客用户使用的网页模板都是系统提供的固定格式,这就一定程度上限制了用户博客网页个性的发挥,因此能够让用户自己随意的设计自己喜欢的能够体现用户个性的模板将是博客技术发展的必然要求。
1.技术可行性
技术可行性也就是使用现有的技术实现这个系统的可行性。
计算机的普及,各个行业在信息管理中对计算机的使用,使得种类繁多的信息管理软件得到广泛应用。
所以在开发系统时有很多的参考依据和经验。
其次,所选用的开发工具:
AdobeDreamweaverCS3和MicrosoftOfficeAccess2003都是非常成熟的系统开发工具。
本系统使用ASP技术进行开发,现在有很多企业及技术人员选择它来作为开发平台。
因此,在技术上ASP是完全可以胜任这个平台的开发。
使用Dreamweaver结合ASP技术已经成为现代开发动态网站的首选技术,许多已经开发成功的经典项目足以证明此技术的可行性。
2.经济可行性
由于本项目的特殊性,无需投入额外的设备购买及人员培训费用,所以在经济上本系统的开发是可行的。
博客系统一旦开发成功投入运行,将会吸引很多的博客用户,网站的知名度迅速上升,访问量也会大幅度提高到时将会带来可靠的经济效益。
从经济上考虑是开发这个系统是很有价值的,是完全可行的。
按上述两方面进行可行性分析、研究后,我认为该项目在技术上是可行的,在经济上是可合理的,可以进行开发。
系统开发及开发工具
开发工具对一个系统的成败具有决定性作用。
由于本系统是应用于网络的,因此,我们选择了Asp技术进行开发,同时,选用Access作为系统后台数据库,开发中将用到以下主要几款开发工具:
开发工具名称
软件用途
Microsoftvisio2003
系统设计,UML建模等
MicrosoftAccess
建立系统的后台数据库
ASP
编写代码实现网站动态功能
DreamweaverMX2004
静态页面的设计、制作
ASP就是由服务器端脚本、对象以及组件拓展过的标准网页(也可以理解为在普通的网页中嵌入了一些扩展的指令),另一方面,ASP也可以理解为一种支持ASP扩展的Web服务器环境。
它最终显示在浏览器中的网页并不是在建立初期就存在的,而是当某个浏览器向服务器提出请求时,它才根据需要产生需要的标准网页,这克服了过去HTML编写的网页不能更改的缺点,从而使网页上可以存在许多动态的信息。
硬件环境:
服务器端:
推荐配置为512M内存,CPU为IntelPentiumⅣ1700MHZ,硬盘容量为80G的微机。
通信网络:
Internet网
软件环境:
服务器端:
Ø操作系统:
Windows2000Server/NT/2003Server/XP
Ø数据库:
ACCESS
ØWeb服务器:
Internet信息服务5.1或以上版本
ØMicrosoft.NET框架:
.NETFramework1.1
客户端:
Ø操作系统:
Windows2000/XP/2003
Ø浏览器:
InternetExplore6.0或以上版本
Ø推荐分辨率:
1024*768或以上
需求分析
综合需求
1.系统功能要求:
(1)前台用户操作:
该模块主要包括我的文章、我的相册、博主登录、Blog搜索、博主推荐、最新评论、网站统计等功能。
(2)后台博主管理:
该模块主要包括文章信息管理、相册信息管理、管理员资料管理等功能。
2.系统性能要求:
要求查询时保证查全率,所有相应域包含查询关键字的记录都应能查到。
要求单个操作的响应时间在5秒以内,并且系统应该在9x/XP/WinNT都可以访问使用。
3.出错处理需求:
可进行数据的备分以及恢复,保证数据的不丢失。
4.接口要求:
服务器端:
硬件接口P42.8,512M及以上性能的PC机或服务器,软件接口运行于Windows2000以及更高版本具有WIN32API的操作系统上(OpensslCA需要运行于Windows平台,将来可以扩展到linux系统中去)。
客户端:
具有IE或FireFox浏览器的普通PC即可
数据流图
本系统主要完成博客的浏览与管理的功能,因此,在逻辑上可以将系统分为博客浏览系统和博客管理系统两部分,同时,系统的所有数据都需通过一个数据库系统来实现查询、更新和输入,所以在总体上可将总系统分为博客浏览系统、博客管理系统和数据库系统三个系统,对本系统操作的数据源有普通浏览者、博客用户和管理员三种。
根据上述对新系统的初步分析和开发目标的分析,初步分析了一套博客系统的总体流图,如下图所示:
数据字典
数据字典把数据流图上所有数据都加以定义,并按特定格式予以纪录,以备随时查询和修改。
因此,数据字典是数据流图的辅助资料,对数据流图起注解作用。
数据流图、数据字典、IPO图表构成了对系统需求的完整描述。
数据字典中把数据的最小单位定义为数据项,而若干数据项可以组成一个数据结构。
数据字典是通过以数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。
数据字典的主要用途是作为分子阶段的主要工具。
在数据字典中建立一组严密一致的定义很有助于改进分析员和用户之间的通信,因此将消除很多可能的误解。
数据字典包含的每个数据元素的控制信息是很有价值的。
因为列出了使用一个给定的数据元素所有程序,很容易估计改变一个元素将产生的影响,并且能对所有受影响的程序或模块做出相应改变。
由于暂时还没有自动的数据字典处理程序,我们采用卡片形式书写数据字典,每张卡片上保存描述一个数据元素的信息。
这种做法较好的实现了上述要求,特别是更新修改起来很方便,能够单独处理每个数据元素的信息。
每张卡片上包含的信息有:
名字,别名,描述,定义,位置。
数据字典是系统分析阶段的重要文档,它清楚地定义与详细地解释了数据流程图上不能详细表达的内容,同时它也是同用户交谈的工具。
下面详细列出本系统中的数据字典:
名字:
博客名
别名:
描述:
博客网页的名称
定义:
博客名=1{字符}20
位置:
博客信息表
名字:
博客信息表
别名:
描述:
记录博客信息表
定义:
博客信息表=博客名+博客作者+博客类别
位置:
博客信息中心
名字:
作者
别名:
博客用户
描述:
博客网页的制作者和管理者
定义:
作者=1{字符}20
位置:
博客信息表
名字:
日志信息表
别名:
文章信息表
描述:
记录博客用户发表的文章的信息表
定义:
日志信息表=日志主题+日志分类+发表日期
位置:
日志管理部分
名字:
日志主题
别名:
文章题目
描述:
标识日志的内容
定义:
日志主题=1{字符}20
位置:
日志管理部分
名字:
日志分类
别名:
描述:
日志内容所属的类型
定义:
日志分类ID=1{字符}20
位置:
日志信息表
名字:
评论主题
别名:
描述:
代表评论是对哪个日志而发表的
定义:
评论主题=1{字符}20
位置:
评论信息表
评论管理部分
名字:
评论信息表
别名:
描述:
记录对日志的评价信息
定义:
评论信息表=评论主题+评论人+
评论日期
位置:
评论信息表
评论管理部分
名字:
评论日期
别名:
描述:
代表评论更新时间
定义:
评论日期=1{字符}20
位置:
评论信息表
评论管理部分
名字:
评论人
别名:
描述:
标识评论的作者
定义:
评论人=1{字符}10
位置:
评论信息表
评论管理部分
名字:
用户名
别名:
描述:
标识用户的凭证
定义:
用户名=1{字符}20
位置:
管理信息表
用户验证中心
名字:
管理信息表
别名:
管理员信息表
描述:
记录管理员的注册信息表
定义:
管理信息表=用户名+用户密码
位置:
用户验证中心
名字:
用户密码
别名:
描述:
验证用户是否合法的唯一凭证
定义:
用户密码=1{字符}50
位置:
管理信息表
用户验证中心
名字:
模板名称
别名:
描述:
体现模板特色的名字
定义:
模板名称=1{字符}20
位置:
模板信息表
名字:
模板信息表
别名:
描述:
记录制作博客的模板信息
定义:
模板信息表=模板名称+提供者+
模板代号
位置:
模板信息表
名字:
模板代号
别名:
描述:
唯一标识某一个模板
定义:
模板代号=1{字符}20
位置:
模板信息表
管理模板部分
名字:
提供者
别名:
描述:
标识模板的制作者
定义:
提供者=1{字符}10
位置:
管理模板部分
系统设计
功能结构
总体设计过程首先寻找实现目标系统的各种不同的方案;需求分析阶段得到的数据流图是设想各种可能方案的基础。
然后从这些供选方案中选取合理的方案中选取若干个合理的方案,为每个合理的方案都准备一份系统流程图,列出组成系统的所有物理元素,进行成本/效益分析,并且制定实现这个方案的进度计划。
应该综合分析比较这些合理的方案,从中选出一个最佳方案设计软件结构,通常,设计出初步的软件结构后还要进行多方面的改进,从而得到更合理的结构,进行必要的数据库设计,确定测试要求并且制定测试计划。
为这个最佳方案设计软件结构。
博客网站前台功能结构:
图1博客网站前台功能结构
图2后台功能结构
模块描述
上节把建立一个博客系统的流程图和功能模块的划分进行了介绍,下面将各个功能模块的功能做详细的描述,即对上述的模块功能进行设计与细化,以便我们下一步的开发。
系统功能的详细描述如下:
前台功能列表
序号
功能列表
功能明细
1
首页
最新日志列表
热门日志列表
日志分类列表
2
阅读日志功能块
全部日志列表
日志内容页
日志评论功能(发表评论)
3
博客列表功能块
全部博客列表
博客内容页
4
公共模块
日志和博客关键字搜索
列出博客、日志、评论的总数
博客排行榜
博客管理功能列表
序号
功能列表
功能明细
1
写博客
写日志,管理日志
管理评论
专题分类管理
修改公告
修改个人博客信息
2
模板管理
添加、删除和修改用户模板
系统管理功能列表
1
系统模板管理
添加、删除和修改系统模板
2
系统参数设置
设置系统的一些名称和数据
3
数据库管理
数据库的备份和还原
有了这些功能明细后,我们就把整个系统的框架确定下来了,也就确定了系统数据的基本结构。
数据库设计
5.1概念设计
概念结构设计是通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型,它数据库设计的关键。
概念设计可以用一句话来解释为,把现实世界用E-R图来描述。
E-R图也即实体-联系图(EntityRelationshipDiagram),提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。
E-R方法:
是“实体-联系方法”(Entity-RelationshipApproach)的简称。
它是描述现实世界概念结构模型的有效方法。
1.实体
实体是客观世界中存在的且可相互区分的事物。
实体可以是人也可以是物,可以是具体事物,也可以是抽象概念。
例如,职工、学生、课程、老师等都是实体。
2.联系
客观世界中的事物彼此间往往是有联系的。
例如,教师与课程间存在“教”这种联系,而学生与课程间则存在“学”这种联系。
联系可分为三种,分别是一对一联系、一对多联系和多对多联系。
3.属性
属性是实体或联系所具有的性质,通常一个实体有若干个实体属性来刻画。
联系也可能有属性。
本系统的ER模型如下:
图3用户概念模型
图4系统概念模型
5.2逻辑设计
逻辑结构设计的主要任务是,把由概念结构设计阶段得出的E-R图转换为相应的逻辑结构。
所谓相应是指,转换后的逻辑结构要与开发者所选用的软硬环境
相容,能被前台与后台工具所支持。
(一)数据模型的建立
现根据上述概念模型,将它们转化为数据模型,由于数据较多,现举部分数据进行转换。
根据关系模型的转换规则,转换方式分为如下几种:
(1)一个实体型转换为一个关系模型
(2)一个1:
n联系转换为一个关系模型
(3)一个1:
1联系可以转换为一个关系模型
(4)三个或三个以上实体间的一个多元联系转换为一个关系模式
(二)数据模型的优化
数据库逻辑设计的结果不是唯一的。
为了进一步提高系统数据库应用系统的性能,必须对数据模型进行优化。
由于数据较多,只就部分数据举例如下:
1.确定数据依赖
2.消除冗余关系
3.考查部分函数依赖、传递函数依赖等的存在性,以确定关系模型分别达到的范式
4.确定是否分解
5.3物理设计
数据库设计是项目开发中的系统设计中非常重要的另一个关键环节,在这里之所以特别强调数据库设计的重要性,上因为数据库设计就像在建设高楼大厦的根基一样,如果设计不好,在后来的系统维护、变更和功能扩充时,甚至在系统开发过程中,将会引起比较大的问题,会遇到非常大的困难,大量的工作将会重新进行。
下面根据前面列出的系统用例图,开始设计相关数据库。
(1)数据库表及表之间的相互关系
本系统需要设计的数据库表如下:
数据库表
序号
数据库表
数据库表存储内容
1
user
存储用户信息、权限及用户的博客信息
2
classname
存储分类信息
3
blog
存储日志信息
4
sysskin
存储系统模板信息
5
comment
存储评论信息
6
admin
存储系统管理员信息
上表列出了本系统所用到的数据表,并根据流程和功能表示出数据各表之间的关系,具体如下。
图5数据库表关系(简化关系图)
(2)数据库表结构的详细设计
下面开始对上一节列出的数据表逐一做出详细说明。
存储用户信息、权限及用户的博客信息的表如下:
tab_article(文章信息表)表结构
字段名称
数据类型
是否主键
长度
默认值
允许空
字段描述
id
自动编号
是
唯一标识
Aclass
数字
4
0
所属类别ID
Atitle
文本
50
否
文章标题
Acontent
备注
否
文章内容
Aauthor
文本
50
否
作者名称
Adate
日期/时间
8
Now()
添加时间
tab_article_class(文章分类信息表)表结构
字段名称
数据类型
是否主键
长度
默认值
允许空
字段描述
id
自动编号
是
唯一标识
Acname
文本
50
否
文章分类名称
Adate
日期/时间
8
Now()
添加时间
tab_article_commend(文章评论信息表)表结构
字段名称
数据类型
是否主键
长度
默认值
允许空
字段描述
id
自动编号
是
唯一标识
Cid
数字
4
0
文章ID编号
Cname
文本
50
否
昵称
Ccontent
文本
200
否
评论内容
Cdate
日期/时间
8
Now()
添加时间
tab_photo(相册信息表)表结构
字段名称
数据类型
是否主键
长度
默认值
允许空
字段描述
id
自动编号
是
唯一标识
Pclass
数字
4
0
相册分类ID
Pname
文本
50
否
图片名称
Ppic
文本
50
否
图片信息
Pdate
日期/时间
8
Now()
添加时间
tab_photo_class(相册分类信息表)表结构
字段名称
数据类型
是否主键
长度
默认值
允许空
字段描述
id
自动编号
是
唯一标识
Pcname
文本
50
否
相册分类名称
Pcdate
日期/时间
8
Now()
添加时间
界面设计与实现
详细设计阶段的根本目标是确定应该怎样具体的实现所要求的系统,也就是说这个阶段的设计工作,应该得出目标系统的精确描述,从而字编码阶段可以可以把这个描述直接翻译成用某种程序设计语言书写的程序。
前台主页面设计
1.前台主页面概述
网站前台主页面是网站提供给浏览者的第一视觉界面。
前台首页不仅要有合理的整体布局,使浏览者有一个流畅的视觉体验;还应该通过各功能模块体现出网站的主题内容,使浏览者在最短的时间内了解网站的用途。
图6前台主页面
2.前台主页面的布局
图7前台主页面布局
3.前台主页面的实现
根据图所示的页面布局,可以在index.asp页面中创建一个三行两列的表格,然后在相应的单元格中使用#include指令包含相应的ASP页面,并在左侧单元格中定义
文章模块设计
1.文章展示模块设计
文章展示模块的主要功能是浏览网站发表的文章列表,可以查看文章的详细内容,包括文章作者、发表时间等,并可以针对文章发表评论。
文章展示模块主要包括:
前台主页面文章展示;文章分类列表展示,如图8所示;文章详细内容显示,如图9所示。
图8文章分类列表展示页面
图9文章详细内容显示页面
2.文章管理模块设计
(1)文章管理模块概述
文章管理模块的主要功能包括文章分类的管理,文章信息的添加、查询、修改和删除操作以及对文章相关评论的管理。
进入后台主页面后,单击左侧导航栏处的“文章分类”超链接,可以对文章分类进行添加、修改和删除操作,如图14所示。
图14文章分类页面
添加文章分类后,单击左侧导航栏处的“文章添加”超链接,可以添加新的文章,如图15所示。
图15文章添加页面
图16文章列表浏览页面
图17文章评论浏览页面
(2)文章分类管理的实现过程
文章分类管理是指实现对文章分类名称的添加、修改以及删除操作。
下面介绍文章分类管理的实现过程。
a.在文章分类管理页面ad_article_class.asp中,建立两个表单:
一个用于展示现有的文章分类信息;另一个用于添加文章分类。
b.定义了3个子过程,分别使用“Insertinto”、“Update”和“Delete”语句实现添加、修改和删除文章类别名称的功能。
(3)文章添加的实现过程
文章添加是指将文章的相关信息,包括文章分类、文章作者、文章主题和文章内容添加到数据库中,添加的文章信息将展示在网站前台页面中。
下面介绍文章添加的实现过程。
(1)在页面ad_article.as
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ASP 报告