APP下载

基于模式的多层分布式软件系统架构的设计研究

2016-03-10田龙

中国新通信 2016年1期
关键词:软件工程架构

田龙

【摘要】 现代大型软件生产的重要因素之一在于软件架构的复用。软件复用(SoftWare Reuse)则是指将软件已有的所有知识融合起来应用于创建新的软件,以此来缩减软件开发所带来的各种花费。本文主要讨论基于模式构建软件架构在软件开发中的作用,从分析其使用效果来说明软件架构的良好前景。

【关键词】 软件架构 架构 软件工程

现代大型软件的生产离不开软件复用,而软件复用所带来的困难,无论是专业问题还使非专业问题,都影响着软件复用的实行。软件开发中设计结果往往比源程序的抽象级别更高,而架构设计则分为了三种模式,即架构模式、设计模式和代码模式。其中在本文中主要讲的就是架构模式了。

一、软件架构模式产生的背景

模式是指软件工程专家将软件开发过程中积累的能提高软件开发质量的规范化的方法,即设计模式和框架。设计模式有利于对框架结构的理解,有效实用的框架则往往使用了较多的设计模式,所以只有先掌握设计模式,才能对以后分析各种软件系统提供先机。

根据软件架构设计中处理问题的不同层面来讲,架构模式分为了三种模式:架构模式、设计模式和代码模式。架构模式主要讲的是软件系统里的基本组织结构或纲要。其负责提供已经规定了的子系统,并规划了责任和接下来要做的任务,是三种模式中的最高层次策略。设计模式则是中等层次的结构策略,是用于为细化软件系统的子系统。特点为规模较小,且架构模式能够拆分成不同的模式使用。代码模式是指有规定的特征来完成软件的编程技巧,代码模式的好坏只能对一些底层细节产生影响,往往不会影响到组件或子系统的结构和框架等。

软件系统在不断的深入开发,各种科学技术也在不断地创新,规模越大,软件的需求就越复杂,涉及的知识点也就越多,所以近年来软件工程专家逐渐将软件开发工作的重心从早期按个人意愿编写代码到按软件工程的理论生产大型应用系统上来。要想开发大型的、复杂的软件系统必不可少的就是提高软件开发技术能力。

二、软件架构模式的作用

软件开发过程中重要的一项工作就是系统构建,在开发过程中,开发人员可以利用模式和模式语言给出一条构建系统架构的框架这一途径。模式是支撑起整个架构的重要构件,两者密不可分且息息相关。模式的本身就是从系统架构上衍生而来的,两者有相同点也有不同点。它们都是处理一些抽象的概念之间的关系这是相同点。不同点则包括:模式与领域无关,是单纯的解决抽象概念问题的,而系统架构则是和领域息息相关,给我们处理实际问题的。

三、多层分布式软件系统架构设计

软件系统架构是指软件系统的各种组成因素之间相互作用的抽象关系。系统分析、系统设计、需求获取、编码研发等阶段都是软件开发过程所需要经历的。如果将系统架构做好,不仅可以提供可靠的平台供系统使用,还可以加大软件的复用,降低成本。

3.1建立系统架构的步骤

软件设计将软件的全部开发过程可为架构需求、软件架构设计、软件文档化、检查复审、软件制作和实际操作6个过程,分别如下:

架构需求:是指将用户群体对系统各方面的需求进行采纳整理的过程。

软件架构设计:即选定一个合适的软件体系架构风格(如B/S、N层、C/S等)作为模型,然后将通过重复反馈的过程来实现提取有效构件,并与不同构件之前形成产生新的软件架构。

软件文档化:是指制作出提供用户观看的说明书。

检查复审:是指在开发过程中及时发现设计中的错误并修改。

软件制作:即开发人员对已经开发出来的系统构件进行合成、组装和测试。

实际操作:即随着用户需求的变化而变化,根据用户新的需求进行相应的调整,满足其所需要的要求。

上面的6点就是架构设计里开发人员常用的步骤,架构设计在不停的发展,使用步骤也日渐走向成熟,即使调整了体系结构,基本步骤也能随之而发生相应的改变。

例如某学校需要建立信息管理系统,方便学校进行数字化管理。学校认为信息管理系统需要建立数十个信息资源库、必须包含学校学生的档案和人事等多个环节部门、开通网上交纳学费、涵盖学校的普通教学管理以及业务等。首先选用B/S架构风格为模型建立软件架构及软件系统。建立校园共享资源库,方便学校教学管理和学生生活学习。数据库需要加入电子文档、视频和多媒体课件等;建立业务收费系统,方便学生网上交纳学费;建立数据同步操作系统,针对学生、教职工的档案信息同步服务等和学生离校系统;还需要建立监控系统,方便监测系统组件与维护等。其次设计好软件基本架构以及需要建设的子系统后,将设计文档化,与其他开发人员探讨交流,发现其中不足与错误的地方并及时改正。然后利用软件开始制作系统并合成组装子系统。最后经过不停地测试与改正,弥补之前的不足,加入学校新的要求并完善系统的完整性和可靠性。

3.2系统架构中的常用模式

系统架构里面常用的模式有层次化架构设计、嵌入式架构设计、企业集成架构设计等。

层次化架构设计模式:分层设计能够迅速的调整系统结构框架,是几种模式中经常使用的设计方案。在该模式中MVC模式是分层设计模式中最为流行的。该模式通过将应用的做法重新整合进行再加工控制器控制器、模型、视图三块,增加了系统的灵活性和可操作性;嵌入式架构设计:该模式拥有各种良好的性能指标,是目前业界主流的嵌入式操作系统的专用,其中有:ECOS、EPOC、WinCE等等;企业集成架构设计模式:该模式主要是企业间在使用,其特点是迅速的通信和集各种服务为一体,方便且便捷。

四、软件架构和模式的发展前景

4.1软件架构方面

软件架构将来除了会越来越抽象、系统组件的构件会更加复杂外,架构的未来发展可以分为以下两点:首先,实现软件的灵活性和可拓展性是软件系统架构中企业需求的首选。软件开发组需要认真的设计架构,并以其为核心,生产出符合市场需求的不同的产品,从而不被迅速发展的主流市场所淘汰。其次,开发人员对架构样式的研究有利于新的架构的产生,也有利于就得架构的完善。开发人员可以利用已有的标准架构中选择使用一个,然后通过迭代的方法进行不同的实验,很可能因为新的系统软件的出现从而出现新的架构,并得到广泛的推广,就像纳斯的基本算法一样。上面的两个预测,如果在将来的软件发展中得以成为现实,那么对软件架构的研究就不再仅仅只是一个热门的研究行业了。

4.2模式方面

就我国目前的情况来看,软件模式的研究还尚处于发展阶段,对模式的研究也大多处于对模式和模式系统的简单层面上。未来的研究热点终究还是会落到模式的产生上来。模式的产生即模式的生成能力,是一种模式语言,也是模式语言的要素和规则。软件系统的复杂性和多样性使得模式难以迅速发展,故拥有强大的模式产生能力是将来工作中的重中之重。

五、结束语

作为一个研究的领域,软件架构是一个值得研究的课题。由于其产生的时间不久思想较新,还不是很成熟。想要得到稳定的发展,就需要深入研究相关的技术和思想,毕竟实践才是检验真理的唯一标准。

参 考 文 献

[1]尚荣艳,彭长青,方瑞明等.电机设计与仿真平台的软件安全设计[J].计算机应用与软件,2012,29(7):278-281.

[2]阮军,杨春金.基于模式的多层分布式软件系统架构的设计[J].计算机工程,2006,14:57-59.

[3]杨秀杰,段立娜.基于模式设计软件架构的研究[J].科技信息(科学教研),2007,32:75.

[4]杨文波.分层软件架构设计及应用探究[J].中国信息界,2011,10:65-66.

猜你喜欢

软件工程架构
基于云控平台雾计算架构的网联汽车路径控制
依托工作室的软件工程实践教学研究
应用瀑布模型的MOOC制作方法
融合APTECH体系的软件产业人才培养探究
基于工程教育认证的《软件工程》课程教学质量建设研究 
关于如何创新和完善计算机软件工程管理的探讨
沃尔沃汽车宣布启动全新CMA豪华紧凑型整车平台架构
VIE:从何而来,去向何方
企业架构需要统一标准
企业架构的最佳实践