Teamwork进行团队管理

Teamwork即团队合作,随着敏捷开发、统一过程方法等概念的引入,团队合作已经逐渐被接受,并且应用到实际的软件项目开发管理当中。”工欲善其事,必先利其器”,为保证团队合作的顺利进行,良好的团队协同管理工具是必不可少的。其实项目管理工具并不鲜见,为数不少的商业产品一直占据市场主流,随手捏来的比如微软公司的Project和Primavera公司的P3等等,但是像Teamwork这样给人留下深刻印象的开源产品却为数极少。

Teamwork是源自软件仓库SourceForge的开放源代码项目,针对团队合作的整个管理周期而设计。Teamwork集成了项目进度、团队成员、工作日志以及问题追踪等多项管理模块,并且将项目管理和文档管理很好的结合在了一起,大大方便了项目团队的分工与协同,提高了整个团队的工作效率。由于Teamwork在团队管理实践中的出色表现,已经逐步转变为商业模式运作,但Teamwork开发团队仍旧在SourceForge提供了源代码下载,供爱好者研究与学习。

那么先让我们从实现技术上认识一下Teamwork吧。Teamwork基于J2EE体系实现并且按照MVC的分层结构进行组织,技术架构上来看,Teamwork可谓是集众多的优秀开源项目于一身。Teamwork的持久层设计使用了著名的Java为对象关系映射框架Hibernate,对JDBC进行轻量级的对象封装,用对象管理的方式来读写数据。从3.0版本开始,Teamwork用Open Lab的Java Web开发框架JBlooming来进行表示层设计,JBlooming使用标准Java API和面向对象的Jsp模板技术实现,简化表示层组件调用以及Ajax实现的代码量,提高开发效率。Teamwork的内容索引则使用了Apache Jakarta的Lucene项目实现。并且Teamwork内部集成了一个简单的工作流引擎,可以和Open Lab的FlowWork项目很好的协同来进行工作流管理。

如果深入Teamwork的源代码,可以学习Teamwork的各种类功能实现以及teamwork.hbm.xml、common.hbm.xml等Hibernate持久层映射配置文件来了解程序结构和后台数据库的组织方式。本文的主要目的是把Teamwork这个优秀工具介绍给大家,暂时不把太多笔墨放在Teamwork代码的研究中,有兴趣的读者可以在SourceForge下载Teamwork代码来深入学习和研究。(本文全文参见《程序员》06年8月刊,因为忙于筹备老师的项目书和准备去额尔古纳的行程,写作疏漏之处请读者原谅。)

留下评论