Finance Manutacturing E-Commerce e CORBA CES UML Space Model Driven Telecom Architecture MOF CWM JAVA .NET EVENTS Transportation HealthCare More.. 图7-1模型驱动体系架构示意图 7.2.2逆向工程 “逆向工程”的起源是对硬件产品的分析。人们通过分析竞争对手的硬件产 品以便改进自己的产品、或者仿照对手的产品。这个概念应用到软件系统时,指 的是人们利用方法获得对软件系统及软件系统结构的理解。对一个硬件系统实施 逆向工程,一般是为了得到这个系统的复制品:而对一个软件系统实施逆向工程, 通常是为了获得对这个系统在设计层次上的理解,以便于系统的维护、巩固、移 植。 在基于模型进行软件开发的过程中,我们通过正向工程生成了代码框架,在 编写代码的过程中可能会对原来的代码框架进行修改,这些修改会导致模型与代 码的不一致,因此,我们通过逆向工程再次生成模型,从而保证模型与代码的一 致性。 近几年来,开放源代码逐渐成为一种趋势,为了达到软件架构和设计模式的 复用,从源代码中获取软件设计模式和架构模式也将成为广泛的需求,逆向工程 就是一个有用的工具。 7.3单元测试与测试驱动开发 在软件开发过程中,开发者需要保证自己编写的代码是正确的。单元测试就 是由开发者自己编写一小段代码,用于检验被测代码的某一小的、明确的功能是 否正确。图 7-1 模型驱动体系架构示意图 7.2.2 逆向工程 “逆向工程”的起源是对硬件产品的分析。人们通过分析竞争对手的硬件产 品以便改进自己的产品、或者仿照对手的产品。这个概念应用到软件系统时,指 的是人们利用方法获得对软件系统及软件系统结构的理解。对一个硬件系统实施 逆向工程,一般是为了得到这个系统的复制品;而对一个软件系统实施逆向工程, 通常是为了获得对这个系统在设计层次上的理解,以便于系统的维护、巩固、移 植。 在基于模型进行软件开发的过程中,我们通过正向工程生成了代码框架,在 编写代码的过程中可能会对原来的代码框架进行修改,这些修改会导致模型与代 码的不一致,因此,我们通过逆向工程再次生成模型,从而保证模型与代码的一 致性。 近几年来,开放源代码逐渐成为一种趋势,为了达到软件架构和设计模式的 复用,从源代码中获取软件设计模式和架构模式也将成为广泛的需求,逆向工程 就是一个有用的工具。 7.3 单元测试与测试驱动开发 在软件开发过程中,开发者需要保证自己编写的代码是正确的。单元测试就 是由开发者自己编写一小段代码,用于检验被测代码的某一小的、明确的功能是 否正确