项目管理与代码管理是否应该使用同一个工具?

在知乎上小编发现了这么一个问题:代码管理和项目管理是否应该分离为两个工具呢?下面我们就来给大家说说我们北京信德项目管理软件这边的观点吧!
如果代码管理是楼主定义的这个范围,我觉得还是分开好。但如果是我下面要讨论的代码管理的范畴,则要视研发团队应用工具的水平而定。如果应用工具的水平比较高,合起来好,如果目前团队应用工具的水平刚刚起步,还是分开比较好。
我们理解的代码管理工作包含下面几个层次和范围:1)代码库的管理。首先你需要寻找一款合适的版本管理工具。版本管理工具有哪些?商业方面的有IBM的ClearCase,微软的VSS,开源方面的有CSV,SVN,GIT等。版本管理工具并不局限于管理代码,国内很多研发团队还用它来管理资料和文档等。版本管理工具都需要客户端软件,例如SVN的TortoiseSVN,使用它来checkin/out,merge以及管理branch等基本操作。这些操作也是楼主上面提到的哪些操作。
2)代码源代码深度查看工具。源代码深度查看工具会给团队带来不少好处,这也是JIRA,Trac,Topo等系统都都提供这个功能的原因。尽管开发人员可以通过TortoiseSVN完成几乎所有源代码深度查看工具提供的功能,但是方便性和易用性还是要差些。因为源代码深度查看分析工具都是基于WEB操作的,直接使用浏览器即可进行所有分析工作,并且提供的功能更多的是从管理的角度而不是从开发的角度设计的。
3)代码统计工具。没有什么比一个团队连自己开发了多少代码都不知道的事情更糟糕了。一款有用的代码统计工具还是非常需要的。代码统计方面的工具也很多。这方面的工具大概又分为几类:
?纯单机版非代码库绑定工具,需要将要统计的代码下载到本地进行比较,不支持版本间的统计对比。这类工具的鼻祖是linecounter,功能非常简洁,上手也容易。?与代码管理工具紧密集成的客户端软件,这列软件可以与代码库链接,无需将代码下载到本地。这类工具的好处是可以直接对代码库的某个版本进行统计,并且可以分析版本间的动态变化信息。?与代码管理工具紧密集成的web系统提供的统计,它在第2类工具的基础上提供了进一步整合,可以让所有操作全部基于浏览器进行,使用更加方便,并且更容易与项目管理系统集成或者干脆就是项目管理系统的一部分,例如Topo系统的设计。
4)代码走查或正规检视工具。团队开展代码走查和正规检视的方式方法有很多,但是在工具支持下的这类工作更高效一些。这类工具又分为为两个子类,
?一类是帮助查错的工具,即代码扫描工具,有点类似于医院给病人看病的CT仪器,即通过代码扫描工具发现一些潜在的错误,不符合规范的隐患甚至直接找出BUG,这类工具有时又与单元测试工具又交集,例如C++Test。?另一类是检视过程辅助工具,最简单的是提供走查结果记录和跟踪,还有就是提供直接的在线检视,即通过与版本管理系统集成,直接提供将检视问题与代码库中的代码直接绑定,即让检视者将问题直接标识在代码行上,并提供更进一步的检视成果分析和统计功能。这类工具不多,JIRA(一般版本不提供,需要另购),Topo提供了这个支持。
5)代码持续集成工具。持续集成是一个很好的敏捷实践,但是对所有涉及软件开发研发团队同样有效,即使你的组织采用的是基于CMMI这类重流程来说。这类工具也非常之多,免费的,商业的,开源的,Topobuilder是我们公司开发的一款持续集成工具,这个工具也是免费的。
6)项目管理工具(缺陷/需求/任务/测试等)中的代码管理。我想就是这类功能的出现造成了楼主的这个问题。这类工具提供的功能包括:一个缺陷直接与代码库中的代码关联,或者一个缺陷的解决直接与代码库中的某次代码修改关联,测试工具与代码库集成提供代码测试覆盖分析等。尽管这类功能还是非常有用的,但具有这类功能的管理系统不多,尤其是国内的项目管理系统大多不做这类“吃力不讨好的功能,因为这里涉及到一个管理系统设计理念的问题:大多数管理系统设计的出发点是管理工具而不是研发协作工具。要理解项目管理系统的这两类设计理念的差异,你可以用“JIRA/VSTS/JAZZ”和国内的多数研发管理系统的功能列表比较一下就知道了,考虑到这点,Topo在设计的考虑上更加平衡一些,即两方面都比较注重。
总结:以上便是我们为大家整理的关于“项目管理与代码管理是否应该使用同一个工具?”的观点!希望对大家有所帮助!

北京信德宏方软件有限公司 咨询电话:4000031806 010-61592486 公司地址:北京市海淀区苏州街1号8层