配置方法及配置系统的制作方法

文档序号:6444728阅读:172来源:国知局
专利名称:配置方法及配置系统的制作方法
技术领域
本发明是有关于软件系统,且特别是有关于软件系统的配置方法及配置系统
背景技术
在复杂的软件系统中,通常都有两个以上的对象相互作用来完成软件功能,每个对象都要自己获得能够让本身工作的数据或对象,这些数据或对象就是依赖项。这样就导致软件系统I禹合度非常高,而且难以维护,为此提出了依赖注射(Dependency Injection,DI)的概念,其通过外部定义的方式避免对象和对象之间的过度耦合。此外,通常采用配置的方式来提高软件系统的灵活性,以文件方式定义外部数据或对象结构。但是,现有的配置系统一般是单层的结构,由于软件系统的升级和演化,会产生不同的分支,单层结构在产品不断演化的过程中,无论何种演化方式,都会只对同一配置文件或单元进行修改,这将造成配置系统无法保持相对稳定,从而造成配置系统在管理、维护和应用方面的不便。并且,单层结构中,配置文件的载体单一及储存位置单一,这分别影响其兼容性与扩展性。有鉴于此,如何设计一种配置方法及配置系统,以使配置系统便于管理、维护,及提高其扩展性与兼容性,是业内相关技术人员亟待解决的一技术问题。

发明内容
为了解决上述技术问题,本发明一方面提出了一种配置方法,用于一软件系统中,且于执行所述软件系统时参照一配置系统,包括以下步骤:分析所述软件系统的演化;以及根据分析的结果对所述配置系统进行层次划分,划分后的层次至少包括一系统级以及一扩充级,其中所述系统级对应配置所述软件系统的原生系统,所述扩充级对应配置所述软件系统的扩充。在本发明的一实施方式中,所述系统级或所述扩充级可以再划分至少一层次。在本发明的一实施方式中,所述扩充级包括一增强级,所述增强级对应所述软件系统的二次开发或行业别。在本发明的一实施方式中,所述扩充级包括一全局级,所述全局级对应所述软件系统的共通功能或共通数据。在本发明的一实施方式中,所述扩充包括一帐套级,所述帐套级对应所述软件系统的用户群。在本发明的一实施方式中,所述用户级对应所述软件系统的用户。在本发明的一实施方式中,所述演化是所述软件系统的版本变化。在本发明的一实施方式中,所述演化是所述软件系统因业务功能或用户需求改变所产生的变化。在本发明的一实施方式中,所述配置系统具有与所述系统级、所述扩充级分别对应的配置资源,各所述配置资源提供给所述软件系统所需配置的功能或数据。
在本发明的一实施方式中,各所述配置资源为文件、内存中的对象、数据库中的数据及动态链结库其中之一或其组合。在本发明的一实施方式中,当所述配置资源为文件时,则对其目录结构进行与所述配置系统的层次划分相对应的划分。本发明的另一方面提出了一种配置系统,用于一软件系统中,且于执行所述软件系统时参照所述配置系统,所述配置系统包括:一系统级及一扩充级,其中所述系统级对应配置所述软件系统的原生系统,所述扩充级对应配置所述软件系统的扩充。在本发明的一实施方式中,所述系统级或所述扩充级可以再划分至少一层次。综上,本发明所提出的配置方法及配置系统,将配置系统进行层次划分,各层次间独立配置其配置资源予软件系统,即各层次保持了其独立性,这将便于管理和维护。此外,各层次需要变更时,只需对变更层次进行变更,而不是现有技术中的全部变更。以及,由于配置系统进行层次划分,可使其配置资源的承载方式及储存位置不限制,提高了其兼容性与扩展性。


