错误检查方法

文档序号:6482453阅读:162来源:国知局
专利名称:错误检查方法
技术领域
本发明涉及图形化数据处理系统中错误检查方法。
技术背景上世纪六七十年代,随着面向对象编程语言的问世,面向对象程序设计 的各种软件开发方法和架构也应运而生并得以迅速发展。面向对象程序设计的核心之处在于提出了 "对象"的概念,通过将客观 实体抽象成具有一定属性和功能的"对象",并且通过将"对象"进行封装, 仅对外开放其属性和功能的参数接口 ,使得程序员在编写程序的过程中并不 需要知道对象本身的方法是如何实现的以及具体的属性如何,而只需要调用 对象的参数接口,就可调用对象并完成特定的功能。目前常用的MFC (Microsoft Foundation Classes )就是一个包含了 一百多 个类的类库,其中,这些类就是软件开发过程中最常用到的对象。在编程过 程中,除了调用这些已有对象的参数接口,以实现所需要的功能,还可以利 用"继承"的方法从MFC类库中的已有对象派生出各种自定义对象,这些自 定义对象除了具有已有对象的属性和功能之外,还可以根据需要具有各种自 定义的属性和功能,从而实现对象的扩展。然而,随着软件产业的蓬勃发展,软件系统变得越来越复杂。 一个软件 系统通常包括不止一个包含多个应用实例的项目,若其中的每一个应用实例 都通过生成代码来实现,那么完成整个软件系统的生成代码的工作量将非常 巨大,无法处理繁杂的例如参数、返回值、时序、依赖等量,且在生成代码 过程中极易产生错误。因此在开发过程中,通过生成代码的方式建立软件系统就显得不现实。
有鉴于此,业界设计出可以通过复用代码的方式来实现。建立能执行特
定功能的功能模块,复杂的问题可以在功能模块内处理;并且,每一个功能
模块提供比较简单的对外接口,用于功能模块之间建立关联和复用,实现功能的复用。同一个功能才莫块可能需要被复用于相同或不同项目中的一个或多个应用实例中。由于每次应用环境的差异, 一般来说,由于编程思路和应用环境存在差异,在复用的过程中,还需要针对不同的应用实例对功能模块内参数、数据类型等、以及功能模块的对外接口、依赖关系、映射关系等作相应的变动。这样,就会容易出现例如未修改或修改错误其中的参数、数据类型,或未修改或修改错误功能模块的对外接口、依赖关系、映射关系等诸多问题。这不仅造成程序的出错率大大增加,还给后续的维护和检查工作带来很大的困难,既拖延了开发周期,也增加了开发成本。

发明内容
本发明要解决的问题是提供一种应用于图形化数据处理系统中的错误检查方法,避免由于图形化数据处理系统中各功能模块及其相互间的链接关系产生错误所带来的出错率增加、工作量增大、开发周期延长以及开发成本提高的问题。
为解决上述问题,本发明提供了一种错误检查方法,具体包括搜索并读取图形化数据处理系统中核心逻辑块和显示逻辑块的数据信息;根据具体项目,得到核心逻辑块之间的依赖关系以及核心逻辑块、显示逻辑块和显示数据之间的映射关系;根据核心逻辑块和显示逻辑块的数据信息,检查具体项目中核心逻辑块之间的依赖关系或者核心逻辑块、显示逻辑块和显示数据之间的映射关系是否成立。
可选地,所述错误;险查方法还包括输出;^查结果。可选地,核心逻辑块之间的依赖关系成立的条件包括主核心逻辑块的
输出数据的数据类型与从核心逻辑块的输入数据的数据类型相一致。
可选地,核心逻辑块之间的依赖关系成立的条件还包括核心逻辑块之间不存在依赖回环的现象。
可选地,核心逻辑块、显示逻辑块和显示数据之间的映射关系成立的条件包括核心逻辑块的输出数据的数据类型与显示逻辑块的输入数据的数据类型相一致。
可选地,核心逻辑块、显示逻辑块和显示数据之间的映射关系成立的条件还包括显示逻辑块的输出数据的数据类型与显示数据的数据类型相一致。
可选地,在核心逻辑块之间的依赖关系具体为一对一、 一对多、交叉依赖或等级依赖的关系。
可选地,核心逻辑、显示逻辑块和显示数据之间的映射关系具体为一对一或一对多的关系。
相较于现有技术,本发明通过读取核心逻辑块和显示逻辑块的数据信息,进而根据具体项目判断核心逻辑块之间的依赖关系以及核心逻辑块、显示逻辑块和显示数据之间的映射关系成立与否,可以将所述依赖关系或映射关系中的错误快速且准确地才企查出,以供后续进行^f'务正,保图形化数据处理系统中各具体项目能够实现。


