关于软件工程的问题
花了大概两三天的时间就一直看《构建之法》,看久了真的看不进去,有些内容就是比较肤浅的过了一遍,有些会琢磨琢磨,一下就是我看完书的一些问题了。
1、第一章第一页提到发现同事写的程序不好,想推翻重写,老员工告诫那是以前一个新员工推翻重写的,没有以前的好用。面对这种情况,我们该怎样做?以及在第四章提到
的代码复审,在代码复审时,有新的功能想要添加,是立马着手改还是先将原本的代码完善好?在网上看到的建议是先完善好代码再添加功能,但是完善后添加功能是不是更
复杂,工作量更大呢?
2、第二章的单元测试与代码覆盖的问题:单元测试可以反馈代码模块的正确性,代码覆盖率也是同样的功能,是不是不用管代码覆盖率了?
但是在知乎上看到:之前做过的单元测试,后来覆盖率不到100%,发现了很多问题。我现在的困惑是:单元测试与代码覆盖率的区别关系是什么?
3、第六章敏捷流程,敏捷是一股思潮,涵盖了好几种软件开发的方法论,有它的适用范围。如何选择方法就要根据我们的需求来定。
关于敏捷流程的问题:团队分配任务不均或是依赖性任务另一办无人认领怎么办?如何协调团队成员的能力来提高工作效率。
4、第7章,MSF原则的充分授权和信任。问题:MSF提倡自下而上计划,每个人充分授权,但是这对于领导的职能是有所影响的,一个不成熟的团队会衍生很多问题,协作方
面也容易出现矛盾
5、第9章,PM的工作是否过于繁杂,既要有过硬的多方面的专业知识,又要和开发测试员、客户沟通。微软的program manager与大部分公司的project manager是有区别的,
微软的PM还有分类,国内公司的PM有吗?通过网络查找,没有找到project manager的分类,为什么不引进program manager的职能模式呢?
6、在第11章软件设计与实现中提到:如果某个文件在你签出之后已经被别人修改,并且签入了,那么你在签入你的修改的时候,如何合并不同的修改?
通过网络找到的解决方法是:先备份自己开发的代码,将修改后签入的代码更新到本地,在本地手动合并修改后,用d的工具是Beyond Compare。
未解决的问题:冲突不能简单解决怎么办?