论文部分内容阅读
软件体系结构逐渐成为软件工程领域的热点和关键技术。本文首先介绍了软件体系结构从“无体系结构”的设计到基于体系结构的软件开发所经历的四个阶段,然后阐述了进行基于构件的应用系统组装研究的现实意义。 随着软件产品规模的急剧扩大,基于构件的开发和基于构件的组装技术研究,日益受到国内外学术界和工业界的关注。本文从构件的基本概念、特点出发,阐述了构件的类型、构件的描述方法。详细介绍了基于构件的软件开发过程,包括构件的获取、构件的分类和检索方法,以及软件复用中的构件评价、构件的适应性修改和常用的构件组装技术等。 在体系结构层的设计方面,主要介绍了体系结构的描述方法,讨论了如何进行用户需求的收集、如何导出体系结构的需求,论述了软件复用在体系结构层的具体表现。软件复用不仅是对程序的复用,它包括对软件生产过程中任何活动所产生的制成品的复用。如:项目计划、可行性报告、需求定义、分析模型、详细说明、源程序和测试用例等等。本文主要在需求复用和设计复用方面作了描述,体系结构层的组装主要包括设计类、子系统、包、协作和它们之间关系的组装。 在实现层的具体构件组装的实现方面,重点介绍了基于功能、数据和面向对象的组装技术,介绍了基于黑盒、白盒、灰盒的构件组装方法,讨论了在构造新系统的过程中,如何进行组装技术和组装方法的选择。 从面向对象的角度,阐述了如何将体系结构层的构件映射到实现层。对于高内聚、低耦合的体系结构层的原子构件可以直接映射到实现层,对于体系结构层的高度抽象的复合构件,可以分层采用中间件、连接件等技术来挂接实现层的构件。 结合本人当前所承担的软件开发项目,实例说明了基于构件的组装技术在实际开发中的具体运用过程。三峡水库动库容演算系统是依据长江流域各水文站点的历史水文测量数据来构建三峡水库的水动学模型,再根据实时水位和流量核算出当前全流域的动态总库容,为三峡库区的防洪调度、发电、航运管理、移民搬迁以及库区生态环境等方面提供决策依据。该项目由多家单位联合开发,各自承担了不同的功能构件的设计,采用的程序设计语言也不相同,有Visual Basic、visual Fortran、Visual C++、Vega、Creator等。各自生成文件格式也有差异,有类、可执行文件和动态链接库等。整个系统的组建就是按层次运用恰当的组装技术进行构件组装的过程。 最后,探讨了基于构件的应用系统组装研究中尚存在的问题以及今后研究的方向。