TWI467482B - A method for software system differentiation - Google Patents

A method for software system differentiation Download PDF

Info

Publication number
TWI467482B
TWI467482B TW101123082A TW101123082A TWI467482B TW I467482 B TWI467482 B TW I467482B TW 101123082 A TW101123082 A TW 101123082A TW 101123082 A TW101123082 A TW 101123082A TW I467482 B TWI467482 B TW I467482B
Authority
TW
Taiwan
Prior art keywords
resource
configuration
difference
software system
implementation method
Prior art date
Application number
TW101123082A
Other languages
Chinese (zh)
Other versions
TW201327384A (en
Inventor
Bing Li
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
Publication of TW201327384A publication Critical patent/TW201327384A/en
Application granted granted Critical
Publication of TWI467482B publication Critical patent/TWI467482B/en

Links

Description

一種軟體系統差異化的實現方法A method for realizing software system differentiation

本發明是有關於一種實現方法,且特別是有關於一種軟體系統差異化的實現方法。The present invention relates to an implementation method, and in particular to a method for implementing software system differentiation.

當前,對於軟體產品,其大規模開發一般要求標準化,同時又必須具備高度的可客製化(customization),為不同客戶提供有差別的服務和功能,這在客觀上要求軟體產品必須差異化。另,軟體產品的本身功能隨著產品的不斷演化,則將面臨有些功能需要增加、而有些功能需要取消的問題,傳統的做法通常是由軟體發展商修改原有程式碼,或通過插件(plug-in)、配置(configuration)等手段來解決此問題。但是,通過軟體發展商來修改原有程式碼,將經過漫長的發佈流程;而插件雖然可以解決此問題,但是插件易帶來粒度(granularity)過大問題;而對於採用配置來解決此問題,其在實體上與功能上所使用的技術手段不同,則對技術要求較高,進而不易於維護。At present, for software products, large-scale development generally requires standardization, and at the same time, it must have a high degree of customization, providing differentiated services and functions for different customers, which objectively requires that software products must be differentiated. In addition, as the product itself continues to evolve, it will face the problem that some functions need to be added, and some functions need to be canceled. The traditional practice is usually to modify the original code by the software developer, or through a plug-in. -in), configuration, etc. to solve this problem. However, modifying the original code through the software developer will go through a long release process; while the plug-in can solve this problem, the plug-in is easy to bring too much granularity; and to adopt the configuration to solve this problem, Different from the technical means used in the function, the technical requirements are high, and thus it is not easy to maintain.

此外,在軟體使用過程中,當客戶需要在軟體上增加一些簡單的功能,一般仍需要給軟體發展商來完成,這將造成一定的時間差,從而使客戶不能更快地使用軟體功能,進而造成客戶價值的損失。In addition, in the process of using the software, when the customer needs to add some simple functions to the software, it still needs to be completed by the software developer, which will cause a certain time difference, so that the customer cannot use the software function more quickly, thereby causing Loss of customer value.

有鑒於此,如何設計一種軟體系統差異化的實現方法,以實現軟體系統的功能可作任意變更而具有可擴展性,並且易於維護及提高客戶效益,是業內相關技術人員 亟待解決的一技術問題。In view of this, how to design a software system differentiation implementation method, to realize the function of the software system can be arbitrarily changed and scalable, and easy to maintain and improve customer benefits, is the relevant technical staff in the industry A technical problem that needs to be solved urgently.

為了解決上述技術問題,本發明提出了一種軟體系統差異化的實現方法,包含:(a)定義一原生配置資源(configuration resource),原生配置資源對應於一軟體系統的預先配置。(b)定義一個或多個差量資源,差量資源與軟體系統的配置變更相關。(c)將原生配置資源與差量資源作用於軟體系統以生成一新物件(object)。In order to solve the above technical problem, the present invention provides a method for implementing software system differentiation, comprising: (a) defining a native configuration resource, the native configuration resource corresponding to a pre-configuration of a software system. (b) Defining one or more delta resources related to configuration changes of the software system. (c) Applying native configuration resources and differential resources to the software system to generate a new object.

