当前位置: 首页 > 专利查询>刘婷婷专利>正文

软件设计方法和系统技术方案

技术编号:26530560 阅读:8 留言:0更新日期:2020-12-01 14:09
本发明专利技术提供了软件设计方法和系统,包括:获取业务过程;确定业务过程中业务过程节点的类型;根据业务过程节点的类型为业务过程节点分配对应的句子结构,使业务过程节点根据句子结构将相应的词放入到词库中,并且维护业务过程节点中各个词之间的关系;将句子结构转化为领域模型;对领域模型和业务过程节点中各个词之间的关系进行计算,得到领域模型的相似度;根据领域模型的相似度,得到领域模型中词性之间的依赖关系;根据领域模型中词性之间的依赖关系,对领域模型进行划分,得到领域服务边界,可以根据业务过程自动生成领域模型,极大地满足了业务需求和业务变化。

【技术实现步骤摘要】
软件设计方法和系统
本专利技术涉及软件开发
,尤其是涉及软件设计方法和系统。
技术介绍
软件是用于处理复杂问题的工具,由于应用领域的复杂性、领域专家和技术人员沟通的不确定性、业务的多变性,使得软件在研发过程中出现一些问题。目前采用DDD(Domain-DrivenDesign,领域驱动设计)和MDA(ModelDrivenArchitecture,模型驱动架构)等方法进行软件开发,具体为:对业务领域进行建模,抽象出对应的领域模型,基于领域模型构建沟通的通用语言,并对通用语言进行开发。但是,领域模型需要根据技术人员的经验进行建模,导致很多设计不能满足业务需求,或者无法面对业务变化。
技术实现思路
有鉴于此,本专利技术的目的在于提供软件设计方法和系统,可以根据业务过程自动生成领域模型,极大地满足了业务需求和业务变化。第一方面,本专利技术实施例提供了软件设计方法,包括:获取业务过程;确定所述业务过程中业务过程节点的类型;根据所述业务过程节点的类型为所述业务过程节点分配对应的句子结构,使所述业务过程节点根据所述句子结构将相应的词放入到词库中,并且维护所述业务过程节点中各个词之间的关系;将所述句子结构转化为领域模型;对所述领域模型和所述业务过程节点中各个词之间的关系进行计算,得到领域模型的相似度;根据所述领域模型的相似度,得到所述领域模型中词性之间的依赖关系;根据所述领域模型中词性之间的依赖关系,对所述领域模型进行划分,得到领域服务边界。进一步的,所述对所述领域模型和所述业务过程节点中各个词之间的关系进行计算,得到领域模型的相似度,包括:对所述领域模型和所述业务过程节点中各个词之间的关系进行提炼,得到领域属性、领域方法和领域对象;根据所述领域属性,计算属性相似度;根据所述领域方法,计算方法相似度;根据所述领域对象,计算职责相似度。进一步的,所述根据所述领域模型的相似度,得到所述领域模型中词性之间的依赖关系,包括:如果所述领域模型的第一名词和第二名词之间的所述属性相似度大于第一阈值,所述第一名词和所述第二名词之间的所述方法相似度大于第二阈值,并且所述第一名词和所述第二名词之间的所述职责相似度大于第三阈值,则所述第一名词和所述第二名词为的公共部分抽象为公共超类。进一步的,所述方法还包括:如果所述领域模型的第三名词的属性完全包含于第四名词的属性,所述第三名词的领域方法完全包含于所述第四名词的领域方法,并且在所述第三名词的领域对象中,通过所述第四名词进行替换,则所述第三名词为所述第四名词的超类。进一步的,所述根据所述领域模型中词性之间的依赖关系,对所述领域模型进行划分,得到领域服务边界,包括:以所述领域模型中的名词为顶点,根据所述领域模型中词性之间的依赖关系,构成有向图;将所述有向图中的多个顶点集合按照预设规则进行划分,得到所述领域服务边界。进一步的,所述根据所述领域属性,计算属性相似度,包括:如果所述第一名词的第一属性和所述第二名词的第二属性是同义词,并且所述第一属性和所述第二属性的类型相同,则所述第一属性和所述第二属性相同;如果设定所述第一属性和所述第二属性相同的集合为第一集合,则所述第一名词和所述第二名词之间的属性相似度为所述第一集合的元素个数与所述第一名词的属性个数的比值,所述第二名词和所述第一名词之间的属性相似度为所述第一集合的元素个数与所述第二名词的属性个数的比值。进一步的,所述根据所述领域方法,计算方法相似度,包括:如果所述第一名词的方法与所述第二名词的方法为相同句型并且对应的句子中的词均为同义词,则所述第一名词的方法与所述第二名词的方法相似;如果所述第一名词的方法和所述第二名词的方法流程相同,则所述第一名词的方法和所述第二名词的方法相同。进一步的,所述根据所述领域对象,计算职责相似度,包括:设定所述第一名词的领域对象为第一集合,所述第二名词的领域对象为第二集合;计算所述第一集合和所述第二集合的交集的元素个数;计算所述第一集合和所述第二集合的并集的元素个数;计算所述第一集合和所述第二集合的交集的元素个数与所述第一集合和所述第二集合的并集的元素个数的比值,将所述比值作为所述职责相似度。进一步的,所述将所述句子结构转化为领域模型,包括:根据文法结构和转换规则,将所述业务过程转换为所述领域模型。第二方面,本专利技术实施例提供了软件设计系统,所述系统包括:用例管理模块,用于获取业务过程;确定所述业务过程中业务过程节点的类型;根据所述业务过程节点的类型为所述业务过程节点分配对应的句子结构,使所述业务过程节点根据所述句子结构将相应的词放入到词库中,并且维护所述业务过程节点中各个词之间的关系;模型分析模块,用于将所述句子结构转化为领域模型;对所述领域模型和所述业务过程节点中各个词之间的关系进行计算,得到领域模型的相似度;根据所述领域模型的相似度,得到所述领域模型中词性之间的依赖关系;根据所述领域模型中词性之间的依赖关系,对所述领域模型进行划分,得到领域服务边界。第三方面,本专利技术实施例提供了电子设备,包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的方法。第四方面,本专利技术实施例提供了具有处理器可执行的非易失的程序代码的计算机可读介质,所述程序代码使所述处理器执行如上所述的方法。本专利技术实施例提供了软件设计方法和系统,包括:获取业务过程;确定业务过程中业务过程节点的类型;根据业务过程节点的类型为业务过程节点分配对应的句子结构,使业务过程节点根据句子结构将相应的词放入到词库中,并且维护业务过程节点中各个词之间的关系;将句子结构转化为领域模型;对领域模型和业务过程节点中各个词之间的关系进行计算,得到领域模型的相似度;根据领域模型的相似度,得到领域模型中词性之间的依赖关系;根据领域模型中词性之间的依赖关系,对领域模型进行划分,得到领域服务边界,可以根据业务过程自动生成领域模型,极大地满足了业务需求和业务变化。本专利技术的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。为使本专利技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。附图说明为了更清楚地说明本专利技术具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例一提供的软件设计方法流程图;图2为本专利技术实施例二提供的软件本文档来自技高网...

