A Little Fool

Fool For Free.

博客园 首页 新随笔 联系 订阅 管理
一、高效软件开发团队的特征
本人从事软件开发几年以来,经历了多次的成功与失败的体验,总觉得我所在的团队可以做得更好些,但结果并不是我想象 中的那样,许多时候整个团队并不能像我想象那样运作,总是出现各种各样的问题。一些问题的存在只是因为其他问题存在而存在的,所以我一直都想寻找开发团队 优化的根源。也许,至今,我仍没有找出真正的根源,单是至少已经像前走出了一步,体会到了一个高效的开发团队应该具备的特征,在此简单描述一下。
1、 团队有明确的共同目标
事 实证明,一个具有明确的而且有挑战性目标的团队比目标不明确或不具有很大的挑战性目标的团队效率高得多,通常技术人员往往会因为完成了某个明确的任务,而 且这个任务的完成具有挑战性的意义而感到自豪,反过来团队成员为了获取这种自豪的感觉而更加积极的工作从而带来团队开发的高效率,如作为系统设计人员很清 楚的知道在什么时候要做到什么,什么时候开始做,什么时候必须完成,为了完成工作必须面临哪些挑战,怎么解决这些困难等为设计出一个高质量的软件项目提供 了重要保证,而模模糊糊的去设计一个系统或模模糊糊的就去编写代码是非常危险的,而且会为此付出高昂代价,因此高效的软件开发团队具有挑战性的共同目标。
2、 团队有很强的凝聚力
在一个高效的软件开发团队中,成员们凝聚为一个整体共同进行工作,他们是相互支持、互相交流、互相尊重的,而 不是相互推卸责任、保守、相互指责的,在一些散乱的开发团队中往往存在这样的问题,一些程序员是比较保守的,明明知道另外的模块中需要用到一段与自己已经 编写完成但有些难度的程序代码,他也不愿拿出来给其它程序员共享,不愿与系统设计人员交流,这样给项目的进度造成了些不可度量的因素。
3、 团队有融洽的交流环境
在 一个开发团队中,每个人行使自己的职责,如需求分析人员制定需求规格说明、系统设计人员做系统概要设计和详细设计、项目经理配置项目开发环境并且制定项目 计划等,但每个人的工作不可能做到完美的,如系统概要设计的文档可能有个别地方词不达意,做详细设计的时候就可能会造成误解,项目经理制定计划时可能忽略 了某种风险的存在而造成执行者过于紧张的压力等等情况都需要大家通过交流、反馈的手段然后协商解决的,因此高效的软件开发团队是具有融洽的交流环境的,而 不是那种简单的命令执行式的。
4、 团队有明确的角色划分
所有成员都明白自己的职责,知道必须完成什么计划?由谁来完成?什么时候 开始?什么时候结束?按什么顺序?这里我所强调的是整个团队必须有一个核心,这个角色就是项目经理。这个角色应该具有相应的日程制定和修改权利,开发团队 内部人员调配的权利,分配任务并验收的权利,在开发团队中不应该再有其他行政权利角色存在。想到这一点的原因就是我曾经处于模糊的角色任命状态,老总并没 有明确指定我为项目经理,但实际上是承担这一角色的工作和责任。这就导致了有责任而无权利的状态,导致很多事情障碍重重,无法顺利开展。
posted on 2009-10-27 21:36  HenryRead  阅读(458)  评论(0编辑  收藏  举报