CN116466917A - 一种基于人工智能的软件建模方法、计算机设备和存储介质 - Google Patents

一种基于人工智能的软件建模方法、计算机设备和存储介质 Download PDF

Info

Publication number
CN116466917A
CN116466917A CN202310538761.1A CN202310538761A CN116466917A CN 116466917 A CN116466917 A CN 116466917A CN 202310538761 A CN202310538761 A CN 202310538761A CN 116466917 A CN116466917 A CN 116466917A
Authority
CN
China
Prior art keywords
software
model
modeling
data
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310538761.1A
Other languages
English (en)
Inventor
杨超
高文飞
张�荣
赵雪松
张辉
焦键
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Wucoded Technology Co ltd
Original Assignee
Beijing Wucoded Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Wucoded Technology Co ltd filed Critical Beijing Wucoded Technology Co ltd
Priority to CN202310538761.1A priority Critical patent/CN116466917A/zh
Publication of CN116466917A publication Critical patent/CN116466917A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/10Requirements analysis; Specification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种基于人工智能的软件建模方法、计算机设备和存储介质,所述方法包括:获取所要建模的软件的需求,所述需求包括:软件系统功能、性能、用户需求;根据所述需求利用自动化建模技术进行建模,得到软件的概念模型;概念模型包括:功能模块、数据结构模块、接口模块、管理模块;所述接口模块为连接不同模块的接口;管理模块用于管理概念模型中的所有模块;根据功能模块和数据结构模块利用自动化建模技术生成软件的数据模型;数据模型是对数据结构模块进行的建模;根据软件功能利用自动化建模技术进行建模,得到所述软件的行为模型;由概念模型和行为模型构成软件模型。因此,本申请对工作人员的专业要求不高,大大提高建模效率。

Description