在本發明的一實施方式中,步驟(c)包含:(c1)從不同物理位置和配置資源宿主(host)掃描配置資源並形成一離散配置資源集合;(c2)對離散配置資源集合進行排序以生成一排序配置資源集合,繼而分辨出原生配置資源和差量配置資源;以及(c3)讀取排序配置資源集合並解析差量資源以對原生配置資源進行一變更操作。In an embodiment of the invention, step (c) comprises: (c1) scanning configuration resources from different physical locations and configuration resource hosts and forming a discrete configuration resource set; (c2) sorting the discrete configuration resource sets Generating a sorted configuration resource set, and then distinguishing the native configuration resource and the differential configuration resource; and (c3) reading the sort configuration resource set and parsing the difference resource to perform a change operation on the native configuration resource.

在本發明的一實施方式中,原生配置資源包含多個獨立包裝(package)的子原生配置資源。In an embodiment of the invention, the native configuration resource includes a plurality of sub-native configuration resources of separate packages.

在本發明的一實施方式中,子原生配置資源對應於軟體系統的易變功能。In an embodiment of the invention, the child native configuration resource corresponds to a variable function of the software system.

在本發明的一實施方式中,差量資源包含基礎物件(object)、謂詞(predicate)及資料,其中基礎物件用以定義變更操作的目標,謂詞用以定義變更操作的動作,資料用以定義變更操作的內容。In an embodiment of the invention, the delta resource includes a base object, a predicate, and a data, wherein the base object is used to define a target of the change operation, and the predicate is used to define an action of the change operation, and the data is used to define Change the content of the operation.

在本發明的一實施方式中,差量資源透過一視覺化設 計器設計而成。In an embodiment of the invention, the differential resource is transmitted through a visual design The meter is designed.

在本發明的一實施方式中,差量資源基於統一物件模型。In an embodiment of the invention, the delta resource is based on a unified object model.

在本發明的一實施方式中,差量資源為文本流(textstream)。In an embodiment of the invention, the delta resource is a text stream.

在本發明的一實施方式中,差量資源宿主在文件、資料庫或文件伺服器中。In an embodiment of the invention, the delta resource is hosted in a file, database or file server.

在本發明的一實施方式中,差量資源與原生配置資源之間、差量資源彼此間相耦合。In an embodiment of the invention, the delta resource and the native configuration resource and the delta resource are coupled to each other.

在本發明的一實施方式中,差量資源支援多語言。In an embodiment of the present invention, the differential resource supports multiple languages.

在本發明的一實施方式中,具有同一語言類型的差量資源集中放置。In an embodiment of the invention, the delta resources having the same language type are placed in a centralized manner.

在本發明的一實施方式中,軟體系統為企業資源規劃系統。In an embodiment of the invention, the software system is an enterprise resource planning system.

綜上,本發明所提出的一種軟體系統差異化的實現方法,通過所定義的原生配置資源與一個或多個差量資源形成新物件,而當執行軟體系統時,其調用新物件,則可實現軟體系統的新功能,使軟體系統具有較好可擴展性。而對於軟體系統的一些易變功能進行單獨包裝,這簡化了後續的功能變更的操作。採用視覺化設計器來設置差量資源,而對於軟體系統的一些簡單功能變更,客戶可以直接透過視覺化設計器來設計差量資源,進而實現軟體系統的功能變更,而不需給軟體發展商來完成功能變更,從而可以節省時間,進而提高效益。In summary, a method for implementing software system differentiation according to the present invention forms a new object by using a defined original configuration resource and one or more difference resources, and when the software system is executed, when a new object is invoked, Realize the new functions of the software system, so that the software system has better scalability. The separate packaging of the software system's variability is simplified, which simplifies subsequent functional changes. The visual designer is used to set the difference resources, and for some simple functional changes of the software system, the customer can directly design the differential resources through the visual designer, thereby implementing the functional changes of the software system without the need for the software developer. Complete functional changes to save time and increase efficiency.

