CN112988576B - 一种软件项目研发进程确定方法及装置 - Google Patents
一种软件项目研发进程确定方法及装置 Download PDFInfo
- Publication number
- CN112988576B CN112988576B CN202110214708.7A CN202110214708A CN112988576B CN 112988576 B CN112988576 B CN 112988576B CN 202110214708 A CN202110214708 A CN 202110214708A CN 112988576 B CN112988576 B CN 112988576B
- Authority
- CN
- China
- Prior art keywords
- service
- scene
- node
- development process
- flow chart
- 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 150
- 230000008569 process Effects 0.000 title claims abstract description 104
- 238000011161 development Methods 0.000 title claims description 39
- 238000013507 mapping Methods 0.000 claims abstract description 34
- 238000012827 research and development Methods 0.000 claims abstract description 34
- 235000014510 cooky Nutrition 0.000 claims description 12
- 238000013461 design Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 6
- 238000003860 storage Methods 0.000 claims description 6
- 238000012360 testing method Methods 0.000 abstract description 50
- 238000004891 communication Methods 0.000 abstract description 15
- 230000008901 benefit Effects 0.000 abstract description 9
- 230000007246 mechanism Effects 0.000 abstract description 5
- 238000013473 artificial intelligence Methods 0.000 abstract description 3
- 235000019580 granularity Nutrition 0.000 description 34
- 238000005259 measurement Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 7
- 238000007726 management method Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000008676 import Effects 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 101000919269 Homo sapiens cAMP-responsive element modulator Proteins 0.000 description 2
- 102100029387 cAMP-responsive element modulator Human genes 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 230000002265 prevention Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 208000033962 Fontaine progeroid syndrome Diseases 0.000 description 1
- 101100438470 Trichosurus vulpecula CSN2 gene Proteins 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000002290 gas chromatography-mass spectrometry Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- 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)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明属于人工智能技术领域,本发明提供了一种软件项目研发进程确定方法及装置,软件项目研发进程确定方法包括:建立目标软件的程序文件与所述程序文件对应的业务场景以及业务节点的映射;根据所述映射获取所述程序文件中的每个代码文件对应的所述业务场景以及业务节点;根据所述业务场景以及所述业务节点确定所述目标软件研发进程。本发明提供的软件项目研发进程确定方法及装置,有效降低了研发测试人员沟通工作量。使各应用间批量执行做到无缝衔接,缩短了批量测试时间并形成了高效的沟通工作机制,有效降提高了测试效率,降低了反复测试风险。
Description
技术领域
本发明属于人工智能技术领域,具体涉及一种软件项目研发进程确定方法及装置。
背景技术
现有技术中,软件项目的研发和测试过程中存在以下技术问题:首先,开发人员在同一分布式平台内划分出本专业专属逻辑空间,完成各专业负责的程序开发,由于程序可实时地跨应用访问数据,应用间批量作业依赖紧密,在程序测试阶段对各应用测试人员之间的配合要求高,现有的工作模式仍是前置应用的测试人员完成工作后只能邮件电话等方式通知后续应用的负责人员、人员之间的协调配合工作,这种模式带来的问题有:无法有效完成软件项目的研发以及测试任务,无法有效模拟程序投产后自动运行批量时应用间数据交互频繁,批量作业依赖紧密,批量时效性高的情景,从而软件的研发测试质量难以保证。
其次,由于项目中各应用研发以及测试进度不一,且项目集成测试没有统一的时间计划,故需要一个工具用穿针引线的方式将项目相关应用的版本安装、批量执行等测试步骤按顺序连接起来,建立一种创新的工作沟通机制,提高开发测试效率,降低沟通成本。最后,研发和测试人员习惯以应用为单位,在本应用内开展“横向测试”来保证应用内的程序畅通,但对项目维度的跨应用间配合的“纵向测试”掌握较弱,很多开发、测试人员不了解本应用在整个项目所处的位置,亟需一个项目维度的完整的数据/工作流程,以此来提高研发测试人员对应用研发以及测试进程的整体认识。
发明内容
本发明属于人工智能技术领域,针对现有技术中的问题,本发明提供的软件项目研发进程确定方法及装置,使各应用间批量执行做到无缝衔接,缩短了批量测试时间并形成了高效的沟通工作机制,有效提高了测试效率,降低了反复测试风险。
为解决上述技术问题,本发明提供以下技术方案:
第一方面,本发明提供一种软件项目研发进程确定方法,包括:
建立目标软件的程序文件与所述程序文件对应的业务场景以及业务节点的映射;
根据所述映射获取所述程序文件中的每个代码文件对应的所述业务场景以及业务节点;
根据所述业务场景以及所述业务节点确定所述目标软件研发进程。
一实施例中,所述根据所述映射获取所述程序文件中的每个代码文件对应的所述业务场景以及业务节点,包括:
获取所述程序文件的程序路径以及当前修改的程序列表;
根据所述程序路径以及所述程序列表获取当前修改的程序文件的代码文件合集;
根据所述映射获取所述代码文件合集中的每个代码文件对应的所述业务场景以及业务节点。
一实施例中,所述根据所述业务场景以及所述业务节点确定所述目标软件研发进程,包括:
根据所述业务场景生成场景流程图;
在所述场景流程图中标注当前修改的所述业务节点。
一实施例中,软件项目研发进程确定方法还包括:
根据当前用户的cookie确定所述序文件的程序路径;以及
根据所述当前用户的cookie判断当前用户的权限。
一实施例中,所述根据所述业务场景生成场景流程图包括:
按照粒度拆分软件项目研发进程以及根据所述业务场景,以生成进程粒度结果;
根据所述进程粒度结果生成所述场景流程图。
一实施例中,所述根据所述进程粒度结果生成所述场景流程图包括:
根据所述进程粒度结果生成设计参数表,所述参数表支持应用、作业组、作业、以及其他四种粒度级别;以及所述参数表内容包括:应用名、节点名称、节点类型、节点描述、前直接点、工作步骤、要求、负责人、工作时间、后续执行节点;
根据所述参数表中所对应的软件项目研发进程节点生成所述场景流程图。
一实施例中,所述根据所述参数表中所对应的软件项目研发进程节点生成所述场景流程图,包括:
根据粒度级别拆分所述参数表,以确定最小粒度级别中的工作步骤;
根据所述工作步骤生成所述场景流程图。
一实施例中,所述根据所述映射获取所述代码文件合集中的每个代码文件对应的所述业务场景以及业务节点,包括:
利用对接git工具查询所述程序路径中当前修改的代码文件合集;
遍历所述代码文件合集,以获取所述业务场景以及业务节点。
第二方面,本发明提供一种软件项目研发进程确定装置,包括:
映射建立单元,用于建立目标软件的程序文件与所述程序文件对应的业务场景以及业务节点的映射;
节点获取单元,用于根据所述映射获取所述程序文件中的每个代码文件对应的所述业务场景以及业务节点;
进程确定单元,用于根据所述业务场景以及所述业务节点确定所述目标软件研发进程。
一实施例中,所述节点获取单元包括:
程序路径获取模块,用于获取所述程序文件的程序路径以及当前修改的程序列表;
合集获取模块,用于根据所述程序路径以及所述程序列表获取当前修改的程序文件的代码文件合集;
节点获取模块,用于根据所述映射获取所述代码文件合集中的每个代码文件对应的所述业务场景以及业务节点。
一实施例中,所述进程确定单元包括:
流程图生成模块,用于根据所述业务场景生成场景流程图;
节点标注模块,用于在所述场景流程图中标注当前修改的所述业务节点。
一实施例中,软件项目研发进程确定装置还包括:
路径确定单元,用于根据当前用户的cookie确定所述序文件的程序路径;以及
权限判断单元,用于根据所述当前用户的cookie判断当前用户的权限。
一实施例中,流程图生成模块进一步包括:
粒度结果生成模块,用于按照粒度拆分软件项目研发进程以及根据所述业务场景,以生成进程粒度结果;
流程图生成模块,用于根据所述进程粒度结果生成所述场景流程图。
一实施例中,流程图生成模块进一步包括:参数表生成模块,用于根据所述进程粒度结果生成设计参数表,所述参数表支持应用、作业组、作业、以及其他四种粒度级别;以及所述参数表内容包括:应用名、节点名称、节点类型、节点描述、前直接点、工作步骤、要求、负责人、工作时间、后续执行节点;
流程图生成第一子模块,用于根据所述参数表中所对应的软件项目研发进程节点生成所述场景流程图。
一实施例中,流程图生成子模块进一步包括:
工作步骤确定模块,用于根据粒度级别拆分所述参数表,以确定最小粒度级别中的工作步骤;
流程图生成第二子模块,用于根据所述工作步骤生成所述场景流程图。
一实施例中,所述节点获取模块进一步包括:
集合查询模块,用于利用对接git工具查询所述程序路径中当前修改的代码文件合集;
遍业务节点获取模块,用于历所述代码文件合集,以获取所述业务场景以及业务节点。
第三方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现软件项目研发进程确定方法的步骤。
第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现软件项目研发进程确定方法的步骤。
从上述描述可知,本发明实施例提供的软件项目研发进程确定方法及装置,首先建立目标软件的程序文件与所述程序文件对应的业务场景以及业务节点的映射;根据映射获取程序文件中的每个代码文件对应的业务场景以及业务节点;根据业务场景以及业务节点确定目标软件研发进程。可使各应用研发人员节省学习时间、可对中间结果及时检查,降低了重复跑批测试风险,测试质量提升、风险防控。形成测试资产,个别项目可以考虑与自动化测试工具结合,每个版本自动化执行批量测试工作。有效降低了研发测试人员沟通工作量。各应用间批量执行做到无缝衔接,缩短了批量测试时间形成了高效的沟通工作机制,有效降提高了测试效率,降低了反复测试风险。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的实施例中软件项目研发进程确定方法流程示意图;
图2为本发明的实施例中步骤200的流程示意图;
图3为本发明的实施例中步骤300的流程示意图;
图4为本发明的实施例中步骤201的流程示意图;
图5为本发明的具体应用实例中软件项目研发进程确定方法的流程示意图;
图6为本发明的具体应用实例中软件项目研发进程确定方法的思维导图;
图7为本发明的实施例中软件项目研发进程确定装置的结构框图;
图8为本发明的实施例中节点获取单元结构示意图;
图9为本发明的实施例中进程确定单元结构示意图;
图10为本发明的实施例中的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
本发明的实施例提供一种软件项目研发进程确定方法的具体实施方式,参见图1,该方法具体包括如下内容:
步骤100:建立目标软件的程序文件与所述程序文件对应的业务场景以及业务节点的映射。
具体地,在各个***的每个程序文件(.java、.jsp、.sql等等)中,都按约定的规则写入了本程序属于的业务场景、以及属于的业务节点。如belongScene="减值测算";belongNode="FGL减值测算报表"。
步骤200:根据所述映射获取所述程序文件中的每个代码文件对应的所述业务场景以及业务节点;
根据步骤100所建议的映射关系,查找目标软件的程序文件(当前修改的程序文件)所对应的业务场景belongScene以及业务节点belongNode。
步骤300:根据所述业务场景以及所述业务节点确定所述目标软件研发进程。
具体地,根据步骤300中的业务场景以及业务节点可以确定本目标软件在整个项目中所处的位置,并在此基础上建立一个项目维度的完整的数据/工作流程程图,以提高研发测试人员可借此提高对研究项目的整体认识。
从上述描述可知,本发明实施例提供的软件项目研发进程确定方法,首先建立目标软件的程序文件与所述程序文件对应的业务场景以及业务节点的映射;根据映射获取程序文件中的每个代码文件对应的业务场景以及业务节点;根据业务场景以及业务节点确定目标软件研发进程。有效降低了研发测试人员沟通工作量。使各应用间批量执行做到无缝衔接,缩短了批量测试时间并形成了高效的沟通工作机制,有效降提高了测试效率,降低了反复测试风险。
一实施例中,参见图2,步骤200进一步包括:
步骤201:获取所述程序文件的程序路径以及当前修改的程序列表;
步骤202:根据所述程序路径以及所述程序列表获取当前修改的程序文件的代码文件合集;
步骤203:根据所述映射获取所述代码文件合集中的每个代码文件对应的所述业务场景以及业务节点。
在步骤201至步骤203中,首先获取某项目修改的程序清单,去对应应用代码路径中查询到本期修改的代码文件合集;并以此获取当前修改代码文件对应的业务场景以及业务节点。
一实施例中,参见图3,步骤300进一步包括:
步骤301:根据所述业务场景生成场景流程图;
步骤302:在所述场景流程图中标注当前修改的所述业务节点。
在步骤301以及步骤302中,获取到本项目所涉及的业务场景belongScene,并生成场景流程图,且把涉及到的修改的belongNode标注出来。
可以理解的是,在步骤302的基础上,优选的,还可以建立场景关系矩阵,根据关系矩阵自动绘制出当前项目的业务流程图。
一实施例中,软件项目研发进程确定方法进一步包括:
根据当前用户的cookie确定所述序文件的程序路径;以及
根据所述当前用户的cookie判断当前用户的权限。
在上述步骤中,用户需要使用一的“统一认证号”登陆***,根据需要创建项目,***获取当前cookie判断当前用户角色并确定其对应的曲线,例如:若为创建项目的项目经理,则有维护、删除项目信息的权限,也可导入《流程控制参数表》,其他角色仅有查看权限。
一实施例中,步骤301进一步包括:
按照粒度拆分软件项目研发进程以及根据所述业务场景,以生成进程粒度结果;
根据所述进程粒度结果生成所述场景流程图。
一实施例中,根据所述进程粒度结果生成所述场景流程图进一步包括:
根据所述进程粒度结果生成设计参数表,
所述参数表支持应用、作业组、作业、以及其他四种粒度级别;以及所述参数表内容包括:应用名、节点名称、节点类型、节点描述、前直接点、工作步骤、要求、负责人、工作时间、后续执行节点;
根据所述参数表中所对应的软件项目研发进程节点生成所述场景流程图。
一实施例中,根据所述参数表中所对应的软件项目研发进程节点生成所述场景流程图进一步包括:
根据粒度级别拆分所述参数表,以确定最小粒度级别中的工作步骤;
根据所述工作步骤生成所述场景流程图。
具体地,设计参数表将项目工作由粗到细拆分成项目、节点和工作步骤三个单元。最大粒度是项目,每个项目有N个节点,每节点有N个工作步骤,工作步骤是最小单元,项目、节点和工作步骤均可灵活创建、内容自定义。该表可兼容应用/作业组/作业/其他四种粗细不同的节点,各节点下按需创建一个或多个研发测试所需的工作步骤。该参数表作为项目唯一输入数据源,一次性导入***后自动生成“工作/数据流程图”,以及需要项目成员填写信息的“信息反馈页面”,自动化程度高、易用性高,是本***的核心功能模块。本发明将复杂的业务逻辑依托于表单之上,利用角色分离的思想将项目工作流从项目经理下发到项目成员,实现项目经理管理可控,项目成员执行可视。《流程控制参数表》具体实现方法如下:
1、应用名:可自定义,***根据该值画出纵向通道。考虑到技术人员均按应用分工,技术人员只需关注自己负责应用的甬道中的节点即可,进一步提升易用性。
2、节点名称:将项目拆分成各个粒度的工作步骤。各***根据该值自动生成“工作/数据流程图”中的节点。
3、节点类型:***根据不同类型的节点在“工作/数据流程图”形成不同图形的节点。字典值如下:1)应用2)作业组3)作业4)其他。
4、节点描述:内容自定义,输入节点的补充信息。
5、前置节点:格式为:应用名+节点名称,***自动根据该值排列节点间的前后顺序,形成有序的“工作/数据流程图”。
6、工作步骤:内容自定义。工作步骤是节点下具体的工作内容,一个节点可拆分成多个工作步骤,项目成员反馈具体工作步骤的完成情况。
7、要求:内容自定义。描述项目成员具体工作的要求。
8、负责人:内容自定义。描述项目成员与工作步骤的对应关系。项目成员登陆***后会自动展现负责人为自己的工作步骤。
9、计划开始时间:计划开始时间到达后,***联动邮件NOTS***,自动发邮件提醒负责人尽快开始工作。
10、计划结时间:计划结时间到达后,***联动邮件NOTS***,***自动发邮件提醒负责人尽快反馈工作是否已完成。
11、实际完成时间:空白时***自动取用户在某个工作步骤信息更新时,反馈“完成”状态的时间
12、实际开始时间:空白时***自动取某个工作步骤的前一步骤的反馈“完成”状态的时间。
13、反馈结果:字典值有:1)完成2)进行中3)等待中。
14、后续执行节点:***自动“后续执行节点”为非空时,相关的“工作步骤”定义为关键步骤。当项目成员登陆***,反馈当前工作步骤为“完成”后,自动点亮“后续执行节点”为“进行中”。***自动“后续执行节点”为非空时,“工作步骤”所对应的“通知提示消息”内容在本“工作步骤”展现的同时,也在对应的“后续执行节点”的“通知提示信息”栏中展现。
15、通知提醒信息:***自动判断“通知提示信息”内容为非空时,例如输入内容为字符“123”,则“信息反馈”界面下的“反馈信息”自动置为必输,否时提交“完成/进行中”状态时出现错误提示“请反馈:123”。
一实施例中,参见图4,步骤软件项目研发进程确定方法还包括:
步骤600:利用对接git工具查询所述程序路径中当前修改的代码文件合集;
步骤700:遍历所述代码文件合集,以获取所述业务场景以及业务节点。
可以理解的是,对接git工具是一个可对软件版本进行控制的商用软件,具体地,对接git工具具有以下功能:
备份文件:在日常开发中,代码备份必不可少。可以采用移动硬盘、网盘的形式来备份,但是以这种形式也有很多弊端。程序员一天的工作量都写在几个文件里面,如果说因为一些未知因素导致丢失了,这种情况损失还是挺大的。
历史记录:即使如上面所说,通过硬盘、网盘来备份,也只能保存当前最新的文件。而版本工具可以备份每一次所提交的代码,以及可以记录详细的修改信息,比如说某一行代码是谁在什么时候进行提交的。
版本回退:当在开发过程中,也难免一些人员不小心对代码所造成的伤害难以弥补的时候,这个时候可以通版本管理工具,将当前的代码回退到之前提交的某个版本。
多端共享:提供进行团队合作使用,可以使不同的同事共享代码,采用管理工具只需将代码提交即可。
为进一步地说明本方案,本发明以软件测试为例,提供软件项目研发进程确定方法的具体应用实例,具体包括如下内容,参见图5。
S1:通过对接git工具获取目标项目修改的程序清单。
另外还需要获取目标项目的每个应用的程序路径。具体地,用户使用一的“统一认证号”登陆***,根据需要创建项目,***获取当前cookie判断当前用户角色,若为创建项目的项目经理,则有维护、删除项目信息的权限,也可导入《流程控制参数表》,其他角色仅有查看权限。
创建管理项目:新建项目之后跳转到信息导入页面,后端预先将excel模板上传至服务端,供用户直接下载,并标注好预定的填写说明。通过smartUpload框架对excel文件中的数据进行解析,判断模板与预设规则的一致性,若出现错误则提示用户。若模板数据检验成功,则写入临时表并展示到前端供用户查看。选择版本、项目、项目负责人后,点击“提交”,提交后将临时表数据落入正式表中。
S2:建立目标软件的程序文件与所述程序文件对应的业务场景以及业务节点的映射。
在各个***的每个程序文件(.java、.jsp、.sql等等)中,都按约定的规则写入了本程序属于哪个业务场景、属于哪个业务节点。如belongScene="减值测算";belongNode="FGL减值测算报表"等。
例如:项目经理创建一个《NOVA+11.1拨备智慧决策分析平台效率优化》项目,并将该项目F-BDSP应用中6个应用FVM\CREM\BAM\BCAS\GCMS\CAS分别定义为节点,每个节点新建四个工作步骤,有“业务数据准备”、“作业组运行结果反馈”、“关键作业运行结果反馈”和“业务验证反馈”。批量进行到CERM应用时,技术负责人反馈当前状态为执行中的“CERM节点”下“作业组运行结果反馈”、“关键作业运行结果反馈”工作步骤是否已完成,并通知下个“BAM节点”技术人及时运行批量;业务测试人员反馈CREM节点下“业务数据准备”、“业务验证反馈”工作步骤是否已完成;项目负责人通过查询各个节点中各项工作步骤的反馈情况,管理、监督整个项目批量情况。业务、技术轮流更新工作完成情况,信息实时共享。工作步骤是最小单元,每个工作步骤有对应的“要求”、“负责人”、“计划开始时间”、“计划结束时间”、“实际开始时间”、“实际结束时间”和“通知提示信息”,目的是由***自动拆解各阶段的详细内容、责任人和时间要求等,用于后续过程管理。
S3:遍历每个代码文件,并获取此文件的belongScene和belongNode。
根据对接git工具,使其可获取到每个应用的程序路径,及本期修改的程序清单。并以此去对应应用代码路径中查询到本期修改的代码文件合集;遍历每个代码文件,获取此文件的belongScene和belongNode。
将全量场景和场景中节点的关系导入,维护每个场景和其中业务节点的关系,且每个节点有先后顺序,每个节点都有对应的负责人,形成场景关系矩阵,参见表1。
表1
节点ID | 节点名称 | 所属场景 | 节点位置 | 节点负责人 |
1 | 确定测算日期 | 减值测算 | 1 | 张三 |
2 | 执行F-CREM2_000001作业组 | 减值测算 | 2 | 李四 |
3 | 执行F-FMBM_000001作业组 | 减值测算 | 3 | 王五 |
4 | 执行F-CAS_000000作业组 | 减值测算 | 4 | 赵六 |
5 | FGL减值测算报表 | 减值测算 | 5 | 张三 |
6 | 发起损益查询请求 | 损益查询 | 1 | 李四 |
7 | 损益计算 | 损益查询 | 2 | 王五 |
8 | 损益结果报表生成 | 损益查询 | 3 | 赵六 |
…… | …… | …… | …… | …… |
S4:生成场景流程图。
获取到本项目所涉及的业务场景belongScene,并以此生成场景流程图,且把涉及到的修改的belongNode标注出来(整个业务场景都要测试,修改的节点重点测试)。
S5:根据场景流程图测试目标软件。
具体地,参见图6,启动测试流程后,基于流程图管理项目,串联项目各项任务和责任人,自动分配手工测试任务或直接下发脚本测试任务,保证项目业务流程有序可控。根据节点与负责人的对应关系,平台开始按流程顺序通知负责人测试任务,或自动调起脚本执行任务;负责人收到任务后开始执行测试,在手工测试结束后,在平台反馈结果,点击“处理完毕”按钮。对于自动任务若执行成功,自动进入下一环节,若执行失败,通知人工介入处理;平台通知下一个节点的负责人,开始测试,以此循环,直到所有场景测试完成。
优选地,还需要生成工作/数据流程图,具体地,根据《流程控制参数表》自动输出。数据流程图以《流程控制参数表》为依据,通过java Swing框架自动生成,流程图实现了自动连线且节点可拖拽。在每次进入项目详情页时,都根据当前作业节点状态,重新刷新流程图,并根据节点状态展示颜色。在单击到某一个作业节点时,右侧消息栏展示出该节点消息,根据已提交的通知信息按顺序展示出人员和信息文本。详细实现方法如下:
1、设计“甬道”:自动根据《流程控制参数表》中“应用名”划分甬道,首先获取表中应用个数,将流程图划分为相应个等比例的区域,再所属节点放入其中。
2、设计“节点”:自动根据《流程控制参数表》中“节点名称”输出节点,不同类型节点用不同图案区分。
3、设计“节点”排布方式:节点间前后顺序排布是自动根据《流程控制参数表》中各节点的“前置节点”自动排列得到,比如维护“节点A”的“前置节点”是“B节点”,***自动生成从B->A的流程图,两个节点及有箭头方向的连接线。页面上根据节点个数,等比例排布节点的位置,并通过节点在表中的顺序,形成节点前后的相对位置关系。
4、设计“节点状态”:自动根据“信息反馈”中用户反馈节点的状态,使用不同颜色区分,1)完成状态展现为绿色。2)进行中状态展现为红色。3)等待中状态展现为灰色。
5、设计“节点”坐标记录:在流程图页面,节点的位置以相对坐标的形式记录在后台,前台支持对节点的拖拽,***可更新每个节点的位置坐标,在下次进入页面时按拖拽后的最新位置展示。
一部分内容由从《流程控制参数表》自动提取,一部分由项目成员更新项目信息得到。***在右侧自动计算出当前任务节点展示其反馈信息,计算规则为排序最靠前的执行中节点,用户也可通过下拉菜单选择其他节点。双击流程中的某一个作业节点后,跳转至节点详情页面,页面根据节点索引反显出当前数据,若前置任务均已完成,则通过jquery.disable(false)开放编辑权限,用户可填写任务状态和反馈信息,点击“完成”提交之后将通知消息传至项目详情页右侧消息栏展示,并更新该节点的执行状态。若有未完成的前置任务,则为只读状态,不可填写。详细实现方法如下:
1、“信息反馈”与《工作/数据流程图》内容联动,“信息反馈”界面中默认展现《工作/数据流程图》当前状态为“进行中”的节点的各工作步骤。
2、“工作步骤”:自动根据《工作/数据流程图》中“工作步骤”获取。
3、“要求”:自动根据《工作/数据流程图》中“要求”获取。
4、“负责人”:自动根据《工作/数据流程图》中“负责人”获取
5、状态:由项目成员反馈输入项目,可选项:等待、进行中、完成。
6、“实际开始时间”:自动根据《工作/数据流程图》中“实际开始时间”获取,为空值时***自动取某个工作步骤的前一步骤的反馈“完成”状态的时间。
7、“实际结束时间”:由项目成员反馈,空白时***自动取用户在某个工作步骤信息更新时,反馈“完成”状态的时间。
8、“通知提示信息”:设计方法为由项目成员反馈,***自动判断《流程控制参数表》中“通知提示信息”内容为非空时,例如输入内容为字符“123”,则“信息反馈”界面下的“反馈信息”自动置为必输,否时项目成员在更新状态时出现弹出错误提示“请反馈:XXX”。
从上述描述可知,本发明具体应用实例提供的软件项目研发进程确定方法,具有以下有益效果:
一、可自动化地进行项目批量计划的发布和过程管理,可视化的项目维度的应用间作业/数据流程图,项目成员之间对工作文档、批量计划日程等信息及时同步、共享、迭代更新。解决当前项目研发测试中沟通成本大,低效的问题。
二、提供应用间数据传输的中间结果落地检查功能,测试问题实时诊断,提升测试质量和效率。
三、记录项目测试中各应用作业组、作业的开始和完成时间用于后续的性能评估;记录各应用的测试工作步骤梳理和实施等信息作为重要的测试资产积累。
基于同一发明构思,本申请实施例还提供了软件项目研发进程确定装置,可以用于实现上述实施例所描述的方法,如下面的实施例。由于软件项目研发进程确定装置解决问题的原理与软件项目研发进程确定方法相似,因此软件项目研发进程确定装置的实施可以参见软件项目研发进程确定方法实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的***较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
本发明的实施例提供一种能够实现软件项目研发进程确定方法的软件项目研发进程确定装置的具体实施方式,参见图7,软件项目研发进程确定装置具体包括如下内容:
映射建立单元10,用于建立目标软件的程序文件与所述程序文件对应的业务场景以及业务节点的映射;
节点获取单元20,用于根据所述映射获取所述程序文件中的每个代码文件对应的所述业务场景以及业务节点;
进程确定单元30,用于根据所述业务场景以及所述业务节点确定所述目标软件研发进程。
一实施例中,参见图8,所述节点获取单元20包括:
程序路径获取模块201,用于获取所述程序文件的程序路径以及当前修改的程序列表;
合集获取模块202,用于根据所述程序路径以及所述程序列表获取当前修改的程序文件的代码文件合集;
节点获取模块203,用于根据所述映射获取所述代码文件合集中的每个代码文件对应的所述业务场景以及业务节点。
一实施例中,参见图9,所述进程确定单元30包括:
流程图生成模块301,用于根据所述业务场景生成场景流程图;
节点标注模块302,用于在所述场景流程图中标注当前修改的所述业务节点。
一实施例中,软件项目研发进程确定装置还包括:
路径确定单元,用于根据当前用户的cookie确定所述序文件的程序路径;以及
权限判断单元,用于根据所述当前用户的cookie判断当前用户的权限。
一实施例中,流程图生成模块进一步包括:
粒度结果生成模块,用于按照粒度拆分软件项目研发进程以及根据所述业务场景,以生成进程粒度结果;
流程图生成模块,用于根据所述进程粒度结果生成所述场景流程图。
一实施例中,流程图生成模块进一步包括:参数表生成模块,用于根据所述进程粒度结果生成设计参数表,所述参数表支持应用、作业组、作业、以及其他四种粒度级别;以及所述参数表内容包括:应用名、节点名称、节点类型、节点描述、前直接点、工作步骤、要求、负责人、工作时间、后续执行节点;
流程图生成第一子模块,用于根据所述参数表中所对应的软件项目研发进程节点生成所述场景流程图。
一实施例中,流程图生成子模块进一步包括:
工作步骤确定模块,用于根据粒度级别拆分所述参数表,以确定最小粒度级别中的工作步骤;
流程图生成第二子模块,用于根据所述工作步骤生成所述场景流程图。
一实施例中,所述节点获取模块进一步包括:
集合查询模块,用于利用对接git工具查询所述程序路径中当前修改的代码文件合集;
遍业务节点获取模块,用于历所述代码文件合集,以获取所述业务场景以及业务节点。
从上述描述可知,本发明实施例提供的软件项目研发进程确定装置,首先建立目标软件的程序文件与所述程序文件对应的业务场景以及业务节点的映射;根据映射获取程序文件中的每个代码文件对应的业务场景以及业务节点;根据业务场景以及业务节点确定目标软件研发进程。可使各应用研发人员节省学习时间、可对中间结果及时检查,降低了重复跑批测试风险,测试质量提升、风险防控。形成测试资产,个别项目可以考虑与自动化测试工具结合,每个版本自动化执行批量测试工作。有效降低了研发测试人员沟通工作量。各应用间批量执行做到无缝衔接,缩短了批量测试时间形成了高效的沟通工作机制,有效降提高了测试效率,降低了反复测试风险。
上述实施例阐明的装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为电子设备,具体的,电子设备例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
在下面参考图10,其示出了适于用来实现本申请实施例的电子设备600的结构示意图。
如图10所示,电子设备600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM))603中的程序而执行各种适当的工作和处理。在RAM603中,还存储有***600操作所需的各种程序和数据。CPU601、ROM602、以及RAM603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡,调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装如存储部分608。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、商品或者设备中还存在另外的相同要素。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上该仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (7)
1.一种软件项目研发进程确定方法,其特征在于,包括:
建立目标软件的程序文件与所述程序文件对应的业务场景以及业务节点的映射;
根据所述映射获取所述程序文件中的每个代码文件对应的所述业务场景以及业务节点;
根据所述业务场景以及所述业务节点确定所述目标软件研发进程;
所述根据所述业务场景以及所述业务节点确定所述目标软件研发进程,包括:
根据所述业务场景生成场景流程图;
在所述场景流程图中标注当前修改的所述业务节点;
所述根据所述业务场景生成场景流程图包括:
按照粒度拆分软件项目研发进程以及根据所述业务场景,以生成进程粒度结果;
根据所述进程粒度结果生成所述场景流程图;
所述根据所述进程粒度结果生成所述场景流程图包括:
根据所述进程粒度结果生成设计参数表,所述参数表支持应用、作业组、作业、以及其他四种粒度级别;以及所述参数表内容包括:应用名、节点名称、节点类型、节点描述、前直接点、工作步骤、要求、负责人、工作时间、后续执行节点;
根据所述参数表中所对应的软件项目研发进程节点生成所述场景流程图;
所述根据所述参数表中所对应的软件项目研发进程节点生成所述场景流程图,包括:
根据粒度级别拆分所述参数表,以确定最小粒度级别中的工作步骤;
根据所述工作步骤生成所述场景流程图。
2.根据权利要求1所述的软件项目研发进程确定方法,其特征在于,所述根据所述映射获取所述程序文件中的每个代码文件对应的所述业务场景以及业务节点,包括:
获取所述程序文件的程序路径以及当前修改的程序列表;
根据所述程序路径以及所述程序列表获取当前修改的程序文件的代码文件合集;
根据所述映射获取所述代码文件合集中的每个代码文件对应的所述业务场景以及业务节点。
3.根据权利要求2所述的软件项目研发进程确定方法,其特征在于,还包括:
根据当前用户的cookie确定所述程序文件的程序路径;以及
根据所述当前用户的cookie判断当前用户的权限。
4.根据权利要求2所述的软件项目研发进程确定方法,其特征在于,所述根据所述映射获取所述代码文件合集中的每个代码文件对应的所述业务场景以及业务节点,包括:
利用对接git工具查询所述程序路径中当前修改的代码文件合集;
遍历所述代码文件合集,以获取所述业务场景以及业务节点。
5.一种软件项目研发进程确定装置,其特征在于,包括:
映射建立单元,用于建立目标软件的程序文件与所述程序文件对应的业务场景以及业务节点的映射;
节点获取单元,用于根据所述映射获取所述程序文件中的每个代码文件对应的所述业务场景以及业务节点;
进程确定单元,用于根据所述业务场景以及所述业务节点确定所述目标软件研发进程;
所述根据所述业务场景以及所述业务节点确定所述目标软件研发进程,包括:
根据所述业务场景生成场景流程图;
在所述场景流程图中标注当前修改的所述业务节点;
所述根据所述业务场景生成场景流程图包括:
按照粒度拆分软件项目研发进程以及根据所述业务场景,以生成进程粒度结果;
根据所述进程粒度结果生成所述场景流程图;
所述根据所述进程粒度结果生成所述场景流程图包括:
根据所述进程粒度结果生成设计参数表,所述参数表支持应用、作业组、作业、以及其他四种粒度级别;以及所述参数表内容包括:应用名、节点名称、节点类型、节点描述、前直接点、工作步骤、要求、负责人、工作时间、后续执行节点;
根据所述参数表中所对应的软件项目研发进程节点生成所述场景流程图;
所述根据所述参数表中所对应的软件项目研发进程节点生成所述场景流程图,包括:
根据粒度级别拆分所述参数表,以确定最小粒度级别中的工作步骤;
根据所述工作步骤生成所述场景流程图。
6.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至4任一项所述软件项目研发进程确定方法的步骤。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至4任一项所述软件项目研发进程确定方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110214708.7A CN112988576B (zh) | 2021-02-26 | 2021-02-26 | 一种软件项目研发进程确定方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110214708.7A CN112988576B (zh) | 2021-02-26 | 2021-02-26 | 一种软件项目研发进程确定方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112988576A CN112988576A (zh) | 2021-06-18 |
CN112988576B true CN112988576B (zh) | 2024-02-09 |
Family
ID=76350844
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110214708.7A Active CN112988576B (zh) | 2021-02-26 | 2021-02-26 | 一种软件项目研发进程确定方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112988576B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117827199A (zh) * | 2023-12-18 | 2024-04-05 | 深圳市腾进达信息技术有限公司 | 一种基于低代码开发平台ui界面操作的处理方法及*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109146251A (zh) * | 2018-07-24 | 2019-01-04 | 武汉空心科技有限公司 | 基于组件的开发方法和*** |
CN109634687A (zh) * | 2018-12-19 | 2019-04-16 | 恒为科技(上海)股份有限公司 | 一种嵌入式Linux***中应用软件的启动方法和装置 |
CN110580168A (zh) * | 2019-08-15 | 2019-12-17 | 贵阳朗玛信息技术股份有限公司 | 信息化资产管理***及其升级方法 |
-
2021
- 2021-02-26 CN CN202110214708.7A patent/CN112988576B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109146251A (zh) * | 2018-07-24 | 2019-01-04 | 武汉空心科技有限公司 | 基于组件的开发方法和*** |
CN109634687A (zh) * | 2018-12-19 | 2019-04-16 | 恒为科技(上海)股份有限公司 | 一种嵌入式Linux***中应用软件的启动方法和装置 |
CN110580168A (zh) * | 2019-08-15 | 2019-12-17 | 贵阳朗玛信息技术股份有限公司 | 信息化资产管理***及其升级方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112988576A (zh) | 2021-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11681685B1 (en) | System for uploading information into a metadata repository | |
CN110659018B (zh) | 一种流程引擎实现方法及装置 | |
CN111784108B (zh) | 一种主数据管理平台的建模方法和装置 | |
CN109840192B (zh) | 自动化测试的方法和装置 | |
CN105868956A (zh) | 一种数据处理方法及装置 | |
CN111125496A (zh) | 一种价格查询方法、装置及*** | |
CN111367530A (zh) | 基于自定义审核规则的代码审核方法、终端及服务器 | |
CN110851355B (zh) | 前端工程的实施方法及装置、存储介质、电子设备 | |
CN115526578A (zh) | 生成项目流的方法、装置、电子设备及存储介质 | |
CN112988576B (zh) | 一种软件项目研发进程确定方法及装置 | |
CN115099791A (zh) | 一种基于区块链的智能合约交付平台及其操作方法 | |
CN109992496A (zh) | 一种用于自动化测试的数据处理方法和装置 | |
CN116737535A (zh) | 接口测试方法、装置、计算机设备和存储介质 | |
CN105955718B (zh) | 一种软件定制方法及*** | |
CN115222363A (zh) | 可视化流程编排方法、可读存储介质及计算机设备 | |
CN112416791B (zh) | 一种测试对象的缺陷信息处理***和方法 | |
US20180060787A1 (en) | Information processing method, information processing device and client terminal | |
CN113126864A (zh) | 一种审批流程可视化配置方法及装置 | |
US20200097870A1 (en) | Work task commitment manager | |
CN111159988A (zh) | 一种模型处理方法、装置、计算机设备及存储介质 | |
CN113253991A (zh) | 任务可视化处理方法及装置、电子设备、存储介质 | |
CN115543969B (zh) | 一种数据迁移方法、装置、设备及介质 | |
CN106713442A (zh) | 一种多平台数据对接方法、装置及*** | |
CN114240343A (zh) | 工作流表单配置方法及*** | |
CN117649184A (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 |