CN102203767B - 重新配置模型 - Google Patents
重新配置模型 Download PDFInfo
- Publication number
- CN102203767B CN102203767B CN200880131798.6A CN200880131798A CN102203767B CN 102203767 B CN102203767 B CN 102203767B CN 200880131798 A CN200880131798 A CN 200880131798A CN 102203767 B CN102203767 B CN 102203767B
- Authority
- CN
- China
- Prior art keywords
- model
- service
- instruction
- service model
- chain
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/10—Requirements analysis; Specification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/35—Creation or generation of source code model driven
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Software Systems (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Game Theory and Decision Science (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- General Business, Economics & Management (AREA)
- Operations Research (AREA)
- Marketing (AREA)
- Educational Administration (AREA)
- Development Economics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Stored Programmes (AREA)
- Architecture (AREA)
Abstract
描述了重新配置模型[600]。访问[605]指令,其中所述指令包括利用一个或多个模型元素以重新配置模型。利用[610]改进链来访问所述模型的一部分,所述部分是非可变的且与所述指令关联,并且其中所述改进链跟踪所述模型的设计变化。定位[615]特定实例,该特定实例在所述改进链内最靠近所述部分,在其处所述一个或多个模型元素的包含改变所述模型的性能以反映所述包含。开始于所述特定实例处,利用所述一个或多个模型元素重新实例化[620]所述模型,从而使得能够依照所述指令来重新配置所述模型。
Description
技术领域
本发明的实施例总体上涉及管理模型领域。
背景技术
在过去的几年里,信息技术(IT)组织日益采用标准和最佳实践以确保高效的IT服务交付。在这种背景下,IT基础设施库(ITIL)被迅速地用作实际标准。ITIL定义了一组标准过程,其用于管理按用于服务交付(服务水平管理、能力管理、可用性管理、IT连续性管理和金融管理)和服务支持(发布管理、配置管理、事故管理、问题管理和变化管理)的过程组织的IT服务交付。诸如配置管理、事故管理和配置管理之类的服务支持过程是IT组织已经实施以使其服务达到其业务可接受的水平的更常见的过程中的一些过程。
ITIL过程的实施通过定义服务提供商与消费者之间的接口;通过明确IT组织结构、作用和责任;以及通过设计用于管理IT操作的内部过程而给IT组织带来显著的结果。IT服务管理(ITSM)是基于过程的实践,其旨在用于调整IT服务的交付以与企业的需要一致,同时强调顾客的利益。ITSM集中于交付和支持适合于组织的业务要求的IT服务,并且它通过利用促进业务有效性和效率的基于ITIL的最佳实践来实现这点。因此,ITSM的焦点在于定义和实施业务过程和其间的交互以便实现希望的结果。IT服务典型地围绕这些过程而构建。例如,在制造应用中,ITSM可以提供围绕按订单构建的制造过程情形而构建的服务。ITSM架构通常提供能够直接实例化的服务。集中于过程,呈现和封装组织的IT需求可能是ITSM环境下的挑战。
附图说明
图1A示出了依照一个实施例的用于IT服务的模型的示例性结构。
图1B描述了依照一个实施例的用于示例性二阶段模型实例化过程的状态转换图。
图2A示出了依照一个实施例的参照图1A描述的用于运行时环境的示例性架构。
图2B示出了依照一个实施例的实施参照图2A描述的示例性架构的示例性按订单配置(configure-to-order)系统的框图。
图3A、图3B和图3C以表格形式示出了依照一个实施例的由参照图2A和图2B描述的示例性架构支持的示例性服务操作列表。
图4为依照一个实施例的用于管理IT服务的示例性方法的流程图。
图5示出了依照一个实施例的示例性模型改进器的框图。
图6为依照一个实施例的用于重新配置模型的示例性方法的流程图。
图7为依照一个实施例的用于重新配置模型的示例性计算机系统的图。
图8为依照一个实施例的用于重新配置模型的示例性方法的流程图。
除非特别指出,在实施例的本说明中引用的附图不应当被理解为按比例绘制。
具体实施方式
现在,详细地参照本发明技术的实施例,这些实施例的示例在附图中示出。尽管将结合各种实施例描述本发明技术,但是应当理解的是,它们并不意在将本发明技术限于这些实施例。相反地,本发明技术的实施例意在覆盖可以包含在由所附权利要求书限定的各个实施例的精神和范围内的可替换方案、修改和等效物。
此外,在以下对于实施例的描述中,阐述了许多特定细节以便提供对于本发明的实施例的彻底理解。然而,本发明技术的实施例可以在没有这些特定细节的情况下实施。在其他情况下,没有详细地描述公知的方法、过程、组件和电路以便不致不必要地模糊本发明实施例的各个方面。
除非如从以下讨论显而易见的那样另有特别说明,应当理解,在对于实施例的整个当前描述中,利用诸如“访问”、“利用”、“定位”、“重新实例化”、“增加”、“替换”、“聚集”、“验证”、“比较”等等之类的措词的讨论涉及计算机系统或者类似电子计算设备的动作和过程。计算机系统或者类似电子计算设备将表示为计算机系统的寄存器和存储器中的物理(电子)量的数据操纵和变换成类似地表示为计算机系统存储器或寄存器或者其他这样的信息存储、传输或显示设备中的物理量的其他数据。本发明技术的实施例也非常适合使用其他的计算机系统,诸如例如光学和机械计算机。
根据应用要求,本文描述的各种模块、设备或组件的功能可以实现为硬件(包括分立组件、集成电路和片上系统“SoC”)、固件(包括专用集成电路和可编程芯片)和/或软件或者其组合。
以下的术语在理解实施例的描述时可能是有用的。应当理解的是,本文描述的术语用于说明的目的,并且不应当被视为是限制性的。
架构──被设计为提供一个或多个功能的蓝图或基本的基础设施。IT环境中使用的架构典型地可以包括硬件、软件和服务构建块,其被设计成彼此合作以便交付核心功能和可扩展功能。核心功能典型地为架构的一部分,例如操作系统,其不可以由用户修改。可扩展功能典型地为架构的一部分,其明确地被设计成作为实施过程的一部分而由用户定制和扩展。例如,面向服务的架构(SOA)为一种类型的架构,其用于解决降低成本和增强可重用性的结构化IT服务的需求。
模型──模型可以是系统、元素、解决方案或服务的特性和行为的表示。本文描述的模型捕获了特定IT系统、元素、解决方案或服务的设计。模型可以是IT系统、元素、解决方案或服务的结构、功能、非功能和运行时特性的声明规范。模型的实例化创建模型实例。与其中实例对象可以是插槽空间的面向对象(OO)的理论不同的是,模型实例可以是可能能够适应改进的设计空间。
IT制品──IT制品指的是IT系统的有形属性或性质。IT制品的示例可以包括硬件、软件、文档、源代码、测试装置、项目计划、教育和营销材料和其他类似物。IT制品可用于外部或内部使用。
关注点分离(separation of concerns)──用于单独地处理问题的不同议题,从而使得分开地专注于每个议题成为可能的技术。应用该原理可以通过将问题划分成不同的更小的议题而导致复杂度的降低;支持努力的划分和责任的分离;并且改善IT系统或制品的模块性。
服务──由提供商提供给消费者的效用或益处。提供商和消费者可以根据应用而不同并且可以包括企业、业务单位、业务过程、应用、第三方、个人和其他类似物。企业服务可以在进行企业业务的过程中提供。IT服务通常指的是使得企业能够通过向IT基础设施添加功能而提供效用或益处的任何应用。
服务模型──服务模型可以是SOA内的服务的表示。它定义了从一服务到其他服务可获得的外部可见的描述、行为、状态和操作。如这里所描述的,服务模型的实例化可以以两个阶段──绑定阶段和落实(grounding)阶段来进行。绑定阶段可以负责解析模型之间的依赖性。落实阶段可以负责例如通过创建与特定实例中定义的规范相对应的IT制品而使实例具体化。
元模型──元模型(或元模型)可以是定义模型本身的一组构建块、构造函数(construct)和规则的描述。
系统──协作以执行一个或多个预定义功能的一个或多个相互依赖的元素、组件、模块或设备。
配置──描述元素、组件、模块、设备和/或系统的设置并且指的是用于设置、定义或选择与元素、组件、模块、设备和/或系统相关联的硬件和/或软件性质、参数或属性的过程。
应当理解,所希望的是提供一种服务架构,所述服务架构将包括工具和技术,所述工具和技术用于在其整个生命周期期间最初设计、重用、维护和改进服务,从而确保IT服务和IT基础设施之间的一致性。也就是说,所希望的是提供将促进可靠且可缩放的服务的发展、捕获和后续的重用和改进的IT服务生命周期管理工具和技术。值得注意的是,也希望由服务管理的制品之间的关注点分离基于角色,例如服务的设计者或开发者和终端用户。因此,存在提供用于IT服务生命周期管理自动化中的改善的工具和技术的需要。
本文公开的系统和方法提供了能够设计和交付IT服务的示例性架构,与传统ITSM服务提供的按订单构建相比,所述IT服务作为按订单配置而输入。可以在建造者与建筑师之间进行类比,建造者仅能够构建可作为按订单构建的住宅而订购的标准模型住宅,建筑师则能够构建按照用户规范的并且可作为按订单配置的住宅而订购的定制住宅。可以对不包含在标准按订单构建的住宅中的按订单配置的住宅的新特征或功能编制目录(具有已知的价格和交付方式)并且将其作为可以与现有模型住宅组合的可重用特征或功能而提供。
信息技术(IT)服务的示例性模型
图1A示出了依照一个实施例的模型100的示例性结构。模型100捕获了特定IT元素或解决方案的设计,例如作为服务模型而捕获的IT服务。如前所述,服务模型可以是SOA内的服务的表示。它定义了从一服务到其他服务可获得的外部可见的描述、行为、状态和操作。模型100包括一个或多个服务模型110、112和114,其能够在运行时环境120中实例化以便产生对应的特定实例130、132和134以及IT基础设施150中生成的对应IT制品140、142、144和146。因此,模型的实例化导致虚拟运行时对象(例如特定实例)的产生并且也导致IT基础设施150中真实、有形IT制品的产生。IT基础设施150可以是数据中心,其包括提供IT功能的硬件、软件、通信、应用、服务和类似的其他组件。运行时环境120包括处理服务模型110、112和114的服务。
模型100可以是IT系统的结构、功能、非功能和运行时特性的声明规范。也就是说,模型100可以使用声明程序,其可以包括表达式、关系或事实陈述。声明程序不可以包括变量。与面向对象(OO)理论中的类的概念密切等价的是,模型100支持封装和隐藏实施细节的原理。像在OO中一样,模型100也支持递归组合。同样像在OO理论中一样,其中类的实例化产生对象,服务模型的实例化导致特定实例的创建。然而,与其中实例对象为插槽空间(slot space)的OO不同的是,所述特定实例,例如特定实例130、132和134中的每一个可以是可以适应改进的设计空间。
此外,如前所述,对应的IT制品变得与模型关联。在所绘出的实施例中,希望用于服务模型110、112和114的双实例化过程不仅创建代表服务模型的该特定实例的虚拟运行时对象,而且此外也产生真实、有形IT基础设施150中的IT组件或系统。特定实例(例如特定实例130、132和134之一)与IT制品(IT制品140、142、144和146之一)之间的关系因而是同态的。也就是说,一个代表另一个并且一个中的变化反映在另一个中。用于服务模型的二阶段实例化过程的附加说明参照图1B进行描述。
回到图1A,为了在服务模型的整个生命周期期间支持初始设计、重用、维护和改进,模型100支持以下示例性性质(除其他以外):改进、变异性、多态性、可组合性、导入、关联、构造器(constructor)、操作、部署、管程(monitor)、声明建模语言和最佳实践。递归可组合性使得设计者能够依赖和利用现有的设计以便定义或创建新的设计,所述新的设计进而可供其他人重用。改进允许实例化过程为多步的,从而允许在模型设计中的更大的灵活性。封装(也称为信息隐藏)(服务模型内部设计的可见性与其公众可获得的特性之间的清晰边界的使用)支持模型间的依赖性,其允许在无需模型用户的改变的情况下改变内部规范。
表征使得能够以与服务模型消费者直接相关的术语而不是以与实施者相关的术语表达服务模型的外在性质。变异使得能够捕获单个服务模型中的变异。服务模型可以在其特性的若干变异下进行定义以反映底层设计的特定变化。捕获单个服务模型中的这些变异避免了服务模型的组合扩张并且支持更好的服务模型重用。声明使得能够使用声明规范定义服务模型。服务模型按照其与底层设计的关联来定义,而不是定义为使用编程代码进行实例化的过程步骤。使用事实陈述来定义服务模型以减少由于解释引起的错误或者以避免语言的使用仅在预期的环境下的执行期间具有意义。
服务模型110、112和114可以通过元模型定义,从而使得服务模型110、112和114能够转化成其他的建模语言。因此,模型100使得能够容易地将用户定义的服务模型转化成其他形式(面向模型的和面向脚本的形式),从而增强其灵活性。此外,模型100提供利用其他建模语言代替一种建模语言以及多种结构建模语言共存的工具和技术。如这里所描述的,元模型是一种服务模型,其进一步解释或描述一组相关的服务模型。特别地,元模型包括如何构建域特定服务模型的(构造函数和规则的)显式描述。
模型100可以通过使用各种建模语言来规定,所述建模语言尤其包括统一建模语言(UML)、资源描述框架(RDF)、可扩展标记语言(XML)模式、XML元数据交换(XMI)和Java语言或者其组合。RDF可以包括诸如RDF模式之类的扩展以及诸如RDF本体Web语言(RDF/OWL)之类的语言。
可以是模型100的可扩展特征的示例的改进的概念允许从模型到模型实例的平滑多值转换。尽管经典的建模方法[OO,CIM,SML,UML]基于用于特定实例创建的单值插槽机制,但是改进可以基于实现用于服务模型元素的多插槽能力的链接列表方法。此外,类似于XML模式,可以支持替换。可改进的对象或者可改进的服务模型元素是扩展可改进的构造函数的任何对象/元素。可改进的构造函数携带元数据,其包括:1)允许改进:可以用来停止改进过程的布尔属性,2)时戳:记录发生改进的时间的时戳,以及3)标签:记录诸如改进目的或其他类似物之类的额外信息的标签。
图1B示出了依照一个实施例的二阶段服务模型实例化过程的示例性状态转换图。服务模型(例如服务模型110、112和114中的任何一个)的实例化可以以两个阶段进行:绑定阶段160和落实阶段170。在一个示例性的未绘出的实施例中,绑定阶段160可以在绑定阶段引擎中实施并且落实阶段170可以在落实阶段引擎中实施。在绑定阶段160中,可以解析(resolve)例如由服务模型形成的到其他服务模型的模型间依赖性。绑定阶段160的输出是绑定的模型实例162。特定实例130、132和134是绑定的模型实例162的示例。绑定阶段160可以被视为提供了特定实例之间的动态链接。到其他服务模型的依赖性可以是抽象的、细化的或者非常特定的,并且绑定阶段160通过重用现有的特定实例或者创建新的特定实例来解析这些类型的模型引用。绑定阶段本质上可以是递归的,因为从属服务模型的绑定本身可以触发其从属物的绑定。
在落实阶段170中,可以使绑定的模型实例162具体化以产生绑定和落实的(grounded)模型实例172。具体化包括创建与模型实例中定义的规范相对应的IT制品。这可以通过递归地遍历实例树并且在适当时创建IT基础设施中相对应的制品来实现。IT制品140、142、144和146是绑定和落实的模型实例172的示例。
用于运行时环境的示例性架构
图2A示出了依照一个实施例的用于参照图1A描述的运行时环境120的示例性架构200。架构200可以被部署以提供用于IT服务的电子商务。也就是说,架构200可以被部署为按订单配置的业务系统,其中将IT系统的一组预定义模型提供给顾客(可以包括内部或外部用户、客户和其他类似物)。图2B示出了依照一个实施例的实施参照图2A描述的架构200的示例性按订单配置系统202的框图。
参照图2A和图2B,所述预定义模型用于IT服务。应当理解的是,这些模型可以针对企业内的其他IT方面来表示。架构200包括在操作中用于产生模型110、112和114的设计服务210。设计服务210可以包括可供IT服务的设计者或设计师用以管理从初始设计到编目录到改进的模型生命周期的设计工具212和技术(例如声明编程)。在一个特定的实施例中,设计服务210可以在操作中用来捕获服务的声明规范以作为服务模型。
目录服务240可以在操作中用来存储多个服务供应项242。多个服务供应项242是编过目录且可由顾客订购的服务的模型。目录服务240与设计服务210通信以便访问新的且先前没有编目录的一个或多个服务模型。这些服务模型可以包括对多个服务供应项242中包含的现有模型进行的修改或改进。将设计服务210产生的一个或多个服务模型组合成多个服务供应项242以便提供可订购服务244的目录。
终端用户可以通过目录服务240和订单处理服务(OPS)250访问按订单配置系统202的特征以便浏览、搜索、选择、配置和订购要创建和订购的服务模型类型或者对现有模型所希望的改变类型。为了简化用户接口,目录服务240可以对提供给用户的模型信息进行过滤。也就是说,可以向用户隐藏可以提供给设计者或设计师的关于模型及其方法和性质的复杂细节,从而简化用户接口。
例如,具有设置为集群的若干处理器的刀片服务器模型的复杂细节可以作为正常的、高的和非停止可用性选择而呈现给用户。包含在提供给用户的信息中的是与订单关联的交付和价格。在一个特定的实施例中,可以能够从可订购服务244的目录中选择至少一个可订购服务246以进行订货。该选择可以通过用户和应用程序之一执行。在一个特定的实施例中,OPS 250可以包括一组用于执行终端用户订单的验证服务252、批准服务254和记账服务256的中间服务。
订单实例化服务260被耦合来从OPS 250接收对于所述至少一个可订购服务246的订单(其已经被验证和批准)。特别地,在OPS 250验证和批准订单后,可以触发请求解析服务(request resolution service)258以启动订单实例化服务260的进一步处理。订单实例化服务260可以在操作中用于实例化所述至少一个可订购服务246,从而产生实例化的订购的服务262。订单实例化服务260包括配置管理服务(CMS)220,其在操作中用于执行绑定阶段160并且产生实例化的订购的服务262。CMS 220包括用于实施二阶段实例化过程的绑定阶段160以及管理模型实例(例如模型实例130、132和134)的工具和技术。CMS 220产生与每个订单相对应的服务实例。
订单履行服务270可以在操作中用于依照实例化的订购的服务262履行订单。订单履行服务270可以包括用于在运行时环境120中对各种订单排序的请求变更(RFC)调度272和RFC执行服务274。订单履行服务270包括创建和配置服务(CCS)230,其在操作中用于执行实例化的订购的服务262的落实阶段170。CCS 230包括用于实施落实阶段170的工具和技术,所述实施包括创建IT基础设施150中的IT制品(例如制品140、142、144和146)。
可以通过执行器(actuator)服务280执行运行时环境120与IT基础设施150之间的连接。执行器服务280可以包括两层,通用执行器282和定制执行器284。在一个实施例中,可以包括超过一个通用执行器和超过一个定制执行器。通用执行器282可以在操作中用于向定制执行器284分派实例。例如,服务器模型可以被配置成定义与快速部署包(RDP)部署器有关的部署和供应信息。部署请求可以从CCS 230向通用执行器282中包含的通用安装程序触发,通用安装程序进而将搜索可以处理RDP部署信息的专用部署器。该技术实现运行时环境120与IT基础设施150之间的松散耦合并且提供高水平的定制。也就是说,架构200提供了促进可靠且可缩放的服务的开发、捕获以及后续的重用和改进的IT服务生命周期管理工具和技术。此外,架构200进一步基于角色,例如设计者或开发者(例如设计服务210的用户)以及服务的终端用户(例如目录服务240的用户),提供由服务所管理的制品之间的关注点分离。
在一个特定的实施例中,架构200是可缩放的,以部署于具有变化的范围和复杂度的应用中,这些应用从刀片服务器开始到大规模企业范围的IT服务。在一个示例性的未绘出的实施例中,智能货架(SmartRack)可以是架构200的应用的一个示例性名称,其组合了硬件、管理软件和应用以便向顾客提供对于IT概念化、交付和消费的独特的、系统化的体验。这可以通过与硬件一起运送嵌入的管理软件并且通过提供对可以部署的应用建模的系统化方式来完成。一旦智能货架上电,那么用户的主要联系点可以是目录服务。可以将服务供应项与它们的可用配置选项一起呈现给用户,所述选项中的每一个可以按照得到的服务的属性、成本和构建时间来表征。服务供应项可以是基于存储在设计服务中的一组富模型动态产生的视图,其使用一组最佳实践将服务的结构、功能、非功能和运行时特性编织在一起。
在典型的部署中,智能货架可以配置有预填充的基础模型。可以从惠普开发公司L.P.(HP)或者第三方购买和下载、或者由顾客自身开发其他模型。一旦选择和订购了适当的服务供应项,那么可以将其发送到管理服务,所述管理服务将使用一组安装程序服务对其进行处理和落实(具体化)。如果在模型中规定的话,那么一旦落实,(一个或多个)监控服务自动地监控模型的各个元素。当顾客仅希望一个货架的刀片时,智能货架可以以独立模式部署。此外,通过其内置的联合能力,可以将若干智能货架组合在一起,从而为顾客提供统一的管理体验。最后,通过其开放的SOA架构和服务代理技术,智能货架可以支持由外部服务代替其服务,从而允许智能货架重用企业的现有管理软件资产,并且允许组合超过一个智能货架,使得它们被通过一个用户接口进行管理(而不是每个是独立的)。
在一个示例性的未绘出的实施例中,架构200可以是扩大到整个企业的架构,其将服务作为公司(或企业)与IT之间的价值转移的关键经济原理。IT可以提供 “IT消费服务”以运行自身(改善内部生产力的工具和技术)。这些是像服务台技术、变化管理系统、刀片、设施服务、网络、雇员、法律服务那样的事情。这些服务可以看作是IT的加工,并且它们一起可以用来创建可交付的IT,“IT交付服务(IT-delivered service)”。IT交付服务可以通过IT创建以供公司使用。
示例可以包括消费者信用检查服务、雇员开支报告服务、新雇员设立服务、QA实验室租赁服务、专用网络和其他类似物。IT交付服务可以作为经济价值单位交付给公司。换言之,它们以使得行业(lines of business)看见其价值并且愿意且能够购买它们的方式被设计、构造和交付。事实上,IT交付服务在付费时刻变换成业务消费服务。该付费可以指示消费者感知的价值,所述消费者在这种情况下为行业。IT交付服务本身使IT成为服务提供商。
提供给公司的IT服务可以以名称(例如销售预测服务)开始、接着是说明(例如每天全球销售渠道报告和高级销售管理分析)来定义。每个服务可能需要与该服务的正在进行中的完整性关联的附加制品和描述符。这些可以包括使得IT和业务围绕性能和可用性相一致的服务水平协定(SLA)、支撑服务的配置项目的逻辑和物理视图、视图或相关服务、文档、连续性计划、知识条目、订户权益以及安全性和访问规定。IT服务可以通过定义服务线类别结构来定义。正如消费品提供商具有生产线类别一样,IT服务也是如此。它们可以包括雇员服务、应用服务、网络服务及其他。
类似于消费产品,IT服务可以利用每个服务的价格、价值和业务成果来建立。为了取得IT交付服务的资格,所希望的是存在关联的可测量的业务成果。可以借助于开发清楚说明每个服务的公共的(面向业务)和私人的(面向IT)表征这二者的一致方式来通过顾客目录服务使得IT服务可用。只要可能,都可以重用服务组件。用于服务的面向公共和私人的表征的一致设计标准可以直接影响在服务的整个生命周期中实例化、监控和管理服务所需的过程自动化努力。可以在所有级别维持服务可见性和完整性,包括管理利益相关方,比如服务台、问题经理、变更经理、应用拥有者、IT财务经理、业务关系经理能够以一致的方式察看和管理围绕服务定义的活动。当扩大到企业范围的架构时,IT提供的服务被定义为模型并且运行时环境的服务为IT消费服务的实施例。
架构200支持的示例性服务
图3A、图3B和图3C以表格形式示出了依照一个实施例的参照图2A和图2B描述的架构200所支持的示例性服务操作列表。依照SOA的原理,将架构200中的组件视为模型服务,即具有明确规定的接口和数据模型的独立功能单元。模型服务列表可以描述成执行通用服务(用于跨数据服务聚合数据)、数据服务(用于管理特定数据模型的生命周期)、计算服务(用于执行业务逻辑)或者其组合。激活服务302可以是负责分派服务激活请求给适当的定制激活器的通用执行器。批准服务304(计算服务)可以负责批准或不批准接收的订单。认证服务306(数据和计算服务)可以负责管理用户、角色和访问权以及同意授权。记账服务308(计算服务)可以负责为接收的订单建立索回(charge back)机制和适当的账单。
目录服务312(计算服务)可以负责产生服务供应项。配置管理服务314(数据服务)可以负责执行实例化过程的绑定阶段以及管理实例的生命周期。创建配置服务316(数据服务)可以负责执行实例化过程的落实阶段。设计服务318(数据服务)可以负责管理模型的生命周期。
发现服务322(计算服务)可以是负责触发基础设施中的资产的发现的通用执行器。为了履行其责任,发现服务322可以连接到定制发现服务。事故服务324(数据服务)可以负责管理事故或事件的生命周期。安装程序服务326可以是负责分派服务安装请求给适当的定制激活器的通用执行器。记录服务328(数据服务)可以负责日志消息的生命周期管理。
监控服务332可以是负责分派服务监控请求给适当的定制激活器的通用执行器。供应项可用性估计服务334(计算服务)可以负责产生服务供应项可用性和定价。订单处理服务336(数据服务)可以负责管理订单的生命周期。封装模型设计服务338(数据服务)可以负责封装模型的生命周期管理。
策略服务342(数据和计算服务)可以是通用服务并且负责分派策略评估请求给适当的特定策略服务。请求解析服务344(计算服务)可以负责启动服务模型的实例化过程。请求变更(RFC)执行服务346(数据服务)可以负责管理平台中的RFC的生命周期。RFC调度服务348(计算服务)可以负责找到用于平台中的RFC的最优调度。
会话服务352(数据服务)可以负责管理会话的生命周期。创建方法产生与新的唯一会话密钥关联的处于开放状态的新会话。对于会话状态的改变,例如关闭会话可以通过更新方法完成。验证服务354(计算服务)可以负责订单的验证。
变更目录服务356可以负责管理目录的变更,例如由于新特征、软件更新、硬件可用性等等而引起的变更。消费者管理服务358可以负责提供用于消费者的接口并且管理检索服务供应项、订购服务、检索变更、进行订单变更、建立登录等等。提供商管理服务360可以负责提供用于提供商的接口,从而允许管理用户和简档、设计、支持的设计、定价等等。在各个实施例中,消费者管理服务358和/或提供商管理服务360与会话服务352协调以提供用于用户的接口。
图4为依照一个实施例的用于管理IT服务的示例性方法的流程图。在一个特定的实施例中,该方法可以用来管理参照图1A和图1B所描述的模型100。在一个实施例中,方法100可以用来管理由可部署于电子商务环境中的架构200提供的IT服务。现在参照图4的410,将服务的声明规范捕获为服务模型。现在参照图4的420,可以将所述服务模型组合成多个服务供应项以提供可订购服务的目录。在步骤430处,可以接收针对可从可订购服务目录中选择的至少一个可订购服务的订单。现在参照图4的440,可以实例化所述至少一个可订购服务,从而产生实例化的订购的服务。现在参照图4的450,可以依照实例化的定购的服务来履行订单。
应当理解的是,可以添加、省略、组合、改变或者以不同的次序执行上面描述的各个步骤。例如,可以添加用于改进服务模型的方法。现在参照图4的460,可以改进服务模型,该改进包括从服务模型到改进的服务模型的多步骤转换。
示例性服务模型改进器
参照图5,依照本发明的实施例涉及用于重新配置服务模型的示例性系统。在一个实施例中,这里描述的服务模型改进器(SMR 500)实现了依照消费者的指令、系统操作员的指令和/或预编程的指令对服务模型及其部分的正在进行中的重新配置。
一般说来,SMR 500实现了通过利用改进链将服务模型分解成特定实例并且然后战略性地对兼容的特定实例应用操作(例如扩增、替换和子设计排除)来重新配置服务模型。SMR 500然后利用改进链作为向导来重建服务模型,从而合并任何修改。因此,本发明的实施例实现了重新配置的服务模型的连续可逆的产生和跟踪。
更特别地,在一个实施例中,服务模型可以进一步包括多个分层服务模型。例如,服务模型可以包括金、银和铜服务模型。这些服务模型中的每一个具有预定的约束。例如,金服务模型约束允许一个负载平衡器以及五个和十个之间的web服务器节点,而银服务模型约束允许一个负载平衡器以及最大四个web服务器节点。铜服务模型约束仅仅允许最大三个web服务器节点。这些服务模型可以依照用户的指令和置于其上的任何约束进行重新配置。
在一个实施例中,用户可以向SMR 500提供用于将服务模型元素(例如三个web服务器节点)添加到可能已经具有七个web服务器节点的金服务模型的指令。SMR 500然后利用改进链来访问金服务模型的非可变部分,其中该非可变部分仅仅包含定义金服务模型的原始约束的服务模型元素,所述约束即一个负载平衡器以及五个和十个之间的web服务器节点。措词“非可变”指的是固定数量的项目。然而,该固定数量的项目本身可以包含可变的部分。因此,在非可变部分内,存在本发明实施例的递归元素。在一个实施例中,改进链用来跟踪与金服务模型关联的所有设计变化。
接下来,SMR 500确定沿着改进链的称为特定实例的位置,该位置最靠近非可变部分,在该位置处所述三个web服务器节点的包含改变金服务模型的性能以反映所希望的三个适当运转的web服务器节点的包含。SMR 500然后开始通过首先在定位的特定实例处添加所述三个web服务器节点而重建金服务模型。使用改进链作为向导,SMR 500继续依照用户的指令重建金服务模型的其余部分以获得重新配置的服务模型。
具有重要意义的是,SMR 500依赖于实现服务模型的重新配置的至少以下三个操作:扩增、替换和子设计排除。服务模型的扩增使得能够将服务模型元素添加到服务模型。替换指的是利用组成服务模型的服务模型元素替换为被请求的服务模型元素。子设计排除利用服务模型元素以禁用特定的服务模型。
因此,在本发明的实施例中,SMR 500利用扩增、替换和子设计排除的原理操作以实现服务模型的正在进行的可逆的和可追踪的重新配置。在更大的规模上,SMR 500实现了多个重新配置的服务模型的集成和聚合。
以下讨论将以描述本文的依照本发明技术的组件结构的实施例开始。然后,该讨论之后接着是描述本文的组件的操作和功能的实施例。
模型改进器的示例性架构
图5示出了依照本发明实施例的示例性服务模型改进器(SMR)500的框图。尽管本发明技术的实施例被论述为采取应用到“服务”的模型改进器的形式,但是应当理解的是,这里描述的模型改进器可以更一般地应用到任何类型的模型改进器,不管是声明的还是其他方式的。
SMR 500包括指令访问器505,服务模型访问器525,特定实例定位器535,服务模型产生器545,包含分别用于服务模型530a、530b和530c的改进链540a、540b和540c的改进链跟踪器555,扩增模块560,替换模块565以及子设计排除模块567。SMR 500与服务模型520耦合。
在一个实施例中,服务模型520包括分层和/或非分层的一个或多个服务模型。例如,服务模型520可以是集成了服务模型530a、服务模型530b和服务模型530c的三层服务模型。值得注意的是,SMR 500非常适合于组成服务模型520的任意数量的服务模型。尽管这里对服务模型的引用涉及服务模型530a、530b和/或530c,但是应当理解的是,在另一个实施例中,对服务模型的引用可以涉及包括服务模型530a、530b和/或530c的服务模型520。
此外,每个服务模型530a、530b和530c包括服务模型元素。例如,服务模型530a包括服务模型元素570。值得注意的是,SMR 500非常适合于组成每个服务模型530a、530b和/或530c的任意数量的服务模型元素。
服务模型元素是组成服务模型的元素,包含或排除服务模型元素影响服务模型的功能,并且服务模型元素可以是但不限于属性、变量、导入以及关联的基数。例如,服务模型530a的服务模型元素570包括应用服务器575a、web服务器575b、数据库服务器575c、“X”web服务器575d、“Y”web服务器575e、操作系统575f以及硬件部件“A”575g。
在一个实施例中,每个服务模型包括非可变部分。该非可变部分包括最初施加到服务模型上的约束,这些约束应用于可变和非可变部分二者。这些约束可以通过但不限于用户、系统操作员和/或SMR 500内已经预编程的指令施加。例如,服务模型530a可以包括非可变部分533。非可变部分533包括最初施加到服务模型530a上的约束,这些约束应用于可变和非可变部分二者。在该示例中,组成非可变部分533的这些初始约束是应用服务器575a、web服务器575b和数据库服务器575c。
服务模型530a改进链540a包括非可变部分533、第一变化580a、第二变化580b、第三变化580c和第四变化580d。尽管非可变部分533包括应用服务器575a、web服务器575b和数据库服务器575c,但是第一变化580a包括与非可变部分533耦合的“X”web服务器575d。每个变化与其之前出现的所有变化以及相同水平下做出的所有变化相组合,定义了特定实例。因此,第一变化580a和非可变部分533组成特定实例585a。
在另一个示例中,第二变化580b包括与非可变部分533耦合的“Y”web服务器575e。因此,第一变化580a、第二变化580b和非可变部分533组成特定实例585a。在另一个实施例中,包括与非可变部分533耦合的操作系统575f的第三变化580c定义了特定实例585c。在另一个实施例中,包括与操作系统575f和非可变部分533耦合的硬件部件“A”575g的第四变化580d定义了特定实例585d。
例如,“X”web服务器575d和制造商施加的初始约束,非可变部分533的耦合依照服务模型530a的改进链创建了特定实例585a。换言之,特定实例585a包括非可变部分533(应用服务器575a、web服务器575b和数据库服务器575c)与第一变化580a(添加“X”web服务器575d)的组合。
值得注意的是,SMR 500可以访问和利用与由不同于SMR 500且在SMR 500外部的系统维护的服务模型关联的改进链。
在一个实施例中,SMR 500可以接收来自但不限于用户、操作员的指令510a或者基于内部的指令510b。指令510a和510b分别包含一个或多个服务模型元素515a和515b。
服务模型改进器的示例性操作
更一般地,在依照本发明的实施例中,SMR 500用来依照来自用户、程序员的指令和/或基于内部的指令来重新配置服务模型。这些指令可以请求改变服务模型以计及更多的服务模型元素、将现有的服务模型元素替换为希望的服务模型元素或者排除服务模型元素。
更特别地并且参照图5,在一个实施例中,指令访问器505访问指令510a,其中指令510a包括利用一个或多个服务模型元素515a来重新配置服务模型520。
在一个实施例中,服务模型访问器525利用服务模型530a改进链540a来访问与指令510a关联的服务模型530a的非可变部分533,并且其中服务模型530a改进链540a跟踪服务模型530a的设计变化。例如,SMR 500访问请求对服务模型520的金服务模型530a扩增的指令510a。SMR 500然后访问与指令510a关联的服务模型,即金服务模型530a,以便满足该指令。
SMR 500然后利用服务模型530a改进链540a以定位金服务模型530a的非可变部分533。SMR 500从最近的变化,第四变化580d向后跟踪到仅包含初始约束(服务器575a、web服务器575b和数据库服务器575c)的服务模型530a改进链540a的部分。
在一个实施例中,特定实例定位器535定位服务模型530a改进链540a内最靠近非可变部分533的特定实例585a,在其处一个或多个服务模型元素515a的包含改变服务模型530a的性能以反映该包含。例如,特定实例定位器535定位最靠近非可变部分533的特定实例,在其处用户请求的 “X”web服务器575d的添加改变服务模型530a的性能以反映适当运转的“X”web服务器575d的存在。
值得注意的是,导入的服务模型元素可以通过导入的服务模型元素类型的任何子类型来重新配置。例如,导入的web服务器575b可以通过导入的web服务器子类型“X”web服务器和“Y”web服务器来重新配置。
在一个实施例中,开始于特定实例585b,服务模型产生器545利用指示的一个或多个服务模型元素515a重新实例化服务模型530a,从而使得能够依照指令510a产生重新配置的服务模型550。例如,开始于特定实例585b,SMR 500重新实例化服务模型530a以包含“X”web服务器。SMR 500通过利用服务模型530a改进链作为向导来战略性地重构被解构的服务模型530a而继续重新实例化服务模型530a。
如这里所描述的,改进链跟踪器555跟踪服务模型530a的设计变化。
在一个实施例中,扩增模块560通过向服务模型530a添加组成指令510a的一个或多个服务模型元素515a而增加组成服务模型530a的所有服务模型元素570的总和。
在另一个实施例中,替换模块565利用服务模型530a的一个或多个服务模型元素570替换为组成指令510a的一个或多个服务模型元素515a。例如,可以将服务模型530a的改进链表示为具有范围为[1,4]的依赖性的抽象类B。[1,4]具有改进{3,4}。{3,4}具有3个web服务器节点的改进。服务模型530a被发现是成功的,并且希望向上扩展服务模型530a,使得更多的人能够使用它。
因此,在一个实施例中,系统操作员可以利用4 个web服务器节点的值替换3 个web服务器节点的值。这是有效的替换,因为它验证了由枚举{3,4}约束的值空间。作为替换的结果,服务模型530a的改进链表示为具有范围为[1,4]的改进的抽象类B。[1,4]具有{3,4}的改进。{3,4}具有4个web服务器节点的改进。
如果发现4个web服务器节点不足以适应这么多的使用服务模型530a的人,那么SMR 500可以返回到初始约束(非可变部分)之后出现的第一依赖性并且将范围[1,4]增加到范围[1,10]。服务模型530a的新的改进链表示为具有范围为[1,10]的依赖性的抽象类B。在不做进一步的修改的情况下,改进链将表明[1,10]具有{3,4}的改进并且{3,4}具有4个web服务器节点的改进。值得注意的是,该改进链使得约束的传播有效,因为4由枚举{3,4}约束。
现在,为了增加对于用户可用的web服务器节点的数量,服务模型产生器545重新实例化服务模型,其开始于改进链的特定实例[1,10]处。重新实例化之后,改进链被表示为具有范围为[1,10]的依赖性的抽象类B。依照将web服务器节点的数量向上修改为8的指令,[1,10]具有8个web服务器节点的改进。
在一个实施例中,子设计排除模块567利用一个或多个条件语句排除组成服务模型530a的一个或多个服务模型元素570的群组中的服务模型元素。在一个实施例中,条件语句可以是基数表达式(cardinality expression)。在另一个实施例中,条件语句可以是变异性表达式。
例如,“关联端(AssociationEnd)”中的“端”的基数属性可以表示为在特定条件下解为零的条件语句。换言之,与分配的零关联的目标项不是想要的。例如,如果不想要的目标项是聚合的服务模型520的铜服务,那么可以将零分配给引用铜服务模型部分的关联中的基数。因此,当选择金变异性时,禁用铜服务部分。
在一个实施例中,当服务模型530a内的一个或多个服务模型元素未满足预编程的性能阈值时,可以触发SMR 500以回复到非可变部分533以便准备重新实例化。在另一个实施例中,可以通过用于重新配置的手工触发指令触发SMR 500以回复到非可变部分533。
用于重新配置的手工触发指令可以在一个情况中通过但不限于用户执行,并且在另一个情况中通过操作员执行。例如,用户可以决定对服务降级。也许用户不认为该服务值所要求的价格。用户从金服务模型降级到银或铜服务模型。如所示,用户可以通过SMR 500终止服务。
在另一个实施例中,系统操作员可能由于机器维护问题而需要将运行的服务从一个机器移到另一个机器。结果,系统操作员指示SMR 500重新配置服务模型。
图6为重新配置服务模型520的示例性方法600的流程图。现在,参照图6的605,指令510a被访问,其中指令510a包括利用一个或多个服务模型元素515a以重新配置服务模型530a。
参照图6的610,利用改进链来访问服务模型530a的一部分,该部分为非可变的533且与指令510a关联,并且其中改进链跟踪服务模型530a的设计变化。
参照图6的615,定位改进链内最靠近该部分的特定实例,在该特定实例处所述一个或多个服务模型元素515a的包含改变服务模型530a的性能以反映该包含。
参照图6的620,开始于特定实例处,利用一个或多个服务模型元素515a重新实例化部分530a,从而使得能够依照指令510a产生重新配置的服务模型550。
在一个实施例中,重新实例化620部分530a包括通过向服务模型530a添加组成指令510a的一个或多个服务模型元素515a而增加组成服务模型530a的所有服务模型元素570的总和。在一个实施例中,重新实例化620部分530a包括利用组成服务模型530a的一个或多个服务模型元素570替换组成指令510a的一个或多个服务模型元素515a。
在一个实施例中,重新实例化620服务模型530a包括利用条件语句作为一个或多个服务模型元素515a。在一个实施例中,利用该条件语句以排除服务模型530a的一个或多个服务模型元素570的群组中的服务模型元素572c。在另一个实施例中,所利用的条件语句为一个或多个基数表达式。
在一个实施例中,方法600进一步包括聚合多个重新配置的服务模型550。在一个实施例中,方法600进一步包括检验针对部分530a的一个或多个初始约束被满足。
示例性计算机系统环境
现在,参照图7,用于重新配置服务模型的本发明实施例的部分由例如驻留在计算机系统的计算机可用介质中的计算机可读和计算机可执行指令组成。也就是说,图7示出了可以用来实施下面讨论的本发明实施例的计算机类型的一个示例。
图7示出了依照本发明实施例使用的示例性计算机系统700。应当理解的是,图7的系统700仅仅是示例,并且本发明实施例可以工作于大量不同的计算机系统之上或之内,包括通用联网计算机系统、嵌入式计算机系统、路由器、交换机、服务器设备、用户设备、各种中间设备/制品、独立计算机系统等等。如图7中所示,图7的计算机系统700非常适于具有外围计算机可读介质702,诸如例如与其耦合的软盘、紧致盘等等。
图7的系统700包括用于传送信息的地址/数据总线704以及耦合到总线704用于处理信息和指令的处理器706A。如图7所示,系统700也非常适合于其中存在多个处理器706A、706B和706C的多处理器环境。相反地,系统700也非常适合具有单个处理器,诸如例如处理器706A。处理器706A、706B和706C可以是各种类型的微处理器中的任何一种。系统700也包括数据存储特征,例如计算机可用易失性存储器708,如随机存取存储器(RAM),其耦合到总线704用于存储用于处理器706A、706B和706C的信息和指令。
系统700也包括计算机可用非易失性存储器710,例如只读存储器(ROM),其耦合到总线704用于存储用于处理器706A、706B和706C的静态信息和指令。还存在于系统700中的是数据存储单元712(例如磁盘或光盘和盘驱动器),其耦合到总线704用于存储信息和指令。系统700也包括包含字母数字键和功能键的可选的字母数字输入设备714,其耦合到总线704用于将信息和命令选择传送到处理器706A或处理器706A、706B和706C。系统700也包括可选的光标控制设备716,其耦合到总线704用于将用户输入信息和命令选择传送到处理器706A或处理器706A、706B和706C。本发明实施例的系统700也包括可选的显示设备718,其耦合到总线704用于显示信息。
仍然参照图7,图7的可选的显示设备718可以是液晶设备、阴极射线管、等离子体显示设备或者其他适合于创建用户可识别的图形图像和字母数字字符的显示设备。可选的光标控制设备716允许计算机用户在显示设备718的显示屏幕上动态地用信号表示可见符号(光标)的移动。光标控制设备716的许多实现方式在本领域中是已知的,包括跟踪球、鼠标、触摸垫、操纵杆或者能够用信号表示给定移位方向或移位方式的移动的字母数字输入设备714上的特殊键。可替换地,应当理解的是,可以使用特殊键和键序列命令通过来自字母数字输入设备714的输入来引导和/或激活光标。
系统700也非常适合于使得通过其他方式,诸如例如通过语音命令来引导光标。系统700也包括用于将系统700与外部实体耦合的I/O设备720。
仍然参照图7,对于系统700绘出了各个其他组件。特别地,当存在时,操作系统722、应用724、模块726和数据728被示为典型地驻留在计算机可用易失性存储器708(例如随机存取存储器(RAM))和数据存储单元712之一或其某种组合中。然而,应当理解的是,在一些实施例中,操作系统722可以存储在其他位置中,例如存储在网络上或闪速驱动器上;并且此外,可以经由例如到互联网的耦合从远程位置访问操作系统722。在一个实施例中,本发明例如作为应用724或模块726存储在RAM 708内的存储位置中以及数据存储单元712内的存储区中。
计算系统700仅仅是适当的计算环境的一个示例,并且并非意在暗示对于本发明的使用或功能的范围的任何限制。也不应当将计算环境700解释为具有与该示例性计算系统700中示出的组件中的任何一个或组合有关的任何依赖性或要求。
本发明的实施例可以在由计算机执行的诸如程序模块之类的计算机可执行指令的一般背景中加以描述。通常,程序模块包括执行特定任务或实施特定抽象数据类型的例程、程序、对象、组件、数据结构等等。本发明的实施例也可以在分布式计算环境下实施,其中任务由通过通信网络链接的远程处理设备执行。在分布式计算环境中,程序模块可以位于包括记忆存储设备的本地和远程计算机存储介质这二者中。
图8为用于重新配置服务模型530a的示例性方法800的流程图。在一个实施例中,在计算机可读和计算机可执行指令的控制下由处理器和电气组件执行方法800。计算机可读和计算机可执行指令例如驻留在诸如计算机可用易失性和非易失性存储器之类的数据存储特征中。然而,计算机可读和计算机可执行指令可以驻留在任何类型的计算机可读介质中。在一个实施例中,方法800由图5的服务模型改进器500执行。
现在参照图8的805,访问作为指令510a的目标的服务模型530a的非可变部分530a。指令510a包括利用一个或多个服务模型元素515a来改变服务模型530a。
参照图8的810,在一个实施例中,访问与非可变部分533关联的改进链。服务模型530a改进链540a跟踪服务模型530a的设计变化。
参照图8的815,在一个实施例中,比较服务模型530a改进链540a和指令515a并且定位特定实例580b,在该特定实例处一个或多个服务模型元素515a的包含改变了特定实例580b的性能以反映该包含。
参照图8的820,在一个实施例中,基于815处的比较和定位,产生550重新实例化的服务模型以便与指令515a相关。
因此,本发明的实施例使得能够产生可以是正在进行中的、可逆的和可追踪的重新配置的服务模型。此外,在更大的规模上,在一个实施例中,SMR 500使得能够集成和聚合多个重新配置的服务模型。
出于说明和描述的目的给出了示例性实施例的前面的描述。它们并不意在是穷尽的或者将教导限于所公开的精确形式。尽管以结构特征和/或方法动作特有的语言描述了本发明主题,但是应当理解的是,所附权利要求书中限定的主题不必限于上面描述的特定特征或动作。而是,上面描述的特定特征和动作作为实施权利要求的示例性形式而被公开。
Claims (16)
1.一种计算机实施的用于重新配置模型的方法,所述方法[600]包括:
访问[605]指令,其中所述指令包括利用一个或多个模型元素重新配置模型;
利用[610]改进链来访问所述模型的一部分,所述模型的所述部分是非可变的且与所述指令关联,并且其中所述改进链跟踪所述模型的设计变化,以及所述非可变部分仅仅包括定义所述模型的原始约束的模型元素;
定位[615]所述改进链内最靠近所述部分的特定实例,在其处所述一个或多个模型元素的包含改变所述模型的性能以反映所述包含,其中所述特定实例是通过利用所述改进链来分解所述模型而获得的;以及
开始于所述特定实例处,利用所述一个或多个模型元素来重新实例化[620]所述模型,从而使得能够依照所述指令重新配置所述模型。
2.权利要求1的方法[600],其中所述重新实例化[620]所述模型包括:
通过向所述模型添加所述指令所利用的所述一个或多个模型元素来增加组成所述模型的所有模型元素的总和。
3.权利要求1的方法[600],其中所述重新实例化[620]所述模型包括:
将组成所述模型的一个或多个模型元素替换为所述指令所利用的所述一个或多个模型元素。
4.权利要求1的方法[600],其中所述重新实例化[620]所述模型包括:
利用条件语句作为所述一个或多个模型元素。
5.权利要求4的方法[600],进一步包括:
利用所述条件语句以排除所述模型的一个或多个模型元素的群组中的模型元素。
6.权利要求5的方法[600],其中所述条件语句为一个或多个基数表达式。
7.权利要求1的方法[600],进一步包括:
聚合多个重新配置的模型。
8.权利要求1的方法[600],进一步包括:
检验针对所述模型的一个或多个原始约束被满足。
9.一种计算机实施的用于重新配置模型[530a]的设备[500],所述设备[500]包括:
指令访问模块[505],用于访问指令[510a],其中所述指令[510a]包括利用一个或多个模型元素[515a]重新配置所述模型[530a];
模型访问模块[525],用于利用改进链[540a]来访问非可变且与所述指令[510a]关联的所述模型[530a]的部分[533],并且其中所述改进链[540a]跟踪所述模型[530a]的设计变化,以及所述非可变部分仅仅包括定义所述模型的原始约束的模型元素;
特定实例定位模块[535],用于定位所述改进链[540a]内最靠近所述部分[533]的特定实例[585a],在其处所述一个或多个模型元素[515a]的包含改变所述模型[530a]的性能以反映所述包含,其中所述特定实例[585a]是通过利用所述改进链[540a]来分解所述模型[530a]而获得的;以及
模型产生模块[545],用于开始于所述特定实例[585a],利用所述一个或多个模型元素[515a]来重新实例化所述模型[500],从而使得能够依照所述指令[510a]来重新配置所述模型[520]。
10.权利要求9的设备[500],进一步包括:
改进链跟踪模块[555],用于利用所述改进链[540a]来跟踪所述模型[530a]的设计变化。
11.权利要求9的设备[500],进一步包括:
扩增模块[560],用于通过向所述模型[530a]添加所述指令[510a]所利用的所述一个或多个模型元素[570]来增加组成所述模型[530a]的所有模型元素[570]的总和。
12.权利要求9的设备[500],进一步包括:
替换模块[565],用于将组成所述模型[530a]的一个或多个模型元素[570]替换为所述指令[510a]所利用的所述一个或多个模型元素[570]。
13.权利要求9的设备[500],进一步包括:
子设计排除模块[567],用于利用一个或多个条件语句以排除组成所述模型[530a]的一个或多个模型元素[570]的群组中的模型元素。
14.权利要求13的设备[500],其中所述条件语句为一个或多个基数表达式。
15.权利要求9的设备[500],进一步包括:
聚合模块,用于聚合多个重新配置的模型。
16.权利要求9的设备[500],进一步包括:
检验模块,用于检验针对所述模型的一个或多个原始约束被满足。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2008/081760 WO2010050951A1 (en) | 2008-10-30 | 2008-10-30 | Reconfiguring a model |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102203767A CN102203767A (zh) | 2011-09-28 |
CN102203767B true CN102203767B (zh) | 2015-07-01 |
Family
ID=42129108
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200880131798.6A Expired - Fee Related CN102203767B (zh) | 2008-10-30 | 2008-10-30 | 重新配置模型 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8930885B2 (zh) |
EP (1) | EP2342657A4 (zh) |
CN (1) | CN102203767B (zh) |
WO (1) | WO2010050951A1 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8296198B2 (en) * | 2007-06-28 | 2012-10-23 | Sap Ag | Method and system for distribution of information |
US8930887B2 (en) * | 2009-08-03 | 2015-01-06 | Hewlett-Packard Development Company, L.P. | Linking model instances to packages |
US8650180B2 (en) * | 2011-06-20 | 2014-02-11 | Microsoft Corporation | Efficient optimization over uncertain data |
CN103377405A (zh) | 2012-04-24 | 2013-10-30 | 国际商业机器公司 | 部署和修改面向服务架构部署环境模型的方法和系统 |
US9858093B2 (en) * | 2013-03-08 | 2018-01-02 | Oracle International Corporation | Model for configuration independent process templates and business catalog |
CN103500094A (zh) * | 2013-09-25 | 2014-01-08 | 北京大学 | 一种支持用户可视化自定义的服务平台监控模型 |
US9720652B2 (en) * | 2015-08-06 | 2017-08-01 | Symphore, LLC | Generating a software complex using superordinate design input |
US10922089B2 (en) * | 2016-09-22 | 2021-02-16 | Groupon, Inc. | Mobile service applications |
US10394699B1 (en) * | 2017-09-11 | 2019-08-27 | Cadence Design Systems, Inc. | Method and system for reusing a refinement file in coverage grading |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1429362A (zh) * | 2000-03-17 | 2003-07-09 | 恩培勒蒂孚股份有限公司 | 通信服务供应方法和设备以及用于开发供应模块的对象编程语言 |
CN101286240A (zh) * | 2008-04-22 | 2008-10-15 | 北京航空航天大学 | 一种可快速配置和实时渲染的安防三维电子地图 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8392877B1 (en) * | 2004-02-12 | 2013-03-05 | Raju Chiluvuri | System and method of application development using replaceable self-contained components (RSCCS) |
US7552208B2 (en) * | 2005-01-18 | 2009-06-23 | Microsoft Corporation | Methods for managing capacity |
US8126768B2 (en) * | 2005-09-13 | 2012-02-28 | Computer Associates Think, Inc. | Application change request to deployment maturity model |
US7921024B2 (en) * | 2006-11-29 | 2011-04-05 | International Business Machines Corporation | IT service management technology enablement |
-
2008
- 2008-10-30 EP EP08877869.1A patent/EP2342657A4/en not_active Withdrawn
- 2008-10-30 CN CN200880131798.6A patent/CN102203767B/zh not_active Expired - Fee Related
- 2008-10-30 WO PCT/US2008/081760 patent/WO2010050951A1/en active Application Filing
- 2008-10-30 US US13/123,657 patent/US8930885B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1429362A (zh) * | 2000-03-17 | 2003-07-09 | 恩培勒蒂孚股份有限公司 | 通信服务供应方法和设备以及用于开发供应模块的对象编程语言 |
CN101286240A (zh) * | 2008-04-22 | 2008-10-15 | 北京航空航天大学 | 一种可快速配置和实时渲染的安防三维电子地图 |
Also Published As
Publication number | Publication date |
---|---|
WO2010050951A1 (en) | 2010-05-06 |
US20110196659A1 (en) | 2011-08-11 |
EP2342657A1 (en) | 2011-07-13 |
EP2342657A4 (en) | 2015-06-24 |
US8930885B2 (en) | 2015-01-06 |
CN102203767A (zh) | 2011-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102203767B (zh) | 重新配置模型 | |
Li et al. | Blockchain-based digital twin sharing platform for reconfigurable socialized manufacturing resource integration | |
Martínez et al. | A big data-centric architecture metamodel for Industry 4.0 | |
Bergenti et al. | Interactive workflows with WADE | |
Al-Shara et al. | Come4acloud: An end-to-end framework for autonomic cloud systems | |
US9286060B2 (en) | Lifecycle management system with conditional approvals and corresponding method | |
US20100036751A1 (en) | Architecture For Instantiating Information Technology Services | |
US9836282B2 (en) | Separation of concerns between information technology services models | |
US8392566B1 (en) | Computer executable services | |
Qian | Software architecture and design illuminated | |
Campagna et al. | Product and production process modeling and configuration | |
Dukaric et al. | BPMN extensions for automating cloud environments using a two-layer orchestration approach | |
Bhattacharjee et al. | A model-driven approach to automate the deployment and management of cloud services | |
Bernardi et al. | M3D: a tool for the model driven development of web applications | |
Li et al. | Semantic-based transaction model for web service | |
Taher et al. | On engineering cloud applications-state of the art, shortcomings analysis, and approach | |
Basile et al. | Modelling and analysis with featured modal contract automata | |
Chen et al. | Towards interface-driven design of evolving component-based architectures | |
Zhou et al. | Modeling, design, and implementation of a cloud workflow engine based on aneka | |
Chakraborty et al. | A new framework for configuration management and compliance checking for component-based software development | |
Tahamtan et al. | View driven inter-organisational workflows | |
Griesinger et al. | Bpaas in multi-cloud environments-the cloudsocket approach | |
Nikolaidou et al. | Techno-economic analysis of SysML models | |
Hamdaqa | An integrated modeling framework for managing the deployment and operation of cloud applications | |
US9576258B1 (en) | Computer executable service |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20170117 Address after: Texas, USA Patentee after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT L.P. Address before: Texas, USA Patentee before: Hewlett-Packard Development Co.,L.P. |
|
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150701 Termination date: 20211030 |
|
CF01 | Termination of patent right due to non-payment of annual fee |