為使本發明所提出的技術方案更加清楚,下面將結合附圖對本發明作進一步地詳細描述。In order to make the technical solutions proposed by the present invention clearer, the present invention will be further described in detail below with reference to the accompanying drawings.

關於本文中所出現的「原生配置資源」,是指標準軟體系統所具有的配置資源,其可以泛指軟體系統的所有配置資源的集合,也可以特指所有配置資源中的任一分配置資源。The "native configuration resource" that appears in this document refers to the configuration resource of the standard software system. It can refer to the collection of all configuration resources of the software system, and can also refer to any of the configuration resources of all configuration resources. .

請參照第1圖,其繪示本發明一實施方式的軟體系統差異化的實現方法的流程示意圖。Please refer to FIG. 1 , which is a schematic flowchart diagram of a method for implementing 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 (ERP) system, but not limited thereto, and may be other application software. The native configuration resource, which is the pre-configured resource of the software system, can be determined in the early development of the software system, specifically, which configuration resources are needed according to the functions required by the software system in the early stage.

之後,在步驟120中,定義一個或多個差量資源,其中,差量資源與軟體系統的配置變更相關。具體而言,雖然軟體系統已形成上述之原生配置資源,但是,當軟體系統需要功能變更時,比如需要為不同客戶提供不同服務而使所提供的軟體系統所具有的軟體功能將作一定的調整、或軟體系統本身需要增加或取消某些功能時,顯然,如果 軟體系統只配置原生配置資源可能將不符要求,則此時軟體系統的配置需要作一定變更,即需要對原生配置資源進行變更,於此,在本實施方式中,提出了差量資源這一概念,此差量資源與軟體系統的功能變更(配置變更)相關。在本實施方式中,每一差量資源由基礎物件、謂詞及資料所組成,基礎物件用以定義原生配置資源中的需要進行變更操作的目標,此變更操作的目標可以是,比如原生配置資源中的物件(object)或屬性(property),但不以此為限,而謂詞是用以定義此變更操作的具體動作,比如增加(add)、修改(edit)及刪除(remove)等,資料用以定義此變更操作的具體內容,比如對原生配置資源中的物件或屬性的具體賦值。此外,差量資源與原生配置資源、各差量資源彼此間在邏輯上需相互耦合(coupled);對於差量資源與原生配置資源之間的相互耦合,由於差量資源中具有基礎物件,而此基礎物件可以是對應于原生配置資源中的物件或屬性,由此可知差量資源與原生配置資源在邏輯上相耦合;而對於差量資源彼此間需要相耦合,比如,一個差量資源的含義是對原生配置資源中的一屬性進行刪除,而另一個差量資源的含義是針對此屬性進行修改其屬性值,顯然,此時的兩差量資源在邏輯有先後關係,因此,在本實施方式中,各差量資源彼此間相耦合。Thereafter, 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 native configuration resources, when the software system needs a function change, for example, different services need to be provided for different customers, the software functions of the provided software system will be adjusted. , or when the software system itself needs to add or cancel certain features, obviously if If the software system only configures the native configuration resources, it may not meet the requirements. In this case, the configuration of the software system needs to be changed, that is, the original configuration resources need to be changed. In this embodiment, the concept of the differential resources is proposed. This difference resource is related to the function change (configuration change) of the software system. In this embodiment, each delta resource is composed of a base object, a predicate, and a data, and the base object is used to define a target in the native configuration resource that needs to be changed. The target of the change operation may be, for example, a native configuration resource. Object or property, but not limited to it, and the predicate is used to define the specific actions of the change operation, such as add, modify, and delete. Used to define the specific content of this change operation, such as the specific assignment of objects or attributes in the native configuration resource. In addition, the difference resources and the original configuration resources and the difference resources are logically coupled to each other; for the mutual coupling between the difference resources and the original configuration resources, since the difference resources have the basic objects, The base object may be an object or attribute corresponding to the native configuration resource, so that the difference resource is logically coupled with the native configuration resource; and the differential resources need to be coupled to each other, for example, a differential resource. The meaning is to delete an attribute in the native configuration resource, and the meaning of another difference resource is to modify the attribute value of the attribute. Obviously, the two difference resources in this time have a logical relationship, therefore, in this In an embodiment, the delta resources are coupled to each other.

