[go: up one dir, main page]

CN103186379A - Realization method for differentiation of software system - Google Patents

Realization method for differentiation of software system Download PDF

Info

Publication number
CN103186379A
CN103186379A CN2011104582012A CN201110458201A CN103186379A CN 103186379 A CN103186379 A CN 103186379A CN 2011104582012 A CN2011104582012 A CN 2011104582012A CN 201110458201 A CN201110458201 A CN 201110458201A CN 103186379 A CN103186379 A CN 103186379A
Authority
CN
China
Prior art keywords
resource
configuration
resources
software system
implementation method
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
Application number
CN2011104582012A
Other languages
Chinese (zh)
Inventor
李兵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Digiwin Software Co Ltd
Original Assignee
Digiwin Software Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Digiwin Software Co Ltd filed Critical Digiwin Software Co Ltd
Priority to CN2011104582012A priority Critical patent/CN103186379A/en
Priority to TW101123082A priority patent/TWI467482B/en
Publication of CN103186379A publication Critical patent/CN103186379A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明提出了一种软件系统差异化的实现方法,包含:a)定义一原生配置资源,原生配置资源对应于一软件系统的预先配置;b)定义一个或多个差量资源,差量资源与软件系统的配置变更相关;以及c)将原生配置资源与差量资源作用于上述软件系统以生成一新对象。本发明所提出的一种软件系统差异化的实现方法,通过所定义的原生配置资源与一个或多个差量资源形成新对象,而当执行软件系统时,其调用新对象,则可实现软件系统的新功能。

Figure 201110458201

The present invention proposes a method for realizing differentiation of software systems, including: a) defining a native configuration resource, which corresponds to the pre-configuration of a software system; b) defining one or more delta resources, delta resources It is related to the configuration change of the software system; and c) applying the original configuration resource and the delta resource to the software system to generate a new object. A software system differentiation implementation method proposed by the present invention forms a new object through defined native configuration resources and one or more differential resources, and when the software system is executed, it invokes the new object to realize the software New features of the system.

Figure 201110458201

Description

一种软件系统差异化的实现方法A Realization Method of Software System Differentiation

技术领域 technical field

本发明是有关于软件系统,且特别是有关于软件系统差异化的实现方法。The present invention relates to a software system, and in particular to a method for realizing differentiation of the software system.

背景技术 Background technique

当前,对于软件产品,其大规模开发一般要求标准化,同时又必须具备高度的可定制性,为不同客户提供有差别的服务和功能,这在客观上要求软件产品必须差异化。另,软件产品的本身功能随着产品的不断演化,则将面临有些功能需要增加、而有些功能需要取消的问题,传统的做法通常是由软件开发商修改原有程序代码,或通过插件化、配置化来解决此问题。但是,通过软件开发商来修改原有程序代码,将经过漫长的发布流程;而插件化虽然可以解决此问题,但是插件化易带来粒度过大问题;而对于采用配置化来解决此问题,其在实体上与功能上所使用的技术手段不同,则对技术要求较高,进而不易于维护。At present, for software products, the large-scale development generally requires standardization, and at the same time must have a high degree of customizability, and provide different services and functions for different customers, which objectively requires software products to be differentiated. In addition, as the functions of software products evolve continuously, some functions will need to be added and some functions will need to be canceled. The traditional method is usually for software developers to modify the original program code, or through plug-in, configuration to solve this problem. However, it will take a long release process to modify the original program code through software developers; although plug-in can solve this problem, plug-in will easily lead to the problem of excessive granularity; and for using configuration to solve this problem, It uses different technical means in terms of entity and function, so it has higher technical requirements and is not easy to maintain.

此外,在软件使用过程中,当客户需要在软件上增加一些简单的功能,一般仍需要给软件开发商来完成,这将造成一定的时间差,从而使客户不能更快地使用软件功能,进而造成客户价值的损失。In addition, in the process of using the software, when customers need to add some simple functions to the software, they generally still need to be completed by the software developer. Loss of customer value.

有鉴于此,如何设计一种软件系统差异化的实现方法,以实现软件系统的功能可作任意变更而具有可扩展性,并且易于维护及提高客户效益,是业内相关技术人员亟待解决的一技术问题。In view of this, how to design a differentiated implementation method of the software system, so that the functions of the software system can be changed arbitrarily and have scalability, and it is easy to maintain and improve customer benefits is a technology that relevant technical personnel in the industry need to solve urgently. question.

