
SIHVCST 第四章应用建模 4.3正向工程与逆向工程 湖南科技职业学院软件学院
•1 第四章 应用建模 4.3 正向工程与逆向工程

SIHVCST 本节目标 掌握正向工程的基本概念 学会利用Rose工具生成代码框架 掌握逆向工程的基本概念 学会利用Rose工具从代码中生成模型 目任务 1.利用建模工具执行正向工程,将系统中的模型转换 成指定语言类型的代码框架。 湖南科技职业学院软件学院 2
•2 本节目标 • 掌握正向工程的基本概念 • 学会利用Rose工具生成代码框架 • 掌握逆向工程的基本概念 • 学会利用Rose工具从代码中生成模型 任务 1. 利用建模工具执行正向工程,将系统中的模型转换 成指定语言类型的代码框架

SIHVCST 4.3正向工程与逆向工程 ·建模是重要的,二进制代码也是重要的。 如何将模型转换成代码,及将代码转变成模型 两个过程? 模型 逆向工程 ·正向工程 源代码 湖南科技职业学院软件学院 3
•3 4.3 正向工程与逆向工程 • 建模是重要的,二进制代码也是重要的。 • 如何将模型转换成代码,及将代码转变成模型 两个过程 ? •模型 •源代码 •正向工程 •逆向工程

SIHVCST 4.3.1正向工程(forward engineering) 正向过程是通过到实现语言的映射而把模型转 换为代码的过程。 利用Rose工具生成代码框架的基本步骤: (1)检查模型 (2)创建组件 (3)将类映射到组件 (4)设置代码生成属性 (5)选择类,组件和包 (6)生成代码 湖南科技职业学院软件学院 4
•4 4.3.1 正向工程(forward engineering) • 正向过程是通过到实现语言的映射而把模型转 换为代码的过程。 • 利用Rose工具生成代码框架的基本步骤: (1)检查模型 (2)创建组件 (3)将类映射到组件 (4)设置代码生成属性 (5)选择类,组件和包 (6)生成代码

SIHVCST 4.3.2逆向工程(Reverse Engineering) ·逆向工程是通过从特定实现语言的映射而把代 码转换为模型的过程。 逆向工程涉及的对象可分为三类: 一数据:作为学习、推理和讨论基础的实际信息。 一知识:所知内容的总和,包括数据以及从数据中推 导出的关系和规则。 信息:相互交织的交流知识。 湖南科技职业学院软件学院 .5
•5 4.3.2逆向工程(Reverse Engineering) • 逆向工程是通过从特定实现语言的映射而把代 码转换为模型的过程。 • 逆向工程涉及的对象可分为三类: – 数据:作为学习、推理和讨论基础的实际信息。 – 知识:所知内容的总和,包括数据以及从数据中推 导出的关系和规则。 – 信息:相互交织的交流知识

SIHVCST 4.3.2逆向工程(Reverse Engineering) 利用Rose工具实施逆向工程 ①使用逆向工程选项“Tools->Java->Reverse Engineer..."; ②使用逆向工程选项可以解决从源代码到模型的同步 问题。选择刚刚修改过的Reader..java文件,按下 “Reverse”按钮。完成后,按下“Done”按钮关闭 逆向工程窗口。 ③在浏览窗口中,展开Logic View下的Reader类,可 以发现新增加的方法,己经在模型得到体现; 湖南科技职业学院软件学院 6
•6 4.3.2逆向工程(Reverse Engineering) • 利用Rose工具实施逆向工程 ①使用逆向工程选项“Tools->Java->Reverse Engineer…”; ②使用逆向工程选项可以解决从源代码到模型的同步 问题。选择刚刚修改过的Reader.java文件,按下 “Reverse”按钮。完成后,按下“Done”按钮关闭 逆向工程窗口。 ③在浏览窗口中,展开Logic View下的Reader类,可 以发现新增加的方法,已经在模型得到体现;

SIHVCST 任务解决 通过本节的学习,已经可以使用Rose工具将设 计的模型通过正向工程生成代码框架。按照使 用Rose工具生成代码的6步基本步骤可以顺利 的完成代码框架的生成工作。 SIHV/CST 湖南科技职业学院软件学院 7
•7 任务解决 • 通过本节的学习,已经可以使用Rose工具将设 计的模型通过正向工程生成代码框架。按照使 用Rose工具生成代码的6步基本步骤可以顺利 的完成代码框架的生成工作

SIHVCST 精练 请您根据本节所学知识,对HNS图书馆管理系 统实施逆向工程,以保持代码与模型的同步。 SIHV/CST SH 湖南科技职业学院软件学院 8
•8 精练 • 请您根据本节所学知识,对HNS图书馆管理系 统实施逆向工程,以保持代码与模型的同步

SIHVCST 小结 正向过程是通过到实现语言的映射而把模型转换为代 码的过程。使用Rose生成代码的基本步骤有6步: (1)检查模型 (2)创建组件 SIH (3)将类映射到组件 (4)设置代码生成属性 (5)选择类,组件和包 SIHV/C (6)生成代码 湖南科技职业学院软件学院 "9
•9 小结 • 正向过程是通过到实现语言的映射而把模型转换为代 码的过程。使用Rose生成代码的基本步骤有6步: (1)检查模型 (2)创建组件 (3)将类映射到组件 (4)设置代码生成属性 (5)选择类,组件和包 (6)生成代码

SIHVCST 小结 逆向工程是通过从特定实现语言的映射而把代 码转换为模型的过程,它具有以下一些特点: ①逆向工程不改变目标系统,它是一个检查和设计恢 复的过程,而不是修改的过程。 ②逆向工程适用于软件生命周期的各个阶段和各种抽 象层次 ③逆向工程基本不可能从代码中产生一个与原来模型 完全一致的模型。 ④逆向工程可以帮助我们使模型与代码保持同步。 湖南科技职业学院软件学院 10
•10 小结 • 逆向工程是通过从特定实现语言的映射而把代 码转换为模型的过程,它具有以下一些特点: ①逆向工程不改变目标系统,它是一个检查和设计恢 复的过程,而不是修改的过程。 ②逆向工程适用于软件生命周期的各个阶段和各种抽 象层次 ③逆向工程基本不可能从代码中产生一个与原来模型 完全一致的模型。 ④逆向工程可以帮助我们使模型与代码保持同步