繼而,在步驟130中,將原生配置資源與差量資源作用於軟體系統以生成一新物件。具體可參照下述。Then, in step 130, the native configuration resource and the differential resource are applied to the software system to generate a new object. For details, refer to the following.

再請參照第2圖,其繪示第1圖所述之步驟130的具 體流程示意圖。Referring to FIG. 2 again, the device of step 130 described in FIG. 1 is illustrated. Schematic diagram of the body flow.

在步驟132中,從不同物理位置和配置資源宿主掃描配置資源並形成一離散配置資源集合。在本實施方式中,掃描配置資源,即為透過掃描器、掃描手段或工具(例如:具掃描功能的設計介面等)從不同物理位置和配置資源宿主讀取配置資源,並生成一離散配置資源集合。In step 132, the configuration resources are scanned from different physical locations and configuration resource hosts and a discrete set of configuration resources is formed. In this embodiment, the configuration resource is scanned, that is, the configuration resource is read from different physical locations and the configuration resource host through a scanner, a scanning means or a tool (for example, a design interface with a scanning function, etc.), and a discrete configuration resource is generated. set.

在步驟134中,對離散配置資源集合進行排序以生成一已排序配置資源集合,並分辨出原生配置資源和差量配置資源。在本實施方式中,可以通過一排序器對離散配置資源參照層次等級進行排序,進而產生有序的排序配置資源集合。In step 134, the discrete configuration resource set is sorted to generate a sorted configuration resource set, and the native configuration resource and the delta configuration resource are distinguished. In this embodiment, the discrete configuration resource reference hierarchy levels may be sorted by a sequencer to generate an ordered set of ordered configuration resources.

在步驟136中,讀取排序配置資源集合並解析差量資源以對原生配置資源進行一變更操作。在本實施方式中,可以通過一序列器/反序列器來讀取排序配置資集合,當讀取到原生配置資源中與差量資源的基礎物件相匹配的變更操作目標時,那麽將對差量資源中的謂詞(變更操作的動作)進行解析,即執行動作,當執行完動作後,原生配置資源中需變更的目標已作變更。原生配置與差量叠量叠加的過程,功能作用在同一物件上,而產生新物件。In step 136, the ordered configuration resource set is read and the delta resource is parsed to perform a change operation on the native configuration resource. In this embodiment, the sequence configuration resource set can be read by a sequencer/deserializer, and when the change operation target matching the basic object of the difference resource in the native configuration resource is read, then the difference is The predicate (the action of the change operation) in the quantity resource is parsed, that is, the action is executed, and when the action is executed, the target to be changed in the original configuration resource has been changed. The process of superimposing the original configuration and the differential overlap, the function acts on the same object, and a new object is generated.

另,下表列出了本實施方式中的多個動作的具體含義,參照如下: In addition, the following table lists the specific meanings of the multiple actions in this embodiment, as follows:

需說明的是,表一中的Add、Edit及Remove三動作是對原生配置資源中的物件(object)進行操作,另外SetValue、ResetValue及SetNull三動作是對原生配置資源中的屬性(property)進行操作。It should be noted that the Add, Edit, and Remove actions in Table 1 operate on the object in the native configuration resource, and the SetValue, ResetValue, and SetNull actions are performed on the properties in the native configuration resource. operating.

為了更好地理解本發明的實施方式,下面結合一具體例子來作進一步說明。In order to better understand the embodiments of the present invention, further details are described below in conjunction with a specific example.

例一:假如標準軟體產品中對公司COMPANY的實體定義中僅有一個FAX欄位,而現在客戶希望增加FAX2欄位元來存儲額外的傳真號碼,同時還希望修改原有的FAX欄位名稱為FAX1。Example 1: If there is only one FAX field in the entity definition of the company COMPANY in the standard software product, now the customer wants to add the FAX2 field to store the extra fax number, and also wants to modify the original FAX field name to FAX1.

