基于业务口径的多层级数据处理方法
技术领域
本发明涉及一种软件系统的数据处理方法,尤其涉及一种基于业务口径的多层级数据处理方法。
背景技术
在大型软件系统设计过程中,由于项目初期系统需求不会细化到具体的某一点,因此系统设计都是先进行概要架构设计,而后期需求细化后,由于工期等原因,往往导致详细设计都是口头的没有明确的设计文档等进行说明,也没有很详细的资料可以说明系统架构,这样的系统在使用过程中会导致很多不便,例如:不便于用户了解系统、不便于分析系统产生的问题以及有新需求需要不便进行系统修改。为了解决上述问题,需要在使用过程中梳理出清晰的系统架构,清楚描述多个逻辑层级的信息,包括业务架构、应用架构、数据模型、技术架构等层面的信息,还需要描述清楚不同层面的信息之间的相互关系,才能指导软件维护、需求变更评审、变更影响度分析以及测试工作的顺利进行。
目前对于架构分析通常使用的方法是自上而下法,从系统设计的角度出发,即从底层的信息系统组件开始,分模块按功能集整合,由系统内部到外部接口。这所有的分析都是在系统设计之上,首先按照系统设计,将系统划分不同的模块;然后在根据设计,整合出模块内部的功能;再次根据设计,分析出系统内部和外部的接口交互;最后将所有信息整合,就得到一个基于系统设计的完整的应用架构。
由上可见,现有技术的主要缺点如下:1、应用架构往往是从概要设计的基础上得出,只能表现系统比较粗颗粒度的面上的描述;2、应用架构从系统设计出发,无法保证架构的准确性。因为很多时候由于系统功能、需求的不断变化更新,功能的改变引起系统的改变,以至于真实的系统已经和设计的系统不同;3、简单的应用架构描述,让人无法看懂架构的体系和系统功能作用等;4、应用架构只能看出系统模块、系统功能集,无法体现系统具体业务;5、应用架构无法体现架构和业务之间的关系,以及业务和业务之间的关系;6、应用架构无法体现技术架构、数据架构、业务架构之间的关系。
因此,有必要通过以业务为口径分析应用架构,从使用系统的客户角度、从客户关注的业务功能出发,从业务的角度描述与展现应用架构,描述应用架构和业务之间的关系、业务和业务之间的关系,直接体现业务架构、应用架构、数据模型、技术架构的映射关系,让应用架构更清晰明了的展现,让应用架构变得简单易懂,最主要的是从最终系统实现出发,保证了架构和系统的一致性。
发明内容
本发明所要解决的技术问题是提供一种基于业务口径的多层级数据处理方法,能够根据关键业务数据流向的变化,分析出业务之间、数据模型之间以及多层架构之间的关系,大大增强架构可读性和易懂性,并可使得系统架构更加清晰简洁。
本发明为解决上述技术问题而采用的技术方案是提供一种基于业务口径的多层级数据处理方法,包括如下步骤:a)挑选关键业务,并获取所述关键业务包含的业务流程;b)将挑选出的关键业务按功能集进行归类,形成多个功能模块,每个功能模块具有相同的属性;c)分析所述功能模块间的关系以及接口交互;d)最后整合所有的关键业务、功能模块间的关系以及接口,得出系统应用架构。
上述的基于业务口径的多层级数据处理方法,其中,所述步骤a)中的关键业务按照使用频率、客户感知度和/或领导关注度,对系统所有业务进行分类排序后筛选获取。
上述的基于业务口径的多层级数据处理方法,其中,所述步骤a)中关键业务包含的业务流程的获取过程如下:根据业务功能的需求文档、概要设计和/或PDM数据字典熟悉,设计相应的业务场景;在UAT测试环境,打开数据库行为轨迹开关,按照所述业务场景进行业务操作,并根据业务操作整理出关键业务的流程步骤;关闭数据库行为轨迹开关,根据各关键业务流程步骤的开始时间和结束时间,在数据库中提取对应时间段中执行的SQL语句和访问的数据库表,以及所有库表的变化内容,包括会话ID、操作者、操作对象、操作动作以及操作语句;将所有的数据库操作按操作者、会话ID和时间进行排序,根据会话ID和开始结束时间筛选出各关键业务对应的SQL语句;根据各关键业务对应的SQL语句,以及所述SQL语句访问数据库的时间先后顺序,得出各个关键业务的具体步骤和数据流向图。
上述的基于业务口径的多层级数据处理方法,其中,所述步骤a)还包括通过对比业务日志和业务设计方案,验证所述关键业务的具体步骤和数据流向图的准确性。
上述的基于业务口径的多层级数据处理方法,其中,所述步骤b)中的功能模块按不同属性分为用户登录管理模块、客户账户模块以及订单模块。
上述的基于业务口径的多层级数据处理方法,其中,所述步骤c)先根据不同业务场景,模拟不同的业务交互,获取功能模块间接口交互的参数、报文和配置信息;然后进行协议解析和信令解析获取数据流向,达到对功能模块的数据跟踪。
上述的基于业务口径的多层级数据处理方法,其中,所述步骤d)保存所有关键业务的业务流程、业务关联的数据库表以及业务所流经的功能模块。
上述的基于业务口径的多层级数据处理方法,其中,所述关键业务、数据库表以及功能模块之间建立有映射关系,所述关键业务的业务流程由多个业务节点组成,所述业务节点中存储有内部逻辑流程、节点属性、数据流向、库表结构、服务器以及服务器IP地址信息,所述业务流程预设多级显示粒度对业务节点中的信息进行分级显示。
上述的基于业务口径的多层级数据处理方法,其中,所述关键业务的业务流程默认以最细粒度显示各个业务节点中存储的所有信息以及业务节点连线图,所述业务节点通过贝塞尔曲线进行绘制。
本发明对比现有技术有如下的有益效果:本发明提供的基于业务口径的多层级数据处理方法,通过挑选关键业务,获取所述关键业务的业务流程并归类形成多个功能模块,通过整合所有的关键业务、功能模块间的关系以及接口,得出系统应用架构,从而能够根据关键业务数据流向的变化,分析出业务之间、数据模型之间以及多层架构之间的关系,大大增强架构可读性和易懂性,并可使得系统架构更加清晰简洁。
附图说明
图1为本发明基于业务口径的多层级数据处理流程示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的描述。
图1为本发明基于业务口径的多层级数据处理流程示意图。
请参见图1,本发明提供的基于业务口径的多层级数据处理方法包括如下步骤:
步骤S1:挑选关键业务,并获取所述关键业务包含的业务流程;所述关键业务可以按照使用频率、客户感知度和/或领导关注度,对系统所有业务进行分类排序后筛选获取。所述关键业务包含的业务流程的获取过程如下:
根据业务功能的需求文档、概要设计和/或PDM数据字典熟悉,设计相应的业务场景;
在UAT测试环境(User Acceptance Test的简写,也就是用户验收测试),打开数据库行为轨迹开关,按照所述业务场景进行业务操作,如果设计了多个场景就需要按场景进行多种操作,每种操作依次分析,并根据业务操作整理出关键业务的流程步骤;
关闭数据库行为轨迹开关,根据各关键业务流程步骤的开始时间和结束时间,在数据库中提取对应时间段中执行的SQL语句和访问的数据库表,以及所有库表的变化内容,包括会话ID、操作者、操作对象、操作动作以及操作语句;
将所有的数据库操作按操作者、会话ID和时间进行排序,根据会话ID和开始结束时间筛选出各关键业务对应的SQL语句;根据各关键业务对应的SQL语句,以及所述SQL语句访问数据库的时间先后顺序,得出各个关键业务的具体步骤和数据流向图,打通从业务到数据模型之间的业务链路。
最后,本发明还可以通过对比业务日志和业务设计方案,验证所述关键业务的具体步骤和数据流向图的准确性。本发明通过业务设计方案,可以得到业务的整体流程简述,清楚业务走向,将该流程和关键业务流程对比,就可以验证关键业务的主体流程正确性。此外,本发明通过业务操作和日志分析,可以提取到业务的详细步骤,步骤关联的库表,将该步骤和关键业务流程细节对比,同样可以验证关键业务的细节流程正确性。
步骤S2:将挑选出的关键业务按功能集进行归类,形成多个功能模块,每个功能模块具有相同的属性;如将不同的关键业务,根据不同的特点、功能特性、使用频率、使用方法等不同的属性,进行归类,集合成具有相同属性的多个模块。比如说:所有跟用户、客户、账户有关的可以归纳为三户模块;所有跟订单有关的,归纳为订单模块。业务功能集归类方法如下:
针对已确认的业务步骤,进行业务信息的收集、筛选、整理、确认,最终整理出各个业务步骤之间、数据之间的相互关系;
然后按概念归类相同业务集的业务,提炼业务功能;
根据业务功能,再归类相同功能集的模块,并且提炼系统模块。
步骤S3:分析所述功能模块间的关系以及接口交互;具体分析过程如下:先根据不同业务场景,模拟不同的业务交互,获取功能模块间接口交互的参数、报文和配置信息;然后进行协议解析和信令解析获取数据流向,达到对黑匣子功能模块的数据跟踪。
步骤S4:最后整合所有的关键业务、功能模块间的关系以及接口,得到一个从下到上的基于系统设计的完整的应用架构。本发明保存所有关键业务的业务流程、业务关联的数据库表以及业务所流经的功能模块,应用架构都录入到数据架构管理平台,形成统一管理。当业务功能点改变,相应的业务流程或者库表发生改变,只需要输入变化的业务或者具体变化的库表等,通过数据库表的检索,就能从数据库中关联出所有具有相同业务步骤或者相同库表的业务,作为受影响的业务,这些业务在系统升级过程中需要重点关注,防止功能被影响,造成系统故障。影响度的分析,极大的降低了系统故障率,提高了系统的稳定性和可维护性,从而使需求变更变得可控。
本发明通过以业务为口径分析应用架构,从使用系统的客户角度、从客户关注的业务功能出发,从业务的角度描述与展现应用架构,描述应用架构和业务之间的关系、业务和业务之间的关系,直接体现业务架构、应用架构、数据模型、技术架构的映射关系,让应用架构更清晰明了的展现,让应用架构变得简单易懂,最主要的是从最终系统实现出发,保证了架构和系统的一致性。
本发明以业务为口径,分层多级展现系统的应用架构,整个展现可分四层:第一层展现所有相关的系统、平台;第二层展现各个系统的功能,以及涉及的相关接口;第三层展现各个功能模块的业务功能;第四层展现各个系统各个业务功能的业务数据流程。整个以业务为口径、分层多级的应用架构展示,使不同的人可以只关注自己那一层级的架构,清晰明了易懂;同时上下多层的展示,也让人更能明白层级之间的关系。为了便于分层显示处理,所述关键业务、数据库表以及功能模块之间可建立映射关系,所述关键业务的业务流程由多个业务节点组成,所述业务节点中存储有内部逻辑流程、节点属性、数据流向、库表结构、服务器以及服务器IP地址信息,所述业务流程预设多级显示粒度对业务节点中的信息进行分级显示。所述关键业务的业务流程默认以最细粒度显示各个业务节点中存储的所有信息以及业务节点连线图,所述业务节点通过贝塞尔曲线进行绘制。
虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的修改和完善,因此本发明的保护范围当以权利要求书所界定的为准。