管理软件的开发模式

2002-1-23 13:57:38【作者】 AMTeam.org 【进入论坛】
本文关键字 理论探讨
广告

管理软件的开发模式

 

管理软件的困境及反思

企业管理信息化已经经历了很长的一段时期,为了提高企业管理的效率,许多企业对管理软件的投入了巨资,并取得了一定的效益,但是,对于绝大多数企业来说,对管理软件的投入并没有产生与之相匹配的产出和效益。在企业实施管理计算机化的过程中,一个普遍的状况是:在一个美好前景的吸引下,企业对管理软件进行巨额投资,经过一系列极其复杂的过程,一段漫长的开发周期后,企业和软件公司发现企业的需求已经发生巨大的变化,于是,在真正的版本发布以前,管理软件的项目质量已经失控并且陷于维护的泥潭,并最终导致项目的彻底失败。

虽然对管理软件的实施成功率缺乏真正精确的统计数据,但根据最保守的估计,在全球范围内,企业投资和实施管理软件的成功率不超过20%。而且,在宣称管理信息化已经成功的企业中,企业完成了软件合理投资所需的80%的资金,但得到的回报不到20%。根据根据我国有关方面调查,我国企业在应用MRP II系统方面已投资过100亿元人民币,但是应用成功率不到10%,达到预期目标的更是寥寥无几。此外,还有一大批企业组织开发适用于自己的管理信息系统(MIS),其成功率同样很低。

在大部分管理软件被企业否定的现实面前,已经有一些管理软件专家开始承认这一事实,并形象地称之为IT黑洞,但是,在总结引发这些事实的原因时,不少软件专家轻率地把责任归咎于企业,认为企业不能接受先进的管理思想,是导致管理软件失败的主要原因。我们说这有部分的道理,但并不是事实的全部。

真正的事实是:现有的管理软件无法适应管理千变万化的个性和持续变革。目前,大多数管理软件公司竭力鼓吹其软件中所包含的"先进管理思想"的神话,为了推广自己的产品,信息技术供应商极力鼓吹自己的产品包含了"先进管理思想和业务模式",甚至努力将自己塑造出一副"管理专家"的形象。然而,基于一种最基本的规律,对企业管理最了解和最有能力决定管理模式的,应该是企业经营者,而非软件公司。

在企业的个性化成为基本生存战略,需要高度敏捷地作出改变的情形下,已经无法容忍软件公司所提供的所谓那些"包含最先进的管理思想"的死板僵硬的软件。管理软件厂商必须深刻认识这一现实,回归自己应该担当的角色,承担自己应该承担的责任。

软件企业应该承担的任务是:尊重企业经营者自己选择和创造的个性化的管理模式,按照用户的意愿,帮助他们规划和构造他们自己的企业信息系统。为此,软件企业必须能够体构真正满足企业管理个性化和持续完善的管理软件,帮助企业决策与管理者实现他们的独特业务模式,并对企业业务的重组和发展提供快速和高效的软件支持。

IT黑洞现象原因

从管理软件开发者这方面来分析,管理软件黑洞的基本原因主要在于三个方面:(1) 管理软件如何开发?即开发模式的重大缺陷。现有管理的管理软件开发模式存在重大缺陷,导致管理软件在质量、周期、成本、风险、实施等方面陷于困境。(2) 管理软件开发成什么样?即客户需求的严重背离。现有的管理软件工具不能全面分析和满足企业业务的需求,尤其是现代企业管理个性化和持续变革的要求,使许多现有的管理软件趋于淘汰的边缘。(3)管理软件如何应用?即应用集成的难以实现。现有管理软件大多是缺乏体系的软件孤岛,企业业务难以关联,破坏了企业业务管理的整体性和集成性,导致管理软件的整体价值大大降低。

正是这些深层次的原因,导致了管理软件的普遍失败,在企业管理迅速变革的背景下,现有的许多企业管理软件已经趋于淘汰。

现有管理软件开发模式

目前软件业已经发展出许多种开发模式,如线形模型、原型模型、增量模型、螺旋模型、构件组装模型、并发开发模型、形式化方法模型等等。