发明内容 Contents of the invention

为了解决上述技术问题,本发明提出了一种软件系统差异化的实现方法,包含:a)定义一原生配置资源,所述原生配置资源对应于一软件系统的预先配置;b)定义一个或多个差量资源,所述差量资源与所述软件系统的配置变更相关;以及c)将所述原生配置资源与所述差量资源作用于上述软件系统以生成一新对象。In order to solve the above technical problems, the present invention proposes a software system differentiation method, including: a) defining a native configuration resource, the native configuration resource corresponds to a pre-configuration of a software system; b) defining one or more a delta resource, the delta resource is related to the configuration change of the software system; and c) applying the native configuration resource and the delta resource to the software system to generate a new object.

在本发明的一实施方式中,步骤c)包含:c1);从不同物理位置和配置资源宿主扫描配置资源并形成一离散配置资源集合c2)对所述离散配置资源集合进行排序以生成一排序配置资源集合,继而分辨出原生配置资源和差量配置资源;以及c3)读取所述排序配置资源集合并解析所述差量资源以对所述原生配置资源进行一变更操作。In an embodiment of the present invention, step c) includes: c1); scanning configuration resources from different physical locations and configuration resource hosts to form a discrete configuration resource set; c2) sorting the discrete configuration resource sets to generate a ranking configuring a resource set, and then distinguishing native configuration resources and delta configuration resources; and c3) reading the sorted configuration resource set and parsing the delta resources to perform a change operation on the native configuration resources.

在本发明的一实施方式中,所述原生配置资源包含多个独立包装的子原生配置资源。In an embodiment of the present invention, the native configuration resource includes multiple independently packaged sub-native configuration resources.

在本发明的一实施方式中,所述子原生配置资源对应于所述软件系统的易变功能。In an embodiment of the present invention, the sub-native configuration resources correspond to variable functions of the software system.

在本发明的一实施方式中,所述差量资源包含基础对象、谓词及数据,其中,所述基础对象用以定义所述变更操作的目标,所述谓词用以定义所述变更操作的动作,所述数据用以定义所述变更操作的内容。In an embodiment of the present invention, the delta resource includes a basic object, a predicate and data, wherein the basic object is used to define the target of the change operation, and the predicate is used to define the action of the change operation , the data is used to define the content of the change operation.

在本发明的一实施方式中,所述差量资源透过一可视化设计器设计而成。In an embodiment of the present invention, the differential resource is designed through a visual designer.

在本发明的一实施方式中,所述差量资源基于统一对象模型。In an embodiment of the present invention, the differential resource is based on a unified object model.

在本发明的一实施方式中,所述差量资源为文本流。In an embodiment of the present invention, the differential resource is a text stream.

在本发明的一实施方式中,所述差量资源宿主在文件、数据库或文件服务器中。In an embodiment of the present invention, the differential resources are hosted in files, databases or file servers.

在本发明的一实施方式中,所述差量资源与所述原生配置资源之间、所述差量资源彼此间相耦合。In an embodiment of the present invention, the differential resources are coupled to the native configuration resources, and the differential resources are coupled to each other.

在本发明的一实施方式中,所述差量资源支持多语言。In an embodiment of the present invention, the differential resource supports multiple languages.

在本发明的一实施方式中,具有同一语言类型的所述差量资源集中放置。In an embodiment of the present invention, the difference resources of the same language type are placed centrally.

在本发明的一实施方式中,所述软件系统为企业资源计划系统。In one embodiment of the present invention, the software system is an enterprise resource planning system.

综上,本发明所提出的一种软件系统差异化的实现方法,通过所定义的原生配置资源与一个或多个差量资源形成新对象,而当执行软件系统时,其调用新对象,则可实现软件系统的新功能,使软件系统具有较好可扩展性。而对于软件系统的一些易变功能进行单独包装,这简化了后续的功能变更的操作。采用可视化设计器来设置差量资源,而对于软件系统的一些简单功能变更,客户可以直接透过可视化设计器来设计差量资源,进而实现软件系统的功能变更,而不需给软件开发商来完成功能变更,从而可以节省时间,进而提高效益。To sum up, the method for realizing differentiation of a software system proposed by the present invention forms a new object through defined native configuration resources and one or more differential resources, and when the software system is executed, it invokes the new object, then New functions of the software system can be realized, so that the software system has good scalability. Separately package some variable functions of the software system, which simplifies the operation of subsequent function changes. Use the visual designer to set differential resources, and for some simple function changes of the software system, customers can directly design differential resources through the visual designer, and then realize the functional changes of the software system without requiring software developers to Complete functional changes, saving time and increasing profitability.

