原文:企业开发的困境与变局


文 / 刘江

算起来,《程序员》已经有几年时间没有大篇幅讨论企业软件开发这个话题了。这其实挺奇怪的。要知道,按类别来分,国内从事企业软件开发的技术人员是最多的,从CSDN和《程序员》联合举办的“2011软件开发者年度调查”结果来看,这个数据超过三分之一(互联网将近30%,嵌入式/工控16.3%)。更让人奇怪的是,企业软件从我们视野里消失,却几乎没有人注意到。

令人尴尬的事情还没有完。几年前我为Martin Fowler的企业软件开发名著《Patterns of Enterprise Application Architecture》做英文注释版时,就注意到企业软件或者企业应用这个业内已经司空见惯、耳熟能详的名词本身,居然没有特别明确的定义。时至今 日,这一情况仍然没有改变。最靠谱的维基百科Enterprise Software英文词条里,虽然内容丰满了许多,但还是没有给出令人信服的定义……

共识当然也是有的,企业软件针对的是企事业单位、政府等机构(因为并非只针对企业,所以我习惯用企业级这样的术语,但在实际使用中似乎区别不大)而非面向个人尤其是普通消费者,支撑着机构业务各阶段的运作,支持机构内外人员之间的沟通和协作。

但共识似乎也仅此而已。同一个Gartner网站的术语表里,enterprise applications词条中强调企业内的所有核心业务流程和各个步骤,而enterprise application software中却将办公套件、即时通信、电子邮件甚至内容管理系统等都纳入进来。从本期封面报道中的其他文章也可以看到,即使是资深的业内人士对企业 软件的理解也不尽相同。

行业与技术的发展,也在改变许多原有的观念。Martin Fowler对企业应用的定义更强调其数据的复杂和数量,可是现在企业应用的数据从量上来说,已经远远无法与互联网相提并论。有人认为企业应用是相对于互 联网和个人软件的,那Salesforce、Yammer等SaaS和PaaS该划为哪一类呢?淘宝、支付宝、去哪儿等面向商家的支付、计费、业务流程等 功能,又该算哪一类?

企业软件开发的困境

更尴尬的,是企业软件的现状。

在国内,企业软件中除OA和财务软件外,总体上都是复制国外成功经验发展起来的,原创性本来就不足。在经历了较快增长之后,近年来行业进入了瓶颈 期,发展停滞,困扰企业的许多固有老问题一直得不到解决。起步科技总裁马科对本行业有一个很形象的说法:“像装修行业”。他在今年《程序员》9月刊《怎样破解企业管理软件的困局》 一文中,列举了企业软件的几大问题:整体混乱,低水平竞争,缺乏足够的质量保证;开发效率低,周期长,应变能力差,往往计划赶不上用户需求变化;缺乏统一 的标准,各个开发厂商开发的应用系统往往平台不一,数据格式不一,各自为政,各不相通,无法共享资源;整个行业缺乏创新,技术落后,工具原始,人才流失严 重。

八百客副总裁李淼也表示,目前行业处于一种军阀混战、割据的发展阶段,新的在线企业软件领域中大部分厂商也都是在市场上疯狂砸钱,业绩并不理想,而且由于产品同质化严重,一些实力较弱的会被拖垮。

对此,在外企和国企都有过不少从业经历的惠普架构师汪洋感触很多,他认为国内很多所谓的企业软件项目其实都达不到“企业级”的标准,对可靠性、灵活性、重用性、可维护性考虑甚少,架构粗糙,缺乏必要的可行性和技术风险分析。

鼎基伟业COO杨军也同意整个企业软件市场疲软,他特别指出2011年国内的商业智能市场是生存困难的一年,无论产品厂商还是实施商、甚至咨询商均 面临着不小的困难,对市场中从事低端实施的企业更是如此。行业巨头之一的东南融通因“造假案”而摘牌退市,直到公司大规模裁员,濒临绝境,对市场来说是一 个沉重的打击。

即使放大到全球,企业软件相关话题也已经被边缘化很久了。

