读后感---ABC:基于体系结构、面向构件的软件开发方法

版权声明:版权声明:本文为博主原创文章,如果需要,请注明出处转载。 https://blog.csdn.net/u011296723/article/details/52423414

ABC:基于体系结构、面向构件的软件开发方法

引言:应用基于构件的软件复用来提高软件生产率和软件质量。

基于构件的软件复用的过程:构件的开发、构件的管理、基于构件组装的系统开发。

在基于构件的软件开发中,系统开发的重点,不再仅是程序设计,进而变成构件组装。


基于构件的软件开发(component based software development,简称CBSD),起源于a.对复用技术的强调b.在实现GUI、数据库等上所采用构件取得的成功c.主流互操作技术的推动d.对象技术的广泛使用,提供了建造和使用构件的概念基础和实用工具。

CBSD技术,不仅定义了构件如何在运行时刻进行交互,而且提供了使用对象来构造构件的手段。

当前主要是代码复用,对于构件复用应该涵盖软件生命周期的各个阶段。



软件体系结构(software architecture),将大型软件系统的总体结构作为研究的对象,认为系统中的计算元素和它们之间交互的高层组织是系统设计的一个关键方面。其研究和实践旨在,将一个系统的体系结构显示化,以在高层抽象层次处理诸如全局组织和控制结构、功能、到计算元素的分配、计算元素间的高层交互等设计问题。

作为其最重要的一个贡献是,SA。

SA研究的主要成果表现为,体系结构描述语言ADL。从构件组装的角度看,ADL是对构件描述语言CDL的进一步扩展。不仅描述构件的语法和语义,还描述,系统中包括的构件和连接子以及它们之间的交互关系、构件的非功能类性质以及构件间协议。


ABC(architecture based component composition)方法概述

基本思想

软件体系结构是软件生命周期中的重要产物,它影响到软件开发的各个阶段

提出,基于软件体系结构的软件开发过程:

a.应该在不同的抽象层次上实现构件复用与组装

b.从SA描述到OOD和具体实现的映射是必须的

c.有效的工具支持是必要的


基本概念和建模语言

作为基于SA的软件开发方法,ABC的基本概念主要有,构件(component)、连接子(connector)、体系结构风格,面向Aspect

构件

连接子

体系结构风格

Aspect,是指软件系统中一些贯穿全局的特性,例如事务、日志等。

在上述基本元素的基础上,ABC方法定义了自己的建模语言----ABC/ADL

ABC/ADL的语言设施包括3个层次:元语言层:定义风格&模板、定义层:基于元语层模板的类型定义、实例层:实例化类型定义。

这3个层次,提供了一个易于扩展的语言框架,有利于不同语言层次的语言设施进行复用,有助于在不同层次上处理系统的语义和约束。


转换规则、支持工具和构件平台

ABC方法在两个阶段上建立了从SA到OO设计语言(现主要对UML)的转换规则

{1}从构件规约到UML框架

(2)从SA模型合成UML模型



ABC方法指导的软件开发实例

建立SA模型:建立系统结构;

构件开发:进而需要为每个设计构件指定相应的实现构;

系统检验:先对系统进行校验,主要方法:在ADL中加入形式化的语义模型,然后使用形式化方法对得到的SA模型进行验证;进而利用工具,将SA模型中的每个设计都与构件池中的每一个实现构件关联起来,随后开始系统组装工作;

系统生成:系统校验通过后,根据运行平台来生成应用系统;a.工具自动生成各个构件的接入点类的实现体b.在此基础上,ABC Tool生成应用程序的部署描述文件c.最后,工具将各个构件包和部署文件包装,并部署到指定的构件平台上,用户即可使用。



总结

ABC方法,即,把基于软件体系结构的软件开发方法和面向构件的软件开发方法相结合,进而提出的一种新的软件开发方法。

     该方法以SA作为系统开发的指导,结合CBSD方法,将构件运行平台作为组装和运行支持,利用工具支持的自动转换机制,提供了一整套从系统高层到最终实现的系统化的解决方案。




阅读更多

没有更多推荐了,返回首页