序篇 工程实践绪论 3
第1章 CDIO工程教育理念 3
第一篇 C语言程序设计工程实践篇 11
第2章 绪论 11
2.1 概述 11
2.2 软件工程简介 11
2.3 软件生命周期 12
2.4 实例——学生学籍管理系统 13
第3章 需求分析 15
3.1 概述 15
3.2 需求分析的任务 15
3.2.1 确定对系统的综合要求 15
3.2.2 建立系统功能模型 17
3.2.3 分析系统的数据要求 19
3.3 数据设计 19
3.3.1 数据对象 19
3.3.2 数据属性 19
3.3.3 数据对象关系 20
3.3.4 实例数据设计 20
第4章 人机界面 21
4.1 概述 21
4.1.1 设计问题 21
4.1.2 设计过程 23
4.2 人机界面设计 23
4.2.1 字符模式人机界面设计 23
4.2.2 图形模式人机界面设计 27
4.3 人机界面设计 30
4.3.1 总体界面设计 30
4.3.2 界面选单设计 30
4.3.3 界面切换设计 31
第5章 功能设计 33
5.1 概述 33
5.2 功能模块图 33
5.2.1 总体功能 33
5.2.2 功能模块划分 34
5.3 模块详细设计 34
5.3.1 面向过程的设计 34
5.3.2 过程设计工具 35
5.3.3 实例详细设计 37
第6章 编码 41
6.1 概述 41
6.2 编码规范 41
6.2.1 排版 42
6.2.2 注释 43
6.2.3 命名规则 45
6.2.4 可读性 48
6.2.5 变量与结构 49
6.2.6 函数与过程 50
6.2.7 效率 51
6.2.8 质量保证 51
6.2.9 宏 53
6.3 实例编码 53
第7章 测试 86
7.1 概述 86
7.2 测试基础 86
7.2.1 测试目标 86
7.2.2 测试准则 87
7.2.3 测试方法 87
7.2.4 测试步骤 87
7.3 测试分类 88
7.3.1 模块测试 88
7.3.2 集成测试 88
7.3.3 实例测试 88
7.4 软件维护 92
第二篇 网络攻击与防御工程实践篇 95
第8章 网络攻击与防御工程实践计划 95
8.1 渗透方向 95
8.2 逆向方向 99
第9章 工程实践实施——渗透方向 104
9.1 题目布置 104
9.2 环境准备 104
9.2.1 虚拟机的选择 104
9.2.2 IIS环境 105
9.2.3 Apache环境 107
9.3 工程实践2 109
9.3.1 攻击环境介绍 109
9.3.2 渗透过程 111
9.4 工程实践3 123
9.4.1 攻击环境介绍 123
9.4.2 漏洞代码分析 126
9.4.3 渗透测试过程 128
9.5 工程实践4与工程实践5 131
9.5.1 攻击环境介绍 131
9.5.2 渗透过程 134
第10章 工程实践实施——逆向方向 141
10.1 工程实践2 141
10.1.1 题目布置 141
10.1.2 实现 141
10.2 工程实践3 147
10.2.1 题目布置 147
10.2.2 程序模块设计 148
10.2.3 程序流程设计 148
10.2.4 程序实现 149
10.2.5 功能测试 150
10.2.6 反汇编分析 150
10.3 工程实践4 155
10.3.1 题目布置 155
10.3.2 测试环境及所用工具 156
10.3.3 脱壳过程 156
10.3.4 修改程序 161
10.3.5 写注册机 162
10.4 工程实践5 169
10.4.1 题目布置 169
10.4.2 漏洞介绍和漏洞代码 170
10.4.3 逻辑分析 172
10.4.4 利用过程 180
第三篇 物联网工程实践篇 187
第11章 物联网工程实践计划 187
11.1 森林消防监控管理系统 187
11.1.1 项目目标 187
11.1.2 系统描述 188
11.1.3 实施计划 190
11.1.4 考核方式 192
11.2 智能家居系统 193
11.2.1 项目目标 193
11.2.2 系统概况 193
11.2.3 所需硬件设备、软件 195
11.2.4 具体实施计划 195
11.2.5 考核方式 197
11.3 大田作物生长环境监控系统 197
11.3.1 系统简介 198
11.3.2 系统功能、实现方法及工作流程 198
11.3.3 系统拓扑结构 199
11.3.4 所需硬件设备、软件 199
11.3.5 工作任务及要求 200
11.4 家庭消防安全监控系统 201
11.4.1 项目目标 201
11.4.2 系统描述 201
11.4.3 考核方式 207
第12章 物联网系统设计基础 208
12.1 物联网系统组织架构 208
12.2 ZigBee事件响应的总体机制 209
12.3 终端主动型应用程序设计 210
12.4 协调器主动型应用程序设计 212
12.5 网关程序设计案例 217
第13章 物联网系统Web端安全设计 220
13.1 网站安全登录技术 220
13.1.1 成员管理和角色管理的概念 220
13.1.2 成员管理的实现 221
13.2 网站安全登录案例 225
13.3 登录控件及登录数据库 236
13.3.1 Login控件 236
13.3.2 LoginName控件 237
13.3.3 LoginStatus登录状态控件 237
13.3.4 CreateUserWizard注册控件 237
13.3.5 登录数据库的配置和建立 238
13.4 页面安全访问技术 238
13.4.1 页面安全访问技术原理 238
13.4.2 Session服务器变量 239
13.4.3 页面加载访问技术 239
13.4.4 页面加载安全访问技术原理 240
13.5 注入攻击的防范 241
13.5.1 SQL注入攻击的原理 241
13.5.2 SQL注入攻击的防范 243
参考文献 244