1.2 团队开发面临的问题
随着开发的进行,团队会遇到各式各样的问题:团队内部对遇到的问题没有共享、项目进度无法掌控、多人编写同一个产品的代码造成开发内容冲突等。而且由于涉及多个人,所以代码质量的统一以及产品代码的整体把控都变得越发困难。
如今的软件开发已经不是一旦发布(release)就意味着开发结束这样的模式了。很多情况下都需要在运营的过程中不断地更新。因此,在这样一段较长的时间中,有必要将一个人难以完成的代码交由多个人并行修改,并且要在一定程度上保证代码品质,防止退化(degrade)4 ,同时还要不断地增加新的功能。
4 添加新功能或修正 bug 造成之前正常运行的其他功能无法运行或者运行速度变慢的现象。
人是会犯错并且容易遗忘的生物。微小的失误就可能造成系统的退化,并且对复杂的软件进行全方位、毫无遗漏的测试也是不可能的,而由多个人进行开发还有可能出现内容上相互矛盾的代码。即使是自己 1 个月前写的代码,也有可能完全忘记,甚至错认为是别人写的代码。
