当前位置:首页 > 工业技术
软件工程案例教程
软件工程案例教程

软件工程案例教程PDF电子书下载

工业技术

  • 电子书积分:14 积分如何计算积分?
  • 作 者:李军国,吴昊,郭晓燕,王舒
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2018
  • ISBN:9787302492986
  • 页数:443 页
图书介绍:本书系统的介绍了软件工程的基本概念、原理、方法、技术、标准和软件项目管理的知识。全书共分15章。以软件生命周期为主线,对软件工程的需求分析、概要设计、详细设计、代码设计、软件测试、软件项目管理和软件过程等方面的内容作了详尽的叙述
《软件工程案例教程》目录

第1章 软件工程的基本概念 1

1.1 软件的定义、特征和分类 1

1.1.1 软件的定义 1

1.1.2 软件的特征 1

1.1.3 软件的分类 2

1.2 软件的发展和软件危机 4

1.2.1 软件的发展历程 4

1.2.2 软件危机的表现、产生的原因和解决方法 5

1.3 软件工程方法学 6

1.3.1 软件工程的基本概念 6

1.3.2 软件工程的要素 7

1.3.3 软件工程的基本原理 8

1.3.4 软件工程的基本目标 9

1.3.5 软件工程的基本原则 10

1.3.6 两种主要的软件工程方法 10

小结 11

习题 12

第2章 软件生存周期及开发模型 13

2.1 生存周期的种类 13

2.2 生存周期的阶段划分 14

2.3 软件过程的模型 16

2.3.1 瀑布模型 16

2.3.2 原型模型 17

2.3.3 增量模型 18

2.3.4 螺旋模型 19

2.3.5 变换模型 20

2.3.6 喷泉模型 21

2.3.7 智能模型 21

2.3.8 第4代技术模型 22

2.3.9 基于构件的开发模型 23

小结 24

习题 24

第3章 结构化需求分析 26

3.1 可行性研究 26

3.1.1 问题的定义 26

3.1.2 可行性分析的内容 29

3.2 需求分析的任务 32

3.3 获取需求的方法 36

3.4 结构化需求分析方法 37

3.4.1 需求分析的原则 37

3.4.2 需求分析的过程 38

3.5 分析建模 40

3.5.1 分析模型 40

3.5.2 数据建模(E-R图) 41

3.5.3 功能建模(数据流图) 44

3.5.4 行为建模(状态迁移图) 53

3.5.5 数据字典 54

3.5.6 加工说明的描述工具 58

3.6 需求规格说明书 61

3.7 需求验证 63

小结 64

习题 64

第4章 结构化软件设计 67

4.1 软件设计的原理 68

4.1.1 软件设计的过程 68

4.1.2 软件设计的原则 69

4.1.3 软件体系结构 73

4.2 软件结构设计 77

4.2.1 模块化设计 77

4.2.2 模块的独立性 79

4.2.3 软件体系结构优化的方法 83

4.2.4 体系结构设计案例 84

4.3 面向数据流的设计方法 86

4.3.1 变换流与变换型系统结构 87

4.3.2 事务流与事务型系统结构图 87

4.3.3 变换分析与映射 88

4.3.4 事务分析与映射 89

4.4 数据设计 90

4.4.1 数据设计的原则 90

4.4.2 文件设计的过程 91

4.4.3 数据库设计 92

4.4.4 数据库设计的技巧 100

4.5 详细设计 103

4.5.1 详细设计的任务 103

4.5.2 详细设计的原则 103

4.5.3 过程设计 103

4.5.4 界面设计 110

4.5.5 在线帮助的信息设计 114

4.5.6 提示信息的信息设计 115

4.6 设计规格说明与设计评审 117

4.6.1 软件设计规格说明书 117

4.6.2 软件设计的评审 118

小结 119

习题 119

第5章 面向对象方法学 122

5.1 面向对象概述 122

5.1.1 面向对象基本概念 123

5.1.2 面向对象基本特征 125

5.2 面向对象开发方法概述 129

5.2.1 软件开发过程 129

5.2.2 传统开发方法存在的问题 130

5.2.3 面向对象开发方法的特点 132

5.2.4 Booch方法 132

5.2.5 Coda/Yourdon方法 133

5.2.6 OMT方法 134

5.2.7 OOSE方法 138

5.3 统一建模语言UML 139

5.3.1 UML概述 139

5.3.2 UML内容 140

小结 145

习题 146

第6章 面向对象分析 147

6.1 面向对象分析概述 147

6.1.1 面向对象分析模型 147

6.1.2 面向对象分析过程 149