一种基于人工智能的软件建模方法、计算机设备和存储介质
技术领域
本申请涉及计算机科学技术领域,特别是涉及一种软件建模方法、计算机设备和存储介质。
背景技术
随着信息技术的飞速发展,软件在我们的生活和发展中发挥着越来越重要的作用,现有技术中,通常是架构师对整个软件工程的抽象建模,并使用结构化建模方法来分析系统并定义业务需求。而这种方式需要专业的建模工具和技术,对于非专业人员来说比较复杂,而且建模过程中需要花费一定的时间和精力,对于需求复杂的软件系统来说可能难以完成;另外,建模过程中需要考虑到多种因素,包括需求的变化、性能的优化等,需要进行多次迭代才能达到最终的建模效果,建模过程复杂,使得建模效率低下。
发明内容
基于此,针对上述技术问题,提供一种基于人工智能的软件建模方法、计算机设备和存储介质,以解决软件建模效率低且对工作人员的专业要求高的问题。
第一方面,一种基于人工智能的软件建模方法,所述方法包括:
获取所要建模的软件的需求,所述需求包括:软件系统功能、性能、用户需求;
根据所述需求利用自动化建模技术进行建模,得到所述软件的概念模型;所述概念模型包括:功能模块、数据结构模块、接口模块、管理模块;所述接口模块为连接不同模块的接口;所述管理模块用于管理所述概念模型中的所有模块;
根据所述功能模块和所述数据结构模块利用自动化建模技术生成所述软件的数据模型;所述数据模型是对所述数据结构模块进行的建模;
根据所述软件功能利用自动化建模技术进行建模,得到所述软件的行为模型;
由所述概念模型和所述行为模型构成软件模型。
上述方案中,可选地,所述数据模型包括:数据结构、数据属性、数据关系。
上述方案中,可选地,所述行为模型包括:事件流、消息传递。
上述方案中,可选地,所述利用自动化建模技术进行建模包括:
输入用于建模的文本数据;
采用自然语言处理技术对输入的所述文本数据进行预处理;
提取所述文本数据中的各种实体,并建立实体之间相对应的关系,以明确所述实体在模型中的表现形式;
基于机器学习等技术利用所述实体在模型中表现形式构建出模型。
上述方案中,可选地,将所述概念模型、数据模型、行为模型通过画布进行可视化展示。
上述方案中,可选地,建立所述软件模型后还生成用于测试所述软件模型功能的测试用例,包括:分别根据所述概念模型、数据模型、行为模型利用自动化测试工具生成测试用例。
上述方案中,进一步可选地,建立所述软件模型后还生成软件模型代码和测试用例代码,包括:
将所述软件模型根据所述软件功能进行分解并生成系统软件代码;
根据所述测试用例生成测试用例代码。
上述方案中,进一步可选地,将所述代码包括:类、函数、变量。
第二方面,一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述基于人工智能的软件建模方法。
第三方面,一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述基于人工智能的软件建模方法。
本申请至少具有以下有益效果:
本申请先通过根据要创建的软件的需求分析建立概念模型,再将概念模型中的数据结构模块进行建模得到数据模型,在根据软件功能进行建模建立软件的行为模型,由行为模型和概念模型构成概念模型。因此,通过本申请方法,并不需要专业的建模工具,对工作人员的专业要求不高,并且不需要多次迭代才能得到建模模型,只需要一次建模流程即可完成软件建模,大大提高建模效率。
附图说明
图1为本申请一个实施例提供的基于人工智能的软件建模方法步骤流程图。
图2为本申请一个实施例提供的利用自动化建模技术进行建模的步骤流程图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图1所示,提供了一种人工智能的软件建模方法,包括以下步骤:
步骤S101,获取所要建模的软件的需求,所述需求包括:软件系统功能、性能、用户需求;
在步骤S101中,软件功能和性能是两个不同的概念,具有不同的含义和应用。在获取需求中,软件的功能和性能需要分别进行分析和定义。软件的功能指的是软件需要实现的具体功能或任务。例如,一个文本编辑器需要具有打开、编辑、保存等基本功能,而一个电子商务网站需要具有用户注册、商品展示、购买支付等功能。软件的功能是用户和业务需求的体现。软件的性能则是指软件在运行时表现的优良程度,包括响应时间、吞吐量、可靠性、稳定性等方面。例如,一个电商网站的性能需要保证在高并发时仍能保持稳定的响应速度和数据处理能力,否则会影响用户的体验和购买决策。因此,功能和性能虽然都与软件系统的表现相关,但其本质是不同的。在软件建模中,需求分析需要对这两个方面分别进行考虑和描述,以确保软件系统能够满足用户和业务的需求。
步骤S102,根据所述需求利用自动化建模技术进行建模,得到所述软件的概念模型;所述概念模型包括:功能模块、数据结构模块、接口模块、管理模块;所述接口模块为连接不同模块的接口;所述管理模块用于管理所述概念模型中的所有模块。
在步骤S102中,可以使用图形化建模工具建立软件系统的概念模型,以实现多样化的建模,从而提高软件系统的适应性和可扩展性。
概念模型中包含的各模块的定义如下:
功能模块:指软件系统中实现某个特定功能的代码单元。例如,在电子商务网站中,功能模块可以包括购物车、支付、订单管理等。在概念建模中,每个功能模块表示为一个独立的框图,其中包含该模块与其他模块之间的关系。
数据结构模块:指数据在软件系统中的组织方式。例如,在电子商务网站中,数据结构模块可以包括商品信息、用户信息、订单信息等。在概念建模中,每个数据结构模块通常表示为一个独立的框图,其中包含该模块与其他模块之间的关系。
接口模块:指软件系统中用于连接不同模块的接口。例如,在电子商务网站中,接口模块可以包括与支付网关的接口、与物流公司的接口等。在概念建模中,每个接口模块通常表示为一个独立的框图,其中包含该模块与其他模块之间的关系。
管理模块:指软件系统中用于管理各种模块的模块。例如,在电子商务网站中,管理模块可以包括用户权限管理、日志管理等。在概念建模中,每个管理模块通常表示为一个独立的框图,其中包含该模块与其他模块之间的关系。
步骤S103,根据所述功能模块和所述数据结构模块利用自动化建模技术生成所述软件的数据模型;所述数据模型是对所述数据结构模块进行的建模。
在步骤S103中,数据模型是概念模型的一部分,用于描述软件系统中的数据结构、数据属性、数据关系等。
根据所述概念模型对所述数据结构模块进行建模建立数据模型具体包括:
第一,首先需要确认从概念模型中识别出的所有功能模块和数据结构模块,这些将成为数据模型的主要组成部分。
第二,确定实体和属性:首先确定功能模块和数据结构模块中的实体和属性,其次确定能够用来表述功能模块和数据结构模块中的实体或者属性之间关联关系实体或者属性,如用来描述细节或算法的元素,这部分实体并不属于功能模块和数据模块中的实体,在确定标识实体和属性时,还要考虑它们是否可以被其他部分重用,以避免出现冗余的模型元素;需要权衡各种因素并根据具体情况做出选择。
实体指在软件系统中具有独立存在意义的对象或事物,例如顾客、订单、商品等。实体通常具有固定的类别或类型,并且往往具有一个或多个特定的属性或特征,属性指实体的特征或属性,例如顾客姓名、订单日期、商品价格等。针对每个实体和属性,需要考虑其类型、长度、约束条件等,以明确其在数据模型中的映射关系和具体实现方式;
第三,建立关系:关系则指实体之间的语义联系,包括一些自然语言中的词汇关系,例如“属于”、“是”、“与……相关”等等。在文本分析中,通过关系可以更好地理解文本的含义,识别文本中的重要信息并进行知识抽取和应用。在软件系统中,实体之间可能存在各种关系,例如一对一、一对多、多对多等。需要根据概念模型中的描述,建立相应的关系,以明确它们在数据模型中的表现形式。
第四,选择数据存储方式:根据软件系统的需求和数据特点,需要确定最适合的数据存储方式。目前常用的存储方式有关系型数据库、NoSQL数据库等。
第五,设计数据接口:数据接口是软件系统中不同模块之间进行数据交互的桥梁,对于每个数据模型需要建立相应的接口来确保模块之间可以相互访问所需数据。
步骤S104,根据所述软件功能利用自动化建模技术进行建模,得到所述软件的行为模型。
在步骤S104中,根据软件系统的功能需求,使用面向对象的建模语言、事件驱动的建模语言等工具建立软件系统的行为模型。
步骤S105,由所述概念模型和所述行为模型构成软件模型。
在步骤S105中,在基于人工智能的软件建模方法及系统中,概念模型和行为模型是两个独立但相互关联的模型。其中,概念模型主要用于描述软件系统的各个组成部分、功能模块、数据结构等,而行为模型则主要用于描述软件系统的行为模式、事件流、消息传递等。
本申请先通过根据要创建的软件的需求分析建立概念模型,在将概念模型中的数据结构模块进行建模得到数据模型,再根据软件功能进行建模建立软件的行为模型,由行为模型和概念模型构成概念模型。因此,通过本申请方法,并不需要专业的建模工具,对工作人员的专业要求不高,并且不需要多次迭代才能得到建模模型,只需要一次建模流程即可完成软件建模,大大提高建模效率。
在一个实施例中,所述数据模型包括:数据结构、数据属性、数据关系。
在一个实施例中,所述行为模型包括:事件流、消息传递。
在一个实施例中,所述利用自动化建模技术进行建模包括:
输入用于需要建模的文本数据;
采用自然语言处理技术对输入的所述文本数据进行预处理;
提取所述文本数据中的各种实体,并建立实体之间相对应的关系,以明确所述实体在模型中的表现形式。
在一个实施例中,所述提取所述软件系统的功能文本中的实体前,将所述概念模型、数据模型、行为模型通过画布进行可视化展示。
在该实施例中,如图2所示,建立行为模型和建立数据模型分为以下几步:
步骤S201、输入模块:用于输入需要建模的文本数据,可以是电子文档、网页等形式。
步骤S202、预处理模块:对输入的文本数据进行预处理,包括分词、停用词过滤、词性标注等。
步骤S203、实体识别和关系抽取模块:用于从预处理后的文本中识别出实体和关系,并将其转化为可视化的实体关系图。
步骤S204、模型构建模块:基于机器学习等技术,构建出建模模型。
步骤S205、可视化展示模块:将构建出的模型可视化展示,便于用户进行修改和优化,通过画布GUI对模型进行展示,画布GUI包括:图形化界面展示;可交互性可视化画布展示。
在一个实施例中,所建立所述软件模型后还生成用于测试所述软件模型功能的测试用例,包括:分别根据所述概念模型、数据模型、行为模型利用自动化测试工具生成测试用例。
在一个实施例中,建立所述软件模型后还生成软件模型代码和测试用例代码,包括:
将所述软件模型根据所述软件功能进行分解并生成系统软件代码;
根据所述测试用例生成测试用例代码。
在一个实施例中,所述代码包括:类、函数、变量。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现上述一种基于人工智能的软件建模方法。
在一个实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,涉及上述实施例方法中的全部或部分流程。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种基于人工智能的软件建模方法,其特征在于,所述方法包括:
获取所要建模的软件的需求,所述需求包括:软件系统功能、性能、用户需求;
根据所述需求利用自动化建模技术进行建模,得到所述软件的概念模型;所述概念模型包括:功能模块、数据结构模块、接口模块、管理模块;所述接口模块为连接不同模块的接口;所述管理模块用于管理所述概念模型中的所有模块;
根据所述功能模块和所述数据结构模块利用自动化建模技术生成所述软件的数据模型;所述数据模型是对所述数据结构模块进行的建模;
根据所述软件功能利用自动化建模技术进行建模,得到所述软件的行为模型;
由所述概念模型和所述行为模型构成软件模型。
2.根据权利要求1所述的基于人工智能的软件建模方法,其特征在于,所述数据模型包括:数据结构、数据属性、数据关系。
3.根据权利要求1所述的基于人工智能的软件建模方法,其特征在于,所述行为模型包括:事件流、消息传递。
4.根据权利要求1所述的基于人工智能的软件建模方法,其特征在于,所述利用自动化建模技术进行建模包括:
输入用于建模的文本数据;
采用自然语言处理技术对输入的所述文本数据进行预处理;
提取所述文本数据中的各种实体,并建立实体之间相对应的关系;
基于机器学习等技术,利用所述实体和所述实体之间的关系来构建出模型。
5.根据权利要求1所述的基于人工智能的软件建模方法,其特征在于,将所述概念模型、数据模型、行为模型通过画布进行可视化展示。
6.根据权利要求1所述的基于人工智能的软件建模方法,其特征在于,建立所述软件模型后还生成用于测试所述软件模型功能的测试用例,包括:分别根据所述概念模型、数据模型、行为模型利用自动化测试工具生成测试用例。
7.根据权利要求1或6所述的基于人工智能的软件建模方法,其特征在于,建立所述软件模型后还生成软件模型代码和测试用例代码,包括:
将所述软件模型根据所述软件功能进行分解并生成系统软件代码;
根据所述测试用例生成测试用例代码。
8.根据权利要求7所述的基于人工智能的软件建模方法,其特征在于,所述代码包括:类、函数、变量。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至8中任一项所述的方法的步骤。
10.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8中任一项所述的方法的步骤。
CN202310538761.1A 2023-05-12 2023-05-12 一种基于人工智能的软件建模方法、计算机设备和存储介质 Pending CN116466917A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310538761.1A CN116466917A (zh) 2023-05-12 2023-05-12 一种基于人工智能的软件建模方法、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310538761.1A CN116466917A (zh) 2023-05-12 2023-05-12 一种基于人工智能的软件建模方法、计算机设备和存储介质

