软件危机的解决方案
 软件危机的根本原因
  1、对管理软件的实质理解不够,软件技术人员不是管理专家。
  2、管理的需求变化莫测,而管理软件和开发模式不适合需求的快速变化。
  出路是:
  1、与管理顾问紧密相结合。
  2、采用模型驱动软件体系结构(MDA)、模型驱动语言(MDL)和业务基础平台。快速开发软件。
  
  管理软件与管理顾问
  管理软件离不开顾问
  管理顾问公司可以是软件公司而享有软件公司的优惠政策
  世界上最大的ERP软件公司SAP,它的发展壮大离不开管理顾问公司
   
  成功的大型案例
  联想花了3000万人民币购买了SAP的ERP软件,而一半以上的费用是花在顾问服务上,提供顾问服务的公司是著名的“德勤顾问公司”

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


计算机语言进化的新物种——模型驱动语言

    计算机语言,这种人类创造的用于交流的信息规则,与所有的自然语言一样,呈不断的进化状态。回顾历史,从面向对象语言的出现,到统一建模语言(UML)的规范性总结,已经十年有多。按不少专家所总结的计算机语言每十年为一代的进化规律,新的计算机语言应该出现了。这是自然界不以人的意志为转移的更新换代新的发展规律。
    新的一代计算机语言如何描述?采用什么规范?不论从计算机语言的发展规律——脱离直接与机器硬件对话,越来越接近自然语言的趋势进行分析,或是从目前计算机软件设计理论和新方法讨论的趋势分析,新的计算机语言与模型驱动体系结构(MDA)有关。模型驱动语言的催生环境是计算机硬件技术的迅猛发展和WEB的快速普及。作为萌芽现象应该从与WEB关系密切的XML出现开始。显然,UML的制订者们很敏感地意识到这一点,他们捷足先登,迎合MDA的提倡者OMG的思路,改造了UML,在新版的UML中加进了模型驱动的概念。在2003612OMG组织正式通过的UML 2.0的主体规范中,增加了支持模型驱动体系架构(MDA)、支持系统运行时体系架构的建模 支持可执行的模型等功能约定。看来UML有从面向对象语言环境过渡向模型驱动语言环境的明显用意,企图将新的软件设计思想和模式再次“统一”进去。
    新的计算机语言属于统一建模语言(UML)的新“属”,还是新的语言物种?我们可以参照人们对自然界新物种的定义方法。在自然界中,新的物种是这样定义的,新物种与原物种或亲缘物种已经不能直接继承(物种间已产生生殖隔离);必须有一定的分布区和种群数量;自身存在直接继承(能繁殖后代)。我们不能机械套用自然界物种的定义于计算机语言,但我们可以参照其原理和原则。原理和原则告诉我们,新不新种不在于新的个体是否有了新的功能,而在新的物种与原始物种的种间隔离和繁殖能力。所以UML 2.0增加了MDA的新属性、新功能定义不能成为新的语言种类。倒有一个接近自然界新物种界定准则的实际参照物,这就是RUP,这一UML的制订者,面向对象规则的权威们所创造的软件系统,它能能否真正成为软件运行期应用的软件系统并大量繁殖,为直接用户所接受。但是,真的有那么一天,UML或RUP也应该属于新的物种,而且必须给它命以新的名字。这新的名字应该归到MDA的名下。为了交流方便,我们暂且称之为模型驱动语言——MDL。模型驱动语言的进化历程,我们可以作如下的图示和描述。




计算机语言的进化方向和阶段

    模型驱动语言MDL是新的软件语言模型体系。这种新的语言体系不单用于软件开发期间,而且用于运行期间,其描述的层次是在业务流程一级。是运行期模型驱动系统。本阶段语言的特点将是极大地简化软件程序编码,代以大量的接近自然语言和文字符号方式的约定。这一时期的语言模式是以业务基础平台的方式出现,我们这里介绍的ISOMIS软件平台是这一类语言规则下产生的代表之一。
    面向对象语言是“紧贴”高级软件语言的模型体系,用于软件开发期间,而不是运行期间,其描述的层次是在软件的组件、对象一级。这是的常用术语是对象、类、包、控件、所见即所得等。统一建模语言(UML)是这一阶段的语言规范的代表,RUP是这一语言规则下产生的工具。
    高级语言是WINDOWS之前和初期的语言规范,高级语言是相对之前的低级语言汇编和机器语言而言。高级语言描述的层次是软件的模块、结构、内存管理。当时,结构化编程是当时先进的软件设计思想。代表的计算机语言是C、PASCAL等。指针、位移、驻留程序、扩展内存为当时的编程高手所津津乐道。
    汇编语言是软件设计的最初期语言。汇编语言的特点是直接与机器的CPU、计算机的基本输出输入控制系统大交道。大量直接调用计算机中断,直接使用CPU中的寄存器。控制计算机的效率特别高。   
    机器语言
是最原始的控制计算机的语言。基本的语言是0和1。当时,表示0和1的最好模式是穿孔卡片和穿孔纸带,穿孔使光通过表示连接。

 

参考资料:

复杂系统的层级原理与模型驱动软件体系结构

对模型驱动软件开发的理解

微软工程师Anders Hejlsberg 在微软Visual studio.NET 发布大会上的演讲稿   

从C/C++到C#的锐利之路

Web存储格式语言的发展

从摩尔定律展望新世纪电信技术的发展

 

如有任何意见和问题。欢迎与我们联系  mailto:info9@isomis.com