2007年底,影响力很大的技术博客Robert Scoble发表了“为什么企业软件丧失了吸引力”(Why enterprise software isn’t sexy)一文,引起了一场论战。这篇文章的缘起,恰恰是因为盖茨在一次圆桌访谈中对主流媒体只报道消费类互联网而无视企业级软件不满。

最初,来自企业软件圈子的反击似乎很给力,企业软件要关心的就是安全、稳定、可扩展等不吸引人的特性嘛,你Scoble真是个外行。这对在微软、 NEC和RackSpace等企业IT领域工作多年的Scoble来说当然很不公平。只要涉及企业软件,他的文章经常能成为媒体焦点,你见过这样的外行 吗?

但很快,企业软件用户体验差、需要改进在论战等中渐渐成为双方的共识。以《IT不再重要》和《云计算大变革》等著作闻名的Nicolas Carr撰文指出,真正外行的很可能是自己,用户不喜欢用的产品肯定将面临巨大的颠覆危机。

其实企业软件在互联网开发人员眼中早已经成为笑谈。Ruby on Rails的创造者David Heinemeier Hansson在2005年底就发表过一篇引起热议的文章,其中对2006年做出这样的预测:

企业一词将成为软件开发者与用户之间的骂人话。企业软件厂商的成本继续上升,而质量继续下降。这些软件的使用者(他们想要的是简单、轻便、易用的工具)会对软件购买者(他们想要的是臃肿的功能列表)造反。

这将使企业软件厂商的用户开始流失到更易用、成本更低的解决方案,这些方案可以满足80%所需(剩下的20%根本不值十倍乃至百倍的价格)。

到2006年底,企业这个词就等同于笨重、昂贵、过时。

Palantir是PayPal创始人Peter Thiel等创办的面向政府和金融企业的信息分析公司,其产品被用于反恐和网络犯罪防范以及经济刺激计划的责任审计。公司的CEO Alex Karp在去年的访谈中表示,2005-2009年间在硅谷你要是创办企业软件公司,就好象是招了一帮工程师在城市中心搞马戏团那么搞笑,要知道那时候“企业”可是一个脏字儿……

除了价高、开发周期长、用户体验等明显弱项之外,传统上企业软件曾经代表着更先进的技术,更好的安全性、稳定性、性能、可伸缩性等的。但时过境迁, 现在以互联网为代表的消费应用,在用户和数据量激增的压力下,各项技术也渐渐赶超乃至处于领先(我亲耳听到一位国内大型互联网企业的高级工程师对两家知名 国际IT软硬件提供商的资深技术经理说:“你们的产品和解决方案已经根本满足不了我们的需要,我们所要处理的数据量你们连见都没有见过……”)。很明显的 趋势是,最新的热点技术包括云计算核心的Hadoop、NoSQL等基本上完全来自互联网。

企业软件落后了。

企业软件的问题何在?

iPhone和iPad在企业世界攻势迅猛的今天,再来看2007年的那场论战,会发现企业应用和消费者应用之间巨大的用户体验的确是问题的要害。 当时软件开发殿堂级人物Ed Yourdon发表的观点最经得起时间的考验:企业软件的易用性与安全、可扩展和性能并不是互斥的,Mac上的企业软件就往往比Windows上的好;直 接用户的话语权将越来越大,他们会从浏览器、手机开始作出自己的选择,CIO和丑陋难用的企业软件将在博弈中最终输掉。

企业软件落后的原因,究其根本是一个社会问题。Robert Scoble最初文章已经指出:企业软件之所以媒体不太关心,是因为除了CIO外一般人虽然是用户,但根本没有话语权。记者和博客写文章是为了有更多读者 来浏览,然后广告主才会买单,写企业软件?只有几个CIO看啊。

由于产品研发主要围绕企业中负责采购的CIO/经理(可能并不真正懂技术),而非真正的最终用户,所以产品、企业之间的竞争都是畸形的。只要采购经 理能交差,产品贵一些不要紧,维护成本高一些不要紧,难用一点不要紧,甚至白花了钱、没啥用处也不要紧。功能全、未来的承诺、buzzword是他们看重 的东西。这种中间层的存在,直接导致了对用户体验的忽视,技术落后,流程陈旧,人才流失,进入了恶性循环。

互联网应用之所以有较好的用户体验,是因为能够向数以百万计的用户直接而快速地发布产品,能够快速获得对产品研发至关重要的反馈,同时公司能够保持敏捷和创新的文化,敢于打破陈规。此外,用户容易切换,竞争激烈,也是重要的驱动力。

就在2007年论战之前不久,时任《纽约时报》网站设计总监的Khoi Vinh也发表过一篇文章抨击企业软件缺乏基本的用户体验设计,简直是怪胎,大部分软件中甚至一些非常简单的操作都很难用。

美国第一任CIO Vivek Kundra也曾抱怨在办公室里昂贵的企业软件用得郁闷,而回到家用起Twitter、Facebook就神清气爽,这很可能是他推动Cloud First战略,大力采用许多Web 2.0和SaaS服务的初衷之一。

曾担任Oracle产品营销副总和SAP总经理的Dennis Moore指出,除了产品的用户体验设计外,企业本身不合理的业务流程也是使软件难用的重要原因,而这是企业软件公司很难通过研发和实施解决的。传统企业往往害怕和抗拒变革,改进业务流程阻碍很大。

国内的情况更加复杂。由于信息化水平低,很多企业软件应用还处于非常原始的阶段。八百客副总裁李淼透露,国外企业软件厂商的竞争能力很强,它们能只 提供一个平台产品,剩下的开发全靠客户自己。而国内客户则不具备这样的能力,需要厂商开发应用给客户提供。他举例说,八百客的客户中98%没有 CIO,70%的客户连Excel表还用不好,在这种情况下,要求他们走自己开发的道路,确实非常困难。而惠普的汪洋更指出了国内企业软件企业的诸多问 题。公司急功近利,更多的是在赶项目进度,“应用破破烂烂,功能马马虎虎,性能差”的软件项目屡见不鲜。在这种大环境下,技术人员地位往往不高,多数干技 术不到10年就开始转型非技术岗位,而国外很多技术人员都是终身制,这意味着我们最多用10年的时间去做一个事情,而别人用一生在做,其中的技术积累和沉 淀差别巨大。人员水平良莠不齐,能力和经验缺乏,也使开发流程不完善,敏捷等先进方法不易推行。此外,国内公司总体上规模小、实力弱,也是造成失败案例较 多的原因。

而解决这一痼疾,孕育着巨大的商机。种种迹象表明,企业软件正面临涅槃重生。

企业软件的变局

近几年来,兴起了云计算、移动、社会化、海量数据(Big Data)和IT消费化这五大趋势(企业软件专家Dion Hinchcliffe称之为Big Five),对企业软件影响巨大。大变局已经开始。

在国外,Marc Andereessen和Peter Thiel等当今硅谷最有影响的投资人和思想者,都认为企业软件市场大有可为,并投入了大笔资金。

Aaron Levie是面向企业提供云存储和内容管理服务的新锐公司Box.net的创始人,该公司已经拥有众多财富500强客户。他去年9月曾撰文“Enterprise Software Is Sexy Again”,一面回应Scoble三年前的话题,一面宣告新时代的到来。

他发现,2009年以后,许多硅谷创业者和工程师们开始雄心勃勃地进军企业市场,诞生了一批带有互联网基因的新兴企业软件公司。除了市值已达140 多亿美元的先驱Salesforce之外,Facebook创始人之一Dustin Moskovitz创办的在线协作平台Asana,已经上市的企业社会化平台Jive,人力资源平台Workday,在线呼叫中心LiveOps,代收费 已经超过10亿美元的客户订阅与支付平台Zuora,估值逼近10亿美元的Palantir等等都是其中的代表。

微软、IBM、Oracle、SAP等主导的企业市场相对互联网来说的确是更大的市场,预算非常惊人,高达几千亿美元,仅美国政府每年在IT上的开 支就高达800亿。相比之下,Google、Yahoo!、Facebook等众多互联网企业所赖以生存的重要收入来源 ——美国网络广告市场总值仅242亿。

