第1章 可信软件与软件过程 1
1.1 软件的可信需求 1
1.1.1 可信软件 2
1.1.2 可信软件需求 3
1.2 可信软件与软件过程 4
1.2.1 软件过程 4
1.2.2 可信软件与软件过程 6
1.3 本书结构 8
参考文献 9
第2章 可信软件需求获取与建模 12
2.1 软件需求工程 13
2.1.1 软件需求工程过程 14
2.1.2 软件需求建模 15
2.2 可信软件分领域需求 18
2.2.1 可信软件需求领域统计方法 18
2.2.2 可信软件需求领域统计结果 19
2.3 可信软件需求定义与获取 35
2.3.1 可信软件需求定义 35
2.3.2 可信软件非功能需求获取 40
2.4 可信软件早期需求建模 50
2.4.1 可信软件需求元模型 51
2.4.2 非功能需求本体知识库 55
2.5 案例研究 63
2.5.1 可信第三方认证中心软件SIS 63
2.5.2 航天软件 65
2.6 小结 69
参考文献 69
第3章 可信软件需求推理与权衡 73
3.1 可信软件非功能需求交互关系 74
3.1.1 软件非功能需求的交互 74
3.1.2 非功能需求推理与权衡 76
3.2 可信软件早期需求推理 78
3.2.1 可信软件需求的可满足性问题 78
3.2.2 可信软件需求的SAT公式 83
3.2.3 推理的可靠性和完备性 86
3.2.4 可信软件需求的可满足性问题求解 88
3.3 非功能需求冲突权衡 92
3.3.1 非功能需求权衡 92
3.3.2 权衡代价分析 93
3.4 案例研究 100
3.4.1 SIS软件需求推理 100
3.4.2 SIS软件需求权衡 104
3.5 小结 108
参考文献 109
第4章 面向方面可信软件过程建模框架 113
4.1 可信软件过程建模基础 115
4.1.1 Petri网 115
4.1.2 软件演化过程建模方法 117
4.1.3 面向方面建模 121
4.2 面向方面扩展软件过程建模方法 124
4.3 可信软件过程元模型 128
4.4 可信软件过程建模框架 133
4.5 可信方面编织冲突分析 136
4.5.1 可信方面间编织冲突分析 136
4.5.2 可信方面织入基本模型冲突分析 137
4.6 可信方面编织冲突控制 138
4.6.1 可信方面间编织冲突控制 138
4.6.2 可信方面织入基本过程冲突控制 139
4.7 可信过程方面织入冲突检测 145
4.7.1 面向方面的冲突检测方法 146
4.7.2 冲突检测方面 147
4.8 小结 150
参考文献 150
第5章 可信方面编织方法 153
5.1 可信方面间融合 154
5.1.1 可信过程方面间融合 154
5.1.2 可信任务方面间融合 160
5.2 可信过程方面织入 162
5.2.1 条件织入 162
5.2.2 活动织入 164
5.2.3 弧织入 170
5.3 结构保持性 172
5.4 性质保持性 175
5.5 行为一致性 183
5.6 可信任务方面织入 187
5.7 可信方面间编织完整性及正确性 189
5.8 小结 194
参考文献 194
第6章 可信软件过程建模 195
6.1 面向方面可信软件过程建模 196
6.1.1 活动层建模 197
6.1.2 任务层和过程层建模 198
6.1.3 全局层建模 201
6.2 可信方面追踪 202
6.2.1 可信方面追踪原则 202
6.2.2 可信方面织入一致性追踪 203
6.3 案例研究 206
6.3.1 可信第三方认证中心软件SIS 207
6.3.2 航天软件 211
6.3.3 面向方面业务过程建模 217
6.4 小结 227
参考文献 228
第7章 可信软件过程管理 229
7.1 软件过程可信性度量 230
7.1.1 可靠性度量 234
7.1.2 安全性度量 246
7.1.3 易用性度量 257
7.2 软件过程改进 269
7.2.1 面向方面过程改进方法 271
7.2.2 软件过程改进案例 272
7.3 软件过程动态可信演化 274
7.3.1 过程运行实例的动态可信演化 278
7.3.2 可信过程片段迁移 281
7.3.3 演化异常处理 283
7.3.4 软件过程动态演化案例 286
7.4 可信风险评估与控制 288
7.4.1 风险管理基础 289
7.4.2 可信软件过程风险评估 290
7.4.3 可信软件过程风险控制 295
7.5 小结 298
参考文献 299