第二章关注的内容
开发过程
有无到有,从有到好
两种基本的软件周期模型
-
线性过程(全部写完之前用户看不到)
-
迭代模型(边写边修改)
更多模型(在两种基本模型的基础之上)
- 瀑布模型
问清需求后,一股脑开发下去 - 增量模型
瀑布的串行,无迭代,比较容易适应需求的增加 - 原型模型(Prototyping)
- spiral(螺旋模型)
会导致开发周期非常长,但风险降低到最小
敏捷开发模型
之前的模型都不太行,我们要革命
Agile=增量+迭代
用户非常充分参与进来,增量小
今后要实践敏捷开发的思路
SCM和SVM
- SCM 软件配置管理:追踪和控制软件的变化
基线:软件持续变化的“稳定时刻”
SCI软件配置项:软件中发生变化的基本单元(文件)
CMDB:软件配置管理数据库
存储软件的各个版本+基线 - SVM
版本控制很重要,以前总是依赖于手工,效率低,本地和云保持同步,手工作业变成自动作业,Git是基本功!!!
VCS(vertion control system)版本控制系统
- Local VCS
- Centralized VCS
- Distributed VCS(分布式版本控制系统)
缺点:用更多的备份空间去换取时间,体会折中的思想。
- 传统的版本控制系统,管理change花费时间多(对文件进行比较和合成操作),但是省空间(只存储变化的代码)
- Git(分布式版本控制系统),存储发生改变的文件,省时间,耗费空间多
那么问题来了,如何判断文件是否改变了?
只看时间戳可不可以(文件名,时间)?
- 创建和合并分支
答案:A
答案:D
答案:a,b
b:不能多个
AC
答案:c
- 创建和合并分支