一种基于本体的RUCM模型一致性检查方法与流程

文档序号:11250680阅读:653来源:国知局
一种基于本体的RUCM模型一致性检查方法与流程
本发明涉及rucm建模
技术领域
,尤其涉及一种基于本体的rucm模型一致性检查方法。
背景技术
:大多数软件需求规格说明是通过自然语言撰写的。在软件需求规格说明文档中,大部分领域概念是通过自然语言定义和描述的,软件需求的具体需求项也是通过自然语言撰写的。因此,在这些需求描述中,往往存在模棱两可或含糊不清的表述,这种不确定的表述往往在不同项目中会出现分歧和误解,很有可能导致软件项目的失败。在撰写软件需求规格说明时,除了使用传统的纯自然语言描述的形式以外,一种基于规则约束自然语言的结构化用例描述模板(rucm建模)的方法也被广泛使用。该方法定义了描述软件需求用例规则模板,对特定的规则描述模板中包含的说明项是自然语言描述的。在rucm(reatrictedusecasemodeling)建模方法中,需求描述采用具有限制的自然语言和用例规约模板来描述。由于软件需求分析师在使用rucm建模方法过程中,缺少对软件需求的领域知识的了解,最后形成的软件需求规格说明往往会出现不一致的领域相关的错误。对于同样的功能,不同的软件需求分析师,根据对软件需求的领域知识的了解的信息不对等和不完备,最终撰写的软件需求文档可能会存在很大的不一致问题。技术实现要素:鉴于上述的分析,本发明旨在提供一种基于本体的rucm模型一致性检查方法,用以解决现有的软件需求分析师在撰写软件需求中存在的需求不一致的问题。所述方法结合本体模型表达的领域知识,分析包含自然语言描述的需求文本和rucm模型描述的用例需求的软件需求的一致性、完整性。所述本体是对领域中包含的知识进行特定抽象表达。在计算机科学研究领域上,所述本体模型是按照领域中的概念、概念间的关系、概念属性抽象出现实的模型。本发明的目的主要是通过以下技术方案实现的:包括如下步骤:步骤s1、建立用于rcum模型检验的本体模型库;步骤s2、建立步骤s1中的本体模型库到rucm模型的概念映射关系,形成关系映射模板;步骤s3、根据所述步骤s2建立的映射关系定义相应的一致性检验规则,通过规则自动检测rucm需求中描述的不一致,从而形成相应的评估报告。所述步骤s1包括如下子步骤:步骤s101、通过分析领域相关的背景材料,形成抽象的领域概念,构建领域相关的本体概念库;步骤s102、结合软件需求所需要实现的目标软件系统的领域背景分析核心概念之间的关系,得到本体关系库;步骤s103、根据领域核心概念之间的关系,添加领域概念特定属性得到本体概念属性库;步骤s104、根据上述的本体概念库、本体关系库和本体概念属性库,形成本体模型的模板集合,然后将模板集合整合形成用于rucm模型检验的本体模型库即领域本体库。所述步骤s2包括如下子步骤:步骤s201、确定和标注本体的核心概念属性;步骤s202、识别和标注软件需求的概念;步骤s203、在标注好本体的核心概念属性和软件需求的概念的基础上,得到两者之间的对应规则。所述步骤s3包括如下子步骤:步骤s301、根据所述步骤s2建立的映射关系定义相应的一致性检验规则;步骤s302、设计相应的分析需求的算法,自动形成相应的评估报告。本发明对传统的rucm模型进行了扩展。针对本体模型中包含三类元素:概念、概念之间的关系和概念属性,分别设计了扩展支持本体模型检查的rucm模型,形成ontorucm(ontology-basedrucm)模型。所述ontorucm模型的建模工具框架在基础层复用了eclipse集成开发环境的三项技术。第一,框架复用了eclipse的工作台,功能包括提供基本图形界面元素和文件资源管理功能,即workbenchui和workspace两个eclipse核心模块;第二,框架复用了eclipse的插件开发环境pde,以实现元模型层面和编辑器层面的动态扩展功能;第三,框架复用了eclipse建模框架emf的部分功能,以实现模型文件与其他工具的兼容性。ontorucm模型在扩展层提供相应的扩展类库,用于增加一致性检查的扩展点。最上层的编辑器层则是使用了编辑器和插件相互独立的架构方式,最终形成ontorucm模型的设计整体架构。本发明有益效果如下:本发明通过rucm扩展的用户定义需求模型到本体的映射关系的定义,明确了检验规则的相关重要特性,利用领域知识来检验用户的需求;规范化rucm软件需求的一致性和完整性的检查方法,为软件需求的一致性检测手段提供了一个自动化实现的手段。本发明的其他特征和优点将在随后的说明书中阐述,并且,部分的从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。附图说明附图仅用于示出具体实施例的目的,而并不认为是对本发明的限制,在整个附图中,相同的参考符号表示相同的部件。图1为基于本体的rucm模型一致性检查过程图图2为领域本体库的建立过程图图3为ontorucm需求建模工具架构图图4为基于本体的rucm模型一致性规则工具实现方案图具体实施方式下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理。本发明为了自动化解决目前软件需求的不一致及软件需求和领域知识相违背的相关问题,公开了一种需求模型一致性的检查方法。所述方法结合本体模型表达的领域知识,分析包含自然语言描述的需求文本和rucm模型描述的用例需求的软件需求的一致性、完整性。所述本体是对领域中包含的知识进行特定抽象表达。本实施例提供的一致性检查方法,如图1所示,包括如下步骤:步骤s1、建立用于rcum模型检验的本体模型库。所述本体模型库的具体建立步骤,如图2所示,包括如下子步骤:步骤s101、通过分析领域相关的背景材料,形成抽象的领域核心概念,构建领域相关的本体概念库。通常软件工程的项目会伴随着使用大量的特定领域相关知识和概念。标准的领域材料包括介绍该领域知识的教科书、领域内相关标准文集、规范等。如:嵌入式操作系统相关的,需要对操作系统领域的教科书、维基百科以及相关的标准和规范进行分析,得出操作系统领域的核心概念,如进程,线程和分区等。抽象得出的核心概念构建领域相关的本体概念库。本体概念库的形成可以采用nlp处理提取概念和手工添加概念的方式。步骤s102、结合软件需求所需要实现的目标软件系统的领域背景分析核心概念之间的关系,得到本体关系库。本体关系库描述了领域中核心概念之间相互的依赖关系。如嵌入式操作系统,该领域比较典型的关系有:函数之间的使用调用关系、进程和操作系统之间的资源关联关系、内核会包含分区,这种“包含”就是内核和分区的关系等。步骤s103、根据领域核心概念之间的关系,添加领域概念特定属性得到本体概念属性库。概念属性是概念的附加信息,起到对概念的解释和补充作用,用来为检验一致性提供附加的信息和标准。例如,在操作系统领域中,给进程添加“必需”这样的属性,表示进程在所有操作系统中都是重要的核心概念。图形界面并不算操作系统都需要具备的,所以可以将图形界面添加“非必需”这样的属性,表示图形界面只是操作系统的附属的核心概念。步骤s104、根据上述的本体概念库、本体关系库和本体概念属性库,形成本体模型的模板集合,然后将模板集合整合形成用于rucm模型检验的本体模型库即领域本体库。本发明所使用的表达领域知识的本体模型包含领域概念、领域概念关系和领域概念属性这三个部分。根据本发明的特点,形成的最终本体库的需要有建立和表示的方法。本发明设计建立的本体概念元素可以使用下表中模板表示。从而形成本体模型的视图。表1本体元素列举概念节点描述领域中的相关概念概念之间的关系描述概念之间的关系概念节点属性描述概念节点的其它属性,用于软件需求分析推导步骤s2、建立步骤s1中的本体模型库到rucm模型的概念映射关系,形成关系映射模板。具体包括如下子步骤:步骤s201、确定和标注本体的核心概念属性。针对领域本体中的全部概念,并不是所有概念都是等价的,在特定的软件需求中,不同的概念之间需要标注不同的属性,用于区分本体中定义的概念在软件需求概念中的作用。步骤s202、识别和标注软件需求的概念。一个软件需求项的rucm用例比较复杂,不仅包括需求的数据流,还包含数据处理之间的控制流。所以,采取扩展rucm的语义这种方式,将rucm用例中使用或出现的概念通过扩展的方式标记出来。步骤s203、在标注好本体的核心概念属性和软件需求的概念的基础上,得到两者之间的对应规则。所述对应规则有下面两种方式:1.所述本体模型中概念和所述软件需求的概念用词完全一致可以判定是同一概念;2.所述本体模型中概念之间关系和软件需求中的概念的上下文中动词多处出现一致可以判定很大几率上是统计概念,本发明采用目前常用自然语言分词的工具来识别。本发明对传统的rucm模型进行了扩展。考虑到本体模型中包含三类元素:概念、概念之间的关系和概念属性。针对这三类元素分别设计了扩展支持本体模型检查的rucm模型,以后称扩展后的rucm模型为ontorucm(ontology-basedrucm)。所述ontorucm模型中包含对本体中概念识别的支持,针对本体中概念的可以扩展附件模板的附属模板,模板包含rucm中具体使用的概念的名字、概念的描述、概念的依赖和概念对于本体的节点引用。针对于本体中的概念的扩展见表2。添加所述ontorucm模板后,可以将rucm模板中使用的领域概念和本体模型关联起来,这样的软件需求可以作为本体识别分析的依据。所述ontorucm模板需要包含对本体中概念之间的关系识别的支持,需要将概念识别的关系进行标注。标注好的模板就可以作为本体中关系的推导的识别依据,结合表2中的基于本体的rucm扩充视图ontorucm模板来表示本体中的映射关系。基于本体模型的rucm模型分析的扩展增加了所述ontorucm模型扩展的可用性。表2扩展的ontorucm模板对应rucm建模方法已经有相关人员做了具体的研究和工具的实现。本发明中所提出的ontorucm模型是传统rucm建模方法的扩展,不仅包括了对于模板的附件扩展,还要求用户在撰写rucm需求的同时增加本体概念的标记。这种实际工具编写根据图3中架构来实现,如图2所示,ontorucm模型的建模工具框架在基础层复用了eclipse集成开发环境的三项技术。第一,框架复用了eclipse的工作台,功能包括提供基本图形界面元素和文件资源管理功能,即workbenchui和workspace两个eclipse核心模块;第二,框架复用了eclipse的插件开发环境pde,以实现元模型层面和编辑器层面的动态扩展功能;第三,框架复用了eclipse建模框架emf的部分功能,以实现模型文件与其他工具的兼容性。ontorucm模型在扩展层提供相应的扩展类库,用于增加一致性检查的扩展点。最上层的编辑器层则是使用了编辑器和插件相互独立的架构方式,最终形成ontorucm模型的设计整体架构。步骤s3、根据所述步骤s2建立的映射关系定义相应的一致性检验规则,通过规则自动检测rucm需求中描述的不一致,从而形成相应的评估报告。具体包括如下子步骤:步骤s301、根据所述步骤s2建立的映射关系定义相应的一致性检验规则。本发明中软件需求的rucm模型包含了软件需求中的概念到本体模型的引用,然后使用本体概念到软件需求的对应规则。这样的分析规则主要包含以下的相关特性的定义:一致性。所述一致性是指在同一领域中,一个概念,或者两个或多个相同概念术语不能被混淆使用,如一个概念的标准全称,及其缩写,以及多种不同的别名或者译名不能混淆使用。不相同的概念在使用时引用的关系必须一致。完整性。所述完整性描述是指领域中的核心概念在软件需求中是否被完整描述。同时,软件需求中使用概念同时没有添加概念的关系也会被认为不完整。基于本体模型分析软件需求的指标包括需求的一致性和完整性,所述两项检验指标是建立在一致性检验规则和完整性检验规则上的。1.软件需求一致性规则软件需求的一致性描述的是领域中相同概念在软件需求不能被混淆使用,不相同的概念在使用时引用的关系必须一致。●本体模型的同一概念,rucm模型在使用时不能出现不一致词汇●本体模型的概念关系,rucm模型在使用时不能误用●rucm模型中对本体模型中同一概念的引用必须完全规约到一类2.软件需求完整性规则本体中描述的领域知识可以将特定领域中的核心概念的全集标注出来。本体模型中的领域概念具有不同的属性。●rucm模型中引用的领域概念,都应在领域本体中有定义●本体模型中概念的关系流,rucm模型中概念在使用时必须要完整引用。由于领域本体是对特定领域的所有核心概念的抽象,而需求信息库是对系统需求的所表达内容的抽象。在所述两种抽象当中要建立相应的分析算法才能检测出系统需求中的缺陷和不足。分析软件需求的规则的原则主要是包含了检验需求的一致性和检验需求的完整性的规则。所述需求的一致性的规则主要是解决需求信息库在使用领域本体中出现的同一概念必需要在确保概念不被误用,防止需求信息库中的概念混淆。所述需求的完整性的规则主要是解决领域本体中的核心概念在需求文档中必需要有相关的描述,否则,可以认为需求文档只是针对领域的特定部分,不具有完整性。所述需求的规则还可以在后续的工作中细化和完善。步骤s302、设计相应的分析需求的算法,自动形成相应的评估报告。基于所述分析需求的相关规则,本发明设计了相应的分析需求的算法,在建立好的领域本体和需求信息库中做分析,自动检测rucm需求中描述的不一致,从而形成相应的评估报告。所述需求信息库是包括对自由文本需求和rucm需求模型这两类软件需求提取生成的需求信息的集合。所述分析需求的算法采用以下三步:1.对需求信息库进行遍历,查找不符合规则的需求。2.对领域本体进行遍历,查找需求信息库中不完整的需求。3.统计查找到的需求并生成相应的分析需求的报告。所述分析需求的算法还可以在后续中根据具体本体模型和需求信息库的细节进行优化。本发明提供一种针对所述相关需求的算法的工具实现设计实施例,如图4所示,所述算法工具的输入是软件需求和领域本体;所述软件需求包含自由文本需求和rucm模型;所述自由文本需求是每个需求项中对于需求的综述,规则库是预定义的校验规则,规则库中包含的规则和用户自定义规则一同在规则解析器中解析,然后校验文本规则定义器输出的分析过滤后的自由文本需求;所述自由文本需求通过文本规则定义器定义后输出的半形式化需求输出的通用需求格式,通过句式规则生成半形式化的需求作为规则执行器输入的一部分;所述rucm模型通过ucmeta转化器的扩充,到模型生成器形成可以被规则执行器识别的ontorucm模型,作为规则执行器输入的另一部分;所述领域文本的构建过程,领域文本经概念分析规则器后得到领域概念文本通用格式文件,经关系分析规则器后得到领域关系文本通用格式文件,两者共同构成领域本体知识,作为规则执行器的另一输入;所述规则执行器通过规则自动检测rucm需求中描述的不一致,所述规则执行器中包括的验证算法是对规则执行器输入的需求一致性验证的校验,分析算法是对需求规则之间的引用的分析的查找和评估,进而输出分析结果,形成相应的评估报告。综上所述,本发明实施例提供了一种需求模型一致性的检查方法,所述方法通过rucm扩展的用户定义需求模型到本体的映射关系的定义,明确了检验规则的相关重要特性,利用领域知识来检验用户的需求;规范化rucm软件需求的一致性和完整性的检查方法,为需求的一致性检测手段提供了一个自动化实现的手段。以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本
技术领域
的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1