团队协作,提高开发速度和效率.doc
团队协作,提高开发速度和效率 中小型软件开发项目一般都具有任务急、工期短的特点,要在确保满足时间、质量、成本和效益的情况下交付给客户满意软件产品, 必须保证团队与客户、团队成员之间能良好的沟通与协作。沟通与协作是团队开发活动的基础,它贯穿于软件开发的整个生命周期。是软件开发项目速度、成本、效率的关键。 随着 Web 服务技术和面向服务的体系结构 (SOA)的发展,要求软件开发必须从使用本地丰富的内部应用资源向联接外部广泛分布的服务资源过渡。 这一转变却正面临一些新的困难,新时期的软件开发必须回答如下三个问题:如何使包装为 Web 服务的软件资源协同工作、如何在技术演进的过程中保持平台的中立性、如何在当前动荡的 Internet 时代适应需求的变化 ? 通过与这三个问题相对照,不难发现:传统的软件开发方法难以重用和协同软件资源,难以保持平台的中立性,也难以满足变化的需求。因此,迫切需要一种能够克服这些困难的新方法,那就是 —— 协作开发。 今天的大多软件工作能否获得成功,取决于团队的协作,而不是个人的突出表现,特别是在中小型软件企业当中,创建并维护 一个高绩效的团队,以产生潜在的杰作是非常重要的一项工作。团队成员彼此都影响着整个团队的成功,他们必须要向着一个共同的目标而合作。 孤军作战已经成为历史几年前,“软件开发是一项团队活动”是 Rational提出的口号之一。可以说,直到今天,这个标语更为正确了,个体开发者在单独完成一个重要项目的时代已经成为过去了。 然而,简单地将一些人分配给某项目并不意味着你拥有了一个团队。要想创建一个有效的工作组,团队成员必须相互“检入”且配合。敏捷开发中提到,团队成员应当可以认识到彼此的优点和缺点,并相互配合以取得成 功。 多年来,人们仅将软件局限在应用工具的狭小区域,这种片面的理解致使人们很难联想起大规模的软件工业。因而,软件开发往往与编写程序等同起来,而调研分析、建模、测试、部署和全局管理等工作却被忽略。 这种局面在一些中小型软件开发项目当中非常明显,特别是对任务认识的片面性也体现在对软件开发角色的划分上,程序编写者 (开发人员 )是主力军,代表了一切。如此以来,在开发工作中就呈现“独木难支”的局面。 可见,今天的软件开发已不单是一种技术或工具的应用,抑或一种灵感的迸发。资源的调配、协作的布局、流程的设置在软 件开发中占据越来越重要的