【中国计算机报】GIS厂商要懂“道”——记超图软件研发独立创新之路

  在超图软件副总裁王康弘看来,“道”是指体系层面、战略层面,“术”就是具体的技术、亮点。而对软件公司来说首先应该注重的是体系、架构上的总体考虑,然后才能做好技术、找到亮点。
  GIS的概念并不是在中国产生,早期的国内GIS厂商也都是以追随和模仿为主,但2005年以后情况发生了变化。从那时起,国内GIS厂商选择独立创新。如今,一批国内GIS厂商将最新的IT技术融入GIS,并以此作为发展动力,锤炼完美的软件质量。超图就是其中之一。

  坚持创新
  超图从1995年开始做GIS平台,早期以追随和微创新为主,后期逐渐走上以独立创新为主的发展道路。发展到现在,在云GIS、移动GIS和二三维一体化GIS等领域已经走到了全球技术前列。
  超图聚焦于GIS平台软件产品与服务,拥有由先进技术研究所、研发中心和质控与支持中心所构成的研究院。
  GIS先进技术研究所主要跟踪IT发展最前沿的技术,以及这些技术如何跟GIS结合。首先,先进技术研究所会把新技术融合到GIS软件里进行前沿的可研性研究,经过可研性研究后会进入GIS研发中心,新技术的产品化工作会在研发中心里进行。这个阶段之后再推向市场到用户的应用。这是超图的创新机构。GIS研究所是实现从跟踪到创新到超越必备的一个机构。
  研究所加上研发中心,目前有接近200人的规模,要论GIS平台软件研发团队的规模,超图可以排到全球前三甲。
  早期超图研发中心的创新机制是从上往下安排,比如研发中心的创新点都是先由管理高层提出,再安排到下层去实现。现在,超图在创新机制上有了一定的调整,既有自上而下的战略分解,也有自下向上的基层创新,基层创新也逐渐成为超图产品与技术创新的主要来源。
  因为团队规模比较大,搜集上来的创新点和方案就非常多。超图设立了平台产品决策委员会(Platform Product Approval Committee, PPAC),来进行平台产品研发过程中的关键接点把关。在立项阶段会对员工提出的创新点做评审工作,在立项评审之后的商业计划评审阶段,则会对创新点的商业价值进行评审,比如对创新点的投入产出比做一个分析,因为技术上的创新虽然很重要,但更关键的是这种创新能不能给客户带来价值,给超图从市场上带来回报。商业计划评审是平台产品研发的第二个关键里程碑。
  第三个关键里程碑就是发布评审。当创新点通过了商业计划评审之后,后面的流程就是发布。
  “这是超图软件在创新研发过程中的三个里程碑。整个过程体现出一些特点,一是如今产品的创意很多来自于一线员工以及客户的反馈。二是因为评审过程非常严格,当创新点被发现创新方向有错误,是不会被允许进入研发流程的。现在超图的产品研发,已不仅是研究院或者研发中心的工作,而是整个超图近1000名员工的工作,甚至包括超图的一些合作伙伴、二次开发商也被允许参与进来,这突破了传统小作坊式的研发方式。”超图软件CTO李绍俊说。

       
   
开发更快捷

  软件的开发模式经历了一系列发展阶段的变化。早期,国内平台软件的研发采用瀑布式的开发模式,这是非常经典的开发模式,从上世纪70年代一直沿用到现在,国内现在仍有不少项目依然在采用这种开发模式。
  瀑布式开发模式非常严格,首先是需求分析,然后是设计,设计又包括概要设计、详细设计、编码开发等,整个流程顺序固定且比较严谨。
  瀑布式开发模式应用了很多年,但发展到现在,这种模式也出现了一些问题,主要体现在几个方面:一是整个流程下来周期非常长,比如国内做平台软件要按这种模式开发的话,周期走下来基本在半年以上,大多数都在9个月到1年。因为周期长,所以在发布时间结点上很难控制。另外在瀑布式开发模式中,需求往往在初期就被确定下来了,在后面增加的一些新需求比较困难。
  现在,超图软件正在采用另外一种模式,就是敏捷开发模式。
  敏捷开发模式也叫迭代开发模式,是在瀑布开发模式的基础上发展起来的。敏捷开发模式会包含众多的迭代开发周期,前期也需要做大框架的需求分析和设计,后期会以一定的时间间隔不断地进行迭代滚动开发。
  如今大部分的移动App软件都在采用敏捷开发的方式,一般周期为二周或三周,每个迭代周期都会有新版本出。在超图,现在是以两周为一个周期进行迭代开发。
  超图经过了十多年的积累,产品线越来越长,产品的规模也越来越大,规模变大了以后产品、研发体系的质量保障是非常关键的,也是非常重要的,关乎企业的持续发展。
  对于怎样保障产品质量,超图也有着一套体系,那就是自动化测试加持续集成的软件研发体系。现在,超图平台软件总的代码数已经突破500万行,相当于半个Linux内核系统的代码量了,这种大量级的代码在研发管理、质量控制上是比较大的难题,需要一整套完善的软件研发体系的支撑。
  “比如测试的问题,以前软件测试往往聚焦在软件测试方法上,包括单元测试等。超图在早期的时候,研发人员中会有软件测试工程师的岗位,而现在,软件测试工程师的工作已经发生了变化,由点鼠标、敲键盘的方式发展为编写自动化测试用例的程序,所以说,现在的软件测试工程师本身也是软件开发工程师,开发的是测试程序而已。因为如今软件规模非常大,500多万行的代码靠人工测试是测不过来的。需要依靠测试程序做自动化的测试。” 李绍俊解释称。

  链接 超图软件简介
  超图软件是国内上市的地理信息系统平台软件企业,主要从事GIS平台软件、GIS应用软件和GIS云服务等业务。自1997年成立以来,超图软件一直致力于研究与开发大型GIS平台软件。2001年,超图果断重构GIS内核,实现SuperMap GIS从服务器到桌面再到移动端全系列支持多种操作系统,从而构建了全球前列的大型跨平台GIS技术体系,打破了GIS应用服务器只能选择 Windows操作系统的落后传统,并研发了支持苹果和安卓移动终端全功能移动GIS。经过多年发展,SuperMap GIS已成为中国主流的GIS平台。2013年发布的云端一体化GIS平台软件——SuperMap GIS 7C,新增了多个云GIS和移动GIS产品,进一步丰富了“云+端”的产品体系,在高性能并行计算和二三维一体化方面具有重大技术突破。结合GIS技术优势与丰富的行业经验,超图为智慧城市、国土、统计、气象、水利、环保等行业提供应用软件及解决方案。