图1绘示了本发明一实施方式的配置系统的框图;图2绘示了图1中的配置系统100的一优选实施例的框图;图3绘示了本发明的另一实施方式的配置方法的流程图;以及图4绘示了本发明又一实施方式的配置资源的目录结构的示意图。
具体实施例方式为了使本领域相关技术人员更好地理解本发明的技术方案,下面将结合本发明实施方式的附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本发明一部分实施方式,而不是全部的实施方式。请参照图1,图1绘示了本发明一实施方式的配置系统的框图。如图1所示,配置系统100包括一系统级110及一扩充级120。在本实施方式中,配置系统100,用于一软件系统中,此软件系统可以是,比如企业资源计划(Enterprise Resource Planning, ERP)系统,但不以此为限,也可以是其它软件系统。当软件系统执行时,其参照配置系统100,具体而言,当软件系统执行时,配置系统100将配置资源中的功能或数据参数配置予软件系统,以使软件系统正常运行并实现相应功能。通常,软件系统都是从其最初成型的原生系统不断演化发展的,即处于不断扩充中,如软件系统的版本变化、软件系统业务功能及用户需求改变都属于软件系统的演化范畴,由于软件系统的演化发展,需要不断对其更新以实现新的功能,这往往需要对其的配置资源进行同步更新。而本实施方式中,配置系统100采用层次化设计,将其划分为系统级110与扩充级120;其中,系统级110对应配置软件系统的原生系统,即系统级110用来对软件系统的原生系统进行配置;扩充级120对应配置软件系统的扩充,即扩充级120对软件系统的扩充进行配置,比如软件系统需要扩充新的功能,则可以透过扩充级120将此新的功能所对应的配置资源配置予软件系统,从而使软件系统实现此新的功能。在本实施方式中,系统级110与扩充级120,两者都可以再划分至少一层次。具体可参照下文。再请参照图2,图2绘示了图1中的配置系统100的一优选实施例的框图。如图2所示,配置系统100包括系统级110与扩充级120,其中,扩充级120包括增强级121、全局级122、帐套级123及用户级124,此时配置系统100为多层次结构,各级所在层次分别对应配置所对应软件系统中各级的配置参数。系统级110,对应的是软件系统供应商开发的原生版本,是所有其它层次工作的基础级,通常,系统级110做成嵌入式资源,放在运行库里面,但不以此为限,比如,也可以是密文或明文形式的文件。增强级121,对应的是软件系统的二次开发或行业别,但不以此为限,可以根据软件系统的功能需求灵活设定。全局级122,对应的是软件系统的共通功能或共通数据,具体而言,对应的是多个帐套层123的共性。帐套级123,对应的是软件系统的用户群,相对于全局级122来说,其对应的是每个帐套的特性,比如当全局级对应的是集团,那么帐套级对应的是集团下的公司。用户级124,对应的是软件系统的用户(使用者)。在本优选实施例中,执行配置的优先顺序为系统级110、增强级121、全局级122、帐套级123及用户级124,即优先配置系统级110,最后配置用户级124。需说明的是,在本优选实施例中,将扩充级120划分为增强级121、全局级122、帐套级123及用户级124,但是在其它一些实施例中,扩充级120可以仅仅是增强级121,也可以仅仅是全局级122,还可以是增强级121与全局级122的组合,当然,也可以是增强级
121、全局级122、帐套级123的组合,而没有用户级124,还可以是多于增强级121、全局级
122、帐套级123及用户级124的组合。总之,扩充级120可以根据软件系统演化过程中灵活划分。请参照图3,图3绘示了本发明的另一实施方式的配置方法的流程图。下面结合图1、图2及图3对配置方法进行说明。首先,在步骤310中,分析软件系统的演化。在本实施方式中,演化可以是软件系统的版本变化,也可以是软件系统因业务功能或用户需求改变所产生的变化。然后,在步骤320中,根据分析的结果对配置系统100进行层次划分,划分后的层次至少包括一系统级Iio以及一扩充级120,其中,系统级110对应配置软件系统的原生系统,扩充级120对应配置软件系统的扩充。举例之,当软件系统因二次开发而使软件系统的业务功能改变,那么此时可以将扩充级120定义为增强级121,当然,也可以定义为其它级,根据实际需求而定。在本实施方式中,系统级110或扩充级120可以再划分至少一层次,比如可以将扩充级120划分为增强级121、全局级122、帐套级123及用户级124,各级所在层次分别对应配置所对应软件系统中各级的配置参数。由上可知,在上述各实施方式中,由于将配置系统100划分为多级层次,当各层次提供的数据或功能发生改变时,仅影响本层次,有效的保留了各层的开发和设计成果,便于管理与维护。此外,不限制层次的个数,各层次内仍可分层,扩展性强。以及,由现有的需要部署全部配置,变化为仅需部署变更层次的配置,发布的粒度更小,成本更低。在上述各实施方式中,配置系统100进行层次化划分后,各级层次都具有相对应的配置资源,比如,具有与系统级110、扩充级120分别对应的配置资源,各配置资源提供给软件系统所需配置的功能或数据参数。上述之各配置资源可以是为文件,比如XML文件,也可以是内存中的对象,还可以是数据库中的数据及动态链结库(Dynamic Link Library,DLL),当然也可以是它们的任意组合,比如一层次的配置资源为文件,另一层次的配置资源为内存中的对象。总之,配置资源的承载方式可以有多种选择,藉此,可提高兼容性。并且,其可以储存在不同的物理位置,扩展性强。并且,当配置资源文件时,由于配置系统100进行层次化划分,相应地,可以对其配置资源的目录结构进行层次设计。具体可参照下文。再请参照图4,图4绘示了本发明又一实施方式的配置资源的目录结构的示意图。下面结合图2与图4对配置资源的目录结构及读取作详细的说明。如图4所示,根目录(Root)下面具有管理各领域对象目录(Domain Objects)、行业别目录(Industry)及二次开发目录(Customization)。Domain Objects目录,承载系统级110相应的配置资源,其下具有多个子目录,如雇员目录(Employee)、订单目录(SalesOrder),当然还具有其它省略绘示的子目录。Employee目录还具有A语言包存放目录(Culture A)、B 语言包存放目录(Culture B)、Layout, bin 配置资源及 Layout.subName.bin配置资源(其中.bin为文件后缀名,但并不仅限于此),对于Culture A目录及CultureB目录,其下面也还可以具有子目录或配置资源,但为了叙述简要,未绘示出。配置系统按照分层的先后顺序读取配置资源。同一层次上,又可按目录的层次分解,目录越深,代表层次越高,优先性就越低。同一层目录又可依英文点号”和基础名称分解出的名称越长,代表层次越高,优先性就越低,比如,对于Layout, bin配置资源及Layout.subName.bin配置资源,两者按照目录层次,则在同一层次上,且因为其基础名称都为Layout, bin,则按照依英文点号“.”和基础名称分解可知,Layout.subName.bin长于Layout, bin,因此,Layout.subName.bin配置资源相对于Layout, bin配置资源,层次较高,而优先性较低。而Industry目录及Customization目录,对应于增强级121 (如图2),两者也可以分别具有子目录或配置资源,但为了叙述简要,未完整绘示出。需说明的是,这里仅仅示意性绘示了一目录结构,但并不以此目录结构为限,目录结构也可以是其它结构,其可以根据配置系统100的层次划分灵活设置。并且,配置系统100可以根据配置资源的关键标识(Configuration Id)来决定读哪一个配置资源,此关键标识可以包含:领域对象标识(如Employee)、配置对象标识(如Layout)、语言包信息(如Culture A)和资源扩展名(如subName)。而当配置资源标识指定要读取Employee领域标识下的Layout配置资源,且要求是CultureA语言时,则配置系统100会按照层次顺序先读取Layout, bin,再读取Layout.subName.bin,然后再读取CultureA目录下的配置资源。若在Industry或Customiaztion中也有关于Employee的Layout配置信息定义时,系统会再依次读取Industry及Customization符合此标识的配置资源。
较佳地,在本实施方式中,配置系统100可以根据关键标识,通过切片先收集所有相关配置资源,加入到资源容器中并做适当缓存,开启文件监视器监视磁盘目录的文件变化,提高性能。另,配置系统100还可以根据关键标识和运行环境,检查兼容性,过滤掉不符合条件的配置资源。再,配置系统还可以根据预先定义的配置对象,将符合条件的配置资源按顺序读取、合并生成一配置对象综上,本发明所提出的配置方法及配置系统,将配置系统进行层次划分,各层次间独立配置其配置资源予软件系统,即各层次保持了其独立性,这将便于管理和维护。此外,各层次需要变更时,只需对变更层次进行变更,而不是现有技术中的全部变更。以及,由于配置系统进行层次划分,可使其配置资源的承载方式及储存位置不限制,提高了其兼容性与扩展性。上文中,参照附图描述了本发明的具体实施方式
。但是,本领域中的普通技术人员能够理解,在不偏离本发明的精神和范围的情况下,还可以对本发明的具体实施方式
作各种变更和替换。这些变更和替换都落在本发明的保护范围之内。
权利要求
1.一种配置方法,用于一软件系统中,且于执行所述软件系统时参照一配置系统,其特征在于,包括以下步骤: 分析所述软件系统的演化;以及 根据分析的结果对所述配置系统进行层次划分,划分后的层次至少包括一系统级以及一扩充级,其中所述系统级对应配置所述软件系统的原生系统,所述扩充级对应配置所述软件系统的扩充。
2.根据权利要求1所述的配置方法,其特征在于,所述系统级或所述扩充级可以再划分至少一层次。
3.根据权利要求1所述的配置方法,其特征在于,所述扩充级包括一增强级,所述增强级对应所述软件系统的二次开发或行业别。
4.根据权利要求1所述的配置方法,其特征在于,所述扩充级包括一全局级,所述全局级对应所述软件系统的共通功能或共通数据。
5.根据权利要求1或4所述的配置方法,其特征在于,所述扩充包括一帐套级,所述帐套级对应所述软件系统的用户群。
6.根据权利要求5所述的配置方法,其特征在于,所述用户级对应所述软件系统的用户。
7.根据权利要求1所述的配置方法,其特征在于,所述演化是所述软件系统的版本变化。
8.根据权利要求1所述的配置方法,其特征在于,所述演化是所述软件系统因业务功能或用户需求改变所产生的变化。
9.根据权利要求1所述的配置方法,其特征在于,所述配置系统具有与所述系统级、所述扩充级分别对应的配置资源,各所述配置资源提供给所述软件系统所需配置的功能或数据。
10.根据权利要求9所述的配置方法,其特征在于,各所述配置资源为文件、内存中的对象、数据库中的数据及动态链结库其中之一或其组合。
11.根据权利要求10所述的配置方法,其特征在于,当所述配置资源为文件时,则对其目录结构进行与所述配置系统的层次划分相对应的划分。
12.一种配置系统,用于一软件系统中,且于执行所述软件系统时参照所述配置系统,其特征在于,所述配置系统包括: 一系统级及一扩充级,其中所述系统级对应配置所述软件系统的原生系统,所述扩充级对应配置所述软件系统的扩充。
13.根据权利要求12所述的配置系统,其特征在于,所述系统级或所述扩充级可以再划分至少一层次。
全文摘要
本发明提出了一种配置方法及配置系统,用于一软件系统中,且于执行软件系统时参照一配置系统,包括以下步骤分析软件系统的演化;以及根据分析的结果对配置系统进行层次划分,划分后的层次至少包括一系统级以及一扩充级,其中系统级对应配置软件系统的原生系统,扩充级对应配置软件系统的扩充。本发明所提出的配置方法及配置系统,将配置系统进行层次划分,各层次间独立配置其配置资源予软件系统,即各层次保持了其独立性,这将便于管理和维护。
文档编号G06F9/44GK103186378SQ20111045770
公开日2013年7月3日 申请日期2011年12月31日 优先权日2011年12月31日
发明者李兵 申请人:鼎捷软件股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1