计算机应用论文

网络的软件体系结构应用

时间:2021-02-09 12:28:14 计算机应用论文 我要投稿

网络的软件体系结构应用

  网络的软件体系结构应用【1】

  摘 要 本文提出了目前流行的两种基于网络的软件体系结构,C/S结构和B/S结构,详细描述和分析了各自的优劣势,给出了根据不同应用环境和要求,选择恰当的基于网络的软件体系结构的方法和思想。

  随着网络技术的进一步发展,单机版的软件已无法完成用户需求,各种基于局域网、互联网的软件应运而生。

  基于网络的软件体系结构目前主要有由美国Borland公司研发的C/S结构和美国Micro Soft公司研发B/S结构,软件开发者应根据用户实际需求及硬件环境选择合适的体系结构。

  1 C/S和B/S 简介

  (1)C/S 结构也就是众所周知的客户机和服务器结构。

  其运行过程一般为:先由前台程序向后台程序发出请求,后台程序接收到请求之后根据事件规则作出应答,并在服务器中进行相关运算及操作后,将运算结果送回。

  (2)B/S结构也被称为Web应用。

  它是在吸收Internet的新兴技术的基础上,对C/S结构进行改进而产生的结构。

  这种结构对客户端的软、硬件要求极底。

  极端情况下,一台能上网的电脑加WWW浏览器就可以完成数据库的操作和访问。

  2 C/S和B/S 选择

  (1)投入成本。

  B/S结构软件一般属于一次性投资,后期的系统维护和升级都是免费,这一点与C/S结构的软件不同,C/S结构的软件除了初期投入之外,还需要随着应用范围及规模的扩大不断的增加投资,而这种投资是很难受控的,极易形成所谓IT黑洞。

  (2)软件的维护与升级成本。

  C/S或B/S的选择,应充分考虑升级维护成本的核算。

  对于软件使用者数量较少且数量不会有大规模增加或相对物理位置较近的这类网络应用软件,我们可以考虑用C/S结构,反之亦然。

  (3)满足企业发展需求的比较。

  C/S结构软件的任何一次升级,都需要在服务器端和客户端重新进行部署、安装,这就降低了系统升级的效率,加大了系统升级的成本。

  而B/S结构软件的升级只需要更新服务器程序即可,所以软件维护升级的成本及难度与用户的规模无关。

  同时,由于所有客户端只是浏览器而免除了繁琐的维护工作。

  (4)数据管理安全性及可扩充性的比较。

  由于C/S结构的软件多数是通过ODBC数据源直接连到数据库的,因此其用户数受系统限制,数据安全性也不高。

  C/S结构为了实现与异地数据库的数据保持同步,需要选择适当的数据库平台。

  大多数C/S结构软件都是通过ODBC直接连接到数据库的,为此需要在两地之间建立“物理”上的数据链接以保持数据通讯,在此过程中,会一直占用中央服务器的资源,对中央服务器的要求非常高。

  相比之下,B/S结构软件则简单得多,B/S结构软件并不需要保持与数据库的连接。

  另外,在极其理想的情况下,用户的数量基本上不受限制。

  (5)不同网络硬件环境的比较。

  C/S结构软件需要实时与服务器交互,所以仅适用于局域网内部用户或高速网络用户,而B/S结构软件以浏览、输入数据为主,对于服务器的实时响应要求相对较低,所以适用于任何网络速率。

  3从C/S模式到B/S模式的迁移

  Internet在高速发展的同时,一些企业也在高速扩张,原有的C/S结构的企业管理应用软件已经无法满足发展、扩张的需要,如何实现从C/S结构到B/S结构的平稳过渡是企业亟需考虑的问题。

  上世纪九十年代开始,图形用户界面(GUI)迅速占领全世界个人电脑用户,结构化程序设计语言也被4GL(第四代语言)所代替。

  原来DOS字符界面的应用程序移植到GUI环境,其主体思想是把原代码中用于界面及相关操作的代码剔除,而功能部分代码与相对应的对像建立关联,根据操纵对像的行为,来完成不同功能代码的执行,从而实现整个应用程序的代码移植。

  而我们的C/S结构的软件,使用的也是第四代语言(GUI)编写的,整个系统就是一个对像的集合,所有代码都属于不同的对像。

  如果要将C/S结构转换成B/S结构,需要换一种开发工具。

  而不同的开发工具,提供给开发者的接口,很可能是完全不相同的。

  这就造成如要转换成B/S结构,几乎需要对所有对像的参数、属性、事件、方法等进行调整、修改,其难度无异于代码重写,这种工作量及代价,是无法想像的。

  但值得欣喜的是,国内已经出现了能将C/S结构软件过渡成B/S结构软件的产品,可以实现将Power Builder(PB)写的应用程序自动迁移到Web上,成功的实现了从C/S结构软件到B/S软件无缝、无损移植,也算是实现了软件移植的一次质的飞跃。

  综上所述,用户在确定使用何种体系结构来开发软件时,应当充分考虑软件成本、软件需求、硬件情况及未来软、硬件升级等一系列情况,尽量避免在较短的时间内对软件结构进行调整的情况发生。

  4结束语

  通过对B/S结构管理软件与C/S结构的管理软件进行比较分析,我们可以发现,它们各有优缺点,随着网络的进一步普及,在将来的几年内,B/S结构的大型管理软件的市场有继续扩大的趋势,其在管理软件领域的主导地位不会改变。

  参考文献

  [1] 陈卫.B/S结构应用程序开发秘籍.国防工业出版社,2004.7.

  [2] 王剑南.java面向对象B/S后台开发精粹.清华大学出版社,2013.4.

  软件体系结构研究【2】

  [摘 要]目前的软件体系结构建模中,典型地使用构件/连接子模型对体系结构进行描述。

  这样的体系结构模型可以清晰表达软件体系结构设计的结果,但是这种仅关注制品而未能显式,就这一现状本文从不同角度进行了阐述和探索。

  [关键词]软件工程 开放式数控 集成系统

  目前,软件体系结构(software architecture)已经成为新一代数控技术的研究热点,许多国家和研究机构在这个领域都开展了深入的研究。

  已经越来越受到研究者和实践者的重视,并成为软件工程的一个重要的研究领域。

  在软件开发过程中,软件体系结构提供系统的高层抽象、支持开发人员之间的交流、支持软件复用等,因而体系结构的设计在软件生命周期中起到关键作用。

  体系结构设计本身是一个不断做出决策的过程,产生大量的推理信息。

  一、自动测试系统软件体系结构

  目前通用自动测试系统的软件体系结构主要依据IEEE发布的宽域测试环境标准。

  ABBET将测试系统划分成5个层次:产品描述层,测试需求/策略层,测试程序层,资源管理层和仪器控制层。

  并行自动测试系统具有串行自动测试系统的基本特性,其核心测试过程与串行自动测试系统的核心测试过程是一致的,因此,并行自动测试系统的软件体系结构也采用层次化的体系结构风格。

  自动测试系统软件体系结构与传统串行自动测试系统的软件体系结构的不同在于其任务,资源管理层更加复杂。

  由于多任务的.并行执行,在这一层中不仅资源管理的功能需要扩展,以满足测试资源安全共享的要求,还需要对测试任务进行管理,根据任务过程模型和任务调度模型合理调度任务的执行。

  二、开放式数控的软件体系结构

  数控系统是一个具有实时性和多任务性的专用操作系统。

  从功能来看,系统的任务可以分为管理任务和控制任务两大类。

  管理任务主要完成系统资源管理和系统各子任务的调度,负责系统的程序管理、显示和诊断等子任务;控制任务主要完成数控系统的基本功能,包括译码、刀具补偿、速度预处理、插补运算和位置控制等子任务。

  如图1所示。

  资源分时共享主要采用的方法是循环轮流和中断优先,如图2所示,系统在完成初始化工作以后自动进入时间分配环中,在环中依次轮流处理各任务,对于系统中一些实时性很强的任务则按优先级排队,分别放在不同的中断级别上。

  三、COTS软件系统的软件体系结构

  软件体系结构是由一些实体和这些实体间的关系所构成的模型,在体系结构观点中实体是所关心的元素,它们可以是软件组件、源文件、目标文件、编译器、平台等;关系可以用描述连结性、动态行为或者所关心的依赖性的任何其他类型 。

  体系结构中所使用的特殊的实体和关系取决于建造者试图传送的信息。

  COTS 软件系统的开发本质上是集成黑盒软件组件的问题。

  这种集成过程是困难的,它容易出错,需要大量的编码,难以测试和调试。

  此外,许多COTS 组件都有高的短暂性,商业组件通常要频繁升级,这些升级可能没有增加集成者所希望的功能,或修复集成者所希望的错误。

  存在于先前版本中的关键功能可能在随后的升级版本中被除去。

  在有些情况下,集成者可能希望用不同供应商的新版本的类似组件替换老组件。

  在COTS 软件系统中,体系结构的设计合适与否直接关系到软件的成功,因为体系结构是系统实现的蓝图,为组件的集成提供了上下文,很大程度上决定了系统的各种性能。

  在COTS 软件系统中,体系结构中的实体就是COTS 组件,关系用以描述集成机制。

  现今新的技术层出不穷的情况下,准确地把握系统当前的行为,能够让开发人员和维护人员尽快地进行技术上的调整,而能保持原有的行为效果不变。

  这对于节省开销,保持程序的稳定性都有重大的意义。

  在今后的研究工作中,将着力于改善方法中对于接口信息的定义形式,使其能提供更强的描述功能。

  此外,还将尝试引入一定的动态分析工作,这有助于为我们方法提供对象在动态运行时的变量信息,根据这些信息对对象的行为方式进行更深人的分析。

  参考文献:

  [1]Yang Jinlin:Evans n Dynamically Inferring Temporal Proper―ties[C] }Proc.the ACM-SIGPLAN-SIGSOFT Workshop onProgram Analysis for Software Tools and Eng]neering.2004:23―28

  [2]Yuan Hai Xie Tao:Automatic Extraction of Abstract―object―state Machines Based on Branch Coverage[C] {Proceedings ofthe 1st International W orkshop on Reverse Engineering To Re―quirements at WCRE 2005(RETR 2005).November 2005:5-11

  [3]黄洲 彭鑫 赵文耘:基于依赖性分析的对象行为协议逆向恢复[J].计算机科学,2008,35(8):265―268,276

  [4]Tang Mei-huei,Wang Wen-li,Chen Mei小wa.A UML Approachfor So ftware Chang e Modeling.CS.albany.edu

  [5]http:∥compilers.as.uclm edu/jtb/jtb-2003

  [6]https://javac~dev.java net

  [7]Mohamed G_Gouda Closed Covers:tO Verify Progress for Com―municating Finite State Machines Technical Report[R3.CS-TR-82―191 Year of Publication:1982

  [8]http //.省略

【网络的软件体系结构应用】相关文章:

网络软件的应用功能03-29

网络化软件的复杂网络特性03-29

网络财务与自助式软件应用经济论文10-18

计算机体系结构软件模拟技术的研究论文04-16

复杂软件的网络结点影响03-29

仿真软件在计算机网络教学中的应用论文03-22

简述计算机体系结构软件模拟技术论文03-29

数控仿真软件在教学应用11-29

数控仿真软件在教学中的应用02-13