解決方案如下:首先,在標準軟體產品中,定義一原生配置資源,在 本例中,即定義一原生實體COMPANY,並在此原生實體COMPANY中定義若干屬性成員,如:CODE、FAX或其他屬性。然後,應客戶要求,需要將實體COMPANY的屬性FAX變成FAX1與FAX2時,則需定義差量資源,這裏,定義一差量實體,此差量實體的基礎物件(變更操作的目標)為COMPANY、謂詞(變更操作的動作)為Edit,表明對COMPANY基礎物件進行修改操作。同時,在差量實體上定義屬性FAX1和FAX2,謂詞為Add,即增加屬性FAX1、FAX2,需說明的是,這裏也可以不提供謂詞Add,因當發現在原生配置資源中不存在所定義的屬性FAX1和FAX2時,則隱式(implicit)約定為Add動作;此外,還在差量實體上增加FAX屬性的差量定義,此差量的基礎物件為屬性FAX,謂詞為Remove,此差量的目的是移除FAX。之後,將定義的差量資源載入在原生配置資源上,具體過程可參照上述,在此不再贅述,當定義的差量資源載入在原生配置資源上後,則可生成新物件,即此新物件的實體COMPANY具有屬性FAX1與FAX2,符合客戶需求。The solution is as follows: First, in the standard software product, define a native configuration resource, In this case, a native entity COMPANY is defined, and several attribute members, such as CODE, FAX, or other attributes, are defined in this native entity COMPANY. Then, at the request of the customer, when the attribute FAX of the entity COMPANY needs to be changed into FAX1 and FAX2, the difference resource needs to be defined. Here, a difference entity is defined, and the basic object of the difference entity (the target of the change operation) is COMPANY, The predicate (the action of the change operation) is Edit, which indicates that the COM fundamental base object is modified. At the same time, the attributes FAX1 and FAX2 are defined on the difference entity, and the predicate is Add, that is, the attributes FAX1 and FAX2 are added. It should be noted that the predicate Add may not be provided here, because it is found that there is no defined in the original configuration resource. When the attributes FAX1 and FAX2 are used, the implicit convention is the Add action. In addition, the difference definition of the FAX attribute is also added to the difference entity. The base object of the difference is the attribute FAX, and the predicate is Remove. The purpose is to remove the FAX. After that, the defined difference resource is loaded into the original configuration resource. For the specific process, reference may be made to the above, and details are not described herein. When the defined difference resource is loaded on the original configuration resource, a new object may be generated, that is, The entity COMPANY of this new object has the attributes FAX1 and FAX2, which meet the customer's needs.

由上可知,當各差量資源解析完後,即執行完所有動作後,那麽此時原生配置資源已變更,從而生成了新物件,而當軟體系統再運行時,其調用的是新物件,藉此,可使軟體系統達成新的功能。It can be seen from the above that after all the difference resources are parsed, that is, after all the actions are performed, then the native configuration resource has been changed, and a new object is generated, and when the software system is re-run, it calls a new object. In this way, the software system can achieve new functions.

較佳地,在本實施方式中,對軟體系統中的一些易變功能進行單獨包裝,相應地,原生配置資源可以包含多個單獨包裝的子原生配置資源,這些子原生配置資源分別對應於軟體系統的易變功能,藉此,可降低粒度,利於後續 對原生配置資源進行變更操作。根據此原理,也可以將軟體系統的複雜的功能變更集合,拆分成若干個相互獨立的差量資源來實現,保持了各功能變更的簡單性,使軟體系統更易維護。Preferably, in this embodiment, some variability functions in the software system are separately packaged. Accordingly, the native configuration resource may include a plurality of separately packaged sub-native configuration resources, where the sub-native configuration resources respectively correspond to the software. The variability of the system, thereby reducing the granularity and facilitating subsequent Perform changes to the native configuration resources. According to this principle, the complex function change set of the software system can also be split into a plurality of mutually independent differential resources, which maintains the simplicity of each function change and makes the software system easier to maintain.