附图说明Description of drawings

图1绘示了本发明一实施方式的软件系统差异化的实现方法的流程示意图;以及Fig. 1 depicts a schematic flowchart of a method for realizing software system differentiation according to an embodiment of the present invention; and

图2绘示了图1中的步骤130的具体流程示意图。FIG. 2 shows a specific flowchart of step 130 in FIG. 1 .

具体实施方式 Detailed ways

为使本发明所提出的技术方案更加清楚,下面将结合附图对本发明作进一步地详细描述。In order to make the technical solution proposed by the present invention clearer, the present invention will be further described in detail below in conjunction with the accompanying drawings.

关于本文中所出现的“原生配置资源”,是指标准软件系统所具有的配置资源,其可以泛指软件系统的所有配置资源的集合,也可以特指所有配置资源中的任一分配置资源。The "native configuration resources" mentioned in this article refer to the configuration resources of the standard software system, which can refer to the collection of all configuration resources of the software system in general, and can also refer to any sub-configuration resources in all configuration resources .

请参照图1,图1绘示了本发明一实施方式的软件系统差异化的实现方法的流程示意图。Please refer to FIG. 1 . FIG. 1 is a schematic flowchart of a method for realizing software system differentiation according to an embodiment of the present invention.

首先,在步骤110中,定义一原生配置资源,其中,此原生配置资源对应于一软件系统的预先配置。在本实施方式中,软件系统可以是,比如企业资源计划(Enterprise Resource Planning,ERP)系统,但不以此为限,也可以是其它应用软件。原生配置资源,即软件系统的预先所配置的资源,其可以在软件系统的早期开发中确定,具体而言,根据软件系统早期所需要的功能,来确定需要哪些配置资源。First, in step 110, a native configuration resource is defined, wherein the native configuration resource corresponds to a pre-configuration of a software system. In this embodiment, the software system may be, for example, an enterprise resource planning (Enterprise Resource Planning, ERP) system, but not limited thereto, and may also be other application software. Native configuration resources, that is, pre-configured resources of the software system, can be determined during the early development of the software system. Specifically, which configuration resources are required are determined according to the functions required in the early stage of the software system.

之后,在步骤120中,定义一个或多个差量资源,其中,差量资源与软件系统的配置变更相关。具体而言,虽然软件系统已形成上述之原生配置资源,但是,当软件系统需要功能变更时,比如需要为不同客户提供不同服务而使所提供的软件系统所具有的软件功能将作一定的调整、或软件系统本身需要增加或取消某些功能时,显然,如果软件系统只配置原生配置资源可能将不符要求,则此时软件系统的配置需要作一定变更,即需要对原生配置资源进行变更,于此,在本实施方式中,提出了差量资源这一概念,此差量资源与软件系统的功能变更(配置变更)相关。在本实施方式中,每一差量资源由基础对象、谓词及数据所组成,基础对象用以定义原生配置资源中的需要进行变更操作的目标,此变更操作的目标可以是,比如原生配置资源中的对象(object)或属性(property),但不以此为限,而谓词是用以定义此变更操作的具体动作,比如增加、修改及删除等,数据用以定义此变更操作的具体内容,比如对原生配置资源中的对象或属性的具体赋值。此外,差量资源与原生配置资源、各差量资源彼此间在逻辑上需相互耦合;对于差量资源与原生配置资源之间的相互耦合,由于差量资源中具有基础对象,而此基础对象可以是对应于原生配置资源中的对象或属性,由此可知差量资源与原生配置资源在逻辑上相耦合;而对于差量资源彼此间需要相耦合,比如,一个差量资源的含义是对原生配置资源中的一属性进行删除,而另一个差量资源的含义是针对此属性进行修改其属性值,显然,此时的两差量资源在逻辑有先后关系,因此,在本实施方式中,各差量资源彼此间相耦合。Afterwards, in step 120, one or more delta resources are defined, wherein the delta resources are related to configuration changes of the software system. Specifically, although the software system has formed the above-mentioned original configuration resources, when the software system needs to change functions, such as providing different services for different customers, the software functions of the provided software system will be adjusted to a certain extent. , or the software system itself needs to add or cancel certain functions, obviously, if the software system only configures the original configuration resources, it may not meet the requirements, then the configuration of the software system needs to be changed at this time, that is, the original configuration resources need to be changed. Here, in this embodiment, the concept of delta resource is proposed, and this delta resource is related to the function change (configuration change) of the software system. In this embodiment, each delta resource is composed of basic objects, predicates and data. The basic objects are used to define the target of the original configuration resource that needs to be changed. The target of this change operation can be, for example, the native configuration resource The object (object) or attribute (property), but not limited to this, and the predicate is used to define the specific action of the change operation, such as adding, modifying and deleting, etc., and the data is used to define the specific content of the change operation , such as specific assignments to objects or properties in native configuration resources. In addition, delta resources, native configuration resources, and each delta resource need to be logically coupled to each other; for the mutual coupling between delta resources and native configuration resources, since there is a basic object in the delta resource, and this basic object It can be an object or an attribute corresponding to a native configuration resource, so it can be seen that the delta resource and the native configuration resource are logically coupled; and the delta resource needs to be coupled with each other, for example, the meaning of a delta resource is to One attribute in the original configuration resource is deleted, and the meaning of the other differential resource is to modify its attribute value for this attribute. Obviously, the two differential resources at this time have a logical sequence relationship. Therefore, in this embodiment , each delta resource is coupled to each other.

