第六期CSDN程序员采访稿-为外包服务建立核心技术平台

1. 请问,公司的基础应用平台是在什么情况下确定要做的?是先有项目还是先有平台?是否受用友原来做产品的传统影响? 

北京瑞友科技股份有限公司(原北京用友软件工程有限公司)成立于2003年,是全球化软件与信息技术服务供应商,致力于为全球客户提供量体裁衣、按需定制的专业IT应用规划咨询、软件系统开发及相关IT运营与支持服务。 

在当前业界,无论是高级管理者还是普通开发人员,都已经达成共识,对于IT技术公司,平台是基础设施,不管面向的业务领域是什么,都必须基于一个平台去构建,无论是个性化IT服务,软件产品,还是电子商务,门户网站,抑或是SOA,SAAS,云服务,云计算,凡是成规模的企业,都是基于平台运作。凡是还在从头开始编码的公司,要么被淘汰了,要么即将被淘汰。是否具备基础平台或构建平台的能力已经成为软件企业核心竞争力之一。而瑞友科技的认识,比这个共识整整提前了6年时间。 

从IT服务领域来看,我们更关注是高端的IT服务,包括咨询,包括企业应用开发和业务流程外包。从企业应用开发和业务流程外包的具体内容来看,两者有很大一部分其实描述的是相同的服务内容,只是具体实施者或服务提供者有所不同,由于服务提供方和提供形式的差异形成不同的商业形态,但从服务内容根本上完全可以看作是同类内容。对于这部分相同的内容,就是围绕企业级应用系统生命周期而产生的各种IT服务。这部分内容可以统称为“应用服务”,这是我们关注的焦点领域。 

那么,我们如何去构建这样基于平台的“应用服务”呢?一般有这样一个过程:IT服务提供商通过多年积累对主要的行业解决方案和主打的项目类别进行一些产品、系统的固化,形成积累,从而在后续同类方案、同类项目中实现以往研发成果的复用、减少人员投入,这样就可以解放出更多的人力来拓展其他项目,获取更多收入,提高企业的生产效率。瑞友科技的GAP平台就是这样的研发积累形成的平台产品,但我们做的更进一步,在瑞友科技成立初期我们就决定去做这样的事情,这样开阔的思路得益于瑞友科技脱胎于用友软件,在瑞友科技成立之初,用友软件已经在企业应用领域耕耘了10几年的时间,这就有助于我们站的更高,看的更远,我们从公司的起点就开始去构建企业级应用技术解决方案。 

瑞友科技在构建自己的基础应用平台初期,借鉴了用友股份的NC产品的架构思想,随着技术的进步和平台的不断发展,逐步形成了具备自己特色的平台产品,这就是GAP平台,用友股份也在NC平台的基础上发展成为UAP平台,但两个平台已经进行渐远,各自独立了。最大的区别就是UAP是用来做产品的,GAP是为客户进行量身定制的客户化开发,也就是我们倡导的个性化IT服务。 

GAP平台是瑞友科技的主要技术解决方案,GAP的全称是RayooTech Global Application Platform,从2003年开始研发,到目前最新版本是3.6,GAP平台是北京瑞友科技股份公司集多年应用开发实施经验所提炼的快速应用开发平台。GAP平台在构建的过程中采用了一些创新性的技术,包括面向业务服务的开发(SOA),领域驱动设计(Domain-Driven Design),基于资源文件的组件技术,工作流技术,数据字典,组件库等等,基于此可以实现企业应用软件开发的敏捷构建,并形成一个完整的企业应用软件生态圈,技术、业务、解决方案、外围应用集成相辅相成,极大的提高了IT服务企业的核心竞争力,也是企业应用开发领域中的模式创新。 

2. 有了应用平台,是不是就限定了所接项目的行业和类型? 

每个IT服务公司都应该有自己的定位,没有什么平台能够解决所有问题。比如淘宝,立足于电子商务,一直在打造开放的电子商务平台,Facebook则不断发展自己的社交网络平台,通过OpenAPI形成了独具特色的社交网络生态圈。如果是依托于移动嵌入式应用,那基础应用平台可能是基于Android或iPhone去进行构建。也就是说基础应用平台必须和公司定位息息相关,它不仅推进了公司现在的业务发展,也决定了公司未来的发展方向。 

瑞友科技的定位主要是企业应用领域,这与用友集团的战略方向也是一致的。瑞友科技致力于解决企业客户的信息化问题,包括客户的核心业务系统和IT基础设施系统,主要行业包括金融、保险、物流和电子商务等行业,GAP平台的应用场景也主要适用于这些方面。 

当然,随着个性化服务的深化和互联网技术的不断发展进步,我们发现企业应用不再局限在Intranet内部,企业应用系统的互联网化趋势越来越明显,GAP平台也逐渐开始对企业技术应用(工作流,数据字典,组织权限,规则引擎,SOA,OSGi等)和互联网技术应用(RIA,门户,电子商务,企业2.0等)进行融合。 

我们希望在现有的基础上,能够打造这样一个基础应用平台,在为企业客户完成了项目的定制化后,企业客户仍然能够不断延续软件的生命周期,既可以在线上进行配置化扩展应用开发,也可通过OpenAPI和Component的方式持续接入新的业务应用,而这一切都是在开放的互联网上进行。 

3. 客户认同基于基础应用平台的项目开发吗?国外还是国内有什么区别? 

从2007年以后,国内客户越来越重视开发商的技术体系和平台,很多项目如果没有这样的基础应用平台是很难承接的。就像我前面提到的,客户也认识到了,自己的应用必须基于一个统一的平台进行构建,而他们很难自主研发这样的基础平台,所以必须与开发商进行合作。就技术平台合作而言,我们与国内金融、保险领域很多大客户已经形成了广泛的合作,有些客户甚至要求第三方开发商使用我们的平台为客户构建业务。未来业务平台化的趋势会越来越明显。 

国外客户则略有不同,虽然他们对于国内接包企业的技术成熟度会非常看中,但还是有一些区别,一般分三种情况,第一类客户具备自己的技术体系,客户会要求基于自己的技术框架或平台进行业务构建;第二类客户没有自己的技术平台,但会指定相关技术体系(例如.Net,动态语言,某个开源技术等)进行业务构建;第三类客户能够认同国内开发商使用自己的平台为他们提供服务,这类客户对业务的关注程度要大于技术。 

无论是哪种类型的客户,对国内接包方的核心技术还是非常看重的,在这种情况下,一方面我们可以通过核心技术平台为客户提供服务,另一方面在平台构建的过程中,我们会积累出大量的通用技术和解决方案,这些能力同样会为海外接包业务带来巨大的推动作用。 

4. 基础应用平台怎么持续发展呢?是不断抽取客户需求共性还是其他驱动力?为了它的最终目标是什么呢? 

基础应用平台的持续发展必然伴随着公司业务的发展壮大。首先公司内部要有独立的组织结构去规划和经营平台业务,同时平台在应用到公司业务线的过程中会得到公司内部和外部客户的不断反馈,根据这些反馈平台自身会不断的进行自我修正。也就是说平台本身的发展需要前瞻性,但同时要尊重当下的需求,在良好的框架机制下不断扩展技术组件和业务组件。 

基础应用平台的最终目标我想有两个,一个是通过技术创新和业务创新引领公司的未来走向,二是公司业务的2/3收入应该来自于这样的应用平台。 

5. 外包服务类企业做基础应用平台的关键点有哪些?相比其他类型的外包服务企业有什么优势? 

外包服务类企业做基础应用平台的难度会比其他软件企业更难,因为成本和资源的压力更大,很多这样的企业选择只做人力资源外包,放弃技术积累。当然这样的企业也可以做的很大,他们的积累来自于对发包客户的业务流程的了解,完善的招聘队伍和丰富的人员资源,但是核心竞争能力有所不足。例如外包服务类企业为微软,为IBM,为华为等顶级公司提供了上千人规模的开发团队,但是不要忘记,这些开发团队的管理、技术都是紧紧的掌握在客户企业那里,一旦这些巨型企业进行策略调整,风险就会完全转嫁到外包服务供应商这里。 

很多企业也意识到了这一点,也在打造自己的基础应用平台,但由于不得其法,很多企业的应用平台还停留在非组织级的程度,甚至还停留在拷贝粘贴的层次。平台跟着项目走,底层框架不断被复制到各个项目中,代码管理混乱,版本基本无法控制。 

根据我们的教训和经验,构建基础应用平台的关键点主要有两个: 

第一,具备独立的组织机构进行基础应用平台的研发,只有独立的机构才能保证平台的完整性和持续发展。瑞友科技在成立之初就成立了技术部进行基础技术研发。为了更好的适应全球业务的需求,保证公司的创新机制,2008年11月,公司成立了瑞友科技IT应用研究院,持续推进基础技术研究和创新。 第二,战略驱动,公司必须从战略层面认可这样一种业务模式,不是短期行为,是企业核心竞争力的体现。有了这样的驱动力,当我们遇到一些困难时,会放弃某些短期利益,来持续推进平台建设,而不是半途而废。很多外包服务类企业因为各种原因最终放弃了自主核心技术的研发,就是没有从战略层面去考虑问题。GAP平台的发展同样遇到了类似问题,建设初期由于版本的不完善,技术部和业务部会发生很多冲突,但是由于战略保证,我们坚持下来了,随着更成熟的版本陆续发布,项目组的使用效果越来越好,进入2006年,GAP发布了2.5版本,平台进入规模使用阶段,目前GAP平台的最新版本是3.6,公司95%以上的定制化项目都在使用GAP平台进行研发,效果显著。 

当然,很多公司会由于资金的压力,无法构建自己的基础平台,这种情况下与第三方具备平台能力的公司进行合作,也是一个不错的选择。 

posted @ 2010-06-21 09:53  池建强  阅读(475)  评论(0编辑  收藏  举报