收藏 分享(赏)

软件在线升级设计方案及演变过程分析.doc

上传人:精品资料 文档编号:8794407 上传时间:2019-07-11 格式:DOC 页数:4 大小:66.40KB
下载 相关 举报
软件在线升级设计方案及演变过程分析.doc_第1页
第1页 / 共4页
软件在线升级设计方案及演变过程分析.doc_第2页
第2页 / 共4页
软件在线升级设计方案及演变过程分析.doc_第3页
第3页 / 共4页
软件在线升级设计方案及演变过程分析.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、软件在线升级设计方案及演变过程分析摘要:本文通过一个虚拟项目,以时间为序,描述了一个软件在线升级设计方案的演变过程,针对遇到的一些典型问题进行分析,提出了相应的解决方法,并对该方案的一些不足提出改进建议。关键字:在线升级 自动升级 升级包 类工厂 Xml一、 前言目前,各种业务系统的应用软件,部署方式为 B/S 结构和 C/S 结构。B/S 由于易于部署、维护,但完成一些复杂业务时性能较弱。C/S 结构,通过在客户部署客户端,性能优于 B/S 结构,但随着客户的增多,各种客户端版本的不统一,造成服务器复杂度提高,性能下降。通过在线升级,可以降低新版本软件的部署费用,提高客户满意度。二、 项目背

2、景假设某软件公司,有多个产品线,其中一个项目组负责其中一套应用软件,采用 C/S结构设计,在全国各地拥有广泛的用户群。由于原有版本只带有简单的升级功能,需要制定完善的升级方案。如果该升级方案设计实现完美,可以推广到全公司各个产品使用。三、 第一次设计方案1、 接到项目任务后,需要对需求进行分析,确定设计思路该项目需要完成在线升级的功能,部署时,就得采用客户端-服务器结构,可分别简称为升级工具、升级服务器。升级工具向升级服务器查询升级包,并完成升级包的下载。升级工具,需要完成应用软件的升级,待升级的应用软件,简称为应用程序。为了降低应用程序与升级工具的耦合,升级工具设计为单独的可执行程序,通过应

3、用程序调用执行。此时,确定了定义:升级工具,升级服务器,应用程序,相互关系如下图所示:2、进一步分析升级工具,需要升级自己。升级工具已经加载的 DLL,是不能升级的,这需要将升级工具的功能一分为二,简称为升级工具 A、升级工具 B。升级工具 A 完成升级工具 B 的升级,升级工具 B 完成升级工具 A 的升级。升级工具两部分的功能,可分别描述为:升级工具 A 主要完成升级包的查询、下载;更新升级工具 B;升级工具 B 主要完成升级应用程序、更新升级工具 A。此时,重新确定了定义:升级工具、升级服务器、升级工具 A、升级工具 B,相互关系如下图示:四、 第二次设计方案1、开发中遇到的问题升级工具

4、 B,根据升级对象的特征,需要升级应用程序的文件、数据库结构、下载数据,每部分均通过独立模块完成。由于不同升级包的升级项各不相同,如何协调不同升级包的处理模块,调用、显示界面统一,是需要解决的问题。2、解决办法升级包提供包含各个升级项的配置,由类工厂负责生成的各个升级项的实现类,由升级工具的调度模块统一调用。其结构如下图所示:五、 第三次设计方案1、内部测试时遇到的问题由于应用程序的开发人员,与升级工具开发人员分工的不同,分别独立开发、测试自己职责范围内的开发任务。应用程序与升级工具之间的信息交换,如何能够标准化、规范化,如果能够在保持结构不变的情况下,扩展新的功能需求,需要解决。应用程序是一

5、个主干程序,同时可以外挂各种扩展性功能组件。这些扩展的功能组件,大多是为某些特定范围内的客户,或者某些指定客户定制的。当应用程序升级以后,这些扩展组件也需要升级才能正常使用,这样,就需要一个非常灵活的配置。2、解决办法应用程序与升级工具间,通过应用程序列表 Xml 配置文件,完成数据交换。应用程序每次启动时,将自己的信息写入 Xml 配置文件。各种扩展的功能模块、升级工具,每次启动时,也将自己的信息写入 Xml 配置文件。同时,参照此设计,为了降低升级工具 A 与升级工具 B 的耦合,减少升级工具 B 对升级工具 A 的依赖,升级工具 A 下载完升级包,将已下载升级包的信息写入到已下载升级包X

6、ml 配置文件,启动升级工具。升级工具 B 完成升级后,将新版本信息写入应用程序列表配置文件,可防止检测升级包出现失误。调整后的结构,如下图所示:六、 总结与展望1、 当前设计方案总结经过调整后的设计方案,由于是通过应用程序列表的 Xml 配置文件,实现应用程序和扩展组件的数据交换,此时,扩展组件可以任意扩展,升级工具均可通过 Xml 配置文件,向升级服务器查询、下载升级包。由于每次下载的升级包数量各不相同,升级工具 A 与升级工具 B 通过已下载升级包的Xml 配置文件,完成数据交换,灵活、规范。升级工具 B 采用类工厂设计思路,动态生成各升级项的实现类,安装升级包界面统一、正式。但是,此设计方案只能应用于同一产品及其扩展组件的升级,无法应用于同一台电脑内安装多种不同应用程序的情况。2、 展望针对公司产品线的多种产品,均可能安装到同一客户的电脑上。为了规范各个独立的应用程序,采用统一的在线升级界面,可采用以下的解决办法: 将升级工具开发成服务,各个不同应用程序均调用相同的升级工具。 将升级工具以可执行文件的形式,安装在单独的目录里面。应用程序列表的 Xml配置放在某个公用的文件夹,如 Application Data。 每个应用程序,带一份升级工具。软件在线升级设计方案及演变过程分析

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报