6.2 需求陈述 150

6.3 建立功能模型 153

6.3.1 确定基本系统模型图 153

6.3.2 细化数据流图 153

6.3.3 功能描述 155

6.3.4 用例模型 155

6.4 建立静态模型 156

6.4.1 寻找类与对象 157

6.4.2 确定关联 161

6.4.3 确定属性 165

6.4.4 识别主题 166

6.4.5 识别结构 167

6.4.6 定义服务 169

6.4.7 完善对象模型 169

6.5 建立动态模型 171

6.5.1 准备脚本 172

6.5.2 确定事件 173

6.5.3 准备时序图 173

6.5.4 生成协作图 174

6.5.5 构造状态机图 174

6.5.6 完善动态模型 176

6.6 面向对象分析实例 178

小结 181

习题 182

第7章 面向对象设计 184

7.1 面向对象设计概述 184

7.1.1 面向对象设计模型 186

7.1.2 面向对象设计准则 187

7.1.3 面向对象设计启发规则 191

7.2 系统设计 193

7.2.1 系统分解 193

7.2.2 设计问题域子系统 197

7.2.3 设计人机交互子系统 199

7.2.4 设计任务管理子系统 202

7.2.5 设计数据管理子系统 206

7.2.6 全局资源管理 210

7.2.7 控制流机制 210

7.2.8 边界条件 211

7.2.9 评审 211

7.3 对象设计 212

7.3.1 设计内部结构 212

7.3.2 设计关联 212

7.3.3 设计接口 214

7.3.4 设计类中的服务 214

7.3.5 选择复用构件 216

7.3.6 优化对象设计 218

7.4 面向对象设计实例 223

7.4.1 分析阶段 223

7.4.2 设计阶段 224

小结 229

习题 229

第8章 代码设计 231

8.1 程序设计语言 231

8.1.1 程序设计语言的基本成分 231

8.1.2 程序设计语言的分类 232

8.1.3 程序设计语言的选择 234

8.2 程序设计风格 235

8.2.1 源程序的文档化 235

8.2.2 数据说明 236

8.2.3 语句构造 237

8.2.4 输入与输出 238

8.2.5 编程规范 239

8.3 结构化程序设计 243

8.3.1 结构化程序设计的原理 243

8.3.2 结构化编程 244

8.4 面向对象程序设计 245

8.4.1 面向对象语言特点 246

8.4.2 面向对象语言的选择 247

8.4.3 面向对象程序设计风格 248

8.5 程序效率 249

8.6 程序复杂性度量 250

小结 253

习题 253

第9章 软件测试 255

9.1 软件测试基础 255

9.1.1 什么是软件缺陷 256

9.1.2 软件测试的原则 257

9.1.3 软件测试过程模型 258

9.1.4 软件测试的阶段 260

9.1.5 软件测试的工作范畴 262

9.2 软件测试基本技术 263

9.2.1 黑盒测试和白盒测试 263

9.2.2 静态测试和动态测试 264

9.2.3 验证与确认 265

9.2.4 自动化测试和随机测试 265

9.3 黑盒测试法 266

9.3.1 等价类划分法 266

9.3.2 边界值分析法 268

9.3.3 错误推测法 269

9.3.4 因果图法 270

9.4 白盒测试法 273

9.4.1 逻辑覆盖法 273

9.4.2 基本路径法 275

9.5 软件测试计划 277

9.5.1 测试策略 277

9.5.2 制定测试计划 278

9.6 测试用例设计 280

9.6.1 什么是测试用例 280

9.6.2 测试用例的书写标准 281

9.6.3 测试用例设计的原则 281

9.7 面向对象测试 283

9.7.1 面向对象测试模型 283

9.7.2 面向对象的单元测试 284

9.7.3 面向对象的集成测试 286

9.8 软件测试自动化 287

9.8.1 自动化测试的基本概念 287

9.8.2 测试工具的分类及选择 288

小结 290

习题 290

第10章 软件过程 294

10.1 软件过程概述 294

10.2 软件过程能力成熟度模型 295

10.2.1 软件过程能力成熟度模型(SW-CMM)的诞生 295

10.2.2 软件过程能力成熟度模型(CMM)的组织与结构 296

10.2.3 能力等级的特点和关键过程域 298

10.2.4 实施CMM是软件企业发展的必然趋势 301

10.3 软件过程的改进 305

10.3.1 软件过程改进的5条原则 306

10.3.2 软件过程改进的策略 306

10.3.3 软件过程改进战略策划 308

10.3.4 软件过程改进建议 311

