辽宁职业学院毕业论文
(1)代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。
(2)代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。 2.3 B/S架构
B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S(C/S(Client/Server,客户/服务器)方式的网络计算模式,1、服务器负责管理数据库的访问,并对客户机/服务器网络结构中的数据库安全层加锁,进行保护;2、客户机负责与用户的交互,收集用户信息,通过网络向服务器发送请求。3、C/S模式中,资源明显不对等,是一种“胖客户机(fat client)”或“瘦服务器(thin server)”结构。4、客户程序(前台程序)在客户机上运行,数据库服务程序(后台程序)在应用服务器上运行)结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓3-tier结构。B/S结构利用不断成熟和普及的浏览器技术实现原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。这种结构更成为当今应用软件的首选体系结构。
B/S 模式的优点:
(1)具有分布性特点,可以随时随地进行查询、浏览等业务处理。 (2)业务扩展简单方便,通过增加网页即可增加服务器功能。 (3)维护简单方便,只需要改变网页,即可实现所有用户的同步更新。 (4)开发简单,共享性强。 B/S 模式的缺点 :
(1)个性化特点明显降低,无法实现具有个性化的功能要求。 (个性化的要求取决以软件框架,而非架构,分享B/S软件就蛮灵活) (2)操作是以鼠标为最基本的操作方式,无法满足快速操作的要求。 (如果辅助于插件,照样可以用键盘快速操作 ) (3)页面动态刷新,响应速度明显降低。 (分享软件用分页保证响应速度稳定)
(4)功能弱化,难以实现传统模式下的特殊功能要求。 (技术问题,用微软C#或java怎么会不能解决任何要求呢)
9
辽宁职业学院毕业论文
2.4 数据库技术
关系型数据库(Relation Database)是若干个依照关系模型设计的数据表的集合。也就是说,关系数据库是由若干个完成关系模型设计的二维表组成的。
关系数据库由于以具有与数学方法相一致的关系模型设计的数据表为基本文件,不但每个数据表之间具有独立性,而且若干个数据表之间又具有相关性,这一特点使其具有极大的优越性,并能得以迅速普及。[8]关系数据库有以下特点:
(1)以面向系统的观点组织数据,使数据具有最小的冗余度,支持复杂的数据结构;
(2)具有高度的数据和程序的独立性,用户的应用程序与数据的逻辑结构,以及数据的物理存储方式无关;
(3)由于数据具有共享性,使数据库中的数据能为多个用户服务;
(4)关系数据库允许多个用户同时访问,同时提供了各种控制功能,保证数据的安全性、完整性和并发性控制。安全性控制可防止未经允许的用户存取数据;完整性控制可保证数据的正确性、有效性和相容性;并发性控制可防止多用户并发访问数据时由于相干扰而产生的数据不一致。
由于本系统涉及到许多数据的处理,这就需要有一个强大的后台数据库管理系统支持.目前主要有:Access,FoxPro,Excel,Sybase,Oracle,Informix,SQL Server等,其中网络型的SQL Server, Oracle产品安全性远远高于桌面型的Access,FoxPro等数据库。
本系统采用的是微软公司的SQL Server 2005.原因如下:第一,SQL Server与Windows 2005 Server服务器紧密集成,而Windows 2005 Server服务器具有很好的安全性,能够排除所有未经授权的非法用户的访问,确保了SQL Server 2005服务器的安全性,符合系统对安全性的要求;第二,用户可以使用Web浏览器查询存储在SQL Server 2005数据库中的数据,符合系统远程访问数据库的要求.第三,容量庞大,每个数据库中可创建多达20万个数据表,数据表中的记录的行数只受服务器硬盘空间的限制,符合系统的考题数目较多的要求。[9]
本网站使用VS2005作为开发环境,嵌套C#语言的 ASP.NET作为编程环境,SQL Server是数据库环境。
Microsoft? SQL Server? 2005(以下简称mssql2005),是微软公司在SQLSERVER7的基础上开发出来的一套数据库管理系统。它是一种大型的关系型的数据库, 扩展了 Microsoft SQL Server 7.0 版的性能、可靠性、质量和易用性。[10]mssql2005 增加了几种新的功能,由此成为大规模联机事务处理 (OLTP)、数据仓库和电子商务应用程序的优秀数据库平台。
MSSQL2005提供了XML支持,并且增强了数据处理能力。它主要包含了三个组件: 服务器组件:SQLSERVER数据库引擎、代理程序、搜索服务和分布式事务处理协调
10
辽宁职业学院毕业论文
器。
通信组件:本地通信、网络通信。
管理工具:企业管理器与SQL查询分析器。
SQLServer2005能够满足今天的商业环境要求不同类型的数据库解决方案。它一种应用广泛的数据库管理系统,具有许多显著的优点:易用性、适合分布式组织的可伸缩性、用于决策支持的数据仓库功能、与许多其他服务器软件紧密关联的集成性、良好的性价比等。性能、可伸缩性及可靠性是基本要求,而进入市场时间也非常关键。除这些核心企业品质外,SQLServer2005还为您的数据管理与分析带来了灵活性,允许单位在快速变化的环境中从容响应,从而获得竞争优势。从数据管理和分析角度看,将原始数
[11]
据转化为商业智能和充分利用Web带来的机会非常重要。作为一个完备的数据库和数
据分析包,SQLServer2005为快速开发新一代企业级商业化的应用程序、为企业赢得核心竞争优势打开了胜利之门。作为重要的基准测试可伸缩性和速度快的记录保持者,SQLServer2005是一个具备完全Web支持的数据库产品。
11
辽宁职业学院毕业论文
第3章 论坛系统需求分析
3.1 系统功能需求
本论坛具备一般论坛的功能,提供一个简单实用的学生论坛管理系统。具体的功能模块如下所示:
(1) 注册登录。参与论坛的人注册自己的用户名及个人信息(详细一点),拥有论坛中的身份,可以获得更多的权限。
(2)划分板块浏览帖子。随着帖子数量的增多,话题相同或类似的帖子聚集在一起,引出了论坛系统新的扩展功能,即分板块浏览,属于同一板块的帖子讨论相同的话题。这样就使得对某一话题感兴趣的用户不会被其他帖子干扰,也有利于相同兴趣的用户互相讨论,不易跑题。
(3) 编辑帖子。发帖回帖的用户,如果需要修改更新自己发表的帖子内容,就引出了编辑帖子内容的这个扩展功能 ,提供给用户更新自己发言的选择。对于论坛管理员,可以编辑任何帖子的内容,有利于论坛的文明建设。
(4) 删除帖子。如果用户发表了不符合论坛规则的帖子,则需要管理员删除这些帖子,这就引出了删除帖子的扩展功能。
(5) 转移帖子。论坛划分了板块,如果帖子内容不属于所在板块的关注话题,管理员可以选择将此帖移动到所属话题的板块中去,这就引出了移动帖子的扩展功能,这个功能是随着板块功能的出现而出现的,板块将帖子进行了分组,从而提出了随话题移动帖子的要求。
(6) 置顶帖子。帖子一般是根据发表及回复时间倒序排列的,这样先发的帖子慢慢就排到后面,管理员如果需要强调某些帖子重要,有必看性,就要打乱默认的排列顺序,将这些帖子放在列表的最前端,不再按照时间进行顺序的变化,但是还要保证其他帖子按照时间变化顺序进行排序,这就引出了置顶帖子的扩展功能。
(7) 指定精华帖。如果管理员认为某个帖子的内容非常好,可以打上标记,推荐给看帖的用户,这就引出了指定精华帖的扩展功能。用户可以选择只看打上标记的精华帖。
(8)论坛板块管理功能。论坛板块需要先创建,才能被使用,管理员还可以修改板块的相关信息,因此管理板块是管理员使用的扩展功能。
(9) 设置参数。论坛一般有一些初始化信息,比如每页显示帖子数量等参数信息,管理员可以在后台界面自行设置。
(10) 管理用户。管理员可以对论坛的注册用户进行管理,直接添加用户,赋予相关权限,也可以修改已注册用户的权限,对于违规用户可以删除,这个功能便于管理员对论坛用户的管理。
12
辽宁职业学院毕业论文
3.2 系统需求分析
要设计一个一个论坛,首先要分析论坛里需要那些内容,以及各种内容之间的关系。 首先列出论坛常用的名词:用户、版面、公共信息、帖子、主题、积分、称号、版主、注册信息、管理员、系统参数。
对于以上名词可以精简。主题是帖子的一个特例、积分和称号是用户的一个属性、版主是增加了权限的用户,注册信息是用户的具体属性。
所以具体的对象有:用户、版面、公共信息、帖子、管理员、系统参数。 具体的操作包括:管理员对用户、帖子、板块功能的管理;客人和用户的对板块、帖子的浏览;客人的注册之后登录页面;用户的发帖、回帖、搜索等操作。 3.3 性能需求
用户总是强调确定他们的功能、行为或需求——软件让他们做的事情。除此之外,用户对产品如何良好地运转抱有许多期望。这些特性包括:产品的易用程度,执行速度,可靠性等。这些被称为软件质量属性(或质量因素)的特性是系统非功能(也叫非行为)部分的需求。
然而,质量属性是很难定义的,并且他们经常造成开发者设计的产品和客户满意的产品之间的差异。就像 Robert Charette(1990)指出的那样:“真正的现实系统中,在决定系统的成功或失败的因素中,满足非功能需求往往比满足功能需求更为重要”。优秀的软件产品反映了这些竞争性质量特性的优化平衡。
软件质量属性包括: 对用户最重要的属性:
1.有效性(availability):有效性指的是再预定的启动时间中,系统真正可用并且完全运行时间所占的百分比。
2.高效性(efficiency):高效性是用来衡量系统如何优化处理器、磁盘或通信的,如果系统用完了所有可用的资源,那么用户遇到的将是性能下降,这是效率降低的一个表现。
3.灵活性(flexibility):灵活性表明了在产品中增加新功能时所需工作量的大小。
4.完整性(integrity):完整性(安全性)主要涉及;防止非法访问系统功能、防止数据丢失、防止病毒入侵并防止私人数据进入系统。
5.互操作性(interoperability):互操作性表明了产品与其它系统交互数据和服务的难易程度。
6.可靠性(reliability):可靠性是软件无故障执行一段时间的概率。
7.健壮性(robustness):健壮性指的是当系统或者其组成部分遇到非法输入数据、
13