CN112783762B - Software quality assessment method, device and server - Google Patents

Software quality assessment method, device and server Download PDF

Info

Publication number
CN112783762B
CN112783762B CN202011643464.6A CN202011643464A CN112783762B CN 112783762 B CN112783762 B CN 112783762B CN 202011643464 A CN202011643464 A CN 202011643464A CN 112783762 B CN112783762 B CN 112783762B
Authority
CN
China
Prior art keywords
data
defect
analysis
software
algorithm
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
CN202011643464.6A
Other languages
Chinese (zh)
Other versions
CN112783762A (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.)
Zhongdian Jinxin Software Co Ltd
Original Assignee
Zhongdian Jinxin Software 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 Zhongdian Jinxin Software Co Ltd filed Critical Zhongdian Jinxin Software Co Ltd
Priority to CN202011643464.6A priority Critical patent/CN112783762B/en
Publication of CN112783762A publication Critical patent/CN112783762A/en
Application granted granted Critical
Publication of CN112783762B publication Critical patent/CN112783762B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/3692Test management for test results analysis
    • 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

Abstract

The invention provides a software quality assessment method, a device and a server, which relate to the technical field of Internet and comprise the following steps: basic defect data of the software to be evaluated are obtained; determining a target analysis algorithm from a plurality of preset data analysis algorithms, and performing defect analysis on the basic defect data through the target analysis algorithm to obtain defect analysis data corresponding to the basic defect data; and generating and displaying an evaluation result of the software to be evaluated based on the defect analysis data. The invention can effectively improve the credibility of the software quality evaluation result, thereby truly reflecting the quality of the software to be evaluated.

Description

