什么是软件构建:
开发计算机软件已是一个复杂地过程,有着这些不同的活动:
- 定义问题
- 需求分析
- 规划构建
- 软件架构
- 详细设计
- 编码与调试
- 单元测试
- 集成测试
- 集成
- 系统测试
- 保障维护
构建活动主要是编码和调试,同样涉及详细设计,规划构建,单元测试,继承,集成测试等活动。构建并不都是机械化的,需要客观的创造力和判断力。
在书中有这样一段描述印象很深刻:构建活动是唯一 一项确保会完成的工作;一个理想的软件项目,进行构建之前,都要经过谨慎的需求分析,架构设计。在构建完成之后,也要经历全面,统计意义上受控制的系统测试。对构建活动进行改进,是改进软件开发过程的一种有效途径。
重要的研发成果常常产自类比,通过不太理解的东西和一些较为理解,十分类似的东西作比较,俗称“建模”。
科学发展的历史并不是一系列从“错误”的隐喻到“正确”的隐喻的转变,而是一系列从“不太合适”的隐喻到“更好”的隐喻的转变。