TWI530873B - A configuration method and system - Google Patents

A configuration method and system Download PDF

Info

Publication number
TWI530873B
TWI530873B TW101123084A TW101123084A TWI530873B TW I530873 B TWI530873 B TW I530873B TW 101123084 A TW101123084 A TW 101123084A TW 101123084 A TW101123084 A TW 101123084A TW I530873 B TWI530873 B TW I530873B
Authority
TW
Taiwan
Prior art keywords
level
configuration
software system
expansion
software
Prior art date
Application number
TW101123084A
Other languages
Chinese (zh)
Other versions
TW201327395A (en
Inventor
李兵
Original Assignee
鼎捷軟件股份有限公司
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 鼎捷軟件股份有限公司 filed Critical 鼎捷軟件股份有限公司
Publication of TW201327395A publication Critical patent/TW201327395A/en
Application granted granted Critical
Publication of TWI530873B publication Critical patent/TWI530873B/en

Links

Landscapes

  • Stored Programmes (AREA)

Description

一種配置方法及配置系統 Configuration method and configuration system

本發明是有關於軟體系統,且特別是有關於軟體系統的配置方法及配置系統。 The present invention relates to software systems, and more particularly to a method and a system for configuring a software system.

在複雜的軟體系統中,通常都有兩個以上的物件(object)相互作用來完成軟體功能,每個物件都要自己獲得能夠讓本身工作的資料或物件,這些資料或物件就是依賴項。這樣就導致軟體系統耦合度(coupled)非常高,而且難以維護,為此提出了依賴注射(Dependency Injection,DI)的概念,其通過外部定義的方式避免物件和物件之間的過度耦合。此外,通常採用配置(configuration)的方式來提高軟體系統的靈活性,以文件方式定義外部資料或物件結構。 In a complex software system, there are usually more than two object interactions to complete the software function. Each object must obtain its own data or objects that can work for itself. These materials or objects are dependencies. This leads to a very high degree of coupled system software and is difficult to maintain. To this end, a concept of Dependency Injection (DI) is proposed, which avoids excessive coupling between objects and objects by externally defined methods. In addition, the configuration is usually used to improve the flexibility of the software system, and the external data or object structure is defined by file.

但是,現有的配置系統一般是單層的結構,由於軟體系統的升級和演化,會產生不同的分支,單層結構在產品不斷演化的過程中,無論何種演化方式,都會只對同一配置文件或單元進行修改,這將造成配置系統無法保持相對穩定,從而造成配置系統在管理、維護和應用方面的不便。並且,單層結構中,配置文件的載體單一及儲存位置單一,這分別影響其相容性與擴展性。 However, the existing configuration system is generally a single-layer structure. Due to the upgrade and evolution of the software system, different branches will be generated. In the process of continuous evolution of the product, no matter what evolution mode, only the same configuration file will be used. Or the unit is modified, which will make the configuration system unable to remain relatively stable, which will cause inconvenience in the management, maintenance and application of the configuration system. Moreover, in the single-layer structure, the carrier of the configuration file is single and the storage location is single, which affects its compatibility and scalability.

有鑒於此,如何設計一種配置方法及配置系統,以使配置系統便於管理、維護,及提高其擴展性與相容性,是業內相關技術人員亟待解決的一技術問題。 In view of this, how to design a configuration method and configuration system to make the configuration system easy to manage, maintain, and improve its scalability and compatibility is a technical problem to be solved by relevant technical personnel in the industry.

為了解決上述技術問題,本發明一方面提出了一種配置方法,用於一軟體系統中,且於執行所述軟體系統時參照(reference)一配置系統,包括以下步驟:分析所述軟體系統的演化;以及根據分析的結果對所述配置系統進行層次劃分,劃分後的層次至少包括一系統級以及一擴充級,其中所述系統級對應配置所述軟體系統的原生系統,所述擴充級對應配置所述軟體系統的擴充。 In order to solve the above technical problem, an aspect of the present invention provides a configuration method for a software system, and a configuration system is referenced when the software system is executed, including the following steps: analyzing the evolution of the software system. And arranging the configuration system according to the result of the analysis, the divided layer includes at least a system level and an expansion level, wherein the system level corresponds to a native system configuring the software system, and the expansion level corresponds to a configuration The expansion of the software system.

在本發明的一實施方式中,所述系統級或所述擴充級可以再劃分至少一層次。 In an embodiment of the invention, the system level or the extension level may be further divided into at least one level.

在本發明的一實施方式中,所述擴充級包括一增強級,所述增強級對應所述軟體系統的二次開發或行業別。 In an embodiment of the invention, the expansion stage includes an enhancement level corresponding to a secondary development or industry of the software system.

在本發明的一實施方式中,所述擴充級包括一全局級,所述全局級對應所述軟體系統的共通功能或共通資料。 In an embodiment of the invention, the expansion stage includes a global level, and the global level corresponds to a common function or common data of the software system.

在本發明的一實施方式中,所述擴充級包括一帳套級,所述帳套級對應所述軟體系統的用戶群。 In an embodiment of the invention, the expansion level includes a set of accounts, and the set of books corresponds to a user group of the software system.

在本發明的一實施方式中,所述軟體系統的用戶級對應所述軟體系統的用戶。 In an embodiment of the invention, the user level of the software system corresponds to a user of the software system.

在本發明的一實施方式中,所述軟體系統的演化是所述軟體系統的版本變化。 In an embodiment of the invention, the evolution of the software system is a version change of the software system.

在本發明的一實施方式中,所述演化是所述軟體系統因業務功能或用戶需求改變所產生的變化。 In an embodiment of the invention, the evolution is a change in the software system due to a change in business function or user demand.

在本發明的一實施方式中,所述配置系統具有與所述 系統級、所述擴充級分別對應的配置資源,各所述配置資源提供給所述軟體系統所需配置的功能或資料。 In an embodiment of the invention, the configuration system has A configuration resource corresponding to the system level and the expansion level, and each of the configuration resources provides a function or data required to be configured by the software system.

在本發明的一實施方式中,各所述配置資源為文件、記憶體中的物件、資料庫中的資料及動態鏈接庫(Dynamic-link Library,DLL)其中之一或其組合。 In an embodiment of the present invention, each of the configuration resources is one of a file, an object in a memory, a data in a database, and a Dynamic-Link Library (DLL).

在本發明的一實施方式中,當所述配置資源為文件時,則對其目錄結構進行與所述配置系統的層次劃分相對應的劃分。 In an embodiment of the present invention, when the configuration resource is a file, the directory structure is divided according to the hierarchical division of the configuration system.

本發明的另一方面提出了一種配置系統,用於一軟體系統中,且於執行所述軟體系統時參照所述配置系統,所述配置系統包括:一系統級及一擴充級,其中所述系統級對應配置所述軟體系統的原生系統,所述擴充級對應配置所述軟體系統的擴充。 Another aspect of the present invention provides a configuration system for use in a software system, and referring to the configuration system when executing the software system, the configuration system includes: a system level and an expansion level, wherein The system level corresponds to the native system of the software system, and the expansion level corresponds to the expansion of the software system.

在本發明的一實施方式中,所述系統級或所述擴充級可以再劃分至少一層次。 In an embodiment of the invention, the system level or the extension level may be further divided into at least one level.

綜上,本發明所提出的配置方法及配置系統,將配置系統進行層次劃分,各層次間獨立配置其配置資源予軟體系統,即各層次保持了其獨立性,這將便於管理和維護。此外,各層次需要變更時,只需對變更層次進行變更,而不是現有技術中的全部變更。以及,由於配置系統進行層次劃分,可使其配置資源的承載方式及儲存位置不限制,提高了其相容性與擴展性。 In summary, the configuration method and configuration system proposed by the present invention divides the configuration system hierarchically, and configures the configuration resources to the software system independently at each level, that is, each level maintains its independence, which is convenient for management and maintenance. In addition, when changes are required at each level, it is only necessary to change the level of change, not all changes in the prior art. Moreover, since the configuration system is hierarchically partitioned, the configuration manner and storage location of the configuration resources are not limited, thereby improving compatibility and scalability.

為使本發明所提出的技術方案更加清楚,下面將結合附圖對本發明作進一步地詳細描述。 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.

請參照第1圖,其繪示本發明一實施方式的配置系統的方塊圖。 Please refer to FIG. 1 , which is a block diagram of a configuration system according to an embodiment of the present invention.

如第1圖所示,配置系統100包括一系統級110及一擴充級120。 As shown in FIG. 1, the configuration system 100 includes a system level 110 and an expansion stage 120.

在本實施方式中,配置系統100,用於一軟體系統中,此軟體系統可以是,比如企業資源規劃(Enterprise Resource Planning,ERP)系統,但不以此為限,也可以是其他軟體系統。當軟體系統執行時,其參照配置系統100,具體而言,當軟體系統執行時,配置系統100將配置資源中的功能或資料參數配置予軟體系統,以使軟體系統正常運行並實現相應功能。 In this embodiment, the configuration system 100 is used in a software system, such as an enterprise resource planning (ERP) system, but not limited thereto, and may be other software systems. When the software system is executed, it refers to the configuration system 100. Specifically, when the software system is executed, the configuration system 100 configures the function or data parameter in the configuration resource to the software system, so that the software system operates normally and implements the corresponding function.

通常,軟體系統都是從其最初成型的原生系統不斷演化發展的,即處於不斷擴充中,如軟體系統的版本變化、軟體系統業務功能及用戶需求改變都屬於軟體系統的演化範疇,由於軟體系統的演化發展,需要不斷對其更新以實現新的功能,這往往需要對其的配置資源進行同步更新。 Generally, the software system is constantly evolving from its original system of original shape, that is, it is constantly expanding. For example, software version changes, software system business functions, and user demand changes are all in the evolution of software systems, due to the software system. The evolution of evolution requires constant updates to implement new features, which often requires simultaneous updates to its configuration resources.

而本實施方式中,配置系統100採用層次化設計,將其劃分為系統級110與擴充級120;其中,系統級110對應配置軟體系統的原生系統,即系統級110用來對軟體系統的原生系統進行配置;擴充級120對應配置軟體系統的擴充,即擴充級120對軟體系統的擴充進行配置,比如軟體 系統需要擴充新的功能,則可以透過擴充級120將此新的功能所對應的配置資源配置予軟體系統,從而使軟體系統實現此新的功能。 In this embodiment, the configuration system 100 adopts a hierarchical design and divides it into a system level 110 and an expansion level 120. The system level 110 corresponds to a native system of the software system, that is, the system level 110 is used to native to the software system. The system is configured; the expansion level 120 corresponds to the expansion of the configuration software system, that is, the expansion level 120 configures the expansion of the software system, such as software. If the system needs to expand the new function, the configuration resource corresponding to the new function can be configured to the software system through the expansion level 120, so that the software system implements the new function.

在本實施方式中,系統級110與擴充級120,兩者都可以再劃分至少一層次。 In this embodiment, the system level 110 and the expansion level 120 can be further divided into at least one level.

再請參照第2圖,其繪示第1圖中的配置系統100的一實施例的方塊圖。 Referring again to FIG. 2, a block diagram of an embodiment of the configuration system 100 of FIG. 1 is illustrated.

如第2圖所示,配置系統100包括系統級110與擴充級120,其中,擴充級120包括增強級121、全局級122、帳套級123及用戶級124,此時配置系統100為多層次結構,各級所在層次分別對應配置所對應軟體系統中各級的配置參數。 As shown in FIG. 2, the configuration system 100 includes a system level 110 and an expansion level 120. The expansion level 120 includes an enhancement level 121, a global level 122, a set of books level 123, and a user level 124. In this case, the configuration system 100 has multiple levels. The structure and the level of each level correspond to the configuration parameters of each level in the corresponding software system.

系統級110,對應的是軟體系統供應商開發的原生版本,是所有其他層次工作的基礎級,通常,系統級110做成嵌入式資源,放在運行庫裏面,但不以此為限,比如,也可以是密文(cipher text)或明文(plain text)形式的文件。 The system level 110 corresponds to the native version developed by the software system vendor, and is the basic level of all other levels of work. Generally, the system level 110 is made into an embedded resource and is placed in the runtime library, but not limited thereto. It can also be a file in the form of cipher text or plain text.

增強級121,對應的是軟體系統的二次開發或行業別,但不以此為限,可以根據軟體系統的功能需求靈活設定。 The enhancement level 121 corresponds to the secondary development or industry of the software system, but is not limited thereto, and can be flexibly set according to the functional requirements of the software system.

全局級122,對應的是軟體系統的共通功能或共通資料,具體而言,對應的是多個帳套層123的共通性。 The global level 122 corresponds to the common function or common data of the software system, and specifically corresponds to the commonality of the multiple set of layers 123.

帳套級123,對應的是軟體系統的用戶群,相對於全局級122來說,其對應的是每個帳套的特性,比如當全局級對應的是集團,那麽帳套級對應的是集團下的公司。 The account set level 123 corresponds to the user group of the software system. Compared with the global level 122, it corresponds to the characteristics of each set of books. For example, when the global level corresponds to the group, the account set level corresponds to the group. The company under.

用戶級124,對應的是軟體系統的用戶(使用者)。 The user level 124 corresponds to the user (user) of the software system.

在本實施例中,執行配置的優先順序為系統級110、增強級121、全局級122、帳套級123及用戶級124,即優先配置系統級110,最後配置用戶級124。 In this embodiment, the priority order of performing configuration is system level 110, enhancement level 121, global level 122, account set level 123, and user level 124, that is, system level 110 is preferentially configured, and user level 124 is finally configured.

需說明的是,在本實施例中,將擴充級120劃分為增強級121、全局級122、帳套級123及用戶級124,但是在其他實施例中,擴充級120可以僅是增強級121,也可以僅是全局級122,還可以是增強級121與全局級122的組合,當然,也可以是增強級121、全局級122、帳套級123的組合,而沒有用戶級124。還可以是多於增強級121、全局級122、帳套級123及用戶級124的組合。總之,擴充級120可以根據軟體系統演化過程中靈活劃分。 It should be noted that, in this embodiment, the expansion stage 120 is divided into the enhancement level 121, the global level 122, the account set level 123, and the user level 124. However, in other embodiments, the expansion stage 120 may only be the enhancement level 121. It may be only the global level 122, or may be a combination of the enhanced level 121 and the global level 122. Of course, it may also be a combination of the enhanced level 121, the global level 122, and the accounting level 123, without the user level 124. It may also be a combination of more than enhanced level 121, global level 122, set of books level 123, and user level 124. In summary, the expansion stage 120 can be flexibly divided according to the evolution process of the software system.

請參照第3圖,其繪示本發明的另一實施方式的配置方法的流程圖。 Please refer to FIG. 3, which is a flow chart of a configuration method of another embodiment of the present invention.

下面結合第1圖、第2圖及第3圖對配置方法進行說明。 The arrangement method will be described below with reference to Fig. 1, Fig. 2, and Fig. 3.

首先,在步驟310中,分析軟體系統的演化。在本實施方式中,演化可以是軟體系統的版本變化,也可以是軟體系統因業務功能或用戶需求改變所產生的變化。 First, in step 310, the evolution of the software system is analyzed. In this embodiment, the evolution may be a version change of the software system, or may be a change caused by a software system due to a change in a business function or a user demand.

然後,在步驟320中,根據分析的結果對配置系統100進行層次劃分,劃分後的層次至少包括一系統級110以及一擴充級120,其中,系統級110對應配置軟體系統的原生系統,擴充級120對應配置軟體系統的擴充。舉例來說, 當軟體系統因二次開發而使軟體系統的業務功能改變,那麽此時可以將擴充級120定義為增強級121,當然,也可以定義為其他級,根據實際需求而定。 Then, in step 320, the configuration system 100 is hierarchically divided according to the result of the analysis, and the divided hierarchy includes at least a system level 110 and an expansion stage 120, wherein the system level 110 corresponds to the native system of the configuration software system, and the expansion level 120 corresponds to the expansion of the configuration software system. for example, When the software system changes the business function of the software system due to secondary development, the expansion level 120 can be defined as the enhancement level 121 at this time. Of course, it can also be defined as other levels, depending on actual needs.

在本實施方式中,系統級110或擴充級120可以再劃分至少一層次,比如可以將擴充級120劃分為增強級121、全局級122、帳套級123及用戶級124,各級所在層次分別對應配置所對應軟體系統中各級的配置參數。 In this embodiment, the system level 110 or the expansion level 120 may be further divided into at least one level. For example, the expansion level 120 may be divided into an enhancement level 121, a global level 122, a set of books level 123, and a user level 124. Corresponding to the configuration parameters of each level in the corresponding software system.

由上可知,在上述各實施方式中,由於將配置系統100劃分為多級層次,當各層次提供的資料或功能發生改變時,僅影響本層次,有效的保留了各層的開發和設計成果,便於管理與維護。此外,不限制層次的個數,各層次內仍可分層,擴展性強。以及,由現有的需要部署全部配置,變化為僅需部署變更層次的配置,發佈的粒度更小,成本更低。 It can be seen from the above that in the above embodiments, since the configuration system 100 is divided into multiple levels, when the data or functions provided by each level are changed, only the level is affected, and the development and design achievements of each layer are effectively retained. Easy to manage and maintain. In addition, the number of levels is not limited, and the layers can still be layered and extensible. And, from the existing needs to deploy all the configuration, change to a configuration that only needs to deploy the change level, the release is smaller and the cost is lower.

在上述各實施方式中,配置系統100進行層次化劃分後,各級層次都具有相對應的配置資源,比如,具有與系統級110、擴充級120分別對應的配置資源,各配置資源提供給軟體系統所需配置的功能或資料參數。 In each of the above embodiments, after the configuration system 100 performs the hierarchical division, each level has a corresponding configuration resource, for example, a configuration resource corresponding to the system level 110 and the expansion level 120, and each configuration resource is provided to the software. The function or data parameter that the system needs to configure.

上述之各配置資源可以是為文件,比如XML文件,也可以是記憶體中的物件,還可以是資料庫中的資料及動態鏈接庫(Dynamic-link Library,DLL),當然也可以是它們的任意組合,比如一層次的配置資源為文件,另一層次的配置資源為記憶體中的物件。總之,配置資源的承載方式可 以有多種選擇,藉此,可提高相容性。並且,其可以儲存在不同的物理位置,擴展性強。 Each of the above configuration resources may be a file, such as an XML file, or an object in a memory, or may be a data in a database and a Dynamic-link Library (DLL), or they may be Any combination, such as one level of configuration resources for files, and another level of configuration resources for objects in memory. In short, the configuration resource can be carried There are many options to increase compatibility. Moreover, it can be stored in different physical locations and has strong scalability.

並且,當配置資源檔案時,由於配置系統100進行層次化劃分,相應地,可以對其配置資源的目錄結構進行層次設計。具體可參照下文。 Moreover, when the resource file is configured, since the configuration system 100 performs hierarchical division, correspondingly, the directory structure of the configuration resource can be hierarchically designed. For details, please refer to the following.

再請參照第4圖,其繪示本發明又一實施方式的配置資源的目錄結構的示意圖。 Referring to FIG. 4, a schematic diagram of a directory structure of a configuration resource according to still another embodiment of the present invention is shown.

下面結合第2圖與第4圖對配置資源的目錄結構及讀取作詳細的說明。 The directory structure and reading of the configuration resources will be described in detail below with reference to FIGS. 2 and 4.

如第4圖所示,根目錄(Root)下面具有管理各領域物件目錄(Domain Objects)、行業別目錄(Industry)及二次開發目錄(Customization)。Domain Objects目錄,承載系統級110相應的配置資源,其下具有多個子目錄,如雇員目錄(Employee)、訂單目錄(Sales Order),當然還具有其他省略繪示的子目錄。Employee目錄還具有A語言包存放目錄(Culture A)、B語言包存放目錄(Culture B)、Layout.bin配置資源及Layout.subName.bin配置資源(其中.bin為文件尾碼名,但並不僅限於此),對於Culture A目錄及Culture B目錄,其下面也還可以具有子目錄或配置資源,但為了敍述簡要,未繪示出。配置系統按照分層的先後順序讀取配置資源。同一層次上,又可按目錄的層次分解,目錄越深,代表層次越高,優先性就越低。同一層目錄又可依英文點號“.”和基礎名稱分解出的名稱越長,代表層次越高, 優先性就越低,比如,對於Layout.bin配置資源及Layout.subName.bin配置資源,兩者按照目錄層次,則在同一層次上,且因為其基礎名稱都為Layout.bin,則按照依英文點號“.”和基礎名稱分解可知,Layout.subName.bin長於Layout.bin,因此,Layout.subName.bin配置資源相對於Layout.bin配置資源,層次較高,而優先性較低。而Industry目錄及Customization目錄,對應于增強級121(如第2圖所示),兩者也可以分別具有子目錄或配置資源,但為了敍述簡要,未完整繪示出。需說明的是,這裏僅僅示意性繪示了一目錄結構,但並不以此目錄結構為限,目錄結構也可以是其他結構,其可以根據配置系統100的層次劃分靈活設置。 As shown in FIG. 4, under the root directory, there are management domain objects (Domain Objects), industry directories (Industry), and secondary development directories (Customization). The Domain Objects directory carries the corresponding configuration resources of the system level 110, and has multiple subdirectories under it, such as an employee directory (Employee), an order directory (Sales Order), and of course, other subdirectories that are omitted. The Employee directory also has an A language package storage directory (Culture A), a B language package storage directory (Culture B), a Layout.bin configuration resource, and a Layout.subName.bin configuration resource (where .bin is the file end code name, but not only Limited to this), for the Culture A directory and the Culture B directory, it may also have subdirectories or configuration resources below, but for the sake of brief description, it is not shown. The configuration system reads the configuration resources in hierarchical order. At the same level, it can be decomposed according to the hierarchy of the directory. The deeper the directory, the higher the level of representation and the lower the priority. The longer the name of the same directory can be decomposed according to the English dot "." and the base name, the higher the level of representation. The lower the priority, for example, the Layout.bin configuration resource and the Layout.subName.bin configuration resource, both in the directory hierarchy, at the same level, and because the base name is Layout.bin, then according to English The dot "." and the base name decomposition show that Layout.subName.bin is longer than Layout.bin. Therefore, the Layout.subName.bin configuration resource has a higher level and lower priority than the Layout.bin configuration resource. The Industry directory and the Customization directory correspond to the enhancement level 121 (as shown in FIG. 2), and both may have subdirectories or configuration resources, respectively, but are not fully illustrated for the sake of brevity. It should be noted that only a directory structure is schematically illustrated herein, but is not limited to the directory structure. The directory structure may also be other structures, which may be flexibly set according to the hierarchical division of the configuration system 100.

並且,配置系統100可以根據配置資源的關鍵標識(ConfigurationId)來決定讀哪一個配置資源,此關鍵標識可以包含:領域物件標識(如Employee)、配置物件標識(如Layout)、語言包資訊(如Culture A)和資源副檔名(如subName)。 Moreover, the configuration system 100 can determine which configuration resource to read according to the key identifier (ConfigurationId) of the configuration resource, and the key identifier can include: a domain object identifier (such as Employee), a configuration object identifier (such as a layout), and a language pack information (such as Culture A) and resource extension name (such as subName).

而當配置資源標識指定要讀取Employee領域標識下的Layout配置資源,且要求是CultureA語言時,則配置系統100會按照層次順序先讀取Layout.bin,再讀取Layout.subName.bin,然後再讀取CultureA目錄下的配置資源。若在Industry或Customiaztion中也有關於Employee的Layout配置資訊定義時,系統會再依次讀取Industry及Customization符合此標識的配置資源。 When the configuration resource identifier specifies that the Layout configuration resource under the Employee realm identifier is to be read, and the requirement is CultureA language, the configuration system 100 first reads Layout.bin in hierarchical order, then reads Layout.subName.bin, and then Then read the configuration resources in the CultureA directory. If there is also a definition of the Employee configuration information in the Industry or Customiaztion, the system will read the configuration resources of the Industry and Customization that match this identifier.

較佳地,在本實施方式中,配置系統100可以根據關鍵標識,通過切片(aspect)先收集所有相關配置資源,加入到資源容器中並做適當緩存,開啟文件監視器監視磁片目錄的文件變化,提高性能。另,配置系統100還可以根據關鍵標識和運行環境,檢查相容性,過濾掉不符合條件的配置資源。再,配置系統還可以根據預先定義的配置物件,將符合條件的配置資源按順序讀取、合併生成一配置物件。 Preferably, in this embodiment, the configuration system 100 may collect all relevant configuration resources by using an aspect according to the key identifier, add to the resource container, and perform appropriate caching, and open the file monitor to monitor the file of the disk directory. Change and improve performance. In addition, the configuration system 100 can also check the compatibility according to the key identifier and the operating environment, and filter out the configuration resources that do not meet the conditions. The configuration system can also read and merge the configured configuration resources in sequence according to the predefined configuration objects to generate a configuration object.

綜上,本發明所提出的配置方法及配置系統,將配置系統進行層次劃分,各層次間獨立配置其配置資源予軟體系統,即各層次保持了其獨立性,這將便於管理和維護。此外,各層次需要變更時,只需對變更層次進行變更,而不是現有技術中的全部變更。以及,由於配置系統進行層次劃分,可使其配置資源的承載方式及儲存位置不限制,提高了其相容性與擴展性。 In summary, the configuration method and configuration system proposed by the present invention divides the configuration system hierarchically, and configures the configuration resources to the software system independently at each level, that is, each level maintains its independence, which is convenient for management and maintenance. In addition, when changes are required at each level, it is only necessary to change the level of change, not all changes in the prior art. Moreover, since the configuration system is hierarchically partitioned, the configuration manner and storage location of the configuration resources are not limited, thereby improving compatibility and scalability.

雖然本發明已以實施方式揭露如上,然其並非用以限定本發明,任何熟習此技藝者,在不脫離本發明之精神和範圍內,當可作各種之更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。 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.

100‧‧‧配置系統 100‧‧‧Configuration System

110‧‧‧系統級 110‧‧‧System level

120‧‧‧擴充級 120‧‧‧Extension level

121‧‧‧增強級 121‧‧‧Enhanced

122‧‧‧全局級 122‧‧‧Global level

123‧‧‧帳套級 123‧‧‧Account sets

124‧‧‧用戶級 124‧‧‧User level

310‧‧‧步驟 310‧‧‧Steps

320‧‧‧步驟 320‧‧‧Steps

為讓本發明之上述和其他目的、特徵、優點與實施例能更明顯易懂,所附圖式之說明如下:第1圖係繪示本發明一實施方式的配置系統的方塊圖。 The above and other objects, features, advantages and embodiments of the present invention will become more <RTIgt;

第2圖係繪示第1圖中的配置系統100的一實施例的方塊圖。 2 is a block diagram showing an embodiment of the configuration system 100 in FIG. 1.

第3圖係繪示本發明的另一實施方式的配置方法的流程圖。 3 is a flow chart showing a configuration method of another embodiment of the present invention.

第4圖係繪示本發明又一實施方式的配置資源的目錄結構的示意圖。 4 is a schematic diagram showing a directory structure of a configuration resource according to still another embodiment of the present invention.

100‧‧‧配置系統 100‧‧‧Configuration System

110‧‧‧擴充級 110‧‧‧Extension level

120‧‧‧系統級 120‧‧‧System level

Claims (11)

一種配置方法,用於一軟體系統中,且於執行該軟體系統時參照一配置系統,包括以下步驟:分析該軟體系統的演化;根據分析的結果對該配置系統進行層次劃分,劃分後的層次至少包括一系統級以及一擴充級,其中該系統級對應配置該軟體系統的原生系統,該擴充級對應配置該軟體系統的擴充;以及在進行層次劃分後,該系統級、該擴充級分別具有對應的數個配置資源,該配置系統根據一關鍵標識,通過切片(aspect)先收集該些配置資源,加入到一資源容器中做緩存,開啟文件監視器監視磁片目錄的文件變化,該配置系統根據該關鍵標識和運行環境,檢查相容性,從該些配置資源中過濾掉不符合該相容性之條件的至少一配置資源。 A configuration method for a software system, and referring to a configuration system when executing the software system, comprising the following steps: analyzing an evolution of the software system; hierarchically dividing the configuration system according to the analysis result, and dividing the hierarchy At least one system level and one expansion level, wherein the system level corresponds to a native system configuring the software system, the expansion level corresponding to the expansion of the software system is configured; and after the hierarchical division, the system level and the expansion level respectively have Corresponding a plurality of configuration resources, the configuration system collects the configuration resources by using a slice according to a key identifier, adds the resource to the resource container, and opens the file monitor to monitor the file change of the disk directory. The system checks the compatibility according to the key identifier and the operating environment, and filters at least one configuration resource that does not meet the compatibility condition from the configuration resources. 如請求項1所述之配置方法,其中該系統級或該擴充級可以進一步劃分至少一層次。 The configuration method of claim 1, wherein the system level or the extension level can further divide at least one level. 如請求項1所述之配置方法,其中該擴充級進一步包括一增強級,該增強級對應該軟體系統的二次開發或行業別。 The configuration method of claim 1, wherein the expansion level further comprises an enhancement level corresponding to secondary development or industry of the software system. 如請求項1所述之配置方法,其中該擴充級進一步包括一全局級,該全局級對應該軟體系統的共通功能或共通資料。 The configuration method of claim 1, wherein the expansion stage further comprises a global level, the global level corresponding to a common function or common data of the software system. 如請求項1或4所述之配置方法,其中該擴充級進一步包括一帳套級,該帳套級對應該軟體系統的用戶群。 The configuration method of claim 1 or 4, wherein the expansion level further comprises a set of accounts, the set of accounts corresponding to the user group of the software system. 如請求項5所述之配置方法,包括一用戶級對應該軟體系統的用戶。 The configuration method of claim 5 includes a user-level user corresponding to the software system. 如請求項1所述之配置方法,其中該軟體系統的演化是該軟體系統的版本變化。 The configuration method of claim 1, wherein the evolution of the software system is a version change of the software system. 如請求項1所述之配置方法,其中該軟體系統的演化是該軟體系統因業務功能或用戶需求改變所產生的變化。 The configuration method of claim 1, wherein the evolution of the software system is a change of the software system due to a change in a business function or a user demand. 如請求項1所述之配置方法,其中該配置系統具有與該系統級、該擴充級分別對應的至少一配置資源,每一該配置資源提供給該軟體系統所需配置的功能或資料。 The configuration method of claim 1, wherein the configuration system has at least one configuration resource corresponding to the system level and the extension level, and each of the configuration resources provides a function or data required to be configured by the software system. 如請求項9所述之配置方法,其中每一該配置資源為文件、記憶體中的物件、資料庫中的資料及動態鏈接庫其中之一或其組合。 The configuration method of claim 9, wherein each of the configuration resources is one of a file, an object in a memory, a data in a database, and a dynamic link library or a combination thereof. 如請求項10所述之配置方法,其中當該配置資源為文件時,則對其目錄結構進行與該配置系統的層次劃分 相對應的劃分。 The configuration method of claim 10, wherein when the configuration resource is a file, hierarchically dividing the directory structure with the configuration system Corresponding division.
TW101123084A 2011-12-31 2012-06-27 A configuration method and system TWI530873B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011104577048A CN103186378A (en) 2011-12-31 2011-12-31 Configuration method and configuration system

Publications (2)

Publication Number Publication Date
TW201327395A TW201327395A (en) 2013-07-01
TWI530873B true TWI530873B (en) 2016-04-21

Family

ID=48677557

Family Applications (1)

Application Number Title Priority Date Filing Date
TW101123084A TWI530873B (en) 2011-12-31 2012-06-27 A configuration method and system

Country Status (2)

Country Link
CN (1) CN103186378A (en)
TW (1) TWI530873B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9952953B2 (en) 2015-11-02 2018-04-24 Microsoft Technology Licensing Llc Non-monotonic eventual convergence for desired state configuration
CN112099841A (en) * 2020-08-28 2020-12-18 北京同邦卓益科技有限公司 Method and system for generating configuration file

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100407206C (en) * 2006-02-20 2008-07-30 华为技术有限公司 Method and system for transformation between different version configuration data
US20070276779A1 (en) * 2006-05-23 2007-11-29 International Business Machines Corporation Method for avoiding orphan entries in cascade delete in a configuration management database
CN102053831B (en) * 2010-12-10 2013-06-19 浪潮(北京)电子信息产业有限公司 Linux operating system customizing method and system

Also Published As

Publication number Publication date
TW201327395A (en) 2013-07-01
CN103186378A (en) 2013-07-03

Similar Documents

Publication Publication Date Title
CA2723933C (en) Methods and systems for developing, debugging, and executing data integration applications
US20200328930A1 (en) Method and System for Determining Compatibility of Computer Systems
US9755890B2 (en) Incrementally managing distributed configuration data
Hallerbach et al. Configuration and management of process variants
US8954375B2 (en) Method and system for developing data integration applications with reusable semantic types to represent and process application data
US8229778B2 (en) Constructing change plans from component interactions
US20110321033A1 (en) Application Blueprint and Deployment Model for Dynamic Business Service Management (BSM)
JP2009540461A (en) Declarative Management Framework (DECLARATIVEMAAGEENTENTRAMEWORK)
Hallerbach et al. Issues in modeling process variants with provop
CN102222278A (en) Operation process customizing method and device
US8086588B2 (en) Computer program product and method for sharing information between multiple computer applications using a grafted model network
TWI530873B (en) A configuration method and system
Koop et al. The provenance of workflow upgrades
US20150046286A1 (en) Product content lifecycle and product features
KR20110114173A (en) A system and a method for generating web service customized based on business process
Cordier et al. From EGEE operations portal towards EGI operations portal
Lerm et al. InfoSphere DataStage Parallel Framework Standard Practices
WO2023096504A1 (en) Reconfigurable declarative generation of business data systems from a business ontology, instance data, annotations and taxonomy
Psallidas et al. OneProvenance: Efficient Extraction of Dynamic Coarse-Grained Provenance from Database Query Event Logs
Nikolaidou et al. Accommodating EIS UML 2.0 Profile using a standard UML modeling tool
Tumbde et al. A New Model for Managing Configuration Data
Lee et al. A methodology for developing component-based software with generation and assembly processes