Java项目管理中的架构

来源:百度文库 编辑:16楼社区 时间:2021/08/06 10:56:39
Java项目管理中的架构  Java作为一种面向对象语言,其平台架构和测试有很大的优势。Java的项目管理也逐渐走向松散合作和敏捷开发的方向。
无疑,一个好的管理架构可以极大地促进生产率,下面看看一个新型的组合,用好他们项目管理肯定会事半功倍。
源码管理:Subversion     任务安排:JIRA     文档编写:Confluence wiki     团队通信: Google Group Mail List + MSN或者IM     测试与管理脚本 Ant/Maven2 +JUnit/EasyMock
依据
1.Subversion vs CVS
SubVersion已逐渐超越CVS,更适应于JavaEE的项目。Apache用了它很久后,Sourceforge刚刚推出SVN的支持。
使用感想:公司一直使用CVS管理源代码。而我也是在去年9月份才开始接触svn,当时看重的就是它提供了文件夹版本管理的功能。用过一段时间后,发现它的优势跟cvs相比还是比较大的。不过感觉它的用户端需要缓存文件,开销还是比较大的。这个东西正在研究中,但是精髓CVS和SVN都是一样的,没什么不同。
2.JIRA
项目计划,任务安排,错误管理多面手,胜在工具爱好者们分门别类出越来越多的项目管理工具时,它一个Web Base界面就全包了。
使用感想:在现在项目的后期开发中开始引入JIRA控制。从本质上看,与bugzilla的功能一样。但是强在任务安排和计划上,而不仅仅是错误跟踪。一直以来,软件项目控制系统做的都不是很让人满意,要不然功能单一(bugzilla),要不然过于复杂(专业系统)。而JIRA遵循了XP开发的思想,使用简单有效,一句话:用上去很爽。呵呵,这个非开源,不过免费的功能也够了。
3.Confluence wiki
选它一半因为对Jira的爱乌及乌,一半因为它有html编辑器而且没有编码问题。
使用感想:不管是团队、公司还是个人,重要的是思想的交流和积累。如果单纯从文档入手,比如学了网络就写个网络的doc文件,到最后会发现文档就如同被放入了箱子里,你不知道什么时候才会打开它,文档也就失去了它本来的作用。更重要的是,文档上不能交流!Wiki和blog两个新事物可以帮帮我们。想些东西的时候,顺便把以前写的东西翻翻看看;大家把思想放到一起交流,主线是一个有实际内容的文章,可以方便地分类整理,而不想论坛那样随意、平面。
4. Google group + MSN或者IM
在功能上,没什么PK对象。MSN没有QQ那么花哨、市井,用IM也不错,如果很长时间工作在Linux下。
使用感想:gmail用的时候不多但是感觉很好。MSN不用说了,工作上绝对的必备品,不过在Linux下用gaim不但可以和IM通讯,其自由的特点也可以和MSN等目前大多数的交流工具集成,太强了。
5. EasyMock pk JMock
JMock 要求TestCase继承于MockObjectTestCase太霸道了。妨碍了我继承于Spring2.0的ModelAndViewTestCase和使用MockDao,RealDao并行的继承体系。因此采用没那么霸道的easyMock。
另外,easyMock的脚本录制虽不如jmock那么优美,但胜在简短易读。jmock那句太长了 。
使用感想:我想写一个图书馆的书籍维护,但是小魏要下周才能写完图书馆的书籍分类维护,我现在很多东西没法做。有了mock,不用担心,虚拟一个书籍分类维护吧,帮助你测试一下。具体选型,上面说得很清楚了。
呵呵,少了ant/junit,这两个东西目前还没有替代品。虽然说testng不错,看看junit团队和testng团队的吵架,至少知道junit在工具集成上面优势比较明显。不过testng适合大型分工明确任务明确的团队,还是junit简单点。ant结合maven,一个构建脚本,一个统一管理的jar源,效果不用说了哦。
ps:junit 4.0已经出了,不过和3.8区别的精髓没有仔细看,目前觉得3.8够用了。