由于本书的研究是PAR方法的一个重要组成部分,故在此,将对PAR方法做较为详细的阐述。图1-1 PAR方法开发过程略图PAR方法是一种基于分划和递推的部分形式化算法程序设计方法,支持算法程序开发的全过程。它包括四个组成部分:算法程序设计方法、基于递推关系的算法设计语言Radl、抽象程序设计语言Apla及一系列转换系统。由PAR方法的理论及上述对算法的推导,我们可以看出,PAR方法在克服软件危机方面将大有作为。......
2023-10-26
算法程序自动生成技术一直是软件开发中提高开发效率的一个有效手段,各种自动生成技术和方法层出不穷,如演绎推理法、程序变换法、归纳综合法、模型驱动软件开发方法等。Krzysztof Czarnecki和U.Eisenecker在前人研究的基础上,提出一种全新的软件开发方法——生成式程序设计(generative programming,简称gp)。生成式程序设计是在对整个软件系统族进行建模的基础上,从领域特定语言描述的软件需求规约和配置知识出发,自动化地组装基层的可复用软件部件,使生产出的软件产品能满足客户的需求,从而实现软件开发的自动化。生成式程序设计包括两个开发周期——领域工程和应用工程。领域工程和应用工程是既存在联系又存在区别的两个概念。在领域工程中,开发人员不是对某个特定的领域中的某个对象进行抽象,而是对领域中的所有对象进行抽象。应用工程与领域工程不同,开发人员是根据用户的需求开发特定的系统,没有对领域的对象进行抽象。应用工程在某种程序上是重用在前者中得到的可重用资源进行具体软件产品的制作开发。领域工程和应用工程并不存在先后顺序,而是两个并行的过程。
生成式程序设计目标集中于特定领域,因此必须要对“领域”这个概念先有一个理解。在软件用语环境中,领域是指具有相同或相似特征的应用系统区域,区域包含了应用系统覆盖的问题、问题策略、功能等内容。在领域工程中,首先需要做的是对领域的系统族进行分析,分离这些对象之间的可变特征和差异特征,并对这些特征进行进一步的抽象,形成领域模型。在领域模型的基础上,设计、开发和组装可复用资源。下面详细地介绍领域工程中的三个不同阶段——领域分析、领域设计以及领域实现。(www.chuimin.cn)
有关形式化构件装配的图算法生成的文章
由于本书的研究是PAR方法的一个重要组成部分,故在此,将对PAR方法做较为详细的阐述。图1-1 PAR方法开发过程略图PAR方法是一种基于分划和递推的部分形式化算法程序设计方法,支持算法程序开发的全过程。它包括四个组成部分:算法程序设计方法、基于递推关系的算法设计语言Radl、抽象程序设计语言Apla及一系列转换系统。由PAR方法的理论及上述对算法的推导,我们可以看出,PAR方法在克服软件危机方面将大有作为。......
2023-10-26
20世纪80年代以来,形式化软件开发方法的研究及应用为解决上述问题找到了一条有效的途径,使用形式化方法开发软件可以提高软件的可读性、可靠性和可维护性以及软件的开发效率,并为实现软件开发的自动化奠定基础。软件开发的形式化方法是以一般形式化方法为基础的。尤其适宜高安全性系统的开发,这也是形式化方法目前最主要的应用领域。另外,某些形式化方法缺乏描述软件结构的强有力机制,对大型软件的开发不太理想。......
2023-10-26
在图领域,广度优先搜索常被用于求解图的最短路径问题中。松弛操作的伪代码如下:2.Floyd算法Floyd算法是一个经典的全源最短路径算法,适用于不包括负环的图,可以应用于计算所有城市之间的交通道路距离问题。Floyd算法利用了上述两个假设之间的关系,该关系依赖于节点k是否是路径p上的一个中间节点。k=0则表示这两个节点是直接相连的,没有中间节点。......
2023-10-26
在实际应用中,很多算法都体现了深度优先搜索的思想。图3-2 有向图的邻接表表示2.拓扑排序深度优先搜索的另一个经典应用是对有向无环图进行拓扑排序。这两次深度优先搜索一次运行在图G上,一次运行在转置图GT上。算法计算的结果是深度优先森林,每一个强连通分量对应一棵深度优先树。......
2023-10-26
下面介绍进化算法的相关定义和统一的描述框架[1]。对于各种进化计算方法,存在一个非空集合I,I称为这个进化计算的个体空间。D的值域确定了进化计算的实际搜索范围。随机函数被称为随机种群变换,其中Ω为采样空间。遗传算法是目前研究的进化算法中三种典型算法之一,其他两种分别是进化规划和进化策略。进化规划的特点在于没有使用交叉算子,采用随机选择机制,因而变异在进化过程中占据重要地位。......
2023-11-26
本节根据MSAA的特征模型和渐进式比对算法构件的交互模型,利用Apla语言的高抽象性、对泛型及ADT的良好支持以及易于正确性验证等优点,来形式化实现多序列比对算法构件。prog构件该构件为ADT类型HMSAA中的泛型子程序,根据传入不同类型的计算比对步骤进行渐进式比对。result_op构件该构件为ADT类型,泛型子程序multiAlign_op在多序列比对结果的基础上,对结果进行格式化输出。......
2023-10-25
图2﹣38 装配图画法的基本规定4)被弹簧挡住的结构一般不画,可见部分应从弹簧丝剖面中心或弹簧外径轮廓线画出。在装配图中,当需要表示某些零件运动范围或极限位置时,可用双点画线画出该零件的极限位置图。在装配图中,当需要表达本部件与相邻部件间的装配关系时,可用双点画线假想画出相邻部件的轮廓线。图2﹣37中,双点画线表示了工件在钻模板中的安装位置及定位情况。......
2023-06-28
已经存在的多序列比对算法主要有三类:精确比对算法,渐进式比对算法和迭代比对算法。Thompson和Higgins于1994年对渐进式多序列比对算法进行了实现,提出了Clustal W算法。它在数据量较大和距离较远的序列比对中更准确,且消耗时间更短,该算法还在不断改进以适应数据量剧增的多序列比对需求。......
2023-10-25
相关推荐