CN102231194A - 一种管理对象的生命周期的方法和系统 - Google Patents
一种管理对象的生命周期的方法和系统 Download PDFInfo
- Publication number
- CN102231194A CN102231194A CN2009102113179A CN200910211317A CN102231194A CN 102231194 A CN102231194 A CN 102231194A CN 2009102113179 A CN2009102113179 A CN 2009102113179A CN 200910211317 A CN200910211317 A CN 200910211317A CN 102231194 A CN102231194 A CN 102231194A
- Authority
- CN
- China
- Prior art keywords
- role
- migration
- owl
- life cycle
- mapped
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/10—Requirements analysis; Specification techniques
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
提供了一种管理对象的生命周期的方法和系统,所述生命周期包括对象的多个状态,所述多个状态之间的至少一个迁移以及有权执行所述至少一个迁移的至少一个角色,所述方法包括:将所述多个状态、至少一个迁移和至少一个角色中的至少一个映射到OWL中的元素;利用OWL自身的推理能力,根据上述映射,获得与所述角色相关的控制信息;以及根据上述与角色相关的控制信息,管理所述生命周期。利用本发明的方法和系统,能够将角色访问控制信息嵌套到生命周期描述中,从而容易地实现对生命周期的管理。
Description
技术领域
本发明涉及管理对象的生命周期的方法和系统,更具体而言,涉及利用OWL管理对象的生命周期的方法和系统。
背景技术
生命周期是指,特定类型的有机体从其最早阶段到其下一代中同一阶段的再现所经历的形式的发展和变化。在不同领域中,对于不同的对象,生命周期具有各自不同的详细解释。
例如,在对象为特定产品时,生命周期包括产品的各个发展阶段,例如设计、生产、包装、库存、销售等等。在面向服务的架构中,以服务为对象的生命周期开始于一个服务的定义,结束于该服务的中止。下面以服务为例,更详细地说明生命周期。更具体而言,服务的生命周期包括该服务可能经历的多个阶段或者状态,例如定义、建模、组装、部署和管理,以及在这些状态之间的迁移过程,例如从组装状态到部署状态的开发过程,从部署状态到管理状态的测试过程。每一个迁移过程都与特定的角色相关联,例如开发过程由开发人员执行,测试过程由测试人员进行。由于服务的生命周期涉及多种状态,多个迁移过程以及多个角色等多种因素,因此对其的管理成为有待解决的问题。例如,管理人员希望能够通过生命周期的管理系统来追踪不同阶段中服务的状态;在不同的角色登陆该管理系统时,希望管理系统能够鉴别出该角色有权进行的操作;在想要从一种状态迁移到另一状态时,希望管理系统能够提供合适的迁移路径并识别迁移所涉及的角色。为了实现上述管理,就需要了解并表达生命周期中的多种信息,尤其是基于角色的访问控制,例如,哪些角色、在什么情况下能够对服务进行改变和迁移,能够进行怎样的改变等等。然而,现有技术对生命周期的描述和管理并不能满足上述要求。
通常,生命周期可以用状态机的形式表述。状态机是一种有向的图形,用于描述状态和状态之间的迁移。状态机图表作为一种传统的面向对象的方式,用于示出对象的行为,并表现一个对象如何响应于各种事件,所述事件可以包括各种外部和内部刺激。在现有技术中,已经采用多种语言来描述状态机和生命周期。
UML状态机图表通过表现单个对象在其生命周期中的状态和迁移过程来描述一个类随时间的行为和变化。UML 2.0状态机表示的是有限状态机。在产业和学术界,已经采用了多种UML 2.0状态机产品。这样的产品包括:IBM Rational Software Architect,Altova UModel 2008,UML状态机向导,用于JDeveloper的SDE等等。然而,这些状态机产品主要致力于状态机的图示化描述。他们仅仅将角色和访问控制作为状态机中的通用条件来考虑,因此不能判断出对于特定角色来说,哪些状态是有权访问的,哪些迁移是有权执行的。
SCXML(state chart XML)是基于UML2.0的另一种状态机符号,其组合了来自CCXML和Harel State Tables的概念。与UML2.0相似,在描述状态机时,SCXML也不能考虑角色的访问控制作用,因此不能判断角色可以访问的状态和执行的迁移。
SACL是用于定义状态机的另一种语言,设计用于WebSphere ProcessServer的商业状态机。不过,这种语言也没有包含角色控制信息。
并且,以上描述的表示状态机或生命周期的UML,SCXML,SACL语言其本身不具备语义表达能力,因此,在需要用到语义的环境下,需要进行进一步的转换。
网络本体语言OWL是一种基于语义的语言,用于在网络上发布和共享各种本体。在一些产品中,OWL语言也用于描述生命周期。然而,当前的OWL文件并没有将角色访问控制的信息纳入其中,也没有利用OWL自身的推理能力计算各个角色的权限。
另一方面,现有技术中采用了各种语言,例如可扩展访问控制标记语言XACML等来描述访问控制和用户权限。然而,这些语言通常不能描述状态机和生命周期。
因此,在现有技术的管理生命周期的体系架构中,当某一用户登录管理系统,希望执行权限之内的迁移和操作时,系统首先要从XACML文档读取对用户权限的描述。然后,系统读取诸如UML、SACL之类的语言描述的状态机,将其转译为具有语义的OWL文件,从OWL文件获取属性信息,从而得到关于生命周期中状态和迁移的描述。最后,系统将分别获取的角色权限信息和状态机信息相结合,才能判断,当前登录的用户能够执行生命周期中的哪些迁移。
很明显,上述管理过程非常复杂和繁琐。因此,期望能够将角色的访问控制信息嵌套到生命周期的描述文件中,并且利用语言自身的推理能力获得并计算各个角色的权限。
发明内容
考虑到上述问题,提出本发明,用于将角色访问控制信息与生命周期的描述信息结合在一起,并自动归纳出角色的权限,以进行生命周期的管理。
根据本发明第一方面,提供一种管理对象的生命周期的方法,所述生命周期包括对象的多个状态,所述多个状态之间的至少一个迁移以及有权执行所述至少一个迁移的至少一个角色,所述方法包括:将所述多个状态、至少一个迁移和至少一个角色中的至少一个映射到OWL中的元素;利用OWL自身的推理能力,根据上述映射,获得与所述角色相关的控制信息;以及根据上述与角色相关的控制信息,管理所述生命周期。
根据本发明第二方面,提供一种管理对象的生命周期的系统,所述生命周期包括对象的多个状态,所述多个状态之间的至少一个迁移以及有权执行所述至少一个迁移的至少一个角色,所述系统包括:映射读取单元,配置为读取OWL文件,在所述OWL文件中,所述生命周期中的所述多个状态、至少一个迁移和至少一个角色中的至少一个被映射到OWL中的元素;控制信息获取单元,配置为利用OWL自身的推理能力,根据上述映射,获得与所述角色相关的控制信息;以及管理单元,根据上述与角色相关的控制信息,管理所述生命周期。
通过本发明提供的方法和装置,通过将生命周期中的各个要素映射到OWL中的元素,来将角色的访问控制信息嵌套到生命周期的描述文件中,并且能够利用语言自身的推理能力获得并计算各个角色的权限。
附图说明
图1示例性地示出一个服务的生命周期;
图2示出根据本发明实施例管理生命周期的方法的流程图;
图3示出根据一个实施例,图2中步骤202的子步骤;
图4示出经过映射的生命周期中的要素之间的关系;
图5示出计算出的各个角色的权限的示意图;
图6示出根据一个实施例计算特定角色的迁移路径的流程图;
图7示出根据本发明一个实施例的管理生命周期的系统的示意框图。
具体实施方式
下面参照附图说明本发明的具体实施例。
图1示例性地示出一个服务的生命周期。如图所示,该服务的生命周期包含六个状态,依次为:服务定义、建模、组装、部署、管理和中止(retired)。在这六个状态之间存在七个迁移,并涉及四种角色:设计人员、开发人员、测试人员和管理员。具体地,管理员定义这项服务,并将其递送给设计人员进行分析和建模。设计人员对服务进行建模,并将其递送给开发人员进行组装。开发人员对服务组件进行组装,并将其递送给测试人员进行部署和测试。根据测试结果,测试人员将该服务递送给管理员进行管理,或递送给开发人员进行修复。进一步地,管理员可以使这项服务中止,或者将其递送给测试人员来检查是否存在其他问题。
下面以图1所示的生命周期为例,描述对生命周期的定义和管理过程。
根据本发明一个实施例,提供一种管理对象的生命周期的方法,所述对象可以是产品、服务等多种管理对象,所述生命周期包含多个状态、状态之间的多个迁移,以及有权执行这些迁移的多个角色,如图1所示例性示出。该方法的流程图如图2所示。在图2中,管理生命周期的方法包括步骤202,其中将所述多个状态、迁移和角色分别映射到OWL中的不同元素;步骤204,在其中利用OWL固有的推理能力,根据上述映射,获得与所述角色相关的控制信息;以及步骤206,在其中根据上述与角色相关的控制信息,管理所述生命周期。
步骤202涉及将生命周期的各个要素(状态、迁移和角色)映射到OWL的元素。作为网络本体语言,OWL主要使用类(class),个体(individual)和属性(property)这几个基本元素来表达语义并进行推理。下面将结合映射的过程逐步说明这些元素。
在一个具体实施例中,步骤202包括多个子步骤,这些子步骤如图3所示。具体地,图3示出根据一个实施例,图2中步骤202的子步骤,这些子步骤包括:步骤2022,其中将每个状态映射到OWL中的类;步骤2024,其中将每一个迁移映射到OWL中的对象属性;以及步骤2026,其中将每一个角色映射到OWL中的传递属性。
首先,说明步骤2022中类的映射。在OWL中,类是一组个体的集合。这个概念基本上和OO语言里的类的概念一样。在OWL中规定,任何个体都是类owl:Thing的一个成员(实例)。因此,任何用户定义的类都是owl:Thing类的子类。子类会继承父类的所有属性限制。
在步骤2022中,可以将生命周期中的每个状态映射到OWL中的一个类,将从该状态可以进行的迁移表示为映射的类的属性限制,并将该迁移的目标状态表示为属性值。下面给出一段示例性代码,示出该映射过程。
<owl:Class rdf:ID=″Model″>
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource=″#AuthorizedForDevelopment″/>
<owl:allValuesFrom rdf:resource=″#Assemble″/>
</owl:Restriction>
</rdfs:subClassOf>
rdfs:subClassOf rdf:resource=″&owl;Thing″/>
</owl:Class>
<owl:Class rdf:ID=″Composite state″>
<rdfs:subClassOf>
<owl:Class>
<owl:unionOf rdf:parseType=″Collection″>
<owl:Class rdf:about=″#Model″/>
<owl:Class rdf:about=″#ServiceIdentified″/>
</owl:unionOf>
</owl:Class>
</rdfs:subClassOf>
<rdfs:subClassOf rdf:resource=″&owl;Thing″/>
</owl:Class>
在以上的代码中,<owl:Class rdf:ID=″Model″>表示定义了一个名为Model(建模)的类,这个类的含义是服务或者对象处于最初的分析设计和建模阶段,可以作为生命周期中的一种初始状态。<rdfs:subClassOf>表示Model类的定义是以下类的子类,以下类中所需满足的属性限制Model类也会满足。<owl:Restriction>表示一个匿名类型,用于添加各种属性限制。<owl:onProperty rdf:resource=″#AuthorizedForDevelopment″/>表示定义了一个属性限制AuthorizedForDevelopment(授权进行开发),如上所述,该属性限制代表一个状态迁移,其含义是,当服务或者对象处于Model状态时,可以通过该迁移使得服务或者对象从Model状态迁移到其他状态。该属性限制可以用来表示生命周期管理中从某一个特定的状态可能进行的状态迁移操作。<owl:allValuesFrom rdf:resource=″#Assemble″/>表示定义了上述属性限制的取值,该取值代表上述状态迁移的目标状态,其含义是,服务或者对象通过上述状态迁移可以从Model状态迁移到Assemble(组装)状态。该取值可以用来表示某一个状态迁移的目标状态。之后的语句表示所定义的类是Thing的子类。上述代码段利用属性限制(owl:onProperty)来定义生命周期中的状态迁移,同时利用属性限制的取值(owl:allValuesFrom)来定义该状态迁移的目标状态。
<owl:Class rdf:ID=″Composite state″>表示一个名为Composite state的组合类,该类包含Model类型和ServiceIdentified类的定义,可以作为生命周期管理中组合状态的定义。组合状态由多个其他简单状态和状态迁移组成。<rdfs:subClassOf>表示Composite state类的定义是以下类型定义的子类。<owl:Class>表示一个匿名类,该类的定义通过枚举来实现,用来表示组合状态中包含哪些简单状态。<owl:unionOfrdf:parseType=″Collection″>表示组合状态中类定义的集合,即组合状态中所有简单状态的集合。<owl:Class rdf:about=″#Model″/>表示类定义集合中某一个具体的类Model,可以作为组合状态中所包含的某一个特定的简单状态。<owl:Class rdf:about=″#ServiceIdentified″/>表示类定义集合中另一个具体的类ServiceIdentified。以上的代码段通过枚举的方式(owl:unionOf)定义生命周期管理中的组合状态。
总体来说,上述实施例的代码中,描述了一个名为“Model”的状态和一个名为“Composite state”的组合状态。组合状态由多个其他简单状态和状态迁移组成。状态“Model”可以通过迁移“AuthorizedForDevelopment”转换为状态“Assemble”。由此,通过将状态映射为类,并对类施加属性限制,来定义图1的生命周期中的建模状态和组装状态,以及这两个状态之间的迁移(授权进行开发)。并且,通过上述代码可以看出,利用OWL的类还可以描述组合状态。
接着,说明步骤2204中将迁移映射到OWL中对象属性的过程。
我们知道,RDF/OWL里都是用二元关系来描述东西的。比如描述:老李是一个人,在RDF/OWL里就是这样描述的:老李——是——>人。其中,老李和人之间的那个关系“——是——>”就是RDF/OWL里的属性。也就是说,属性就是一个二元关系。OWL里包括两种属性:数据类型属性(datatype properties)和对象属性(object properties),其中数据类型属性描述类与其实例之间的关系,对象属性描述两个不同类的实例之间的关系。既然属性是上面例子里那样的一个二元关系,那么属性就必须有且只有两个端点,起点和终点都应该是两个个体(实例)。我们用原集,或称定义域(domain)来描述起点的实例的类,用象集,或称取值范围(range)来描述终点的实例的类。或者说,原集是属性所属于的类,象集是属性所指向的类。与类的概念相似,属性也有子属性(Subproperty)的概念。OWL中的子属性满足这样的关系,即,如果两个个体x,y满足属性P1,而属性P1是属性P2的子属性,那么x,y也将满足属性P2。
基于上述理解,在步骤2204中,可以将每个迁移映射到OWL中的对象属性,将该对象属性的原集限定为该迁移的起点状态,将其象集限定为该迁移的目标状态。如果该迁移被授权给特定角色执行,那么进一步地,将该迁移限定为相应角色的子属性。下面结合一段示例性代码说明该映射过程。
<owl:ObjectProperty rdf:ID=″AuthorizedForDevelopment″>
<rdfs:domain rdf:resource=″#Model″/>
<rdfs:range rdf:resource=″#Assemble″/>
<rdfs:subPropertyOf rdf:resource=″#Designer″/>
</owl:ObjectProperty>
在以上的代码中,语句<owl:ObjectPropertyrdf:ID=″AuthorizedForDevelopment″>表示定义了一个名为AuthorizedForDevelopment的对象属性,该属性的含义是服务或者对象可以被授权进行开发工作,这一动作可以作为生命周期管理中的一个状态迁移。<rdfs:domain rdf:resource=″#Model″/>表示上述传递属性的domain是Model状态,也就是说,只有服务或者对象处于Model状态时才可以被授权去进行开发工作,Model是AuthorizedForDevelopment这一状态迁移的源状态。<rdfs:range rdf:resource=″#Assemble″/>表示AuthorizedForDevelopment属性的取值范围是Assemble,含义是服务或者对象被授权去进行开发工作以后,其状态将变为Assembel,也就是,Assemble是该迁移的目标状态。<rdfs:subPropertyOfrdf:resource=″#Designer″/>表示AuthorizedForDevelopment属性是Designer的子属性,含义是Designer这一用户角色具有执行这一状态迁移的权限。这一限定用来表示生命周期管理中访问控制信息的描述。
总体来说,上述代码中,描述了一个名为“AuthorizedForDevelopment”的迁移,该迁移被分配给了角色“Designer”。根据迁移这个属性的原集和象集的定义,上述迁移的源状态是“Model”,目标状态是“Assemble”。由此,通过将迁移映射为对象属性,并对其原集象集进行定义,描述了图1的生命周期中的一个具体迁移,并且通过子属性的定义,描述了有权执行该迁移的角色。
接下来,描述步骤2026中将角色映射到OWL中传递属性的过程。
在OWL中,传递属性具有“可传递”的特性,满足下面的关系:如果个体x,y满足属性P,y,z也满足属性P,且属性P是传递属性,那么x,z也将满足属性P。也即是说,如果P(x,y)和P(y,z)成立,而P是传递属性,那么P(x,z)成立。
基于传递属性的上述特点,在步骤2026中,可以通过下面的代码将角色映射到OWL中的传递属性:<owl:TransitivePropertyrdf:about=″#Designer″>。该代码表示定义了一个传递属性Designer,用来表示设计人员这一角色,可以作为生命周期管理中用户角色的定义。通过将角色定义为传递属性,使得角色对迁移的执行具有传递和连贯性。
在进一步的实施例中,还可以定义具有超级用户权限的根角色Root,他可以执行任何普通角色的行为,相当于系统的管理员。这个角色在面向管理员,或者在不需要角色控制时使用。任何其它普通角色可以认为是该Root角色的子属性。
通过图3中各个步骤的映射,可以得到图4所示的关系图。图4a抽象示出源状态、目标状态、迁移、角色、根角色之间的关系。纵向来看,迁移的起点是源状态,终点是目标状态。横向来看,迁移是对应角色的子属性,角色又是根角色的子属性,因此,角色和Root间接地也以源状态为起点,目标状态为终点。图4b结合图1中的具体生命周期,示出了迁移和角色的关系。例如,批准部署是开发人员的子属性,中止使用、定义服务和撤销这几项迁移都是管理人员的子属性,批准服务上线、进行修复这几项迁移都是测试人员的子属性,授权进行开发是设计人员的子属性,而开发人员、管理人员、测试人员和设计人员这几个角色都是根角色Root的子属性。
在通过图3的步骤得到图4所示的关系之后,图2中管理生命周期的方法前进至步骤204,在其中利用OWL固有的推理能力,根据上述映射关系,获得与角色相关的迁移控制信息。下面结合一个简单的生命周期的一部分说明上述推理过程。
假设一个生命周期的初始部分包含三个状态:create,modeled和assembled。这三个状态之间存在两个迁移,从create到modeled的plan,和从modeled到assembled的AuthorizedDevelop,并且这两个迁移都可以通过角色Designer来实现。那么根据图3的步骤,得到下面的表达式:
1.属性plan(create,modeled),这意味着,属性plan的原集为create,象集为modeled,create这个类具有属性plan
2.属性AuthorizedDevelop(modeled,assembled)
3.plan是Designer的子属性
4.AuthorizedDevelop是Designer的子属性
5.Designer是一个传递属性。
根据以上的表达式,利用OWL自身的推理能力,可以执行下面的推理过程:由于plan(create,modeled)和AuthorizedDevelop(modeled,assembled)都是Designer的子属性,因此,Designer可以具有与子属性相同的原集和象集,即,Designer(create,modeled)和Designer(modeled,assembled)成立;进一步地,由于Designer是一个传递属性,根据传递属性的定义,Designer必然也满足Designer(create,assembled)。这就得出了,从create状态到assembled状态的迁移也可以由Designer来执行。在上面的过程中,虽然没有显式地定义状态create和assembled之间的迁移该由哪个角色来实现,但是通过OWL固有的推理能力,可以自动实现对上述角色控制信息的获取。
在利用OWL的推理获得角色控制信息的基础上,可以实现对生命周期的有效管理,即图2中步骤206。
具体地,在一个实施例中,管理生命周期的步骤包括提供用户权限。也就是,当用户进入生命周期管理系统后,系统计算并提供出该用户有权执行的操作。为了计算这样的操作,系统可以首先将用户匹配到生命周期中的特定角色,然后根据OWL推导出的角色控制信息,获得与该角色相关的、直接或间接的迁移信息。
在一个具体例子中,用户权限的计算和提供是实时进行的,从而不必担心生命周期定义的改变。在其它例子中,用户权限也可以预先计算和存储。图5示出推理得到的各个角色的权限的示意图,该示意图仍然是以图1的生命周期为例计算得出的。如图5所示,五个纵行分别示出了设计人员、开发人员、测试人员、管理人员和根角色Root有权执行的迁移。在特定角色登录系统时,可以实时得到这样的推理结果,据此可以立即读取该角色对应的迁移和操作。
在一个实施例中,管理生命周期的步骤包括计算特定角色在两个状态之间的迁移路径。具体地,当特定角色Role进入系统,想要从起始状态S迁移到目标状态T时,系统需要计算该用户是否有权限执行这样的迁移,如果有,要经过哪些状态和迁移才能达到目标状态T。
图6示出根据一个实施例,计算特定角色的迁移路径的流程图。如图6所示,首先,在步骤602,判断角色是否有权限从状态S迁移到状态T。根据生命周期中状态、迁移和角色到OWL中的映射关系,只需要判断Role(S,T)是否成立即可。如果不成立,则前进至步骤614,结束该过程。如果Role(S,T)成立,则方法前进至步骤604,获取从S直接可到达的状态m。在这一步骤中,只需要取出源状态S的所有属性的取值即可,这些取值表示从该状态S通过一次迁移可以到达的中间状态m。接着执行步骤606,判断获得的中间状态m是否包含目标状态T,如果是,则执行步骤612,直接迁移至目标状态T,并在步骤614结束该过程;如果中间状态m不包含目标状态T,那么前进至步骤608,对于每一个中间状态m,判断Role(m,T)是否成立,也就是,判断角色能否从中间状态m到达目标状态T。对于判断结果为是的中间状态,在步骤610中执行到该中间状态的迁移,并返回至步骤604,获得下一步可到达的状态,直到步骤606中判断为是,执行到目标状态T的迁移为止。
可以理解,以上仅仅给出了本发明的说明性实施例,而不构成对本发明的限制。根据不同对象的生命周期的特点以及对其管理的需要,本领域技术人员可以对上述具体实施例进行修改。例如,在一个生命周期中,如果仅需要管理特定角色可以到达哪些状态,那么可以跳过迁移的定义,而直接将角色定义为以源状态为原集以目标状态为象集的对象属性。在其他实施方案中,根据OWL推理的需要和管理的需要,也可以将迁移映射为OWL中的类,将角色映射为类的属性限制。对生命周期的管理也可以包含更为广泛的内容,例如,计算特定起点状态和特定目标状态之间涉及角色最少的迁移路径,迁移次数最少的路径等等。
基于同一发明构思,本发明还提供了管理对象的生命周期的系统。图7示出根据本发明一个实施例的管理生命周期的系统的示意框图。如图7所示,生命周期管理系统总体由数字700表示。具体地,系统700包含映射读取单元710,配置用于读取OWL文件,在该OWL文件中,生命周期的状态、迁移和角色被分别映射到OWL中的元素,控制信息获取单元720,被配置用于利用OWL自身的推理能力,根据读取的映射关系,获得与角色相关的控制信息;以及管理单元730,被配置用于根据上述与角色相关的控制信息,管理所述生命周期。
根据一个具体实施例,在映射读取单元710读取的OWL文件中,生命周期的每个状态被映射到OWL中的类,每一个迁移被映射到OWL中的对象属性,每一个角色映射到OWL中的传递属性。更具体地,对于所述每一个迁移所映射到的对象属性,其原集被限定为该迁移的起点状态,其象集被限定为该迁移的目标状态,并且该对象属性被限定为有权执行该迁移的角色所映射到的传递属性的子属性。
在一个实施例中,管理单元730所执行的管理包括:提供用户权限,计算特定角色在两个状态之间的迁移路径等。
由于管理系统700运作的原理和方式与前述的管理生命周期的方法相对应,因此不再赘述。
本领域技术人员可以理解,上述的管理方法及系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本实施例的管理系统及其单元可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合实现。
虽然以上结合具体实施例,对本发明的管理生命周期的方法和系统进行了详细描述,但本发明并不限于此。本领域普通技术人员能够在说明书教导之下对本发明进行多种变换、替换和修改而不偏离本发明的精神和范围。应该理解,所有这样的变化、替换、修改仍然落入本发明的保护范围之内。本发明的保护范围由所附权利要求来限定。
Claims (18)
1.一种管理对象的生命周期的方法,所述生命周期包括对象的多个状态、所述多个状态之间的至少一个迁移以及有权执行所述至少一个迁移的至少一个角色,所述方法包括:
将所述多个状态、至少一个迁移和至少一个角色中的至少一个映射到OWL中的元素;
利用OWL自身的推理能力,根据上述映射,获得与所述角色相关的控制信息;以及
根据上述与角色相关的控制信息,管理所述生命周期。
2.根据权利要求1的方法,其中所述对象包括:服务和产品。
3.根据权利要求1的方法,其中将所述多个状态、至少一个迁移和至少一个角色中的至少一个映射到OWL中的元素的步骤包括:
将所述多个状态中的每个状态映射到OWL中的类;
将所述至少一个迁移中的每一个映射到OWL中的对象属性;以及
将所述至少一个角色中的每一个映射到OWL中的传递属性。
4.根据权利要求3的方法,其中,对于所述每一个迁移所映射到的对象属性,其原集被限定为该迁移的起点状态,其象集被限定为该迁移的目标状态,并且该对象属性被限定为有权执行该迁移的角色所映射到的传递属性的子属性。
5.根据权利要求4的方法,其中,将所述多个状态、至少一个迁移和至少一个角色中的至少一个映射到OWL中的元素的步骤还包括:将所有角色所映射到的传递属性限定为根角色的属性的子属性。
6.根据权利要求1-5中任一项的方法,其中管理所述生命周期的步骤包括:提供用户权限。
7.根据权利要求6的方法,其中提供用户权限的步骤包括:将所述用户匹配到所述生命周期的特定角色,根据所述与角色相关的控制信息,确定该特定角色有权执行的迁移。
8.根据权利要求3-5中任一项的方法,其中管理所述生命周期的步骤包括:计算特定角色在两个状态之间的迁移路径。
9.根据权利要求8的方法,其中计算特定角色在两个状态之间的迁移路径的步骤包括:
通过获取当前状态所映射到的类的属性取值,计算可以到达的下一状态;
在所述下一状态不包含目标状态的情况下,迁移到能够通往目标状态的下一状态,
重复上述步骤,直到所述下一状态包含目标状态。
10.一种管理对象的生命周期的系统,所述生命周期包括对象的多个状态、所述多个状态之间的至少一个迁移以及有权执行所述至少一个迁移的至少一个角色,所述系统包括:
映射读取单元,配置为读取OWL文件,在所述OWL文件中,所述生命周期中的所述多个状态、至少一个迁移和至少一个角色中的至少一个被映射到OWL中的元素;
控制信息获取单元,配置为利用OWL自身的推理能力,根据上述映射,获得与所述角色相关的控制信息;以及
管理单元,根据上述与角色相关的控制信息,管理所述生命周期。
11.根据权利要求10的系统,其中所述对象包括:服务和产品。
12.根据权利要求10的系统,其中,在所述OWL文件中,
所述多个状态中的每个状态被映射到OWL中的类;
所述至少一个迁移中的每一个被映射到OWL中的对象属性;以及所述至少一个角色中的每一个被映射到OWL中的传递属性。
13.根据权利要求12的方法,其中,对于所述每一个迁移所映射到的对象属性,其原集被限定为该迁移的起点状态,其象集被限定为该迁移的目标状态,并且该对象属性被限定为有权执行该迁移的角色所映射到的传递属性的子属性。
14.根据权利要求13的方法,其中,在所述OWL文件中,所有角色所映射到的传递属性被限定为根角色的属性的子属性。
15.根据权利要求10-14中任一项的系统,其中所述管理单元进一步配置为:提供用户权限。
16.根据权利要求15的系统,其中所述管理单元进一步配置为:将所述用户匹配到所述生命周期的特定角色,根据所述与角色相关的控制信息,确定该特定角色有权执行的迁移。
17.根据权利要求12-14中任一项的系统,其中所述管理单元进一步配置为:计算特定角色在两个状态之间的迁移路径。
18.根据权利要求17的系统,其中所述管理单元进一步配置为:
通过获取当前状态所映射到的类的属性取值,计算可以到达的下一状态;
在所述下一状态不包含目标状态的情况下,迁移到能够通往目标状态的下一状态,
重复上述步骤,直到所述下一状态包含目标状态。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009102113179A CN102231194A (zh) | 2009-10-30 | 2009-10-30 | 一种管理对象的生命周期的方法和系统 |
US12/894,394 US9182944B2 (en) | 2009-10-30 | 2010-09-30 | Managing lifecycle of objects |
US13/405,272 US9280318B2 (en) | 2009-10-30 | 2012-02-25 | Managing lifecycle of objects |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009102113179A CN102231194A (zh) | 2009-10-30 | 2009-10-30 | 一种管理对象的生命周期的方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102231194A true CN102231194A (zh) | 2011-11-02 |
Family
ID=43926760
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009102113179A Pending CN102231194A (zh) | 2009-10-30 | 2009-10-30 | 一种管理对象的生命周期的方法和系统 |
Country Status (2)
Country | Link |
---|---|
US (2) | US9182944B2 (zh) |
CN (1) | CN102231194A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104391745A (zh) * | 2014-10-13 | 2015-03-04 | 浪潮通用软件有限公司 | 一种可扩展的对象生命周期管理方法 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8555247B2 (en) * | 2006-10-13 | 2013-10-08 | International Business Machines Corporation | Systems and methods for expressing temporal relationships spanning lifecycle representations |
US20100175054A1 (en) * | 2009-01-06 | 2010-07-08 | Katarina Matusikova | System and method for transforming a uml model into an owl representation |
US9684885B2 (en) * | 2011-01-17 | 2017-06-20 | Infosys Technologies, Ltd. | Method and system for converting UBL process diagrams to OWL |
US8868751B2 (en) * | 2011-03-29 | 2014-10-21 | Sap Se | Framework for diversified provisioning of services into business networks |
US9015661B1 (en) | 2011-06-23 | 2015-04-21 | The Mathworks, Inc. | Restricting class inheritance relationships |
US8683434B2 (en) * | 2012-04-04 | 2014-03-25 | Sap Ag | Generic method and system for lifecycle management |
US8843889B2 (en) * | 2012-04-04 | 2014-09-23 | International Business Machines Corporation | Managing application template artifacts in a networked computing environment |
US9363150B2 (en) | 2013-09-05 | 2016-06-07 | International Business Machines Corporation | Policy driven auto-transitioning framework for governed objects in service registries |
US9672139B2 (en) * | 2015-07-21 | 2017-06-06 | Successfactors, Inc. | Debugging in a production environment |
US11256799B2 (en) * | 2017-08-29 | 2022-02-22 | Seagate Technology Llc | Device lifecycle distributed ledger |
US11308194B2 (en) | 2018-10-31 | 2022-04-19 | Seagate Technology Llc | Monitoring device components using distributed ledger |
US11983155B2 (en) | 2020-01-14 | 2024-05-14 | International Business Machines Corporation | Namespace range creation to distribute workload in a dispersed storage system |
US11740825B2 (en) | 2020-01-14 | 2023-08-29 | International Business Machines Corporation | Object lifecycle management in a dispersed storage system |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7409404B2 (en) * | 2002-07-25 | 2008-08-05 | International Business Machines Corporation | Creating taxonomies and training data for document categorization |
US7810067B2 (en) * | 2002-08-30 | 2010-10-05 | Sap Aktiengesellschaft | Development processes representation and management |
US7584208B2 (en) | 2002-11-20 | 2009-09-01 | Radar Networks, Inc. | Methods and systems for managing offers and requests in a network |
US8073731B1 (en) * | 2003-12-30 | 2011-12-06 | ProcessProxy Corporation | Method and system for improving efficiency in an organization using process mining |
WO2005098657A1 (en) * | 2004-04-05 | 2005-10-20 | Peter Jeremy Baldwin | Web application for argument maps |
US20050234957A1 (en) * | 2004-04-15 | 2005-10-20 | Olson Michael C | System for visualization and modification of a domain model |
US8412554B2 (en) * | 2004-09-24 | 2013-04-02 | Samsung Electronics Co., Ltd. | Method and system for describing consumer electronics using separate task and device descriptions |
US8554825B2 (en) | 2005-12-22 | 2013-10-08 | Telcordia Technologies, Inc. | Method for systematic modeling and evaluation of application flows |
US8244855B1 (en) * | 2006-06-21 | 2012-08-14 | Qurio Holdings, Inc. | Application state aware mediating server |
EP1898345B1 (en) | 2006-09-11 | 2011-01-19 | Software AG | System for managing the lifecycle of a service oriented architecture |
US20080168017A1 (en) * | 2007-01-05 | 2008-07-10 | International Business Machines Corporation | Method and apparatus for configuration modelling and consistency checking of web applications |
US8108834B2 (en) | 2007-03-21 | 2012-01-31 | International Business Machines Corporation | Defining and executing processes using declarative programming language constructs |
US7844612B2 (en) | 2007-08-23 | 2010-11-30 | International Business Machines Corporation | Method for pruning objects in a service registry and repository |
US8307338B2 (en) * | 2008-04-01 | 2012-11-06 | Xerox Corporation | Converting rules in a rule-based system to ontological information |
US20120109708A1 (en) | 2010-11-03 | 2012-05-03 | Sap Ag | Evaluating pattern-based constraints on business process models |
US8683434B2 (en) | 2012-04-04 | 2014-03-25 | Sap Ag | Generic method and system for lifecycle management |
-
2009
- 2009-10-30 CN CN2009102113179A patent/CN102231194A/zh active Pending
-
2010
- 2010-09-30 US US12/894,394 patent/US9182944B2/en active Active
-
2012
- 2012-02-25 US US13/405,272 patent/US9280318B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104391745A (zh) * | 2014-10-13 | 2015-03-04 | 浪潮通用软件有限公司 | 一种可扩展的对象生命周期管理方法 |
Also Published As
Publication number | Publication date |
---|---|
US9280318B2 (en) | 2016-03-08 |
US9182944B2 (en) | 2015-11-10 |
US20120159437A1 (en) | 2012-06-21 |
US20110107302A1 (en) | 2011-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102231194A (zh) | 一种管理对象的生命周期的方法和系统 | |
Nelson | Foundations and methods of stochastic simulation | |
Zhang et al. | Feature-driven requirement dependency analysis and high-level software design | |
Mendling et al. | Detection and prediction of errors in EPCs of the SAP reference model | |
Sanya et al. | A framework for developing engineering design ontologies within the aerospace industry | |
CN109740122A (zh) | 思维导图用例文件的转换方法及装置 | |
Zanoni et al. | Pattern detection for conceptual schema recovery in data‐intensive systems | |
Rabe et al. | A new procedure model for verification and validation in production and logistics simulation | |
Mendling et al. | A quantitative analysis of faulty EPCs in the SAP reference model | |
Seyffarth et al. | Maintaining business process compliance despite changes: a decision support approach based on process adaptations | |
Zadeh et al. | Service oriented integration of distributed heterogeneous IT systems in production engineering using information standards and linked data | |
Friedrich et al. | Knowledge engineering for configuration systems | |
Le et al. | jDomainApp: a module-based domain-driven software framework | |
Inman et al. | A technique for generating supply and demand curves from system dynamics models | |
Yu et al. | The proposal of a modeling methodology for an industrial internet information model | |
Tselykh et al. | Knowledge discovery using maximization of the spread of influence in an expert system | |
CN107025110B (zh) | 一种基于软件开发要素及要素之间的联系的时态建模方法 | |
Zheng | Knowledge representation and decision support for managing product obsolescence | |
Ören et al. | M&S Bok Core areas and the big picture | |
Gates et al. | FasTLInC: a constraint-based tracing approach | |
CN114556238A (zh) | 用于在云计算环境中生成资产信息的数字表示的方法和系统 | |
Woll et al. | Semantic integration of product data models for the verification of product requirements | |
Abd Elatif et al. | Using ontology-based concept maps to reduce requirement engineering errors | |
Machado | Fault model-based variability testing | |
Ben Abbes et al. | Conceptual Framework for Representing Knowledge in the Energy Sector |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20111102 |