《规范敏捷交付:企业级敏捷软件交付的方法与实践》——1.9 企业意识-阿里云开发者社区

开发者社区> 华章出版社> 正文

《规范敏捷交付:企业级敏捷软件交付的方法与实践》——1.9 企业意识

简介: 本节书摘来自华章计算机《规范敏捷交付:企业级敏捷软件交付的方法与实践》一书中的第1章,第1.9节,作者:(加)安布勒(Ambler, S. W.),(加)莱恩斯(Lines, M.)著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.9 企业意识

与其他团队一样,DAD团队是企业生态系统中的一部分,更为明显的是,DAD团队总是主动出击,力图把握出现在他们面前的各种机会,力图创造良好的文化环境,使得自律的敏捷实践者在立足本地,开展自己的工作的同时,能够着眼全局,把自己的收获贡献给整个组织。企业意识的核心是倡导团队成员与企业中各种角色能够密切共事,例如,企业技术架构师和资产重用工程师——以利用和增强现有和“将来”的技术基础设施;企业业务架构师和产品组合经理——以适应整个业务生态系统;监管各种团队的高级经理人员;运营人员——以支持组织的整体开发和运维(DevOps)任务;数据管理员——以访问和改进现有的数据源;IT开发支持人员——以理解和遵循企业的IT指导方针(如编码、用户界面、安全性和数据规范等),以及业务专家——以共享他们的市场洞察力、销售预期、服务预测和其他重要关注点。换句话说,DAD团队应该采用马克所引用的“全面企业”(whole enterprise)的理念。
什么是适当的治理
有效的治理策略应该是加强监管。适当地管理敏捷交付项目意味着使用激励的方法,让人们为组织做正确的事,相反,其他的做法则值得怀疑。什么是正确的,并无定式,但它通常包括,激励团队充分利用和拓展现有的企业资产,使其遵循公共指导方针,增加一致性,并为组织的共同愿景不断付出努力。适当的治理是建立在信任和协作之上的。适当的治理策略意味着注重DAD团队的能力,从而以低成本、高效率和快速的方式,向其利益相关者交付他们所期望的商业价值。
遗憾的是,许多现有的IT治理策略都是基于命令加控制式的硬性规定,实践已证明这种方式往往是失灵的。第20章将详细介绍什么是适当的治理,传统治理策略所产生的影响,以及如何采用适当的治理策略。

除初创公司外,敏捷交付团队并不是工作在真空之中。通常来说,当现有系统在运转时,新解决方案的开发,即便限度最低,也不应对现有系统的运转产生影响。当然,人们总是希望新的解决方案能充分利用生产环境中现有的功能和可用的数据,但是,若不加以干预,这样的做法就会导致对现有系统的性能产生至少很小的影响。团队之间应该并行开展工作,自己的团队要能充分利用其他团队所做的工作,反之亦然。组织致力于愿景的实现,而团队应该为此做出应有的贡献。有时治理策略可能并不是那么显而易见,但确实已经存在于组织之中,我们希望这些治理策略能够对团队正在做的事情提供帮助。
企业意识是自律的一个重要方面,因为作为职业人员,应该努力为组织做正确的事情,而不只是做个人感兴趣的事情。同时,在做一件事情时,以孤立方式开发的团队可能会选择从头开始,或者使用不同的开发工具,或者创建不同的数据源,而实际上,此时在组织中已经存在一些成功安装、测试、配置和调整的完美方案。我们能够而且应该让自己做得更好,这可以通过执行以下步骤实现。
利用企业资产。通常,一个组织应该有大量的企业资产,至少应该如此,这些资产可以重用和改进。例如,通用开发指南,比如编码标准、数据规范、安全指南以及用户界面标准。DAD团队应努力遵照公共的基础设施行事,例如,他们应尽可能地使用企业准予的技术和数据源等。而更好的做法是依照基础设施的“未来”愿景行事。但企业资产不仅仅是标准。例如,如果组织使用严格的、以构架为中心的方法来构建企业软件,那么人们可以重用越来越多的面向服务的组件,并对它们进行不断的改进,从而造福所有当前和未来的解决方案。要做到这一点,在项目的整个生命周期中,特别是在先启阶段建立愿景时,DAD团队需要与企业专业人员,包括企业架构师、企业业务模型师、数据管理员、运维人员以及资产重用工程师加强协作。利用企业资产能够增加企业解决方案的一致性,使其易于维护,从而减少团队的开发成本和时间,降低解决方案的运营成本。
增强组织生态系统。由DAD团队交付的解决方案至少应该符合现有的组织生态系统,包括业务流程和支持系统,同时,它还应尽力更好地增强该生态系统。为此,第一步就是要尽可能早地利用现有的企业资产。在项目的整个生命周期中,DAD团队人员与运维和支持人员应密切合作,尤其是,随着项目不断接近向生产环境发布解决方案的阶段,更加需要这种密切的合作,从而确保大家理解组织生态系统的当前状态和未来趋势。通常,还需要有额外的独立测试团队来支持DAD团队(参见第15章);独立测试团队的职责是执行生产环境的集成测试(还有其他测试),以确保部署后的全新解决方案能够在目标生产环境中正确运行。
分享知识。DAD团队是注重学习的,学习的一种方法就是倾听别人的经验。言下之意,DAD团队也必须准备好与其他球队分享他们自己的经验。在IBM内,我们有敏捷论坛、非正式演讲、由资深团队成员主讲的培训课程,以及内部会议等策略。
开放和坦诚的监控。尽管敏捷方法建立在信任的基础之上,但聪明的管理策略应该是,基于“信任,但要核查,然后提供指导”的理念。通过不同的途径监控项目团队是适当治理中的重要一环。其中一个策略是,任何人,如果对DAD项目团队当前状态感兴趣,都可以参加每日协调会议并倾听,这是Scrum社区推广的策略,也是我们强烈推荐的一个非常好的策略,遗憾的是,它不够灵活,因为负责治理的资深经理人往往忙于管理许多事情,而且不只是一个团队。事实上,在2010年进行的一次“你的敏捷度得如何?”(How Agile Are You)调查中,斯科特已经准确地发现了这个现象。我们还看到另外一种十分有效的方法,即DAD团队使用测量和集成工具,例如Rational Team Concert(RTC),生成实时状态指标,并显示在项目仪表盘上。在www.jazz.netTM上,就有一个这样的例子,它展示了JazzTM团队自己的仪表盘。JazzTM团队遵循的是开放商业策略。这样的仪表盘非常有用,团队成员可以随时知道到底发生了什么,更不用说高级经理了。第三个策略是遵循风险驱动的生命周期,通过明确的里程碑来为感兴趣的人提供一致和清晰的项目状态反馈信息,下一节将对此做进一步的讨论。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:

华章出版社

官方博客
官网链接