【技术保护点】
1.一种软件设计方法,其特征在于,所述方法包括:/n获取业务过程;/n确定所述业务过程中业务过程节点的类型;/n根据所述业务过程节点的类型为所述业务过程节点分配对应的句子结构,使所述业务过程节点根据所述句子结构将相应的词放入到词库中,并且维护所述业务过程节点中各个词之间的关系;/n将所述句子结构转化为领域模型;/n对所述领域模型和所述业务过程节点中各个词之间的关系进行计算,得到领域模型的相似度;/n根据所述领域模型的相似度,得到所述领域模型中词性之间的依赖关系;/n根据所述领域模型中词性之间的依赖关系,对所述领域模型进行划分,得到领域服务边界。/n

【技术特征摘要】
1.一种软件设计方法,其特征在于,所述方法包括:
获取业务过程;
确定所述业务过程中业务过程节点的类型;
根据所述业务过程节点的类型为所述业务过程节点分配对应的句子结构,使所述业务过程节点根据所述句子结构将相应的词放入到词库中,并且维护所述业务过程节点中各个词之间的关系;
将所述句子结构转化为领域模型;
对所述领域模型和所述业务过程节点中各个词之间的关系进行计算,得到领域模型的相似度;
根据所述领域模型的相似度,得到所述领域模型中词性之间的依赖关系;
根据所述领域模型中词性之间的依赖关系,对所述领域模型进行划分,得到领域服务边界。


2.根据权利要求1所述的软件设计方法,其特征在于,所述对所述领域模型和所述业务过程节点中各个词之间的关系进行计算,得到领域模型的相似度,包括:
对所述领域模型和所述业务过程节点中各个词之间的关系进行提炼,得到领域属性、领域方法和领域对象;
根据所述领域属性,计算属性相似度;
根据所述领域方法,计算方法相似度;
根据所述领域对象,计算职责相似度。


3.根据权利要求2所述的软件设计方法,其特征在于,所述根据所述领域模型的相似度,得到所述领域模型中词性之间的依赖关系,包括:
如果所述领域模型的第一名词和第二名词之间的所述属性相似度大于第一阈值,所述第一名词和所述第二名词之间的所述方法相似度大于第二阈值,并且所述第一名词和所述第二名词之间的所述职责相似度大于第三阈值,则所述第一名词和所述第二名词的公共部分抽象为公共超类。


4.根据权利要求2所述的软件设计方法,其特征在于,所述方法还包括:
如果所述领域模型的第三名词的属性完全包含于第四名词的属性,所述第三名词的领域方法完全包含于所述第四名词的领域方法,并且在所述第三名词的领域对象中,通过所述第四名词进行替换,则所述第三名词为所述第四名词的超类。


5.根据权利要求1所述的软件设计方法,其特征在于,所述根据所述领域模型中词性之间的依赖关系,对所述领域模型进行划分,得到领域服务边界,包括:
以所述领域模型中的名词为顶点,根据所述领域模型中词性之间的依赖关系,构成有向图;
将所述有向图中的多个顶点集合按照预设规则进行划分,得到所述领域服务边界。


6.根据权利要求3所述的...

【专利技术属性】
技术研发人员:刘婷婷
申请(专利权)人:刘婷婷
类型:发明
国别省市:福建;35

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

1