新兴的企业软件公司未必会直接与借传统C/S模式发展起来的企业软件巨头对抗,但云是一种天然民主化的驱动力,消除了来自供应商的所有不自然的渠道、销售和分销优势。有了云,机构的任何用户都是潜在的买主——自下而上的技术采纳正逐渐取代自上而下的部署。

新兴的企业软件公司所要解决的是十年前不存在或者无法解决的问题。今天的企业,有海量的数据要分析和管理,有各属不同角色的员工要共同协作,有分布 在全世界的潜在客户要营销,有许多业务问题要实时地解决。他们需要更强大的技术迎接这些挑战。与SharePoint三年才出一个版本,而且少量的补丁都 会让IT人员麻烦不已相比,互联网的敏捷研发和发布显然有巨大的优势。

同时,新的企业服务将通过免费增值(Freemium)商业模式以互联网规模运营,与最流行的消费应用一样迅速获得成百万的用户,创业公司也有前所未有的机遇。比如,企业微博Yammer每个季度的收入都在翻番。

新的企业软件公司的文化与消费互联网公司更像。他们不去组建强悍的销售团队,而是专注于产品,将其作为获取用户的最佳方法。按使用和订阅的计费模式 取代了传统的许可模式,用户真正使用之后,才付费,这也促使企业软件公司开发用户需要而且真正使用的产品,而不是能卖得更好的产品。

对于国内的情况,起步科技马科认为,现在是中国企业软件行业的机遇期。没有哪个国家这些年里新增了这么多企业,而且以高速在发展,市场环境、商业模 式都在发生快速变化,中国企业软件行业有可能创造一些前所未有的变革。但企业软件开发者要抓住这一机遇,必须以开放、积极的心态,拥抱变化,向互联网学 习。不仅学习技术,也要学习商业模式。他的观点我非常认同。

八百客李淼将国内企业软件的变化总结为四点:数据集中化平台化,产品高度集成,可以根据需求随时修改;快捷化,就是越来越傻瓜化,比如移动版、语 音识别、菜单的简洁化、功能的简单化等;扁平化,公司不再像日本那样有十几层架构,而会像美国现在普遍采用的四层结构那样,基层和CEO 之间,只隔着两个人,这将大大改进管理,因为不干活的人越来越少了。

传统企业软件公司正面临Clayton Christensen创新者窘境的严峻考验。但SAP、IBM等在自己的企业内部与产品中也有很多企业2.0理念的成功实践。大变局之下,挑战与机遇共存。Box.net公司的经验值得大家借鉴:

  • 让客户感觉自己是公司的一部分——这一点所有企业软件公司都应该向Zappos学习;
  • 收入取决于客户的成功与使用——如果人家不用,你的产品就一文不值;
  • 开发人们每次使用时都会兴奋的产品——这做起来难,忘起来容易;
  • 快速前进,保持朝气,不断创新——自满必然导致优秀人才和客户的流失;
  • 真正解决企业的大问题——问题越大,回报越大。

观后:

身为企业开发的一员,我深感与用户的隔阂,UI的陈旧,技术的落后,数据规模的稀缺,人才的流逝,因循守旧,抑制创新。问题多多。

所以企业级开发必须主动拥抱变化,拥抱互联网。

转载于:https://www.cnblogs.com/prime/articles/2270456.html

【转】企业开发的困境与变局相关推荐

  1. 《程序员》2011年12期精彩内容:企业开发的困境与变局

    本期封面报道:企业开发的困境与变局 由于研发围绕采购者而非最终用户进行,企业软件往往用户体验较差.伴随着互联网的兴起,企业软件的技术渐渐落后.然而,近年来众多新兴企业软件的出现,整个行业正在经历一次大 ...

  2. 企业开发的困境与变局

    文 / 刘江 算起来,<程序员>已经有几年时间没有大篇幅讨论企业软件开发这个话题了.这其实挺奇怪的.要知道,按类别来分,国内从事企业软件开发的技术人员是最多的,从CSDN和<程序员& ...

  3. 复杂系统设计 企业开发的困境

    复杂系统设计源自我多年对企业复杂系统的设计的一些思考,类似日记吧,不断完善. 为什么从一个大公司的引入架构师甚至架构师组还是很难架构企业开发中的很多问题? 这些问题表现出架构上的复杂性,和业务上的复杂 ...

  4. 企业开发:选Flex?还是HTML5?

    作者:Yakov Fain 本文是一段记录谈话,是我跟 Anatole Tartakovsky和 Victor Rasputnis的谈话内容,他们是我的商业伙伴,来自Farata系统,这次谈话发生在我 ...

  5. 企业开发:选Flex还是HTML5?

    导读:本文是一段记录谈话,是作者跟Anatole Tartakovsky和Victor Rasputnis的谈话内容,这次谈话发生在我们滑雪后的雪山上. Yakov.有多种方法可以为它们的企业创建We ...

  6. 企业开发:Flex or HTML5?

    本文是一段记录谈话,是我跟 Anatole Tartakovsky 和 Victor Rasputnis 的谈话内容,他们是我的商业伙伴,来自 Farata 系统,这次谈话发生在我们滑雪后的雪山上. ...

  7. 企业开发与社交开发相辅相成

    新兴的"社交编程平台"和"软件协作开发管理平台"很可能引发未来软件开发的革命.那么这种新颖的开发方式对于现有大型软件开发企业来说会不会形成冲击呢? 软件设计与定 ...

  8. Spring Boot常见企业开发场景应用、自动配置原理结构分析

    读者应具备: Spring SpringMVC服务器端开发基础 Maven基础 本篇主要介绍Spring Boot在企业开发中常见场景的使用.以及Spring Boot的基本原理结构. 以下为本篇设计 ...

  9. 2016企业开发趋势:Lightbend关于JVM开发者的调查

    Lightbend最近调查了2100个JVM(包括Java和Scala)开发者,进行了以下研究: \\ 开发趋势和IT基础设施趋势之间的相互关系. \\ 各家公司在怎样用最新技术实现他们的应用程序. ...

最新文章

  1. 被微软称为 “世界的电脑” ,Azure 到底有多牛?
  2. ACM 模板--邻接表 有向图 搜索算法
  3. [CODEVS 1281] Xn数列
  4. 雅虎借道阿里巴巴意在控股淘宝
  5. Javascript位置 body之前、后执行顺序
  6. Java学习路线图,全套Java基础视频教程
  7. 红胖子网络科技博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中...
  8. VirtualBox上安装WindowsXP的完整教程
  9. formidable词根词缀_SAT词根词缀汇总内容(6)
  10. web前端网页制作思路(只是思路)
  11. 学计算机专业必须马上买笔记本吗,大学生刚刚进入学校,需要购买笔记本电脑吗?听听学姐的建议吧...
  12. 你一定要掌握的三条IT运维面试技巧
  13. 「磨金石教育学员插画作业」什么是日系插画?
  14. scrapy写爬虫的心得
  15. vue实现文字翻转效果
  16. Mysql将分组后产生的同一分组的值连接起来
  17. Vue制作页面在线裁剪功能
  18. windows10下VM安装安卓虚拟机PhoenixOS
  19. 2021年深圳南山区工业企业租金补贴申报时间及条件,补贴300万
  20. SpringMVC入门

热门文章

  1. adodb.stream对象的方法/属性
  2. ORACLE EXP/IMP 说明
  3. sinacloud webpy mysql_Mysqldb和webpy的安装
  4. ubuntu 关机重启
  5. 用JDBC直连方式访问SQL Server 2005详解
  6. android 字符串对齐,android – 使用Spanable String对齐ImageSpan
  7. mysql alter table_mysql ALTER TABLE 的用法
  8. chrome只能装在c盘吗_电脑硬盘使用与文件整理入门——逃离C盘?
  9. egg.js java 生产数据_Egg 2.15.0 发布,阿里开源的企业级 Node.js 框架
  10. w10系统自带linux系统,win10下,内置linux系统的安装和体验,你造吗?