中印合作项目
 
案例分析

项目背景

  商业计划系统(简称BPS)是美国最大的一家服装零售公司在2004年3月15日委托正道易博在深圳进行离岸开发的软件项目,整个项目周期8个月,分4个阶段交付,开发团队峰值为25人。

  2004年3月20日,项目组正式成立,项目经理和架构设计师均来自印度,软件工程师中70%来自印度,30%来自本地;

  2004年5月20日, 提交第一阶段设计报告,并由4位本地工程师替换印度工程师;

  2004年8月15日,提交第二阶段原型系统,继续替换5名印度工程师;

  2004年9月30日,提交BPS测试系统,由2名本地的项目经理替换印度项目经理和架构师;

  2004年11月25日,BPS系统上线,除3名印度工程师外,项目组其余15人均为本地技术人员,并转为系统维护小组。 整个开发过程遵循CMM I5过程,QA由易思博公司派出,SEPG由印度Zensar公司负责定期检查。

  该项目客户评价为AAA。


系统结构


系统功能

  BPS系统将协助计划部门在短时间内对产品如何分配,以及分配在哪个地点作出正确的计划,从而提高销售额,减少因错误分配导致的资源浪费。BPS通过产生针对某种产品的分类计划来控制产品的存储及分配情况,实现将最合适的产品在最恰当的时间分配到最需要的地点,快速响应市场的需求。

  商业计划是指开发特定产品线的过程,由此来决定某种产品和产品的数量在特定时间(一般为4个月)内的销售量。这个计划最初建立在一般性的产品信息数据的基础上,之后该计划将得到进一步的发展和不断的改进,直到能够为使用者提供详细的产品信息和发展趋势分析 (历史记录)。这种分类计划包括各种产品的计划,从实际销售产品计划到产品补充计划。


  这个系统的显著优势在于:
  • 在不同的层级上产生不同的计划和次级计划

  • 在上一级上产生计划并在下一级释放此计划

  • 在下一级产生计划并递交到上一级申请批准

  • 将由上至下计划和由下至上计划进行协调

  • 对比和验证计划;

  • 在不同的时间层面生成计划,例如,年,季,月等

  • 在不同的产品层面产生计划,例如,产品阶段,分类层面

  • 为计划机动的定义交付小组,风格和风格颜色等;

  • 机动的将特征组分配到不同的层级水平上

  • 在不同的层级水平上定义及分析比率;
复杂性

  这个项目在技术上来说非常复杂, 它涉及到数据管理,计算,多重领域的管理,这需要交易环境中具有OLAP特征,其复杂性可以归结为以下几点:
  • GRID GUI 功能

    • OLAP基本功能,包括数据挖掘,钻取,切片等;
    • 在OLAP环境下进行数据计算,包括以多种方式在不同层面以及跨层面进行数据展开,汇总和公式计算等;
    • 行、列、Tab多维结构随意拖放;
    • 冻结栏;
    • 灵活的启动和解除工具栏的按键的功能;
    • 隐藏和显现;
    • 打印;
    • 调解屏幕的大小;
  • 在UI上管理数据
    • 在进行计算以便产生计划元素;
    • 折叠和展开;
    • 对行拖移到栏/图标,图标到行/栏的操作进行再次计算,或者相反;
    • 对从主计划到次计划的数据进行合并/展开,或者相反;
  • 多重领域数据/数据收集

    • 从不同的桌面收集参考数据;
    • 存储多重领域数据;
    • 找回数据并且转换成多重领域数据;
    • 储存多重领域数据;

  • 视觉化功能

    • 分析功能并实施原型;
    • 重新进入原型,加强并且在其基础上建立新的功能;
挑战

  这个计划具有多种不同的程度和复杂度,从领域到技术到文化到地点,处处都有不同,它具有的挑战可以分为以下几点:
  • 技术/领域

    • 复杂的GRID 功能;
    • 多重领域数据;
    • 数据管理;
    • 视觉化需求;
  • 文化/地点

    • 工作人员适应当地的文化;
    • 在当地建立对软件咨询的认识;
    • 整合工作团队/建立成熟的工作团队;
  由于系统功能在逐渐加强,重复性的方法总是出现,工作小组分成两部分:一组负责完成交付工作,另一组负责收集研究资料、原型,从而使开发小组可以在此信息的基础上进行开发工作。这项工作要求参与人员具有商业分析技能和丰富的专业知识,同时可以分析、视觉化和开发原型,重新分析并在此基础上进行开发工作。

  数据单独存储在UI之外,因此数据库的功能可以达到最佳状态。在此之前,数据信息作为一个Objects(特定项)存储的想法经过评估,但是最后还是决定将它独立出来,是因为今后可能需要将它与外部的系统整合。UI内部有一个计算引擎来进行计算,分组,过滤,折叠和展开等各项功能。

文化交流

  配备翻译人员协助印度技术人员更好的了解中国文化,并改善前期工作交流的效果,以便印度技术人员在工作出现问题时更好的与本地的技术人员互动。印度和中国工程师共同组成工作小组,在工作期间会进行正式和非正式的培训,使得工程师们可以面对这项艰苦但也极具挑战的工作,对工作也充满热情,同时加强与客户的交流,对软件服务业的将来充满信心。整个团队同时意识到,离岸开发工作不再是朝9晚6的工作,它需要更多的付出,为此,管理层安排了各项各种社交活动,例如晚餐、中餐和外出郊游等等,以提高工作人员的工作热情。