Software quality assessment method, device and server
Technical Field
The present invention relates to the field of internet technologies, and in particular, to a method, an apparatus, and a server for evaluating software quality.
Background
With the increase of the degree of dependence of society on computers, software products are applied to various fields of society, and in order to ensure smooth completion of business, the quality requirements of users on the software products are gradually increased. The quality of a software product is critical to a software development company and typically requires software testing of the software product before it can be put into operation. Software developers are therefore increasingly paying attention to the software testing process, which has been 40% to 50% of the entire software development process. At present, the traditional software testing means comprise a functional test and a pressure test, so that the functions and the achieved performances of the software can be known, but the reliability of the testing results obtained by the two testing means is low, and the quality of the software product cannot be truly reflected.
Disclosure of Invention
Therefore, the present invention aims to provide a software quality evaluation method, apparatus and server, which can effectively improve the reliability of the software quality evaluation result, so as to truly reflect the quality of the software to be evaluated.
In a first aspect, an embodiment of the present invention provides a method for evaluating software quality, including: basic defect data of the software to be evaluated are obtained; determining a target analysis algorithm from a plurality of preset data analysis algorithms, and performing defect analysis on the basic defect data through the target analysis algorithm to obtain defect analysis data corresponding to the basic defect data; and generating and displaying an evaluation result of the software to be evaluated based on the defect analysis data.
In one embodiment, the method is applied to a software quality assessment platform configured with at least one data analysis algorithm; the step of determining a target analysis algorithm from a plurality of preset data analysis algorithms comprises the following steps: displaying each data analysis algorithm through an interactive interface of the software quality evaluation platform; responding to the selection operation of a user for each data analysis algorithm, and determining the data analysis algorithm corresponding to the selection operation as a target analysis algorithm; the data analysis algorithm at least comprises a Rayleigh distribution algorithm, a Goperz distribution algorithm and an exponential distribution algorithm.
In one embodiment, before the step of performing defect analysis on the basic defect data by using the target analysis algorithm to obtain defect analysis data corresponding to the basic defect data, the method further includes: responding to the parameter modification operation of a user aiming at the target analysis algorithm, and receiving the target parameters uploaded by the user; updating parameters of the target analysis algorithm based on the target parameters so as to perform defect analysis on the basic defect data by using the target analysis algorithm after updating the parameters.
In one embodiment, the basic defect data includes estimated defect data or test defect data, the estimated defect data is used for representing defects of the software to be evaluated in an estimated stage, and the test defect data is used for representing defects of the software to be evaluated in a test stage; after the step of obtaining the defect analysis data corresponding to the basic defect data, the method further includes: comparing the defect analysis data corresponding to the estimated defect data with the defect analysis data corresponding to the test defect data to obtain a comparison result; and adjusting parameters of the target analysis algorithm based on the comparison result to optimize the target analysis algorithm.
In one embodiment, the step of generating and displaying the evaluation result of the software to be evaluated based on the defect analysis data includes: drawing a defect analysis chart according to the defect analysis data, and generating an evaluation result of the software to be evaluated according to the defect analysis chart; and displaying the evaluation result of the software to be evaluated through the interactive interface.
In one embodiment, the method further comprises: the method further comprises the steps of: and sending the evaluation result to a specified associated terminal.
In a second aspect, an embodiment of the present invention further provides a device for evaluating software quality, including: the data acquisition module is used for acquiring basic defect data of the software to be evaluated; the analysis module is used for determining a target analysis algorithm from a plurality of preset data analysis algorithms, and performing defect analysis on the basic defect data through the target analysis algorithm to obtain defect analysis data corresponding to the basic defect data; and the display module is used for generating and displaying the evaluation result of the software to be evaluated based on the defect analysis data.
In one embodiment, the apparatus is applied to a software quality assessment platform configured with at least one data analysis algorithm; the analysis module is also configured to: displaying each data analysis algorithm through an interactive interface of the software quality evaluation platform; responding to the selection operation of a user for each data analysis algorithm, and determining the data analysis algorithm corresponding to the selection operation as a target analysis algorithm; the data analysis algorithm at least comprises a Rayleigh distribution algorithm, a Goperz distribution algorithm and an exponential distribution algorithm.
In a third aspect, an embodiment of the present invention further provides a server, including a processor and a memory; the memory has stored thereon a computer program which, when executed by the processor, performs the method according to any of the first aspects provided.
In a fourth aspect, embodiments of the present invention also provide a computer storage medium storing computer software instructions for use with any of the methods provided in the first aspect.
According to the method, the device and the server for evaluating the software quality, basic defect data of the software to be evaluated are firstly obtained, then the basic defect data are subjected to defect analysis through a target analysis algorithm to obtain defect analysis data, and then an evaluation result of the software to be evaluated is generated and displayed based on the defect analysis data. According to the method, the target analysis algorithm determined from the plurality of data analysis algorithms is utilized to conduct defect analysis on the basic defect data to obtain the corresponding evaluation result, and the evaluation result is displayed.
Additional features and advantages of the invention will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. The objectives and other advantages of the invention will be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.
In order to make the above objects, features and advantages of the present invention more comprehensible, preferred embodiments accompanied with figures are described in detail below.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings that are needed in the description of the embodiments or the prior art will be briefly described, and it is obvious that the drawings in the description below are some embodiments of the present invention, and other drawings can be obtained according to the drawings without inventive effort for a person skilled in the art.
FIG. 1 is a flow chart of a software quality evaluation method according to an embodiment of the present invention;
FIG. 2 is a schematic diagram of a functional hierarchical structure of a software quality assessment platform according to an embodiment of the present invention;
fig. 3 is a schematic structural diagram of a data layer according to an embodiment of the present invention;
FIG. 4 is a schematic structural diagram of an analysis model layer according to an embodiment of the present invention;
fig. 5 is a schematic structural diagram of an interactive display layer according to an embodiment of the present invention;
FIG. 6 is a schematic diagram of a functional framework of a software quality assessment platform according to an embodiment of the present invention;
FIG. 7 is a schematic diagram of a predicted evaluation result according to an embodiment of the present invention;
FIG. 8 is a schematic diagram of a test evaluation result according to an embodiment of the present invention;
FIG. 9 is a schematic diagram of a software quality assessment report according to an embodiment of the present invention;
FIG. 10 is a schematic diagram of a model parameter modification interface according to an embodiment of the present invention;
FIG. 11 is a schematic structural diagram of a software quality evaluation device according to an embodiment of the present invention;
fig. 12 is a schematic structural diagram of a server according to an embodiment of the present invention.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the embodiments of the present invention more apparent, the technical solutions of the present invention will be clearly and completely described in conjunction with the embodiments, and it is apparent that the described embodiments are some embodiments of the present invention, but not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
At present, research data show that code layer defects account for 92% of the overall defect frequency of software, application downtime caused by the code layer defects accounts for only 10%, and the rest 90% of the application downtime are caused by system layer defects. Software products are diverse, however, the implementation code of the software products is very complex. The traditional software testing means comprises a function test and a pressure test, the functions and the achieved performances of the software can be known, the two testing means can only find code layer defects, including imperfect functions or abnormal reactions under pressure, and the like, and the defects of a system layer which causes downtime of most applications are difficult to discriminate, so that the reliability of a finally obtained evaluation result is lower.
For the convenience of understanding the present embodiment, first, a method for evaluating software quality disclosed in the present embodiment will be described in detail, referring to a schematic flow chart of a method for evaluating software quality shown in fig. 1, the method mainly includes the following steps S102 to S106:
step S102, basic defect data of the software to be evaluated are obtained. The basic defect data may include predicted defect data or test defect data, where the predicted defect data is used to characterize defects of the software to be evaluated in a prediction stage, such as a target defect mining degree, a predicted construction period length, an estimated hidden defect number, a defect level, and a ratio of each defect level, and the test defect data is used to characterize defects of the software to be evaluated in a test stage, such as a target defect mining degree, a predicted construction period length, a selection model, a defect date, a defect description, a defect level, and the like. In one embodiment, the underlying defect data may be read from a designated database through a data interface, or may be uploaded manually by a user.
Step S104, determining a target analysis algorithm from a plurality of preset data analysis algorithms, and performing defect analysis on the basic defect data through the target analysis algorithm to obtain defect analysis data corresponding to the basic defect data. In one embodiment, the data analysis algorithm may at least include a Rayleigh (Rayleigh) distribution algorithm, a golattention (golattention) distribution algorithm, an Exponential (Exponential) distribution algorithm, and may further include a plurality of data analysis algorithms such as a cluster analysis algorithm, a time series algorithm, and the like, where one or more target analysis algorithms are selected from the data analysis algorithms to perform defect analysis on the basic defect data, so as to obtain corresponding defect analysis data.
And S106, generating and displaying an evaluation result of the software to be evaluated based on the defect analysis data. The evaluation result may be displayed in a chart report form, and in one embodiment, the defect analysis data may be rendered to obtain the evaluation result in the chart report form, and further display the evaluation result in the chart report form.
According to the software quality assessment method provided by the embodiment of the invention, the target analysis algorithm determined from the plurality of data analysis algorithms is utilized to conduct defect analysis on the estimated defect data or the test defect data, the assessment results of the software to be assessed in the estimated stage and the test stage can be obtained respectively, and the assessment results are displayed.
In an implementation manner, the method may be applied to a software quality assessment platform, in order to facilitate understanding of the software quality assessment platform, the embodiment of the present invention describes a functional hierarchical structure of the software quality assessment platform, referring to a schematic functional hierarchical structure of the software quality assessment platform shown in fig. 2, fig. 2 illustrates that the software quality assessment platform may include a data layer, an analysis model layer and an interactive display layer, where the data layer is responsible for data acquisition of basic defect data, the analysis model layer is used for performing defect analysis on the basic defect data through a target analysis algorithm, so as to implement functions of data cleaning, defect distribution exercise calculation, real-time defect modeling calculation, model management, and the like, and the interactive display layer is used for rendering defect analysis data and displaying an obtained evaluation result.
On the basis of fig. 2, the embodiment of the invention further provides a structure schematic diagram of a data layer shown in fig. 3, wherein the data layer shown in fig. 3 comprises a data uploading module, an Automatic Test (ATQ) data access module and a database connection module, the data uploading module is responsible for receiving and processing basic defect data uploaded by a user, the ATQ data access module is used for calling an ATQ interface, and the database connection module is used for connecting and disconnecting an independent or ATQ MySQL database.
On the basis of fig. 2, the embodiment of the present invention further provides a schematic structural diagram of an analysis model layer as shown in fig. 4, where fig. 4 illustrates that the analysis model layer includes a model layer and a drawing data layer, where the model layer is used to provide related APIs (Application Programming Interface, application program interfaces), PDF (Portable Document Format) interfaces including multiple data analysis algorithms (such as a rayleigh distribution algorithm, a goboz distribution algorithm, an exponential distribution algorithm, and the like), and CDF (computable document format) interfaces, and the drawing data layer is used to provide drawing data.
On the basis of fig. 2, the embodiment of the invention also provides a schematic structure of an interactive display layer as shown in fig. 5, and the interactive display layer comprises a chart data processing layer, a chart display layer, a document generation layer and an interactive layer shown in fig. 5. Wherein the chart data processing layer is used for performing simple processing (including defect grading processing, accumulated graph processing and distribution graph processing) on the defect analysis data so as to assist the front page elements (such as defect grading cake graph, accumulated graph and distribution graph) to obtain a proper data format; the chart display layer is used for rendering elements in the front-end page, calling the ECharts library to draw a chart, and calling the RShinydashboard library to generate a dashboards; the document generation layer is used for collecting the evaluation result into a report with a specified format and providing a report downloading function, and the document generation layer can comprise a Markdown tool and a pandio tool; the interaction layer is used for displaying the evaluation result or report and feeding back the operation on the evaluation result or report to the analysis model layer, and the interaction layer can comprise shiny reactive service.
Based on the foregoing embodiment, the software quality assessment platform provided in the embodiment of the present invention is configured with a data interface, where the data interface is used to connect the software quality assessment platform with a specified database (such as the MySQL database of the ATQ) in which basic defect data is stored. The data interface may be an ATQ interface, and the software quality evaluation platform is connected with the MySQL database of the ATQ through the ATQ interface, so as to obtain basic defect data from the MySQL database of the ATQ.
In one implementation, the software quality assessment platform provided by the embodiment of the present invention is configured with at least one data analysis algorithm, such as one or more of a rayleigh distribution algorithm, a goboz distribution algorithm, and an exponential distribution algorithm. In practical application, the target analysis algorithm can be automatically determined from each data analysis algorithm, or can be manually determined from each data analysis algorithm, specifically, each data analysis algorithm can be displayed through the front end, so that a user can conveniently select a required data analysis algorithm from the data analysis algorithms as the target analysis algorithm, and further defect analysis is performed on defect data sets of each category by using the target analysis algorithm. In an alternative implementation manner, each data analysis algorithm can be displayed through an interactive interface of the software quality evaluation platform, and the data analysis algorithm corresponding to the selection operation is determined as the target analysis algorithm in response to the selection operation of the user on each data analysis algorithm. For example, if the user selects a clustering algorithm, cluster analysis may be performed on the basic defect data to obtain a set composed of basic defect data of each type, and then any data analysis algorithm is selected from the rayleigh distribution algorithm, the goboz distribution algorithm, and the exponential distribution algorithm as a target analysis algorithm, and defect analysis is performed on the basic defect data of each type. Alternatively, the software quality assessment platform may be configured with a model area in which individual data analysis algorithms may be stored.
In order to further optimize the reliability of software analysis, before performing the step of performing defect analysis on the basic defect data through the target analysis algorithm to obtain defect analysis data corresponding to the basic defect data, the method can also respond to the parameter modification operation of the user for the target analysis algorithm, receive the target parameter uploaded by the user, update the parameter of the target analysis algorithm based on the target parameter, and perform defect analysis on the basic defect data through the target analysis algorithm after updating the parameter, thereby obtaining defect analysis data with higher reliability. For example, the user selects the Rayleigh distribution algorithm as the target analysis algorithm, the modifiable parameters of the Rayleigh distribution algorithm are displayed through the interactive interface of the software quality evaluation platform, and the user can modify the displayed modifiable parameters so that the Rayleigh distribution algorithm is more suitable for quality evaluation of the current software to be evaluated, and an evaluation result with higher reliability is obtained.
In one embodiment, after the step of obtaining the defect analysis data, the back end of the software quality assessment platform may further update parameters of the target analysis algorithm based on the defect analysis data, specifically, may compare the defect analysis data corresponding to the predicted defect data with the defect analysis data corresponding to the test defect data to obtain a comparison result, and then adjust the parameters of the target analysis algorithm based on the comparison result to optimize the target analysis algorithm, for example, when the difference between the defect analysis data corresponding to the predicted defect data and the defect analysis data corresponding to the test defect data is large, it may be determined that the parameters of the target analysis algorithm need to be optimized, and optionally, may use the gradient descent model to correct the parameters of the target analysis algorithm according to the defect analysis data.
In addition, when the software quality evaluation platform performs the step of generating and displaying the evaluation result of the software to be evaluated based on the defect analysis data, a defect analysis chart can be drawn according to the defect analysis data, the evaluation result of the software to be evaluated is generated according to the defect analysis chart, and then the evaluation result of the software to be evaluated is displayed through the interactive interface. In one embodiment, the software quality assessment platform may be further configured with an echorts library and an RShinydashboard library, such that by invoking the echorts library to draw a chart from the defect analysis data and invoking the RShinydashboard library to generate a layer visualization interactive interface based on the drawn icons, the interface will display the assessment results. In addition, the evaluation result can be sent to the appointed association terminal, so that a user can conveniently look up the evaluation result of the software to be evaluated through the appointed association terminal.
In order to facilitate understanding of the software quality assessment method provided in the foregoing embodiment, the embodiment of the present invention provides a functional framework schematic of a software quality assessment platform as shown in fig. 6, where the software quality assessment platform is illustrated in fig. 6 as including a data source, an ETL (Extract-Transform-Load) module, a quality model analysis module, a management center, and a front-end display module. The data source stores various data such as quality KPI (Key Performance Indicator, key performance index method), measurement data, project data, product data and the like, wherein the project data is the basic defect data; the ETL module is used for preprocessing such as synchronization, extraction, cleaning, conversion, loading and the like of data stored in the data source; the quality model analysis module comprises a quality assessment model (i.e. the foregoing target model combination), model combination optimization, clustering and other functions, in one embodiment, a model area of the software quality assessment platform is configured with a plurality of models such as a She Beisi model, a decision tree model, a random forest model, a time sequence model, an SVM (support vector machines, support vector machine) model, a CS model, a Boosting model, a survival analysis model, a logistic regression model, a gradient descent model, a KNN (K-Nearestneighbor) model, a regression prediction model and the like, the quality assessment model is a combination of the models, the quality assessment model is optimized as the model combination optimization, and clustering can be understood as clustering basic defect data, so as to obtain basic defect data of the same class; the management center can realize various management functions such as metadata management, data quality management, scheduling and management, system management and the like; the front-end presentation module may implement a variety of interactive functions such as visualization, churn trending, anomaly analysis, probability analysis, prediction/mining, uploading/downloading, searching/exploring, and the like.
In practical application, the software quality evaluation platform can realize the following functions: test plan estimation, dynamic quality model, quality report, model management, etc. The test plan pre-estimation comprises model selection, project parameter setting, defect parameter setting, visual icons and the like, the dynamic quality model comprises data uploading, model selection, project parameters, defect analysis, real-time modeling, quality scoring and the like, the quality report comprises report checking and report downloading, and the model management comprises Rayleigh, gompertz, exponential and the like.
Based on fig. 6, the embodiment of the invention provides a method for evaluating software quality, which is applied to a stage of evaluating software quality, in practical application, the method can input various estimated defect data such as estimated defect mining degree (also referred to as defect mining target or target defect mining degree), expected construction period length, estimated total hidden defect number (also referred to as estimated hidden defect number), defect level and defect probability, etc. into a software quality evaluation platform based on an actual plan of a software project, and select a required model from models such as Rayleigh, gompertz and expansal to process the input estimated defect data, so as to predict the distribution condition of defect number in the test period and the proportion distribution of defects with different severity levels, and specifically, an interactive interface can display various icon evaluation results such as a defect distribution map, a defect accumulation map and a defect level pie chart, etc. such as a schematic diagram of an estimated evaluation result shown in fig. 7.
For easy understanding, the embodiment of the present invention provides input data of a software quality assessment platform shown in table 1, including a target defect mining degree, a predicted construction period length, an estimated hidden defect number, a defect level, and a ratio of each defect level, and the input data can be edited. In addition, the embodiment of the invention also provides output data of the software quality evaluation platform shown in table 2, including date, defect accumulation number, defect distribution number, defect number of each grade and the like, wherein the output data can not be edited, and the output data can be displayed on an interactive interface through icon rendering in specific implementation.
TABLE 1
TABLE 2
Field name Data source Field type Whether or not it is editable
Date of day Treatment of Integer Whether or not
Defect accumulation number Calculation of Integer Whether or not
Number of defect distributions Calculation of Integer Whether or not
Number of defects of each grade Calculation of Integer Whether or not
Further, the embodiment of the invention also provides a source program file of the software quality assessment platform shown in table 3, which comprises ui.r (for front-end rendering), server.r (for back-end logic), model_ravleigh.r (for providing model functions), model_gompertz.r (for providing model computing interfaces), model_expomermtial.r (for providing model computing interfaces), utils.r (for providing data processing interfaces), and the like. Table 4 also illustrates functions involved in the software quality assessment platform, including rayleigh_cdf (for calculating model CDF data from parameters), gompertz_cdf (for calculating model CDF data from parameters), exographical_cdf (for calculating model CDF data from parameters), short_long (for deforming data), parameter_text_input (for analyzing defect level settings), long_short (for deforming data), get_pdf_cut (for calculating defect distribution data), and the like.
TABLE 3 Table 3
File Catalogue Function of
ui.R ./ Front-end rendering
server.R ./server/ Backend logic
model_rayleigh.R ./model/ Providing model functionality
model_gompertz.R ./model Providing a model computing interface
model_exponential.R ./model Providing a model computing interface
utils.R ./utils Providing a data processing interface
TABLE 4 Table 4
On the basis of fig. 6, the embodiment of the invention provides a software quality assessment method, which is applied to a software quality test stage, in practical application, in order to perfectly utilize continuously gushed real-time data (i.e., the test defect data) and utilize the real-time data to predict or prompt the condition to be encountered next, the embodiment of the invention provides an implementation mode for obtaining an assessment result of software to be assessed according to the real-time data in the test stage, a user can upload the real-time data, a software quality assessment platform is used for carrying out real-time model fitting by using a data analysis algorithm, and the user obtains the assessment results such as quality rating, defect mining coverage and the like of the software to be assessed in real time. In practical application, test defect data such as a target defect mining degree, an expected construction period length, a defect date, a defect description and a defect grade can be input according to an actual plan of a software project, the input test defect data is processed by selecting a required model from models such as Rayleigh, gompertz and Exponential in a software quality evaluation platform, at this time, an interactive interface automatically refreshes an evaluation result, and if a user selects the evaluation result of different models, the evaluation result of the interactive interface can be refreshed through a "recalculate" button, such as a schematic diagram of one test evaluation result shown in fig. 8.
For easy understanding, the embodiment of the present invention provides input data of a software quality assessment platform shown in table 5, including target defect mining degree, predicted construction period length, estimated hidden defect number, defect date, defect description, defect level, etc., and all the input data can be edited. In addition, the output data of the software quality evaluation platform is shown in the above table 2, the original program file of the software quality evaluation platform is shown in the above table 3, and the function of the software quality evaluation platform is shown in the above table 4, which is not repeated in the embodiment of the present invention.
TABLE 5
In one implementation manner, in order to facilitate the user to know the evaluation result of the software to be evaluated each time, the embodiment of the invention may also display the evaluation result in the form of a chart report; or, the evaluation result in the form of a chart report is sent to the designated associated terminal. The specified associated terminal may be a mobile phone of a user, etc. In practical applications, a schematic view of a software quality assessment report shown in fig. 9 is taken into account, for example, a software quality assessment report (i.e., an assessment result in the form of the above-described chart report) may be illustrated as follows: "based on defect mining information, the software quality is B; the defect mining degree is 73.59% ", the mining degree and the score corresponding to each model can be further shown, for example, the mining degree of a Rayleigh model is 73.59, the score is B, the mining degree of a Gompertz model is 52.84%, the score is C, the mining degree of an Exponential model is 96.05%, the score is A, and further, the software quality evaluation report can also show actual defect distribution, an accumulation map, a model prediction defect distribution accumulation map and the like.
In an implementation manner, the embodiment of the invention further provides an implementation manner of manually modifying the data analysis algorithm, which can respond to the parameter modification operation of the user on the data analysis algorithm, receive the target parameter uploaded by the user, and update the parameter of the data analysis algorithm corresponding to the parameter modification operation based on the target parameter. In practical application, the software quality assessment platform further provides a model parameter modification function for a user, participates in a schematic diagram of a model parameter modification interface shown in fig. 10, and if the user needs to modify parameters of the Exponential model, an introduction of the Exponential model can be displayed on the model parameter modification interface, and modifiable parameters (such as Lambda parameters can be modified) are displayed, and the user modifies the parameters and clicks an "update model" control, so that the modification of the parameters of the Exponential model can be realized.
In summary, the embodiment of the invention establishes a set of efficient product quality metric prediction indexes, including from back-end data collection, storage, model application and management, to front-end index display. Product defect trend and prediction and product defect effectiveness prediction are provided for software testers and managers, so that the software test management is assisted.
For the foregoing method for evaluating software quality, an embodiment of the present invention provides a device for evaluating software quality, referring to a schematic structural diagram of a device for evaluating software quality shown in fig. 11, the device mainly includes the following parts:
the data acquisition module 1102 is configured to acquire basic defect data of the software under evaluation.
The analysis module 1104 is configured to determine a target analysis algorithm from a plurality of preset data analysis algorithms, and perform defect analysis on the basic defect data by using the target analysis algorithm to obtain defect analysis data corresponding to the basic defect data.
And the display module 1106 is used for generating and displaying the evaluation result of the software to be evaluated based on the defect analysis data.
According to the software quality assessment device provided by the embodiment, the data analysis model is utilized to conduct defect analysis on the estimated defect data or the test defect data, assessment results of software to be assessed in the estimated stage and the test stage can be obtained respectively, the assessment results are displayed, the credibility of the software quality assessment results is remarkably improved, and therefore the quality of the software to be assessed is truly reflected.
In one embodiment, the apparatus is applied to a software quality assessment platform configured with at least one data analysis algorithm; the analysis module 1104 is also configured to: displaying each data analysis algorithm through an interactive interface of the software quality evaluation platform; responding to the selection operation of a user for each data analysis algorithm, and determining the data analysis algorithm corresponding to the selection operation as a target analysis algorithm; the data analysis algorithm at least comprises a Rayleigh distribution algorithm, a Goperz distribution algorithm and an exponential distribution algorithm.
In one embodiment, the apparatus further includes a first parameter modification module, configured to receive, in response to a parameter modification operation performed by a user on the target analysis algorithm, a target parameter uploaded by the user; updating parameters of the target analysis algorithm based on the target parameters so as to perform defect analysis on the basic defect data by using the target analysis algorithm after updating the parameters.
In one embodiment, the basic defect data includes estimated defect data or test defect data, the estimated defect data is used for representing defects of the software to be evaluated in an estimated stage, and the test defect data is used for representing defects of the software to be evaluated in a test stage; the device further comprises a second parameter modification module, a first parameter correction module and a second parameter correction module, wherein the second parameter correction module is used for comparing the defect analysis data corresponding to the estimated defect data with the defect analysis data corresponding to the test defect data to obtain a comparison result; and adjusting parameters of the target analysis algorithm based on the comparison result to optimize the target analysis algorithm.
In one embodiment, the display module 1106 is further configured to: drawing a defect analysis chart according to the defect analysis data, and generating an evaluation result of the software to be evaluated according to the defect analysis chart; and displaying an evaluation result of the software to be evaluated through the interactive interface.
In one embodiment, the apparatus further includes a sending module configured to: and sending the evaluation result to a specified associated terminal.
The device provided by the embodiment of the present invention has the same implementation principle and technical effects as those of the foregoing method embodiment, and for the sake of brevity, reference may be made to the corresponding content in the foregoing method embodiment where the device embodiment is not mentioned.
The embodiment of the invention provides a server, which specifically comprises a processor and a storage device; the storage means has stored thereon a computer program which, when executed by the processor, performs the method of any of the embodiments described above.
Fig. 12 is a schematic structural diagram of a server according to an embodiment of the present invention, where the server 100 includes: a processor 120, a memory 121, a bus 122 and a communication interface 123, the processor 120, the communication interface 123 and the memory 121 being connected by the bus 122; the processor 120 is configured to execute executable modules, such as computer programs, stored in the memory 121.
The memory 121 may include a high-speed random access memory (RAM, random Access Memory), and may further include a non-volatile memory (non-volatile memory), such as at least one magnetic disk memory. The communication connection between the system network element and at least one other network element is implemented via at least one communication interface 123 (which may be wired or wireless), which may use the internet, a wide area network, a local network, a metropolitan area network, etc.
Bus 122 may be an ISA bus, a PCI bus, an EISA bus, or the like. The buses may be classified as address buses, data buses, control buses, etc. For ease of illustration, only one bi-directional arrow is shown in FIG. 12, but not only one bus or type of bus.
The memory 121 is configured to store a program, and the processor 120 executes the program after receiving an execution instruction, where the method executed by the apparatus for flow defining disclosed in any of the foregoing embodiments of the present invention may be applied to the processor 120 or implemented by the processor 120.
The processor 120 may be an integrated circuit chip with signal processing capabilities. In implementation, the steps of the above method may be performed by integrated logic circuitry in hardware or instructions in software in the processor 120. The processor 120 may be a general-purpose processor, including a central processing unit (Central Processing Unit, CPU for short), a network processor (Network Processor, NP for short), etc.; but may also be a digital signal processor (Digital Signal Processing, DSP for short), application specific integrated circuit (Application Specific Integrated Circuit, ASIC for short), off-the-shelf programmable gate array (Field-Programmable Gate Array, FPGA for short), or other programmable logic device, discrete gate or transistor logic device, discrete hardware components. The disclosed methods, steps, and logic blocks in the embodiments of the present invention may be implemented or performed. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like. The steps of the method disclosed in connection with the embodiments of the present invention may be embodied directly in the execution of a hardware decoding processor, or in the execution of a combination of hardware and software modules in a decoding processor. The software modules may be located in a random access memory, flash memory, read only memory, programmable read only memory, or electrically erasable programmable memory, registers, etc. as well known in the art. The storage medium is located in the memory 121, and the processor 120 reads the information in the memory 121, and in combination with its hardware, performs the steps of the above method.
The computer program product of the readable storage medium provided by the embodiment of the present invention includes a computer readable storage medium storing a program code, where the program code includes instructions for executing the method described in the foregoing method embodiment, and the specific implementation may refer to the foregoing method embodiment and will not be described herein.
The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention may be embodied essentially or in a part contributing to the prior art or in a part of the technical solution, 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, a network device, etc.) to perform all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
Finally, it should be noted that: the above examples are only specific embodiments of the present invention, and are not intended to limit the scope of the present invention, but it should be understood by those skilled in the art that the present invention is not limited thereto, and that the present invention is described in detail with reference to the foregoing examples: any person skilled in the art may modify or easily conceive of the technical solution described in the foregoing embodiments, or perform equivalent substitution of some of the technical features, while remaining within the technical scope of the present disclosure; such modifications, changes or substitutions do not depart from the spirit and scope of the technical solutions of the embodiments of the present invention, and are intended to be included in the scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.

