随着软件规模越来越大、软件复杂度越来越高,如何高效地开发出高质量的软件以及如何有效地维护和更新软件都是当前软件方法学研究所关注的重点。为了实现这一目标,已经陆续出现一些有效的方法和技术。KrzysztofCzarnecki和U.Eisenecker融合先进方法和技术的精髓,提出了一种新的软件工程范型——生成式程序设计:基于为软件系统族进行建模,对给定的需求规格说明,利用配置知识,把基本的可重用构件根据需求进行自动化的配置以产生离定制、优化的软件产品。生成式程序设计的基础是面向系统族的生成式领域模型,该模型包括三个基本成分:问题域、解域和连接这两个域的配置知识。生成式程序设计包含两个开发周期:一个是设计和实现生成式领域模型,即支持重用的开发;另一个是利用生成式领域模型生产出具体的软件系统,也即利用重用的开发。本文将详细地介绍此软件工程范型的分析与设计方法和实现技术。