一种软件需求描述规则语言与转换方法技术

技术编号:21431404 阅读:16 留言:0更新日期:2019-06-22 11:41
本发明专利技术公开了一种软件需求描述规则语言与转换方法,涉及软件需求描述技术领域。该软件需求描述规则语言使用JSON格式模型,基于JSON格式的描述方式对软件需求进行描述。按照面向对象的模型描述规则来定义层级结构,通过对象的嵌套表示上下层级之间的关系,层级结构的节点对象的属性包括基础属性与扩展属性。基础属性包括ID、名称、类型。扩展属性由使用者自行定义。本发明专利技术提出的转换方法用于实现所述软件需求描述规则语言与UML软件需求描述语言之间的相互转换,可以将UML格式模型转为JSON格式模型;还可以将JSON格式模型转为UML格式模型。本发明专利技术可以得到结构简洁的模型,并使之具有较高的通用性及易读性,较低的专业知识要求和较高的可扩展性。

【技术实现步骤摘要】
一种软件需求描述规则语言与转换方法
本专利技术涉及软件需求描述
,尤其涉及一种软件需求描述规则语言与转换方法。
技术介绍
在目前的软件需求分析描述中,业界广泛采用基于UML的需求描述语言,但是这种基于UML的需求描述语言专业性太强,且存储格式使用XML,通用性以及易读性差,同时又无法自定义扩展需求描述规则。因此亟需一种新型需求描述语言以及与多种现存描述语言的自动转换方法,以便能够使用新定义的需求描述规则语言统一描述需求模型,适用于多种设备进行操作,并且能够兼容已有的成熟需求描述语言,实现新的需求描述语言和已有的需求描述语言之间的互相转换。因此,本领域的技术人员致力于开发一种软件需求描述规则语言与转换方法,以得到结构简洁的模型,并使之具有较高的通用性及易读性,较低的专业知识要求和较高的可扩展性。
技术实现思路
有鉴于现有技术的上述缺陷,本专利技术所要解决的技术问题是如何降低专业要求与学习曲线事件,如何使新的软件需求描述规则语言与转换方法能够在无需任何软件需求工程专业背景与内部架构的条件下均能够得到应用,并增加描述语言的通用性及易读性,实现需求描述的可扩展性,同时可自定义需求规则进行需求描述方式的扩展,实现新的描述规则语言与基于UML的软件需求描述语言之间的自动相互转换。为实现上述目的,本专利技术提供了一种软件需求描述规则语言,包括JSON格式模型,所述JSON格式模型基于JSON格式的描述方式对软件需求进行描述。进一步地,所述JSON格式模型被设置为层级结构。进一步地,所述层级结构按照面向对象的模型描述规则来定义,通过对象的嵌套表示上下层级之间的关系,所述层级结构的节点对象的属性包括基础属性与扩展属性。进一步地,所述基础属性包括ID、名称、类型。进一步地,所述扩展属性被设置为由使用者自行定义。本专利技术还提供了一种软件需求描述规则语言转换方法,应用于将如权利要求1所述的软件需求描述规则语言与UML软件需求描述语言之间的相互转换,包括以下步骤:步骤S1、将UML格式模型转为JSON格式模型;步骤S2、将JSON格式模型转为UML格式模型。进一步地,所述步骤S1包括以下步骤:步骤S1.1、将XML中的元素映射至所述JSON格式模型中的对象名称,将XML中的元素内容映射至所述JSON格式模型中的对象名称所对应的值;步骤S1.2:将XML元素的子元素映射至所述JSON格式模型的名称下的子对象;步骤S1.3:回到步骤S1.1进行递归操作,遍历整个XML文档;步骤S1.4、根据定义的描述规则,筛选基于所述JSON格式模型的对象,保留所需的所述对象,删除其余所述对象。进一步地,所述步骤S1.3遍历整个XML文档的过程中,若遇到带属性的XML元素,则先将所述XML元素的属性转为所述XML的子元素,再按照所述步骤S1.1、S1.2依次进行操作;在遍历过程中,若遇到与前一XML元素同名的XML元素,则以数组形式存储于所述JSON格式模型中对应名称下。进一步地,所述步骤S2包括以下步骤:步骤S2.1、将所述JSON格式模型中的对象名称映射为XML格式的元素名;步骤S2.2、将所述JSON格式模型中的对象名称所对应的值填入XML格式中对应元素的内容;步骤S2.3、遍历所述JSON格式模型中的全部对象,执行所述步骤S2.1和所述步骤S2.2。进一步地,所述步骤S2.3的遍历过程中,若遇到某一JSON对象名称对应值的内容为一个JSON对象,则回到所述步骤S2.1进行递归操作;若遇到某一JSON对象名称对应值的内容为一个数组,则针对所述数组中的每个元素按所述步骤S2.1和所述步骤S2.2建立具有同名但不同内容的XML元素。在本专利技术的较佳实施方式中,使用JSON格式作为需求描述规则模型的存储格式。在本专利技术的另一较佳实施方式中,使用DOM模型作为本专利技术的需求描述规则模型的存储格式。与现有技术方案相比,本专利技术的有益技术效果在于,本专利技术使得需求模型的存储格式结构更加简洁高效,在保留了面向对象模型的关键核心内容的同时,降低了使用者的学习曲线;以JSON格式为存储格式,保障了网页端的操作与云平台的传输,保持与以XML格式存储的UML等其他需求建模语言拥有相同的网络传输特性;在结构上由于JSON格式的特点以及属于自定义的模型描述规则,便于自定义扩展新的需求描述规则,不受限与UML或其他需求描述语言,同时本专利技术也可以自由扩展以包含其他需求描述语言。以下将结合附图对本专利技术的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本专利技术的目的、特征和效果。附图说明图1是本专利技术的一个较佳实施例的总体实现功能描述图;图2是本专利技术的一个较佳实施例所定义的需求描述规则语言框架示意图;图3是本专利技术的一个较佳实施例由UML模型转JSON格式模型的流程图;图4是本专利技术的一个较佳实施例由JSON格式模型转UML模型的流程图;图5是本专利技术的一个较佳实施例在UML模型和JSON格式模型的相互转换过程中的映射变换方法示意图。具体实施方式以下参考说明书附图介绍本专利技术的多个优选实施例,使其
技术实现思路
更加清楚和便于理解。本专利技术可以通过许多不同形式的实施例来得以体现,本专利技术的保护范围并非仅限于文中提到的实施例。在附图中,结构相同的部件以相同数字标号表示,各处结构或功能相似的组件以相似数字标号表示。附图所示的每一组件的尺寸和厚度是任意示出的,本专利技术并没有限定每个组件的尺寸和厚度。为了使图示更清晰,附图中有些地方适当夸大了部件的厚度。如图1所示,是本专利技术的一个较佳实施例的总体实现功能描述图,本专利技术提供了一种软件需求描述规则语言与转换方法,来实现UML需求模型与所定义的软件需求描述规则语言模型之间的相互转换。如图2所示,是本专利技术的一个较佳实施例所定义的需求描述规则语言框架示意图。在本专利技术的一个较佳实施例中,通过基于JSON格式的描述方式对软件需求进行描述,相比UML描述语言的XML表述格式,JSON格式模型以名称与值一一对应来表示,通过对象的嵌套可以表示出上下层级关系,结构更加简洁清晰,储存文件较小,效率更高。本专利技术所提供的一种软件需求描述规则语言包括JSON格式模型,基于JSON格式的描述方式对软件需求进行描述,使用JSON格式作为需求描述规则的存储格式。JSON格式模型被设置为层级结构。所述层级结构按照面向对象的模型描述规则来定义,层级结构的节点对象的属性包括基础属性与扩展属性。所述基础属性包括ID、名称、类型。所述扩展属性被设置为由使用者自行定义。基本层级结构按照面向对象模型的描述规则来定义,将其内容属性进行缩减,选择其中项目所需的必要内容映射至JSON格式中,包括ID、名称、类型,依次建立各个JSON对象,每一个对象中去除了一些描述性属性和不使用的属性,如评论、说明内容等。这样可以大量精简原本固定需求描述语言中的无用内容,并且增强了其各部分节点的关联性,使得可读性与扩展性得到提高,无需透彻学习需求描述语言的具体规则也能进行使用。并且由于JSON格式的灵活性特点,在节点扩展后,能以相同的方式进行解析,故可以自定义扩展一类新的需求描述类型,并不影响程序的解析,只需增加关键字对即可进行解析,提升了兼容性,为将来扩展提供了保障。如图3所示,是本专利技术的一个较佳实施例由UML模型转JSON格式本文档来自技高网
...