Claims (9)

1. A method for evaluating software quality, comprising:
basic defect data of the software to be evaluated are obtained;
determining a target analysis algorithm from a plurality of preset data analysis algorithms, and performing defect analysis on the basic defect data through the target analysis algorithm to obtain defect analysis data corresponding to the basic defect data;
generating and displaying an evaluation result of the software to be evaluated based on the defect analysis data;
the basic defect data comprise estimated defect data or test defect data, the estimated defect data are used for representing defects of the software to be evaluated in an estimated stage, and the test defect data are used for representing defects of the software to be evaluated in a test stage;
after the step of obtaining the defect analysis data corresponding to the basic defect data, the method further includes:
comparing the defect analysis data corresponding to the estimated defect data with the defect analysis data corresponding to the test defect data to obtain a comparison result;
and adjusting parameters of the target analysis algorithm based on the comparison result to optimize the target analysis algorithm.
2. The method according to claim 1, characterized in that it is applied to a software quality assessment platform configured with at least one data analysis algorithm;
the step of determining a target analysis algorithm from a plurality of preset data analysis algorithms comprises the following steps:
displaying each data analysis algorithm through an interactive interface of the software quality evaluation platform;
responding to the selection operation of a user for each data analysis algorithm, and determining the data analysis algorithm corresponding to the selection operation as a target analysis algorithm; the data analysis algorithm at least comprises a Rayleigh distribution algorithm, a Goperz distribution algorithm and an exponential distribution algorithm.
3. The method according to claim 1, wherein, before the step of performing defect analysis on the basic defect data by the target analysis algorithm to obtain defect analysis data corresponding to the basic defect data, the method further comprises:
responding to the parameter modification operation of a user aiming at the target analysis algorithm, and receiving the target parameters uploaded by the user;
updating parameters of the target analysis algorithm based on the target parameters so as to perform defect analysis on the basic defect data by using the target analysis algorithm after updating the parameters.
4. The method according to claim 2, wherein the step of generating and presenting the evaluation result of the software under evaluation based on the defect analysis data comprises:
drawing a defect analysis chart according to the defect analysis data, and generating an evaluation result of the software to be evaluated according to the defect analysis chart;
and displaying the evaluation result of the software to be evaluated through the interactive interface.
5. The method according to claim 1, wherein the method further comprises:
and sending the evaluation result to a specified associated terminal.
6. An evaluation device for software quality, comprising:
the data acquisition module is used for acquiring basic defect data of the software to be evaluated;
the analysis module is used for determining a target analysis algorithm from a plurality of preset data analysis algorithms, and performing defect analysis on the basic defect data through the target analysis algorithm to obtain defect analysis data corresponding to the basic defect data;
the display module is used for generating and displaying the evaluation result of the software to be evaluated based on the defect analysis data;
the basic defect data comprise estimated defect data or test defect data, the estimated defect data are used for representing defects of the software to be evaluated in an estimated stage, and the test defect data are used for representing defects of the software to be evaluated in a test stage;
the system further comprises a second parameter modification module for:
comparing the defect analysis data corresponding to the estimated defect data with the defect analysis data corresponding to the test defect data to obtain a comparison result;
and adjusting parameters of the target analysis algorithm based on the comparison result to optimize the target analysis algorithm.
7. The apparatus of claim 6, wherein the apparatus is applied to a software quality assessment platform configured with at least one data analysis algorithm;
the analysis module is also configured to:
displaying each data analysis algorithm through an interactive interface of the software quality evaluation platform;
responding to the selection operation of a user for each data analysis algorithm, and determining the data analysis algorithm corresponding to the selection operation as a target analysis algorithm; the data analysis algorithm at least comprises a Rayleigh distribution algorithm, a Goperz distribution algorithm and an exponential distribution algorithm.
8. A server comprising a processor and a memory;
stored on the memory is a computer program which, when executed by the processor, performs the method of any one of claims 1 to 5.
9. A computer storage medium storing computer software instructions for use with the method of any one of claims 1 to 5.
CN202011643464.6A 2020-12-31 2020-12-31 Software quality assessment method, device and server Active CN112783762B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011643464.6A CN112783762B (en) 2020-12-31 2020-12-31 Software quality assessment method, device and server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011643464.6A CN112783762B (en) 2020-12-31 2020-12-31 Software quality assessment method, device and server