图1是本发明错误检查方法在一个实施例中的流程示意图2是应用图1中所述错误检查方法的图形化数据处理系统的组成框图3A至3D是显示图2中核心逻辑块之间的依赖关系在不同实施例中的示意图;图4A和4B是显示图2中核心逻辑块、显示逻辑块和显示数据之间的映射关系在不同实施例中的示意图5是显示图2中核心逻辑块和显示逻辑块之间的映射关系存在逻辑死循环时在不同实施例中的示意图6是本发明错误检查方法在另 一个实施例中的流程示意图。
具体实施例方式
本发明的发明人发现,在大型的软件系统中,可以利用复用代码方式通过建立能单独执行特性功能的功能模块以及各功能模块的复用来实现,相对于利用生成代码的方式建立软件系统,大幅减少了工作量,并降低了出错率。但不可避免地,还是会出现例如未修改或修改错误其中的参数、数据类型,或未修改或修改错误功能模块的对外接口、依赖关系、映射关系等诸多问题。因此,仍很有必要对所述功能模块的具体设置以及各功能模块之间的关联性进行检查,以修正其中产生的错误。
发明人正是基于对上述问题的综合考虑,提出了本发明。
本发明实施方式提供了 一种错误检查方法,主要是通过读取核心逻辑块和显示逻辑块的数据信息;根据具体项目判断所述具体项目中核心逻辑块之间的依赖关系以及核心逻辑块、显示逻辑块和显示数据之间的映射关系成立与否,能够快速且准确地检查出错误来,以供后续对所述错误进行修正。
下面即结合附图和实施例对本发明的具体实施方式
做详细的说明。
图1显示了本发明错误检查方法在一个具体实施例中的流程示意图。如图1所示,所述错误检查方法包括如下步骤
S10,搜索并读取图形化数据处理系统中核心逻辑块和显示逻辑块的数据牧自.Sll,根据具体项目,得到核心逻辑块之间的依赖关系以及核心逻辑块、
显示逻辑块和显示数据之间的映射关系;
S12,根据核心逻辑块和显示逻辑块的数据信息,检查具体项目中核心逻辑块之间的依赖关系或者核心逻辑块、显示逻辑块和显示数据之间的映射关系是否成立;
S13,输出检查结果。
首先执行步骤SIO,搜索并读取图形化数据处理系统中核心逻辑块和显示逻辑块的数据信息。
在对步骤S10进行描述前,预先对所提及的图形化数据处理系统作一下介绍。如图2所示,显示了图形化数据处理系统的组成框图。如图所示,在所述图形化数据处理系统中,至少包括核心逻辑库20、显示逻辑库21、图形库22、工具23和项目24。其中,核心逻辑库20包括有多个核心逻辑块,核心逻辑块相互之间形成有依赖关系;显示逻辑库21包括有多个显示逻辑块,所述显示逻辑块与核心逻辑块形成有映射关系。
每个项目24的应用层由多个窗口 241和窗口属性表242组成,每个窗口241由控件代码241a和链接代码241b组成,控件代码241a用于描述控件属性(即显示数据),链接代码241b用于将核心逻辑块和显示逻辑块链入系统。
就是说,每个项目24包括有能够复用的核心逻辑块和显示逻辑块,且核心逻辑块之间以及核心逻辑块与显示逻辑块之间建立有一定的链接关系。具体而言,由多个核心逻辑块根据相互之间的依赖关系所组成的链路就是核心逻辑链,用于描述系统状态。由核心逻辑块、显示逻辑块和显示数据之间的映射关系所组成的链路就是显示逻辑链,用于描述显示数据的来源。
由上可见,所述图形化数据处理系统,建立标准化和模块化的核心逻辑块和显示逻辑块,并在核心逻辑块之间以及核心逻辑块与显示逻辑块之间建立链接关系,这样对于不同的项目,可以通过链入不同的核心逻辑块、显示逻辑块和显示lt据来实现。
因此,在步骤S10中,就搜索出图形化数据处理系统中所有的核心逻辑块和显示逻辑块,并将核心逻辑块和显示逻辑块的数据信息读取出来。具体
来讲,对于核心逻辑块,所述数据信息包括能输出哪些数据,每一个数据的类型是什么;需要哪些外部数据,每一个数据的类型是什么。对于显示逻辑块,所述数据信息包括输入哪些数据,每一个数据的类型是什么;输出哪些数据,每一个数据的类型是什么。
接着执行步骤Sll,根据具体项目,得到核心逻辑块之间的依赖关系以及核心逻辑块、显示逻辑块和显示数据之间的映射关系。
在本实施例中,就是根据某一具体项目,获得在所述具体项目内所涉及的核心逻辑块之间的依赖关系以及核心逻辑块、显示逻辑块和显示数据之间的映射关系。
具体来讲,对于核心逻辑块之间的依赖关系,指的就是负责将核心逻辑块链接的核心逻辑链,通过核心逻辑链,各个核心逻辑块之间就建立有依赖关系。在实际应用中,在核心逻辑块之间的依赖关系可以是一对一、 一对多、交叉依赖或等级依赖的关系。具体来讲,所述一对一的关系指的是包括有一个主核心逻辑块和一个/人核心逻辑块,例如,如图3A所示,核心逻辑块B(作
关系指的是包括有一个主核心逻辑块和直接依赖于所述主核心逻辑块的多个从核心逻辑块,例如,如图3B所示,核心逻辑块B、 C(作为从核心逻辑块)分别依赖于核心逻辑块A (作为主核心逻辑块);所述交叉依赖的关系指的是多个核心逻辑块之间相互依赖,例如,如图3C所示,核心逻辑块B、 C(作为从核心逻辑块)依赖于核心逻辑块A (作为主核心逻辑块),核心逻辑块D(作为从核心逻辑块)依赖于核心逻辑块A、 B (作为主核心逻辑块);所述 等级依赖的关系指的是多个核心逻辑块之间的依赖关系呈等级,例如,如图 3D所示,核心逻辑块B、 C (作为从核心逻辑块)依赖于核心逻辑块A (作 为主核心逻辑块),核心逻辑块D、 E (作为从核心逻辑块)分别依赖于核心 逻辑块B、 C (作为主核心逻辑块)。在这里,所谓的主核心逻辑块和/人核心 逻辑块是相对的,对于一个依赖关系来讲,依赖者为从核心逻辑块,被依赖 者为主核心逻辑块。
所述核心逻辑、显示逻辑块和显示数据之间的映射关系,指的就是负责 在核心逻辑块、显示逻辑块和显示数据之间建立链接,通过显示逻辑链,核 心逻辑显示逻辑块和显示数据之间建立映射关系。在本实施例中,在核心逻 辑、显示逻辑块和显示数据之间的映射关系可以是一对一或一对多的关系。 具体来讲,所述一对一的关系指的是一个核心逻辑块与一个显示逻辑块建立 链接,例如,如图4A所示,核心逻辑块A、显示逻辑块K和显示数据X建 立映射关系;所述一对多的关系指的是一个核心逻辑块与多个显示逻辑块建 立链接,,例如,如图4B所示,核心逻辑块A、显示逻辑块K和显示数据X 建立映射关系,核心逻辑块A、显示逻辑块L和显示凝:据Y建立映射关系, 核心逻辑块A、显示逻辑块M和显示数据Z建立映射关系,这样就可在一个 系统状态下显示多个显示数据。
通过步骤Sll,可以将所涉及的核心逻辑块、显示逻辑块和显示数据进行 分类,便于后续的检查。具体而言,就是根据依赖关系进行分类,将相互之 间建立有依赖关系的核心逻辑块列为一个检查组。以及是根据映射关系进行 分类,将相互之间建立有映射关系的核心逻辑块、显示逻辑块和显示数据列 为一个^r查组。
接着执行步骤S12,根据核心逻辑块和显示逻辑块的数据信息,检查具体 项目中核心逻辑块之间的依赖关系或者核心逻辑块、显示逻辑块和显示数据之间的映射关系是否成立。
在本实施例中,对于核心逻辑块之间的依赖关系是否成立,主要是在于
检查A)、主核心逻辑块的输出数据的数据类型与从核心逻辑块的输入数据 的数据类型是否保持一致;B)、核心逻辑块之间是否存在依赖回环的现象。 对于核心逻辑块、显示逻辑块和显示数据之间的映射关系是否成立,主要是 在于检查a)、核心逻辑块的输出数据的数据类型与显示逻辑块的输入数据 的数据类型是否一致;b)、显示逻辑块的输出数据的数据类型与显示数据的 数据类型是否保持一致。
对于A),以图3B为例进行说明,核心逻辑块A与核心逻辑块B之间建 立依赖关系,核心逻辑块A与核心逻辑C之间建立依赖关系。这样在步骤S12 , 就是要检查核心逻辑块A所能提供的输出数据的数据类型与核心逻辑块B所 需要的输入数据的数据类型是否保持一致。同理,也包括检查核心逻辑块A 所能提供的输出数据的数据类型与核心逻辑C所需要的输入数据的数据类型 是否保持一致。若检查发现不一致,则可以判定核心逻辑块之间的依赖关系 不成立。
对于B ),还是以3B为例进行说明,就是4企查核心逻辑块A与核心逻辑 块B之间或核心逻辑块A与核心逻辑C之间是否存在依赖回环的现象。若检 查发现存在依赖回环的现象,则可以判定核心逻辑块之间的依赖关系不成立。
所谓的依赖回环指的是核心逻辑块之间建立的依赖关系形成环形的现 象,出现依赖回环会造成系统运行的死循环。如图5所示,核心逻辑块B依 赖于核心逻辑块A,核心逻辑块C依赖于核心逻辑块B,而核心逻辑块A又 依赖核心逻辑块C,所述依赖关系即会造成依赖回环。
在实际应用中,假设所述图形化数据处理系统应用于视频处理领域中, 例如,核心逻辑块A管理当前频道(例如CCTV-1 ),核心逻辑块B管理当前节目(例如新闻联播),核心逻辑块B需要核心逻辑块A提供频道数据才能工 作。这时就是要检查核心逻辑块A提供的数据类型和核心逻辑块B需要的数 据类型是否一致,倘若核心逻辑块A提供频道号时,核心逻辑块B需要的也 应该是频道号。另外,还要检查核心逻辑块A和核心逻辑块B是否存在依赖 回环现象。
对于a)和b),以图4B为例进行说明,核心逻辑块A、显示逻辑块L和 显示数据Y建立有映射关系。这样在步骤S12,就是要^r查核心逻辑块A所 能提供的输出数据的数据类型与显示逻辑块L所需要的输入数据的数据类型 是否保持一致;以及检查显示逻辑块L所能提供的输出数据的数据类型与显 示数据的数据类型是否保持一致。若检查发现不一致,则可以判定核心逻辑 块、显示逻辑块和显示数据之间的映射关系不成立。
在实际应用中,假设所述图形化数据处理系统应用于视频处理领域中, 例如,核心逻辑块A管理当前音量,显示逻辑块L能将一个数字转换为字符 串,显示数据X是某个文本框的属性。这时就是要检查核心逻辑块A所提供 的数据类型是否是显示逻辑块L所需要的数据类型,倘若核心逻辑块A提供 数字,显示逻辑块L需要的也应该一个数字;另外,还要检查显示逻辑块L 所转化出来的数据类型是否是显示数据X所需要的数据类型,倘若显示逻辑 块L输出字符串,显示数据X需要的也应该是字符串。
接着执行步骤S14,输出检查结果。在本实施例中,所述输出检查结果可 以通过图形化界面输出,所述图形化界面可以是列表或图表的方式,具体显 示上,可以采取将比对的所有结果都显示出来,并将出错的部分以高亮或以 不同的颜色来显示。也可以采取仅将出错的部分显示出来。工作人员就可以 根据所述检查结果,找到出错的部分,并可以相应地对其进行修正,快速且 准确。通过上述各步骤,能够对图形化数据处理系统中所涉及的核心逻辑块之 间的依赖关系以及核心逻辑块、显示逻辑块和显示数据之间的映射关系可能 存在的错误能够快速且准确地检查出来,大大降低了系统运行的出错率,既 减少了开发周期并降低了开发成本。
图6显示了本发明错误检查方法在另一个具体实施例中的流程示意图。
如图6所示,所述错误检查方法包括如下步骤
S20,根据具体项目,得到核心逻辑块之间的依赖关系以及核心逻辑块、 显示逻辑块和显示邀:据之间的映射关系;
4吕息^
S22,根据核心逻辑块和显示逻辑块的数据信息,检查具体项目中核心逻 辑块之间的依赖关系或者核心逻辑块、显示逻辑块和显示数据之间的映射关 系是否成立;
S23,输出检查结果。
这样,就可以根据具体项目,可以对于所述具体项目中所涉及的核心逻 辑块之间的依赖关系以及核心逻辑块、显示逻辑块和显示数据之间的映射关 系进行错误检查,所述各步骤中的具体内容可参照前述实施例中的描述。在 所述另 一具体实施例中,相对提高错误检查的针对性。
虽然本发明已通过较佳实施例说明如上,但这些较佳实施例并非用以限 定本发明。本领域的技术人员,在不脱离本发明的精神和范围内,应有能力 对该较佳实施例做出各种改正和补充,因此,本发明的保护范围以权利要求 书的范围为准。
权利要求
1.一种错误检查方法,其特征在于,包括搜索并读取图形化数据处理系统中核心逻辑块和显示逻辑块的数据信息;根据具体项目,得到核心逻辑块之间的依赖关系以及核心逻辑块、显示逻辑块和显示数据之间的映射关系;根据核心逻辑块和显示逻辑块的数据信息,检查具体项目中核心逻辑块之间的依赖关系或者核心逻辑块、显示逻辑块和显示数据之间的映射关系是否成立。
2. 如权利要求1所述的错误检查方法,其特征在于,还包括输出检查结果。
3. 如权利要求1所述的错误检查方法,其特征在于,核心逻辑块之间的依赖 关系成立的条件包括主核心逻辑块的输出数据的数据类型与从核心逻辑块 的输入数据的数据类型相 一 致。
4. 如权利要求3所述的错误检查方法,其特征在于,核心逻辑块之间的依赖 关系成立的条件还包括核心逻辑块之间不存在依赖回环的现象。
5. 如权利要求1所述的错误;险查方法,其特征在于,核心逻辑块、显示逻辑 块和显示数据之间的映射关系成立的条件包括核心逻辑块的输出数据的数 据类型与显示逻辑块的输入数据的数据类型相一致。
6. 如权利要求5所述的错误检查方法,其特征在于,核心逻辑块、显示逻辑 块和显示数据之间的映射关系成立的条件还包括显示逻辑块的输出数据的数据类型与显示数据的数据类型相一致。
7. 如权利要求1所述的错误检查方法,其特征在于,在核心逻辑块之间的依 赖关系具体为一对一、 一对多、交叉依赖或等级依赖的关系。
8.如权利要求1所述的错误检查方法,其特征在于,核心逻辑、显示逻辑块 和显示数据之间的映射关系具体为 一对一或一对多的关系。
全文摘要
一种错误检查方法,包括搜索并读取图形化数据处理系统中核心逻辑块和显示逻辑块的数据信息;根据具体项目,得到核心逻辑块之间的依赖关系以及核心逻辑块、显示逻辑块和显示数据之间的映射关系;根据核心逻辑块和显示逻辑块的数据信息,检查具体项目中核心逻辑块之间的依赖关系或者核心逻辑块、显示逻辑块和显示数据之间的映射关系是否成立。相较于现有技术,本发明能将核心逻辑块之间的依赖关系或核心逻辑块、显示逻辑块和显示数据之间的映射关系产生的错误快速且准确地检查出,确保图形化数据处理系统中各具体项目能够实现。
文档编号G06F11/36GK101515249SQ20091004848
公开日2009年8月26日 申请日期2009年3月26日 优先权日2009年3月26日
发明者岚 刘, 昊 殷, 琦 董 申请人:华亚微电子(上海)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1