继而,在步骤130中,将原生配置资源与差量资源作用于软件系统以生成一新对象。具体可参照下述。Then, in step 130, the original configuration resource and the delta resource are applied to the software system to generate a new object. For details, please refer to the following.

再请参照图2,图2绘示了图1中的步骤130的具体流程示意图。Please refer to FIG. 2 again. FIG. 2 shows a schematic flowchart of step 130 in FIG. 1 .

在步骤132中,从不同物理位置和配置资源宿主扫描配置资源并形成一离散配置资源集合。在本实施方式中,扫描配置资源,即为透过一设计接口从不同物理位置和配置资源宿主读取配置资源,并生成一离散配置资源集合。In step 132, configuration resources are scanned from different physical locations and configuration resource hosts to form a discrete set of configuration resources. In this embodiment, scanning configuration resources refers to reading configuration resources from different physical locations and configuration resource hosts through a design interface, and generating a set of discrete configuration resources.

在步骤134中,对离散配置资源集合进行排序以生成一已排序配置资源集合,并分辨出原生配置资源和差量配置资源。在本实施方式中,可以通过一排序器对离散配置资源参照层次等级进行排序,进而产生有序的排序配置资源集合。In step 134, the discrete configuration resource set is sorted to generate a sorted configuration resource set, and native configuration resources and delta configuration resources are distinguished. In this embodiment, a sorter may be used to sort the discrete configuration resources with reference to hierarchical levels, thereby generating an ordered set of sorted configuration resources.

在步骤136中,读取排序配置资源集合并解析差量资源以对原生配置资源进行一变更操作。在本实施方式中,可以通过一序列器/反序列器来读取排序配置资集合,当读取到原生配置资源中与差量资源的基础对象相匹配的变更操作目标时,那么将对差量资源中的谓词(变更操作的动作)进行解析,即执行动作,当执行完动作后,原生配置资源中需变更的目标已作变更。原生配置与差量迭量迭加的过程,功能作用在同一对象上,而产生新对象。In step 136, the sorted configuration resource set is read and the delta resources are parsed to perform a change operation on the original configuration resource. In this embodiment, a sequencer/deserializer can be used to read the sorting configuration resource set. When the change operation target in the original configuration resource that matches the basic object of the delta resource is read, the difference will be Analyze the predicate (change operation action) in the resource resource, that is, execute the action. After the action is executed, the target that needs to be changed in the native configuration resource has been changed. In the process of adding native configuration and differential iteration, the function acts on the same object to generate a new object.

另,下表列出了本实施方式中的多个动作的具体含义,参照如下:In addition, the following table lists the specific meanings of multiple actions in this embodiment, refer to the following:

Figure BDA0000127882670000061
Figure BDA0000127882670000061

表一Table I

