精华内容
下载资源
问答
  • 美团外卖Android平台化架构演进实践
    展开全文
  • 目录 前言 第一章 中国管理软件开发的主要矛盾 1、 中国企业面临变革的巨大压力 ...6、传统管理软件开发模式 7、传统开发模式的缺陷 8、传统开模式响应企业变革的局限 第三章 软件平台化架构与企业动态建模 9、管理软件

    目录

    前言

    第一章 中国管理软件开发的主要矛盾

    1、 中国企业面临变革的巨大压力

    2、企业管理软件产品的需求特性

    3、两种典型的产品交付模式

    4、中国管理软件面临的主要矛盾

    第二章 管理软件传统开发模式的缺陷

    5、软件业与传统制造业的异同

    6、传统管理软件开发模式

    7、传统开发模式的缺陷

    8、传统开模式响应企业变革的局限

    第三章 软件平台化架构与企业动态建模

    9、管理软件开发的平台化架构趋势

    10、关于业务基础平台

    11、业务基础平台的特点

    12、企业动态建模(EMA)改变传统生产方式

    13、模型驱动架构(MDA)的特点

    14、企业动态建模的过程和方法

    前言

    今天的任何一家企业,无论大型企业集团,还是成长型企业的管理者都会发现,急剧多变商业环境下的决策与执行已非同寻常。为支持企业应对企业内外的流变环境,利用信息技术推动企业变革已成为重要手段。

    本论文旨在从管理软件及供应商的角度,探讨当下中国管理软件业所面临的主要问题及这些问题的实质。同时,本论文将重点讨论面临这种问题的解决方案(此章内容未提供)。

    本文的基本观点是,“对企业业务对象规律的认识不够”与“基于传统开发模式的管理软件系统”这两方面是导致当前时代管理软件不能随需应变的主要因素,而基于企业模型与新的软件体系结构是解决上述问题的最佳解决方案。

    第一章 中国管理软件产品开发的主要问题

    1、中国企业面临变革的巨大压力

    在当前迅猛发展的经济环境下,挑战和机遇并存下的中国企业面临着巨大的变革压力。

    首先,中国企业面临着世界性的竞争压力。

    中国加入WTO,国内企业将逐渐融入世界经济贸易圈中。他们所面临的竞争不仅仅是国内同行之间的竞争,还有来至世界性的竞争压力,尤其是那些跨国性的、技术和资金都非常雄厚的企业逐渐进入中国的经济圈,这迫使国内的企业必须思变,采取措施,积极推动企业战略与管理变革,否则在竞争中就会失去自己的优势,被淘汰出局。

    其次,中国企业面临着和国际化接轨的问题。

    世界经济结构和产业格局正处于重大变动时期,欧美许多发达国家和地区为了保持自身的经济优势,降低生产成本,将制造业转移到了中国,中国正成为世界制造业中心,国内的许多企业成为了世界性供需链中的一个重要环节。为适应这一发展趋势,中国的企业在组织结构、管理模式、信息系统建设方面都需要跟进世界的步伐。

    与此同时,来自国内同行企业的竞争压力增大。

    国家制定的经济政策日渐宽松和开放,同时创造了相应的经济环境来鼓励企业的创办和成长,使得越来越多的新兴企业孕育而出。这些新兴企业的加入一方面的确活跃了经济氛围,但同时无疑带来了更大的竞争压力。

    基于这样环境下的中国经济正在处于急剧的转型和发展中,企业的组织、业务和管理几乎无时不刻不处于变动状态。有研究表明:我国企业目前正处于管理变化迅速的年代。例如,几乎所有企业在三年内组织结构都会有一次较大的调整,而10年以上的企业的几乎所有组织和功能都发生过变动。特别是那些高速成长的企业和产权发生变化的企业,组织变化更为激烈,不少企业甚至一年一变。

    2 企业管理软件产品的需求特性

    互联网时代的企业管理信息化已经从部门级、企业级,发展到社会级的实时在线的应用,应用的范围在深度、广度上都发生了质的变化。

    在新的商业环境下,用户对软件需求的个性化越来越强烈,企业需要个性化的软件。这种个性化表现为:空间和时间上的个性化。

    “空间上的个性化”是指不同企业用户对软件系统的需求不一样。因为不同的政治经济环境下,不同的行业,不同的企业都有独特的管理方式和企业文化,以此区别于竞争对手,以赢得市场空间。例如,不同行业的企业用户对ERP系统的需求是不一样的;同一行业的不同用户对ERP 的需求也是不一样的。有研究资料表明,在同一个市场经济体系中,市场化的自由程度与企业的个性化程度形成正比例关系。换言之,“企业的价值一定是个性化的”,在充分竟争的市场经济领域取得成功的企业一定具备其独特的核心价值。而中国企业正处于一个市场化转型的经济体系之中,各个行业领域的市场化程度也参差不齐。中国独特的政治、经济与人文环境直接影响着置身其中的中国企业的管理变革,这种影响最直接的市场表现就是:越来越多独具经营管理特色的中国涌现出来。因为,企业信息化管理的角度讲,企业的信息化管理变革必须应对这种“个性化”需求的挑战。企业级管理软件是支撑企业信息化管理变革的最为重要使能工具和平台,因此,与这种变化趋势相适应提要求是,企业管理软件产品的开发与实施应该充分体现和企业核心竞争能力相关联的个性价值,从而推动企业的经营业绩与价值的提升。

    “时间上的个性化”是指同一个企业用户在不同时间不同发展阶段对软件系统的需求是不一样的。企业的生命周期是一个动态变化的过程。在每个成长阶段,企业都需要有所区别的政策和管理;随着环境的变化,企业的业务和管理方式要相应地发生变化;再加上随着企业概念的外延扩展,如今已变成了一个涵盖供应商、客户以及各种合作伙伴的虚拟组织。例如,一个企业在实施ERP系统之后一年,甚至半年,市场环境变了,企业规模变了,其管理模式、组织机构、业务流程都要随之改变。因此,企业对灵活性或者弹性的需求变得十分重要,相应的,企业级管理软件也需要更高的弹性。

    企业管理的变化要求企业管理软件也必须随之变化,这也是管理软件产品提高客户满意度的必由之路。总体而言,当前时代的企业对管理软件有如下的需求的特性:

    a,高质量:能够满足企业业务管理的需求,可定制;

    b,低成本:组件化,可重用性;

    c,柔性:易调整,可配置;

    d,可持续发展:企业业务与知识管理的积累平台。

    e,可集成:开放性架构与标准化接口。

    3 两种典型的交付模式

    目前,中国企业管理软件产品通常采用两种典型的交付模式。

    其一,以套装软件加上二次开发交付客户。此种方式主体上固化了软件的功能结构,只留一小部分参数配置。这样的软件在具体应过过程中还需要大量的二次开发或者客户化工作,即使这样,仍然时常不能满足企业的需求。应用软件厂商通常会大肆宣扬自己的产品包含“行业最佳业务实践”,并以“管理专家”的身份对客户的管理模式强行变革,以适应这种标准化的“行业最佳业务实践”。然而每个企业所处的竞争环境千差万别,企业的战略、核心竞争力亦有所不同,企业只有保持自己鲜明的个性,并对环境的变化保持高度的柔性,随时准备、需要调整管理策略。 “开盒即用”的方式往往具有良好的系统架构和稳定的系统性能,能够适应一定领域的市场需求,但很难满足不同用户的个性化需求。

    其二,为客户从代码级开发定制的软件系统。这种定制开发方式,基本上是从客户的个性化需求出发,进行软件定制。诚然,这种定制开发的软件系统能够满足特定用户的大部分需求,但开发者总是很难全面考虑软件的扩展性、稳定性等架构因素,软件产品因此而不能快速适应客户的需求变化,同时也很难提高开发的效率。许多中国管理软件公司,陷身于在软件定制开发的泥潭中无法自拔——软件知识得不到有效的积累,成本又居高不下,这构成中国管理软件公司的发展瓶颈,同时也在一定程度上妨害了管理软件产业的发展。

    因此,在这个企业形态不断变化、企业外延不断扩展、企业的环境不断变迁、企业的业务不断调整的时代,从上述两种软件交付方式,都不能有效解决软件随需应变的问题——软件开发方式效率低下,软件结构死板僵化。

    4 中国管理软件产品面临的主要矛盾

    企业管理软件,尤其是大型应用系统面临的危机可以说是一个全球性的问题。美国国家标准和技术研究院的一份研究报告显示:“占据世界软件销售额85%的是大型的专用软件,而其开发的失败率却高达70%!”,这些危机表现在各个方面。

    首先,以传统方式开发的企业管理软件(尤其是大型系统)难以突破布鲁克斯的“没有银弹论”,找不到软件工程或者项目管理的方法,能够大幅度提高应用软件的开发效率——开发周期长、开发费用高,实施费用超支和工期延长,已经司空见惯。更加可怕的是,随着企业的环境和需求的不断变化,“建成即成闲置”,形成软件工程的灾难。

    其次,客户对管理软件的诸多期望几乎无法得到完全满足。例如,客户期望实现业务集成和协作,在协作基础上构建出高效的企业应用体系;客户期望对供应链上的信息进行及时传递与处理,以实现更快捷的市场响应能力;客户期望能够快速实施和低成本部署满足个性化需求的软件系统,并适应未来商业环境的变迁……

    一句话,客户对软件功能和性能的要求越来越高。在这种市场需求下,要实现企业各个层次的集成,必然会导致软件在规模、复杂度、功能上的空前扩张。

    不仅如此,大型管理软件应用的危机还表现为系统部署运行和维护的“危机”。应用环境从单机应用,过渡到客户机/服务器的环境,再过渡到浏览器/服务器的环境,并进一步向多层式(N-tier)分布式系统的网络环境迁徙。今天,基于互联网的企业级应用要求软件实现跨空间、跨时间、跨设备、跨用户的协同,软件处于极度复杂的异构环境中,这种情形下,以传统的软件开发思路应对当前的危机就只能是刻舟求剑、缘木求鱼。

    类似的危机,在中国表现得尤为突出。中国是一个迅速发展和不断转型的国家,中国企业的形态因此而更复杂,中国企业的改革变化空间因此而更大。正因如此,中国企业级管理软件开发和运营的危机也就更为严重,企业信息化的风险更多,失败率更高。

    总体而言,现阶段中国管理软件产业的基本矛盾是不断增长、日益复杂多变的社会需求与落后的软件生产力之间的矛盾。和美国、日本、印度等软件产业发达的国家相比,中国管理软件产业起步较晚,其发展历程与现状均有着鲜明的“中国特色”。在“不断增长的社会需求与落后的软件生产力之间的基本矛盾”的大背景之下,当前中国本土管理软件产品开发面临最突出的矛盾就是“企业以用户快速多变为主要需求特征的个性化与管理软件产品的通用性之间的矛盾”,而就其具体表现而言,这种矛盾主要有两个方面:

    其一,软件与需求脱节,包括软件实施的周期长、成本高等;

    其二,企业变化快与软件调整难之间的冲突,也包括软件维护成本高、与新环境集成困难等问题

    第二章 管理软件传统开发模式的弊端

    5,软件业与传统制造业的异同

    首先需要说明的是,作为管理软件公司,其基本的任务就是制造适合企业用户业务需求的管理软件产品,管理软件业与传统制造业的基本业务逻辑是相同的。如下表一所示:

    产品

    生产环节和流程

    传统制造业

    硬件产品与服务

    市场调查、产品定义、产品设计、产品加工、产品组装

    、产品安装、产品维护

    管理软件业

    软件产品与实施服务

    业务调查、需求定义、产品设计、软件编码、集成测试、软件实施、系统维护

    当然,管理软件业与传统制造业又有明显的区别(如下表二所示):

    产品形态

    市场需求

    响应需求变化

    响应方法

    产品重复性

    变化与成本

    劳动力

    传统

    制造业

    具体

    具体、明确、 稳定

    速度快

    间接的

    可重复性高

    成比例

    劳动密集型

    管理

    软件业

    抽象

    含糊、不具体、易变

    速度慢

    直接的

    重复性差

    不成比例

    知识密集型

    6.管理软件的传统开发模式

    “企业管理软件开发模式”主要包括软件体系结构和开发方式两个方面。

    从软件体系结构的角度讲,【软件体系结构是指

    Architecture=(componet,connector,environment,principle).(IEEE)】

    长期以来,传统企业管理应用软件系统开发的体系结构的发展经历以下几个阶段或者说发展模式:一是基于硬件平台直接开发;二是在操作系统平台上进行开发;三是基于数据库平台开发;四是基于中间件平台开发。在这四种模式中(具体见图1),由于后者的开发平台均比前一种要高,因此后者的开发模式难度更小,开发周期也更短。这也说明,不同软件平台层次的诞生,有助于提高软件生产力。

    73a9d52c4b0f7cfe8b13993a.jpg

    图1:传统软件体系结构的平台实现

    从企业管理软件“开发方式”的角度而言,传统的软件开发模主要有以下三种方式:

    其一,原始阶段--无模式。

    在软件设计时使用模糊的描述性文档作为设计基础,以编程作为基本的实现手段,各类编程语言为主要的工具。这一层次的用户需求描述和设计不精确,含义模糊。

    其二,通用模型开发模式(UM)。使用某种通用模型或如蓝图(UML)作为设计基础,以通用对象建模作为主要设计方式,以各类编程语言为主要工具。这一层次避免了含糊的需求描述和沟通,但不保证设计的合理性。

    其三,企业模型开发模式(EM)。

    使用企业模型(EM)和业务蓝图作为设计基础,以企业对象建模作为主要设计方式,以用各类编程语言为主要工具。这一层次规定了企业管理软件必须且只需包含的要素对象及其关联,保证设计的正确和合理。但在这一层次的软件实现方法并无本质变化,开发量仍旧非常艰巨。

    以上三种传统开发方式的主要特点是:编码式的开发方式与一次性开发持续运行的应用软件。编码式的方式使得快速开发企业级应用软件的愿望难以实现;一次开发持续运行的方式,则导致了软件的僵化和濒危——这种软件不但难以适应客户需求的变化,而且每次修改都必须在代码层面上推倒重来,因此造成了效率的降低和资源的糜费。

    传统的系统开发通常包括需求采集规划、系统设计、系统构建、程序开发、系统测试等各个环节,这些环节的组合构成了一个从业务管理领域抽象构建业务模型,从设计模型构建到软件实现,从软件实现到底层平台的编码式系统开发模式。尽管这种编码式系统开发模式由于历史的积累,促使各个环节在整体规划指导思想下开展工作的协同程度,即业务模型、设计模型及软件实现各个环节的相互沟通“翻译”取得了一定的进步。但这种传统模式始终存在一个致命的缺陷:即没有一套跨越所有环节的统一的语言和标准来构建各个环节之间的相互映射与自动转换关系。

    7.传统开发模式的缺陷

    分析传统开发模式同样可以从传统的软件体系结构与开发方式两个方面入手。

    就软件体系结构而言,传统的软件体结构虽然经历从基于硬件平台、操作系统平台、数据库平台和中间件平台的发展,这种开发体系结构的发展在也很大程度上提高了软件研发效率,但它们依然有着明显的不足:开发难度依然比较大,开发周期依然比较长。软件开发的效率并没数量级的改进。再加上此前的软件体系都是从技术层面进行的改进,和企业应用软件主体,密切相关的业务需求领域比较远,因此无法在解决因业务的复杂性而带来的管理软件的复杂性领域有实质性的突破。

    中国管理软件产品开发战略与平台化架构分析 二二 刘国华

    2008-04-30 14:13

    就开发方式而言,因为对企业用户业务对象规律的认识不足,到目前为止,中国管理软件厂商对企业管理业务运作规律(模型)的认识还远远不够,还缺乏一个企业、软件商、实施顾问都统一认同的模型或者语言标准,导致需求与软件在对业务模式与和运作规律认识(模型理解)上的不统一(如图2所示)。例如ERP、PDM等涉及企业管理的软件的应用都而临诸多问题。这就迫切需建立科学的、有共识的交流媒介-企业模型(EM)。

    图2 传统开发方式的缺陷

    也正是因为传统软件体系结构与传统开发方式所存在的问题,使得传统开发模式下的软件开发和应用的效率、质量和成本三大瓶颈无法取得数量级的变化,导致了管理软件的应用与发展仍然存在很大的问题,主要表现在两方面:其一,管理软件不能很好地满足用户的业务需求,其柔性非常差,不能适应用户业务的快速变化;其二。管理软件供应商的开发效率低,实施周期长,成本压力大。这两个方面的缺陷都集中反映了现阶段中国管理软件产业的基本矛盾,即不断增长、日益复杂多变的企业需求与落后的软件生产力之间的矛盾。一方面,企业的应用需求更加多变,而另一方面,基于传统开发模式的中国管理软件公司的生产力还相当落后。这也是也是影响中国企业信息化管理变革的主要原因之一。

    8.传统开发模式对企业变革的影响

    基于传统开发方式的管理软件产品应对企业变革的影响具体包括:

    8.1对速度的影响(效率)

    “开发与实施周期长”是中国诸多大型企业实施诸如ERP系统的一个普遍性难题。

    这当与企业用户自身的战略与管理变革有关,但是从软件系统开发与实施的角度而言,因为传统模式在业务模型、设计模式和软件实现及平台搭建的各个环节分别使用不同的语言和标准来开展工作,这些环节之间的沟通需要耗费大量的时间。正是因为是在不同语言和标准之间进行转换,导致无论是企业基于购买相适应的标准化ERP系统进行二次开发或者客户化的调整,还是开发新的应用系统,各个环节之间时间耗费都无法得到根本性的改观。这是传统模式不能迅速响应企业变革对时间要求的主要原因。

    8.2对质量的影响(效果):

    对质量影响集中表现在软件系统与需求脱节或者不能有效满足需求。因为没有统领全局的语言和标准,直接影响全过程中的各个环节之间的沟通出现诸如“信息丢失”,“对概念的理解不一致”等错解现象。这种传统模式中的错解现象直接影响到系统开发和实施过程的质量,从而引起“系统不能有效支持企业的变革”,这也是影响中国企业信息化管理变革绩效的主要原因之一。

    8.3对成本的影响(收益):

    “投资巨大、收效甚微”也是中国企业管理信息化的一个常见的现象。从技术应用支持企业变革这个角度来讲,正是因为传统开发和实施模式存在对上述“效率”和“效果”两方面的挑战,也同时影响到基于传统开发和实施模式的系统成本居高不下。

    总而言之,基于传统模式的软件产品与急剧多变时代的企业对变革的速度、质量和成本的要求之间的矛盾已经相当尖锐。换言之,技术的应用如何跟上企业变革的步伐是当前时代中国管理软件厂商共同面临的挑战。这需要管理软件厂商针对传统开发模式和思路进行重新设计和调整,以应对这种挑战。

    fc64501b083bcec7ac6e7538.jpg

    中国管理软件产品开发战略与平台化架构分析 三一 刘国华

    2008-04-30 14:16

    第三章 软件平台化架构与企业动态建模

    9.管理软件的平台化架构趋势

    为解决软件产业的基本矛盾,人们一直在进行着持续不断的努力。概括起来,人们的努力有两个方向,一是软件工程、软件项目管理的方向,一是软件技术革新的方向。自诞生到现在,软件产业涌现了大量的技术革新。每一次的技术革新都向解决软件产业的基本矛盾迈进了一步。在所有的技术革新中,软件平台化是最有意义的,也是最有生命力的。

    从上个世纪50年代中期第一个简单的批处理操作系统诞生到现在,软件平台已经历了50年的发展。在过去的发展历程中,有三个标志性的软件平台,即操作系统平台、数据库平台、中间件平台(应用服务器)。

    正是这三种软件平台的诞生,极大地推动了软件平台及软件产业的发展进程。进入21世纪,软件平台化出现了新的发展趋势(如图3:软件平台化架构的新趋势):其一,中间件平台开始向“软件基础架构平台”转变,其二,是“业务基础软件平台”的诞生。

    这种平台发展趋势对传统管理软件体系结构产生新的重大影响。当下流行的所谓“基于体系结构的软件开发”就是指需求与设计之间反映决策信息的中间过程,包括问题的定义、软件需求、软件体系结构至软件设计再到软件实现,将软件系统的结构信息独立于算法与数据,创建满足系统需求的新结构。

    “业务基础软件平台”是一种技术创新,也是一种新的企业管理软件体系结构,它使软件平台又多了一个层次,并将企业管理应用软件的业务逻辑和实现技术分离开来,使得应用软件的开发者可以集中关注应用的业务领域,而不必关注其技术的实现。这使管理与业务人员参与应用软件的开发成为可能。

    326369c4995795bb8226acc4.jpg

    图3:软件平台化架构的新趋势

    .10.关于业务基础平台架构

    业务基础软件平台(以下简称“业务基础平台”,或者“业务中间件”)是指以业务导向和企业模型驱动的、可快速构建企业应用软件的开发平台。业务基础平台包括集成应用平台与开发体系两个部分。从技术角度分析,业务基础平台为企业复杂应用软件系统的开发提供了一个基本框架,并有与之相应的、方便易用的开发与维护管理工具。

    51d88ef492bf1dfd7609d7c4.jpg

    这个框架给出了一些复杂应用软件的基本组成部分和实现方法,并且预置了很多供参考模型。有了这样的准备,在业务基础平台之上开发管理软件就可以降低复杂性,省去很多基础性的研发工作,从而大大缩短研发周期,提高研发效率,降低开发成本。具体来说,业务基础平台能满足复杂应用软件系统开发的如下要求:

    1.速度要求。通过业务基础平台提供的基本框架,以及预置好的参考模型,软件提供商能很快地研制出用户所需要的复杂应用软件系统。

    2.灵活性要求。通过业务基础软件平台提供的开发与管理工具,软件提供商能很方便地满足用户个性化的需求,以及用户在发展过程中各种各样变化的需求。

    3.集成性要求。业务基础软件平台为复杂应用软件系统提供了一个集成框架,不仅为集成同一平台上的各种不同软件提供了规则,还为集成其他应用软件系统及下层的异构平台提供了集成接口。

    11.业务基础平台的特点

    除了作为一个软件平台的基本特性外,业务基础平台还具有以下两大特点:

    基一,面向业务。操作系统平台、软件基础架构平台等都是面向软件开发人员,它使用起来技术门槛也比较高。而“业务基础平台”是面向业务人员的(并非说由业务人员来开发管理软件,而是业务人员能理解),它使用的更多是业务人员就能理解的“业务语言”(管理语言)。正是这种特点消除了复杂企业管理软件系统长期以来存在的两张皮现象(即缺少复合型的专业人才,懂技术的不懂管理,懂管理的不懂技术,管理人员、业务人员与技术人员之间一直存在着很难弥合的“鸿沟”)。为解决管理软件产业的主要矛盾创造了新的条件。

    其二,技术无关性。技术无关性不是指业务基础平台和实现技术没有关系,而是指业务基础平台“屏蔽”了操作系统、软件基础架平台的技术细节,开发人员在利用业务基础平台开发管理软件应用系统时,关注的焦点在于企业业务逻辑、企业的运营管理模式,而不用关心采用何种技术来实现。简单地说,这种技术无关性其实也就是跨平台,即通过业务基础平台开发的软件能够顺利地在各种下层异构环境下运行。

    业务基础平台的出现使软件平台多了一个具有革命性意义的战略层级,为降低企业管理软件尤其是大型企业管理软件系统的实现难度提供了新的途径。

    中国管理软件产品开发战略与平台化架构分析 三二 刘国华

    2008-04-30 14:19

    .12。企业动态建模(EMA)

    业务基础平台不仅对企业管理软件系统的体系结构产生了新的影响,它企业管理软件的开发方式有着革命性的影响,并导致一种革命性开发模式的诞生。这种基于业务基础平台的全新软件开发方式就是EMA(企业模型自动化)。

    EMA,本论文又称之为“企业动态建模”,是指使用企业模型(EM)和业务蓝图作为设计基础,以企业对象建模作为主要设计方式,使用模型运行平台来解释和执行企业业务,以模型自动运行为主要实现手段的一种开方方式。

    换言之,EMA是通过一系列科学的步骤和采用一定的方法,对企业运营管理中分析和简化,去掉对建模目的影响不大的细节现象,于纷繁复杂的具体事务中抽象出具备相应逻辑关系的动态业务模型并自动执行的过程。

    这一种方式发生的最重要改变就是通过业务基础平台直接执行企业业务模型,从而使软件开发的质量、成本、难度、效率和效益发生根本的变化。人们在进行应用系统的开发时,只需关注业务模型,无需关心技术平台与相关实现细节。从这个意义上讲,业务基础平台通过自己的支撑环境,将开发和运行管理软件系统所需要的底层技术进行了彻底的封装,而正是由于这种EMA开发方式促进了“技术无关性”这样的变化,使非专业IT背景的管理与业务人员有能力参与企业应用系统的开发、实施和调整。

    MDA(模型驱动架构)就是一种体现EMA思想的方式。根据OMG的定义,“MDA 是一种组织和管理被自动化工具支持的企业体系架构和用于定义模型和推动不同模型类型之间的转换的服务的方法。”

    MDA以“分离业务功能分析设计的制品与实现技术之间紧耦合关系”的目的,通过业务基础平台和企业建模工具得到了很好的实现。简单地讲,MDA 就是一种应用系统设计和实现的方法。即,使用统一的业务模型语言和标准针对真实商业世界的企业业务活动进行模型化构建,并通过建立贯通最表层业务领域到最底层技术平台之间各个环节之间相互映射关系与自动转换、自动生成代码的应用系统开发方式。MDA技术的最大特点就是把建模语言当编程语言来用,而不只是当作设计语言来用。用建模语言编程可以提高生产率,改善质量,并使软件产品生存期更长。这也是MDA不同于其他开发技术的独点之处。

    MDA 鼓励在软件的开发过程中有效的使用系统的模型,并且支持创建类似系统的最佳实践的重用。

    8d8eb3ad6ff6a01b4b36d6c3.jpg

    EMA开发方式引起的变化

    13.MDA的特点

    MDA基于业务和管理层面,以业务建模为基本手段,从而构架、开发和维护业务应用系统。它的最大特点是业务导向和技术无关性。业务导向是指MDA基于企业工程理论和企业参考模型,为软件设计和开发提供有效的导向和依据,帮助开发者全面、正确和迅速地实现管理者的管理和业务要求,大幅度地提升管理软件的开发、发布和维护的效率及质量,并在业务持续完善的过程中实现快速调整;技术无关性是指       MDA通过运行平台直接执行企业的业务,实现业务模型和系统实现技术的分离,使应用系统可以在各类主流和标准的基础平台上运行,并可以顺利地迁移到未来的实现技术上。

    MDA采用模型自动化执行作为软件的主要实现方式,企业管理软件中非常困难的实现部分和大量重复的业务逻辑已经无需编程(有研究表明:通常是企业通用逻辑中的70%-95%)。开发人员只需要聚焦于客户的业务逻辑,并可以使用多种程序语言来支持复杂业务逻辑。

    .14 企业动态建模的过程和方法

    利用MDA技术建模的过程涉及一系列的活动、方法和工具,用于建立描述企业不同侧面的模型。由于企业组织的复杂性,采用单一的模型无法完整地表达出一个企业多方面的特点,因而在企业动态建模中涉及到多个视角的模型,包括信息模型、功能模型、组织模型、过程模型、产品模型、资源模型等六个动态模型。

    “信息模型”是从信息的角度对企业进行描述,企业信息系统是信息模型的一个体现,用于存储/维护/处理与企业相关的所有信息,这些信息是联系各个功能元素的纽带。

    “功能模型”以功能活动为视角对整个企业进行描述,表现的是企业各功能模块之间的关系。

    “组织模型”描述组织结构树、团队、能力、角色和权限等。

    “过程模型”是通过定义组成活动及其活动之间的逻辑关系来描述工作流程的模型。

    “产品模型”描述产品类型和产品结构等信息,也包括产品和其它企业要素之间的关系。

    “资源模型”描述企业的各种资源实体、资源类型、资源池、资源分类树、资源活动矩阵等。

    一个良好运作的企业会随着自身的发展状况、外部的经济环境等因素,适时调整自己的管理模式、组织架构、业务流程等。

    企业动态建模的目的就应对企业根据其公司内部和外部环境的变化,以最快和最为合理的方式建立公司的组织模型、功能模型和过程模型,或对它们进行相应调整。帮助企业利用EMA方式和信息技术在无法预测和快速变化的市场竞争环境中求得生存和发展。

    15、新的开发模式化解软件业的主要矛盾

    因此,企业动态建模与新的软件体系架构是未来管理软件发展的核心。需要说明的是,业务基础平台与企业动态建模之间的关系,前者体现一种软件平台化架构的思想,是一个面向业务软件开发平台,而后者又是体现平台化架构思想的开发方式。这两者密切相关,或者说是一个问题的两个方面。分开来讲,业务基础平台是对新的软件体系结构的描述,而企业动态建模(EMA)针对开发方式的描述;合起来讲,因为软件体系结构从本质上就是模型的层次化,所以从更大的范围上讲,业务基础平台与企业动态建模所要表述的对象实质是一同样的东西。即一种能够把建模语言当编程语言,而不只是当作设计语言来使用并实现的新的开发模式,平台化指的是这种开发模式的结构。

    这种新的开发模式就是本论文要说明的中心议题。它具有不同于传统软件体系结构的平台化架构特征,也具有不同于传统开发方式的企业模型自动化特征。这两种特性其实是完全一致的,都是为了说明层级区分和分析的实质。因为“企业建模自动化”的所描述的本质仍然是如何通过“层级区分”的手段认识业务对象的规律(模型本质是一种二维的层级结构),并通过建立与更下一层级之间的逻辑映射关系得以实现。正如诺贝尔奖获得者赫伯特 A. 西蒙曾论述到:“要构造一门关于复杂系统的比较正规的理论,有一条路就是求助于层级理论……我们可以期望,在一个复杂性必然是从简单性进化而来的世界中,复杂系统是层级结构的”。

    因此,上述所谓新的开发模式同样是基于层级理论的深化。通过前面第二章与第三章的论述,我们了解这种新的开发模式相比于传统开发模式,在软件开发的时间、质量与成本上有革命性的突破,这使得实质性解决“不断增长、日益复杂多变的企业需求与落后的软件生产力之间的矛盾”成为可能,这种开发模式的大规模引入也将促使中国管理软件业进入“敏捷制造时代”成为可能。

    展开全文
  • P2P平台架构基于组件化架构设计

    千次阅读 2015-01-26 15:04:50
    P2P平台架构基于组件化架构设计

     

    の

     

    首先对上图做一个解释:

     

     

    在组件化架构设计中,需要遵循如下一些原则,这些原则有些属于传统分层架构设计中的原则:

    web层调用服务器代理进入逻辑层,逻辑层调用持久层,不应该出现逆向调用。

    业务组件间的调用,或说跨模块的调用需要通过服务组件暴露的服务接口进行,跨模块调用建议尽量是同层调用为主,即A模块的逻辑层只能调用B模块的逻辑层,而不能调用B模块的数据层。如果存在对B模块数据层的调用应该转化为B模块的业务服务后暴露到逻辑层。

    对于数据库也需要考虑隔离和解耦,为了达到这点,尽量减少对数据库存储过程和关联视图的使用,数据库基本不承载任何的业务规则和逻辑。对数据库中的公用基础数据剥离到公用业务组件中。

    对于系统管理,组织,权限,流程等转化为独立的平台层基础组件,为各个业务组件都需要依赖的组件。基础平台层能力如权限,安全,流程,日志等一定要抽取为公用的独立基础组件,业务组件不在承担这部分内容。

    不一定要引入复杂的ESB,但是系统内部基于IOC或OSGI模式来实现总线式集成和组件热插拔。

    各层提供的服务存在分级,数据层提供数据服务,逻辑层提供业务服务,UI层提供UI组件服务。平台层提供基础的技术服务和流程服务等。

    如果在DDD领域驱动架构设计下,数据层转化为基础架构层,业务层转化为领域层,整体思路仍然不变。而领域驱动设计中的应用层转化为组件集成和整合层。

    将跨系统的流程整合的概念引入到系统内部,各个业务组件即可以理解为独立的子系统,可以考虑这些子系统间如何通过服务组装和集成解决流程整合的问题,但是并不一定要用到BPEL。

    在这种原则下,业务组件之间本身也不存在交叉依赖,业务组件之间的依赖关系是一种多层传递关系,如A组件依赖B组件,B组件依赖C组件。对于整个组件依赖关系建议是一种倒金字塔的结构,这样可以实现最大化的组件独立部署。

     

    组件化技术架构

    前面已经对组件化技术架构做了一定的描述,在此再进行一些关键点的说明。首先对于企业级的应用系统开发建议还是采用标准的MVC模式。对于SSH框架在做一点说明是,对于ORM数据持久化,可以考虑使用Hibernate还是轻量灵活一点的iBatis来做。对于struts和spring没有过多的说明,struts考虑尽量多使用标签库或对标签库进行模板化定义。对于Web展现层框架,可以考虑使用jQuery来或其它来做。

    传统Web展现层,不管是jsp页面还是html较难以实现Web展现层的独立打包和组件化管理。这也是Web展现层引入sitemesh框架的一个重要意义。

    对于软总线这块,其实Spring和IOC机制已经实现了内部的一种软总线,软总线重点是负责组件,接口的注册,寻找,装载,调用等机制。在内部软总线这块,需要考虑是否引入OSGI软总线,类总线重点解决是内部类接口的反射调用问题,偏白盒层面。而OSGI软总线解决的是组件的独立建设,部署,管理和升级的问题,偏黑盒层面。OSGI软总线将更容易从物理逻辑层面来体现组件化架构和组件热插拔的概念。

     

     

    对于SOA架构,其核心还是在于组件化和服务化,然后才是服务管控和治理,基于服务化思想对传统软件开发生命周期过程的改进。SOA架构大家刚接触时候很容易将其理解为一种单纯的技术架构,或者更多的人仅仅是将SOA理解为service服务接口,这些都是对SOA方法论很大的误解。

    SOA技术架构不要考虑的太复杂,其本质仍然是组件化和领域服务设计思想下,可复用组件设计,服务接口的设计这些传统软件架构设计的内容。目的就是首先要解耦,其次才是解耦后的组件能够快速的装配。这些思想没有理解而一下进入到单个服务识别或接口的设计,那就很难从全局来掌握整个SOA架构的合理性。

     

     

    通信框架如下:

     

    展开全文
  • 一体信息处理平台总线架构设计与实现论文,所有权归论文作者所有。
  • 接口自动测试平台架构

    千次阅读 2018-11-14 04:17:28
    接口自动测试平台架构

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

    也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

                   

    接口自动化测试平台架构图:

    接口自动化测试平台架构图


    相关产品:

    http://gdtesting.com/product.php?id=40


    相关培训课程:

    http://gdtesting.com/product.php?id=85



               

    给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow

    这里写图片描述
    展开全文
  • 钢铁行业集团物料采购一体化平台架构及关键技术zip,钢铁行业集团物料采购一体化平台架构及关键技术
  • 数字平台架构与实现 王葱权 2016年8月26 日 2 协作 1 架构总览 3 5 总结 自助 4 自动 普元The Platform 全面支持微服务架构 移动/Web应用框架 流程应用框架 业务集成框架 数据应用框架 Web应用 移动应用 ...
  • UI测试接口测试自动测试平台架构设计,一个大型企业如何实现测试自动的首选框架
  • 基于组件化架构的思路,需要解决的是淡化业务系统的概念,强化业务组件的概念。同时对业务系统内部已有的业务功能模块进行解耦,业务组件通过注册到ESB 上的业务服务进行交付。而基于平台化的思路,则是原有业务系统...
  • 小米架构师详细介绍小米的广告交易平台架构的演进
  • 淘宝的电商系统是业内标杆、TOP1,十多年前浩浩荡荡做平台化、商品系统首当其冲。这样的经验足可以史为鉴。 1.现状背景 Detail当前的问题可参见《Detail2.0介绍》(2014年7月),本文不赘述。而Detail新平台的目标...
  • *Citrix VDI 跨平台桌面虚拟化架构的研究* 三大虚拟化技术: 1.VMware的VMware ESX 2.Citrix的XenServer 3.微软的Hyper-V的虚拟化技术 云计算虚拟化的解决方案: 数据中心建立一个服务器平台,江永华的工作...
  • 云计算平台设计虚拟数据中心参考架构 1.1.1虚拟数据中心蓝图 图-虚拟数据中心 如图图-虚拟数据中心所示在整个虚拟数据中心当中包括了虚拟化平台虚拟数据中心管理虚拟数据中心备份虚拟数据中心运维...
  • 该主题介绍交易平台化的背景,要解决的问题,解决方案上的思考以及整个架构的蓝图。后面会介绍一下在平台化建设过程中的一个技术实践,引入CPS理念,通过自动化分析及处理,提高系统的吞吐能力并降低请求的响应时间...
  • 大数据平台架构及与EDA云关系.hadoop数据库架构
  • 为什么需要架构可视 随着企业进行微服务架构改造,系统架构复杂度越来越高,架构变化日益频繁,微服务改造后的实际架构模型可能与预期已经产生了巨大差异,架构师或系统运维人员很难准确记忆所有资源实例的构成和...
  • 阿里巴巴集团千亿级别店铺系统架构平台化技术实践、系统架构、阿里系统架构
  • 最近在做基于K3Cloud的BI数据可视化平台架构设计项目,依据自己的摸索,加查阅资料,设计出如下架构模式:
  • SDCC2015-腾讯-徐汉彬-QQ会员活动运营平台架构设计演变:高效自动运营
  • 摘要: 该文章来自阿里巴巴技术协会(ATA)精选集 从Eclipse平台看交易平台化 淘宝网的交易平台伴随着互联网,网络购物的蓬勃发展,支持淘宝网成为全球最大的在线交易平台。各种业务方和他们新的交易类型对交易平台...
  • 2015中国软件开发者大会SDCC,技术分享PPT,《QQ会员活动运营平台架构设计演变——高效自动运营》PPT下载:http://vdisk.weibo.com/s/i-lxxvN3FLIL/1448794939
  • 平台整体架构 摘 要Openstack云平台的将划分为控制区域网络区域计算区域存储区域四个区域构建区域之间管理和存储分别通过千兆和万兆网络通过不同的VLAN划分各个网络保证业务隔离 关键词openstack分布式存储虚拟...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 14,057
精华内容 5,622
关键字:

平台化架构