2018,22届Java技术小白.UML-软件需求分析
发表时间:2023-09-10 09:01:38
文章来源:炫佑科技
浏览次数:210
菏泽炫佑科技
2018,22届Java技术小白.UML-软件需求分析
(19) 中华人民共和国国家知识产权局 (12) 发明专利 (10) 授权公告号 CN B (45) 授权公告日期 2022.04.15 (21) 申请号 2.8G06F 8/20 (2018.01) G06F 8 /72 ( 2018.01) (22) 申请日期2021.06。 11/36 (2006.01) (65) 同申请公开文献号 (56) 对比文献申请公开号 CN ACN A, 2020.05.29 (43) 申请公开日期 2021.09.24CN A, 2020.10.20(73) 专利权人 华腾软件产业有限公司 CN A, 2009.07.08 地址 湖南省长沙市望城经济技术 JP A, 2019.09.19 开发区金创园孵化楼C5 董猛等模型驱动座舱显示软件集成201.202开发与验证方法研究。 “光电与控制”。 2018年,第22届Java技术新手。 UML类图-软件需求分析(72)发明人赵书秋及设计(很详细,很详细,很详细)。 “CSDN(74)专利代理机构成都峰会专利事务所(普通/合伙)//”。 2020年,代理人胡庆波,审查员余晓(51)Int.Cl.G06F 8/10(2018.01)权利要求书,2页,说明书,7页,附图,2页(54)发明名称:一种自动化软件开发系统,软件自动生成方法及设备(57) 摘要:本发明公开了一种软件自动化开发系统、软件自动生成方法及设备,该系统包括:自动解耦模块、软件建模模块、流程配置模块、自动生成模块、软件生成模块和冲突检查模块; 自动解耦模块对**页面进行解耦或关联; 软件构建模块根据输入的需求规格设定软件对应的控件、属性、逻辑和接口,建立软件模型; 流程配置模块配置软件模型的执行流程; 软件自动生成模块自动生成包含可执行程序的软件; 冲突检查模块进行冲突检查和纠正。
本发明中需要程序员手动操作的部分仅包括需求规格设计部分和软件建模部分。 其余的由计算机系统自动执行。 与传统的软件开发模型相比,本发明大大提高了软件编程的时间。 1 1 4效率和降低错误率,可应用于3 4 3快速迭代变化的各类业务。 1 1N C CN B 1/2 1 、一种软件自动化开发系统,其特征在于,包括:自动解耦模块、软件建模模块、流程配置模块、软件自动生成模块和冲突检查模块。 自动解耦模块用于根据输入的需求规范分析获取**页面之间的逻辑关系,并进行**页面之间的解耦; 软件建模模块,用于根据输入的需求规格,设置与软件对应的控件、属性、逻辑和接口,建立软件模型; 其中,软件模型包括多个第二页面; 自动解耦模块还用于第二页面之间的关联。 流程配置模块用于配置和管理软件模型的执行流程; 软件自动生成模块用于自动编辑软件模型并生成包含可执行程序的软件; 冲突检查模块用于对第二页面与可执行程序进行冲突检查并自动纠正冲突; 自动解耦模块包括:解耦单元,用于根据输入的需求规格分析获取**页面之间的冲突。 连接条件、传输参数和关联关系用于对首页进行解耦; 关联单元用于分析第二页面之间的连接条件、传输参数和关联关系,并进行第二页面之间的解耦。 协会; 软件自动生成模块包括:数据库结构生成单元,用于根据第二页面的属性自动编写软件的数据库结构和数据库模式定义语言。 代码生成单元,用于根据第二页面的属性自动编写软件的数据库结构和数据库模式定义语言; 属性,自动从代码库中提取相应的代码,并根据配置的执行流程生成可执行程序代码; 编码优化单元,用于根据第二页面的逻辑对程序代码进行编码优化,并去除冗余代码; 编码组合单元,用于将优化后的程序代码与组件验证、外部服务、分析服务和数据库相结合进行编码组合; 软件输出单元用于输出编码组合后的可执行代码、源代码、数据库结构和项目文档。
2.根据权利要求1所述的软件自动化开发系统,其特征在于,所述软件建模模块包括: 控制设置单元,用于根据输入的需求规格设置构成所述第二页面的实体元素。 属性设置单元,用于根据输入的需求规范设置描述实体元素的属性特征; 逻辑设置单元用于根据输入的需求规范设置除实体元素之外的其他元素。 接口设置单元,用于根据输入的需求规格设置软件与外部进行数据交互的接口。 3.根据权利要求1所述的自动化软件开发系统,其特征在于,所述流程配置模块包括: 流程配置单元,用于根据所述软件模型的功能之间的逻辑关系启动角色并执行任务。 角色、状态选择及下一页配置; 关系处理单元,用于根据软件模型功能之间的逻辑关系处理多部门、多层次、多角色关系; 进程管理单元,用于处理配置的软件执行进程的修改、启动、暂停和中止。 4.根据权利要求1所述的自动化软件开发系统,其特征在于,所述自动软件生成模块22 CN B权利要求第2/2页还包括: 软件管理单元,用于启动并启动软件生成。 停止、管理软件生成过程、软件目录、软件组件和软件服务; 程序分析单元用于分析程序第二页的代码类型、代码行数、代码备注以及逻辑行数。
5.根据权利要求1所述的自动化软件开发系统,其特征在于,所述冲突检查模块包括: 冲突检查单元,用于检查所述第二页面中各元素的关联关系,所述第二页面冲突纠正单元用于检查第二页中元素之间的关联、页面之间的关联以及可执行程序的代码质量。 进行冲突修正。 6、 一种软件自动生成方法, 其特征在于, 包括: 根据输入的需求规格, 分析获取所述**页面之间的逻辑关系, 对所述**页面进行解耦, 包括: 根据输入的需求规格, 分析获取**页面之间的连接条件、传递参数和关联关系,以及**页面之间的解耦; 根据输入的需求规格设定相应的控件、属性、逻辑和接口,建立软件模型; 其中,软件模型包括多个第二页面。 分析第二页面之间的逻辑关系并进行第二页面之间的关联包括:分析连接条件、传输参数和关联关系:进行第二页面之间的关联。 对第二页面中的元素之间的关联关系以及第二页面之间的关联关系进行冲突检查,并自动纠正冲突; 对软件进行冲突检查 自动编辑模型,生成包含可执行程序的软件; 检查可执行程序的代码质量是否存在冲突,并自动纠正冲突; 自动编辑软件模型,生成包含可执行程序的软件,包括:根据第二页面的属性,自动编写软件的数据库结构和数据库模式定义语言。 根据第二页面的属性,自动从代码库中提取相应的代码,并根据配置的执行流程生成可编程代码。 执行的程序代码; 根据第二页的逻辑,对程序代码进行编码和优化,去除冗余代码; 将优化后的程序代码与组件验证、外部服务、分析服务和数据库进行编码组合; 编码组合后输出可执行程序、源代码、数据库结构和项目文档。
7.一种计算机设备,其特征在于,包括:依次通信连接的存储器、处理器和收发器,其中,存储器用于存储计算机程序,收发器用于发送和接收消息,处理器用于读取计算机程序并执行权利要求6所述的软件自动生成方法。 33 CN B手册第1/7页 一种软件自动化开发系统、软件自动生成方法及设备 技术领域 [0001] 本发明属于[0001] 本发明涉及软件开发技术领域,具体涉及一种软件自动化开发系统、软件自动生成方法及设备。 背景技术 [0002] 随着科学技术的发展和技术的进步,计算机技术已经成为生产作业中的必然应用,而计算机为人们提供服务的基础就是软件技术。 因此,软件工程的开发已成为计算机领域的一项基本工作内容。 现有技术中的软件开发模型是以程序员为中心的模型。 整个过程需要大量的各种服务的重复开发,一般在软件设计阶段之后直接进行软件代码的开发,然后进行软件测试。 这种方法不能提前消除逻辑错误。 如果在后续的代码开发过程中出现逻辑错误,需要花费大量的时间和精力来重构代码,使得开发周期过长,软件开发效率低、成本高、难以适应。 当前互联网时代的发展趋势。 发明内容 [0004] 本发明的目的是提供一种软件自动化开发系统、软件自动生成方法及设备,以解决现有技术中存在的至少一个问题。
[0005] 为了实现上述目的,本发明采用以下技术方案: [0006] **方面,本发明提供一种自动化软件开发系统,包括:自动解耦模块、软件建模模块、流程配置模块、软件自动生成模块和冲突检查模块; [0007] 自动解耦模块,用于根据输入的需求规格分析获取**页面之间的逻辑关系,并对**页面之间进行解耦; [0008] 因此,软件建模模块用于根据输入的需求规格设定软件对应的控件、属性、逻辑和接口,建立软件模型; 其中软件模型包括多个第二页面。 [0009] 自动解耦模块还用于关联第二页面; [0010] 流程配置模块,用于对软件模型的执行流程进行配置和管理; [0011] 软件自动生成模块,用于对软件配置模型进行自动编辑,生成包含可执行程序的软件; [0012] 冲突检查模块用于对第二页面与可执行程序进行冲突检查,并自动纠正冲突。 [0013] 在一种可能的设计中,所述自动解耦模块包括: [0014] 解耦单元,用于根据输入的需求规格,分析获取所述**页面之间的连接条件、传输参数以及关联关系。 关系,对首页之间进行解耦; [0015] 关联单元,用于分析第二页面之间的连接条件、传输参数和关联关系,并进行第二页面之间的关联。
[0016] 在一种可能的设计中,所述软件建模模块包括: 44 CN B手册第2/7页 [0017] 控制设置单元,用于根据输入的需求规格来设置组成第二页的组件。 实体元素; [0018] 属性设置单元,用于根据输入的需求规范设置描述实体元素的属性特征; [0019] 逻辑设置单元,用于根据输入的需求规范设置实体元素的属性特征。 [0020] 接口设置单元,用于根据输入的需求规格自动化软件开发,设置软件与外界进行数据交互的接口。 [0021] 在一种可能的设计中,所述流程配置模块包括: [0022] 流程配置单元,用于配置发起角色、执行角色、状态选择和下一页配置; [0023] 关系处理单元,用于根据软件模型的功能之间的逻辑关系,处理多部门、多层级、多角色关系; [0024] 进程管理单元用于修改、启动、暂停和取消配置的软件执行进程。 [0025] 在一种可能的设计中2018,22届Java技术小白.UML-软件需求分析,所述软件自动生成模块包括: [0026] 数据库结构生成单元,用于根据所述第二页面的属性自动编写所述软件的数据库结构和数据库模式定义语言; [0027] 代码生成单元,用于根据第二页面的属性自动从代码库中提取对应的代码,并根据配置的执行流程生成可执行程序代码; [0028] 编码优化单元,用于根据第二页面的逻辑对程序代码进行编码和优化,去除冗余代码; [0029] 编码组合单元,用于将组件验证、外部服务、分析服务和数据库优化等程序代码进行编码组合; [0030] 软件输出单元用于输出编码组合后的可执行程序、源代码、数据库结构和项目文档。
[0031] 在一种可能的设计中,所述软件自动生成模块还包括: [0032] 软件管理单元,用于启动和停止软件生成、软件生成过程、软件目录、软件组件和软件服务。 管理; [0033] 程序分析单元用于分析程序的第二页的代码类型、代码行数、代码注释以及逻辑行数。 [0034] 在一种可能的设计中,所述冲突检查模块包括: [0035] 冲突检查单元,用于检查第二页面中各元素的关联关系、第二页面之间的关联关系,并进行冲突检查。可执行程序的代码质量; [0036] 冲突校正单元,用于对第二页面中的元素之间的相关性、页面之间的相关性以及可执行程序的代码质量的冲突进行校正。 [0037] 第二方面,本发明提供了一种自动生成软件的方法,包括: [0038] 根据输入的需求规格,分析获取**页面之间的逻辑关系,并对**页面之间进行解耦; [0037] [0039] 根据输入的需求规格,设置相应的控件、属性、逻辑和接口,建立软件模型; 其中,软件模型包括多个第二页面。 [0040] 分析第二页面之间的逻辑关系, 进行第二页面之间的关联; [0041] 对第二页面中各元素的关联以及第二页面之间的关联进行冲突检查,并自动纠正冲突; 55 CN B手册第3/7页 [0042] 自动编辑软件模型,生成包含可执行程序的软件; [0043] 对可执行程序的代码质量进行冲突检查,并自动纠正冲突。
[0044] 在一种可能的设计中,自动编辑软件模型生成包含可执行程序的软件,包括: [0045] 根据第二页面的属性,自动编写软件模型定义语言的数据库结构和数据库; [0046] 根据第二页面的属性,自动从代码库中提取对应的代码,并根据配置的执行流程生成可执行程序代码; [0047] 根据第二页面的逻辑,对程序代码进行编码优化,去除冗余代码; [0048] 结合组件验证、外部服务、分析服务和数据库来编码并结合优化后的程序代码; [0049] 输出编码组合*终的可执行程序、源代码、数据库结构和项目文档。 第三方面,本发明提供了一种计算机设备,包括:依次通信连接的存储器、处理器和收发器,其中,存储器用于存储计算机程序,收发器用于发送和接收消息,所述处理器,用于读取所述计算机程序并执行第二方面所述的软件自动生成方法。 第四方面,本发明提供了一种计算机可读存储介质。 指令存储在计算机可读存储介质上。 当指令在计算机上运行时,软件自动执行,如第二方面所述。 生成方法。 [0052] 在第五方面,本发明提供了一种包含指令的计算机程序产品,当所述指令在计算机上运行时,使得计算机执行第二方面中描述的自动软件生成方法。
[0053] 有益效果: [0054] 本发明通过自动解耦模块对**页面之间进行解耦或关联,使得多个**页面可以独立建模; 根据输入的需求规格,通过软件建模模块设置与软件对应的控件、属性、逻辑和接口,建立软件模型; 然后通过流程配置模块配置软件模型的执行流程; 然后通过软件自动生成模块自动生成包含可执行程序的软件; 并通过冲突检查模块进行冲突检查和纠正。 本发明中需要程序员手动操作的部分仅包括需求规格设计部分和软件建模部分,其余部分由计算机系统自动执行。 与传统的软件开发模型相比,本发明大大提高了软件编程的时间效率,提高了软件编程的时间效率。 降低了错误率,可以适用于各种快速迭代变化的业务,降低了业务数字化的成本。 附图说明 [0055] 图1为本发明提供的自动化软件开发系统的结构框图; [0056]图2为本发明提供的软件自动生成方法的流程图。 其中,1-自动解耦模块; 11-解耦单元; 12-协会单位; 2-软件建模模块; 21-控制设定单元; 22-属性设置单元; 23-逻辑设定单元; 24-接口设置单元; 3-进程配置模块; 31-进程配置单元; 32-关系处理单元; 33-进程管理单元; 4-软件自动生成模块; 41-数据结构生成单元; 42-代码生成单元; 43-编码优化单元; 44-编码组合单元; 45-软件输出单元; 46-软件管理单元; 47-程序分析单元; 5-冲突检查模块; 51-冲突检查单元; 52-冲突纠正单位。
具体实施方式 [0058] 为使本说明书实施例的目的、技术方案和优点更加清楚明白,下面结合本说明书第4/7页实施例中的附图对本说明书实施例的技术进行详细说明。本规范。 解决方案描述清晰、完整。 显然,所描述的实施例是本说明书一部分实施例,而不是全部实施例。 基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。 [0059] 实施例 [0060] 如图1所示,在**实施例中,一方面,本发明提供了一种自动化软件开发系统,包括:自动解耦模块1、软件建模模块2、流程配置模块3、软件自动生成模块4和冲突检查模块5。 [0061] 自动解耦模块1,用于根据输入的需求规范分析获取**页面之间的逻辑关系,并对**页面之间进行解耦; [0062] 需要说明的是,在进行**页面解耦之后,在自动解耦之前,程序员需要手动输入待开发软件的需求规格,并将需求规格输入到自动化软件开发系统中。 其中,需要说明的是,自动解耦模块1包括关系连接器,关系连接器是指用于实现页面逻辑关系的断开和连接的连接器,是一种逻辑关系方法。 集成可以自动管理、断开和连接软件页面的逻辑关系。
[0064] 作为一种优选的实施方式,自动解耦模块1包括: [0065] 解耦单元11,用于根据输入的需求规格,分析获取**页面之间的连接情况和传递参数。 以及关联关系,对首页进行解耦; [0066] 其中,需要说明的是,解耦单元11分析获取**页面之间的连接条件、传输参数以及关联关系。 ,收集输入需求规格,使得收集后的每个首页都可以作为单独的页面进行屏幕建模,以便多个程序员可以同时处理同一个软件的多个首页。 同步建模提高了软件开发的效率。 [0067] 软件建模模块2,用于根据输入的需求规格设定软件对应的控件、属性、逻辑和接口,建立软件模型; 其中软件模型包括多个第二页面。 [0068] 其中,需要说明的是,软件建模模块2用于供程序员手动设置软件对应的控件、属性、逻辑和接口,建立软件模型。 [0069] 其中,作为一种优选的实现方式,所述软件建模模块2包括: [0070] 控制设置单元21,用于根据输入的需求规格设置组成第二页面的实体元素; 其中,控件是指构成软件系统功能页面的实体元素,如按钮、文本、表格、权限、操作等; [0071] 属性设置单元22用于根据输入的需求规范设置实体元素的描述。 属性特征; 其中,属性是指用于描述实体元素的特征,例如按钮的描述,包括但不限于设置按钮为下拉框类型、下拉框为多选,以及多选的数据源。 什么,等等; 该属性可用于控制(代码库)生成Java源代码; [0072] 逻辑设置单元23,用于根据输入的需求规范设置除实体元素之外的其他元素; 其中,所述逻辑是指软件中无法用物理元素描述的其他元素,例如软件特有的计算逻辑、接口数据处理逻辑等。 [0073] 接口设置单元24用于根据输入的需求规格设置软件和外部需求。 数据交互的接口。
其中,接口包括代码位置、交互内容和协议方法,具有物联网接口、大数据接口、区块链接口、支付系统接口和银联接口等多种接口。 77 CN B规范页面[0074] 其中,作为一种优选的实施方式,自动解耦模块1还用于进行第二页面之间的关联; 包括关联单元12,用于分析所有第二页面之间的连接条件、传输参数和关联关系,并进行第二页面之间的关联; 将每个第二页面关联起来后,就可以形成初步的软件模型。 [0075] 流程配置模块3,用于对软件模型的执行流程进行配置和管理; [0076] 其中,作为一种优选的实施方式,流程配置模块3包括: [0077] 流程配置单元31,用于根据功能之间的逻辑关系配置发起角色、执行角色、状态选择和下一页。软件模型; [0078] 关系处理单元32,用于根据逻辑关系配置软件模型的功能之间的关系,处理多部门、多层级、多角色关系; [0079] 进程管理单元33,用于修改、启动、暂停和取消所配置的软件执行进程。 [0080] 软件自动生成模块4,用于自动编辑软件模型,生成包含可执行程序的软件; [0081] 其中,作为一种优选实施例,软件自动生成模块4包括: [0082] 数据库结构生成单元,用于根据第二页面的属性自动编写软件的数据库结构和数据库模式定义语言; [0083] 代码生成单元42,用于根据第二页面的属性,自动从代码库中提取对应的代码,并根据配置的执行流程生成可执行程序代码; [0084] 编码优化单元43,用于根据第二页面的逻辑对程序代码进行编码优化,去除冗余代码; [0085] 编码组合单元44,用于将优化后的程序代码与组件验证、外部服务、分析服务和数据库相结合进行编码组合; [0086] 软件输出单元45,用于输出编码后的组合可执行程序、源代码、数据库结构和项目文档。
[0087] 其中,作为一种优选实施例,软件自动生成模块4还包括: [0088] 软件管理单元46,用于启动和停止软件生成、软件生成过程、软件目录、软件组件和软件服务管理; [0089] 程序分析单元47用于分析程序的第二页的代码类型、代码行数、代码备注以及逻辑行数。 [0090] 冲突检查模块5用于对第二页面与可执行程序进行冲突检查,并自动纠正冲突。 [0091] 其中,作为一种优选的实现方式,所述冲突检查模块5包括: [0092] 冲突检查单元51,用于检查所述第二页面中各元素的关联关系,所述第二页面之间的关系冲突检查为对可执行程序的关联关系和代码质量进行评估; [0093] It be noted that the code but is not to , , and code . [0094] The unit 52 is used to on the of each in the page, the pages, and the code of the . Based on the above , the or the first pages is out the 1, so that first pages can be ; to the input , the is built 2 sets the to to the , , logic and on page 6/7 of the 88 CN B to the model; then the of the model the 3; and then the model the 4. that can ; and and the 5 .
The parts of the that by only the part and the part, and the other parts are by the . with the model, the the time of and the time of . It the error rate, can be to that rapid , and the cost of the . [0096] As shown in 2, in the , the a for , but not to being by steps S101-S106: [0097] Step S101. to the input , and the first pages, the first pages; [0098] Step S102. to the input , set the , , logic and to a model; , the model pages; [0099] Step S103. the the pages and an the pages; [0100] Step S104. each in the page The and the the pages are for , and the are ; [0101] Step S105. edit the model to ; [0102] Step S106. Check the code of the for , and the .
[0103] As a , the step S105 : [0104] Step S105a. write the and of the to the of the page; [0105] Step S105b. to the of the page, the code is from the code , and code is based on the ; [0106] Step S105c. to the logic of the page, the The code is coded and , and codes are ; [0107] Step S105c. , , and to code and the code; [0108] Step S105d. , code, , and . [0109] In a third , the a , : a , a and a that are in , the is used to store , the is used to send and , and the The is to read the and the in the . [0110] For , the may, but is not to, (-, RAM), read-only (Read-, ROM), flash (), first-in-first-out (First, FIFO) and/ Or first-in-last-out (First, FILO), etc.; the can be, but is not to, a WiFi ( ) , a , a GPRS (rvice, Radio ) and/or ( , a low-power local area based on the .15.4 ) , etc.; the may not be to a with a model .
In a , the a - , are on the - , and when the are run on a , the as in the . 99 CN B page 7/7 [0112] , the to the for data, which may, but is not to, disks, disks, hard disks, flash , USB flash and/or (), etc., so The may be a - , a - , a , or other . The may be a - , a - , a , or other . [0113] In a fifth , the a that, when the are run on a , cause the to the for as in the . [0114] , it be noted that the above are only of the and are not to limit the scope of the . 凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。 1010 CN B , 1/2 on page 11111 CN B , 2/2 on page 21212
炫佑科技专注互联网开发小程序开发-app开发-软件开发-网站制作等