本文面向分布式环境下企业级应用的实施过程中,Onsite实施团队和Offshore研发团队之间的有效协作。大家可以想象这样的场景:实施人员部署研发团队提供的服务到客户现场,在部署和试运行过程中难免会出现这样或那样的问题,这些问题有非技术的也有技术的,而实施团队通常无法处理类似技术方面的问题,这就需要实施团队和研发团队之间进行有效协作确保问题得以解决。所以这是一个发现问题、解决问题的过程,由于是在分布式远程环境下,沟通不畅给问题的发现和解决带来了正常研发过程中所无法想象的挑战。本文对上述场景下如何应对协作过程中的困难提几点思路并对工作展开的有效模式进行探讨。
一. 几点思路
- 保持敏锐:对实施而言,一个细微的、不起眼的、不影响使用的问题,日后可能造成大错,且很难排查。所以实施过程中没有问题是小问题
- 保持理性:对于那种诡异的错误,真的有那么巧吗?通常不会,因为程序的事情实际上很简单,不是对就是错
- 保持平衡:不要过于追求完美,要在完美和时间之间达成一种平衡
- 保持勇气:在现场,勇气第一。遇到困境,一时想不到妥善的处理方法,不如直接动手做,或许会柳暗花明
- 缩小范围:现场问题不外乎应用服务器(Tomcat、Jboss)、数据源(数据库和接口)、UI相关(无响应/页面操作逻辑)、和网络相关(WIFI/与服务器的局域网)的问题
- 安排顺序:遵循帕累托法则,尽量做到频繁发布,注意跳出问题的死循环