具体实施方式
本申请实施例提供一种业务可视化方法及系统。
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
图1是本申请业务可视化方法一个实施例的流程图。如图1所示,业务可视化的方法可以包括:
S101:接收包含基础元素数据类型和基础元素之间数据规则的数据结构。
一个业务模型中通常可以包括多个对象,所述对象之间可以存在控制规则。例如,一个订单模型中包含的对象可以包括:客户名称、订单号、订单时间、订单金额。一个客户名称可以拥有多个订单号,每个订单号可以有对应的订单时间和订单金额。
数据结构可以用于描述业务模型。所述数据结构可以包括:基础元素、基础元素的数据类型和基础元素之间的数据规则。
所述基础元素可以用于描述业务模型中的对象。所述数据类型可以用于表示基础元素的一个属性。所述数据类型可以包括文本类型、多选类型、单选类型或数值类型等。所述数据类型可以利用数据结构中的第一标识来表示。例如可以设定某一基础元素的第一标识为“txt”来表示该基础元素为文本类型的元素。
所述数据规则可以用于描述业务模型中对象之间的控制规则,相应地,所述数据规则可以用于表示数据结构中基础元素之间的约束关系。通常所述数据规则可以包括:基础元素之间的依赖关系、互斥关系或父子关系,以及对基础元素的值的限定。所述数据规则可以利用数据结构中的第二标识来表示。
计算机可以接收包含第一标识和第二标识的数据结构。
例如,一个关于用户账号信息的业务模型,对于该业务模型,数据结构中的基础元素可以包括:用户名称、用户账号、用户账号是否签约,以及账号拥有的接口。其中,
所述用户名称可以是文本型的基础元素。所述用户名称这一基础元素可以用于存放用户名称信息,所述用户名称这一基础元素的默认值可以是空值。可以设置用户名称这一基础元素的属性中第一标识为“txt”。
所述用户账号可以是多选型的基础元素,所述用户账号可以存放该商户所拥有的账号列表。可以设置用户账号这一基础元素的属性中第一标识为“checkbox”。所述用户账号的可选值可以包括:接口1、接口2和/或接口3。
所述用户账号是否签约可以是单选型的元素,所述用户是否签约可以存放该用户某一账号的签约信息。可以设置是否签约这一基础元素的属性中第一标识为“radio”。所述用户账号是否签约可选值可以包括:“是”或者“否”。
该业务模型中,数据规则可以包括:所述用户账号的接口与接口1、接口2、接口3可以是父子关系。所述用户的账号与用户账号拥有的接口为依赖关系,例如用户账号拥有的接口1、接口2、接口3都依赖于用户的A账号,受到用户A账号的控制。所述用户账号是否签约与“是”、“否”可以是父子关系。所述“是”和“否”可以是互斥关系。
S102:根据预设的数据类型与页面控件类型之间的第一对应关系,生成与所述数据结构对应的页面控件。
与用户交互的视图界面上可以包括页面控件。所述视图界面上的页面控件可以对应于所述数据结构中的基础元素。所述视图界面上页面控件的类型可以对应于所述数据结构中的数据类型。所述视图界面上页面控件之间的约束关系可以对应于所述数据结构中的数据规则。
计算机可以接收预设的第一对应关系。所述第一对应关系可以包括:数据类型与页面控件类型之间的第一对应关系。所述数据类型与页面控件类型之间的第一对应关系可以包括:本领域所有数据类型与所有页面控件类型之间的对应关系。
例如,文本型的基础元素对应的页面控件的类型可以是文本框,多选型的基础元素对应的页面控件的类型可以是多选框,单选型的基础元素对应的页面控件的类型可以是单选框。数值类型的基础元素对应的页面控件的类型可以是数值框。
根据所述第一对应关系可以生成与所述基础元素对应的页面控件。具体地,可以利用所述第一对应关系和所述数据结构中的第一标识,生成与所述基础元素对应的页面控件。所述数据结构可以用于描述业务模型,所述生成的页面控件可以与业务模型相对应。
例如,文本型的基础元素“用户名称”可以生成用于输入文本的文本框。多选类型的基础元素“用户账号”可以生成一个包含用户账号列表的多选框。
S103:根据预设的数据规则与控制规则之间的第二对应关系,生成与所述基础元素之间数据规则对应的页面控件之间的约束关系。
计算机可以接收预设的第二对应关系。所述第二对应关系可以包括数据规则与控制规则之间的第二对应关系。所述控制规则用于表示页面控件之间的约束关系。所述数据规则与控制规则之间的第二对应关系可以包括:本领域所有数据规则与所有控制规则之间的对应关系。
例如,基础元素之间为依赖或互斥关系的数据规则可以对应页面控件之间的级联关系控制规则;基础元素之间为父子关系的数据规则可以对应页面控件之间的父子层关系控制规则;对基础元素进行值的限定的数据规则可以对应页面控件的值校验形式控制规则,例如可以对应为邮箱格式或数字精度的校验。
根据所述第二对应关系,可以生成与所述基础元素之间数据规则对应的页面控件之间的约束关系。具体地,可以利用所述第二对应关系和所述数据结构中的第二标识,生成与所述基础元素之间数据规则相对应的页面控件之间的约束关系。
例如,在建立的第二对应关系中,数据规则中的父子关系可以对应控制规则中的父子层关系;那么接口列表与接口1、接口2、接口3为父子关系,在页面控件中表现为接口1、接口2和接口3为接口列表的子层。
S104:根据所述页面控件和所述页面控件之间的约束关系生成视图界面,显示所述视图界面。
根据生成的所述页面控件和所述页面控件之间的约束关系,计算机可以将所述页面控件按照所述页面控件之间的约束关系形成视图界面。所述视图界面用于计算机与用户之间的交互。计算机可以显示所述视图界面。
所述视图界面可以包括文本类型的基础元素对应的文本框、互斥关系的单选型基础元素对应的级联的单选框等。
例如,数据描述的业务模型中,用户帐号A拥有的接口列表包括:接口1、接口2和接口3。则视图界面显示的效果可以是:帐号A拥有的接口列表受到账号A的控制,当选择账号A时,可以显示账号A拥有的接口列表,接口列表的下一层为可多选的接口1、接口2和接口3。
所述数据结构用于描述业务模型。所述页面控件可以与数据结构中的基础元素相对应。所述页面控件的类型可以与数据结构中的数据类型相对应。所述页面控件之间的约束关系可以与数据结构中的数据规则相对应。根据所述页面控件和页面控件之间的约束关系所显示的视图界面可以与业务模型相对应。
举个例子来说明:
关于客户订单的业务模型,模型中的对象可以包括:客户姓名、客户订单号、订单金额。客户订单号可以受到客户姓名的控制,客户订单号中可以包括多个订单号。每一订单可以包含一个对应的订单金额。
用于描述上述业务模型的数据结构可以包括:文本类型的基础元素“客户姓名”、多选类型的基础元素“客户订单号”和数值类型的基础元素“订单金额”。其中,基础元素之间的数据规则可以包括:所述基础元素“客户订单号”可选的值可以包括:“订单1”和“订单2”。所述基础元素“客户订单号”可以依赖于基础元素“客户姓名”,所述基础元素“订单金额”可以依赖于基础元素“客户订单号”。所述基础元素“客户订单号”与“订单1”可以是父子关系,所述“客户订单号”与“订单2”可以是父子关系。
预设的数据类型与页面控件类型的第一对应关系可以包括:文本型的基础元素对应的页面控件的类型可以是文本框,多选型的基础元素对应的页面控件的类型可以是多选框,单选型的基础元素对应的页面控件的类型可以是单选框。数值类型的基础元素对应的页面控件的类型可以是数值框。
根据上述的第一对应关系,可以生成与基础元素对应的页面控件。所述页面控件可以包括:文本框“客户姓名”、多选框“客户订单号”和数值框“订单金额”。
预设的数据规则与控制规则的第二对应关系可以包括:基础元素之间为依赖关系的可以对应页面控件之间的级联关系;基础元素之间为父子关系的可以对应页面控件之间的父子层关系;对基础元素进行值限定的可以对应页面控件的值校验形式。
根据上述的第二对应关系,可以生成与基础元素之间数据规则对应的页面控件之间的约束关系。所述页面控件之间的约束关系可以包括:多选框“客户订单号”与文本框“客户姓名”为级联关系;多选框“客户订单号”的子层包括订单号列表“订单1”和“订单2”;对数值框“订单金额”进行值校验,例如数值框中的值要大于或等于0。
计算机可以根据上述生成的页面控件和页面控件之间的约束关系,生成视图界面并显示。
当业务模型发生变化时,例如,业务模型中增加了与“客户姓名”相关联的“客户年龄”,“客户年龄”的值大于0。相应地,用于描述业务模型的数据结构中可以增加数值类型的基础元素“客户年龄”,该基础元素依赖于基础元素“客户姓名”。
所述数据结构发生变化后,视图界面也可以相应地改变。根据预设的第一对应关系,原视图界面上可以增加数值框“客户年龄”。根据预设的第二对应关系,可以生成数值框“客户年龄”与其他页面控件的约束关系。例如,数值框“客户年龄”可以与文本框“客户名称”为级联关系,并对所述数值框“客户年龄”进行值校验,校验该数值框中的数值大于0。
本申请公开的业务可视化方法,根据用于描述业务模型的数据结构生成对应的有约束关系的页面控件,显示所述页面控件形成的视图界面。本申请的业务可视化方法,采用数据结构来描述业务模型,根据预设的数据类型和页面控件类型之间的对应关系,以及数据规则与控制规则之间的对应关系,将业务模型与显示的视图界面关联起来,当业务模型发生改变时,用于描述业务模型的数据结构也发生改变,视图页面也可以随数据结构相应地改变。可以提高生成与业务模型对应的视图的效率。
图2是本申请业务可视化系统一个实施例的组成结构示意图。如图2所示,所述业务可视化系统可以包括:数据接收单元100、页面控件单元200、约束关系单元300和视图界面单元400。其中,
所述数据接收单元100,可以用于接收包含基础元素数据类型和基础元素之间数据规则的数据结构。
所述数据结构可以包括用于描述业务模型的基础元素、所述基础元素的数据类型和数据规则。所述数据类型可以包括:文本类型、多选类型、单选类型或数值类型。
所述基础元素之间的数据规则可以包括:基础元素之间的依赖关系、基础元素之间的互斥关系、基础元素之间的父子关系或对基础元素进行值限定。
所述页面控件单元200,可以用于根据预设的数据类型与页面控件类型之间的第一对应关系,生成与所述基础元素对应的页面控件。
图3是本申请业务可视化系统实施例中页面控件单元的组成结构示意图。如图3所示,所述页面控件单元200,可以包括:第一对应关系单元210和页面控件生成单元220。其中,
所述第一对应关系单元210,可以用于接收预设的数据结构与页面控件类型之间的第一对应关系。
所述页面控件生成单元220,可以用于根据第一对应关系单元210接收的预设第一对应关系生成页面控件。所述页面控件与数据接收单元100中的基础元素相对应。
所述控制规则单元300,可以用于根据预设的数据规则与控制规则之间的第二对应关系生成与基础元素之间数据规则相对应的页面控件之间的约束关系。
图4是本申请业务可视化系统实施例中控制规则单元的组成结构示意图。如图4所示,所述约束关系单元300,可以包括:第二对应关系单元310和约束关系生成单元320。其中,
所述第二对应关系单元310,可以用于接收预设的数据规则与控制规则之间的第二对应关系。
所述约束关系生成单元320,可以用于根据第二对应关系单元310接收的预设第二对应关系,生成所述页面控件单元200的中页面控件之间的约束关系。所述页面控件之间的约束关系与数据接收单元100中接收的基础元素之间的数据规则相对应。
所述视图界面单元400,可以用于所述页面控件根据所述页面控件之间的约束关系生成视图界面,显示所述视图界面。
图5是本申请业务可视化系统实施例中视图界面单元的组成结构示意图。如图5所示,所述视图界面单元400,可以包括:视图界面生成单元410、视图界面显示单元420。
所述视图界面生成单元410,可以用于根据页面控件单元200生成的页面控件和约束关系单元300的生成的页面控件之间的约束关系,生成视图界面。
所述视图界面显示单元420,可以用于显示所述视图界面生成单元410生成的视图界面。
本申请公开的业务可视化系统实施例与业务可视化方法实施例相对应。根据用于描述业务模型的数据结构生成对应的有约束关系的页面控件,将业务模型与显示的视图界面关联起来,当业务模型发生改变时,视图页面也可以相应地改变。可以提高生成与业务模型对应的视图的效率。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(ProgrammableLogicDevice,PLD)(例如现场可编程门阵列(FieldProgrammableGateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片2。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logiccompiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(HardwareDescriptionLanguage,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(AdvancedBooleanExpressionLanguage)、AHDL(AlteraHardwareDescriptionLanguage)、Confluence、CUPL(CornellUniversityProgrammingLanguage)、HDCal、JHDL(JavaHardwareDescriptionLanguage)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardwareDescriptionLanguage)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegratedCircuitHardwareDescriptionLanguage)与Verilog2。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC625D、AtmelAT91SAM、MicrochipPIC18F26K20以及SiliconeLabsC8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。
本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。该计算机软件产品可以包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。该计算机软件产品可以存储在内存中,内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括短暂电脑可读媒体(transitorymedia),如调制的数据信号和载波。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
虽然通过实施例描绘了本申请,本领域普通技术人员知道,本申请有许多变形和变化而不脱离本申请的精神,希望所附的权利要求包括这些变形和变化而不脱离本申请的精神。