APP下载

基于软件体系结构的软件设计及构造

2015-07-17刘永庆海军计算技术研究所北京100841

山东工业技术 2015年8期
关键词:构件阶段软件

刘永庆(海军计算技术研究所,北京 100841)

基于软件体系结构的软件设计及构造

刘永庆
(海军计算技术研究所,北京 100841)

软件的设计存在着很多种方式,比如,传统的基于程序语言的软件设计等等。现在又出现了两种不同于传统方法的设计新技术,它们是软件体系结构和软件设计模式。这两种技术的关键之处就是在于将传统的软件设计针对的算法和数据结构转向整个软件系统的组织结构和系统性能表现。其中我们要提到的是软件体系结构,它包括了构件的处理、由数据组成的构件和构件的连接这三个部分。构件连接的作用是把结构体系中的不同数据部分组合并且连接起来;由数据组成的构件是已经加工了处理过的信息。各个有机组成成分及其关连作用和语义模式是软件体系结构的研究重点。

软件体系的结构;软件设计及其相关构造;软件体系结构的应用前景与软件体系结构相关的介绍

软件的体系结构是软件的整体结构,它包括了构件、连接件和约束构成的软件,当然这是从整个系统上来看的。除此之外,它还应该包括了软件需要完成的业务、执行这些业务的组织、组织在整体结构中相对应的位置、软件技术基础设施方面和运行软件所需要的信息的内容。软件是具有一定结构的,而不仅仅只是单个的算法或者数据的拼凑,我们常常提到的软件开发只是这其中很小的一部分。这些部分具有一些相同的地方,比如软件对应的操作系统、基于这些操作系统的基础软件、实现计算逻辑主体的应用程序、方便使用的用户界面程序等等。从细节来看,它们每个程序并不是完全独立的,它们本身也具有一定的结构。早期的结构化程序就仅仅是以语句来组成模块,通过模块的聚集和嵌套最终形成了可以层层调用的程序结构。结构化程序的程序规模比较小,通过强调结构化程序设计方法去学习,自顶向下一步一步的精心设计并同时注意两个模块之间的耦合性一般就会得到一个比较良好的软件结构,最终就会得到自己想要的运算结果,所以在整个设计过程其实并没有那么注重体系结构的。

对面向对象技术和抽象数据类型这两项新型技术的研究,加快了对软件体系的研究。因为抽象数据类型和面向对象技术需要自顶向下,是从底向上构造软件,所以可以大量应用已使用过的构件。所以,软件的规模变得更大同时软件的开发速度变得更加快,从而满足了人们对复杂软件高效率的需求。

1 软件设计的一般性原则

1.1 模块化

模块是一种可以单独命名的并且可用名字来访问的结构。子程序、函数、过程、宏等可以作为一个简单的模块。模块化就是将一些程序分成若干个模块,然后每个模块单独去完成一个个小的功能,最后把这些模块所完成的小的功能集合起来组成一个整体,最终就可以完成指定的要求。

1.2 抽象

抽象是对于某一种东西不在乎它的细节,对细节进行隐藏的一种思维方式,即把事物本质中的共同性抽出,暂时不去考虑其他的因素从而对对象的一种研究方法。软件工程在运用中,它的每个部分我们都能把它们看作是一种细分,是对软件抽象层次的一种细分。在系统的定义阶段,我们可以把软件作为整个计算机系统中的一个元素来对待;在对软件的需求阶段,我们需要用专业术语来解决问题;从总体设计到详细设计阶段,抽象的层次逐步降低,这意味着软件设计时越到后面越精细,这样抽象的层次就会降低。

1.3 信息隐蔽

通过抽象这个方法,我们可以确定什么样的实体可以构成软件。而通过对部分信息进行隐蔽,我们可以定义模块的细节,对一些相关数据的结构实施存取限制。

2 利用软件体系结构进行软件设计的相关问题

2.1 关键问题

通过使用软件体系结构来进行软件设计并且进行构造,这个新技术有着不同于传统软件设计方法的三个典型特点:软件设计方法与设计概念的有效融合、具备开放性的精确的系统软件体系语言及基于领域模型的模式。

2.1.1 过程介绍

过程是可以分为三个阶段的,第一个阶段要对软件系统特性进行了解,需要做的工作与传统软件设计差不多,要分析软件系统的特性,了解系统的构成;第二个阶段要对软件设计方案进行确立,需要建立独立与系统软件实际的应用,也就是说要把软件进行抽象,是在忽略软件程序具体的使用环境和实际功能的基础上进行的。然后对软件系统中的相关构造进行描述说明,同时对软件整体功能进行设定,来达到这个阶段的要求;第三个阶段是对具体问题的应用领域所开发的软件系统的应用框架的构建阶段,软件开发人员在进行软件开发设计之前,就要深入了解软件设计的模式和相关技术,利用好软件系统的特性和相关内容,这样就会使软件设计转向对系统软件的框架进行设计开发,以此来达到提高效率的效果。

2.1.2 开发方法的介绍

现在社会需求的软件越来越复杂,对功能的要求也越来越多,相对应的软件设计的方法也是种类繁多,如何将这些软件设计方法融合在一起来满足复杂的软件设计,就需要软件开发人员想出一种能将不同的软件设计开发方法进行融合使用的方法,利用各种方法的优势去进行软件设计。这时就需要以一种抽象的方法,使得每个阶段采用最适合的设计方法去进行软件设计。

2.2 设计核心

设计核心是软件的体系结构,设计的关键是对系统抽象和描述。它的优势就是能对软件的结构特点有着很精确的定位,使得软件体系结构成了发展最快的软件设计方法。它的缺点就是由于软件设计结构描述语言投入使用的不多,使得它们只能应用在比较特殊的范围内,当然能够获得结果也是比较固定和有限的。

3 利用软件体系结构来设计软件的发展前景

软件体系结构在软件设计中的应用,打破了传统仅使用程序设计语言去做软件研究的障碍,将各种软件设计的方法融合在软件设计的同阶段使用,在软件复杂度越来越高、追求效率的今天应用更加广泛。但同时机遇和挑战是并存的,比如有限的使用方法需要更多人力来学习。而且传统的软件设计技术虽有局限性,但其现在的应用却是多于使用软件体系结构的。不过,虽然面临着花费更多精力和时间的挑战,但是其现实价值却是更大的,其应用前景也是十分广阔的。

[1]肖苏.软件设计基本原则及其实例分析[Z].TP3.A.1671-7597(2008)1010138-01.

[2]麦中凡,戴彩霞.软件体系结构的概念[Z].TP311.A.1002-8331-(2001)11-0092-04.

[3]胡华,高济,何志均.基于软件体系结构的软件设计及构造[Z].

猜你喜欢

构件阶段软件
钢筋混凝土构件裂缝控制
关于基础教育阶段实验教学的几点看法
禅宗软件
工业软件 自主创新
在学前教育阶段,提前抢跑,只能跑得快一时,却跑不快一生。
基于构件的软件工程技术与理论方法探讨
即时通讯软件WhatsApp
大热的O2O三个阶段,你在哪?
两岸婚恋迈入全新阶段
基于构件的软件开发实践