Publications (2)

Publication Number Publication Date
CN112783762A CN112783762A (en) 2021-05-11
CN112783762B true CN112783762B (en) 2024-04-09

Family

ID=75753608

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011643464.6A Active CN112783762B (en) 2020-12-31 2020-12-31 Software quality assessment method, device and server

Country Status (1)

Country Link
CN (1) CN112783762B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113962578A (en) * 2021-10-28 2022-01-21 四川虹美智能科技有限公司 Data analysis method and device

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6601017B1 (en) * 2000-11-09 2003-07-29 Ge Financial Assurance Holdings, Inc. Process and system for quality assurance for software
CN102622510A (en) * 2012-01-31 2012-08-01 龚波 System and method for quantitative management of software defects
CN108154287A (en) * 2017-12-06 2018-06-12 千寻位置网络有限公司 The analyzing evaluation method of software system development quality
CN109634833A (en) * 2017-10-09 2019-04-16 北京京东尚科信息技术有限公司 A kind of Software Defects Predict Methods and device
RU2729210C1 (en) * 2020-01-28 2020-08-05 Акционерное общество «Информационные спутниковые системы» имени академика М.Ф. Решетнёва» Electronic devices software testing system
CN111881058A (en) * 2020-08-07 2020-11-03 北京神舟航天软件技术有限公司 Software engineering quality prediction method
CN112131089A (en) * 2020-09-29 2020-12-25 九江学院 Software defect prediction method, classifier, computer device and storage medium

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014241021A (en) * 2013-06-11 2014-12-25 株式会社日立製作所 Software evaluation device and method
US9619363B1 (en) * 2015-09-25 2017-04-11 International Business Machines Corporation Predicting software product quality

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6601017B1 (en) * 2000-11-09 2003-07-29 Ge Financial Assurance Holdings, Inc. Process and system for quality assurance for software
CN102622510A (en) * 2012-01-31 2012-08-01 龚波 System and method for quantitative management of software defects
CN109634833A (en) * 2017-10-09 2019-04-16 北京京东尚科信息技术有限公司 A kind of Software Defects Predict Methods and device
CN108154287A (en) * 2017-12-06 2018-06-12 千寻位置网络有限公司 The analyzing evaluation method of software system development quality
RU2729210C1 (en) * 2020-01-28 2020-08-05 Акционерное общество «Информационные спутниковые системы» имени академика М.Ф. Решетнёва» Electronic devices software testing system
CN111881058A (en) * 2020-08-07 2020-11-03 北京神舟航天软件技术有限公司 Software engineering quality prediction method
CN112131089A (en) * 2020-09-29 2020-12-25 九江学院 Software defect prediction method, classifier, computer device and storage medium

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Ural Erdemir 等.E-Quality: A Graph Based Object Oriented Software Quality Visualization Tool.《IEEE》.2011,全文. *
张国志.数学算法对计算机编程的优化分析.《计算机技术应用》.2015,全文. *
黄云.基于 Rayleigh 模型和 Gompertz 模型的 3G 软件开发质量评估.《中国优秀硕士学位论文全文数据库 信息科技辑》《.2013,第38-58页. *