較佳地,在本實施方式中,差量資源可以透過一視覺化設計器來設計,這將便於軟體系統的開發人員或維護人員對差量資源的設計,尤其對於軟體系統一些簡單功能變更,則軟體系統的客戶可以直接透過視覺化設計器設計差量資源,以對軟體系統的原生配置資源進行變更,進而使軟體系統實現新功能,而不需等待軟體系統的開發人員或維護人員來對軟體系統進行變更,從而節省了時間。另,在本實施方式中,各差量資源基於統一物件模型。再,在本實施方式中,差量資源可以是一文本流,但不以此為限。此外,差量資源可以宿主在文件或資料庫中,即,差量資源的宿主不僅支援文件方式,還支援資料庫方式,但不以此為限,差量資源也可以宿主在其他類型載體上,比如文件伺服器中。Preferably, in the embodiment, the differential resource can be designed through a visual designer, which will facilitate the design of the differential resources by the software system developer or maintenance personnel, especially for the simple function change of the software system. Software system customers can design differential resources directly through the visual designer to change the native configuration resources of the software system, so that the software system can achieve new functions without waiting for the software system developers or maintenance personnel to The software system changes, saving time. In addition, in the present embodiment, each difference resource is based on a unified object model. Furthermore, in this embodiment, the delta resource may be a text stream, but is not limited thereto. In addition, the differential resources can be hosted in a file or database, that is, the host of the differential resources not only supports the file mode, but also supports the database mode, but not limited thereto, the differential resources can also be hosted on other types of carriers. , such as in the file server.

較佳地,在本實施方式中,差量資源可以支援多語言,並且,對於同一語言類型的差量資源集中放置在一起,這適用於具有多語言版本的軟體系統。在實務上,同一軟體系統,由於其可能在不同國家或地區使用,其可能具有多語言版本,比如簡體中文、繁體中文或英文版本,為了與此情形相吻合,則差量資源也可以支援多語言,但是,需強調的是,差量資源也可以不支援多語言,而僅僅支援單一語言,這可以根據軟體系統靈活確定。另,當差量資源 支援多語言時,則可以將同一語言的差量配置集中放在一起。再,縱使差量資源支援多語言,但也可以在原生配置資源中設定條件來判斷是否支援多語言,而當原生配置資源中的變更操作的目標不支援多語言時,則在執行變更操作時,不載入多語言差量資源,只載入單一語言的差量資源。Preferably, in the present embodiment, the differential resource can support multiple languages, and the differential resources of the same language type are collectively placed together, which is applicable to a software system having a multi-language version. In practice, the same software system, because it may be used in different countries or regions, may have multi-language versions, such as Simplified Chinese, Traditional Chinese or English versions. In order to match this situation, the differential resources can also support multiple Language, 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. Also, when the difference resources When multiple languages are supported, you can put together the difference configurations in the same language. Further, even if the differential resource supports multiple languages, it is also possible to determine whether or not to support multi-language by setting conditions in the native configuration resource, and when the target of the change operation in the native configuration resource does not support multi-language, when performing the change operation , does not load multi-language difference resources, only load differential resources in a single language.

綜上,本發明所提出的一種軟體系統差異化的實現方法,通過所定義的原生配置資源與一個或多個差量資源形成新物件,而當執行軟體系統時,其調用新物件,則可實現軟體系統的新功能,使軟體系統具有較好可擴展性。而對於軟體系統的一些易變功能進行單獨包裝,這簡化了後續的功能變更的操作。採用視覺化設計器來設置差量資源,而對於軟體系統的一些簡單功能變更,客戶可以直接透過視覺化設計器來設計差量資源,進而實現軟體系統的功能變更,而不需給軟體發展商來完成功能變更,從而可以節省時間,進而提高效益。In summary, a method for implementing software system differentiation according to the present invention forms a new object by using a defined original configuration resource and one or more difference resources, and when the software system is executed, when a new object is invoked, Realize the new functions of the software system, so that the software system has better scalability. The separate packaging of the software system's variability is simplified, which simplifies subsequent functional changes. The visual designer is used to set the difference resources, and for some simple functional changes of the software system, the customer can directly design the differential resources through the visual designer, thereby implementing the functional changes of the software system without the need for the software developer. Complete functional changes to save time and increase efficiency.

