仿生软件工程模型研究
【摘要】:与生命体类似,一个软件也要经历孕育、诞生、成长、成熟、衰亡等阶段,软件开发模型作为描述软件开发、活动和任务的结构框架能清晰、直观地表达软件开发的全过程,明确规定了要完成的主要活动和任务,以此作为软件开发工作的基础。典型的开发模型如瀑布模型、增量模型、螺旋模型都在某种程度上为构建和维护有效的、实用的和高质量的软件提供了支持。然而,这些模型大都局限于解决某类问题,例如螺旋模型特别适合于大型复杂系统的开发。事实上正如生命体具有丰富的多样性一样,软件系统本身也是各式各样的,这些单一模型难以应对软件系统的多样性。
随着互联网应用平台、软件技术和软件需求的发展,软件工程的研究逐渐朝着个性化、一体化、智能化的方向发展,因此寻找新的软件形态和开发技术成为软件产业的前沿和热点问题。基于这种发展趋势,我们尝试将仿生学原理引入到软件工程方法研究之中,对仿生软件工程方法进行探索。通过模仿自然界中的微生物、植物和动物的形态、生理、组织机理、繁衍行为等特征来进行软件开发的过程。在仿生软件软件工程概念的基础上建立了仿生软件的概念模型、生命模型和适应度模型,然后在仿生软件模型的基础上给出仿植物软件和仿动物软件的体系结构,最后基于这些体系结构,给出仿生软件工程的开发方法。