CN109388376B - Software development risk assessment method, device, equipment and readable storage medium - Google Patents

Software development risk assessment method, device, equipment and readable storage medium Download PDF

Info

Publication number
CN109388376B
CN109388376B CN201811152629.2A CN201811152629A CN109388376B CN 109388376 B CN109388376 B CN 109388376B CN 201811152629 A CN201811152629 A CN 201811152629A CN 109388376 B CN109388376 B CN 109388376B
Authority
CN
China
Prior art keywords
software
response data
software development
target parameters
developer
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
Application number
CN201811152629.2A
Other languages
Chinese (zh)
Other versions
CN109388376A (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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201811152629.2A priority Critical patent/CN109388376B/en
Publication of CN109388376A publication Critical patent/CN109388376A/en
Application granted granted Critical
Publication of CN109388376B publication Critical patent/CN109388376B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • 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
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)

Abstract

A method, a device, equipment and a readable storage medium for evaluating the risk of software development are provided, wherein the method comprises the steps of acquiring all software version names; extracting a software version matched with the keyword in a memory when the keyword is received; when a test instruction is detected, a third party request module is utilized to execute a test script under the current software version and obtain response data; when a statistical instruction is detected, extracting basic data from the response data, and displaying the basic data in a visual interface in a report form; when a model building instruction is detected, extracting target parameters and developers corresponding to the target parameters from the response data; establishing a mathematical model to analyze project progress and working efficiency of each developer by utilizing the extraction date and the target parameters; and evaluating the delay risk according to the working efficiency and the project progress and outputting a risk prompt. According to the application, the risk assessment model is built through the working efficiency of the existing developer, so that the delay risk in the test development process is reduced.

Description

