《Web系统与技术》课程设计题目校园新闻发布系统项目组成员一、项目设计的总体目标1.1项目概述基于的新闻发布系统系统,可以提供学院信息的及时发布,包含管理员及相关用户注册,登陆等功能。
系统可以划分为新闻浏览,新闻搜索,新闻分类,新闻管理,用户管理,账号管理等模块,使用html、RSS、SQL数据库连接等技术,并结合Adobe PS等软件进行界面美化方面的优化设计来方便学生老师浏览,搜索信息。
1.2创新点本校园新闻发布系统预计实现如下功能:(1)新闻浏览和搜索;(2)新闻收藏和评论;(3)系统管理员对系统和用户的管理;(4)新闻管理员发布新闻。
本系统其功能灵活并易于使用,能够实现网站新闻的动态管理,使得对新闻的管理更加及时,高效;(5)RSS订阅。
二、需求分析2.1 功能需求本系统的目的是实现校园新闻发布系统的基本功能。
本新闻发布系统提供了不同类型新闻(如校园新闻、体育新闻和校园之家等)满足不同用户需求;系统将用户分为:普通用户和管理员。
普通用户能在本系统中进行新闻浏览,阅读,搜索、评论及收藏。
每条新闻的标题被做成一个链接,用户点击它们就能跳转页面进行新闻阅读;新闻阅读页面,每条新闻的详细信息将被取出,包括内容、标题等;用户能根据自己的需要搜索新闻,如可以通过新闻标题或新闻内容对新闻进行搜索,这样可以快速地找到符合条件的新闻,并输出搜索结果;用户能对新闻进行评论(允许匿名评论)。
管理员可以进行新闻分类管理、添加新闻、修改新闻、新闻审核和删除新闻,同时系统管理员能完成用户管理如包括系统用户管理、添加用户和更改账号。
如图所示:2.2 性能需求根据新闻系统的需求进行开发设计,主要实现如下目标:(1)界面设计友好、美观、数据要准确、安全、可靠。
(2)强大查询功能,方便用户浏览网站的所有信息。
(3)设计会员登陆功能,保证新闻留言的安全性。
(4)实现对信息、比赛项目等信息的添加、修改、删除,便于更新网站内容。
(5)系统最大限度地实现易维护性和易操作性。
操作的简易实用性本系统是校园新闻发布系统,针对的用户大多数是学生,教师等等。
因此操作的简易实用性就体现的尤其重要。
在此系统的开发中就很好的体现了这一点,系统的界面美观,典雅,充满了人性化;用户操作起来也容易上手。
对于一个校园新闻发布系统而言新闻信息是很多的,而且使用人数较多,所以对系统的安全性有比较高的要求:对于数据库,要设置不同用户的权限,数据的修改必须由合法用户操作。
2.3 可靠性需求为更好地加强校园网络系统、学校网站、师生个人主页的管理,认真落实网络和信息安全保障制度,防范和处理校园网络管理重大突发事件和敏感事件,确保网络提供稳定、安全的信息服务。
2.4 用户界面需求网站界面是用户直接访问的页面,所以必须要让用户一访问就能看出来这个网站的主题思想是什么,一下就能体现出这个网站的中心内容。
并且首页的模块之间要联系紧密,更好的让用户理解明白。
在这个页面上我们要做到所有查看消息的功能都能实现,或者说有能实现查询信息功能的连接。
三、设计方案和实现3.1 概要设计3.1.1 处理流程在主页内根据用户的不同操作进行不同的处理。
浏览新闻:进入新闻界面,显示新闻内容,可以对新闻进行评论。
搜索新闻:在数据库中查找相关新闻,并显示结果。
用户登录:使用用户名、密码登录,可以查看个人信息、新闻评论等。
用户注册:注册用户信息。
管理员登陆:进入登录进面,在登陆后可以对新闻进行添加、修改和删除等操作,可以对新闻的评论进行回复、删除等操作。
订阅RSS:将RSS订阅信息发送给客户端。
3.1.2 模块划分(1)主页(朱斯雄完成)(2)新闻显示模块(袁意完成)(3)数据库模块(吴极完成)(4)登录模块(范宜霖、孙绍未完成)(5)管理员操作模块(袁意完成)(6)用户操作模块(朱斯雄、吴极完成)(7)RSS订阅模块(袁意完成)(8)搜索模块(范宜霖完成)(9)用户注册模块(孙绍未完成)3.1.3 接口设计外部接口:(1)新闻动态显示接口(2)RSS订阅接口(3)外网网址链接接口(4)登陆接口(5)用户注册接口内部接口:(1)数据库接口(2)管理员接口(3)RSS动态更新接口(4)页面调用接口(5)新闻搜索接口3.2 详细设计(模块设计)3.2.1主页a) 程序描述程序主界面,力求友好、易用。
b) 功能显示网站主页面,罗列出新闻类别、最近的新闻标题(及链接),提供用户及管理员登录入口,提供RSS订阅接口。
c) 性能实时更新新闻,显示用户状态。
d) 输入项根据用户操作作出响应:单击新闻标题链接;单击新闻类别标签或者检索新闻;进行用户登录操作;进入管理员登录入口。
e) 输出项进入新闻显示模块;进入检索模块;显示用户状态;进入登录模块(管理员)。
f) 算法在代码中将页面中的容器与数据库的数据进行绑定,从而实现实时更新。
根据用户登录情况(即用户名)动态选择显示登陆框或用户状态框。
g) 限制条件需要数据库的支持。
h) 测试计划主要测试导航功能及登录功能,重点测试并发环境下的登录功能。
3.2.2新闻显示模块a) 程序描述显示新闻的详细内容。
b) 功能显示某则新闻或通知的正文,包括发布时间、作者等文章信息,在正文的下部可作评论(需要登录后才能执行该操作)。
c) 性能实时显示新闻评论,实时显示用户登录状态。
d) 输入项用户登录操作;用户评论操作;e) 输出项用户登录状态;新闻标题、内容、发表时间、作者等;f) 算法简单的数据库查询操作;根据用户登录情况(即用户名)动态选择显示登陆框或用户状态框。
g) 限制条件需要数据库支持。
h) 测试计划主要测试新闻显示是否正确,重点测试并发环境下的登录功能。
3.2.3数据库模块a) 程序描述与数据库进行交互。
b) 功能与数据库进行交互,实现并封装简单的增删改查等功能。
c) 性能实时更新,并具有一定的出错处理功能。
d) 输入项具体的数据库操作需求。
e) 输出项数据库操作结果。
f) 算法简单的SQL语句,.net相关数据库类的支持。
为减少错误,坚持先查找再更新的原则。
g)限制条件数据库系统的支持,拟使用SQL Server数据库。
h) 测试计划重点测试数据库的实时性能。
3.2.4登录模块a) 程序描述包括用户登录及管理员登陆两部分,其中用户登录部分整合到主页及新闻显示模块中,管路员登录部分单独使用。
b) 功能实现用户或管理员的登录操作,支持验证码。
c) 性能对操作响应较迅速。
d) 输入项用户名、密码、验证码。
e) 输出项跳转到相应操作模块。
f) 算法产生随机验证码的算法:利用随机数生成随机的数字或字母,进而生成图片,然后在图片上加入随机的噪点。
g)限制条件需要数据库的支持。
h) 测试计划测试并发环境下登录功能的性能。
3.2.5管理员操作模块a) 程序描述管理员对系统(包括新闻、用户)进行管理的模块。
b) 功能对新闻进行添加、编辑和删除等操作,可以对新闻的评论进行回复、删除等操作;编辑用户信息,删除用户。
c) 性能实时更新。
d) 输入项用户操作(添加、编辑、删除新闻,编辑、删除用户等)。
e) 输出项显示操作结果,显示新闻或用户列表。
f) 算法简单的数据库操作,数据绑定等。
g)限制条件需要数据库支持,在编辑新闻时可以使用第三方文本编辑器插件。
h) 测试计划重点测试并发状态下的性能。
3.2.6用户操作模块a) 程序描述用户操作界面。
b) 功能查看用户基本信息,查看、修改、回复、收藏新闻评论等。
c) 性能实时更新用户信息。
d) 输入项用户选择(查看评论、收藏新闻评论等);e) 输出项显示操作节结果。
f) 算法数据绑定:将列表(评论或新闻)中的数据与数据库中的数据进行绑定。
g)限制条件需要数据库支持。
h) 测试计划重点测试并发环境下的模块性能。
3.2.7 RSS订阅模块a) 程序描述提供RSS的订阅支持。
b) 功能实时提供数据库中前N条新闻的RSS数据。
c) 性能实时刷新RSS数据。
d) 输入项无用户输入(用户读取RSS标签)。
e) 输出项RSS数据(新闻标题、简述、发表时间等,XML形式)。
f) 算法详见RSS格式规范。
g) 限制条件需要数据库支持。
h) 测试计划利用RSS阅读器测试RSS订阅功能(可利用Windows7自带的插件测试)。
3.2.8搜索模块a) 程序描述根据标题搜索相应的新闻。
b) 功能利用数据库模块搜索新闻信息,并显示相应结果。
c) 性能搜索速度较快。
d) 输入项用户输入要检索的信息。
e) 输出项将检索结果与页面容器进行数据绑定。
f) 算法数据库基本操作。
g)限制条件需要数据库支持。
h) 测试计划测试各页面下的检索结果。
3.2.9 用户注册模块a) 程序描述根据用户输入生成新用户的信息,并添加至数据库。
b) 功能利用数据库模块添加新用户。
c) 性能添加用户的速度较快。
d) 输入项用户信息(如用户名、密码等)。
e) 输出项将用户信息添加至数据库。
f) 算法简单的数据库操作;格式验证(如邮箱、电话号码等)。
g)限制条件需要数据库支持。
h) 测试计划主要测试并发环境下的性能。
3.3 代码实现3.3.1 实现方案本网站采用构架,采用VS2010开发环境开发,配合SQL Server 2005数据库系统以及第三方富文本编辑器插件DotNetTextBox整合数据库以及文本编辑功能,使用Windosw7系统自带的IIS Web服务器挂载本网站。
3.3.2 工程概况(1)工程文件概况工程总览:图片资源及插件资源:前台和后台:(2)网站结构1)页面结构2)数据流结构XML HTML服务器端脚本3)数据库结构3.3.2 重要代码说明(1)数据绑定(以新闻列表为例)/前台/newlist.aspx.cs文件中:(3)RSS订阅Default.aspx文件中:/RSS/rss.aspx文件中:/RSS/rss.aspx.cs文件中:(4)验证码/前台/ValidateCode.aspx文件:/前台/ValidateCode.aspx.cs文件:Default.aspx文件中:(5)动态显示(以登陆框为例)Default.aspx文件中:Default.aspx.cs文件中:四、测试结果及结论4.1 主页面主页主要包括新闻类别、标题、登陆框、日历、调查问卷、滚动新闻、链接、管理员登录入口和RSS标志等元素,如图所示:4.2 查看新闻新闻显示区域主要包括新闻标题,新闻内容、新闻来源、发表时间、作者、浏览次数、登陆框,评论区域等元素,如图所示:4.3 用户登录普通用户登陆后,进入个人页面,显示收藏夹、评论、退出、返回首页等元素,如图所示:4.4 评论新闻评论区域显示文本输入框(输入评论内容),发表评论的按钮,之前评论的评论人、内容、发表时间、ip地址表单等,如图所示:4.5 收藏新闻在新闻显示页面的右上角,设计了“加入收藏”的按钮,单击该按钮即会把该新闻加入到用户个人收藏中,可在用户个人页面中对其进行访问,如图所示:4.6 管理员登录在主页的右下角设置了“进入后台”的标签,单击该标签进入到管理员登陆的页面,如图所示:4.7 更改用户管理员登陆后,进入到管理员操作页面,单击“编辑、修改用户”标签,显示所有用户的信息,如图所示:单击某用户右侧的“编辑”标签,即可编辑该用户的信息,如用户名、真实姓名、注册人身份、密码等,如图所示:4.8 添加新闻在管理员操作界面,单击“添加新闻”标签,即可进入添加新闻的页面,首先选择所要添加新闻的所属类别,如图所示:源、发表时间等,如图所示:4.9 检索新闻在新闻类别页面,在输入框中输入查询的内容,单击“搜索”按钮即可显示搜索结果,如图所示:4.9 RSS订阅在主页单击右下角的RSS标识或者使用浏览器的RSS工具,即可进入RSS界面,在该界面中显示RSS新闻的标题、内容概要、链接等信息,选择“订阅该源”即可订阅本系统的RSS源,如图所示:五、心得体会1. 构架使运行一些很平常的任务如表单的提交客户端的身份验证、分布系统和网站配置变得非常简单。