雖然本發明已以實施方式揭露如上,然其並非用以限定本發明,任何熟習此技藝者,在不脫離本發明之精神和範圍內,當可作各種之更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。Although the present invention has been disclosed in the above embodiments, it is not intended to limit the present invention, and the present invention can be modified and modified without departing from the spirit and scope of the present invention. The scope is subject to the definition of the scope of the patent application attached.

110‧‧‧步驟110‧‧‧Steps

120‧‧‧步驟120‧‧‧Steps

130‧‧‧步驟130‧‧‧Steps

132‧‧‧步驟132‧‧‧Steps

134‧‧‧步驟134‧‧‧Steps

136‧‧‧步驟136‧‧ steps

為讓本發明之上述和其他目的、特徵、優點與實施例能更明顯易懂,所附圖式之說明如下:第1圖係繪示本發明一實施方式的軟體系統差異化的 實現方法的流程示意圖。The above and other objects, features, advantages and embodiments of the present invention will become more <RTIgt; A schematic diagram of the process of implementing the method.

第2圖係繪示第1圖所述之步驟130的具體流程示意圖。FIG. 2 is a schematic flow chart showing the step 130 of FIG. 1 .

110‧‧‧步驟110‧‧‧Steps

120‧‧‧步驟120‧‧‧Steps

130‧‧‧步驟130‧‧‧Steps

Claims (13)

一種軟體系統差異化的實現方法,包含:(a)定義一原生配置資源,該原生配置資源對應於一軟體系統的預先配置;(b)定義至少一差量資源,該差量資源與該軟體系統的配置變更相關;以及(c)將該原生配置資源與該差量資源作用於該軟體系統以生成一新物件。A method for implementing software system differentiation includes: (a) defining a native configuration resource, the native configuration resource corresponding to a pre-configuration of a software system; (b) defining at least one difference resource, the difference resource and the software And (c) applying the native configuration resource and the difference resource to the software system to generate a new object. 如請求項1所述之實現方法,其中步驟(c)更包含:(c1)從不同物理位置和配置資源宿主掃描配置資源並形成一離散配置資源集合;(c2)對該離散配置資源集合進行排序以生成一排序配置資源集合並分辨出該原生配置資源和該差量配置資源;以及(c3)讀取該排序配置資源集合並解析該差量資源以對該原生配置資源進行一變更操作。The implementation method of claim 1, wherein the step (c) further comprises: (c1) scanning configuration resources from different physical locations and configuring resource hosts and forming a discrete configuration resource set; and (c2) performing the discrete configuration resource set. Sorting to generate a sorted configuration resource set and distinguishing the native configuration resource from the delta configuration resource; and (c3) reading the sort configuration resource set and parsing the delta resource to perform a change operation on the native configuration resource. 如請求項1或2所述之實現方法,其中該原生配置資源包含複數個獨立包裝的子原生配置資源。The implementation method of claim 1 or 2, wherein the native configuration resource comprises a plurality of independently wrapped sub-native configuration resources. 如請求項3所述之實現方法,其中該子原生配置資源對應於該軟體系統的易變功能。The implementation method of claim 3, wherein the sub-native configuration resource corresponds to a variable function of the software system. 如請求項2所述之實現方法,其中該差量資源包含:一基礎物件,用以定義該變更操作的目標;一謂詞,用以定義該變更操作的動作;以及一資料,用以定義該變更操作的內容。 The implementation method of claim 2, wherein the difference resource comprises: a base object for defining a target of the change operation; a predicate for defining an action of the change operation; and a data for defining the Change the content of the operation. 如請求項1或2所述之實現方法,其中該差量資源透過一視覺化設計器設計而成。 The implementation method of claim 1 or 2, wherein the difference resource is designed through a visual designer. 如請求項1或2所述之實現方法,其中該差量資源基於統一物件模型。 The implementation method of claim 1 or 2, wherein the difference resource is based on a unified object model. 如請求項1或2所述之實現方法,其中差量資源為文本流。 The implementation method of claim 1 or 2, wherein the difference resource is a text stream. 如請求項1或2所述之實現方法,其中該差量資源在文件、資料庫或文件伺服器中。 The implementation method of claim 1 or 2, wherein the delta resource is in a file, a database, or a file server. 如請求項1或2所述之實現方法,其中該差量資源與該原生配置資源之間、該差量資源彼此間相耦合。 The implementation method of claim 1 or 2, wherein the difference resource and the difference configuration resource are coupled to each other. 如請求項1或2所述之實現方法,其中該差量資源支援至少一種語言。 The implementation method of claim 1 or 2, wherein the delta resource supports at least one language. 如請求項11所述之實現方法,其中具有同一語言類型的該差量資源集中放置。The implementation method of claim 11, wherein the difference resources having the same language type are placed in a centralized manner. 如請求項1或2所述之實現方法,其中該軟體系統為企業資源規劃系統。The implementation method of claim 1 or 2, wherein the software system is an enterprise resource planning system.
TW101123082A 2011-12-31 2012-06-27 A method for software system differentiation TWI467482B (en)

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 (2)

