3 Software Construction Process and Configuration Management(软件构造过程与配置管理)
本章重点在于git的使用
1 Traditional Software Process Models
线性过程 迭代过程 瀑布过程 增量过程 V字模型 原型过程 螺旋模型
选择合适的过程模型的依据:
用户参与程度有多大?--适应变化的能力
开发效率/管理复杂度。
开发出的软件的质量。
迭代:开发出来之后由用户试用/评审,发现问题反馈给开发者,开发者修改原有的实现,继续交给用户评审。循环往复这个过程,直到用户满意为止。时间代价高,但开发质量也高。
2 Software Configuration Management (SCM) and Version Control System (VCS)
软件配置项:软件中发生变化的基本单元(例如:文件)
仓库:即于SCM中的CMDB。
工作拷贝:在开发者本地机器上的一份项目拷贝。
文件:一个独立的配置项。
版本:在某个特定时间点的所有文件的共同状态。
变化:即code churn,两个版本之间的差异。
HEAD:程序员正在其上工作的版本。
3 Git as an example of SCM tool
本地的CMDB
工作目录:本地文件系统
暂存区:隔离工作目录和Git仓库
每个文件都有三种状态:已修改、已暂存、已提交。
git常用指令:
git add . 将所有文件从工作区添加到暂存区
git commit -m ”name“ 从暂存区提交到本地仓库
git checkout 创建(如果没有分支的话)并切换分支
动态分析:要执行程序并观察现象、收集数据、分析不足。