《配置管理最佳实践》——1.5 管理全球分布式开发团队

简介: 在地理分布式的工作环境中,全球性软件开发的挑战是能够协调好工作和使变更受控。对于同一房间里坐在对面的两个人,协调好工作和使变更受控都不是件很容易的事情,而对于那些身处不同国家,工作在不同时区,有着不同语言、文化、追求的团队来说,这就更难了。

本节书摘来自异步社区《配置管理最佳实践》一书中的第1章,第1.5节,作者: 【美】Bob Aiello , Leslie Sachs著,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.5 管理全球分布式开发团队

源代码管理可以帮助协调分布式开发团队之间的工作。如图1.7所示,在伦敦、纽约和孟买有三个开发团队,源代码最佳实践可以有条理有逻辑地帮助协调每个人的工作。

在地理分布式的工作环境中,全球性软件开发的挑战是能够协调好工作和使变更受控。对于同一房间里坐在对面的两个人,协调好工作和使变更受控都不是件很容易的事情,而对于那些身处不同国家,工作在不同时区,有着不同语言、文化、追求的团队来说,这就更难了。

源代码管理可以在各自的分支上帮助组织这些工作,使其可以在一个地方被完成,进行审查,然后通过受控和可追溯到方式合并到主干。还可以通过建立一个海外分支(Offshore branch),上面所有的变更经由国内的团队审查,最后合并到主干(最后的结果要复制回海外分支)。另外一个方法是允许国外团队具有相同的源代码库访问权,就好像他们工作在国内一样。常见的最佳实践是通过使用变更请求(CR, Change Request) 来沟通和跟踪这些变更。变更请求也就是我们通常看到的工作项(work item)、任务、

产品改进(enhancements)或者缺陷(defect)。每一个变更请求的类别都有不同的生命周期,从而可以建立和实施不同的流程,这样就可以有效地进行代码控制。好的源代码管理实践可以为团队建立有效的控制和适合的流程,可靠地控制离岸开发(offshore development)。我推荐建立一些试点项目,然后尝试一个或多个方法,通过实际效果看看哪个更适用于团队。随着时间的推移,源代码管理逐渐细化,团队也在慢慢改变和成熟,适用于团队、促进工作的有效流程也会逐渐地建立起来。

screenshot



图1.7 源代码管理有助于协调分布在世界各地的团队间的合作。

正确的策略包括良好的协调机制,进度可跟踪性和高的可见性。

相关文章
|
6月前
|
消息中间件 NoSQL Java
Java高级开发:高并发+分布式+高性能+Spring全家桶+性能优化
Java高架构师、分布式架构、高可扩展、高性能、高并发、性能优化、Spring boot、Redis、ActiveMQ、Nginx、Mycat、Netty、Jvm大型分布式项目实战学习架构师之路
|
6月前
|
NoSQL Java Redis
【分布式技术专题】「分布式技术架构」手把手教你如何开发一个属于自己的分布式锁的功能组件(一)
【分布式技术专题】「分布式技术架构」手把手教你如何开发一个属于自己的分布式锁的功能组件
88 0
|
25天前
|
NoSQL Java Redis
开发实战:使用Redisson实现分布式延时消息,订单30分钟关闭的另外一种实现!
本文详细介绍了 Redisson 延迟队列(DelayedQueue)的实现原理,包括基本使用、内部数据结构、基本流程、发送和获取延时消息以及初始化延时队列等内容。文章通过代码示例和流程图,逐步解析了延迟消息的发送、接收及处理机制,帮助读者深入了解 Redisson 延迟队列的工作原理。
|
3月前
|
开发者 云计算 数据库
从桌面跃升至云端的华丽转身:深入解析如何运用WinForms与Azure的强大组合,解锁传统应用向现代化分布式系统演变的秘密,实现性能与安全性的双重飞跃——你不可不知的开发新模式
【8月更文挑战第31天】在数字化转型浪潮中,传统桌面应用面临新挑战。本文探讨如何融合Windows Forms(WinForms)与Microsoft Azure,助力应用向云端转型。通过Azure的虚拟机、容器及无服务器计算,可轻松解决性能瓶颈,满足全球用户需求。文中还提供了连接Azure数据库的示例代码,并介绍了集成Azure Storage和Functions的方法。尽管存在安全性、网络延迟及成本等问题,但合理设计架构可有效应对,帮助开发者构建高效可靠的现代应用。
31 0
|
6月前
|
NoSQL Java Redis
【分布式技术专题】「分布式技术架构」手把手教你如何开发一个属于自己的分布式锁的功能组件(二)
【分布式技术专题】「分布式技术架构」手把手教你如何开发一个属于自己的分布式锁的功能组件
45 0
|
6月前
|
分布式计算 负载均衡 Java
构建高可用性Java应用:介绍分布式系统设计与开发
构建高可用性Java应用:介绍分布式系统设计与开发
69 0
|
6月前
|
缓存 监控 负载均衡
【分布式技术专题】「缓存解决方案」一文带领你好好认识一下企业级别的缓存技术解决方案的运作原理和开发实战(数据缓存不一致分析)
【分布式技术专题】「缓存解决方案」一文带领你好好认识一下企业级别的缓存技术解决方案的运作原理和开发实战(数据缓存不一致分析)
126 2
|
6月前
|
存储 负载均衡 NoSQL
【分布式技术架构】「Tomcat技术专题」 探索Tomcat集群架构原理和开发分析指南
【分布式技术架构】「Tomcat技术专题」 探索Tomcat集群架构原理和开发分析指南
132 1
|
6月前
|
缓存 应用服务中间件 数据库
【分布式技术专题】「缓存解决方案」一文带领你好好认识一下企业级别的缓存技术解决方案的运作原理和开发实战(多级缓存设计分析)
【分布式技术专题】「缓存解决方案」一文带领你好好认识一下企业级别的缓存技术解决方案的运作原理和开发实战(多级缓存设计分析)
151 1
|
6月前
|
存储 缓存 安全
【分布式技术专题】「缓存解决方案」一文带领你好好认识一下企业级别的缓存技术解决方案的运作原理和开发实战(存穿透、缓存击穿和缓存雪崩)
【分布式技术专题】「缓存解决方案」一文带领你好好认识一下企业级别的缓存技术解决方案的运作原理和开发实战(存穿透、缓存击穿和缓存雪崩)
110 1
下一篇
无影云桌面