CN112068841B - 一种自动生成项目流程文档的方法及系统 - Google Patents
一种自动生成项目流程文档的方法及系统 Download PDFInfo
- Publication number
- CN112068841B CN112068841B CN202010941989.1A CN202010941989A CN112068841B CN 112068841 B CN112068841 B CN 112068841B CN 202010941989 A CN202010941989 A CN 202010941989A CN 112068841 B CN112068841 B CN 112068841B
- Authority
- CN
- China
- Prior art keywords
- action
- level
- module
- sub
- data structure
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 230000009471 action Effects 0.000 claims abstract description 178
- 102100028572 Disabled homolog 2 Human genes 0.000 claims abstract description 29
- 101000866272 Homo sapiens Double C2-like domain-containing protein alpha Proteins 0.000 claims abstract description 29
- 102100033973 Anaphase-promoting complex subunit 10 Human genes 0.000 claims abstract description 28
- OAUWKHSGCCPXOD-UHFFFAOYSA-N DOC1 Natural products C1=CC(O)=C2C(CC(=O)NCCCCCNCCCNCCCNCCCN)=CNC2=C1 OAUWKHSGCCPXOD-UHFFFAOYSA-N 0.000 claims abstract description 28
- 101000779315 Homo sapiens Anaphase-promoting complex subunit 10 Proteins 0.000 claims abstract description 28
- 101000737813 Homo sapiens Cyclin-dependent kinase 2-associated protein 1 Proteins 0.000 claims abstract description 28
- 241000196324 Embryophyta Species 0.000 claims description 26
- 238000003860 storage Methods 0.000 claims description 8
- 240000001140 Mimosa pudica Species 0.000 claims description 7
- 238000004519 manufacturing process Methods 0.000 claims description 6
- 238000011161 development Methods 0.000 abstract description 11
- 230000008569 process Effects 0.000 abstract description 11
- 238000013461 design Methods 0.000 abstract description 3
- 230000006399 behavior Effects 0.000 description 19
- 230000006870 function Effects 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 102100035353 Cyclin-dependent kinase 2-associated protein 1 Human genes 0.000 description 1
- 238000012356 Product development Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种自动生成项目流程文档的方法及系统,包括:步骤M1:收集用户动作信息及动作信息相应的接口请求信息,根据用户动作信息及接口请求信息生成树形数据结构T;步骤M2:将树形数据结构T写入包括JSON文件和/或XML文件中,记为DOC1;步骤M3:将DOC1编译成编译成包括Markdown和PlantUML可识别的数据形式,并记为DOC2;步骤M4:将DOC2转化成项目流程文档。本发明解决了开发流程设计文档需要手工编写的问题,同时本发明能自适应项目业务、模块变动,提高了流程文档的准确性。
Description
技术领域
本发明涉及计算机技术领域,具体地,涉及一种自动生成项目流程文档的方法及系统。
背景技术
随着通信和移动终端技术的发展以及广泛应用,各种软件层出不穷。为了能够贴近用户需求,在开发软件产品过程中开发人员根据提供的业务需求确定相应的实现方案。然后根据确定出的相应的实现方案,进行相应的开发。
现有技术方案中,在确定相应的实现方案过程中,产品开发相关的工作人员需要分析业务需求中需要实现的那些功能,并确定对应的流程步骤,并且还需要为每个步骤配置输入和输出参数描述的接口文档,然后在将这些流程步骤和对应的接口文档进行组合,从而得到开发文档。
因为项目流程文档存在业务逻辑的层级关系,所以目前业界大都是手工编写,人工校对。存在自动生成的方案也是定制化制作某个项目的模版,然后根据模版生成项目流程文档。在项目快速迭代时,项目流程文档频繁修改,无论是手工编写还是模版化,都难以保持其和代码的一致性,文档维护成本很高。
针对上述现有技术的不足,本发明提供了可以通过用户操作项目实时生成项目流程文档的方法。在用户操作产品前端界面时,脚本自动收集用户动作信息、接口请求信息,并生成树形数据结构,最终生成项目流程文档。本发明能自适应项目业务、模块变动。但实现上存在一些难题:(1)在用户操作产品前端界面时,用户会跳模块点击、错乱点击和重复点击等问题。(2)某些项目要使用多种可视化图形工具来编写。
对于难题(1)该发明解决方案如下:
初次进入某个模块时,视为发生了一个根级别动作。在该模块下进行的其它操作,视为根级别动作的子动作。每个动作(包括根级别动作)都是一个对象,其中包括接口url、动作行为标题、动作文字说明、动作识别标签、动作的PlantUML代码块。每个根级别动作为树形数据结构T第二层级的键值对key值,其对应所有子动作是该键值对的value值,value值是一个对象。如果该模块的二级页面具有子页面的动作,则该子页面动作为二级动作,其下子动作为三级动作,以此类推,树形数据结构T层级结构也逐步加深。
通过这种结构存储的方式,可以兼容用户错乱点击和重复多次点击的操作情况。用户错乱点击的时候,只是记录片段行为,该片段行为通过各个模块的根级别动作串联,通过错乱点击同样可以逐渐形成完整的模块结构,进而生成整体文档。当用户重复多次点击的时候,每个动作都会通过键值对的key值判断该动作是否发生过,若发生过,则不会重复写入。
T使用Map嵌套结构来存储,层级定义如下:
用户权限标识为数据第一层级(根层级),所有主模块操作为第二层级(根级别动作),主模块的第一层子页面操作为第三层级,以此类推。
对于难题(2)该发明解决方案如下:
生成的树形数据结构T编译成Markdown和PlantUML、Graphviz等可视化图形工具可识别的数据形式,转化成项目流程文档。
专利文献CN109408112A(申请号:201811114907.5)公开了一种在线开发文档生成方法、装置、终端及可读存储介质,涉及计算机技术领域。本发明实施例通过获取业务需求对应的各流程步骤信息;从而,根据所述各流程步骤信息以及预存的代码模板,获取各流程步骤对应的目标代码;进而,将获得的各目标代码按照各流程步骤之间的映射关系进行组合,得到开发文档。这种技术方案根据流程步骤信息以及预存的代码模板,获取各流程步骤对应的目标代码,不能通过前端实时操作来生成项目流程文档,不够灵活。
专利文献CN107239271A(申请号:201610190238.4)公开了一种开发文档生成方法及装置,所述方法包括:在预设程序开发管理工具中引入控制参数,控制参数用于在程序编译时将API程序中的每个方法中出现的参数的参数名称编译进与各个方法对应的类文件中;注入RequestMappingHandlerMapping获取API程序中每个方法的相关参数信息;相关参数信息包括URL、Controller、请求参数和返回Header类型;使用反射解析技术从请求参数中解析出参数名称、参数类型和参数注解内容;将API程序中每个方法的相关参数信息以及解析出的各种内容进行封装获得API开发文档。该方法及装置需要在预设程序开发管理工具中引入,在程序编译时一次性生成开发文档,且仅能生成API文档(API文档是一个技术内容交付文件,包含如何有效地使用和集成api的说明。它是一个简明的参考手册,包含了使用API所需的所有信息,详细介绍了函数、类、返回类型、参数等,并有教程是示例支撑。),不能生成项目流程文档。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种自动生成项目流程文档的方法及系统。
根据本发明提供的一种自动生成项目流程文档的方法,包括:
步骤M1:收集用户动作信息及动作信息相应的接口请求信息,根据用户动作信息及接口请求信息生成树形数据结构T;
步骤M2:将树形数据结构T写入包括JSON文件和/或XML文件中,记为DOC1;
步骤M3:将DOC1编译成编译成包括Markdown和PlantUML可识别的数据形式,并记为DOC2;
步骤M4:将DOC2转化成项目流程文档。
优选地,所述步骤M1中树形数据结构T包括:使用Map嵌套结构来存储,包括:用户权限标识为数据第一层级根层级;所有主业务模块操作为第二层级对应的根级别动作;主业务模块的第一层子页面操作为第三层级对应的第二级别动作;......;主业务模块的第n层子页面操作为第n+2层级对应的第n+1层级动作;
所述主业务模块操作为初次进入任意一个业务模块的页面时进行的操作。
优选地,所述步骤M1包括:
步骤M1.1:根据用户信息确定用户权限,并制作一个权限标识,所述权限标识为树形数据结构T第一层级键值对的key值;第一层级键值对的value值为动作标识;
步骤M1.2:当初次进入与用户权限相对应的任意一个业务模块进行操作时,则视为发生了一个根级别动作;当在当前业务模块下非初次进入进行的任何操作,则视为对应根级别动作的子动作;所述根级别动作为树形数据结构T第二层级的键值对key值;所述对应根级别动作子动作为树形数据结构T第二层级的键值对value值;当当前业务模块的第一层子页面操作为第三层级,则当前子页面动作为第二级别动作;......;当当前业务模块的n级子页面操作为第n+2层级,则则当前子页面动作为n+1层级动作。
优选地,所述每一个级别动作和对应级别动作的子动作都是一个对象,每一个对象包括:接口url、动作行为标题、动作文字说明、动作识别标签和/或动作的PlantUML代码块。
优选地,所述步骤M3包括:
步骤M3.1:将DOC1中每个对象中的动作行为标题、动作文字说明和动作识别标签编译成Markdown;
步骤M3.2:将DOC1中每个对象中接口url和动作的PlantUML代码块编译成PlantUML;
步骤M3.3:将编译后的Markdown和编译后的PlantUML写入新的包括JSON文件和/或XML文件中进行保存,记为DOC2。
优选地,所述步骤M3.3包括:通过动作识别标签对DOC2进行预设部分变更。
根据本发明提供的一种自动生成项目流程文档的系统,包括:
模块M1:收集用户动作信息及动作信息相应的接口请求信息,根据用户动作信息及接口请求信息生成树形数据结构T;
模块M2:将树形数据结构T写入包括JSON文件和/或XML文件中,记为DOC1;
模块M3:将DOC1编译成编译成包括Markdown和PlantUML可识别的数据形式,并记为DOC2;
模块M4:将DOC2转化成项目流程文档。
优选地,所述模块M1中树形数据结构T包括:使用Map嵌套结构来存储,包括:用户权限标识为数据第一层级根层级;所有主业务模块操作为第二层级对应的根级别动作;主业务模块的第一层子页面操作为第三层级对应的第二级别动作;......;主业务模块的第n层子页面操作为第n+2层级对应的第n+1层级动作;
所述主业务模块操作为初次进入任意一个业务模块的页面时进行的操作。
优选地,所述模块M1包括:
模块M1.1:根据用户信息确定用户权限,并制作一个权限标识,所述权限标识为树形数据结构T第一层级键值对的key值;第一层级键值对的value值为动作标识;
模块M1.2:当初次进入与用户权限相对应的任意一个业务模块进行操作时,则视为发生了一个根级别动作;当在当前业务模块下非初次进入进行的任何操作,则视为对应根级别动作的子动作;所述根级别动作为树形数据结构T第二层级的键值对key值;所述对应根级别动作子动作为树形数据结构T第二层级的键值对value值;当当前业务模块的第一层子页面操作为第三层级,则当前子页面动作为第二级别动作;......;当当前业务模块的n级子页面操作为第n+2层级,则则当前子页面动作为n+1层级动作;
所述每一个级别动作和对应级别动作的子动作都是一个对象,每一个对象包括:接口url、动作行为标题、动作文字说明、动作识别标签和/或动作的PlantUML代码块。
优选地,所述模块M3包括:
模块M3.1:将DOC1中每个对象中的动作行为标题、动作文字说明和动作识别标签编译成Markdown;
模块M3.2:将DOC1中每个对象中接口url和动作的PlantUML代码块编译成PlantUML;
模块M3.3:将编译后的Markdown和编译后的PlantUML写入新的包括JSON文件和/或XML文件中进行保存,记为DOC2;
所述模块M3.3包括:通过动作识别标签对DOC2进行预设部分变更。
与现有技术相比,本发明具有如下的有益效果:
1、本发明解决了开发流程设计文档需要手工编写的问题,同时本发明能自适应项目业务、模块变动,提高了流程文档的准确性;
2、本发明以轻量脚本形式引入项目中独立运行,轻量、方便使用且不对原项目操作造成任何影响;
3、通过Map嵌套结构来存储树形数据结构,可以兼容用户错乱点击和重复多次点击的操作情况。用户错乱点击的时候,只是记录片段行为,该片段行为通过各个模块的根级别动作串联,通过错乱点击同样可以逐渐形成完整的模块结构,进而生成整体文档。当用户重复多次点击的时候,每个动作都会通过键值对的key值判断该动作是否发生过,若发生过,则不会重复写入。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为一种自动生成项目流程文档的方法流程图;
图2为一种自动生成项目流程文档的系统示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
实施例1
根据本发明提供的一种自动生成项目流程文档的方法,如图1所示,包括:
步骤M1:收集用户动作信息及动作信息相应的接口请求信息,根据用户动作信息及接口请求信息生成树形数据结构T;
步骤M2:将树形数据结构T写入包括JSON文件和/或XML文件中,记为DOC1;
步骤M3:将DOC1编译成编译成包括Markdown和PlantUML可识别的数据形式,并记为DOC2;
步骤M4:将DOC2转化成项目流程文档。
具体地,所述步骤M1中树形数据结构T包括:使用Map嵌套结构来存储,包括:用户权限标识为数据第一层级根层级;所有主业务模块操作为第二层级对应的根级别动作;主业务模块的第一层子页面操作为第三层级对应的第二级别动作;......;主业务模块的第n层子页面操作为第n+2层级对应的第n+1层级动作;
所述主业务模块操作为初次进入任意一个业务模块的页面时进行的操作。
具体地,所述步骤M1包括:
步骤M1.1:根据用户信息确定用户权限,并制作一个权限标识,所述权限标识为树形数据结构T第一层级键值对的key值;第一层级键值对的value值为动作标识;
步骤M1.2:当初次进入与用户权限相对应的任意一个业务模块进行操作时,则视为发生了一个根级别动作;当在当前业务模块下非初次进入进行的任何操作,则视为对应根级别动作的子动作;所述根级别动作为树形数据结构T第二层级的键值对key值;所述对应根级别动作子动作为树形数据结构T第二层级的键值对value值;当当前业务模块的第一层子页面操作为第三层级,则当前子页面动作为第二级别动作;......;当当前业务模块的n级子页面操作为第n+2层级,则则当前子页面动作为n+1层级动作。
具体地,所述每一个级别动作和对应级别动作的子动作都是一个对象,每一个对象包括:接口url、动作行为标题、动作文字说明、动作识别标签和/或动作的PlantUML代码块。
具体地,所述步骤M3包括:
步骤M3.1:将DOC1中每个对象中的动作行为标题、动作文字说明和动作识别标签编译成Markdown;
步骤M3.2:将DOC1中每个对象中接口url和动作的PlantUML代码块编译成PlantUML;
步骤M3.3:将编译后的Markdown和编译后的PlantUML写入新的包括JSON文件和/或XML文件中进行保存,记为DOC2。
具体地,所述步骤M3.3包括:通过动作识别标签对DOC2进行预设部分变更。
根据本发明提供的一种自动生成项目流程文档的系统,包括:
模块M1:收集用户动作信息及动作信息相应的接口请求信息,根据用户动作信息及接口请求信息生成树形数据结构T;
模块M2:将树形数据结构T写入包括JSON文件和/或XML文件中,记为DOC1;
模块M3:将DOC1编译成编译成包括Markdown和PlantUML可识别的数据形式,并记为DOC2;
模块M4:将DOC2转化成项目流程文档。
具体地,所述模块M1中树形数据结构T包括:使用Map嵌套结构来存储,包括:用户权限标识为数据第一层级根层级;所有主业务模块操作为第二层级对应的根级别动作;主业务模块的第一层子页面操作为第三层级对应的第二级别动作;......;主业务模块的第n层子页面操作为第n+2层级对应的第n+1层级动作;
所述主业务模块操作为初次进入任意一个业务模块的页面时进行的操作。
具体地,所述模块M1包括:
模块M1.1:根据用户信息确定用户权限,并制作一个权限标识,所述权限标识为树形数据结构T第一层级键值对的key值;第一层级键值对的value值为动作标识;
模块M1.2:当初次进入与用户权限相对应的任意一个业务模块进行操作时,则视为发生了一个根级别动作;当在当前业务模块下非初次进入进行的任何操作,则视为对应根级别动作的子动作;所述根级别动作为树形数据结构T第二层级的键值对key值;所述对应根级别动作子动作为树形数据结构T第二层级的键值对value值;当当前业务模块的第一层子页面操作为第三层级,则当前子页面动作为第二级别动作;......;当当前业务模块的n级子页面操作为第n+2层级,则则当前子页面动作为n+1层级动作;
所述每一个级别动作和对应级别动作的子动作都是一个对象,每一个对象包括:接口url、动作行为标题、动作文字说明、动作识别标签和/或动作的PlantUML代码块。
具体地,所述模块M3包括:
模块M3.1:将DOC1中每个对象中的动作行为标题、动作文字说明和动作识别标签编译成Markdown;
模块M3.2:将DOC1中每个对象中接口url和动作的PlantUML代码块编译成PlantUML;
模块M3.3:将编译后的Markdown和编译后的PlantUML写入新的包括JSON文件和/或XML文件中进行保存,记为DOC2;
所述模块M3.3包括:通过动作识别标签对DOC2进行预设部分变更。
实施例2
实施例2是实施例1的变化例
本发明提供了一种根据产品前端界面(即UI视觉界面)操作,自动生成项目流程文档(包括项目操作顺序、接口调用顺序,项目模块操作内容等信息的文档)的方法及系统。本发明能制作成一个轻量级脚本(小于1兆),可直接在项目(项目指运用计算机语言编写的具有一定业务操作性质的软件产品)中导入(例如拷贝入项目中并进行简单的配置)。在用户操作产品前端界面时,上述脚本自动收集用户动作信息、接口请求信息,并生成树形数据结构(记为T),最终生成项目流程文档。本发明解决了开发流程设计文档需要手工编写的问题,同时本发明能自适应项目业务、模块变动,提高了流程文档的准确性。
步骤1:通过用户在项目中的点击动作或者项目运行顺序,本系统收集对应的行为及该行为下的接口调用,生成并存储树形数据结构T。
T使用Map嵌套结构来存储,层级定义如下:
用户权限标识为数据第一层级(根层级),所有主模块操作为第二层级(根级别动作),主模块的第一层子页面操作为第三层级,以此类推。
所述步骤1包括如下步骤:
步骤1.1:收集用户信息。通过用户信息确定用户权限,并做一个权限标识。该权限标识为树形数据结构T第一层级键值对的key值。该层级键值对的value值为步骤1.2的动作标识。
步骤1.2:收集操作信息。初次进入某个模块时,视为发生了一个根级别动作。在该模块下进行的其它操作,视为根级别动作的子动作。每个动作(包括根级别动作)都是一个对象,其中包括接口url、动作行为标题、动作文字说明、动作识别标签、动作的PlantUML代码块。每个根级别动作为树形数据结构T第二层级的键值对key值,其对应所有子动作是该键值对的value值,value值是一个对象。如果该模块的二级页面具有子页面的动作,则该子页面动作为二级动作,其下子动作为三级动作,以此类推,树形数据结构T层级结构也逐步加深。
步骤1.3:将步骤1.2中生成的树形数据结构T写入JSON文件或指例如XML等文件(记为DOC1)中,便于随时读取和变更。
步骤2:将DOC1编译成Markdown和PlantUML可识别的数据形式(分别记为M和P)。
所述步骤2包括如下步骤:
步骤2.1:将DOC1中每个对象中的动作行为标题、动作文字说明、动作识别标签剥离出来,编译成M。将对象中的接口url、动作的PlantUML代码块剥离出来,编译成P。
步骤2.2:将M和P写入新的JSON文件或指例如XML等文件(记为DOC2)中进行保存,以便于随时读取DOC2生成项目流程文档,或通过动作识别标签,对DOC2进行部分变更。
步骤3:将DOC2转化成项目流程文档(记为D)。至此,D生成成功。
根据本发明提供的一种自动生成项目流程文档的系统,如图2所示,包括:
事件监听模块:该模块获取项目代码运行中的点击事件。具体的如下所述:
该模块首先介入项目路由配置文件和ajax(通过在后台与服务器进行少量数据交换,并可以使网页实现异步更新)配置文件,从路由钩子函数(路由的生命周期函数)中获取路由跳转动作事件,从ajax配置文件中获取向服务器请求事件。其次在项目每次进入一个页面,该模块会循环dom节点,获取所有button标签并插入id标识,用户点击button标签,通过插入的id,同时结合路由和ajax请求信息,整合成一组动作信息。特别的:一组动作信息可只有button点击事件,或只有路由跳转信息,或只有ajax请求信息,或button点击事件与路由跳转信息、button点击事件与ajax请求信息、路由跳转信息与ajax请求信息。
事件处理模块:该模块对事件监听模块获取的行为信息进行分配、整合。具体的如下所述:
该模块将事件监听模块获取的碎片化信息分两个维度进行整合。纬度1:对初次进入的系统模块页面为基础(根据整个系统的路由分配,可判定系统的各个模块的主路由,每个此类路由指向的页面为系统某个模块页面),整合该模块的所有行为信息。纬度2:基于每个模块页的跳转认定为该模块的子页面,基于每个页面的所有动作信息,整合为一个页面的所有动作。结合维度1和纬度2,整合以模块页面为基础,包括其所有子页面和每个页面所有信息。处理成树形数据结构T,每个模块都有自己的一组树形数据结构T
事件输出模块:该模块将事件处理模块整合好的数据编译成Markdown和PlantUML可识别的数据形式,或其它可视化图形工具可识别的数据形式,如Graphviz等。生成项目流程文档输出。
事件监听模块、事件处理模块、事件输出模块整体处理成一个进程(计算机中的程序关于某数据集合上的一次运行活动)监听形式。作为一个脚本导入到项目中,项目启动的同时启动该脚本,作为项目的子进程运行于项目中。每当主进程事件动作发生,会发送该消息到子进程,子进程独立处理事件,不对主进程业务操作有任何影响。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (6)
1.一种自动生成项目流程文档的方法,其特征在于,包括:
步骤M1:收集用户动作信息及动作信息相应的接口请求信息,根据用户动作信息及接口请求信息生成树形数据结构T;
步骤M2:将树形数据结构T写入JSON文件和/或XML文件中,记为DOC1;
步骤M3:将DOC1编译成包括Markdown和PlantUML可识别的数据形式,并记为DOC2;
步骤M4:将DOC2转化成项目流程文档;
所述步骤M1中树形数据结构T包括:使用Map嵌套结构来存储,包括:用户权限标识为数据第一层级根层级;所有主业务模块操作为第二层级对应的根级别动作;主业务模块的第一层子页面操作为第三层级对应的第二级别动作;......;主业务模块的第n层子页面操作为第n+2层级对应的第n+1层级动作;
所述主业务模块操作为初次进入任意一个业务模块的页面时进行的操作;
所述步骤M1包括:
步骤M1.1:根据用户信息确定用户权限,并制作一个权限标识,所述权限标识为树形数据结构T第一层级键值对的key值;第一层级键值对的value值为动作标识;
步骤M1.2:当初次进入与用户权限相对应的任意一个业务模块进行操作时,则视为发生了一个根级别动作;当在当前业务模块下非初次进入进行的任何操作,则视为对应根级别动作的子动作;所述根级别动作为树形数据结构T第二层级的键值对key值;所述对应根级别动作子动作为树形数据结构T第二层级的键值对value值;当当前业务模块的第一层子页面操作为第三层级,则当前子页面动作为第二级别动作;......;当当前业务模块的n级子页面操作为第n+2层级,则则当前子页面动作为n+1层级动作。
2.根据权利要求1所述的自动生成项目流程文档的方法,其特征在于,每一个根级别动作和对应根级别动作的子动作都是一个对象,每一个对象包括:接口url、动作行为标题、动作文字说明、动作识别标签和/或动作的PlantUML代码块。
3.根据权利要求2所述的自动生成项目流程文档的方法,其特征在于,所述步骤M3包括:
步骤M3.1:将DOC1中每个对象中的动作行为标题、动作文字说明和动作识别标签编译成Markdown;
步骤M3.2:将DOC1中每个对象中接口url和动作的PlantUML代码块编译成PlantUML;
步骤M3.3:将编译后的Markdown和编译后的PlantUML写入新的包括JSON文件和/或XML文件中进行保存,记为DOC2。
4.根据权利要求3所述的自动生成项目流程文档的方法,其特征在于,所述步骤M3.3包括:通过动作识别标签对DOC2进行预设部分变更。
5.一种自动生成项目流程文档的系统,其特征在于,包括:
模块M1:收集用户动作信息及动作信息相应的接口请求信息,根据用户动作信息及接口请求信息生成树形数据结构T;
模块M2:将树形数据结构T写入JSON文件和/或XML文件中,记为DOC1;
模块M3:将DOC1编译成包括Markdown和PlantUML可识别的数据形式,并记为DOC2;
模块M4:将DOC2转化成项目流程文档;
所述模块M1中树形数据结构T包括:使用Map嵌套结构来存储,包括:用户权限标识为数据第一层级根层级;所有主业务模块操作为第二层级对应的根级别动作;主业务模块的第一层子页面操作为第三层级对应的第二级别动作;......;主业务模块的第n层子页面操作为第n+2层级对应的第n+1层级动作;
所述主业务模块操作为初次进入任意一个业务模块的页面时进行的操作;
所述模块M1包括:
模块M1.1:根据用户信息确定用户权限,并制作一个权限标识,所述权限标识为树形数据结构T第一层级键值对的key值;第一层级键值对的value值为动作标识;
模块M1.2:当初次进入与用户权限相对应的任意一个业务模块进行操作时,则视为发生了一个根级别动作;当在当前业务模块下非初次进入进行的任何操作,则视为对应根级别动作的子动作;所述根级别动作为树形数据结构T第二层级的键值对key值;所述对应根级别动作子动作为树形数据结构T第二层级的键值对value值;当当前业务模块的第一层子页面操作为第三层级,则当前子页面动作为第二级别动作;......;当当前业务模块的n级子页面操作为第n+2层级,则则当前子页面动作为n+1层级动作;
每一个根级别动作和对应根级别动作的子动作都是一个对象,每一个对象包括:接口url、动作行为标题、动作文字说明、动作识别标签和/或动作的PlantUML代码块。
6.根据权利要求5所述的自动生成项目流程文档的系统,其特征在于,所述模块M3包括:
模块M3.1:将DOC1中每个对象中的动作行为标题、动作文字说明和动作识别标签编译成Markdown;
模块M3.2:将DOC1中每个对象中接口url和动作的PlantUML代码块编译成PlantUML;
模块M3.3:将编译后的Markdown和编译后的PlantUML写入新的包括JSON文件和/或XML文件中进行保存,记为DOC2;
所述模块M3.3包括:通过动作识别标签对DOC2进行预设部分变更。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010941989.1A CN112068841B (zh) | 2020-09-09 | 2020-09-09 | 一种自动生成项目流程文档的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010941989.1A CN112068841B (zh) | 2020-09-09 | 2020-09-09 | 一种自动生成项目流程文档的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112068841A CN112068841A (zh) | 2020-12-11 |
CN112068841B true CN112068841B (zh) | 2024-02-23 |
Family
ID=73664629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010941989.1A Active CN112068841B (zh) | 2020-09-09 | 2020-09-09 | 一种自动生成项目流程文档的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112068841B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI767644B (zh) * | 2021-04-01 | 2022-06-11 | 劉玉堂 | 透過設定資料結構與自動生成應用程式介面服務資訊的系統 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03171254A (ja) * | 1989-11-30 | 1991-07-24 | Nec Corp | 木構造チャートの文書ファイル出力装置 |
CN103984554A (zh) * | 2014-05-26 | 2014-08-13 | 中国工商银行股份有限公司 | 软件设计文档的生成方法及装置 |
CN105677620A (zh) * | 2014-11-21 | 2016-06-15 | 高德软件有限公司 | 项目管理文档生成方法及装置 |
CN109871357A (zh) * | 2018-12-14 | 2019-06-11 | 深圳壹账通智能科技有限公司 | 项目文档显示方法、装置、电子设备及存储介质 |
CN110764820A (zh) * | 2019-10-31 | 2020-02-07 | 百卓网络科技有限公司 | 一种基于代码注释自动生成开发文档的方法及系统 |
CN110780874A (zh) * | 2019-10-25 | 2020-02-11 | 北京百度网讯科技有限公司 | 用于生成信息的方法和装置 |
KR20200057173A (ko) * | 2018-11-15 | 2020-05-26 | (주) 더존비즈온 | 소프트웨어 설계서 생성 시스템 및 방법 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050060317A1 (en) * | 2003-09-12 | 2005-03-17 | Lott Christopher Martin | Method and system for the specification of interface definitions and business rules and automatic generation of message validation and transformation software |
US11256502B2 (en) * | 2018-10-25 | 2022-02-22 | Affirm, Inc. | Automatic generation of documentation and aggregation of community content |
-
2020
- 2020-09-09 CN CN202010941989.1A patent/CN112068841B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03171254A (ja) * | 1989-11-30 | 1991-07-24 | Nec Corp | 木構造チャートの文書ファイル出力装置 |
CN103984554A (zh) * | 2014-05-26 | 2014-08-13 | 中国工商银行股份有限公司 | 软件设计文档的生成方法及装置 |
CN105677620A (zh) * | 2014-11-21 | 2016-06-15 | 高德软件有限公司 | 项目管理文档生成方法及装置 |
KR20200057173A (ko) * | 2018-11-15 | 2020-05-26 | (주) 더존비즈온 | 소프트웨어 설계서 생성 시스템 및 방법 |
CN109871357A (zh) * | 2018-12-14 | 2019-06-11 | 深圳壹账通智能科技有限公司 | 项目文档显示方法、装置、电子设备及存储介质 |
CN110780874A (zh) * | 2019-10-25 | 2020-02-11 | 北京百度网讯科技有限公司 | 用于生成信息的方法和装置 |
CN110764820A (zh) * | 2019-10-31 | 2020-02-07 | 百卓网络科技有限公司 | 一种基于代码注释自动生成开发文档的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112068841A (zh) | 2020-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108845940B (zh) | 一种企业级信息系统自动化功能测试方法和系统 | |
Robles et al. | Tools for the study of the usual data sources found in libre software projects | |
CN107678943B (zh) | 抽象页面对象的页面自动化测试方法 | |
US20040181783A1 (en) | Transformation apparatus, transformation method, transformation programs, and computer readable recording medium having the transformation program stored therein | |
CN111159982B (zh) | 文档编辑方法、装置、电子设备及计算机可读存储介质 | |
US20090021767A1 (en) | Document processing device | |
EP1821219A1 (en) | Document processing device and document processing method | |
US7805452B2 (en) | Data processing device and data processing method | |
CN114020256A (zh) | 前端页面生成方法、装置、设备及可读存储介质 | |
Hauksdóttir et al. | Identification of a reusable requirements structure for embedded products in a dynamic market environment | |
CN112068841B (zh) | 一种自动生成项目流程文档的方法及系统 | |
CN111651196A (zh) | 文档发布方法、装置及服务器 | |
CN113986730A (zh) | 邀约文件测试方法、装置、设备及存储介质 | |
US20080281828A1 (en) | Variable Data Replacement Technique For An Electronic Communication System | |
US20230019201A1 (en) | Industrial Plant Machine Learning System | |
US20080005085A1 (en) | Server Device and Search Method | |
CN112416367B (zh) | 基于软件逆向拆解和分析的应用资源变更影响分析系统 | |
CN111258624B (zh) | 开源软件开发中Issue解决时间的预测方法及系统 | |
CN113971044A (zh) | 组件文档生成方法、装置、设备及可读存储介质 | |
CN113176873A (zh) | 用于信息管理的方法和装置、电子设备、及介质 | |
CN112667874A (zh) | 网页的数据抽取方法、装置、电子设备及存储介质 | |
Brzychczy et al. | Imperative vs. declarative modeling of industrial process. The case study of the longwall shearer operation | |
US20080285064A1 (en) | Document Processing Device, Document Processing Method, and Electronic Mail Processing Device | |
Pollom et al. | Approaching pattern catalogues for variability realization in model-based systems and software engineering | |
CN117973566B (zh) | 训练数据处理方法、装置及相关设备 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |