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

超图研究院院长李绍俊:创新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 。

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



触摸屏技术未来?详解Apple新手段Force Touch 专访云适配CEO陈本峰:紧跟HTML5热潮,Web组件化知多少? QQ音乐5.0全新设计过程要点解析 GDC 2015感悟:从0到1,VR投入手游开发路漫漫 TestBird发布手游真人众测平台——附中国手游兼容性测试白皮书 与用户的再一次连接,微软的免费升级计划背后 颠覆App!LayaBox用Flash开发重度HTML5游戏 WinHEC:微软小娜与小冰正式登陆Windows 10平台 Coursera工程师董飞:典型硅谷公司大数据实战分析 微软开源Visual Studio构建工具MSBuild 死而复生!下架6月,Launcher重回App Store 虚拟投影、高保真耳机!新型可穿戴家庭影院Dashbon Mask 【程序员电子刊精选】躺枪的互联网思维 Algolia的分布式搜索网络架构 对抗苹果?豪雅联合Google、Intel开发智能奢表 VR产品技术解析之三星Gear VR 雅虎北研即将关闭 人才抢夺战迅速拉响 移动应用中的AR开发,5款最受欢迎工具推荐! 中国黑客Pwn2Own再创佳绩 Keen Team三年五夺魁 星环CTO孙元浩:技术解析Transwarp Inceptor是怎样炼成的 第七届中国云计算大会将于6月3-5日在北京召开 两大设计模式 塑造高可读性的网页布局 IP争夺战:任天堂与DeNA联手意味着什么? UNITE 2015干货不断,三天日程抢先看! iOS 8发布近一年,苹果HomeKit都带来了什么? Facebook开源移动网络测试工具Augmented Traffic Control 用JavaScript开发移动原生应用,Facebook正式开源React Native! 《知性》,探寻移动化社区的敏感带 【程序员电子刊精选】技术人员如何参与产品设计讨论之激活那一潭死水 Google开源代码构建工具Bazel 长点心吧!为啥健身应用让你越减越肥? 一个关于存储过程的问题!! 关于硬盘分区的问题 满分相求--问题很简单 如何将enter转换为tab? 请问有没有 for access 的 jdbc driver? 求Oracle的资料网站。(100分) 如何在image控件中加载.pcx图形文件 ???为何在WIN2000终端服务中,客户端打印机乱码? 硬盘的转速写在哪啊? vc怎么连接数据库,希望能有一些代码? 什么工具能从代码直接生成流程图? 软件狗的问题,有兴趣的请进 为何输入汉字时会出现乱码?急急急!!! c++builder中 StrPCopy()头文件是什么? 怎麼調用jar文件中的類和函數 asp.net中还像asp一样可以用javascript吗? 这样的.xml 中如何在xsl中查询出<d:Title>值为"收文登记"的纪录??? 请问导航图如何实现?(玩过红警的更容易解答) 如果女友考上研究生,而我的学历低怎么办? 大虾帮忙,ListCtrl的列名为什么不能显示中文? 多谢各位,为什么http://IPaddress/exchange能看到内容,但是http://IPaddress/exadmin看不到内容 数据窗口怎么获得列的个数和怎么判断列的类型为DropDownDW类型! 求助 outlook&&ie6(放分) 我写了1个ip变域名的软件,发现现在都用防火墙,根本的不到域名,能不能用dns服务器或者其他方法写代码获得? 难道真的要去请电脑技术人员来帮忙了吗?急!急!急!!! 为什么有两个连接查询变量就不行呢代码如下: Rose进行JavaOOM的超级菜问题No.1:如何设置一个类MyButton成为JButton类的子类 如何在显示汉字 有关staroffice的问题 谁能告诉我完整的正式版本Dream_controls_collection for D6的下载地址呢? 百分求解有关ODBC的问题 那位知道最好的局域网聊天软件是什么? 数据库的问题 请问PB远程备份,恢复SQL SERVER2000应该怎样实现。(备份到本地硬盘)高分赠送 VCKBASE改版了,已经重新开张了!感激我的快给分!多少不限,呵呵... 那里有FrontPage server extension下载? 我什么我的程序从数据库取不出数据 C++Builder 中有没有关于SNMP 的控件啊? if not myrecord.bof then中的BOF是什么意思啊 Sybase数据库设备存放的地方? 高分救助:300分 一個通用的聯結sql server不能運行,help me 请大虾帮忙!这个SQL语句怎么写?多谢! 求教如何将enter转换为tab? win98下如何使用命令行方式共享文件夹 请问一个关于Iterator的问题. 我想把Access数据库里的内容只保留 1 天,超过 1 天的数据自动被删掉,请问该怎样设置。 拷贝构造函数实现多态性?!!你知道吗?........... 有多少人喜欢CCTV的张越和王小丫? 请问DES的最短代码的长度是多少?急急急,多多送分! 怎样测人体是成酸性还是碱性 下图是几种常见物质间的反应及转化关系,物质B是一种红色固体粉末,该图体现了化合物F的四种不同化学性质只要把ABCDEFG这几种物质标明就可以了.图拉 many people like to close to n_____ so they want to live in the country 怎样测试自己是酸性体质还是碱性体质最好有那种可以做有关自己日常生活习惯的题来相对准确的检测出来的那种……有点麻烦, 中学红色粉末化合物有哪些? 现有A,B,C,D,E五种物质,其中A为棕红色粉末,D为黑色粉末,B,C,和E都是常见气体,且B和E都是单质.“—”表示两物质可以反应.“→”表示物质可以转化,它们的关系如右图.(1)写出下列物质的化学 怎样测试体质是酸性还是碱性? 在常温常压下,A是无色的有毒气体,B是红棕色粉末,C、E是金属单质.反应1、2是工业上的重要反应.A+B 在高温条件下=D+E B+C在高温下=E+F D+NaOH=G G在高温条件下=G E+盐酸=H F+盐酸=I I+过量 红棕色粉末的主要成分是什么,黑色固体单质和黑色粉末分别是什么物质,紫红色固体单质又是什么 粽子要怎么包啊! because it allows people to get closer to them翻译拜托了各位 浓硫酸和铜反应体现什么性质浓硫酸与食盐反应生成氯化氢以及与铜反应分别体现了他的什么性质?浓硫酸和蔗糖反应,体现了他的什么性质? 怎么测试自己是酸性体质还是碱性体质(用什么仪器)?用什么设备检测?检测身体的什么器官组织?判断酸性体质的指标是什么?(例如血液的PH值,淋巴液的PH值等等)不要来和我说“感觉身体 today is Saturday .But many people don't go out to ( ) the weekend ,because it's snowing heavily.itis( ) outside.On such ( ) days,most people ( ) staying at home.Susan with her children stays in the warm house,too.She's a ( ) in a big hosital. 酸性体质(不知道自己是不是酸性体质)酸性体质如何用药物断根没有依赖性?PS:貌似我是天生酸性体质.我不知道自己皮肤是天生黑黄白,天生酸性体质或不天生的影响皮肤的颜色黄黑白呢? 如何判断自己是酸性体制还是碱性体质 I want to be a r___ because I like talking to people and writing stories根据句意及所给的首字母填写单词,另外还有:My parents and I like eating pizzas.We o____ a big pizza every Sunday .--Do you m___ my smoking here?--Not at all. 如何理解酸性体质? 秋天的田野,麦子金黄,一派丰收景象(改病句) 酸根离子的化合价都是负的是?而金属离子的是不是都是正的呢? 非金属单质(一般是黑色粉末)是什么东东啊?急需 秋天的田野,是稻谷飘香的季节 修改病句 离子方程式 酸根化合价,在离子方程式中,比如H2SO4是标H、S、O的化合价,还是标H、硫酸根的化合价 由一种黑色单质和一种黑色氧化物、按一定的量组成的粉末状混合物、高温后黑色粉末状转变成光良的红色金属、同时产生一种能使澄清石灰水变浑浊的无色气体则这种黑色粉末的成分可能 秋天 秋天是个丰收的季节,我喜欢秋天.因为我喜欢秋天的田野,秋天的田野是金黄色的,远远地看去地上好像你笨啊 根据元素化合价由高到底的顺序排列,在NH4Cl、N2、N2O、X、N2O3、NO2、KNO3的排列中的X应是()A.NO B.(NH4)2SO4 C.KNO2 D.N2O5 many people like (exercise).这里要用什么形式?如题. 怎样将体质由酸性变成弱碱性? 求一篇Why do people in your country traditionally want to have a son?的演讲英文稿,1分半左右根据这个问题,写一篇演讲稿,时间一分半到两分钟左右,大学的, 硫酸氢根是酸根离子吗酸根离子定义为酸离解时生成的阴离子,可硫酸氢钠不是酸各~~~~本人笨,请帮忙解释,谢~~~~~~~~~~ 如何使自己体质保持弱碱性,而不变酸性?听说弱碱性对人体有好处. 很多年轻人不喜欢听京剧的英语 Many_____people______like to listen to__________. 酸是由氢离子和酸根离子构成的,还是氢元素与酸根离子构成的 绿茶可以使人体体质由酸性变碱性吗?绿茶是碱性的还是酸性的? ln which country do people not speak 偏铝酸根离子和碳酸氢跟离子反不反应?说明理由.专家来. 葡萄酒发酵过程温度高好还是低好 听音乐的英文是 listen to music还是listen to the music? 为什么许多酸根离子组成的物质都有H氢? 1.秋天的田野是丰收的好时节.2.邻居家的小女孩兰兰不但年纪小,而且很懂事.改病句 将铜Cu片加入浓硫酸中,反应剧烈,说明浓硫酸具有很强的氧化性这句话为什么错? Cl离子是酸根离子吗 酸根离子和氢离子可以共存吗.. 常见的几个酸根离子的化合价初三的 酸性体质对人体会产生哪些危害? 无偿献血有什么好处和坏处,不要粘贴复制,还有献血后需要注意什么, 碘酸根离子化合价 浓硫酸有强氧化性,常温下能与铜发生剧烈反应, 你知道酸性体质的人有哪些特征吗? 烷烃卤代时,氢的活泼性为3^0>2^0>1^0,还有叔氢和伯氢是指C上有一个氢和三个氢吗? 醛能和溴的四氯化碳溶液反应吗?(没有水在里面!)到底是取代甲基上的氢原子,还是氧化成羧酸,还是根本不反应?怎么每个人的答案都不一样啊! Customs vary from country to country. 粽子用( )的芦叶裹着( )的糯米和( )的枣子.括号里填什么?括号里的词是颜色的! 醛基与液溴 溴的四氯化碳溶液 反应吗 Attitudes towards life vary from person to person. 形容一个人有棱有角是什么喻意? 根据顾恺之吃甘蔗的理论,倒吃甘蔗,这样会渐至佳境.但是甘蔗的根部比上面的部分要更甜.这不是矛盾吗? vary surprisingly little from country to country 什么是酸性和碱性体质?过酸过碱对身体有何影响? 红色粉末和无色气体化合物反应生成黑色物质的反应是什么 many people think to another country interesting.
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