【技术保护点】
1.一种软件需求描述规则语言,其特征在于,包括JSON格式模型,所述JSON格式模型基于JSON格式的描述方式对软件需求进行描述。

【技术特征摘要】
1.一种软件需求描述规则语言,其特征在于,包括JSON格式模型,所述JSON格式模型基于JSON格式的描述方式对软件需求进行描述。2.如权利要求1所述的软件需求描述规则语言,其特征在于,所述JSON格式模型被设置为层级结构。3.如权利要求2所述的软件需求描述规则语言,其特征在于,所述层级结构按照面向对象的模型描述规则来定义,通过对象的嵌套表示上下层级之间的关系,所述层级结构的节点对象的属性包括基础属性与扩展属性。4.如权利要求3所述的软件需求描述规则语言,其特征在于,所述基础属性包括ID、名称、类型。5.如权利要求3所述的软件需求描述规则语言,其特征在于,所述扩展属性被设置为由使用者自行定义。6.一种软件需求描述规则语言转换方法,其特征在于,应用于将如权利要求1所述的软件需求描述规则语言与UML软件需求描述语言之间的相互转换,包括以下步骤:步骤S1、将UML格式模型转为JSON格式模型;步骤S2、将JSON格式模型转为UML格式模型。7.如权利要求6所述的软件需求描述规则语言转换方法,其特征在于,所述步骤S1包括以下步骤:步骤S1.1、将XML中的元素映射至所述JSON格式模型中的对象名称,将XML中的元素内容映射至所述JSON格式模型中的对象名称所对应的值;步骤S1.2:将XML元素的子元素映射至所述JSON格式模型的名称下的子对象;步骤S1.3:回到...

【专利技术属性】
技术研发人员:戴文斌宋亦能杨根科
申请(专利权)人:上海交通大学
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1