第1章 软件构建
软件开发中的各种不同的活动:
- 定义问题 problem definition
- 需求分析 requirements development
- 规划构建 construction planning
- 软件架构 software architecture,或高层设计high-level design
- 详细设计 detailed design
- 编码与调试 coding and debugging
- 单元测试 unit testing
- 集成测试 integration testing
- 集成 integration
- 系统测试 system testing
- 保障维护 corrective maintenance
- 软件构建是主要部分也是核心部分,构建活动是每个项目中唯一一个必不可少的工作
- 软件构建的主要活动包括:详细设计、编码、测试、集成、开发者测试(developer testing)(包括单元测试和集成测试)
- 构建也常被称作“编码”和“编程”
- 构建活动的质量对软件的质量有着实质性的影响
- 对如何进行构建的理解程度决定了一名程序员的优秀程度
第2章 用隐喻来更充分地理解软件开发
要点:
- 隐喻是启示而不是算法,因此往往有一点随意
- 隐喻把软件开发过程与其他你熟悉的活动联系在一起,帮助你更好的理解
- 有些隐喻比其他隐喻更贴切
- 通过把软件的构建过程必做是房屋的建设过程,我们可以发现,仔细的准备是必要的,而大型项目和小型项目之间也是有差异的
- 通过把软件开发中的实践比作是智慧工具箱中的工具,我们又发现,每位程序员都有许多工具,但并不存在任何一个能适用于所有工作的工具,因地制宜的选择正确工具是成为能有效编程的程序员的关键
- 不同的隐喻彼此并不排斥,应该使用某种对你最有益处的隐喻组合