Header Place holder

* 此案例基于在全球其他地区由微软运营的 Microsoft Azure 云平台实施,仅供由世纪互联运营的 Microsoft Azure 客户参考。

业务背景

壳牌拥有一支由超过 1,000 名开发人员组成的大型开发团队,3,000 多个专有应用程序。壳牌开发致力于改进运营以及辅助开发的技术。在 2010 之前,开发人员没有一个集中的报告结构,而是在不同的职能团队中工作。由于开发人员不使用标准工具,很难在团队之间共享技能或最佳实践,这种结构限制了开发计划的可见度。

为了提高可见度和标准化,壳牌决定在一个组织中整合所有开发活动,即 Technical and Competitive IT(TaCIT)。TaCIT 的第一个任务是确定支持关键工作流程所需的标准开发环境,其中包括编码、审查、缺陷和变更管理。环境需要支持不同的应用程序类型、不同的开发平台以及第三方测试工具和框架。

解决方案

经过深入研究,壳牌确定微软 Team Foundation Server 是唯一满足其严格要求的产品。“我们了解过许多不同的产品,但大多数只处理开发项目的某个方面,不能与其他工具配合提供整合的流程,” Middendorp 说道。“Team Foundation Server 处理从开发需求到部署的各个方面,并可跨 Windows 和 Linux 用于桌面、服务器、Web和移动项目。”而且它为每个项目提供端到端的可追溯性。

Team Foundation Server 是壳牌软件工程和开发环境(Software Engineering and Development Environment,SEDE)的基础,壳牌将其用于处理代码管理、工作项管理、测试和版本管理。在设定 SEDE 的工作优先级时,壳牌强调安全性和数据的完整性,而系统可用性的优先级较低。

为了提供保护其知识产权,壳牌配置的 Team Foundation Server 仅使用 HTTPS。它还使用 Kerberos 进行客户端和 Team Foundation Server 的相互认证。对于数据完整性,壳牌为 SEDE 开发了几乎完全自动化的备份和还原流程。为了确保数据恢复流程的有效性,每三个月壳牌使用 Team Foundation Server、SharePoint Server 和报表服务器的备份执行完整的还原。

壳牌已经完成 TaCIT 团队到 Team Foundation Server 的迁移,并将继续纳入公司内部其他集团的软件开发项目。它目前管理超过 19 亿行代码,2,500 个用户在系统中拥有帐户。当壳牌完成全部代码的导入后,它预计 Team Foundation Server 2012 上将有大约 30 亿行代码和 3,500 个用户。

对于壳牌来说,最具价值的改进在于 Linux 支持、项目管理和代码审查。通过用于 Scrum 和能力成熟度模型集成(CMMI)开发的模板,项目管理得到更好的支持。而 Team Foundation Server 2012 中代码审查功能,让开发人员可直接从工作项请求代码审查,实现整个组织代码审查流程的规范化。

客户效益

通过实施 SEDE,壳牌已经成功将其大部分开发项目迁入了 Team Foundation Server。此举提高了壳牌的开发计划的可见度,实现了工具和流程的标准化,确保了其代码的安全性和完整性。

标准化流程 增强项目可见度

通过使用 Team Foundation Server,壳牌可查看指标面板,了解当前所使用每种编程语言的代码行数。“通过 Team Foundation Server,我们现在可清楚地了解我们已创建的软件,它们使用的平台和语言以及负责开发的人,“ Middendorp 解释道。“我们可以更好地决定淘汰哪些工具以及决定为每个项目分配的资源数量。”

现在 TaCIT 的所有团队的代码都在 Team Foundation Server 中,并且正在使用该平台支持的流程。“现在我们的团队使用相同的工具,共享信息,为我们带了许多效益,” Middendorp 说道。“如果一个团队遇到的问题,他们可立即问其他团队请教。如果一个人报告了非常重要的信息,我们就把它变成一个标准,并与其他团队分享。”

替代第三方工具 提高安全性

由于 Team Foundation Server 的成功,壳牌能够淘汰许多开发工具,这些开发工具都需要一些维护。“我们曾经有成百上千的开发团队,他们各自都有一台或两台服务器以及开源软件。当我们认真了解在各个公司保持多种开发平台所需的整体成本,Team Foundation Server 标准化所节省的成本使其成为一个毫不犹豫的决定。”

通过将所有代码纳入 Team Foundation Server,壳牌极大地改进了其安全性流程。在之前,代码位于执行各种访问和数据恢复策略的数百台服务器上。现在标准化访问和验证策略能用于保护所有的编码项目。“通过 Team Foundation Server,我知道我们建立了保护我们投资的流程。”

简化应用程序 降低开发成本

对于壳牌来说,迁移到 Team Foundation Server 2012 的好处是显而易见的。通过原生支持许多基本的 Linux 特性,这样可提高 Linux 开发的生产力。Team Foundation Server 2012 还使壳牌能够淘汰曾用于支持开发工作中代码评审和应用生命周期管理的多种应用程序。淘汰这些应用程序简化了环境,降低了许可成本。

所用技术和服务