B/S软件模式(共11篇)
B/S软件模式 篇1
摘要:利用C/S和B/S的混合开发模式开发了一套集旅游气象、医疗气象、交通气象、沙疗气象于一体的气象服务应用系统, 对开发工具、需求分析、总体框架、设计实现等方面进行了阐述, 以期对探索气象业务应用的多层开发提供参考。
关键词:C/S,B/S,混合开发模式,气象服务软件,应用
C/S和B/S是当今世界开发模式技术架构的2个主流技术。C/S是美国Borland公司最早开发, B/S是微软公司研发。C/S (Client/Server) 即客户机/服务器结构, B/S (Browser Server) 即浏览器/服务器结构, B/S目前在通信、管理、OA等很多行业应用广泛。宏观上的区别在于, Client/Server是建立在局域网的基础上的, Browser/Server是建立在广域网的基础上的。微观上, 从用户的角度来说, B/S的最大优点在于使用方便, 不需要安装任何客户端软件, 上网即可操作。就好像人们每天使用的搜索引擎一样, 简单好用。从开发的角度上讲, B/S利用了不断成熟的WWW浏览器技术等, 结合浏览器的多种Script语言如VBScript、JavaScript、ActiveX技术, 通过通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能[1,2,3,4,5,6]。以山东省茌平县气象局实际开发、投入业务试运行的旅游气象服务系统为实例, 初步探讨了基于C/S与B/S的混合开发模式在气象应用软件中的应用方式和方法。
1 开发工具简介
1.1 Delphi
Delphi是Borland公司研制的新一代可视化开发工具, 可在Windows 9x、Windows NT、Windows XP等环境下使用。目前, Delphi也可以在Linux平台上开发应用, 其在Linux上的对应产品为Kylix。Delphi采用了弹性可重复利用的、完整的面向对象程序语言 (Object-Oriented Language, OOL) ObjectPascal和基于部件的开发结构框架。它提供了逾500个可供使用的构件, 利用这些部件, 开发人员可以使用RAD (Rapid Application Develop, 快速应用开发) 快速地构造出应用系统。开发人员也可以根据自己的需要修改部件或用Delphi本身编写自己的部件, 该系统的Client (客户端) 就是以Delphi为开发工具。
1.2 SQL Server
SQL Server是一个关系数据库管理系统, 它最初是由Microsoft、Sybase和Ashton-Tate等3家公司共同开发的。于1988年推出了第1个OS/2版本, 在Windows NT推出后, Microsoft与Sybase在SQL Server的开发上就分道扬镳了。Microsoft将SQL Server移植到Windows NT系统上, 专注于开发推广SQL Server的Windows NT版本。Sybase则较专注于SQL Server在Unix操作系统上的应用。Microsoft SQL Server是一个分布式的关系型数据库管理系统, 具有客户机/服务器体系结构, 采用了Transact-SQL的SQL语言在客户机与服务器间传递客户机的请求与服务器的处理结果。本系统中后台数据库以SQL Server 2000构建。
1.3 Web服务
Web服务器也称为WWW (World Wide Web) 服务器, 主要功能是提供网上信息浏览服务。目前, 在Unix和Linux平台下使用最广泛的免费HTTP服务器是W3C、NCSA和Apache服务器, 而Windows平台NT/2000/2003使用IIS的Web服务器。该系统采用的是Windows 2000+IIS构建Web服务, 开发工具采用Dreamweaver+ASP。
2 需求分析
2.1 系统应具备的基本功能
一是用户管理。增加、删除用户和修改用户个人信息以及用户登录管理。二是预报制作。分为旅游气象、医疗气象、交通气象、沙疗气象4个制作模块, 每个模块建立相应的模式库和规则库, 根据实时读取的MICAPS客观数据和输入主观影响因子生成预报结论。三是预报发布。生成的预报结论可供内网121、农网、影视制作、政府信息网以及外网如旅游局、交通局、医院、政府决策部门等浏览使用。四是安全管理。主要包括用户级安全及网络服务级安全。除了实现上述功能以外, 系统还应该具有友好、简洁的界面及安全性高、稳定性强的特点。
2.2 系统需要解决的主要问题及方法
一是预报制作模块应能实时读取MICAPS客观数据和预报人员手工输入主观影响因子, 然后根据相应的模式库和规则库来生成预报结论, 生成的预报结论存入数据服务器以供浏览、调用。这就要求预报制作端要具备一定的计算能力并能对用户安全性进行很好地控制。C/S结构一般面向相对固定的用户群, 对信息安全的控制能力很强, 一般高度机密的信息系统适宜采用C/S结构。因此, 该系统预报制作采用的是C/S 2层结构 (图1) , Client端只安装在预报员工作用机上。二是预报发布模块供内、外网不同应用领域的多个用户调用。B/S结构最大的优点就是可以在任何地方进行操作而无需安装任何专门的软件。只要有1台能上网的电脑就能使用, 客户端零维护, 因此该系统中的预报发布采用的是B/S。Browser端主要是121、农网、影视制作, 进一步可拓展到旅游局、交通局、医院、政府决策部门等。
3 总体框架
该系统采用B/S与C/S混合开发的模式 (图2) , Client端以Delphi为开发工具, 主要完成预报制作功能 (图3) , 预报员登录后, 输入各影响因子, Client端按预报规则库和模型库计算出各预报项目的等级并将结果存入后台的SQL Server数据库中。Brower端通过IE等网页浏览器访问IIS服务器上的ASP程序来实现预报发布。
C/S (Client/Server) 结构, 即人们熟知的客户机和服务器结构。它属于一种软件系统体系结构, 通过它可以充分利用两端硬件环境的优势, 将任务合理分配到Client端和Server端来实现, 降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的2层结构 (图1) 。
B/S (Browser/Server) 结构即浏览器和服务器结构。它是随着Internet技术的兴起, 对C/S结构的一种变化或者改进的结构。在这种结构下, 用户工作界面是通过WWW浏览器来实现, 极少部分事务逻辑在前端 (Browser) 实现, 但是主要事务逻辑在服务器端 (Server) 实现, 形成所谓3层3-Tier结构。这样就大大简化了客户端电脑载荷, 减轻了系统维护与升级的成本和工作量, 降低了用户的总体成本 (TCO) 。以目前的技术看, 局域网建立B/S结构的网络应用, 并通过Internet/Intranet模式下数据库应用, 相对易于把握、成本也是较低的。它是一次性到位的开发, 能实现不同的人员、地点、接入方式 (比如LAN、WAN、Internet/Intranet等) 访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限, 服务器数据库也很安全。特别是在JAVA这样的跨平台语言出现之后, B/S架构管理软件更加方便、快捷、高效。
4 设计实现
4.1 后台数据库设计
后台数据库使用SQL Server, 主要有USERS (用户表) 、YBRESULT (预报结果表) 、LEVELTIP (预报分级提示表) 。LEVELTIP是固定表, 主要存放旅游气象、医疗气象、交通气象、沙疗气象不同分级标准所对应的预报用语。YBRESULT是更新表, 存放每天各预报项目的预报等级, 这样在进行SQL查询时, 以YBRESULT表中的预报等级去查LEVELTIP表中的相对应的预报用语, 可以减少数据冗余。USERS是用户表, 主要存放用户名和密码, 其中密码是经MD5加密算法加密。
4.2 C/S设计实现
C/S结构软件分为客户机和服务器2层, 客户机不但是输入、输出设备, 而且有一定的数据处理和逻辑计算能力, 通过把应用软件的计算和数据合理地分配在客户机和服务器两端, 可以有效地降低网络通信量和服务器运算量。由于服务器连接个数和数据通信量的限制, 这种结构适于在用户数目不多的局域网内使用, 如在该系统中, Client只安装在预报员用机上。该系统采用的是Two-Tier (2层) C/S结构 (图3) , Client端以Delphi为开发工具。Client端旅游气象预报制作界面如图4所示。
通过人机交互读取MICAPS客观数据以及手工输入各主观影响因子, 按预报规则库和模型库作相应的业务逻辑处理, 并将处理结果存入后台Server端的SQL Server数据库中。Delphi与SQL Serve通过ADO (ActiveX Data Objects, ActiveX数据对象) 连接。连接代码如下:
函数参数ip、user、psw、libname分别为后台服务器地址、数据库连接用户名、密码以及库名。若连接成功则返回true, 不成功返回false。
4.3 B/S设计实现
B/S (浏览器/服务器模式) 是随着Internet技术的兴起, 对C/S结构的一种改进。在这种结构下, 软件应用的业务逻辑完全在应用服务器端实现, 用户表现完全在Web服务器实现, 客户端只需要浏览器即可进行业务处理, 是一种全新的软件系统构造技术。该系统预报结果发布就采用B/S方式。可供内网121、农网、影视制作、政府信息网以及外网如旅游局、交通局、医院、政府决策部门等浏览使用。Browser端预报发布界面如图5所示。
数据库连接由conn.asp来实现。其内容如下:
在使用数据库的页面添加:语句, 再建立服务端数据对象, 即可连接数据库。ASP各页面间的参数传递使用Request和session来实现。
5 结语
该系统C/S结构只实现2层开发, 客户端向数据库服务器发送SQL请求, 数据库服务响应客户端请求, 并返回数据或结果。而且是以“胖客户机”方式来实现的, 客户端实现了用户接口和应用逻辑部分, 服务器端实现数据访问逻辑部分, 这只适用于相对简单、数据访问量不大的情况。一旦应用变得复杂、宠大, 数据的访问量增大, 会带来应用难以维护、网络性能急剧降低等问题。解决的方法就是再增加1个应用服务器, 形成Client圮Application Server (应用服务器) 圮Database Server (数据服务器) 的3层结构。
参考文献
[1]雷震甲.网络工程师教程[M].北京:清华大学出版社, 2004.
[2]陈平, 褚华.软件设计师教程[M].北京:清华大学出版社, 2004.
[3]谢希仁.计算机网络[M].4版.北京:电子工业出版社, 2003.
[4]罗晓沛, 侯炳辉.系统分析师教程[M].北京:清华大学出版社, 2004.
[5]启明工作室.Delphi+SQL Server数据库应用系统开发与实例[M].北京:人民邮电出版社, 2005.
[6]齐文海.ASP与SQL Server站点开发实用教程[M].北京:机械工业出版社, 2005.
B/S软件模式 篇2
基于B/S模式的大学英语网络课程开发初探
随着现代网络技术的飞速发展,越来越多的网络课程得到开发和建设.文章探讨了大学英语网络课程开发的理论和原则及其开发设计流程,浅述了开发大学英语网络课程的.一些思考和体会.
作 者:李海刚 作者单位:郑州航空工业管理学院外语系,450015刊 名:中国科技信息英文刊名:CHINA SCIENCE AND TECHNOLOGY INFORMATION年,卷(期):“”(20)分类号:H3关键词:B/S模式 大学英语 网络课程
B/S模式的教学评价手段的应用 篇3
一、需求分析
1.系统目标
利用教学评价系统,可促进教师教学质量评价工作的规范化、程序化,提高工作效率,保证评价工作的质量。以数据库管理系统为核心,以计算机网络为平台,向校内各部门、各教职工提供方便、及时、准确的信息查询,实现数据共享,满足学校各种管理的需要。
2.用例建模
根据教学质量评价系统的不同角色,可以确定5个活动者:教务管理员、学生、监评教师、普通教师和领导。
教务管理员:是教务科人员,负责组织和管理教学评价活动的人员。
领导:学校中层以上干部,可查询所有教师的评价成绩。
学生:参与评教的学生。一般是整个教学班的学生一起参与教学评价。
监评教师:非本班的科任教师,且要求至少两位教师。
普通教师:被评价的普通教师(非领导),可以查询自己的评价结果。
3.构建教师教学质量评价指标体系
以学校现行的评价指标为基础,咨询相关专家的意见,深入讨论后进行了部分调整。在原有ABCD四种等级的基础上,增加每项评价项目各级别的权重分。考虑到不同类型的课程,教学评价的内容有所不同。我们将被评价的教师分为四类:理论教师、辅导教师、体育教师和班主任。所以有四种不同的评价指标。
二、系统设计
1.系统架构
整个系统采用Browser /Server的体系结构。
2.系统功能设计
根据系统的需求,结合以往开发经验,将系统主要分为前端、后端两大管理系统,包括8大功能模块。其中前端管理系统含有:用户信息录入模块,包括了学生用户和教师用户注册登录验证录子系统;评价现场控制模块,包括本次评价的密码的设置和评价的启动与停止的控制;评价数据采集模块,包括了学生的定量评价和定性评价的数据采集;查询模块,包括普通教师与领导的查询子系统。后端管理系统含有:评价码表录入模块,包括评价轮次、参数的设置和监评教师指派;用户管理模块,包括学生和教师的信息管理,班级信息的输入与管理,管理员的信息修改;评价体系管理模块,包括评价指标内容管理和评价指标权重管理;评价数据汇总模块,包括评价数据查询和评价成绩统计。
3.数据库的分析与设计
本次开发的数据库包括3个方面。用户注册数据:包括学生资料表和教师资料表。系统初始化数据:包括指标体系及权重库表、评价课程信息表、班级资料表、评价课程类型表和评价轮次表。评价结果采集:包括参评学生数据表和定量评价记录表、定性评价记录表。本系统将使用SQL Server作为数据库管理系统。
三、系统的实现
系统的实现主要包括技术线路和系统的关键技术两大方面。
1.技术线路
开发工具,本系统选用Macromedia公司的Dreamweaver软件和采用ASP+SQL来开发。数据库采用Microsoft SQL Server作为后台数据库。
2.系统主要功能的实现
(1)评价数据采集系统。以学生评价数据采集为例。学生注册后才可登陆。学生登陆时要求输入姓名、学生密码和本次评价密码。其中本班评价密码是由监评教师查询并设置。本班评价结束后由监评教师修改,学生则无法再进行评价。以此来控制评价的开始和结束。对评价数据同时采集ABCD等级和每个选择项的权重分。
本系统自动生成评价教师列表,并按课程类型分类。评价后用不同的背景色表示,以示区别。如果中途退出,重新进入后可据背景色为依据继续后面的评价。
(2)定性评价小结系统。对学生评价中的定量评价数据的采集只是数据采集的一半,还要实现由监评教师对学生所进行定性评价进行小结。
(3)评价结果查询系统。对于领导和普通教师所提供的查询功能是不同的。领导的可以查询全部教师的评价结果,而普通教师只能查询自己的评价结果。
(4)评价结果汇总系统。为方便教务管理人员对整个教学评价进行汇总分析,本系统还设计了评价结果汇总的功能。管理员进入后台管理页面后,点击按班进行统计。也可按教师进行汇总统计。可直观地比较出不同班级、不同教师和不同课程之间的教学质量的差别。
自2007年以来,本系统经过四次教学评价活动的检验。在使用期间不断加以改进,包括完善评价指标体系和汇总统、计功能等。通过新教学评价系统的准确性、公正性和高效率提高教学检查的效果,更快、更准确、更直观地把评价结果反馈给领导和教师,促进教学质量的提高。
B/S软件模式 篇4
随着计算机应用和计算机网络的发展, Client/Server模式 (客户机/服务器模式, 简称C/S模式) 逐渐流行起来, 用来管理各种各样的信息资源。早期的C/S模式是两层结构, 第一层结构在客户机的系统上结合了业务逻辑和形式逻辑, 前端的可执行代码由菜单、按钮、SQL语句、GUI窗体流和数据验证等元素组成;第二层结构通过计算机网络结合数据库 (如Oracle、Sybase、Informix等数据库系统) 服务器, 后端的数据内容包括数据表、触发器、安全策略、引用一致性定义等元素。它将多个网络应用的用户交互界面处理程序与数据库的访问及处理分离, 客户端与服务器之间通过消息传递机制来进行对话, 先由客户端先将请求发送给服务器, 服务器接收到请求后进行相应的, 再将处理后的信息传递给客户端。C/S模式的结构图如图1所示。
C/S结构的优点主要体现在以下几个方面:
(1) C/S结构合理地将任务分配到Client (客户) 端和Server (服务器) 端, 充分地利用两端硬件环境的优势, 减少了整个软件系统的通讯开销。
(2) C/S结构具有很强的交互性, 在客户端的电脑上有一套完成的应用程序, 可以在子程序中自由切换, 在线帮助和出错提示也有强大的功能。
(3) C/S结构采用点对点的结构, 采用局域网中安全性较好的协议 (如:Net BEUI协议等) , 即保证了数据的完整性约束, 又保证了数据的安全。
(4) C/S结构到目前为止已经非常成熟, 有大量的开发工具支持。
(5) C/S结构要求各种应用必须通过前羰的应用程序完成, 系统安全可靠。
随着计算机网络规模的不断扩大, 应用程序复杂程度不断提高, C/S模式的缺点也逐渐显露出来, 这些缺点具体体现在以下几个方面:
(1) 一但客户端与服务器建立的连接后, 这个连接就会保持, 直到客户端主动放弃时连接才被销毁, 这样就会造成可建立的服务数目有限, 进而使用户数目受到限制。
(2) 客户端即要完成用户数据的交互及表示, 又要处理应用程序与数据的交互, 用户的界面必须要与应用逻辑在统一平台上, 这样就会造成软件系统的可伸缩性差, 对数据的管理不够灵活, 软件系统的维护和升级费用高。
(3) 客户端上的程序的代码重用机会少, 客户端需要处理数据, 如果这些逻辑需求发生变化, 则每上客户端上的程序都要进行相应的修改。
(4) 客户端上的应用程序庞大, 软件需要特定的开发平台决定, 造成了客户端软件系统跨平台不理想。
C/S结构一般建立在局域网中, 再通过特定的服务器提供与英特网的连接和数据交换服务, 面向固定的用户群, 有较强的控制能力, 高度机密的软件系统采用C/S结构比较合适。
2 B/S体系结构
随着IT产业的迅速发展, C/S体系结构暴露出了许多不足, 客户端程序过于庞大、客户需求千变万化等问题尤为突出。在止其间, Internet技术不断发展, 基于Web (HTTP、HTML) 的发布和检索技术, 导致了软件体系结构从C/S结构向灵活的多层分布式结构演化, 这种新型的多层分布式结构就是B/S (Browser/Server, 即浏览器/服务器) 结构。
B/S结构由Browser (浏览器) 和Server (服务器, 主要是Web服务器) 组成。客户机与服务器通常都不在同一个局域网中, 数据库服务器与应用服务器往往在高速局域网, 应用程序和数据都放在服务器上, 浏览器通过下载服务器上的程序得到动态扩展。B/S结构是三层体系结构, 用户首先通过浏览器 (如IE、Firefox等) 向网络上的服务器 (如Web服务器) 发出请求, 服务器如果接收到了浏览器的请求, 就会对这些请求进行处理 (如数据的加工、结果的返回以及动态网页的生成等工作都由Web服务器完成) , 再将用户所需要的信息传送到浏览器上。B/S结构的运行模式, 简化了客户机的工作, 客户机上只需要配置少量的相关软件, 更多的工作负担是由服务器来承受, 这样就减轻了客户机的压力, 更适合千变万化的客户需求。B/S结构图2所示:
B/S结构的优点主要体现在以下几个方面:
(1) B/S结构容易实现跨平台工作, 各种平台上的用户均可通过浏览器访问及获取所需的信息。
(2) 在B/S结构中, 用户只需在客户机安装浏览器就可以有交互界面, 系统的升级和维护工作大部分都在服务器上进行, 在客户端上极少需要甚至不需要进行改动, 这样大大降低了开发及维护成本。
(3) 浏览器在下Web服务器交互时采用的协议主要是HTTP协议, 该协议是无连接协议, 浏览器只在有请求时才与Web服务器连接, 当浏览器获取到所需结果后马上会结束连接, 这样服务器可以同时为几千、几万甚至更大数量的并发请求服务。
(4) 当应用服务器无法满足客户的需求量, 可以通过增加应用服务器的数目, 由多台应用服务器同时为终端客户服务, 实现负载均衡, 消除数据的瓶颈。
(5) 因为B/S结构中, 服务器接受用户请求后会将结果一次返回, B/S三层结构消耗的时间大大小于C/S二层结构消耗的时间。
B/S体系结构经过多年的应用, 也暴露出许多不足的地方, 具体表现在以下几个方面:
(1) B/S体系结构中虽然可以用Java、Active X等技术开发应用脚本, 但如果是开发复杂的应用程序, 这些技术相对没有C/S的一系列开发工具成熟。
(2) 客户端的浏览器大多是为了进行Web浏览而设计开发的, 当B/S体系结构应用于非Web系统时, 许多功能实现起来比较困难。
(3) 数据库的客户端实际上是Web服务器成为对数据库的唯一的客户, 所有对数据库的连接及信息传递都是通过Web服务器来实现, 这样Web服务器就要同时处理客户的请求以及数据库的连接, 当访问量大时, Web服务器端负载过重。
(4) 对于管理者来说, 采用浏览器方式进行系统的维护和管理是非常不方便与不安全的。
(5) 由于源代码开放性, 使得商业规则很容易暴露, 而商业规则对应用程序来说则是非常重要的。
3 C/S与B/S混合的体系结构
通过前面的分析, 可知C/S体系结构并非一无是处, B/S体系结构也并不是十全十美, 如果将这两种体系结构结合起来, 就能使它们的优劣互补, 形成C/S与B/S混合的软件体系结构。在这种体系结构中, 一些能够满足大多数客户请求的信息采用B/S结构, 这些信息用Web服务器进行处理, 如数据库管理维护这些交互性强、安全性要求高、数据查询灵活、数据处理量大, 管理员之类的少数人使用的功能应用采用C/S结构。C/S与B/S混合的软件体系结构图3所示。
以学生管理系统为例, 教学管理系统主要分为系统后台管理模块、学籍信息管理模块、成绩管理模块、信息发布模块、查询模块等子系统组成。系统的硬件平台主要有:客户机、Web服务器及校园网等资源;系统的软件平台主要有:
(1) C/S结构模块部分:选用C#开发的客户端及SQL Server数据库管理工具。
(2) B/S结构模块部分:选用IE浏览器的客户机、选用IIS及ASP.Net开发的Web服务器及选用SQL Server数据库管理工具。工作时, 客户机的浏览器向Web服务器发出请求, Web服务器将请求交给IIS服务器, IIS接受请求并调用ASP程序, ASP程序通过ADO接口与SQL Server数据库连接并进行数据库操作, 数据库将处理后的数据返回给Web服务器, Web服务器通过ASP程序处理后再将操作结果以HTML文本的形式发送给客户机的浏览器。对系统进行管理时, 客户机通过C/S结构中的ODBC接口向SQL服务器发送SQL语句请求, SQL数据库服务器根据SQL语句生成所需的数据结果集, 并将这些结果信息传递给客户机相关的C#程序, 并生成管理者所需的结果界面。
在C/S与B/S混合的软件体系结构中, 信息发布采用了B/S结构, 这样保证了客户机软件简单通用, 客户机上的软件可以统一采用WWW浏览器, 由于WWW浏览器有固定的标准, 因此其可以在所有的平台上完成相应的工作;数据库管理采用了C/S结构, 这部分只涉及到数据更新与系统维护等特定的工作, 可在专用的客户机上安装相关的客户端软件, 并且在客户机上可以构造非常复杂的应用程序, 这样只需要维护少量的客户端, 解决了完全采用C/S结构带来的客户端维护及更新工作量大等缺点, 从安全角度讲, 达到封装源代码, 保护数据的目的。。这样便充分发挥了C/S与B/S体系结构的优势, 进而弥补了二者不足, 即充分考虑用户的方便与利益, 又保证了系统管理者查询、维护与更新操作的简单灵活。
如果原有的系统采用的是C/S体系结构, 我们也可以非常容易地升级到这种C/S与B/S混合的软件体系结构, 只需要开发用于发布的WWW客户机界面, 保留原有C/S结构的某些子系统用于管理与维护。
4 结束语
C/S与B/S混合的软件体系结构, 充分发挥了两种模式各自的优点, 保证了系统的可实现性和安全性, 简化了客户端, 即满足了不同用户的需求, 又使系统便于维护。在软件开发中, 只要找到C/S结构与B/S结构的契合点, 就能使软件系统在具备优良的性能。
摘要:无论是C/S模式的体系结构还是B/S的体系结构, 都无法满足当前越来越复杂的软件设计与开发。我们不妨将C/S与B/S这两种结构结合起来, 充分发挥各自的优势, 使开发出来的软件具备优良的性能。
关键词:C/S,B/S,C/S结合B/S
参考文献
[1]王丽平.基于C/S与B/S混合体系结构的教务管理系统设计[J];科技情报开发与经济, 2008.
[2]王伟伟.软件体系结构模式探析[J].科技传播, 2011.
[3]黄沛.基于B/S体系结构以及Active X技术的计算机应用系统开发[J].技术与市场, 2008.
[4]李云云.浅析B/S和C/S体系结构[J].科学之友, 2011.
B/S软件模式 篇5
【摘要】随着计算机网络的普及,信息技术的不断发展,基于B/S模式的网络教学平台已经得到愈来愈多教育者的重视,被各类学校广泛应用到实际教学中。本文以思想道德修养与法律基础课为例,阐述网络教学平台概念,对网络教学平台的构建和应用进行了讲解,展望了网络教育平台的前景和发展。
【关键词】B/S模式;网络教学平台;思想道德修养与法律基础课
【中图分类号】TP311.52
在21世纪,信息网络技术得到飞速的发展,Internet教育模式的基础也被不断的夯实。B/S模式的网络教学平台具有较低的开发和维护成本、操作界面简单、信息共享度高等优点,得到各大学校的广泛重视。这类网络教学平台的广泛应用对学校而言节省教学成本,而且对学生积极性的增加、发散思维的培养有很大的帮助,从而取得高效率的教学效果。
1.网络教学平台概述
网络教学,是一种以信息网络技术为基础而开展的、相对虚拟的教学活动;网络教学平台,是以互联网为基础,为网络教学提供全面支持服务的软件系统的总称。B/S结构,B代表Browser,浏览器,S代表Server,服务器。所有基于B/S模式的网络教学平台,是以学生为服务中心,根据学生的个人所需,自主的选择教学内容、授课方式、授课教师及授课场所等,具体分为5层:首先是计算机网络硬件支持层;其次是数据库服务器层;第三层是教学工具库,其内容包含授课所需相关课件、学生作业的批改、在线教学实验等;第四层是应用程序层,主要是提供给用户人性化的教学界面;第五层是用户层。
2.网络教学平台的构建
2.1 网络教学平台需求分析
在网络教学平台系统中,需求是基础。使用者的针对性需求可以相应的提升教学质量。根据用户要求软件系统的功能和限制,合理的开发适合的系统,总体功能需求是融合教、学、管三方便的综合环境,教学资源得到有效的共享,从而达到理想的充分发挥师生间信息交互效果。
2.2 网络教学平台工作实施
通过网络教学平台,把信息网络技术与学习理论有机的融合起来,达到学生高效的掌握知识的目的。就以思想道德修养与法律基础一课作为例子,通过本课程的教授,已达到培养大学生良好的思想道德素质和法律素质的目的,这也是进入我国高校的必修政治课程。传统的教学是以教师授课为主,教学任务难以完成,学生难以掌握知识点,从而得不到有效的提高;如果教师能够充分利用网络教学平台,让学生能够主动积极的学习所需的知识,有效地提高学生的学习效率,通过网络平台提供的教学载体浏览器,教师和学生能够在相对开放的平台中进行教学活动,授课的教师能够拥有自由的时间和地点,追踪学生的反馈情况,与此同时学生也能得到最新的教育资料。
(1)系统结构的设计:基于B/S的开放式的网络环境中,网络教学系统可以正常运行,浏览器向内/外部服务器发送请求,获得信息,服务器处理后台的请求,之后将结果传送给用户;
(2)系统功能模块的设计:网络教学平台是由前台教学学习系统和后台教学管理系统两部分模块组成。前台教学学习系统在功能上主要包含以下几点:用户注册登录、课程开发、理论教学、时间教学、练习与测试、讨论答疑、网上交流和参考资料等。后台教学管理系统主要分为人员管理、按章节进行添加的选择题管理、填空题管理、是非题管理以及讨论交流管理等等。
(3)配置用户功能界面:按照教学系统中不同的用户,根据用户各异的需求,设计相应的的权限,当用户登录系统后,系统展现给用户的是不尽相同的功能界面。例如学生能使用作业管理,浏览课程等,但是不能使用使用教学资源、上传作业等功能。
(4)具体案例:思想道德修养与法律基础课在我国的教育界有着十分重要的意义,为满足学生的个性化学习,平台将网络视频功能应用在课堂上,节省了教师板书的时间,提高了效率,以为思想政治内容都是很抽象的,使用网络视频能够使抽象的事物以画面形象生动的展示出来。思想道德修养与法律基础课程由于其教学领域的特出行,理论知识点比较多,我国传统式的教学方法过于鼓噪,系统性的讲解相对有难度,使用网络教学可以让学生主动的参与到学习中,提高学生的积极性,使学生有兴致的去理解,去求知。讨论区设立,能够给学生提供一个课后的回忆及探讨的空间。同时,授课教师还可以通过系统得知学生的学习进度等情况。
2.3网络教学平台工作不足之处
虽然基于B/S模式的网络教学平台有许多明显的优势,但是在实践操作中,其不足之处也日渐显露:教学过程几乎完全脱离粉笔和黑板,少了些教师课堂教学的魅力,教师如果有临时发挥,也不容易在网络课件上增删内容;网络教学系统性不强,上课速度过快,容易导致学生印象不深刻,来不及做笔记,容易遗漏。
雖然这些不足都是真实存在的,但是随着现代网络技术的更新发展,上述的缺点会逐步得到解决。
3.网络教学平台的未来发展
目前各大高校对基于B/S模式的网络教学平台使用的频率不高,有些招生,网上毕业,网上交流探讨等还没有实施,很多功能在实际中没有很好的得到应用,这些随着社会的进步,信息技术的进一步发展,会得到解决。
网络教学只是网络教育中的一个环节,还有许多广阔的教育领域等待我们去开发,去探索,投入更多的精力和时间去研究。
4.总结
基于B/S模式的网络教学平台发展空间巨大,对科学,合理地发挥教育资源的作用,有着极大的意义。虽然现在有些不足之处是难以避免的,但是随着网络的发展,技术的开发,网络教学势必会更加的完善。网络教学平台是一个系统工程,如何更好地结合实际校园资源优势,更方便快捷的增进教师与学生之间的交流,还需要在教学理论和方法上不断的改进。
【参考文献】
[1]周晓新.基于B/S模式的网络教学平台的设计与实现[D].天津师范大学,2009.
B/S软件模式 篇6
随着现代制造业和信息产业的迅速发展,软件技能人才明显不足,特别是初级软件开发人才急剧缺乏。现在开设软件开发课程的学校很多,社会上也有很多类似的商业培训。在这里,我们探究基于B/S结构软件开发技术课堂教学方法。
2 软件开发课程教学中存在的问题
社会各方面对于软件开发人员的培养都付出了很大的努力,但在具体教学中存在诸多问题,具体表现为:1)教学侧重开发工具的讲授。在实际教学中往往变成了开发工具讲授课程,学生在学习完成后缺乏对软件开发的真正掌握,只是熟悉了一门开发工具而已。2)缺乏有效的教学方法。不能结合内容的不同特点采用合适的讲授方法,教学方法单一。3)实践与理论的脱节。侧重理论教学,直观性较差。教学课程的设置也存在各种问题,有的学生甚至没有学过软件工程等前导课程,很难真正培养学生的软件开发能力。实践与理论脱节是目前软件开发教学中存在的主要问题。
3 B/S结构简介
B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓三层结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。
4 探索和改进教学方法
4.1 推行“以学生为主体,教师为主导”的教学模式
传统的教学主要以知识的传授为特征,教师是主动的施教者,是整个教学过程的主体,学生是被动接受者。这种教学模式无法调动学生学习的主动性,无法激发学生的学习兴趣,更无法培养出符合市场需求的高等职业技能型人才。本课程推行“以学生为主体,教师为主导”的教学模式,主要采用的方式有:问题启发式、课堂讨论式等。我们主要采用将一个个问题作为知识的切入点,把相关的知识点溶入到各个问题中去,通过解决问题来学习知识,使学生能明确地掌握对应知识的作用和此类问题的解决方法。
4.2 加强案例教学,培养学生软件开发能力
案例教学往往是对学生专业综合能力的一次大检阅,还可以增强学生的主动性并能将理论应用于实践,效果往往不错。例如,在讲授B/S结构时,由于体系结构是软件系统的高层抽象,软件体系结构的设计是高于程序设计的上层建筑[1],体系结构直接关系着软件系统的成败。要怎么讲解学生才能有兴趣学?本人在教学中采用的案例就是:系统管理人员管理较多的电脑时,怎样才能轻松并且提高效率。假设他需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的。然而B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接专网即可,实现远程维护、升级和共享。所以客户机越来越“瘦”,而服务器越来越“胖”是将来信息化发展的主流方向。这样就给学生留下了“瘦”客户机,“胖”服务器的形象概念,从而更容易掌握B/S架构,达到了良好的教学效果。
4.3 加强实训,提高学生的动手能力
软件开发是一门实用性很强的课程,它既有理论又有实践,既讲方法又讲动手能力。未来学家托夫勒认为[2],社会需培养有个性、有创造能力和开拓精神的人才。要培养有创造性的人才,就要克服目前教育中的单调性和封闭性,充分培养和发挥学生的个性特长和实践能力。针对本门课程的特点,加大实训的力度。一般在每个大的知识后,布置一个综合练习。本门课程有四个大的知识点,在学期中就会有四次大的作业,规定学生在业余时间完成,督促学生掌握每一部分的知识,并运用到具体的环节。所有的内容都学完后,有一个实训周期,要求每个学生根据要求完成一个软件开发的整体设计,把所有的知识都融入其中。通过长期的实践,学生反映效果非常好。
4.4 资源充分共享,教师定期交流
教师的教学课件及有关资料充分共享。教师之间定期交流,将好的教学成果和方法拿出来大家分享。这大大促进了教师水平的共同提高,从而有效的保证本课程教学质量的提高。同时可设置网上辅导答疑平台,促进教师与学生的交流,及时发现不足。
5 结束语
科学的教学方法一定会为学生提供良好的帮助。我们在教学过程中应以学生为主体,教师为主导,采用符合学生认知规律的、科学的教学方法,充分调动学生学习的主动性,同时,努力培养学生自主学习的兴趣,提高学生实际软件开发能力,从而使得软件开发课程的教学质量得到不断地提高。
参考文献
[1]Kruchten P,Obbink H,Stafford J.Special issue on software architecture[J].IEEE Software,2006,23(2):22-30.
B/S软件模式 篇7
1 系统分析与设计
1.1 系统需求分析
1.1.1 系统目标
本软件交易系统是给用户提供一个第三方的交易平台,所以设计的目标包括软件发布、软件求购、软件供应、软件外包等基本的功能。
该系统整体架构采用ASP.NET的B/S三层结构模式,将系统分为用户界面层(表现层),业务逻辑层(功能层)和数据库服务层(数据层)。开发平台采用.NET Framework,有效地降低了系统对客户机的要求,避免了在客户机上分发应用程序与版本控制的困难。
1.1.2 系统现状分析
软件公司、软件开发人员经过多年的项目开发的积累,积累了大量有价值的软件,但由于没有很好的整理,以及产品化销售。使其没有发挥应有价值。而另一方面,随着互联网的迅速发展及普及,社会的各行各业需要利用电脑软件进行工作来提高效率。
软件项目交易平台正在逐步成为一个集丰富的网上内容、活跃的网络商贸社区和大规模的电子商务平台于一身的精彩网站,在满足用户基本需求条件下,根据用户的个性需求,提供更加人性化的服务项目给各类会员。
1.2 系统功能需求分析
软件交易系统包括五大功能模块:用户注册、软件项目外包、软件求购、软件供应、用户交流等模块。该系统可以在可视化的、容易操作和理解界面上对系统进行一些操作。
1.2.1 用户登录
该模块可以嵌入到很多页面中,方便用户即时登录到系统,进行进一步的操作。
1.2.2 软件项目外包
在注册成为软件交易平台会员后即可发布软件外包信息。
1.2.3 软件求购
在注册成为软件交易平台会员后即可发布软件求购信息。
1.2.4 软件供应
在注册成为软件交易平台会员后即可发布软件供应信息。
1.2.5 用户交流
此平台方便每一个用户针对某个项目进行沟通和交互,来了解项目的进展情况。
1.3 系统数据需求分析
复杂的数据山许多基本的数据元素组成,数据结构表示数据元素之间的关系。利用数据字典何以全面准确的定义数据,但是数据字典的缺点是不够形象自观。因此,数据流程图能够很方便的表明整个系统的功能,数据在系统中传输的路径。
需求分析阶段的一个重要而困难的任务是收集将来应用所涉及的数据,所以要在此阶段就要充分考虑到其扩充和改变,使设计易于更改,系统易于扩充。另外,在数据分析阶段,必须强调用户的参与,要与用户保持密切的联系,任何调查研究没有用户的积极参加是寸步难行的。
1.4 系统概要设计
1.4.1 主要功能模块的确定
软件交易平台采用了Browser/Server(B/S)结构,其特点是实现了在线的用户注册,登陆,发布软件信息,管理软件信息等功能。
图1是本系统的网络应用原理示意图。
在系统功能分析的基础上,考虑ASP.NET编程的特点,本系统分为五大功能模块:用户注册、软件项目外包、软件求购、软件供应、用户交流等。图2所示为软件交易平台系统功能结构图。
用户的功能结构图如图3所示。
1.4.5 主要用户页面的确定
本系统界面的设计结合了系统的应用范畴,合理地安排版式,以求达到美观实用的目的。具体的页面如下:
1)系统首页
显示用户注册,登录。
显示项目供求信息和项目分类。
2)用户注册页面
3)供应消息发布页面
4)求购消息发布页面
5)供应消息查看页面
6)求购消息查询页面
7)用户交流页面
1.5 开发平台的设计
本软件交易平台系统使用ASP.NET技术在Visual Studio.NET 2003开发环境下开发实现,以SQL Server 2000作为后台数据库,IIS作为Web服务器,后台数据处理程序用C#编写,后台数据源的连接通过ADO.NET技术实现
2 数据库设计
2.1 数据库需求分析
数据库设计的任务是针对一个给定的应用环境,构造最优的数据库模式建立数据库及其应用系统,使之能有效地收集、存储、操作和管理数据,满足用户的各种需求。是整个数据库应用系统开发过程中的一个重要环节,它具体可分为两个部分:一是概念模型的设计,二是逻辑模型的设计,即表/字段的设计。本系统的主要E-R模型图如图4到图5所示。
软件供应E-R图如图4所示。
消息留言与留言回复E-R图如图5所示。
2.2 数据库的结构设计
根据数据库的需求分析及本系统的特点,建立以下数据库表:留言回复基本信息表,软件供应信息表,软件类型信息表,软件求购信息表,软件外包信息表,消息留言信息表以及用户基本信息表。如留言回复信息表结构如图所示:
留言回复信息表,用来记录用户回复留言的基本的信息。
2.3 存储过程
2.3.1 存储过程简介
简单地说,存储过程是由一些SQL语句和控制语句组成的封装起来的过程。它驻留在数据库中,可以被客户应用程序调用,也可以从另一个过程或触发器调用。它的参数可以被传递和返回。存储过程可以通过名字来调用,而且它们同样有输入参数和输出参数功能。
2.3.2 创建存储过程
在SQL中有两种方法可以创建存储过程,一种是使用CREATE PROCEDURE语句,另一种是使用Enterprise Manager来创建。
以下是本系统部分存储过程的语句。使用的是CREATE PROCEDURE方法。
1)新建留言:
2)增加用户:
3 结束语
经过试用证明,系统基本满足软件交易方面的需要。
实现了用户注册、用户登录、软件项目外包、软件求购、软件供应、用户交流等功能。并且可以根据用户需求进行项目具体信息的搜索。给用户软件交易带来了很多方便。
参考文献
[1]Eckel B.ASP.NET与ADO.NET Web应用解决方案[M].北京:清华大学出版社,2002.
[2]张海蕃.软件工程导论[M].4版.北京:清华大学出版社,2003.
[3]Musciano C,Kennedy B.HTML与XHTML权威指南[M].技桥,译.5版.北京:清华大学出版社,2003.
[4]周存杰.C#网络实例教程[M].北京:北京希望电子出版社,2002.
B/S软件模式 篇8
关键词:B/S架构,WEB,应用软件,系统测试
0 引言
计算机应用软件在投入运行之前,需要按照软件的系统功能结构进行组装和确认。然而,新系统能否正常运行不仅取决于软件产品本身,而且还与计算机硬件,操作系统,数据及其采集、存储和传输机制,用户操作等密切相关。实际上系统测试[1]就是要检验应用软件在实际工作环境中能否正常运行,能否满足用户需求,它是一种针对系统各组成部分进行的综合性测试。基于B/S架构的应用软件由于其自身的优势,目前已经成为软件产品开发的主流形式。在进行B/S架构的软件系统测试时的测试策略及所关注的内容与传统架构的软件产品系统测试有很大的不同。在对基于B/S架构的WEB应用软件系统进行测试时,不但需要检查和验证软件产品的功能,而且还要测试应用系统在不同种类的浏览器上能否兼容显示,更重要的是对B/S架构的WEB应用软件还要从最终用户的角度进行可用性和安全性等方面的测试。
1 基于B/S架构的WEB应用软件系统测试的依据
在进行基于B/S架构的WEB应用软件系统测试时,我们主要以软件开发合同和软件产品需求规格说明书为依据[2]。在软件开发合同和软件产品需求规格说明书确定后,基于B/S架构的WEB应用需求就非常明确,此时可系统考虑WEB应用软件的系统测试计划并提前进行测试用例设计。此外,在测试过程中必需严格按照测试管理规范进行,注重测试管理和测试结果的分析。
2 基于B/S架构的WEB应用软件系统测试环境
基于B/S架构的WEB应用软件系统测试的测试环境主要依据WEB应用软件项目的技术方案和软件系统需求规格说明书中对应用软件系统环境的要求搭建,所搭建的系统测试环境将用于模拟应用软件的实际运行环境,并在此环境下对WEB应用系统进行相关测试。另外,由于基于B/S架构的WEB应用软件的特殊性,有些测试项目必须在系统验收前由用户参与,在用户的真实运行环境中进行,如系统性能测试和系统安全性测试等。
3 基于B/S架构的WEB应用软件系统测试策略
基于B/S架构的WEB应用软件系统测试的参与者应当包括开发方的项目经理及相关技术人员,需求方信息部门的主管领导、IT应用部门的领导及相关技术人员和监理方的专业技术人员。在进行系统测试时,应以需求双方共同确认的WEB应用软件需求规格说明书所确定的功能、性能及其他需求为依据。系统测试应当遵循全面性原则,测试的策略为:按测试内容进行测试设计,按测试需求编写测试用例,执行测试用例,记录测试过程,提交系统缺陷报告并对系统缺陷报告所涉及的内容进行跟踪直到其修改完成,根据测试结果提交测试评估报告并评价该应用软件是否满足系统设计要求和用户的使用要求。测试完成后相关人员必须对测试报告签字确认,该报告将作为软件产品验收的一个重要依据。
4 基于B/S架构的WEB应用软件系统测试阶段划分
基于B/S架构的WEB应用软件系统测试的测试阶段划分与普通应用软件的测试阶段划分基本相同,一般可以分为五个阶段:第一个阶段为测试计划阶段,该阶段主要是根据测试需求制订测试计划;第二个阶段为测试设计阶段,该阶段的主要工作为根据测试计划制订测试方案,选择相关测试工具或开发相关测试工具,设计系统测试所需测试用例;第三个阶段为测试准备阶段,该阶段的主要工作是根据测试方案搭建测试环境,对相关测试人员进行培训使其掌握相关测试技术;第四个阶段为测试执行阶段,该阶段的主要任务为根据测试计划和测试设计执行测试用例,对测试情况进行记录,对缺陷修改后进行回归测试;最后一个阶段为测试评估阶段,该阶段的主要任务是根据整个测试过程对基于B/S架构的WEB应用软件系统测试提交结论性意见,为软件产品验收打好基础。
5 基于B/S架构的WEB应用软件系统测试内容
基于B/S架构的WEB应用软件系统测试的内容主要包括系统功能测试、系统性能测试、系统可用性测试、系统兼容性测试、系统安全性测试、系统数据和数据库集成测试、系统资料的完整性测试及安装测试[3]等。基于B/S架构的WEB应用软件在测试内容的侧重点上与传统软件的系统测试有很大的区别,在进行测试时应尽量让最终用户参与进来。
基于B/S架构的WEB应用软件的功能测试主要依据软件产品需求规格说明书中所定义的功能需求来进行,测试主要包括链接测试、表单测试和cookies测试等几项内容。其中,链接测试是WEB应用软件系统测试的一个主要特征。在WEB应用程序中,链接主要用于页面切换,在测试时重点注意:页面链接是否链接到了正确的目标上,测试目标链接是否真实存在,是否存在孤立页面等情况。表单测试是WEB应用软件系统测试的另一个重要特征。在用户向系统提交信息时都需要使用表单操作,在测试时主要针对表单操作的完整性、用户提交信息的正确性等内容。cookies测试是WEB应用软件系统测试的第三个重要特征。在测试时主要测试cookies是否真的起到了作用,是不是按预定的时间对相关用户信息进行了保存,执行刷新或其他操作对cookies的影响等。
基于B/S架构的WEB应用软件的性能受很多外在因素的影响,在进行性能测试时主要针对三个方面进行:用户连接速度测试、负载测试和压力测试。用户连接速度测试受用户联网方式的影响,若系统对用户的连接请求响应时间过长,用户就会对系统失去等待的耐心。另外,对于有超时限制的页面而言,连接响应速度过慢将导致用户还没有浏览完相关页面内容就需求重新登录系统,对系统连接速度测试必须充分考虑各类用户的实际情况。负载测试主要测试WEB应用软件在不同数量级的用户同时访问系统的情况下或不同数量级的在线用户同时处理数据的情况下的系统性能,测试的目的在于保证系统在需求范围内正常工作。负载测试一般放在Internet上按真实的访问情况来进行,只有这样测试的结果才是真实可靠的。压力测试本质上是测试一种极端情况,其主要用于测试系统会不会出现崩溃的情况、在什么情况下会出现崩溃、崩溃的后果是怎样的、崩溃后应该怎么快速恢复系统。压力测试本质上是测试基于B/S架构的WEB应用软件的使用限制和故障恢复能力。
基于B/S架构的WEB应用软件在进行可用性测试时,主要测试的内容包括:系统导航测试、系统图形测试、内容测试和整体界面测试四个部分。系统导航描述了系统用户在系统页面内的操作方式测试的重点是系统的导航是否直观、是否准确,用户能否根据系统提供的导航找到想去的页面。另外,在导航测试的时候还应注意观察导航与系统风格的一致性。系统图形测试用于测试系统中出现的图形是否有明确用途,图形能否起到美化页面的作用。内容测试主要用于检验WEB应用软件提供的信息的正确性、相关性和准确性[4]。正确性是指页面信息是正确的还是错误的,相关性是指能否从当前页面中找到与当前正在浏览的内容相关的信息的入口。整体界面的测试是指从整体上对WEB应用软件的页面结构进行测试,用于验证用户在使用WEB应用系统时是否有整体上的认同感,是否觉得很舒服、很方便。
基于B/S架构的WEB应用软件的兼容性测试所关心的问题主要有两个方面,第一是操作系统平台的兼容性测试。目前市场上的主流操作系统的种类繁多,WEB应用软件的服务器平台使用的操作系统的类型甚至是操作系统的版本都有可能会导致系统发生兼容性问题。极端的情况下,同一个软件在一个系统下可以正常运行,到了另一个操作系统环境下就不能正常运行了。在系统投入正式运行之前,必须针对用户服务器实际使用的操作系统进行兼容性测试;第二是客户端浏览器的兼容性测试。用户使用WEB应用系统必须借助浏览器来进行,可以说浏览器是客户端非常重要的软件。来自不同商家的浏览器产品对相关脚本、控件的支持是不一样的,通常的测试做法是根据用户最常用的浏览器种类创建一个兼容性矩阵[5],然后测试WEB应用软件构件对不同浏览器版本的适应性和兼容性。
基于B/S架构的WEB应用软件的安全性测试十分重要,所测试的主要是与WEB应用软件安全相关的内容,如用户注册与登录方面的安全性测试WEB应用系统的超时限制测试,系统日志文件的完备性与正确性测试,安全套接字加密的正确性与信息的完整性测试,服务器脚本授权、编辑测试等。
基于B/S架构的WEB应用软件的数据和数据集成测试主要针对应用了数据库技术的WEB系统进行。在WEB技术中数据库起着非常重要的作用,数据库为WEB应用系统运行、管理提供了空间。在需要使用数据库的WEB应用软件中主要会发生两种错误,它们分别是数据库中数据不一致性错误和数据输出错误。数据不一致性错误主要是应用程序对用户提交的表单信息处理不当造成的,数据输出错误主要是WEB应用程序设计错误的原因导致的。当WEB应用系统中包含大量数据集成的需求时,还应当对系统集成后的数据进行测试。
基于B/S架构的WEB应用软件的资料完整性测试是为了便于系统日常维护而进行的。在系统开发完毕后,必须使测试用户手册、操作手册等资料与系统保持一致。
6 结束语
基于B/S架构的WEB应用软件系统测试是一项复杂的系统工程,它与传统应用软件的系统测试有相同的地方,但也有很多独特的内容。为保证基于B/S架构的WEB应用软件系统测试顺利完成,我们应该做到以下几点:在进行测试时应当使测试环境与实际WEB应用软件的运行环境相兼容;在进行测试时应当让最终用户充分参与到测试工作中来;测试应严格按照测试策略、分阶段、有计划地进行;在进行测试时应针对不同的测试内容精心设计测试用例,只有经过精心设计的测试用例在测试的过程中才能尽可能多地发现应用程序中的错误或缺陷,而且还应对发现的错误或缺陷在改正后进行回溯测试;在进行测试时合理选择并使用测试工具能够提高测试的效率;在测试执行过程中应当保存完备的测试文档资料;测试结果应当实时分析,分析结果应请相关人员签字。总之,只有扎实地完成了系统测试,才能保证基于B/S架构的WEB应用软件的质量和使用效果。
参考文献
[1]郑人杰,许静,于波.软件测试[M].北京:人民邮电出版社,2011.
[2]夏启明.软件测试及评价的复用策略研究及其实现[D].武汉:武汉大学,2010.
[3]李志峥,杨社堂.基于B/S结构下的软件系统测试研究[J].科技情报开发与经济,2006,16(07):232-234,251.
[4]张威,张之刚,吕卓.电网智能终端中嵌入式软件系统的测试[J].重庆理工大学学报(自然版),2013,27(07):108-112.
B/S软件模式 篇9
系统测试的目的主要是验证系统的功能和性能是否满足设计要求,发现系统的实际应用效果是否与系统定义相符合。系统测试是检验软件质量的重要手段,软件质量的检测一方面要检查软件的设计是否合理、编码是否准确,另一方面要看软件的系统测试是否全面。在软件开发和应用中,很多编码上的错误很难发现,只有通过后期的系统测试才能被发现,所以软件系统测试在保证软件质量方面有着重要作用。在不同的环境下,软件系统的测试方法也有所差异,本文就基于B/S架构的Web软件系统测试进行探讨。
1 基于B/S架构的Web软件系统
B/S体系结构的应用原理是:用户通过浏览器将操作请求发送给网络上的服务器,服务器对接收的信息进行分析、处理后将用户所需要的信息发送至浏览器。相比二层的C/S体系结构,B/S体系结构只是从客户机的任务中将事务处理逻辑模块分离出来,并单独组成一个任务应用层,该方式将负荷分配给Web服务器,可以极大减轻客户机的压力。B/S架构的一个明显特点就是简化了客户端,只需要安装通用的浏览器软件,不需要在客户机上设置多个客户应用程序,所以整个系统安装过程非常简单,网络结构非常灵活,而且系统的开发和维护简单。B/S体系结构的特殊性意味着系统的测试也需要采用不同的方法。基于B/S架构的软件系统以网页表单的方式进行界面展示,服务器承担了系统的大部分工作,客户端对后台服务的访问通过浏览器实现,而且只能够完成浏览、查询、数据输入等比较简单的功能操作,同时还采用Cookies形式保存用户信息。Web软件系统的开发需要以HTTP协议和HT-ML为依据,这就决定了此类软件都要遵循统一的结构。图1是一个典型的基于B/S架构的Web软件系统结构。
2 基于B/S架构的Web软件系统测试
基于BS架构的Web软件系统测试涉及到多方面内容,包括可行性测试、性能测试、功能测试、安全性测试、兼容性测试等等。相比传统的软件测试,基于BS架构的Web软件系统测试内容侧重点明显不同,测试过程需要用户参与,不仅要检查系统的运行是否按照设计要求,还要评价系统在各种浏览器上的显示效果,尤其要进行系统的安全性和可行性测试。
2.1 系统可行性测试
可行性测试其实就是检测用户对系统的理解程度和使用效果,类似于系统的可操作性测试,涉及到系统的功能、系统的发布、用户与系统的交互效果。系统可行性测试主要包括导航测试、图形测试、内容测试、界面测试等。
系统可行性测试方法:(1)通过页面走查的方式检查系统页面是否符合要求,测试不同分辨率下页面的显示效果,如果发现有不符合要求的地方应交给设计人员进行调整;(2)根据数据定义文档来检查表单项的内容设计效果;(3)通过浏览查看方式检测动态网页。
(1)导航测试。系统导航是对系统页面中用户操作方式的描述,可以在不同的连接页面之间,也可以在按钮、窗口等不同的接口控制之间。系统的导航测试主要是检测系统是否易于导航,系统导航的界面设计是否直观,是否可以通过主页面实现对系统主要内容的存取,系统是否需要搜索引擎或者网站地图帮助,另外还需要检测系统的页面结构设计、导航设计、菜单设计以及连接方式的风格是否一致,是否可以让用户通过导航直观地了解系统的主要内容。
(2)图形测试。网页的构成主要包括两种元素,即文字和图片。图片在网页应用中有着重要作用:(1)美化网页;(2)进行广告宣传。但在系统运行过程中,网络传输的数据量是有一定限制的,所以网站的图片数量也不能无限大。图片在网页上的位置也有一定要求,不能随意放置,要符合页面的审美要求。图形测试主要是检测系统中图形是否具有应用价值,图形或者动画的放置位置是否符合要求,页面上的文字应用风格是否一致,页面的背景、前景以及字体颜色应用是否搭配,网页中图片的大小设置是否合适,图片的质量是否达到要求,以及图片的应用格式(一般是JPG或者GIF压缩)是否符合。
(3)内容测试。内容测试主要是用文字处理软件对系统文字信息进行检测,检验系统文字信息是否具有一定的相关性、准确性,信息是否真实可靠,信息是否存在语法错误或书写错误,是否能够在当前的页面找到相关的信息列表等等。
(4)界面测试。界面测试主要是检测用户在浏览Web应用系统时,对系统的整体界面是否感到舒适、直观,是否能够凭直觉找到信息,系统整体设计风格是否一致。
2.2 系统功能测试
基于B/S架构的Web软件系统功能测试主要包括链接测试、表单测试、Cookies测试、设计语言测试以及数据库测试,采用的方法主要有黑盒测试、白盒测试、边界测试或者越界测试。功能测试是验证产品功能是否与产品需求规格一致,不需考虑系统内部软件的实现逻辑。功能测试是系统测试最重要、最基本的内容,要求测试人员全面了解产品的需求规格和业务功能,设计出高效的测试方案。
(1)链接测试。链接的主要功能是实现页面切换,并引导用户找到所需要的页面。在基于B/S架构的软件系统中,链接是一个非常重要的特点,链接测试3个内容:(1)检测页面链接的准确性;(2)检测所链接的页面是否存在;(3)确定Web系统中不存在没有设置链接的孤立页面。
(2)表单测试。表单测试是对系统运行过程中,服务器所接收到的表单信息是否正确进行检测。例如用户在登录系统时需要填写用户信息,在表单中的用户名和密码条框中设置要输入数字的地方是否也可以输入字母,输入后系统是否会提示出错。如果表单采用了默认值,就需要对默认值的正确性进行检测。如果表单输入限定了某些值,则需要继续测试。
(3)Cookies测试。Cookie是指服务器暂存在计算机上的信息资料,主要用于存放用户应用系统时的信息。当用户浏览网站时,服务器会向用户的计算机上发送一些Cookies形式的资料,以便服务器能够很好地辨认用户的计算机。如果系统有Cookies应用,就需要对Cookies的功能和性能进行测试,检测Cookies是否正常工作,是否准确、有效地保存,是否受到系统其它操作的影响。
(4)数据库测试。数据库为系统的管理、运行以及数据存储提供空间。数据库测试主要是检测数据输出的准确性、数据的一致性。用户在提交表单时所填写的信息不正确可能导致数据一致性出错,网络速度过慢或者程序设计缺陷则可导致数据输出错误,数据输出错误和数据一致性错误是系统数据库发生的两个重要错误。
2.3 系统性能测试
性能测试是保证软件系统质量的重要测试内容,涉及到的测试内容较多,主要包括3个方面,即客户端、网络以及服务器端的性能测试。客户端性能测试包括数据量测试、速度测试、并发性测试等,主要检测客户端的应用性能;网络上的测试主要内容是利用相关技术进行网络预测、网络性能分析;服务器端的测试在于实现对服务器系统、设备性能的全面监控,可采用工具或命令进行监控。上述三者有效结合才能实现系统的高性能运行。性能测试常用工具有webload、was、ewl等。
(1)链接速度测试。链接速度测试是基于B/S架构的软件系统性能测试的重要内容。在基于B/S架构的软件系统应用中,软件的功能主要是通过服务器实现的,服务器将系统信息发送至客户端,客户端通过对信息的浏览实现各种应用操作。因此,基于B/S架构的软件系统对链接速度有很高的要求。如果系统对用户的页面访问需求响应时间超过5s,则用户很可能因为没有耐心等待而放弃本次访问。一般情况下,系统网页的链接速度与入网的方式与很大关系,例如宽带上网、电话拨号上网等各种上网方式的链接速度各有千秋。当系统响应速度太慢时,用户往往还没有浏览到信息就需要重新登录,而且链接速度慢也是导致数据丢失的重要原因。
(2)负载测试。负载测试就是检测系统在一定需求范围内是否能够正常工作,例如系统允许多少用户同时访问,如果访问数量过大会出现什么情况。负载测试一般需要在实际网络环境中测试,因为在因特网上有足够量的访问用户,才能获得准确可信的测试结果。
(3)压力测试。压力测试包括表单测试、登录测试以及其它信息输出情况测试。检测在一定访问数量压力下系统的反应,以及系统的压力极限和故障恢复能力,检测系统在较大访问压力下是否会发生崩溃。黑客在对系统进行攻击时通常会对系统提供错误的负载,让系统发生崩溃,并在系统重启时获得存取权,以此对系统实施攻击。
2.4 客户端兼容性测试
系统的兼容性缺陷引起的问题往往比较微妙,很难被发现,系统的兼容性测试经常被忽略。系统兼容性测试方法一般是创建兼容性矩阵,测试过程中需要考虑以下几个问题:(1)系统能够在哪些操作系统环境下运行;(2)系统能够与哪些类型的数据库进行数据交换;(3)系统能够在哪些硬件配置环境中运行;(4)系统能够与哪些软件系统协同工作。客户端兼容性测试主要包括平台测试、浏览器测试。平台测试需要在系统发布之前进行,系统使用哪一种操作系统往往由系统的配置决定。同一应用可能在某些操作系统中能够正常运行,但却无法在其它操作系统中运行。浏览器测试主要是检测浏览器的显示效果。
2.5 系统安全性测试
系统安全性测试主要是检测系统安全机制的有效性,验证系统内部的安全机制能否保护系统免受非法攻击。系统的安全性不仅是指系统能够抵挡住正面攻击,还要能经受来自侧面和背面的攻击,如此才能保证系统资源的安全性。系统安全性测试内容主要有:(1)对用户名和密码信息进行测试,检测系统对登录信息大小写是否敏感,对输入次数有没有限制,在没有登录系统的情况下是否能够直接浏览页面;(2)检测系统是否对登录状态有时间限制,用户登录后一段时间是否需要重新登录才能正常使用;(3)检测系统访问信息是否被写入日志,是否能追踪;(4)检测安全套接字中密码设置的正确性,以及信息是否完整;(5)检测服务器端脚本的管理应用是否设置权限,以免成为黑客攻击系统的漏洞。
3 结语
本文从系统可行性测试、功能测试、性能测试、兼容性测试以及安全性测试等方面对基于B/S架构的Web软件系统测试进行了探讨。基于B/S架构的软件测试是一个复杂的系统工程,相比传统的软件测试有很大差别,整个测试内容要保证全面性、充分性,并扎实地完成系统测试,这样才能通过系统测试体现软件的应用效果,保证软件质量。
摘要:软件测试是检验软件系统质量的重要手段,在不同环境下,软件系统的测试方法也有所差异。相比传统的软件测试,当前应用广泛的B/S体系结构软件系统测试有很大不同。该此类型的系统测试主要包括可行性测试、性能测试、功能测试、兼容性测试以及安全性测试等。
关键词:软件测试,B/S,Web
参考文献
[1]李志峥,杨社堂.基于B/S结构下的软件系统测试研究[J].科技情报开发与经济,2006,16(7):232-234.
[2]陈技能.软件测试技术大全---测试基础流行工具项目实战[M].北京:人民邮电出版社,2009:159-160.
[3]单良.校园网环境下的Web软件测试方法研究[J].鸡西大学学报,2009(6):62-64.
[4]刘锦.基于B/S架构的Web应用软件系统测试研究[J].科技广场,2013(9):39-42.
[5]廖非凡.B/S架构的Web应用系统软件测试研究[J].科技风,2008(11):76-82.
[6]宋俊雅,王鹏彪,黄俊爽,等.B/S结构软件的系统测试技术[J].科技信息,2010(10):247-248.
B/S软件模式 篇10
摘 要:课表转换系统使用PHP语言,开发出了大课表生成页面、教师课表生成页面、全部教师课表生成页面、教师课表查询界面。本系统大幅度减化了教务部门排课人员的手工劳作,充分使用信息技术的手段架起了教务管理部门和各位教师之间的桥梁。
关键词:课表转换 B/S模式 PHP语言 MySQL数据库系统
中图分类号:TP311.52 文献标识码:B 文章编号:1673-8454(2009)05-0045-04
一、系统目标
课表转换系统的主要目标是高效地实现课表由全院或全系的大课表产生分支,生成各位教师的任课课表、班级课表,并能发送到打印机打印,简化教务管理部门在下发课表时的手工操作。系统同时实现了班级课表、教师课表的局部查询功能,为使用人员提供了便捷的查阅方式。系统还提供了修改的功能,对每班课表的日课程建立了超链接,开通了修改的通道,便于及时发现错误予以纠正。本系统提高了课表生成的效率与质量,大幅度减少了产生错误的几率,将传统的手工劳作提升为质优效高的管理服务。
二、系统的体系结构及主要功能
本课表转换系统基于B/S模式,使用三层结构模型。前端为瘦客户端,安装IE游览器即可,中间层为应用层,放在Apache服务器上,后台数据库使用MySQL,数据信息存放在客户端的专用存储器上。这三层结构模型的系统处理过程如图1所示。
在这种模式下开发课表转换系统,实现了以下三种功能。
1.课程信息采集功能
在全院或全系大课表已经妥善安排的基础上,通过信息采集页面,实现课表信息的获取。本功能在学期初或上学期末执行完成,实现课程信息的一次性批量采集。采集界面如图2所示。
2.错误信息修改功能
对于课程信息采集过程中出现的错误情况,系统提供了补救措施,对于日课程,建立了错误的超链接,可以点击修改页面直接修改错误信息点,界面如图3所示。
3.便捷的查阅功能
本系统查阅项目全面,包括查看班级课表、全部教师课表、某位教师的课表。良好的查询界面与查询功能的实现为使用者提供了很大的便捷。单击相关查询后的查询结果如图4所示。
三、数据库设计
数据库采用MySQL,它提供了强大的数据库管理功能,能够方便、灵活地完成数据库应用中建立数据库和数据表、查询和更新等各种操作。MySQL是PHP开发工具开发网站的有力支持,二者往往并驾齐驱,能开发出内容丰富、界面新颖的页面。本系统使用的数据表有Teacher表和Class表。Teacher表有ID和Name字段。Class表的字段如图5所示。
四、主要存储结构的设计及代码实现
本课表转换系统本着实用、稳定和技术先进性的原则,系统使用PHP语言开发,选用MySQL数据库。
1.大课表的生成
这部分的主要功能用于信息采集。这一部分信息的采集正确与否决定着后面班级、教师课表产生的准确性,模块的代码如下:
<?
include("opendata.php");
$sql="select * from class";
$records=mysql_query($sql);
$lastp=ceil(mysql_num_rows($records)/20);
if ($pageno==0 or $pageno>$lastp)
$pageno=$lastp;
$numf=$pageno*20-19;
$numl=$numf+19;
if($pageno==1)
$prep=1;
else
$prep=$pageno-1;
if($pageno==$lastp)
$nextp=$lastp;
else
$nextp=$pageno+1;
$sql="select * from class where id between '$numf ′ and ′ $numl′ ";
$records=mysql_query($sql);
?>
2.班级课表的生成
本模块通过循环依次将数据库中的数据提取出来,以规范的格式生成班级课表,模块的代码如下:
<?
while(list($class,$teacher,$classroom,$mon1,$mont1,$mon2,$mont2,$mon3,$mont3,$mon4,$mont4,$tue1,$tuet1,$tue2,$tuet2,$tue3,$tuet3,$tue4,$tuet4,$wed1,$wedt1,$wed2,$wedt2,$wed3,$wedt3,$wed4,$wedt4,
$thu1,$thut1,$thu2,$thut2,$thu3,$thut3,$thu4,$thut4,$fri1,$frit1,$fri2,$frit2,$fri3,$frit3,$id,)=mysql_fetch_row($records))
{
echo "<font color=red size=4><center>北京信息职业技术学院课程表</font>
<table border=0 width=450>
<tr><tdalign=left><font color=red size=2 >".$class."</font></td>
<tdalign=right><font color=red size=2 >班主任:".$teacher."</font></td></tr>
</table>";
echo"
<table border=1 width=450 >
<tr><td></td>
<tdalign=center size=2>1-2节</td>
<tdalign=center size=2>3-4节</td>
<tdalign=center size=2>5-6节</td>
<tdalign=center size=2>7-8节</td>
</tr>
<tr><td></td>
<tdalign=center size=2>8:10-9:50</td>
<tdalign=center size=2>10:15-11:55</td>
<tdalign=center size=2>13:00-14:40</td>
<tdalign=center size=2>14:50-16:20</td>
</tr><tr><td>星期一 </td>
<tdalign=center size=2><center>".$mon1."<br><center>".$mont1."</td>
<tdalign=center size=2><center>".$mon2."<br><center>".$mont2."</td>
<tdalign=center size=2><center>".$mon3."<br><center>".$mont3."</td>
<tdalign=center size=2><center>".$mon4."<br><center>".$mont4."</td>
</tr><tr><td> 星期二 </td>
<tdalign=center size=2><center>".$tue1."<br><center>".$tuet1."</td>
<tdalign=center size=2><center>".$tue2."<br><center>".$tuet2."</td>
<tdalign=center size=2 bgcolor=red><center>".$tue3."<br><center>".$tuet3."</td>
<tdalign=center size=2 bgcolor=red><center>".$tue4."<br><center>".$tuet4."</td>
</tr><tr><td>星期三 </td>
<tdalign=center size=2><center>".$wed1."<br><center>".$wedt1."</td>
<tdalign=center size=2><center>".$wed2."<br><center>".$wedt2."</td>
<tdalign=center size=2><center>".$wed3."<br><center>".$wedt3."</td>
<tdalign=center size=2><center>".$wed4."<br><center>".$wedt4."</td>
</tr><tr><td>星期四</td>
<tdalign=center size=2><center>".$thu1."<br><center>".$thut1."</td>
<tdalign=center size=2><center>".$thu2."<br><center>".$thut2."</td>
<tdalign=center size=2 bgcolor=red><center>".$thu3."<br><center>".$thut3."</td>
<tdalign=center size=2 bgcolor=red><center>".$thu4."<br><center>".$thut4."</td>
</tr><tr><td>星期五</td>
<tdalign=center size=2><center>".$fri1."<br><center>".$frit1."</td>
<tdalign=center size=2><center>".$fri2."<br><center>".$frit2."</td>
<tdalign=center size=2><center>".$fri3."<br><center>".$frit3."</td>
<tdalign=center size=2></td>
</tr>
</table>";
}
?>
3.全部教师课表的生成
教师每学期课程的安排情况,均来自于教务管理的信息。本课表转换系统能根据全院或全系的大课表生成全部任课教师的子课程表,本模块的部分程序代码如下:
<?
……
$sql="select * from class where mont1=′$name′ ";
$records=mysql_query($sql);
$records=mysql_query($sql);
while(list($class,$teacher,$classroom,$mon1,$mont1,$mon2,$mont2,$mon3,$mont3,$mon4,$mont4,$tue1,$tuet1,$tue2,$tuet2,
$tue3,$tuet3,$tue4,$tuet4,$wed1,$wedt1,$wed2,$wedt2,$wed3,$wedt3,$wed4,$wedt4,$thu1,$thut1,$thu2,$thut2,$thu3,$thut3,
$thu4,$thut4,$fri1,$frit1,$fri2,$frit2,$fri3,$frit3,$id,)=mysql_fetch_row($records))
$monn1=array("$mont1","$mon1","$class");
……
{
echo "<font color=red size=4><center>北京信息职业技术学院课程表</font>
<table border=0 width=450>
<tr>
<tdalign=left><font color=red size=2 >".$name."老师</font></td></tr>
</table>";
echo"
<table border=1 width=450 >
<tr><td></td>
<tdalign=center size=2>1-2节</td>
<tdalign=center size=2>3-4节</td>
<tdalign=center size=2>5-6节</td>
<tdalign=center size=2>7-8节</td>
</tr>
<tr><td></td>
<tdalign=center size=2>8:10-9:50</td>
<tdalign=center size=2>10:15-11:55</td>
<tdalign=center size=2>13:00-14:40</td>
<tdalign=center size=2>14:50-16:20</td>
</tr>
<tr><td>星期一 </td>
<tdalign=center size=2><center>".$monn1[1]."<br><center>".$monn1[2]."</td>
<tdalign=center size=2><center>".$monn2[1]."<br><center>".$monn2[2]."</td>
<tdalign=center size=2><center>".$monn3[1]."<br><center>".$monn3[2]."</td>
<tdalign=center size=2><center>".$monn4[1]."<br><center>".$monn4[2]."</td>
……
?>
4.任课教师课表的查询
查看某位老师的课表,通过表单提交该老师的姓名,在数据库中查找该老师。查到后按规范格式输出即可,本模块的部分代码如下:
<?
$name=$name;
include("opendata.php");
$sql="select * from class where mont1='$name'";
$records=mysql_query($sql);
$records=mysql_query($sql);
while(list($class,$teacher,$classroom,$mon1,$mont1,$mon2,$mont2,$mon3,$mont3,$mon4,$mont4,$tue1,$tuet1,$tue2,$tuet2,
$tue3,$tuet3,$tue4,$tuet4,$wed1,$wedt1,$wed2,$wedt2,$wed3,$wedt3,$wed4,$wedt4,$thu1,$thut1,$thu2,$thut2,$thu3,$thut3,
$thu4,$thut4,$fri1,$frit1,$fri2,$frit2,$fri3,$frit3,$id,)=mysql_fetch_row($records))
$monn1=array("$mont1","$mon1","$class");
……
{
echo "<font color=red size=4><center>北京信息职业技术学院课程表</font>
<table border=0 width=450>
<tr>
<tdalign=left><font color=red size=2 >".$name."老师</font></td></tr>
</table>";
echo"
<table border=1 width=450 >
<tr><td></td>
<tdalign=center size=2>1-2节</td>
<tdalign=center size=2>3-4节</td>
<tdalign=center size=2>5-6节</td>
<tdalign=center size=2>7-8节</td>
</tr>
<tr><td></td>
<tdalign=center size=2>8:10-9:50</td>
<tdalign=center size=2>10:15-11:55</td>
<tdalign=center size=2>13:00-14:40</td>
<tdalign=center size=2>14:50-16:20</td>
</tr>
<tr><td>星期一 </td>
<tdalign=center size=2><center>".$monn1[1]."<br><center>".$monn1[2]."</td>
<tdalign=center size=2><center>".$monn2[1]."<br><center>".$monn2[2]."</td>
<tdalign=center size=2><center>".$monn3[1]."<br><center>".$monn3[2]."</td>
<tdalign=center size=2><center>".$monn4[1]."<br><center>".$monn4[2]."</td>
…
?>
五、系统的前景展望
本课表转换系统使用PHP语言开发,后台数据库采用MySQL,明显的特点就是代码简洁,简单易懂,界面优良,人机交互性较好。本程序最大的一个优点就是可移植性好,在安装有Apache服务器的计算机上均可运行,各院校在使用过程中可据本校实际需求对代码稍作修改即可,保证了系统的实效性、可操作性。本系统可以挂接在院校的局域网上,便于教师或管理人员实现信息资源的共享。
参考文献:
[1]曹轶群,张一江,张永学.PHP高级开发技术与应用[M].北京:清华大学出版社,2002.5.
B/S软件模式 篇11
关键词:C/S,结构,B/S,结构,优缺点
目前, 随着信息技术和网络技术的发展, "信息高速公路"建设已经在全球拉开序幕。C/S (Client/Server, 客户机/服务器) 模式又称为C/S结构, 是软件系统体系结构的一种。C/S模式简单的讲就是基于企业内部的应用系统。B/S (Browser/Server, 浏览器/服务器) 模式又称B/S结构。它是随着Internet技术的兴起, 对C/S模式应用的扩展。在这种结构下, 用户工作界面是通过IE浏览器来实现的。本文主要是介绍了它们的优缺点。
一、C/S模式的优缺点
1、应用服务器运行数据负荷较轻
最简单的C/S体系结构的数据应用由两部分组成, 即客户应用程序和数据库服务器程序, 二者可分别称为前台程序与后台程序。运行数据库服务器程序的机器, 也称为应用服务器。一旦服务器程序被启动, 就随时等待响应客户程序发来的请求;客户应用程序运行在用户自己的电脑上, 对应于数据库服务器, 可称为客户电脑, 当需要对数据库中的数据进行任何操作时, 客户程序就自动地寻找服务器程序, 并向其发出请求, 服务器程序根据预定的规则做出应答, 送回结果, 应用服务器运行数据负荷较轻。
2、数据的储存管理功能较为透明
在数据库应用中, 数据的储存管理功能, 是由服务器程序和客户应用程序分别独立进行的, 前台应用可以违反的规则, 并且通常把那些不同的 (不管是已知的还是未知的) 运行数据, 在服务器程序中不集中实现, 例如访问者的权限, 编号可以重复, 必须有客户才能建立定单这样的规则。所有这些, 对于工作在前台程序上的最终用户, 是"透明"的, 他们必须过问 (通常也无法干涉) 背后的过程, 就可以完成自己的一切工作。在客户服务器架构的应用中, 前台程序并不是非常"瘦小", 麻烦的事情都交给了服务器和网络。在C/S体系下, 数据库不能真正成为公共、专业化的仓库, 它受到独立的专门管理。
3、C/S构架的劣势是高昂的维护成本且投资大
采用C/S架构, 要选择适当的数据库平台来实现数据库数据的真正"统一", 使分布于两地的数据同步完全交由数据库系统去管理, 但逻辑上两地的操作者要直接访问同一个数据库才能有效实现, 有这样一些问题, 如果需要建立"实时"的数据同步, 就必须在两地间建立实时的通讯连接, 保持两地的数据库服务器在线运行, 网络管理工作人员既要对服务器维护管理, 又要对客户端维护和管理, 这需要高昂的投资和复杂的技术支持, 维护成本很高, 维护任务量大。
其次, 传统的C/S结构的软件需要针对不同的操作系统开发不同版本的软件, 由于产品的更新换代十分快, 代价高和低效率已经不适应工作需要。
4、工作量大
C/S结构的每一个客户端都必须安装和配置软件。假如一个企业共有50个客户站点使用一套C/S结构的软件, 则当这套软件进行了哪怕很微小的改动后 (比如增加某个功能) , 系统维护员都必须进行这样的维护;将服务器更新到最新版本;将客户端原由的软件卸载, 再安装新的版本, 然后进行设置, 最为可怕的是客户端的维护工作必须不折不扣的进行50次, 若其中有部分客户端是在另一个地方, 则系统维护员还必须跑到该地方再进行卸载、安装、设置的工作。若某个客户端, 忘记进行这样的维护, 则该客户端将会碰到版本不一致的问题而无法工作。
二、B/S模式的优缺点
1、维护和升级方式的革命----瘦客户机
软件系统的改进和升级越来越频繁, B/S架构的产品明显体现的更方便的特性。无论用户的规模有多大, 有多少分支机构都不会增加任何维护升级的工作量, 所有的操作只需要针对服务器进行, 如果是异地只需要把服务器连接上网即可以立即进行维护和升级, 这对人力、时间、费用的节省是相当惊人的。一个稍微大一点的单位来说, 系统管理人员如果需要在几百甚至几千部电脑之间来回奔跑, 效率和工作量是可想而知的, 但B/S架构的软件只需要管理服务器就行了, 所有的客户端只是浏览器, 根本不需要做任何的维护。所以客户机越来越"瘦"而服务器越来越"胖"是将来软件的主流方向, 这使得升级和维护越来容易而使用越来越简单。
2、成本降低, 选择更多
很明显W indows在桌面电脑上几乎一统天下, 浏览器成为了标准配置, 但在服务器操作系统, W indows没有这种绝对的统治地位。而现在的趋势是应用软件都变成B/S架构的, 只安装在服务器上, 所以服务器操作系统的选择是很多的, 不管选用那种操作系统都可以让大部分人使用W indows作为桌面操作系统的情况不受影响, 这就使得很多免费的操作系统如现在最流行的Linux得以快速发展, 除了操作系统是免费的以外, 连数据库也是免费的, 这样的选择非常流行。传统的C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件, 由于产品的更新换代十分快, 这么高的代价和低效率已经越来越不适应了。在JA V A这样的跨平台语言出现之后B/S架构更是飞快的普及起来了。
3、面向电子商务时代的技术
将来所有的应用系统几乎都在互联网上运行, 企业发展电子商务也是不可避免的, 而B/S架构的软件则代表了将来的技术, 只要连上互联网或内部广域网就可以与全球的客户相连, 与各地的分支机构相连。缺点:
1、响应速度慢, 容易出错
2、对安全的控制力比较弱, 不过随着加密和鉴权算法的进一步完善, 这一点也在逐步改变。由于B/S软件重用性强, 所以可以将系统维护降到最少的程度。
3、由于一般需要增加虚拟机, 所以B/S架构对于客户端而言比较消耗资源。应用服务器运行数据负荷较重
由于B/S架构管理软件只安装在服务器端 (server) 上, 网络管理人员只需要管理服务器就行了, 用户界面主要事务逻辑在服务器 (server) 端完全通过www浏览器实现, 极少部分事务逻辑在前端 (browser) 实现, 所有的客户端只有浏览器, 网络管理人员只需要做硬件维护。但是, 应用服务器运行数据负荷较重, 一旦发生服务器"崩溃"等问题, 后果不堪设想。因此, 许多单位都备有数据库存储服务器, 以防万一。
4、个性化特点明显降低, 无法实现具有个性化功能的要求
5、操作是以鼠标为最基本的操作方式, 无法满足快速操作的要求
6、页面动态刷新, 响应速度明显降低
7、无法实现分页显示, 给数据库访问造成较大的压力
8、功能弱化, 难以实现传统模式下的特殊功能要求小结:
对于企业的B/S应用, 从当前的技术水平看, 特别适用于系统同用户交互量不大的应用, 对于需要大量频繁, 高速交互的应用系统, 采用这种模式并不一定是最好的选择。从某种意义特别是从近期的发展看, 二者应用界限并不清晰, 而且往往是互相补充、相符辅相成的。在应用中新的B/S模式就需要能同传统的C/S模式结合起来。
参考文献
[1].陈忠菊;对C/S与B/S体系结构的探讨[J];辽宁公安司法管理干部学院学报;2003 (3)
[2].罗立宇;MIS系统中C/S与B/S模式之比较[J];株洲师范高等专科学校学报;2002 (2)
[3].郭祖华;系统开发中C/S和B/S模式的研究[J];河南机电高等专科学校学报;2003 (1)
[4].徐晓霞, 贝雨馨;B/S模式与C/S模式之比较[J];延边大学学报 (自然科学版) ;2002 (2)
[5].吴大刚, 肖荣荣;C/S结构与B/S结构的信息系统比较分析[J];情报科学;2003 (3)
【B/S软件模式】推荐阅读:
Web、B/S模式07-21
信息管理B/S模式10-09
B/S和C/S模式08-20
B/S模式考试系统论文08-25
软件生产模式09-07
敏捷开发软件模式07-08
软件体系结构模式07-29
软件项目管理模式改革07-19
软件设计模式应用研究05-30
“软件工厂”教学模式08-09