Publications (1)

Publication Number Publication Date
CN116466917A true CN116466917A (zh) 2023-07-21

Family

ID=87184398

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310538761.1A Pending CN116466917A (zh) 2023-05-12 2023-05-12 一种基于人工智能的软件建模方法、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN116466917A (zh)

Similar Documents

Publication Publication Date Title
US8756567B2 (en) Profile based version comparison
CN109670053B (zh) 数据对象映射方法、装置、设备和计算机可读存储介质
US8776009B2 (en) Method and system for task modeling of mobile phone applications
CN107885499A (zh) 一种接口文档生成方法及终端设备
US7505991B2 (en) Semantic model development and deployment
CN110472068A (zh) 基于异构分布式知识图谱的大数据处理方法、设备及介质
CN111061475B (zh) 软件代码生成方法、装置、计算机设备和存储介质
CN111427561A (zh) 业务代码的生成方法、装置、计算机设备和存储介质
CN111966345A (zh) 拖拽式网页设计方法、装置、计算机设备、存储介质
US20130124265A1 (en) Enterprise System/Process Modeling System and Method
US20150006225A1 (en) Project management application with business rules framework
CN110990403A (zh) 业务数据的存储方法、系统、计算机设备及存储介质
US20170315784A1 (en) Generating applications based on data definition language (ddl) query view and application page template
Krogstie Capturing enterprise data integration challenges using a semiotic data quality framework
CN116360766A (zh) 一种基于ddd可视化设计器的低代码系统和装置
CN115438740A (zh) 一种多源数据的汇聚融合方法和系统
CN116821223B (zh) 基于数字孪生的工业可视化控制平台及方法
Alwidian et al. Union models: support for efficient reasoning about model families over space and time
US20140149093A1 (en) Modeling content data for generating information models
KR102153259B1 (ko) 데이터 도메인 추천 방법 및 추천된 도메인을 이용하여 통합 데이터 저장소 관리 시스템을 구축하는 방법
CN111444368A (zh) 构建用户画像的方法、装置、计算机设备及存储介质
CN116466917A (zh) 一种基于人工智能的软件建模方法、计算机设备和存储介质
US20140067874A1 (en) Performing predictive analysis
US20140149186A1 (en) Method and system of using artifacts to identify elements of a component business model
US11526895B2 (en) Method and system for implementing a CRM quote and order capture context service

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination