一、日本软件企业的发展概况
日本软件企业起步于上世纪60年代末70年代初。当时起步的绝大部分软件企业均源自母公司的软件开发部门。在80年代经历了一个平稳的发展期后,90年代初日本软件企业达到了发展的高峰期,不少现在的大型软件企业正是在这个时期急剧壮大,直至问鼎日本信息产业界。此后90年代中期,日本软件企业不断整合,涌现了不少经整合而成的"巨无霸",YahooBB、富士通システムソリューション株便是其中的代表。近90年代末期,日本经济大萧条,银根紧缩,日本软件企业为了保持或获取更大的利润空间,纷纷将开发业务转至海外。加之中国劳动力便宜,地理上曾与日本依水相连,文化上与中国息息相通,于是大量日本软件企业纷纷涌入中国寻找合作开发商,使目前的中国对日软件外包输出呈现一片欣欣向荣蓬勃发展的局面。
二、日本软件行业的特点
日本软件行业从规模上说,体现为众多大型企业与小型企业竞相并存的局面,而非像中国以大多小型软件企业为主导的情形。 从分工方式上来说,大型企业主要从事上流设计(需求分析,概要设计,系统测试和维护),小型企业主要从事底层的工作(详细设计及编码测试)。大小软件企业分工合作,互补其短,非常有利于节省成本和提高效率,同时大家都有利可图。这与国内企业?quot;一条龙"的开发方式显然大相径庭。
有人不禁会发问:"为什么这么一个小国家有如此大的软件需求"。首先从经济生产方面看,日本产业经济的高度自动化和信息化是一个强有劲的动力。其次在日本人观念中,行业软件的概念比较淡薄(社会上标准的被广泛运用的诸如微软操作系统这样的软件除外),量身定做的模式比较容易受到大众青睐。实际上,日本很多软件企业的盈利大部分来自系统维护、优化、改造等这样的售后服务。与之相反,这样的观念在中国却很难被客户接受。
在日本,企业的终生客户比例非常高,因此日本的IT企业一般都有比较固定的客户群,因此企业营运相对来说也比较稳定。
此外日本的软件企业一般都有自己的一套经过多年实践总结出来的开发流程和开发规范,在一般性的软件开发时按部就班地进行,做到尽量不出差错。相比之下,国内的软件企业往往心高气傲,好高骛远,不重视平时的技术经验积累,因此也就难以作大成为大企业。
三、日本企业的经营特点
相对欧美企业而言,日本软件企业在经营上体现出下列几个特点:
1. 盈利目标和利益分配:日本企业更加注重于产品的市场占有率,同时也比较重视新产品比重。在利益分配方面,兼顾股东利益、员工利益和社会利益的三者结合。从根本上讲,由于员工利益能够得到保障,所以在日本终生雇佣制能够主导日本企业的用人机制。
2. 企业战略:日本企业非常重视营业资源长期累积,采取的是高质量产品战略而非新产品战略。不过最近几年这种战略观念开始受到冲击并逐步向新产品战略转化。
3. 技术:日本企业一般从应用角度出发,技术难度不高。企业不少技术均来自于模仿抄袭和改造。由于日本法律的原因,许多国外先进技术被日本企业侵权后引发纠纷大多只能草草收场。这在IBM控告富士通侵权一案上得到了突出的体现。
4. 组织构造:日本企业的组织比较注重整体观念,采取有机的组织方式,很少采用事业部制。不过近年来,日本大中型IT企业的组织机构正在由原来的"职能划分"向"业务领域划分"转变。
5. 组织方式:采用了不同于欧美企业的集体决策机制,集思广益,从而能够调动员工的积极性,同时也会出现"决策滞留"的低效率现象。此外企业内的所有成员共享企业的经营、技术等方面信息,对于欧美企业来说,这是比较难以想象的。
6. 经营者个性:日本企业并不太看中经营者的技术能力,拥有良好人际关系的员工常常被青睐并作为候选人员。技术能力突出的员工通常是作为顾问专家这样一种形式得到提拔。
四、日本软件企业的开发组织模式
非事业部制的日本软件企业一般采用的是"经营-开发-后勤"这样一个模式来从事软件开发。这一点跟中国国内的软件比较相似。但要指出的是这里的"后勤"范围很广,包括企业的员工培训和发展计划,系统审计,信息化,企业经营等,与国内不同,日本的大中型IT企业均设有信息推进部这样一个由专业技能非常突出的人员构成的部门,专门从事企业信息化、软件复用体系构建、帮助中心(Helpdesk)、人才育成体系构建这样的"后勤工作"。也正是"后勤"方面资金投入、建设力度等方面的差距,决定了中日软件企业实力对比上的根本差距。
五、日本企业的项目开发管理
日本企业的开发管理,讲究中规中矩,非常重视文档的规范化管理,力求做到"凡事必求有据",体现一个"稳"字。下面以富士通SDEM(软件开发环境方法)为一典型,说明日本企业的项目开发流程。
SDEM是日本富士通根据CMM标准,结合自身二十多年的经验提出的软件开发管理体系标准。它全面兼容CMM与ISO9000,甚至在某些部分超过现有国际标准,在日本享有盛誉并为众多的大中型IT企业所效尤。
SDEM的要旨是以时间为横坐标,以文档为纵坐标。根据项目时间的推移,对某个项目阶段的需要进行的项目活动和书写的工程文档进行定义,从而达到整个项目的开发管理。从形式上与CMM3较为类似。
SDEM的理念是从不同项目干系人的角度(视图)看待开发。用户看到的是企业的业务和可系统化的对象(即现实世界)。项目开发着看到的是开发支援活动和项目管理活动(即电脑世界)。双方通过可交付的软件(广义概念,开发未完成时指的是文档)和硬件作为两个世界的接口,并在每个开发阶段得以定义和实现。随着项目阶段的推移,用户的业务和可系统化对象得到进一步细化和实现,这同时也体现了"由顶自下,逐步求精"这样一种开发思路。
SDEM分为五个流程,其中契约流程和组织流程贯穿于整个项目阶段。项目阶段包括分为企画、开发及维护三个流程。
1. 契约流程
契约流程分为两个方面:购入和供给。购入流程是开发实体为了能够进行项目开发需要向"资源提供商"(包括本公司其他部门或开发小组)"购入"资源的过程。流程中涉及了资源(人、财物)申请提案、预算书和批准文书等文档。供给流程则是针对客户的提案、合同签订等应该进行的活动以及涉及的文档。通过上述两个流程的综合,项目有关客户、成本方面的因素便一目了然。同时也为开发提供了相应的依据。
2. 组织流程
组织流程则包括组织管理流程和系统审计流程两个并行流程。组织流程是企业针对该次项目开发实施一系列管理、开发支援活动。中间包括了事业计划、员工培训等内容。它的好处在于开发组只需专心开发,"你要什么,我就给您什么"。从而减少项目管理者的工作量,同时在内部成本核算等方面也显得极为便捷。系统审计流程由独立于项目开发人员的第三者来进行。它的主要任务在于对所有实施阶段中的项目开发效率,开发进度,资源等方面进行追踪,然后通过书面报告的方式向项目管理者提出改善建议。使项目管理更加全面和高效地得以执行。
3. 企画流程
企画流程包括信息化构想立案(VP)和系统企画(SP)两个流程。每个流程均分为企画立案和项目推进两方面内容。信息化构想立案针对的是公司项目方针,项目间的计划过程。在这个流程里,公司的经营管理者对目前公司内的项目进行计划,调整开发组织结构。系统企画则是针对特定的某一个项目制订的方针、投资效果分析以及过去同类项目的业务总结等。通过该流程,开发人员对即将从事的项目形成大体轮廓,并界定原有可复用资产(包括文档、人员、经验等)。SDEM的企画流程分别从企业级和项目级对具体项目进行早期统筹安排,强调整体效应,这一点非常值得国内借鉴。
4. 开发流程
与瀑布模型极其类似,富士通SDEM将开发流程分为系统分析(SA)、用户界面设计(UI)、系统设计(SS)、详细设计(PS)、程序编码(PG)、程序测试(PT)、集成测试(IT)、系统测试(ST)和运用测试(OT)九个环节。每个环节均包含业务、业务式样、应用、软硬件需求、开发支援和项目管理六个视图。每个视图与具体的文档或过程相对应,均以相应活动的完成或文档的生成作为视图的里程碑。
5. 应用维护流程
应用维护流程(ME)再现了日本的终身服务理念。在日式软件开发中,应用维护作为软件开发流程的一部分也是最重要的一部分得以重视。系统一旦交付使用,将有专人会同客户,对专门人员进行培训、同时对系统的使用进行评估,提出评估报告,总结经验教训,并提出改善方案。较大型的系统在运营期间一般由开发商专人或聘人进行维护,直至系统报废为止。当然,维护费用还是比较可观的。实际上,不少日本IT企业营业利润的主要来源很大一部分是客户系统的维护和优化。
六、日本企业的信息推进
上面曾提到日本的大中型IT企业均设有信息推进部这样一个一级部门。信息推进在日本企业具起着极其重要的作用。它覆盖了日本企业信息化的所有方面。企业级软件复用的实施,开发流程的改进。企业现有项目经验、技术的整理分类,根据企业和项目的需要会同人事部实施人才战略等等,都属于信息推进部的职责。信息推进部定期从各个开发和业务部门收集有关资料和信息,经分析处理后向各部门提出指导性建议或进行相关的人力或技术支援。在一些较小的公司,则成立信息技术推进室这样一个类似部门,由工作多年并拥有各种高级资格的技术、管理人员构成,直接由社长领导,共同对企业的信息化战略进行规划和实施。信息推进活动的实施,使得企业的技术和经验能够迅速的到提升和积累。对企业来说,它提高了企业整体的运营能力。对具体项目开发来说,它提高了项目的开发效率,降低了开发成本和开发风险。
从上面SDEM的例子我们可以看出,日本IT企业的项目管理和国内的管理从本质上来说区别在于一个"态度问题"。日式项目管理对涉及的过程和文档规定了极其严格的次序和样式,要求开发人员严格执行。从国内来说,绝大部分IT企业均打着软件工程幌子,在具体施行方面,开发人员往往是视而不见或是"上有政策,下有对策"。其次,日本的IT企业比较重视经验,技术等方面的积累,舍得花大量的人力和物力投入,这也是国内IT企业很难作大的原因之一-----------太注重眼前利益而忽略企业长期发展的需求,没有积累和沉淀,因此很难发展壮大。日本企业的开发管理模式,的确值得我们借鉴和学习。
注:作者是中关村资深软件系统分析师