针对现有的管理软件开发模式,从设计和实现的角度来分,现有的管理软件主要采用开发模式大概可以分类如下:(1)原始阶段—无模式,这是目前国内管理软件企业普遍使用的开发模式,主要特征如下:软件设计使用模糊的描述性文档作为设计基础,以文档写作为主要设计方式;软件实现以编程作为基本的实现手段,以各类编程语言为主要工具,如VB, Foxpro, Java, PB , C/C++, Delphi,Web应用开发工具等;基本特征是用户需求描述和设计不精确,含义模糊。(2)通用模型开发模式(UM),这是国外管理软件企业普遍使用的开发模式,主要特征如下:软件设计使用某种通用模型或蓝图(如UML)作为设计基础,以通用对象建模作为主要设计方式。软件实现以编程作为基本的实现手段,以各类编程语言为主要工具,如VB, Java, C/C++, Delphi,Web应用开发工具等。基本特征是避免了含糊的需求描述和沟通,但不保证设计的合理。(3)企业模型开发模式(EM),这是国外先进的管理软件企业普遍使用的开发模式,主要特征如下:软件设计使用企业模型和业务蓝图(EM,如ARIS、DEM等)作为设计基础,以企业对象建模作为主要设计方式。软件实现以编程作为基本的实现手段,以用各类编程语言为主要工具,如VB, Foxpro, Java, PB , C/C++, Delphi,Web应用开发工具等。基本特征是规定了企业管理软件必须且只需包含的要素对象及其关联,保证设计的正确和合理。领先的管理软件公司如SAP、BANN早在80年代就已经开始研究和采用企业模型和业务蓝图开发模式,在经历了十多年的研究和实践后,企业模型和业务蓝图体系已经基本成熟,并成为管理软件设计的基础,EM保证了需求分析的正确和设计的合理。在高成本的条件下,通过漫长、繁杂、高素质专家合作的小组,可以基本保证静态业务系统的质量。

但是,软件开发中最艰巨的任务--软件实现的方法并无本质变化,即以编程作为基本的实现手段,以用各类编程语言为主要工具。软件开发的周期、成本、难度、质量控制、人力要求、维护问题依然没有解决。

目前软件业内流行工具及方法

目前软件业内中流行的许多观点和工具:(1)组件结构,大大提升了软件开发和应用的水平,但组件结构并不是直接的业务重组体系,事实上,现在我们的计算机中有往往有数百上千个业务控件及软件,虽然这些业务软件使用了相同的控件技术(如COM、CORBA),但这些控件和水平框架还远远不是用户的的业务软件体系。 (2)RAD、CASE工具,RAD和CASE只能作为程序员的开发辅助工具,RAD和CASE可以快速生成大量的代码和界面,但这和企业业务重组没有什么直接关系。(3)数据建模工具,数据库建模只是企业业务建模工作中很小的一个部分。要想实现业务重组,必须提供一个完整的业务建模体系。(4)通用建模辅助工具,目前市场上的通用建模辅助工具,如(Rose等),离企业的业务模型设计有非常大的距离,由于这些工具本身并没有包含完整的企业业务模型的建模体系,所以不可能直接用来构架企业管理软件体系。

而另一方面,我们需要认识到,企业管理的个性化和持续完善已经成为现代企业竞争的基本战略,在此背景之下,企业的业务系统必须能够快速定制,灵活调整,自由扩展,自行维护,让企业迅速应对市场、技术、资源、业务、客户、服务和管理等各方面的不断变化和发展。上述方法和工具难以完全支持企业管理软件的个性化要求和现代竞争战略。需要明确的一个基本认识是:必须提供基于企业模型体系的设计和自动化工具,才有可能满足上述要求。

企业模型自动化开发模式

企业模型自动化(EMA)开发模式,较好地解决管理软件开发、实施和维护过程中的质量、周期、成本、风险等方面的问题,并使管理软件能够满足企业管理个性化和持续完善的要求。其基本实现思想可以简单描述为:(1)基于企业模型来设计软件,EMA开发模式基于企业模型来设计软件,即主要从管理和业务的角度来描述管理软件,开发人员只需设计企业的组织结构、流程、信息和业务逻辑等,而不必关心这些业务是由何种平台、何种技术实现的。(2)基于运行平台来运行软件,EMA开发模式依据企业模型的定义,通过运行平台来直接执行企业的业务,运行平台提供了一个完整的协作环境和强大的业务处理支持。而且,用户可以选择不同的分布体系、操作系统、数据库平台、应用平台和客户端模式。

