基于组件的软件开发(component based software development,CBSD)方法是一种有效提高软件重用性,降低软件产品开发成本的方法.在CBSD过程中很重要的一个环节就是组件的选择;目前针对这部分的研究多数都是关于组件技术的实现细节,而缺少宏观上的决策指导组件的选择.针对这种情况,引入了兼容性关系集合的概念,结合非此即彼约束描述软件组件之间的兼容性关系;提出了一个综合考虑重用性和兼容性的组件选择优化模型;通过仿真揭示模型中关键参数变化对软件产品总成本目标的影响.在选择组件开发商参与软件产品的设计和开发过程中,模型可以为软件开发商提供决策支持;在组件中间商采购组件产品构建组件库过程中,模型也可以提供宏观的指导作用.
Component based software development is well acknowledged as a methodology which establishes reusability of software and reduces development cost effectively. Component selection is a very important part of CBSD process, however most of the research works have focused on details of implementation using information technologies rather than optimization methods. Based on this background, a concept of compatibility set is ility of software components with either-or constrains ; a component selection model is proposed which consides reusability and compatibility ; meanwhile relationships between parameters of the model and the objective value of total cost are discussed through simulation. The model can assist software pro- viders in decision making during their selecting of component providers, who will be involved in software product design and development. Component intermediate merchants can utilize the model for instruction function when they build component repository for software markets.