|
许多软件开发组织正在他们的项目上利用外包开发资源。随着企业开始采用敏捷方法和精益方法来开发程序,经常出现的问题是,外包适合敏捷环境吗?答案是 —— 这是有可能的,但是需要深谋远虑和谨慎的执行来确保成功。在这个由两部分组成的系列文章中,Tony Grout 将分享他的经验,介绍敏捷外包在哪些地方可能是有效的,以及为了达到最佳效果,必须将那些关键要素准备就绪。项目管理者联盟
如果您是一位致力于敏捷软件开发过程的软件项目经理或业务利益相关者(在我看来,您应该是!),那么在某些时候您可能会意识到:即将开展的项目对于您目前的组织过于庞大,如果没有外界的帮助,您可能难以应付。这可能像是一个新式的挑战。即使您自己的开发团队使用敏捷技术管理过较大的项目(例如,超过 25 人),但是,对于使用敏捷方法获得过成功的团队而言,在下一个任务中使用合约式协助的前景仍然堪忧。项目管理者联盟
不论团队大小,敏捷开发的精神与团队内的信任都有很大关系,并且它要求对敏捷的原则有明确的理解,不同团队在理解上可能会有细微的差别。如果您能意识到这些问题,那么很不错。但是,在敏捷开发项目中采用外包有多种方式,认真考虑这些条件和可能性,可以会帮助您放下心头大石。当然,它的重点就是推动外包服务商和外包者之间的最佳关系,并了解每一方试图利用敏捷的能力来实现的目标。PgMp.mypm.net
了解供应商以及自己的动机项目管理者联盟
如果您对敏捷方法相当熟悉,那么您就已经做好准备,可以对可能会在下一个项目中聘请专家来提供帮助的组织进行评估。然而,对于许多需要从外包供应商处寻求帮助的组织来说,其团队目标与其上级组织的目标往往不相符。例如,我接触过的很多内部开发组织对这个概念的理解仍然是 “执行敏捷” 开发,而不是 “让自身敏捷” 或旨在 “变得敏捷 ”。许多人认为敏捷是一个简单的技术捆绑,而不是一个向其最终客户(自己的业务和利益相关者)更迅速、更及时地提供更多价值的方法。项目管理者联盟
真正要通过敏捷软件开发方法实现的是业务敏捷性,所以我总是从解释这个概念开始。在考虑外包之前,先了解这种方法如何配合您的特定业务,这是关键。项目管理者联盟
换句话说,我们应该首先在业务层面开始关于敏捷的讨论,然后我们再找到合适的方法来讨论其技术基础。这必须始终配合您需要寻找的业务敏捷性。对于我来说,这不是有关执行极端编程 (XP) 还是测试驱动式开发的对话;它的重点是需要将正确的软件带给市场,使我们的业务可以为他们的客户推动更多价值,然后将正确的软件带给其损益账或其组织。不管您是外包者还是外包服务商,都是这样做的。项目管理者联盟
我通常不会试图说服客户转移到敏捷开发。大多数组织已经在一定程度上接受敏捷方法,虽然,还有许多组织仍在自己的独特环境中努力实现自己的目标。本文围绕敏捷宣言 (Agile Manifesto) 的原则进行组织,试图说明敏捷外包如何映射到最初定义敏捷开发的那几个概念。其实,我不会逐个详述宣言中的所有四个原始原则,但我们会看看前两个原则,作为这个讨论的基础。项目管理者联盟
个体和互动高于流程和工具项目管理者联盟
就业务敏捷性而言,这一概念和敏捷宣言之间真的存在直接联系,敏捷宣言的第一个原则说明个体和互动高于流程和工具。项目管理者联盟
在某些组织中有一种看法,如果您能够让每个个体以明智的方式进行合作,那么您就不需要 “工具”。事实上,成功的基本要素之一就是业务及其核心 IT 组织之间的可靠有效互动。这些核心互动范围内的个体在外包环境中尤为重要,因为当您引入承包商时,任务是自然分布的。关键业务资产不一定要放在邻近业务团队的地方,而有可能出现在世界各地。我们在我们的客户中的各种在岸和离岸模型中都看到这一点。转自项目管理者联盟
在这些条件下,您需要为关系带来的信任级别是很高的。而这是在敏捷宣言中未明确表示的事情之一。我们与人建立信任关系;我们并没有与组织建立信任关系,这是后话。
可用的软件高于综合的文档项目管理者联盟
需要快速创建和迭代交付可用的软件,这是根本,但在外包的背景下,有些合同会失去该宣言中这个原则的意义。我曾见过一些可怕的合同谈判和采购,它们试图执行称职的和详细的工作,侧重于在整个生命周期中签署过的文件,而不是可用软件的交付。项目管理者联盟
我曾参与过一个政府项目,为警队提供一个在线系统。当时的外包合作伙伴被要求以过时的技术交付系统,这会导致一些性能问题。事实上,合同中已注明,如果他们能编写一份软件架构文档来证明他们如何使用传统系统克服性能问题,支付条件和阶段性评审是可以接受的。当时的解释都写在墙上,6 个月后,他们有一份 250 页的文档,其中的图多得数不胜数,还有几百页的文字说明他们将如何解决这些问题。他们收到了付款。但 18 个月后,仍然没有可用的软件,然后律师开始参与到该事件中。项目经理圈子
如果该项目使用了敏捷方法,团队将首先生成一些可用的软件来证明架构,而不是仅仅依靠文档。敏捷方法如何能使利益相关者和开发团队意见一致,这是一个典型的例子。项目管理者联盟
成功地外包您的敏捷开发项目,需要根据对业务目标和组织限制的理解,选择最好的供应商。本文是由两部分所组成的系列文章的第一部分,回顾了敏捷宣言 (Agile Manifesto) 的前两个原则,确保您与执行外包工作的组织建立信任关系,使可用软件的交付成为首要目标。第 2 部分将继续这项讨论,并提供五大技巧帮助确保您的成功。blog.mypm.net 项目管理者联盟
|