需说明的是,表一中的Add、Edit及Remove三动作是对原生配置资源中的对象(object)进行操作,另外SetValue、ResetValue及SetNull三动作是对原生配置资源中的属性(property)进行操作。It should be noted that the three actions of Add, Edit, and Remove in Table 1 operate on objects in native configuration resources, and the three actions of SetValue, ResetValue, and SetNull operate on properties in native configuration resources. operate.

为了更好地理解本发明的实施方式,下面结合一具体例子来作进一步说明。In order to better understand the implementation manner of the present invention, further description will be given below in combination with a specific example.

例一:Example 1:

假如标准软件产品中对公司COMPANY的实体定义中仅有一个FAX栏位,而现在客户希望增加FAX2栏位来存储额外的传真号码,同时还希望修改原有的FAX栏位名称为FAX1。If there is only one FAX column in the entity definition of the company COMPANY in the standard software product, and now the customer wants to add a FAX2 column to store additional fax numbers, and also wants to change the original FAX column name to FAX1.

解决方案如下:The solution is as follows:

首先,在标准软件产品中,定义一原生配置资源,在本例中,即定义一原生实体COMPANY,并在此原生实体COMPANY中定义若干属性成员,如:CODE、FAX或其它属性。然后,应客户要求,需要将实体COMPANY的属性FAX变成FAX1与FAX2时,则需定义差量资源,这里,定义一差量实体,此差量实体的基础对象(变更操作的目标)为COMPANY、谓词(变更操作的动作)为Edit,表明对COMPANY基础对象进行修改操作。同时,在差量实体上定义属性FAX1和FAX2,谓词为Add,即增加属性FAX1、FAX2,需说明的是,这里也可以不提供谓词Add,因当发现在原生配置资源中不存在所定义的属性FAX1和FAX2时,则隐式约定为Add动作;此外,还在差量实体上增加FAX属性的差量定义,此差量的基础对象为属性FAX,谓词为Remove,此差量的目的是移除FAX。之后,将定义的差量资源加载在原生配置资源上,具体过程可参照上述,在此不再赘述,当定义的差量资源加载在原生配置资源上后,则可生成新对象,即此新对象的实体COMPANY具有属性FAX1与FAX2,符合客户需求。First, in a standard software product, a native configuration resource is defined. In this example, a native entity COMPANY is defined, and several attribute members are defined in the native entity COMPANY, such as CODE, FAX or other attributes. Then, at the request of the customer, when it is necessary to change the attribute FAX of the entity COMPANY into FAX1 and FAX2, a delta resource needs to be defined. Here, a delta entity is defined, and the base object of the delta entity (the target of the change operation) is COMPANY , The predicate (the action of the change operation) is Edit, indicating that the modification operation is performed on the COMPANY base object. At the same time, define the attributes FAX1 and FAX2 on the difference entity, and the predicate is Add, that is, add the attributes FAX1 and FAX2. It should be noted that the predicate Add may not be provided here, because when it is found that the defined For the attributes FAX1 and FAX2, it is implicitly agreed to be the Add action; in addition, the difference definition of the FAX attribute is added to the difference entity. The base object of this difference is the attribute FAX, and the predicate is Remove. The purpose of this difference is Remove FAX. Afterwards, load the defined delta resources on the native configuration resources. The specific process can be referred to above, and will not be repeated here. When the defined delta resources are loaded on the native configuration resources, a new object can be generated, namely this new The entity COMPANY of the object has attributes FAX1 and FAX2, which meet customer requirements.

由上可知,当各差量资源解析完后,即执行完所有动作后,那么此时原生配置资源已变更,从而生成了新对象,而当软件系统再运行时,其调用的是新对象,藉此,可使软件系统达成新的功能。It can be seen from the above that after the analysis of each difference resource is completed, that is, after all actions are executed, the original configuration resource has been changed at this time, thereby generating a new object, and when the software system runs again, it calls the new object. In this way, the software system can achieve new functions.