Software development risk assessment method, device, equipment and readable storage medium
Technical Field
The present application relates generally to the field of communications technologies, and in particular, to a method, an apparatus, a device, and a readable storage medium for evaluating risk of software development.
Background
With the continuous development of the software industry, newly developed software is more and more complex, and the more and more functions are provided, so that software testing is also more and more complex. Among various software development methods, quick development (i.e., a method of developing software by using an iterative and progressive method with the evolution of the user's demands as a core) is gradually popular with developers due to the characteristics of rapid iteration and rapid delivery. Testing is carried out before software release and after upgrading which are designed by adopting agile development, so that all functions can be ensured to normally run, and no error exists. Because the test workload is large, the test result is also required to be counted manually after the test is finished so as to confirm the software development progress of the software. Therefore, the statistics efficiency is low, and the data is easy to make mistakes, so that the progress of the software development cannot be accurately controlled. Meanwhile, risk management and control cannot be performed in the software development process, so that the software development progress is delayed and exceeds the period.
Disclosure of Invention
The application mainly aims to provide a software development risk assessment method, a device, equipment and a readable storage medium, which aim to solve the problem of low test efficiency in the prior art.
In order to achieve the above object, the present application provides a software development risk assessment method, comprising the steps of:
acquiring all software version names;
extracting the software version matched with the keyword from all software version names when the keyword is received;
when a test instruction is detected, executing a test script under the matched software version by using a third party request module and acquiring response data;
when a statistical instruction is detected, extracting basic data from the response data, and displaying the basic data in a visual interface in a report form;
when a model building instruction is detected, extracting target parameters and developers corresponding to the target parameters from response data;
establishing a mathematical model to analyze project progress and working efficiency of each developer by utilizing the extraction date and the target parameters;
and evaluating the delay risk according to the working efficiency and the project progress and outputting a risk prompt.
Preferably, the step of extracting the target parameter from the response data comprises:
request method and parameters for setting target parameters;
determining the index position and key word of the target parameter in the response data according to the request method and the parameter;
and counting the number of the target parameters.
Preferably, the step of establishing a mathematical model using the extraction date and the target parameter to analyze the progress of the project and the work efficiency of each developer includes:
acquiring the number of target parameters corresponding to the developer;
counting the extraction date and the number of the obtained target parameters to establish a personal working efficiency model so as to output the working efficiency of each developer;
and establishing a project progress model according to the number of the target parameters so as to output the project progress.
Preferably, the step of evaluating the deferred risk and outputting a risk prompt according to the work efficiency and project progress comprises:
evaluating the consumption time required for solving the target parameters according to the working efficiency of each developer;
and giving a risk prompt according to the target time and the consumed time.
Preferably, the target parameter is a software defect.
Preferably, the third party request module is an open source code library written in python language that simulates the http request of a browser and obtains response data from within the server.
Preferably, the response data is stored in the memory in Json format.
In addition, in order to achieve the above object, the present application also proposes a software development risk assessment device, the software development risk assessment device comprising:
the acquisition module is used for acquiring all software version names; extracting software versions matched with the keywords from all software version names when the keywords are received;
the simulation module is used for executing the test script under the matched software version by utilizing the third party request module when the test instruction is detected and obtaining response data;
the statistics module is used for extracting basic data from the response data when the statistics instruction is detected, and displaying the basic data in a visual interface in a report form;
the model building module is used for extracting target parameters and developers corresponding to the target parameters from the response data when a model building instruction is detected;
the model building module is used for further building a mathematical model analysis project progress and the working efficiency of each developer by utilizing the extraction date and the target parameters;
and the analysis module is used for evaluating the delay risk according to the working efficiency and the project progress and outputting a risk prompt.
In order to achieve the above object, the present application also proposes an apparatus comprising a processor and a memory, the processor implementing the following steps when executing a computer program stored in the memory:
acquiring all software version names;
extracting the software version matched with the keyword from all software version names when the keyword is received;
when a test instruction is detected, executing a test script under the matched software version by using a third party request module and acquiring response data;
when a statistical instruction is detected, extracting basic data from the response data, and displaying the basic data in a visual interface in a report form;
when a model building instruction is detected, extracting target parameters and developers corresponding to the target parameters from response data;
establishing a mathematical model to analyze project progress and working efficiency of each developer by utilizing the extraction date and the target parameters;
and evaluating the delay risk according to the working efficiency and the project progress and outputting a risk prompt.
In addition, in order to achieve the above object, the present application also proposes a readable storage medium storing at least one instruction, which when executed by a processor, implements the steps of:
acquiring all software version names;
extracting the software version matched with the keyword from all software version names when the keyword is received;
when a test instruction is detected, executing a test script under the matched software version by using a third party request module and acquiring response data;
when a statistical instruction is detected, extracting basic data from the response data, and displaying the basic data in a visual interface in a report form;
when a model building instruction is detected, extracting target parameters and developers corresponding to the target parameters from the response data;
establishing a mathematical model to analyze project progress and working efficiency of each developer by utilizing the extraction date and the target parameters;
and evaluating the delay risk according to the working efficiency and the project progress and outputting a risk prompt.
Compared with the prior art, the user can automatically count and analyze the software development progress, so that the statistics precision of the software development progress can be improved, meanwhile, a risk assessment model is built according to the past working efficiency of developers, so that the delay risk in the test development process is reduced, a risk prompt is given out on a visual interface, the software development progress can be accurately managed and controlled, and the delay risk of the software product development is reduced.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings that are required in the embodiments or the description of the prior art will be briefly described below, and it is apparent that the drawings in the following description are only embodiments of the present application, and that other drawings can be obtained according to the drawings provided without inventive effort for a person skilled in the art.
FIG. 1 is a schematic diagram of a hardware operating environment according to an embodiment of the present application.
FIG. 2 is a flow chart of a risk assessment method for software development according to the present application.
Fig. 3 is a schematic diagram of a refinement flow of step S14 in fig. 2.
Fig. 4 is a schematic diagram of a refinement flow of step S15 in fig. 2.
Fig. 5 is a schematic diagram of a refinement flow of step S16 in fig. 2.
FIG. 6 is a functional block diagram of a risk assessment device for software development according to the present application.
Fig. 7 is a schematic diagram of an internal structure of the apparatus according to an embodiment of the present application.
Description of the main reference signs
Software development risk assessment device 100
Acquisition Module 10
Simulation module 20
Statistics module 30
Model building module 40
Analysis module 50
Apparatus 1
Browser 101
Memory 103
Communication bus 104
Processor 105
Server 2
The application will be further described in the following detailed description in conjunction with the above-described figures.
Detailed Description
Technical aspects of embodiments of the present application will be clearly and fully described in the following description of the embodiments of the present application with reference to the accompanying drawings, in which it is apparent that the embodiments described are only some, but not all embodiments of the present application. All other embodiments, which can be made by those skilled in the art based on the embodiments of the present application without making any inventive effort, are intended to fall within the scope of the present application.
In order that the above-recited objects, features and advantages of the present application will become more readily apparent, a more particular description of the application will be rendered by reference to the appended drawings and appended detailed description.
In order that those skilled in the art will better understand the present application, a technical solution in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in which it is apparent that the described embodiments are only some embodiments of the present application, not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the present application without making any inventive effort, shall fall within the scope of the present application.
The terms first, second, third and the like in the description and in the claims of the application and in the above-described figures, are used for distinguishing between different objects and not for describing a particular sequential order. Furthermore, the term "include" and any variations thereof is intended to cover a non-exclusive inclusion. For example, a process, method, system, article, or apparatus that comprises a list of steps or modules is not limited to only those steps or modules but may include other steps or modules not expressly listed or inherent to such process, method, article, or apparatus.
Please refer to fig. 1, which is a schematic diagram illustrating a device structure of a hardware running environment of the software development risk assessment method of the present application.
In at least one embodiment of the present application, the software development risk assessment method is applied to a software development testing system formed by at least one device 1 and a server 2. The software development test system is used for providing a man-machine interaction interface for a tester through a visual page or a web page of the equipment 1, and the tester can be connected to the development test system through the equipment 1. The software development testing system is used for designing, developing, testing and publishing different software items.
The at least one device 1 may be any device having a network connection function, such as a desktop computer, a tablet computer, a mobile phone, a personal digital assistant, a game console, an interactive web television, a smart wearable device, a navigation device, etc. The at least one device 1 has a visual interface. The visual interface includes an input field. The input field is used for inputting the key words by the user. The at least one device 1 has at least one browser 101 with a console and a memory 103. The browser 101 is configured to establish data communication between the at least one device 1 and the server 2, and obtain response data from the server 2 according to an http request of a user. The memory 103 may be a readable storage medium such as a non-volatile storage medium including flash memory, hard disk, multimedia card, SD memory, random Access Memory (RAM), static random access memory (ROM), magnetic disk, optical disk, etc. The memory 103 may be used to store response data, program codes, interface files, etc. In at least one embodiment of the present application, the memory 103 stores at least one piece of software. Each of the software may be shaped into a plurality of different versions under the editing of the developer. The software has a plurality of software requirements within the software. Further included within each of the software requirements may be a plurality of matters (memory).
The server 2 is in communication with the at least one device 1 via a network. The server 2 may be a single server or may be a server group composed of several functional servers.
Please refer to fig. 2, which is a flowchart illustrating a software development risk assessment method according to the present application. The order of the steps in the flowchart may be changed and some steps may be omitted according to various needs.
S10, acquiring all software version names.
And S11, extracting the software version matched with the key from all software version names when the key is received.
In at least one embodiment of the application the device 1 has a search box for entering keywords. The key is a specific field in the software version name, for example, when the user needs to test a specified version of the golden housekeeping software, a key "ELIS-SMP-ANDROID4.22.0" or the like can be input in the search box. In other embodiments, the keyword may be text, the keyword "Jin Guangu" may be input in the search box, and the like. The key may also be an identifier or the like for identifying the software version.
And S12, when the test instruction is detected, executing the test script under the matched software version by using a third party request module and acquiring response data.
In at least one embodiment of the present application, the test instructions are used to test whether the software requirement is that a software bug (bug) be present. The test instruction may be a data request instruction received through an input device. The input device may include a keyboard input, a touch screen input, etc., but the user input manner in the example embodiments of the present disclosure is not limited thereto. The test instructions may be generated by specific operations on a graphical user interface for a user. Specifically, the user's operations include, but are not limited to: sliding operation, clicking operation (e.g., single click operation, double click operation, etc.). Specifically, the preset key may be an entity key on the device, or may be a virtual key on the device (for example, the virtual key may be a virtual icon on a display of the device, etc.), which is not limited herein.
In at least one embodiment of the present application, the third party request module is an open source code library written in python language, which simulates the http request of the browser and obtains the response data from the server 2. The response data is stored in the memory 103 in Json format.
And S13, extracting basic data from the response data when the statistical instruction is detected, and displaying the basic data in a report form in the visual interface.
In at least one embodiment of the application, the report includes the name, version, test time and basic data of the software. The basic data comprises a total number of requirements, a total number of Story, a total number of to-be-product experience Story, a total number of proposed Story to smoking, a total number of in-test Story and a total number of test completion Story. The basic data is calculated by a clustering algorithm from the response data.
S14, when a model building instruction is detected, extracting target parameters and developers corresponding to the target parameters from the response data.
Referring to fig. 3, specifically, the step S14 of extracting the target parameter from the response data may include:
s141, setting a request method and parameters of target parameters;
s142, determining the index position and the key word of the target parameter in the response data according to the request method and the parameter;
s143, counting the number of target parameters.
In at least one embodiment of the present application, the target parameter is a software bug (bug).
S15, establishing a mathematical model to analyze project progress and working efficiency of each developer by using the extraction date and the target parameters.
Referring to fig. 4, specifically, the step S15 of establishing a mathematical model using the extraction date and the target parameters to analyze the progress of the project and the work efficiency of each developer may include:
s151, acquiring the number of target parameters corresponding to the developer;
s152, counting the extraction date and the number of the obtained target parameters to establish a personal working efficiency model so as to output the working efficiency of each developer;
and S153, establishing a project progress model according to the number of the target parameters so as to output project progress.
In at least one embodiment of the application, the developer's work efficiency is based on the number of developer's daily resolution of the software bug under the software version. For example, when developer a solves 30 software bugs (bugs) generated by the software requirement B in 3 days during the software development process, the current working efficiency of developer a is 10/day.
In at least one embodiment of the present application, the personal work efficiency model and the project progress model are statistical models, requiring no training. The personal work efficiency model may include a software bug (bug) versus time curve, a solution software bug (bug) versus time curve, and so on.
S16, estimating delay risks according to the working efficiency and the project progress, and outputting risk prompts.
In at least one embodiment of the present application, the risk prompt may be a visual page. In other embodiments, the risk prompt may also be in the form of a pop-up window, or may be in the form of a mail reminder.
Referring to fig. 5, specifically, the step S16 of evaluating the delay risk according to the working efficiency and the item advance degree and outputting a risk prompt may include:
s161, evaluating the consumption time required for solving the target parameters according to the working efficiency of each developer;
and S162, giving a risk prompt according to the target time and the consumed time.
According to the embodiment, a user can automatically count and analyze the software development progress, so that the statistical precision of the software development progress can be improved, meanwhile, project delay risks are estimated according to the working efficiency of developers, risk prompts are given out on a visual interface, the software development progress can be accurately managed and controlled, and the development delay risks of software products are reduced.
Referring to fig. 6, the present application provides a software development risk assessment apparatus 100, in a first embodiment of the present application, the software development risk assessment apparatus 100 includes:
and the acquisition module 10 is used for acquiring all the software version names and extracting the software version matched with the key word from all the software version names when the key word is received.
In at least one embodiment of the present application, the software development risk assessment apparatus 100 has a search box for inputting keywords. The key is a specific field in the software version name, for example, when the user needs to test a specific version of the golden housekeeping software, the key "ELIS-SMP-ANDROID4.22.0" can be input in the search box. In other embodiments, the keyword may be text, the keyword "Jin Guangu" may be input into the search box, and the like. The key may also be an identifier or the like for identifying the software version.
The simulation module 20 is configured to execute the test script and obtain the response data under the matched software version by using the third party request module when the test instruction is detected.
In at least one embodiment of the present application, the test instructions are used to test whether the software requirement is that a software bug (bug) be present. The test instruction may be a data request instruction received through an input device. The input device may include a keyboard input, a touch screen input, etc., but the user input manner in the example embodiments of the present disclosure is not limited thereto. The test instructions may be generated by specific operations on a graphical user interface for a user. Specifically, the user's operations include, but are not limited to: sliding operation, clicking operation (e.g., single click operation, double click operation, etc.). Specifically, the preset key may be an entity key on the device, or may be a virtual key on the device (for example, the virtual key may be a virtual icon on a display of the device, etc.), which is not limited herein.
In at least one embodiment of the present application, the third party request module is an open source code library written in python language, which simulates the http request of the browser and obtains the response data from the server 2. The response data is stored in the memory 103 in Json format.
And the statistics module 30 is used for extracting basic data from the response data when the statistics instruction is detected, and displaying the basic data in a report form in the visual interface.
In at least one embodiment of the application, the report includes the name, version, test time and basic data of the software. The basic data comprises a total number of requirements, a total number of Story, a total number of to-be-product experience Story, a total number of proposed Story to smoking, a total number of in-test Story and a total number of test completion Story. The basic data is calculated by a clustering algorithm from the response data.
The model building module 40 is configured to extract the target parameter and the developer corresponding to the target parameter from the response data when the model building instruction is detected.
In at least one embodiment of the present application, the target parameter is a software bug (bug).
The model building module 40 further sets the request method and parameters of the target parameters.
The modeling module 40 further determines the index location and key of the target parameter within the response data based on the request method and parameters.
The modeling module 40 further counts the number of target parameters.
The analysis module 50 is configured to establish a mathematical model using the extraction date and the target parameters to analyze the progress of the project and the work efficiency of each developer.
The analysis module 50 further obtains the number of developer's corresponding target parameters.
The analysis module 50 further calculates the extraction date and the number of the obtained target parameters to build a personal work efficiency model to output the work efficiency of each developer.
The analysis module 50 further establishes a project progress model based on the number of target parameters to output a project progress.
In at least one embodiment of the application, the developer's work efficiency is based on the number of developer's daily resolution of the software bug under the software version. For example, when developer a solves 30 software bugs (bugs) generated by the software requirement B in 3 days during the software development process, the current working efficiency of developer a is 10/day.
In at least one embodiment of the present application, the personal work efficiency model and the project progress model are statistical models, requiring no training. The personal work efficiency model may include a software bug (bug) versus time curve, a solution software bug (bug) versus time curve, and so on.
The analysis module 50 further evaluates the delay risk based on the work efficiency and the project progress and outputs a risk prompt. In at least one embodiment of the present application, the risk prompt may be a visual page. In other embodiments, the risk prompt may also be in the form of a pop-up window, or may be in the form of a mail reminder.
Analysis module 50 further evaluates the elapsed time required to solve the target parameters based on the work efficiency of each of the developers.
The analysis module 50 further gives a risk indication based on the target time and the elapsed time.
According to the embodiment, a user can automatically count and analyze the software development progress, so that the statistical precision of the software development progress can be improved, meanwhile, project delay risks are estimated according to the working efficiency of developers, risk prompts are given out on a visual interface, the software development progress can be accurately managed and controlled, and the development delay risks of software products are reduced.
Please refer to fig. 7, which illustrates a readable storage medium according to an embodiment of the present application. The readable storage medium has stored thereon computer instructions. The computer instructions may be stored on the memory 103 and when executed by the one or more processors 105 implement the software development risk assessment method as described in the method embodiments above.
The memory 103 may be in data communication with the processor 105 via the communication bus 104. The memory 103 may include an operating system, a network communication module, and a software development risk assessment program. The operating system is a program that manages and controls the hardware and software resources of the software development risk assessment device, supporting the execution of the software development risk assessment program and other software and/or programs. The network communication module is used for realizing communication among all components in the memory 103 and communication among other hardware and software in the software development risk assessment device.
The processor 105 may include one or more microprocessors, digital processors. The processor 105 may call program code stored in the memory 103 to perform the relevant functions. For example, the various modules depicted in FIG. 6 are program code stored in the memory 103 and executed by the processor 105 to implement a software development risk assessment class method. The processor 105 is also called a central processing Unit (CPU, central Processing Unit), which is a very large scale integrated circuit (asic), and is an operation Core (Core) and a Control Unit (Control Unit).
The processor 105 is configured to execute a plurality of computer instructions stored in the memory 103 to implement a software development risk assessment method, and the processor 105 is configured to execute a plurality of instructions to implement the steps of:
s10, acquiring all software version names.
And S11, extracting the software version matched with the key word from all software version names when the key word is received.
In at least one embodiment of the present application, the keyword is a specific field in the software version name, for example, when the user needs to test a specific version of the golden manager software, the keyword "ELIS-SMP-ANDROID4.22.0" may be input in the search box. In other embodiments, the keyword may be text, the keyword "Jin Guangu" may be input into the search box, and the like. The key may also be an identifier or the like for identifying the software version.
And S12, when the test instruction is detected, executing the test script under the matched software version by using a third party request module and acquiring response data.
In at least one embodiment of the present application, the test instructions are used to test whether the software requirement is that a software bug (bug) be present. The test instruction may be a data request instruction received through an input device. The input device may include a keyboard input, a touch screen input, etc., but the user input manner in the example embodiments of the present disclosure is not limited thereto. The test instructions may be generated by specific operations on a graphical user interface for a user. Specifically, the user's operations include, but are not limited to: sliding operation, clicking operation (e.g., single click operation, double click operation, etc.). Specifically, the preset key may be an entity key on the device, or may be a virtual key on the device (for example, the virtual key may be a virtual icon on a display of the device, etc.), which is not limited herein.
In at least one embodiment of the present application, the third party request module is an open source code library written in python language, which simulates the http request of the browser and obtains the response data from the server 2. The response data is stored in the memory 103 in Json format.
And S13, extracting basic data from the response data when the statistical instruction is detected, and displaying the basic data in a report form in the visual interface.
In at least one embodiment of the application, the report includes the name, version, test time and basic data of the software. The basic data comprises a total number of requirements, a total number of Story, a total number of to-be-product experience Story, a total number of proposed Story to smoking, a total number of in-test Story and a total number of test completion Story. The basic data is calculated by a clustering algorithm from the response data.
S14, when a model building instruction is detected, extracting target parameters and developers corresponding to the target parameters from the response data.
Referring to fig. 3, specifically, the step S14 of extracting the target parameter from the response data may include:
s141, setting a request method and parameters of target parameters;
s142, determining the index position and the key word of the target parameter in the response data according to the request method and the parameter;
s143, counting the number of target parameters.
In at least one embodiment of the present application, the target parameter is a software bug (bug).
S15, establishing a mathematical model to analyze project progress and working efficiency of each developer by using the extraction date and the target parameters.
Referring to fig. 4, specifically, the step S15 of establishing a mathematical model using the extraction date and the target parameters to analyze the progress of the project and the work efficiency of each developer may include:
s151, acquiring the number of target parameters corresponding to the developer;
s152, counting the acquisition date and the number of the acquired target parameters to establish a personal working efficiency model so as to output the working efficiency of each developer;
s153, establishing a project progress model according to the number of the target parameters so as to output project progress;
in at least one embodiment of the application, the developer's work efficiency is based on the number of developer's daily resolution of the software bug under the software version. For example, when developer a solves 30 software bugs (bugs) generated by the software requirement B in 3 days during the software development process, the current working efficiency of developer a is 10/day.
In at least one embodiment of the present application, the personal work efficiency model and the project progress model are statistical models, requiring no training. The personal work efficiency model may include a software bug (bug) versus time curve, a solution software bug (bug) versus time curve, and so on.
S16, estimating delay risks according to the working efficiency and the project progress, and outputting risk prompts.
Referring to fig. 5, specifically, the step S16 of evaluating the delay risk according to the working efficiency and the item advance degree and outputting a risk prompt may include:
s161, evaluating the consumption time required for solving the target parameters according to the working efficiency of each developer.
And S162, giving a risk prompt according to the target time and the consumed time.
In at least one embodiment of the present application, the risk prompt may be a visual page. In other embodiments, the risk prompt may also be in the form of a pop-up window, or may be in the form of a mail reminder.
According to the embodiment, a user can automatically count and analyze the software development progress, so that the statistical precision of the software development progress can be improved, meanwhile, project delay risks are estimated according to the working efficiency of developers, risk prompts are given out on a visual interface, the software development progress can be accurately managed and controlled, and the development delay risks of software products are reduced.
It should be noted that, for simplicity of description, the foregoing method embodiments are all expressed as a series of action combinations, but it should be understood by those skilled in the art that the present application is not limited by the order of action described, as some steps may be performed in other order or simultaneously in accordance with the present application. Further, those skilled in the art will also appreciate that the embodiments described in the specification are all preferred embodiments, and that the acts and modules referred to are not necessarily required for the present application.
In the several embodiments provided by the present application, it should be understood that the disclosed apparatus may be implemented in other manners. For example, the apparatus embodiments described above are merely illustrative, such as the division of the modules, merely a logical function division, and there may be additional manners of dividing actual implementations, such as multiple modules or components may be combined or integrated into another system, or some features may be omitted, or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or modules, which may be in electrical or other forms.
The modules described as separate components may or may not be physically separate, and components shown as modules may or may not be physical modules, i.e., may be located in one place, or may be distributed over a plurality of network modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the embodiment.
In addition, each functional module in the embodiments of the present application may be integrated in one processor, or each module may exist alone physically, or two or more modules may be integrated in one module. The integrated modules may be implemented in hardware or in software functional modules.
The integrated modules, if implemented in the form of software functional modules and sold or used as a stand-alone product, may be stored in a readable storage medium. Based on such insight, the technical solution of the present application, or a part contributing to the prior art or all or part of the technical solution, may be embodied in the form of a software product stored in a storage medium comprising several instructions for causing a computer device (which may be a personal computer, a server or a network device, etc.) to perform all or part of the steps of the method according to the embodiments of the present application.
It should also be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
The above embodiments are only for illustrating the technical solution of the present application, and not for limiting the same; although the application has been described in detail with reference to the foregoing embodiments, it will be understood by those skilled in the art that: the technical scheme described in the foregoing embodiments can be modified or some technical features thereof can be replaced by equivalents; such modifications and substitutions do not depart from the spirit of the application.

Claims (10)

1. A method for evaluating risk of software development, the method comprising:
acquiring all software version names;
extracting the software version matched with the keyword from all software version names when the keyword is received;
when a test instruction is detected, executing a test script under the matched software version by using a third party request module and acquiring response data;
when a statistical instruction is detected, extracting basic data from the response data, and displaying the basic data in a visual interface in a report form;
when a model building instruction is detected, extracting a target parameter and a developer corresponding to the target parameter from the response data;
establishing a mathematical model to analyze project progress and working efficiency of each developer by using the extraction date and the target parameters;
and evaluating delay risks according to the working efficiency and the project progress and outputting risk prompts.
2. The software development risk assessment method according to claim 1, wherein: the extracting the target parameter from the response data includes:
a request method and parameters for setting the target parameters;
determining an index position and a keyword of the target parameter in the response data according to the request method and the parameter;
and counting the number of the target parameters.
3. The software development risk assessment method according to claim 1, wherein: the step of establishing a mathematical model to analyze project progress and work efficiency of each developer by utilizing the extraction date and the target parameter comprises the following steps:
acquiring the number of the developer corresponding to the target parameters;
counting the acquisition date and the number of the acquired target parameters to establish a personal working efficiency model so as to output the working efficiency of each developer;
and establishing a project progress model according to the number of the target parameters so as to output project progress.
4. The software development risk assessment method according to claim 1, wherein: the step of evaluating the deferred risk and outputting a risk prompt according to the work efficiency and the project progress further comprises:
evaluating the consumption time required for solving the target parameters according to the working efficiency of each developer;
and giving a risk prompt according to the target time and the consumed time.
5. The software development risk assessment method according to claim 1, wherein: the target parameter is a software defect.
6. The software development risk assessment method according to claim 1, wherein: the third party request module is an open source code library written in the python language, and can simulate the http request of a browser and acquire the response data from the server.
7. The software development risk assessment method according to claim 1, wherein: the response data is stored in a memory in Json format.
8. A software development risk assessment device, characterized in that the software development risk assessment device comprises:
the system comprises an acquisition module, a keyword extraction module and a keyword extraction module, wherein the acquisition module is used for acquiring all software version names and extracting software versions matched with the keywords from all software version names when the keywords are received;
the simulation module is used for executing the test script under the matched software version by utilizing the third party request module when the test instruction is detected and obtaining response data;
the statistics module is used for extracting basic data from the response data when a statistics instruction is detected, and displaying the basic data in a visual interface in a report form;
the model building module is used for extracting target parameters and developers corresponding to the target parameters from the response data when a model building instruction is detected;
the model building module is used for further building a mathematical model analysis project progress and the working efficiency of each developer by utilizing the number of the target parameters of the extraction date;
and the analysis module is used for evaluating the delay risk according to the working efficiency and the project progress and outputting a risk prompt.
9. An apparatus comprising a processor and a memory, wherein the processor is configured to implement the software development risk assessment method according to any one of claims 1 to 7 when executing a computer program stored in the memory.
10. A readable storage medium storing at least one instruction that when executed by a processor implements the software development risk assessment method of any one of claims 1 to 7.
CN201811152629.2A 2018-09-29 2018-09-29 Software development risk assessment method, device, equipment and readable storage medium Active CN109388376B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811152629.2A CN109388376B (en) 2018-09-29 2018-09-29 Software development risk assessment method, device, equipment and readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811152629.2A CN109388376B (en) 2018-09-29 2018-09-29 Software development risk assessment method, device, equipment and readable storage medium

Publications (2)

Publication Number Publication Date
CN109388376A CN109388376A (en) 2019-02-26
CN109388376B true CN109388376B (en) 2023-08-11

Family

ID=65419069

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811152629.2A Active CN109388376B (en) 2018-09-29 2018-09-29 Software development risk assessment method, device, equipment and readable storage medium

Country Status (1)

Country Link
CN (1) CN109388376B (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110647345B (en) * 2019-08-30 2022-10-14 中国人民财产保险股份有限公司 Index measuring and calculating method and system for application development
CN110750299A (en) * 2019-09-25 2020-02-04 恒大智慧科技有限公司 Intelligent software quality tracking system, method and storage medium
CN111475137A (en) * 2020-04-17 2020-07-31 中国铁建重工集团股份有限公司 Method, system and equipment for predicting software development requirements
CN111695831B (en) * 2020-06-18 2024-05-28 中国信息安全测评中心 Open source code use risk assessment method and device and electronic equipment
CN112508228A (en) * 2020-11-03 2021-03-16 北京理工大学前沿技术研究院 Driving behavior risk prediction method and system
CN113010155A (en) * 2021-02-26 2021-06-22 英业达科技有限公司 Road spectrum data display and risk assessment method and electronic terminal
CN116383026B (en) * 2023-06-05 2023-09-01 阿里巴巴(中国)有限公司 Data processing method and server based on large model

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005055993A (en) * 2003-08-07 2005-03-03 Hitachi Ltd Project managing system
CN101719095A (en) * 2009-12-30 2010-06-02 北京世纪高通科技有限公司 Method and device for managing regression testing
CN102592195A (en) * 2011-12-28 2012-07-18 Tcl集团股份有限公司 Project control system and method based on development of products
CN102693183A (en) * 2012-05-30 2012-09-26 瑞斯康达科技发展股份有限公司 Method and system for realizing automatic software testing
CN104424095A (en) * 2013-08-26 2015-03-18 卓望数码技术(深圳)有限公司 Automatic testing method and system of mobile terminal
CN107679818A (en) * 2017-05-10 2018-02-09 平安科技(深圳)有限公司 Software project management method, terminal and computer-readable recording medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005055993A (en) * 2003-08-07 2005-03-03 Hitachi Ltd Project managing system
CN101719095A (en) * 2009-12-30 2010-06-02 北京世纪高通科技有限公司 Method and device for managing regression testing
CN102592195A (en) * 2011-12-28 2012-07-18 Tcl集团股份有限公司 Project control system and method based on development of products
CN102693183A (en) * 2012-05-30 2012-09-26 瑞斯康达科技发展股份有限公司 Method and system for realizing automatic software testing
CN104424095A (en) * 2013-08-26 2015-03-18 卓望数码技术(深圳)有限公司 Automatic testing method and system of mobile terminal
CN107679818A (en) * 2017-05-10 2018-02-09 平安科技(深圳)有限公司 Software project management method, terminal and computer-readable recording medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于风险驱动的Scrum方法改进研究;严振亚;《电子设计工程》;第24卷(第13期);152-154 *

Also Published As

Publication number Publication date
CN109388376A (en) 2019-02-26

Similar Documents

Publication Publication Date Title
CN109388376B (en) Software development risk assessment method, device, equipment and readable storage medium
WO2019196274A1 (en) Web page testing method and apparatus, electronic device, and medium
US8549478B2 (en) Graphical user interface input element identification
EP2572294B1 (en) System and method for sql performance assurance services
CN108459964B (en) Test case selection method, device, equipment and computer readable storage medium
CN107193743B (en) Application evaluation method and device, computer equipment and storage medium
EP3874372A1 (en) Automatically performing and evaluating pilot testing of software
US20130055117A1 (en) User interface validation assistant
CN113076104A (en) Page generation method, device, equipment and storage medium
US20180203684A1 (en) Staged application rollout
US10537801B2 (en) System and method for decision making in strategic environments
CN109840192B (en) Method and device for automatic testing
US20190034319A1 (en) Rendering engine component abstraction system
CN112749081A (en) User interface testing method and related device
CN112463154A (en) Page generation method, device and system and electronic equipment
CN113449877A (en) Method and system for displaying machine learning modeling process
CN113076416A (en) Information heat evaluation method and device and electronic equipment
US10423615B2 (en) Generating multilingual queries
CN114282686A (en) Method and system for constructing machine learning modeling process
JP2017522639A5 (en)
CN117112594A (en) Method, device, equipment and storage medium for checking right system standard-reaching operation
US10678557B2 (en) Generating a predicted profile for target code based on a profile of sampled code
CN111666201A (en) Regression testing method, device, medium and electronic equipment
CN115509602A (en) Project management method, device, equipment and storage medium
CN113485689A (en) Buried point processing method and device

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