EMA开发模式支持和吸取了传统方法工具的一些优点,但与它们有着本质的区别,其体系的核心是基于企业模型的设计和自动化工具。它能够快速定制,灵活调整,自由扩展,自行维护的管理软件系统,EMA开发模式与其它开发技术和工具工具的关键区别是:(1)基于企业模型体系,EMA开发模式是基于现代企业管理思想, 构建在企业模型体系基础之上,实现企业模型自动化的软件再造体系,能够真正满足企业管理持续完善的需要。(2)基于设计,并支持实现,EMA开发模式是基于设计并同时提供实现的工具。当完成企业建模的工作以后,系统就可以运行企业的模型,最终用户可以立即在计算机上处理他们的业务,只有基于实现的开发设计工具,才能真正提升软件开发的生产力,并把诸多陷于MIS泥潭的企业和软件维护人员解脱出来。(3)跨越代码和实现技术,EMA开发模式是跨越代码和实现技术来运行企业业务,开发者只需关注企业的流程、机构和业务逻辑,而无需关心这些业务是用何种技术实现。比如,在设计完成企业业务模型设后,用户可以得到C/S,多层体系和B/S等多种运行方式,基于EJB、DCOM等不同实现技术的业务软件。
基本特征:通过业务平台直接执行企业业务模型,使软件开发的质量、成本、难度、效率和效益发生根本的变化。

基于EMA开发模式的新一代管理软件

作为新一代管理软件,它将从根本上解决传统管理软件存在的一些重大问题,并彻底改善管理软件的现状。新一代管理软件的核心主要包括以下三点:(1)管理软件如何开发:EMA开发模式,在管理软件如何开发这一问题上,新一代管理软件将会有革命性的突破:即通过企业模型自动化(EMA)开发模式,大幅度地减少管理软件在质量、周期、成本、风险、实施等方面的问题。(2)管理软件开发成什么样:企业模型体系,管理软件的设计定位上,新一代管理软件将依据现代企业模型和业务蓝图理论(EM/DEM),提供基于实现的业务建模工具,使管理软件对企业的团队协作、业务支持、管理控制、决策支持、商务智能、商务加速、管理个性化和持续完善提供全面支持。(3)管理软件如何应用:集成业务平台,新一代管理软件将构架在一个整体集成的运行平台之上,让管理软件实现高度协作和整体集成,支持企业业务的关联和协作,全面提升管理软件的价值。

管理软件的发展过程或许和产品的开发过程的发展有着类似的特点。产品开发经历了由工匠凭手艺开发个性化产品到生产线大规模生产产品,以及目前的面向客户需求的大规模定制。而管理软件也将经历由编程人员的技巧开发到计算机辅助的软件工程,以及未来的管理软件的大规模定制。

为了实现大规模定制,企业模型自动化方法应该是一种很好的开发模式。所以在未来,或许管理软件行业将主要有4类人员,就象目前制造领域的一样。制造领域主要有:领域设计、规划软件提供商(CAD/CAM/CAE等软件);制造设备提供商;产品设计人员(基于CAD/CAM/CAE);产品的制造过程操作人员(基于制造设备)。而管理软件领域会有:领域设计软件提供商(企业建模工具,类似于CAD);领域运行平台提供商(运行工具,类似于制造设备);领域分析设计人员(基于建模工具,类似于产品设计人员);领域软件装配人员(基于运行平台,类似于制造设备操作人员)。

一个最大的变化就是软件代码编制人员将逐渐消失,就象自动化设备取代了工匠的手艺技能一样,领域软件运行平台的自动化解释功能取代了传统软件编制人员的编程技巧。更多的是对领域分析和设计人员的需求,就象目前制造领域的产品设计人员一样。

如果您希望与本文章的作者或其所在机构,进一步交流,请联系:姜小姐
jill.jiang@amt.com.cn | 021-51096826-112 | 在线联系
企业信息化杂谈[原创]国内企业信息化很难回避..

国内企业信息化所面临的环境与西方企业、外资企业、或者合资企业有很大的不同,这就决定了国内企业信息化有自己的特点。

吕建伟 专栏文档知多少---走出软件作坊:三..

我们也在力求能少写就少写,根据团队的、客户的磨合理解共识程度,哪个文档或哪个环节不需要写,我们就砍掉。

CIO职场,强者生存?

在2008年,我们将继续看到CIO向商业运营方向发展。与此同时,我们也会看到商业管理人员将与技术管理人员一起竞争CIO岗位。 IT领导者的就职机会虽有不少,但其难度将会大幅提高。2……

防震减灾,IT当关

今天,任何的防震救灾体系,都离不开IT技术。地震观测台是数字化的,震害防御需要对以往的地震信息进行数据分析,应急救援要需要现代多样化的通讯技术。如果说,在许多行业,信息技术还只是一……