较佳地,在本实施方式中,对软件系统中的一些易变功能进行单独包装,相应地,原生配置资源可以包含多个单独包装的子原生配置资源,这些子原生配置资源分别对应于软件系统的易变功能,藉此,可降低粒度,利于后续对原生配置资源进行变更操作。根据此原理,也可以将软件系统的复杂的功能变更集合,拆分成若干个相互独立的差量资源来实现,保持了各功能变更的简单性,使软件系统更易维护。Preferably, in this embodiment, some volatile functions in the software system are individually packaged. Correspondingly, the native configuration resources may include a plurality of individually packaged sub-native configuration resources, and these sub-native configuration resources correspond to the software The volatile function of the system can reduce the granularity and facilitate subsequent changes to native configuration resources. According to this principle, the complex function change set of the software system can also be split into several independent delta resources for realization, which keeps the simplicity of each function change and makes the software system easier to maintain.

较佳地,在本实施方式中,差量资源可以透过一可视化设计器来设计,这将便于软件系统的开发人员或维护人员对差量资源的设计,尤其对于软件系统一些简单功能变更,则软件系统的客户可以直接透过可视化设计器设计差量资源,以对软件系统的原生配置资源进行变更,进而使软件系统实现新功能,而不需等待软件系统的开发人员或维护人员来对软件系统进行变更,从而节省了时间。另,在本实施方式中,各差量资源基于统一对象模型。再,在本实施方式中,差量资源可以是一文本流,但不以此为限。此外,差量资源可以宿主在文件或数据库中,即,差量资源的宿主不仅支持文件方式,还支持数据库方式,但不以此为限,差量资源也可以宿主在其它类型载体上,比如文件服务器中。Preferably, in this embodiment, the differential resource can be designed through a visual designer, which will facilitate the software system developer or maintainer to design the differential resource, especially for some simple function changes of the software system. Then the customers of the software system can directly design differential resources through the visual designer to change the original configuration resources of the software system, so that the software system can realize new functions without waiting for the developers or maintainers of the software system to make adjustments. software system changes, saving time. In addition, in this embodiment, each delta resource is based on a unified object model. Furthermore, in this embodiment, the differential resource may be a text stream, but it is not limited thereto. In addition, differential resources can be hosted in files or databases, that is, the host of differential resources not only supports file mode, but also supports database mode, but not limited to this, differential resources can also be hosted on other types of carriers, such as in the file server.

较佳地,在本实施方式中,差量资源可以支持多语言,并且,对于同一语言类型的差量资源集中放置在一起,这适用于具有多语言版本的软件系统。实践中,同一软件系统,由于其可能在不同国家或地区使用,其可能具有多语言版本,比如简体中文、繁体中文或英文版本,为了与此情形相吻合,则差量资源也可以支持多语言,但是,需强调的是,差量资源也可以不支持多语言,而仅仅支持单一语言,这可以根据软件系统灵活确定。另,当差量资源支持多语言时,则可以将同一语言的差量配置集中放在一起。再,纵使差量资源支持多语言,但也可以在原生配置资源中设定条件来判断是否支持多语言,而当原生配置资源中的变更操作的目标不支持多语言时,则在执行变更操作时,不加载多语言差量资源,只加载单一语言的差量资源。Preferably, in this embodiment, the delta resources can support multiple languages, and the delta resources for the same language type are placed together, which is suitable for software systems with multilingual versions. In practice, since the same software system may be used in different countries or regions, it may have multiple language versions, such as Simplified Chinese, Traditional Chinese or English versions. In order to match this situation, differential resources can also support multiple languages , however, it should be emphasized that the differential resources may not support multiple languages, but only support a single language, which can be flexibly determined according to the software system. In addition, when the delta resources support multiple languages, you can put the delta configurations of the same language together. Furthermore, even if the differential resource supports multiple languages, you can also set conditions in the native configuration resource to determine whether it supports multiple languages, and when the target of the change operation in the native configuration resource does not support multiple languages, the change operation is performed When , multilingual differential resources are not loaded, and only single language differential resources are loaded.

综上,本发明所提出的一种软件系统差异化的实现方法,通过所定义的原生配置资源与一个或多个差量资源形成新对象,而当执行软件系统时,其调用新对象,则可实现软件系统的新功能,使软件系统具有较好可扩展性。而对于软件系统的一些易变功能进行单独包装,这简化了后续的功能变更的操作。采用可视化设计器来设置差量资源,而对于软件系统的一些简单功能变更,客户可以直接透过可视化设计器来设计差量资源,进而实现软件系统的功能变更,而不需给软件开发商来完成功能变更,从而可以节省时间,进而提高效益。To sum up, the method for realizing differentiation of a software system proposed by the present invention forms a new object through defined native configuration resources and one or more differential resources, and when the software system is executed, it invokes the new object, then New functions of the software system can be realized, so that the software system has good scalability. Separately package some variable functions of the software system, which simplifies the operation of subsequent function changes. Use the visual designer to set differential resources, and for some simple function changes of the software system, customers can directly design differential resources through the visual designer, and then realize the functional changes of the software system without requiring software developers to Complete functional changes, saving time and increasing profitability.