Also Published As

Publication number Publication date
CN112783762A (en) 2021-05-11

Similar Documents

Publication Publication Date Title
US8495583B2 (en) System and method to determine defect risks in software solutions
US20180113935A1 (en) System and method for providing technology assisted data review with optimizing features
CN112889042A (en) Identification and application of hyper-parameters in machine learning
CN112783762B (en) Software quality assessment method, device and server
CN113807066A (en) Chart generation method and device and electronic equipment
CN110796178A (en) Decision model training method, sample feature selection method, device and electronic equipment
CN114168565B (en) Backtracking test method, device and system of business rule model and decision engine
US20150012317A1 (en) Information analysis supporting apparatus and method
CN113962216A (en) Text processing method and device, electronic equipment and readable storage medium
CN111143220B (en) Training system and method for software test
JP7246957B2 (en) Data analysis device and data analysis method
CN113934894A (en) Data display method based on index tree and terminal equipment
Barcaroli et al. Integration of ICT survey data and Internet data from enterprises websites at the Italian National Institute of Statistics
Chang et al. Validating halstead metrics for scratch program using process data
CN111427874A (en) Quality control method and device for medical data production and electronic equipment
CN110837595A (en) Enterprise information data processing method, system, terminal and storage medium
CN113342692B (en) Automatic test case generation method and device, electronic equipment and storage medium
CN113987010B (en) Method and device for realizing insight of multi-dimensional data set
US11966869B2 (en) Systems and methods for simulating qualitative assumptions
CN116823407B (en) Product information pushing method, device, electronic equipment and computer readable medium
US20230080572A1 (en) System and method to engineer user experience
CN116777597A (en) Financial risk assessment method, device, storage medium and computer equipment
CN114004629A (en) Data analysis method and device
CN114238092A (en) Software performance evaluation method, device, equipment and readable storage medium
CN117056196A (en) System test method, device, electronic equipment and storage medium

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