10.3.5 为什么要实施SPI 312

10.3.6 以项目形式管理SPI 312

小结 314

习题 314

第11章 成本估算与进度规划 316

11.1 软件度量与软件生产率 317

11.1.1 软件度量 317

11.1.2 面向规模的度量 318

11.1.3 面向功能的度量 318

11.1.4 软件质量的度量 320

11.1.5 影响软件生产率的因素 321

11.2 软件项目估算与开发成本估算 321

11.2.1 软件项目计划的目标 322

11.2.2 软件的范围 322

11.2.3 软件开发的资源 322

11.2.4 软件项目估算 325

11.2.5 估算之前的任务分解 325

11.2.6 软件开发成本估算 328

11.3 进度计划 333

11.3.1 各阶段工作量的分配 333

11.3.2 制订开发进度计划 334

11.3.3 进度安排的方法 334

小结 337

习题 337

第12章 团队建设与沟通管理 340

12.1 团队建设的基本概念 340

12.2 项目团队的组织 340

12.2.1 项目的组织结构模式 341

12.2.2 程序设计小组的组织形式 344

12.3 团队成员的选择与基本要求 346

12.3.1 项目开发各阶段对人员的需求 346

12.3.2 配备人员的原则 347

12.3.3 对项目经理的要求 347

12.3.4 团队成员的招聘与选择 348

12.4 团队的建设与管理 349

12.4.1 项目成员的使用与培训 349

12.4.2 对项目成员的激励 350

12.4.3 软件项目的指导 350

12.4.4 软件项目的检验 351

12.5 团队的沟通管理 351

12.5.1 沟通管理与沟通的原则 351

12.5.2 沟通方式 352

12.5.3 编制项目沟通计划 353

小结 354

习题 354

第13章 风险管理和配置管理 356

13.1 风险管理 356

13.1.1 软件风险分类 356

13.1.2 风险识别 357

13.1.3 风险预测 361

13.1.4 处理风险的策略 363

13.2 质量保证 364

13.2.1 软件质量 364

13.2.2 软件质量保证措施 365

13.3 配置管理 368

13.3.1 软件配置管理的内容 368

13.3.2 软件配置管理的基本目标 369

13.3.3 软件配置管理角色职责 369

13.3.4 软件配置管理过程描述 370

13.3.5 软件配置管理的关键活动 371

小结 378

习题 379

第14章 软件工程标准 381

14.1 软件工程标准化 381

14.1.1 软件工程标准的概念 381

14.1.2 软件工程标准的制定与推行 382

14.1.3 软件工程标准层次 382

14.2 软件质量认证 383

14.2.1 软件质量认证的产生背景 383

14.2.2 软件质量认证的标准 384

14.2.3 软件质量认证的作用 384

14.2.4 ISO 9000标准的构成 384

14.3 GB/T 8567—2006计算机软件文档编制规范 384

14.3.1 使用范围 384

14.3.2 文档过程 385

14.3.3 文档编制要求 386

小结 389

习题 389

第15章 软件文档 390

15.1 软件文档的意义 390

15.2 软件文档的作用 390

15.2.1 管理依据 390

15.2.2 任务之间联系的凭证 391

15.2.3 质量保证 391

15.2.4 培训与参考 391

15.2.5 软件维护支持 391

15.2.6 历史档案 391

15.3 软件文档的分类 391

15.3.1 开发文档 392

15.3.2 产品文档 392

15.3.3 管理文档 392

15.4 软件文档的管理 392

15.4.1 概述 392

15.4.2 管理者的作用 393

15.4.3 制订文档编制策略 393

15.5 软件文档的编写技巧 394

15.5.1 从技术角度进行文档的编写和评价 394

15.5.2 明确文档编写人员的责任 395

15.5.3 让编写人员对开发项目有准确的认识 395

15.5.4 让开发和设计人员参与文档审阅工作 395

15.6 文档编写的常用工具 395

小结 396

习题 396

第16章 软件文档编写指南 397

16.1 概述 397

16.2 软件开发文档 397

16.2.1 可行性分析(研究)报告 397

16.2.2 软件需求规格说明 402

16.2.3 概要设计书 407

16.2.4 详细设计书 417

16.3 软件管理文档 419

16.3.1 项目开发计划 419

16.3.2 软件测试计划 428

16.3.3 测试报告 431

16.3.4 开发进度月报 433

16.3.5 项目开发总结报告 434

16.4 软件用户文档 437

16.4.1 用户手册 437

16.4.2 操作手册 440

小结 441

习题 442

参考文献 443

相关图书
作者其它书籍
返回顶部