上文中,参照附图描述了本发明的具体实施方式。但是,本领域中的普通技术人员能够理解,在不偏离本发明的精神和范围的情况下,还可以对本发明的具体实施方式作各种变更和替换。这些变更和替换都落在本发明权利要求书所限定的范围内。Hereinbefore, specific embodiments of the present invention have been described with reference to the accompanying drawings. However, those skilled in the art can understand that without departing from the spirit and scope of the present invention, various changes and substitutions can be made to the specific embodiments of the present invention. These changes and substitutions all fall within the scope defined by the claims of the present invention.

Claims (13)

1.一种软件系统差异化的实现方法,其特征在于,包含:1. A method for realizing differentiation of a software system, characterized in that, comprising: a)定义一原生配置资源,所述原生配置资源对应于一软件系统的预先配置;a) defining a native configuration resource, the native configuration resource corresponds to the pre-configuration of a software system; b)定义一个或多个差量资源,所述差量资源与所述软件系统的配置变更相关;以及b) defining one or more delta resources related to configuration changes of the software system; and c)将所述原生配置资源与所述差量资源作用于上述软件系统以生成一新对象。c) Applying the original configuration resource and the differential resource to the software system to generate a new object. 2.根据权利要求1所述的实现方法,其特征在于,步骤c)包含:2. The implementation method according to claim 1, wherein step c) comprises: c1)从不同物理位置和配置资源宿主扫描配置资源并形成一离散配置资源集合;c1) Scan configuration resources from different physical locations and configuration resource hosts and form a discrete configuration resource set; c2)对所述离散配置资源集合进行排序以生成一排序配置资源集合并分辨出所述原生配置资源和所述差量配置资源;以及c2) sorting the set of discrete configuration resources to generate a sorted set of configuration resources and distinguishing the native configuration resources from the delta configuration resources; and c3)读取所述排序配置资源集合并解析所述差量资源以对所述原生配置资源进行一变更操作。c3) Reading the sorted configuration resource set and parsing the difference resource to perform a change operation on the original configuration resource. 3.根据权利要求1或2所述的实现方法,其特征在于,所述原生配置资源包含多个独立包装的子原生配置资源。3. The implementation method according to claim 1 or 2, wherein the native configuration resource comprises a plurality of independently packaged sub-native configuration resources. 4.根据权利要求3所述的实现方法,其特征在于,所述子原生配置资源对应于所述软件系统的易变功能。4. The implementation method according to claim 3, characterized in that, the sub-native configuration resources correspond to variable functions of the software system. 5.根据权利要求2所述的实现方法,其特征在于,所述差量资源包含基础对象、谓词及数据,5. The implementation method according to claim 2, characterized in that, the differential resources include basic objects, predicates and data, 其中,所述基础对象用以定义所述变更操作的目标,所述谓词用以定义所述变更操作的动作,所述数据用以定义所述变更操作的内容。Wherein, the base object is used to define the target of the change operation, the predicate is used to define the action of the change operation, and the data is used to define the content of the change operation. 6.根据权利要求1或2所述的实现方法,其特征在于,所述差量资源透过一可视化设计器设计而成。6. The implementation method according to claim 1 or 2, wherein the differential resource is designed through a visual designer. 7.根据权利要求1或2所述的实现方法,其特征在于,所述差量资源基于统一对象模型。7. The implementation method according to claim 1 or 2, characterized in that, the differential resource is based on a unified object model. 8.根据权利要求1或2所述的实现方法,其特征在于,所述差量资源为文本流。8. The implementation method according to claim 1 or 2, wherein the differential resource is a text stream. 9.根据权利要求1或2所述的实现方法,其特征在于,所述差量资源宿主在文件、数据库或文件服务器中。9. The implementation method according to claim 1 or 2, characterized in that, the differential resource is hosted in a file, a database or a file server. 10.根据权利要求1或2所述的实现方法,其特征在于,所述差量资源与所述原生配置资源之间、所述差量资源彼此间相耦合。10. The implementation method according to claim 1 or 2, wherein the delta resource is coupled to the native configuration resource, and the delta resource is coupled to each other. 11.根据权利要求1或2所述的实现方法,其特征在于,所述差量资源支持多语言。11. The implementation method according to claim 1 or 2, characterized in that the differential resource supports multiple languages. 12.根据权利要求11所述的实现方法,其特征在于,具有同一语言类型的所述差量资源集中放置。12. The implementation method according to claim 11, characterized in that the difference resources with the same language type are placed centrally. 13.根据权利要求1或2所述的实现方法,其特征在于,所述软件系统为企业资源计划系统。13. The implementation method according to claim 1 or 2, characterized in that the software system is an enterprise resource planning system.
CN2011104582012A 2011-12-31 2011-12-31 Realization method for differentiation of software system Pending CN103186379A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2011104582012A CN103186379A (en) 2011-12-31 2011-12-31 Realization method for differentiation of software system
TW101123082A TWI467482B (en) 2011-12-31 2012-06-27 A method for software system differentiation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011104582012A CN103186379A (en) 2011-12-31 2011-12-31 Realization method for differentiation of software system