Publication Number Publication Date
TW201327384A TW201327384A (en) 2013-07-01
TWI467482B true TWI467482B (en) 2015-01-01

Family

ID=48677558

Family Applications (1)

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

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
TW200422956A (en) * 2003-04-25 2004-11-01 Data Systems Consulting Co Ltd Facile object attributes defining method
US20110156880A1 (en) * 2008-09-12 2011-06-30 Paul T Rygaard 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.

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6990656B2 (en) * 2002-06-27 2006-01-24 Microsoft Corporation Dynamic metabase store
CN101593118B (en) * 2009-02-24 2013-01-16 浪潮集团山东通用软件有限公司 Software-upgrading method
CN102023886B (en) * 2010-12-27 2013-01-09 北京像素软件科技股份有限公司 Resource differential processing method for data in software

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200422956A (en) * 2003-04-25 2004-11-01 Data Systems Consulting Co Ltd Facile object attributes defining method
US20110156880A1 (en) * 2008-09-12 2011-06-30 Paul T Rygaard 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.

Also Published As

Publication number Publication date
TW201327384A (en) 2013-07-01
CN103186379A (en) 2013-07-03

Similar Documents

Publication Publication Date Title
US7689582B2 (en) Data flow system and method for heterogeneous data integration environments
US9727604B2 (en) Generating code for an integrated data system
US20220253298A1 (en) Systems and methods for transformation of reporting schema
JP6698656B2 (en) Compile graph-based program specifications
JP6688285B2 (en) Executing graph-based program specifications
US9063746B2 (en) Deployment of software applications on a cloud computing platform
US9052907B2 (en) Selective change propagation techniques for supporting partial roundtrips in model-to-model transformations
US8321834B2 (en) Framework for automatically merging customizations to structured code that has been refactored
US9959098B1 (en) Data processing systems and methods
US9547480B2 (en) Generating application model build artifacts
US11429365B2 (en) Systems and methods for automated retrofitting of customized code objects
US20150234653A1 (en) Resource deployment based on conditions
JP5161535B2 (en) Coordinator server and distributed processing method
WO2011006425A1 (en) Method and platform for integrating a heterogeneous collaborative design system of work group and product lifecycle management system
US11468229B2 (en) Describing changes in a workflow based on changes in structured documents containing workflow metadata
US8584080B2 (en) Modeling and generating computer software product line variants
Remenska et al. From UML to process algebra and back: An automated approach to model-checking software design artifacts of concurrent systems
US20130254757A1 (en) Nesting installations of software products
CN109284469B (en) Webpage development framework
US20200192891A1 (en) Core data service view template
TWI467482B (en) A method for software system differentiation
TW201448544A (en) Message exchange via generic TLV generator and parser
CN110442331B (en) Method and system for automatically building code frame
Le Zou et al. On synchronizing with web service evolution
KR20130068601A (en) Apparatus and method for dynamic customization and execution of query based software logic for multitenant