系统架构师论文-论混合软件架构设计

  • 2019 年 10 月 26 日
  • 筆記

论混合软件架构设计

摘要

    2007年3月,我所在的公司组织开发了一套完整的变电综合信息管理系统,在这个项  目中,我担任系统架构设计师职务,主要负责软件架构和网络安全体系架构设计的工作.  该系统包括变电运行所需的运行记录、图形开票、安全生产管理、生产技术管理、行政管  理、总体信息管理、技术台帐管理、班组建设、学习培训、系统维护等各个业务层次模块.      本文首先简单地分析了 C/S架构和B/S架构各自的优缺点,然后说明了混合C/S架构  和B/S架构的必要性,分析了“内外有别”和“查改有别"两种混合模型,并以变电综合信息  管理系统为例,结合寤情况,讨论了 C/S和B/S混合架构的应用.实践证明,在软件项  目的开发中,使用C/S与B/S混合软件架构,能节省开发和维护成本,使系统具有良好的  开故性,易扩展性,便于转等腕.

正文

    典型的软件架构风格有很多,例如,设计图形用户界面常用的■件驱动风格、设计操  作系统常用的层次化设计风格、设计编译程序常用的管道与过滤器风格、设计分布式应用  程序常用的客户机/服务器风格等.一个实用的软件系统通常是几种典型架构风格的组合.

1.项目概述

    当前,我国电力系统正在进行精简机构的改革,变电站也在朝无人、少人和一点带面  的枷发展(例如:一个有人值班220KV变电站带若干个无人值班的220KV和110KV变电站),  "减人增效"是必然的趋势,而要很好地达到这个目的,使用一套完善的变电综合值息管理  系统(TSMIS)显得很有必要.2007年3月,笔者所在的公司组织有关力重,针对电力系统变电运  行管理工作的需要,结合变电站运行工作龄,开发了一套完整的交电综合值息管理系统,在  这个项目中,我担任系统架构设计师职务,主要负责软件架构和网络安全体系架构设计的工  作.      TSMIS系统包括变电运行所需的运行记录、图形开票、安全生产管理、生产技术管理,  行政管理、总体信息管理、技术台帐管理、班组建设、学习培训、系统维护等各个业务层次  模块.实际使用时,用户可以根据实际情况的需要选择模块进行自由组合,以达到充分利用变  电站资源和充分发挥系统作用的目的.限于篇幅,在此我们不详细介绍各个模块的功能.      系统的实现釆用Visual C++、Wsual Basic、Visual InierDev和Java语言和开发平台进  行混合编程.服务器操作系统使用Windows 2003 Advanced Server,后库采用SQL Server  2005.系统的实现充分考虑到我国变电站所电压等级的分布,可以适用于大、中、小电压等扱  的变电站所.

2.C/S与B/S的比较分析

    C/S 具有强大的数据处理能力和事务处理能力,模型思想简单,易于人们理解和捶受.  但随春企业规模的日益扩大,软件的复杂程度不断提高,C/S架构逐渐暴露了以下缺点:      (1)开发成本较高.C/S架构对客户端软硬件配貫要求较高,増加了整个系统的成本.      (2)客户端程序设计复杂.采用C/S架构进行软件开发,大部分工作宣放在客户端  的程序设计上,客户端显得十分庞大.      (3)软件移植困难.采用不同开发工具或平台开发的软件,一般互不兼容,不能或  很难移植到其它平台上运行.      (4)软件维护和升级稣采用C/S架构的软件要升级,开发人员必须到现场为客户机升级  ,每个客户机上的软件都需维护.对软件的一个小小的改动(例如,只改动一个变重),每一  个客户端都必须更新,      B/S架构主要是利用不断成熟的WWW浏览器技术,結合浏览器的多种脚本语言,用  通用浏览器就实现了原来需要复杂的专用软件才能实现的强大功能,并节约了开发成本,  是一种全新的软件架构.基于B/S架构的软件,系统安装、修改和维护全在服务器端解决.  用户在使用系统时,仅仅需要一个浏览器就可运行全部的模块,真正达到了“零客户端”的  功能,很容易在运行时自动升级.B/S架构还提供了异种机、异种网、异种应用服务的联  机、联网、统一服务的最现实的开放性基础.      与C/S架构相比,B/S架构也有许多不足之处,例如:      (1)B/S架构缺乏对动态页面的支持能力,没有集成有效的数据库瞧功能.      (2)B/S架构的系统扩展能力差,安全性难以控制,      (3)采用B/S架构的应用系统,在数据查询等响应速度上,耍域地低于C/S架构.      (4)B/S的数据提交一般以页面为单位,数据的动态交互性不强,不利于在线事务的处  理和应用

3.C/S与B/S的混合软件架构

    传统的C/S架构并非一无是处,而新兴的B/S架构也并非十全十美.由于C/S架构根技术成  熟,原来很多的软件系统都是建立在c/s腳基础上的,因此,B/s架构要想在软件开发中起主导  作用,要走的路还很长.我们认为,C/S腳与B/S架构还将长期共存,其结合方式主要有两种.  下面,我们分别介绍C/S与B/S混合架构的两个模型.
3.1 "内外有别"模型
    在C/S与B/S混合架构的“内外有别”模型中,企业内部用户通过局域屈直接访问数据  库服务器,软件系统釆用C/S架构;企业外部用户通过Internet访问Web服务器,通过Web服务  器再访问数据库服务器,软件系统采用B/S架构.      "内外有别"的模型的优点是外部用户不直接访问数据库服务器,能保证企业数据库的相  对安全.企业内部用户的交互性较强,数据查询和修改的响应速度较快.      “内外有别'模型的缺点是企业外部用户修改和維护数据时,速度较慢,较烦琐,数  据的动态交互性不强.
3.2 "查改有别"模型
    在C/S与B/S混合软件架构的"查改有别”模型中,不管用户是通过什么方式(局域网或者  Internet)连接到系统,凡是需执行维护和修改数据操作的,就使用C/S架构,如果只是执行  一殷的查询和浏览操作,则使用B/S架构.“查改有别”模型体现了B/S架构和C/S架构的共同优  点.但因为外部用户能直接通过Internet连接到数据库服务鬍,企馈据容易暴露绘外部用户,  给数据安全造成了一定的威胁.

4.应用实例

    在设计TSMIS系砌,我们充分考虑到变电站分布管理的需霎,采用C/S与B/S混合架构的  “内外有别”模型,如下图所示.
    在TSMIS系统中,变电站内部用户通过局域网直接访问数据库服务器,外部用户(包  括县调、地调和省局的用户及普通Internet用户)通过Internet访问Web服务器,再通过  Web服务器访问数据库服务器.外部用户只需一台接入Internet的计算机,就可以通过  Internet查询运行生产管理情况,无须做太大的投入和复杂的设置.这样也方便所属电业局  及时了解各所的运况,对各变电站的运行生产进调控.此设计能很好地满足用户的需求,符  合可持续发展的原则,使系统有较好的开放性和易扩展性      该系统已经在全国的多个变电站使用,用户反映良好,真正满足了变电管理朝无人、  少人和一点带面发展趋势的需要,提高工作效率、增强准确性,对工作过程中的各种记录  都能详实、准确地记载,减少大童手工重复录入,达到变电站无人、少人值班的目的.      实践证明,在软件项目的开发中,使用C/S与B/S混合明,能节省开发和维护成本,  使系统具有良好的开放性,易扩展性,便于移植等优点.