Publications (1)

Publication Number Publication Date
CN103186379A true CN103186379A (en) 2013-07-03

Family

ID=48677558

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011104582012A Pending CN103186379A (en) 2011-12-31 2011-12-31 Realization method for differentiation of software system

Country Status (2)

Country Link
CN (1) CN103186379A (en)
TW (1) TWI467482B (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040002982A1 (en) * 2002-06-27 2004-01-01 Ersek Richard A. Dynamic metabase store
CN101593118A (en) * 2009-02-24 2009-12-02 浪潮集团山东通用软件有限公司 A kind of software upgrade method flexibly
CN102023886A (en) * 2010-12-27 2011-04-20 北京像素软件科技股份有限公司 Resource differential processing method for data in software

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW594575B (en) * 2003-04-25 2004-06-21 Data Systems Consulting Co Ltd Facile object attributes defining method
WO2010030284A1 (en) * 2008-09-12 2010-03-18 Hewlett-Packard Development Company, L.P. System and method for customizing a computer system
TW201123010A (en) * 2009-12-31 2011-07-01 Welink Solutions Inc Updating method of customized-design software source code.

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040002982A1 (en) * 2002-06-27 2004-01-01 Ersek Richard A. Dynamic metabase store
CN101593118A (en) * 2009-02-24 2009-12-02 浪潮集团山东通用软件有限公司 A kind of software upgrade method flexibly
CN102023886A (en) * 2010-12-27 2011-04-20 北京像素软件科技股份有限公司 Resource differential processing method for data in software

Also Published As

Publication number Publication date
TW201327384A (en) 2013-07-01
TWI467482B (en) 2015-01-01

Similar Documents

Publication Publication Date Title
US12379908B2 (en) Systems and methods for code clustering analysis and transformation
US11789715B2 (en) Systems and methods for transformation of reporting schema
US11188319B2 (en) Systems and methods for entry point-based code analysis and transformation
US20230244476A1 (en) Systems and methods for code analysis heat map interfaces
US20230244465A1 (en) Systems and methods for automated retrofitting of customized code objects
US7739267B2 (en) Classification and sequencing of mixed data flows
US7689582B2 (en) Data flow system and method for heterogeneous data integration environments
CN103778107B (en) Method and platform for quickly and dynamically generating form based on EXCEL
US9542469B2 (en) Data warehouse data model adapters
US10228933B2 (en) Resource deployment based on conditions
US9053443B2 (en) Adaptive customized presentation of business intelligence information
US20100228764A1 (en) Offline Validation of Data in a Database System for Foreign Key Constraints
US12159104B2 (en) Describing changes in a workflow based on changes in structured documents containing workflow metadata
US20170090892A1 (en) Systems and methods for dynamically replacing code objects for code pushdown
US20170220613A1 (en) Systems and methods for database orientation transformation
CN115686487A (en) Business logic arrangement method and device, electronic equipment and storage medium
CN103186379A (en) Realization method for differentiation of software system
US20140068425A1 (en) System and method of modifying order and structure of a template tree of a document type by splitting component of the template tree
CN109033474A (en) A kind of method, apparatus and controlled terminal of extension Webservice interface calling

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20130703