在线工博会

软件产业新思维:软件工艺的革命
当前软件业的竞争格局,迫使软件行业再一次进入反思,到底软件行业目前处于什么发展阶段?未来应该向什么发展?我们为什么会遇到.com泡沫,而传统行业的发展好像没有这么多的问题?当今软件行业问题的解决方案到底在哪里?
产业阶段性分析
产业通常都可以分为婴儿期、青少年期、壮年期和老年期四个阶段,当前全球的软件产业正处于壮年期,它期待通过软件开发工艺的创新,来获得长期稳定的发展。一个产业,一般可以分为四个时期。每一时期都有其不同的特点与主要矛盾,谁有了解决主要矛盾的方法和产品,谁就掌握了本产业在这一阶段发展的金钥匙。
第一个产业阶段为婴儿期。在这个阶段,事实上整个产业还没有真正的形成,而仅是以某一形式与其母产业结合在一起,并且慢慢从母产业中分离出来。这个阶段的主要矛盾是“新概念”的有与无。一个企业如果有一个符合未来产业发展远景的新概念,必定在媒体的炒作下而闻名。
第二个时期为青少年期。在这个阶段,产业开始形成规模,技术日新月异,公司如雨后春笋般出现,产业经营处于“暴利”阶段。这个产业阶段的主要矛盾是有没有“新技术”,谁掌握了新技术,谁就是“武林盟主”。
第三个阶段为壮年期。产业所需技术已基本成熟,分工越来越细,产业进入稳定持续发展期。产业链已经形成,公司经互相兼并,在产业链中都已找到自己的位置。因为技术不再是某几个公司的专利,在大家大打“价格战”之后,也已无“暴利”可言;所以这个阶段的主要矛盾是“新工艺”--只有通过工艺的不断创新,才能降低成本、提高质量,才能在“价格战”中取胜,获得长期稳定的发展。
第四个产业阶段是老年期,俗称“夕阳工业”,就像某些制造业。在这个阶段,技术已经非常成熟,工艺也已无太大的改进空间,于是“劳动力成本”上升成为主要矛盾。“夕阳产业”总是向劳动力成本低的地区漂移。如今,我国已成了“世界制造中心”,就是因为我国的物美价廉的劳动力优势。外包、代工是这个阶段产业的典型特征。当然,新的更替产业在这个阶段的后期已经开始慢慢的萌芽。
那么目前,商业应用软件产业现在处于哪一阶段呢?在北美,应用软件作为产业出现于20世纪70年代末、80年代初(之前还不能叫产业),80年代末至今是新概念、新技术的爆发期,多种技术思想“各领风骚三五年”,在商业应用软件技术上,逐渐形成了.Net和J2EE两大阵营。随着技术越来越成熟,分工越来越细,基本上形成了操作系统、数据库、中间件和应用系统这样一个完整的产业链雏形。
所以,从全球角度来看,软件开发新技术风行的局面已经少见了,但软件产业还是“高级劳动力密集型”的手工作坊式生产,不管是软件产品开发,还是项目开发,都是靠人力的堆积来完成任务。生产效率、质量严重依赖软件开发者的个体素质,没有形成规模化效应。即使一些采用了软件工程思想,或ISO、CMM管理思想的企业,仍然以人日效率来计算软件开发的成本,软件生产的规模化、工业化效果还没看到。也就是说,在技术日新月异的同时,软件开发工艺(软件工程所研究的对象)并没有太大的进步。
按理说,当技术成熟之后,产业的发展就应该脱离了“手工作坊式生产”,而进入到“工业化生产”、“自动化生产”阶段,并且会出现“软件生产工艺”的苗头,但在软件行业现在还看不到这一现象。
软件业需要工艺革新
软件工艺的实现需要一个过程。过程的正确往往是保证结果符合我们期望值得关键点。
软件产业的工艺是什么?它其实和传统产业的工艺其实没有本质的区别,它同样由生产过程、原料/零件配送流程、操作参数优化、公用工程等四个主要方面组成。
软件业需要工艺革新,首要的任务就是改变我们现有的软件的生产方式。我们要采用流水线自动化的生产方式,并且,要如同传统产业一样工厂化的管理。现在,我们有很多的组织一直在做着这方面的研究,也取得了一定的成果,比如CMM,ISO9001等等。
我们必须优化我们所生产的应用软件的质量。而应用软件的优化,将体现在两方面:一是作为应用软件业务组成的唯一原材料业务对象与业务对象间关系的优化。这就是业务组件的划分大小的优化。如果业务组件大了,灵活性就小了,如果业务组件粒度过小了,其耦合度和组装成本就高了。所以,必须到一个最优点。另一方面是优化客户需求中的业务流程。
我们要工艺革新,我们就必须解决我们原材料的来源问题。应用软件的惟一原材料就是业务组件。所以,我们必须能够完成业务组件的动生成、自动配送。同理,在应用软件里,有非常多的资源是可以公用的。比如处理操作系统间关系的支撑体系、比如处理和数据库间高效交互的技术体系都是可公用的资源,这些资源,也就构成我们今天所提的“中间件”的概念。应用软件是企业管理活动的映射,在一定意义上说,它就是虚拟的企业。企业的管理活动一直在变,但是,随着它成熟度的增高,已经有一部分管理活动已经变得规范,比如企业组织架构等,这些资源,在任何一个应用软件中基本都是同质的,也就是说,可以形式化成为我们的作业务支撑体系,即业务通用平台进行公用。以上种种资源,它都不应该由我们的应用软件集成商去完成其生产,必须要专业的产商来完成,这样才能够真正降低我们应用软件生产的成本。
以上的四大部分,就构成了我们今天所提的软件工艺。今天的软件产业还非常的年轻;概念已经成熟,技术不断发展。对于整个产业的发展方向上的探讨,已经有了非常多的论证,而最为统一的观点就是软件需要工业化。当然了,我们都知道,任何一个产业的工业化都是一个漫长而痛苦的过程。从成熟的产业来看,工业化真正完成的时间的标志点就是工艺的成熟。软件需要工业化,那么,我们不能单纯的仅仅做出一条自动化的生产线,或者仅仅能够自动化的生产业务组件;这些,都仅仅是工业化过程中的一个点,而我们追求的应该是整个工业化的面的总体层次的上升,那我们说,我们要实现软件工艺。
然而,软件工艺的实现需要一个过程。过程的正确往往是保证结果符合我们期望值得关键点。所以,在如何顺利实现软件工艺的问题上,我们提出了软件“软件四化”的解决方案。
所谓“软件四化”就是构架平台化、组件业务化、编码自动化和管理工厂化。这四大部分即是独立的,又是相辅相成的,它们共同协作,完成软件工艺化的整体功能。其中,构架平台化解决的是公用工程的问题;组件业务化解决了产品优化策略的问题;编码自动化解决了产品原材料的自动化生产与配送的问题;管理工厂化解决了生产过程中的管理问题。将一个先进的工艺配以工具来辅助实现,这就是一个产业走向工业化、工艺化的过程。 3/24/2005


电脑版 客户端 关于我们
佳工机电网 - 机电行业首选网站