第一章 绪论 | 第1-12页 |
1-1 逆向工程的研究目的和研究意义 | 第7-8页 |
1-2 逆向工程的研究现状及逆向工程工具 | 第8-10页 |
1-2-1 Microsoft Visio 2002工具 | 第8页 |
1-2-2 Rigi工具 | 第8页 |
1-2-3 SCED工具 | 第8-9页 |
1-2-4 Refine/C工具 | 第9页 |
1-2-5 Imagix4D工具 | 第9页 |
1-2-6 Sniff+工具 | 第9页 |
1-2-7 青鸟程序理解系统 | 第9-10页 |
1-3 逆向工程研究的题目来源 | 第10页 |
1-4 本文研究的主要内容 | 第10-11页 |
1-5 小结 | 第11-12页 |
第二章 逆向工程分析 | 第12-20页 |
2-1 逆向工程的定义及相关概念 | 第12-14页 |
2-2 逆向工程的规范活动 | 第14-16页 |
2-2-1 数据收集 | 第14-15页 |
2-2-2 知识组织 | 第15页 |
2-2-3 信息浏览 | 第15-16页 |
2-3 逆向工程的描述模型 | 第16-17页 |
2-4 逆向工程所面临的法律问题 | 第17-19页 |
2-5 小结 | 第19-20页 |
第三章 逆向工程中程序理解策略与设计决策 | 第20-37页 |
3-1 逆向工程中程序理解的任务 | 第20-22页 |
3-1-1 程序理解的重要性与定义 | 第20页 |
3-1-2 程序理解的任务 | 第20-21页 |
3-1-3 程序理解的困难 | 第21页 |
3-1-4 程序理解策略的分类 | 第21-22页 |
3-2 自底向上策略和自顶向下策略 | 第22-23页 |
3-2-1 自底向上策略 | 第22页 |
3-2-2 自顶向下策略 | 第22-23页 |
3-3 同步细化策略 | 第23-25页 |
3-3-1 同步细化策略的含义和过程 | 第23-24页 |
3-3-2 同步细化策略对系统表示方法的要求 | 第24-25页 |
3-3-3 同步细化策略更适合软件逆向工程 | 第25页 |
3-4 程序设计决策 | 第25-27页 |
3-4-1 设计决策的分类 | 第25-26页 |
3-4-2 假想设计决策与实际设计决策 | 第26-27页 |
3-5 解析程序设计决策 | 第27-36页 |
3-5-1 解析设计决策的过程 | 第27页 |
3-5-2 解析高层设计决策 | 第27-28页 |
3-5-3 软件结构的典型形式 | 第28-30页 |
3-5-4 程序各模块之间的耦合 | 第30-33页 |
3-5-5 解析低层设计决策 | 第33页 |
3-5-6 模块内部的内聚强度 | 第33-36页 |
3-6 小结 | 第36-37页 |
第四章 基于C语言的逆向工程系统的设计和实现 | 第37-47页 |
4-1 系统需求 | 第37-39页 |
4-1-1 逆向工程系统的界面需求 | 第37-38页 |
4-1-2 逆向工程系统的文本编辑的功能需求 | 第38页 |
4-1-3 逆向工程系统的软件逆向分析的功能需求 | 第38-39页 |
4-2 系统最终实现的目标 | 第39页 |
4-3 系统的总体结构 | 第39-42页 |
4-3-2 系统视图的结构 | 第41-42页 |
4-4 系统的总体实现 | 第42-45页 |
4-4-1 系统的类实现 | 第42-43页 |
4-4-2 系统文档/视图结构的实现 | 第43-45页 |
4-5 程序信息的分析技术及先期的反编译系统 | 第45-47页 |
4-5-1 系统的类实现 | 第45页 |
4-5-2 EUCP中间代码文件解析系统的结构及实现过程 | 第45-47页 |
第五章 结论 | 第47-48页 |
参考文献 | 第48-51页 |
致谢 | 第51-52页 |
攻读学位期间所取得的相关科研成果 | 第52页 |