论文部分内容阅读
随着Internet时代的到来,软件业面临着一系列的变化。软件越来越复杂,时间要求越来越短,软件的代码从几十年前的几百行到现在的上百万行。些变化使得传统的软件开发方法不能满足现在商业界对于软件的需求,软件业面临着越来越大的压力。基于构件的软件开发是解决软件危机的有效途径。它是在一些构件模型的基础上,根据需求选择构件库中的一个或多个软件构件,然后把这些构件组装起来,高效率、高质量地构造应用软件系统的过程。随着网络技术的不断发展,构件库中的构件也越来越多,一般情况下构件库中满足用户需求的构件不止一个,如果让用户自己手动的来进行选择,这无疑提高了对用户的要求,而且不利于构件的智能化组装、增加了基于构件软件开发的成本。所以如何从这多个候选构件中快速、有效的选择出最优或近似最优的构件,从而提高构件组装的成功率是一个关键的问题。本文主要分为三大部分。第一部分阐述了构件的一些基本概念、现阶段比较流行的三种构件模型COM、EJB、CORBA以及软件的质量度量模型,然后介绍了构件库与数据库系统的区别和联系及其主要功能。第二部分主要是根据不同的构件描述形式,介绍了现在常用的四种构件检索方法。第三部分阐述了两种人工智能算法(遗传算法和禁忌搜索算法)在构件检索中的应用。首先对两种智能算法在构件检索中的可行性进行了分析,然后分别介绍了基于遗传算法的构件检索方法和基于禁忌搜索算法的构件检索方法,对这两种构件检索方法的一些关键设计和具体的算法过程进行了详细的描述,并在此基础上进行了实验仿真,对仿真的结果进行了对比和分析,证明了这两种方法的有效性。本文研究的目的和意义在于对于构件数量非常庞大的构件库,根据用户的需求所检索出的构件较多时,利用人工智能算法找出一个最优的构件组合反馈给用户,减少了下一步组装过程中人工参与否认程度,提高构件的组装效率,加快构件的智能化组装的发展。