说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

超图研究院院长李绍俊:创新2.0时代的平台软件研发体系

HTML文档下载 WORD文档下载 PDF文档下载
近期,CTO俱乐部采访了超图研究院院长李绍俊,请他重点介绍了超图研究院创新2.0时代的平台软件研发体系构建。2014年12月,在由CSDN举办的“2014技术商业500人论坛”上,李绍俊入选“2014 TOP50最具价值CTO”。

超图每年投入研发的费用约为8000万,2014年的营业收入约3.61亿元,研发投入约占4成比例。近期,CTO俱乐部走进超图,近距离探访超图的“创新2.0时代的平台软件研发体系”,并采访了超图研究院院长李绍俊,请他就超图研究院的一些软件创新机制、质量保障体系建设等做出分享。

李绍俊,北京师范大学资源与环境科学系学士学位;中科院地理所博士学位。2000年,加入超图软件,现任超图研究院院长。2014年12月,在由CSDN举办的“2014技术商业500人论坛”上,李绍俊入选“2014 TOP50最具价值CTO”。


超图研究院院长 李绍俊

创新机制:决策评审

李绍俊介绍说目前超图研究所加上研发中心近200人的规模,在全球做GIS平台软件研发这方面可排到前三甲。

超图软件创新机制中比较重要的一个机制就是决策评审。决策评审是创新的方向或流向的问题。“超图早期研发中心的创新的机制是从上往下安排为主,公司的领导在技术上包括前沿把握方面相对更为集中一些,创新点都是先上层提出来,后面安排研发中心实现。而发展到后期,在创新机制方向上有一定的调整,相对来说既有自顶向下的创新模式,也有自下向上的一个模式。而现在基本是以自下向上的创新模式为主。”李绍俊介绍说。

员工会在创新方面提出申请,因为团队规模较大,很多创新点是来自于一线的员工。提出创新点后,在研发机制里设有一个组织PPAC,可以做员工提出来的创新点的评审工作。在立项评审之后后面还会对它商业计划评审。创新点提出来,一方面是技术上的创新,更关键的是能不能带来客户价值?能不能带来市场回报?这个商业计划决策评审要对它的投入产出比做一个分析。所以这是在软件创新里面第二个非常重要的里程碑。第三个里程碑是发布评审。

怎样判断创新?是否可行?是否可以进入研发阶段?是以客户价值判断为最重要的准则。包括商业计划评审,包括发布评审,通过决策委员会,发现偏离的时候及时纠正,来调整研发的方向。“现在超图产品的研发已经不仅仅是研究院或者是研发中心这部分的工作,它跨到整个超图将近1000人的公司中,研发阶段中包括一些合作伙伴、二次开发商也都会参与进来,突破了传统上小作坊式的研发方式。” 李绍俊总结说。

随着软件的发展,软件的开发模式也经历了一些发展阶段的变化,由早期的瀑布开发模式演进到敏捷开发模式。现在超图的软件开发全部采用敏捷开发模式开发,两周一迭代。

生死线问题:质量保障

伴随着企业的发展,很多公司都会出现产品线越来越长、产品的规模也越来越大的情况,而研发体系的质量保障是非常敏感甚至是一个生死线的问题。超图的产品质量怎样保障?李绍俊介绍说在超图有一套体系——“自动测试+持续集成=品质持续提高”的软件研发体系。据了解,现在超图的软件规模已经非常大了,平台软件总的有效代码数已经突破500万行,代码总量已经相当于半个Linux的代码量了。这么大体量的代码,它的研发管理包括质量控制,对于软件研发体系来讲都是比较大的难题,这就需要一个软件研发体系的支撑。

以前软件测试往往聚焦在软件测试方法上,包括单元测试之类的,实际上任何事当规模大到一定程度,本身也会由量推演到质变。“超图早期时,研发有个非常明确的岗位叫软件测试工程师。而现在超图研发中心里已经没有这个岗位了。以前软件测试工程师就是做软件测试,大量的工作是拿鼠标点、拿键盘敲,测试软件的响应,也就是结果是否正确。而现在,测试工程师的职责发生了非常大的转变,现在测试工程师已经不像以前那样工作了,是编写测试程序。现在软件测试工程师已不再是以前那个意义上的软件测试工程师了,他本身也是一名软件开发工程师,只不过他做的开发是测试用例开发也就是测试程序的开发。”李绍俊解释说500多万行代码靠人工点不过来,覆盖不过来,肯定有漏掉的一些领域。现在软件测试已经不再单纯依靠人工的测试,而要依靠自动化的测试。


在超图的自动化测试体系中,自动化测试程序要求有几类的覆盖:功能点覆盖、需求点覆盖、缺陷覆盖(所有缺陷都要有测试用例的覆盖。确保以前出现过的缺陷新的版本不要再出现)。通过这样的体系超图现在已经累计近2万多个测试程序。每一个测试程序里面少的会有十几个,多个会有几百个测试的功能点。

软件规模做大了之后,还有一个让人头痛的就是软件编译,针对这个问题,超图现在在研发中心采用网格计算的技术来加快编译的流程。另外一点在软件研发中大量采用了服务端自动化的计算能力。

除此之外,软件研发里面还有非常重要的机制就是代码审查。比如新员工进来以后新员工写的代码可能有时候各方面考虑不是那么全面。所以超图研发中心原来有一个机制,员工提交的代码一定要经过他的代码指导员审核,包括团队里面技术负责人的审核,代码才能提交到库里面去。也就是说至少要有两个审核点才能集成到这个库里面去。虽然流程描述起来简单,真正做起来的时候其实很痛苦。李绍俊介绍说,后来超图结合第三方软件,打造出了一个代码审查的体系,相当于通过信息化来提升这块的工作效率。不仅仅可以做代码审查,也可以看到研发团队工作量,都是一目了然。

“我们现在已经形成了一个研发体系,通过一些信息化的手段来提升软件研发的工作效率,实现创新2.0时代的软件研发。“李绍俊总结说。

通过这样一些体系,超图在GIS领域也做出了比较大的创新点:

  • 2004年:跨操作系统GIS(高性能支持Linux);
  • 2009年:软件产品二、三维一体化创新;
  • 2011年:全功能移动GIS;
  • 2013年:云GIS软件技术;
  • 2014年:对倾斜摄影三维的支持。


欢迎大家投稿,分享更多团队发展与行业思考,投稿至CTO俱乐部邮箱:ctoclub@csdn.net

还不是CTO俱乐部成员的各公司技术负责人,欢迎立即加入俱乐部:cto.csdn.net 。

更多俱乐部动态,欢迎扫码关注微信号:



基于Delphi的图像漫游 将BMP放入Paradox的BLOB的字段中-Delphi资料 界面色彩渐变效果的实现-Delphi资料 如何查阅可视窗口标题-Delphi资料 如何得到Timage控件的DC-Delphi资料 如何关闭一个MDI子窗口-Delphi资料 如何检测鼠标击了哪一个对象-Delphi资料 如何将鼠标锁定在固定范围内-Delphi资料 如何使你的窗口Stay on Top-Delphi资料 如何在ListView控件中绘底图-Delphi资料 如何在屏幕上移动Image图象-Delphi资料 软件中复活节彩蛋的实现-Delphi资料 实现图象局部放大的原理和方法-Delphi资料 使用Delphi实现滚动式面板窗口 通用的MsgBox-Delphi资料 图象放大镜——实现图象局部放大的原理和方法-Delphi资料 图形的特殊显示效果-Delphi资料 图形整体拉出效果-Delphi资料 一个实用的Delphi屏幕拷贝程序的设计 用Delphi 显示122种图形特效 用Delphi编写DLL实现动态改变分辨率 用Delphi进行OpenGL编程学习心得 用Delphi开发windows95屏幕保护预览程序 用Delphi实现壁纸更换 用DELPHI实现位图显示特技 用DELPHI中Canvas特性开发图形软件 用构件变换法实现动画效果-Delphi资料 在Delphi中使用动态图标 在Delphi中显示Windows图标 在多媒体文件中批量抓取图象-Delphi资料 怎样读出不同格式图形的高和宽-Delphi资料 看看这个程序到底错在哪? 查找点对象问题,各位进来帮我看看 各位朋友一定请帮忙,关系到我工作问题(不是很难) 用ASP和Javascritp或Vbscript配合将SQL Server里的数据在客户端转换成EXCEL文件 Application的问题,急 谁能告诉我《银色幻想》在哪里有得下,万分感谢!!给分多多 新開一貼,sql語句請教,急,給分!!! 局域网内指定IP出现“该静态IP地址已经使用”,原理如何,如何编程实现。 一个语句的写法,up者有分 关于数据汇总的精典SQL语句求教! 有奖捉疵 50分 怎么打*****号部分的代码总不执行啊? 请问如何列举当前打印机支持的纸张信息? 歌词和音乐同步问题?winnap的歌词插件基于什么样的原理做出来? 急救!!!关于对话框中编辑框重画问题 小问题。。。。只想知道为什么。。。。 转载(贫富悬殊的中国) !!!用ASP能否实现一次上传一整个目录下所有的文件(子目录不算)?高手请答复! TreeView专题讨论 j2me中请问如果将textField中的内容写入到moto388手机的记事本中? 在vc中调用其他的exe include 另外一个jsp文件时,能向那个文件传参数吗?不能的话,有其他办法吗?谢谢 系统不能识别DaysBetween,如何处理 请问如下通过web连续下载图片,只是第一张要提示,以后每张就不再提示了? 关于ADO驱动MDAC版本的疑问 兄弟要工作了,是不是只要见到领导都要打次招呼? 我的问题!! 最近在用MFC写GDI程序,请前辈们给点建议 老兄给一些建议啊!用VB做什么毕业设计比较合适啊? 急,获取主板信息的问题! 请教finder的排序问题 mysql对一个数据库中表的数量有没有限制? 100分,急求控件的编写方法~!!!!我在做的项目想用到类似于vc编译器左边的class,resource,file view的窗口控件,谁有? 为什么我收到的邮件列表每次都是乱码?怎样打开? 大家帮看看这段代码哪出问题了,在线给分 求高效统计算法(在线等待,采纳着需要分来信200) 怎样将bcb中vcl 及其他组件改为activex??? 微软的面试题 treeview 控件在客户端的操作? 怎样在程序里找无标题的DLG! j2me中请问如果将textField中的内容写入到moto388手机的记事本中? 谁可以和我说一下LINUX是如配置的! 请问:如何在java通过xml文件和他的schema,既得到标签里的内容,有能够知道内容的类型 已修改的列 C++Test讨论区 菜鸟提问,大家不要笑我啊! 这里还有人在用Java IDE工具JawaBeginer的吗? 有谁知道aspopup控件的功能和作用--在线等待 100分,急求控件的编写方法~!!!!我在做的项目想用到类似于vc编译器左边的class,resource,file view的窗口控件,谁有? 简单的菜鸟问题!! 如何写WPE这种类型的软件? 向DX请教两个开发上的问题,请不吝赐教! 物质的第六种状态也存在吗? I am just one person only中文意思是什么? 基多和利马两地气候的相似之处还有不同之处! 80-90度可以杀什么细菌 Maybe I am destined to never just one person是什么意思 B型超声波诊断仪是医学上利用()准确获得内部疾病信息的医疗器材蝙蝠在飞行中发出(),根据()到来的方位和时间确定位置和距离;根据回声定位的原理,科学家发明了(),用来探测鱼群 if和and /or 函数的运用?为什么if 有时和and/or 连用?and/or 启什么作用? I am as long as I am just a person others redundant! 移动通信系统使用的是无线电波的哪个频段? 怎么定义if函数发言总分为12分.不发言得3分;发言次数1~2次(含2次)得6分;发言次数2~3次(含3次)得9分;发言次数超过4次(含4次)的得12分.怎么写if 函数啊?求大神指导啊.谢谢啦 I am a narcissistic person 和 Am i a narcissistic person 区别 abaqus中如何判断约束自由度的个数 别不懂装懂.这个问题耗了一小时了,能复制的细胞器有线粒体中心体叶绿体,回答的出的再往下看,那么问题是除此之外的细胞器为什么不是呢,如核糖体,他们与中心体的复制有什么不同吗,不同 超声波美容仪器都具有导入导出功能吗 大学物理,这个公式怎么判断自由度有多少? 直线y=kx+b经过A(-2,-1)和B(-3,0)两点,利用函数图象判断不等式x分之一小雨k 那种超声波的美容的小铲子,就是清洁毛孔的那种,什么牌子的好啊?用过的人都是用的什么牌子的? 如何在频段不同发送无线电波比如2.4Ghz,我知道这是一个频段,那2.4Ghz对于实际电路上应该怎么理解,对应这个频率我们需要做些什么,发送频率是2.4Ghz么? 手机进水用超声波洗要花多少银子 超声波如何清洗精密零件的? 无线电波怎么划分的?与射频技术的区别? 手机进水了.用超声波洗或者没洗能看得出来吗? 利用人工分离培养的微生物制造饮料是利用了化学方式还是利用了现代生物技术? 犯罪片,讲一个人把他的妻子杀了,但是找不到证据,因为杀人的枪是警察的,谁知道电影名?那个警察和杀人犯的妻子有外遇 手机进水,扬声器失灵,用超声波洗了下花了我30元, y=(x-1)/x 的图像应该怎么画?这种类型叫什么函数?急,同上 二重积分(x+y)^2dxdy,D由x^2+y^2>=2x,x^2+y^2<=4x.极坐标角度和r怎么确定? 手机进水放米里放几天要放多久啊 若坐标原点O到直线x/a+y/b=1 的距离为1 求ab范围, 哪个频段的电磁波发射的远 手机进水了,用超声波洗后没连天就开不开机了,是怎么回事? 若原点O到直线x+y+c=0的距离等于1,则c= 厄瓜多尔的首都基多的气候是什么?有什么特征? y=k/x+b是什么函数?有何性质? 超声波是否可以灭菌?我希望知道超声波振动细菌多长时间细菌会死亡?呈什么样的变化曲线,或是有怎样的规律? 在真空中能传播的电磁波总共有多少频道?我们能够精确分辨的频率有多少种? 2因素4水平的正交表应该怎样设计两个因素分别是:温度和时间,温度的水平分布是50、65、80、100;时间的水平分布是:30、60、90、120.请教一下这个正交表该如何设计? 超声波可以大面积杀菌吗 穿过南美洲厄瓜多尔首都基多的那条特殊纬线是什么? 细胞器的中心体的膜结构是怎么样的? 直线l的解析式为y=4/3x+4,l与x轴,y轴分别交与a,b,求原点o到直线l的距离 厄瓜多尔首都基多为什么要坐落在高山山谷 超声波局放,快速巡检 秘鲁的气候类型是? 厄瓜多尔首都基多市位于( )板块和( )板块交界处?有的说是太平洋板块和美洲板块,我看书好像是南极洲板块和美洲板块,明天就考试,求全解 超声波震子放哪里 超声波 可以对什么消毒 高1指数函数.急!我不是他舅进指数函数y=f(x)的图象经过点(a,e)则f(0)=? f(1)=? f(-a)=? 麻烦高手告诉我下,一定要步骤! 求一个三因素四水平的正交表,4^3 利用超声波的什么来进行消毒 1)如果函数f(x)=a^x(a^x -3a^2 -1)(a>0且a≠1)在区间【0,+∞)上是增函数,那么实数a的取值范围是?2)设a,b,c都是正数,且3^a=4^b=6^c,则有2/c=2/a +1/b 请证明!3)已知2^a*5^b=2^c*5^d=10,求证:(a-1)(d-1)=(b-1)( 求解释,元素后面跟的电子组态是怎么解释的 给病人打吊针时该如何做,怎样找静脉? 在Y轴上求出与原点距离为3的点的坐标;在X轴上求出与点(1,0)的距离为4的点坐标. 电子组态怎么画?应为自招需要。但是本人对这个怎么画!基本排列为规则!顺墟哦 反键什么到底怎么弄都不太清楚 打吊针时安置了留置针以后,打针位置血管突起,整根血管僵硬~一个月前打吊针留了3天留置针,十多天前发现打针位置血管突起,有疼痛感.血管僵硬.到今天为止,疼痛感没了,但是还是打针位置血 已知k A、B、C、D、E、F六种物质,它们的组成中有一种元素是相同的,现有下列条件(1)A、B均难溶于水,A在空气中易被氧化成B(2)B受热分解可生成C(3)足量的F加入D的溶液中,充分震荡后,生成浅绿 I am just one person 什么样的医疗设备使用与诊所我们的标准化卫生所想增加一些设备,但是不知道添加什么设备,就是在诊所比较使用的,经济使用型的 潘基文发言人:美已保证今后不对联合国美国安局局长:监听报道“完全错误” 世界最大机场将举办国际航展 25家中中国全票当选联合国经社理事会成员 任义乌城区一黄金地块6.1亿成交 业内杭州地铁6号线过钱塘江段开始水上勘探杭州到富阳的514路下月换新车 一人杭州一23岁女子酒后绿化带小解 不慎温州多家典当行看走眼 “金包银”的假俄外长称叙问题国际会议遭破坏 批西方宁夏“10·14”灭门杀人案犯罪嫌疑病房成了临时募捐点 20余万善款驰援浙江180项科技成果下月开槌出售安徽宁国民政局长否认叫停网友募捐 自日媒:解密文件显示日本曾试图阻止中美杭州一对匝道一段快速路两条断头路年底法国总统会见中国外长王毅 谴责北京暴东莞某校2个月开除21学生 乱扔垃圾四川宜宾一火葬场休息区变茶馆 想要坐17岁少年贩毒只为给爷爷办寿宴 从小杭州孩儿巷取消52个泊位后道路通行明实现中国经济持续增长的关键是什么中国爱乐将演奏大剧院版《茶花女》洋桥12号北门垃圾站臭气熏天曹妃甸:以园区建设撬动现代农业大发展李永波:女单打法落后心结难解 里约奥交通肇事撞死学生 醉驾司机获刑经济转型需要“针灸疗法”中国书院积淀的文化精神长征六号首飞 一箭20星创纪录我国沙漠深部或藏有大型活性氮库北京队夺得桥牌青年男团冠军保障律师执业权利 有效发挥律师作用海宁皮革是怎样“炼”成的金融机构青睐中财人大清华安倍政府开始修改交火规则1600名铁人角逐“恶魔岛”入场券广平水陆画:笔尖上的“非遗”“中国评剧艺术之乡”落户滦县循着中国近代文化走向回望《新青年》丰台戏曲文化嘉年华百姓乐参与中国男篮3天后亮相亚锦赛
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