CN112783762A - Software quality evaluation method and device and server - Google Patents

Software quality evaluation method and device and server Download PDF

Info

Publication number
CN112783762A
CN112783762A CN202011643464.6A CN202011643464A CN112783762A CN 112783762 A CN112783762 A CN 112783762A CN 202011643464 A CN202011643464 A CN 202011643464A CN 112783762 A CN112783762 A CN 112783762A
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.)
Granted
Application number
CN202011643464.6A
Other languages
Chinese (zh)
Other versions
CN112783762B (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

Images

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

Landscapes

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

Abstract

The invention provides a software quality evaluation method, a device and a server, which relate to the technical field of Internet and comprise the following steps: acquiring basic defect data of software to be evaluated; 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 method 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 evaluation method and device and server
Technical Field
The invention relates to the technical field of internet, in particular to a software quality evaluation method, a software quality evaluation device and a server.
Background
With the increase of the dependence degree of the society on computers, software products are applied to various fields of the society, and in order to ensure the smooth completion of services, users gradually improve the quality requirements of the software products. The quality of a software product is critical to the software development company and often requires that the software product be tested before it is put into operation. Software developers are therefore increasingly paying more attention to the software testing process, which already accounts for 40% to 50% of the entire software development process. At present, the traditional software testing means comprises a function test and a pressure test, and can know the functions which can be realized and the achieved performance of the software, but the reliability of the testing results obtained by the two testing means is low, and the quality of the software product cannot be reflected truly.
Disclosure of Invention
In view of the above, the present invention provides a method, an apparatus, and a server for evaluating software quality, which can effectively improve the credibility of the software quality evaluation result, thereby truly reflecting the quality of the software to be evaluated.
In a first aspect, an embodiment of the present invention provides a software quality evaluation method, including: acquiring basic defect data of software to be evaluated; 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 the 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 includes: 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; wherein the data analysis algorithm at least comprises a Rayleigh distribution algorithm, a Gopper's distribution algorithm and an exponential distribution algorithm.
In an embodiment, 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 includes: responding to parameter modification operation of a user aiming at the target analysis algorithm, and receiving target parameters uploaded by the user; and 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 updated parameters of the target analysis algorithm.
In one embodiment, the basic defect data includes estimated defect data or test defect data, the estimated defect data is used for representing the defect of the software to be evaluated in the estimation stage, and the test defect data is used for representing the defect of the software to be evaluated in the 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 so as 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 following steps: and sending the evaluation result to a specified associated terminal.
In a second aspect, an embodiment of the present invention further provides an apparatus 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 device is applied to a software quality assessment platform which is configured with at least one data analysis algorithm; the analysis module is further 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; wherein the data analysis algorithm at least comprises a Rayleigh distribution algorithm, a Gopper's 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 of any one of the aspects as provided in the first aspect.
In a fourth aspect, an embodiment of the present invention further provides a computer storage medium for storing computer software instructions for use in any one of the methods provided in the first aspect.
According to the software quality evaluation method, device and server provided by the embodiment of the invention, the basic defect data of the software to be evaluated is firstly obtained, then the defect analysis is carried out on the basic defect data through the target analysis algorithm to obtain the defect analysis data, and then the evaluation result of the software to be evaluated is generated and displayed based on the defect analysis data. Compared with the traditional software testing means, the method provided by the embodiment of the invention obviously improves the credibility of the software quality evaluation result, thereby truly reflecting the quality of the software to be evaluated.
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 aforementioned and other objects, features and advantages of the present invention 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 used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and other drawings can be obtained by those skilled in the art without creative efforts.
Fig. 1 is a schematic 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 evaluation 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 interaction display layer according to an embodiment of the present invention;
FIG. 6 is a functional framework diagram of a software quality assessment platform according to an embodiment of the present invention;
FIG. 7 is a schematic diagram of a pre-estimated result according to an embodiment of the present invention;
FIG. 8 is a diagram illustrating test evaluation results according to an embodiment of the present invention;
FIG. 9 is a diagram illustrating a software quality assessment report according to an embodiment of the present invention;
FIG. 10 is a diagram illustrating a model parameter modification interface according to an embodiment of the present invention;
fig. 11 is a schematic structural diagram of an apparatus for evaluating software quality 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
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions of the present invention will be clearly and completely described below with reference to the embodiments, and it is obvious that the described embodiments are some, but not all embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
At present, research data shows that the defect of the code layer accounts for 92% of the frequency of the whole defect of the software, the application downtime caused by the defect of the code layer only accounts for 10%, and the rest 90% of the application downtime is caused by the defect of the system layer. Software products are various, 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 performance of the software can be known, the two testing means can only find the defects of a code layer, including incomplete functionality or abnormal reaction under pressure, and the like, but the defects of the system layer causing most applications to be down are difficult to discriminate, so that the finally obtained evaluation result is low in reliability.
To facilitate understanding of the present embodiment, first, a software quality evaluation method disclosed in the present embodiment is described in detail, referring to a flowchart of a software quality evaluation method shown in fig. 1, where the method mainly includes the following steps S102 to S106:
and S102, acquiring basic defect data of the software to be evaluated. The basic defect data can comprise estimated defect data or test defect data, the estimated defect data is used for representing defects of the software to be evaluated in an estimation stage, such as target defect mining degree, estimated construction period length, estimated implicit defect number, defect grade ratio and the like, and the test defect data is used for representing defects of the software to be evaluated in a test stage, such as target defect mining degree, estimated construction period length, selection models, defect date, defect description, defect grade and the like. In one embodiment, the basic defect data may be read from a designated database through a data interface, or may be manually uploaded by a user.
And 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 include at least a Rayleigh (Rayleigh) distribution algorithm, a golppertz (Gompertz) distribution algorithm, an Exponential (Exponential) distribution algorithm, and a plurality of data analysis algorithms such as a cluster analysis algorithm, a time series algorithm, and the like, and 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 step S106, generating and displaying the evaluation result of the software to be evaluated based on the defect analysis data. In one embodiment, the defect analysis data can be rendered to obtain an evaluation result in a chart report form, and the evaluation result in the chart report form is displayed.
According to the software quality evaluation method provided by the embodiment of the invention, the estimated defect data or the test defect data are subjected to defect analysis by using the target analysis algorithm determined from the plurality of data analysis algorithms, so that the evaluation results of the software to be evaluated in the estimation stage and the test stage can be respectively obtained, and the evaluation results are displayed.
In an implementation manner, the method may be applied to a software quality evaluation platform, and in order to facilitate understanding of the software quality evaluation platform, an embodiment of the present invention describes a functional layered structure of the software quality evaluation platform, referring to a functional layered structure schematic diagram of the software quality evaluation platform shown in fig. 2, fig. 2 illustrates that the software quality evaluation platform may include a data layer, an analysis model layer, and an interaction 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, and functions such as data cleaning, defect distribution drilling calculation, real-time defect modeling calculation, model management, and the like are implemented, and the interaction display layer is used for rendering the defect analysis data and displaying an obtained evaluation result.
On the basis of fig. 2, an embodiment of the present invention further provides a schematic structural diagram of a data layer as shown in fig. 3, where in fig. 3, the data layer includes a data uploading module, an ATQ (automated test platform) data access module, and a database connection module, where 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 invoking 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, an embodiment of the present invention further provides a schematic structural diagram of an analysis model layer as shown in fig. 4, where in fig. 4, the analysis model layer includes a model layer and a drawing data layer, where the model layer is used to provide an Application Programming Interface (API), a Portable Document Format (PDF) Interface and a CDF (computable Document Format) Interface including multiple data analysis algorithms (such as rayleigh distribution algorithm, gobitz distribution algorithm, exponential distribution algorithm, etc.), and the drawing data layer is used to provide drawing data.
On the basis of fig. 2, an embodiment of the present invention further provides a structural schematic diagram of an interaction presentation layer as shown in fig. 5, where in fig. 5, the interaction presentation layer includes a chart data processing layer, a chart presentation layer, a document generation layer, and an interaction layer. The chart data processing layer is used for simply processing the defect analysis data (including defect grading processing, cumulative graph processing and distribution graph processing) so as to assist front-end page elements (such as defect grading pie charts, cumulative graphs and distribution graphs) in obtaining a proper data format; the diagram display layer is used for rendering elements in a front-end page, calling an ECharts library to draw a diagram, and calling an RShinydashboard library to generate a dashboard; the document generation layer is used for collecting the evaluation results into a report with a specified format and providing a report downloading function, and can comprise a Markdown tool and a Pandoc tool; the interaction layer is used for displaying the evaluation result or the report and feeding back the operation aiming at the evaluation result or the report to the analysis model layer, and the interaction layer can comprise a 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 ATQ), where basic defect data is stored, and based on this, the embodiment of the present invention provides an implementation manner for obtaining basic defect data of software to be assessed, and may call the data interface to read the basic defect data of the software to be assessed from the specified database through the data interface. The data interface can be an ATQ interface, and the ATQ interface is connected with the software quality evaluation platform and the MySQL database of the ATQ, so that basic defect data can be acquired from the MySQL database of the ATQ.
In one embodiment, the software quality assessment platform provided by the embodiment of the invention is configured with at least one data analysis algorithm, such as one or more of a rayleigh distribution algorithm, a goperz distribution algorithm, and an exponential distribution algorithm. In practical application, the target analysis algorithm can be automatically determined from each data analysis algorithm, or manually determined from each data analysis algorithm, specifically, each data analysis algorithm can be displayed through the front end, so that a user can select a required data analysis algorithm as the target analysis algorithm, and then the target analysis algorithm is used for performing defect analysis on defect data sets of various categories. In an optional implementation manner, each data analysis algorithm may be displayed through an interactive interface of the software quality assessment platform, and a data analysis algorithm corresponding to a selection operation is determined as a target analysis algorithm in response to the selection operation of a user for each data analysis algorithm. For example, assuming that the user selects a clustering algorithm, the basic defect data may be subjected to clustering analysis to obtain a set consisting of basic defect data of each type, and then any one of the data analysis algorithms selected from the rayleigh distribution algorithm, the goblet distribution algorithm, and the exponential distribution algorithm is used 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 region in which the respective data analysis algorithms may be stored.
In order to further optimize the credibility of software analysis, before the step of performing defect analysis on the basic defect data through the target analysis algorithm to obtain the defect analysis data corresponding to the basic defect data, the method can also respond to the parameter modification operation of the user aiming at the target analysis algorithm, receive the target parameters uploaded by the user, update the parameters of the target analysis algorithm based on the target parameters, and perform defect analysis on the basic defect data by using the target analysis algorithm after updating the parameters, thereby obtaining the defect analysis data with higher credibility. For example, the user selects the rayleigh distribution algorithm as a 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 an embodiment, after the step of obtaining the defect analysis data, the back end of the software quality evaluation platform may further update parameters of the target analysis algorithm based on the defect analysis data, specifically, may compare the estimated defect analysis data corresponding to the 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.
In addition, when the software quality evaluation platform executes 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 can be further configured with an ECharts library and an RShinydashboard library, so that a layer visual interactive interface is generated based on the drawn icon by calling the ECharts library to draw a chart according to the defect analysis data and calling the RShinydashboard library, and assessment results are displayed in the interface. In addition, the evaluation result can be sent to the appointed associated terminal, so that a user can conveniently check the evaluation result of the software to be evaluated through the appointed associated terminal.
To facilitate understanding of the software quality evaluation method provided by the foregoing embodiment, an embodiment of the present invention provides a functional framework schematic diagram of a software quality evaluation platform as shown in fig. 6, where in fig. 6, the software quality evaluation platform includes 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), measurement data, project data, and product data, wherein the project data is also the basic defect data; the ETL module is used for carrying out preprocessing such as synchronization, extraction, cleaning, conversion, loading and the like on data stored in a data source; the quality model analysis module includes multiple functions of a quality evaluation model (i.e., the aforementioned target model combination), model combination optimization, clustering, and the like, and in one embodiment, a model area of the software quality evaluation platform is configured with multiple models such as a leaf bayesian model, a decision tree model, a random forest model, a time series model, an SVM (support vector machine) model, a CS model, a Boosting model, an existence analysis model, a logistic regression model, a gradient descent model, a KNN (K-nearest neighbor, neighborhood algorithm) model, a regression prediction model, and the like, where the quality evaluation model is a combination of the models, the quality evaluation model is optimized to be the model combination, and clustering can be understood to be performed to cluster basic defect data, so as to obtain basic defect data of the same category; 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, attrition trend, anomaly analysis, probability analysis, prediction/mining, upload/download, search/exploration, and the like.
In practical application, the software quality evaluation platform can realize the following functions: test plan estimation, dynamic quality models, quality reports, model management, and the like. The test plan prediction 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 viewing and report downloading, and the model management comprises Rayleigh, Gompertz, Exponential and the like.
On the basis of the above-mentioned fig. 6, the embodiment of the present invention provides a software quality evaluation method, which is applied to the stage of software quality estimation, in practical application, a plurality of 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 number of hidden defects (also referred to as estimated number of hidden defects), defect grade and defect probability, etc. can be input to a software quality evaluation platform based on the actual plan of a software project, and a desired model is selected from the models such as Rayleigh, Gompertz and Exponential to process the input defect data, so as to predict the distribution of the number of defects in the test period and the proportional distribution of the defects with different severity grades, specifically, an interactive interface can display a plurality of icon evaluation results such as a defect distribution map, a defect accumulation map and a defect grade pie chart, a schematic diagram of a predicted evaluation result such as that shown in fig. 7.
For understanding, the embodiment of the present invention provides input data of a software quality evaluation platform as shown in table 1, including a target defect mining degree, a predicted construction period length, an estimated number of hidden defects, a defect level, a ratio of each defect level, and the like, and the input data can be edited. In addition, the embodiment of the present invention further provides output data of the software quality evaluation platform shown in table 2, where the output data includes a date, a defect accumulation number, a defect distribution number, a defect number of each level, and the like, and none of the output data is editable, and the output data can be displayed on an interactive interface through icon rendering when the output data is specifically implemented.
TABLE 1
Figure BDA0002876927000000111
TABLE 2
Name of field Data source Type of field Whether or not it can be edited
Date Treatment of Integer Whether or not
Cumulative number of defects Computing Integer Whether or not
Number of defect distributions Computing Integer Whether or not
Number of defects of each grade Computing Integer Whether or not
Further, the embodiment of the present invention also provides a source program file of a software quality assessment platform as shown in table 3, which includes 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 computation interfaces), model _ expomemt.r (for providing model computation interfaces), utils.r (for providing data processing interfaces), and so on. Table 4 also illustrates the functions involved in the software quality assessment platform, including rayleigh _ CDF (for computing model CDF data from parameters), gompertz _ CDF (for computing model CDF data from parameters), explicit _ CDF (for computing model CDF data from parameters), short _ long (for deforming data), pars _ text _ input (for analyzing defect level settings), long _ short (for deforming data), get _ pdf _ current (for computing defect distribution data), and so on.
TABLE 3
Document Directory Function(s)
ui.R ./ Front end rendering
server.R ./server/ Back-end logic
model_rayleigh.R ./model/ Providing model functionality
model_gompertz.R ./model Providing model computing interfaces
model_exponential.R ./model Providing model computing interfaces
utils.R ./utils Providing a data processing interface
TABLE 4
Figure BDA0002876927000000121
Figure BDA0002876927000000131
On the basis of the above fig. 6, an embodiment of the present invention provides a software quality evaluation method, which is applied to a software quality test stage, and in order to perfectly utilize continuously-gushed real-time data (that is, the above test defect data) and predict or prompt a next encountered situation by using the real-time data in practical application, an embodiment of the present invention provides an implementation manner for obtaining an evaluation result of software to be evaluated according to the real-time data in the test stage, a user can upload the real-time data, a software quality evaluation platform performs real-time model fitting by using a data analysis algorithm, and the user obtains a real-time evaluation result of the software to be evaluated, such as a quality rating, a defect mining coverage and the like. In practical application, test defect data such as target defect mining degree, estimated construction period length, defect date, defect description and defect grade can be input according to an actual plan of a software project, a required model is selected from models such as Rayleigh, Gompertz and Exponential in a software quality evaluation platform to process the input test defect data, at the moment, an interactive interface automatically refreshes evaluation results, and if a user selects the evaluation results of different models, the evaluation results of the interactive interface can be refreshed through a recalculation button, such as a schematic diagram of the test evaluation results shown in FIG. 8.
For understanding, the embodiment of the present invention provides input data of a software quality evaluation platform as shown in table 5, including target defect mining degree, estimated project duration, estimated number of hidden defects, defect date, defect description, defect grade, etc., and the input data can be edited. In addition, the output data of the software quality evaluation platform is as shown in table 2, the original program file of the software quality evaluation platform is as shown in table 3, and the function of the software quality evaluation platform is as shown in table 4, which is not repeated herein in the embodiments of the present invention.
TABLE 5
Figure BDA0002876927000000132
Figure BDA0002876927000000141
In one embodiment, in order to facilitate a user to know the evaluation result of the software to be evaluated each time, the embodiment of the present invention may further display the evaluation result in a form of a chart report; or sending the evaluation result in the form of the chart report to the appointed associated terminal. The designated associated terminal may be a mobile phone of the user, and the like. In practical applications, referring to a schematic diagram of a software quality assessment report shown in fig. 9, for example, the software quality assessment report (i.e., the assessment result in the form of the above-mentioned chart report) may show: based on the defect mining information, the software quality is B; the defect mining degree is 73.59% ", and the mining degree and the score corresponding to each model can be further indicated, such as the mining degree of the Rayleigh model is 73.59 and the score is B, the mining degree of the Gompertz model is 52.84% and the score is C, the mining degree of the Exponential model is 96.05% and the score is A, and further, the software quality evaluation report can indicate the actual defect distribution, the accumulation graph, the model prediction defect distribution accumulation graph and the like.
In an implementation manner, an embodiment of the present invention further provides an implementation manner for manually modifying a data analysis algorithm, which may respond to a parameter modification operation of a user for the data analysis algorithm, receive a target parameter uploaded by the user, and update a parameter of the data analysis algorithm corresponding to the parameter modification operation based on the target parameter. In practical applications, the software quality evaluation platform further provides a model parameter modification function for a user, and with reference to a schematic diagram of a model parameter modification interface shown in fig. 10, assuming that the user needs to modify parameters of an exponetia model, the introduction of the exponetia model can be displayed on the model parameter modification interface, and modifiable parameters (such as Lambda parameters) are displayed, and the user modifies the parameters and clicks an "update model" control, so that the modification of the parameters of the exponetia model can be realized.
In summary, the embodiment of the present invention establishes a set of efficient product quality metric prediction indexes from back-end data collection, storage, model application and management to front-end index display. And providing product defect trend and prediction and product defect effectiveness prediction for software testers and managers so as to assist software test management.
For the foregoing software quality evaluation method, an embodiment of the present invention provides a software quality evaluation apparatus, see fig. 11 for a schematic structural diagram of the software quality evaluation apparatus, and the apparatus mainly includes the following components:
the data obtaining module 1102 is configured to obtain basic defect data of software to be evaluated.
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 through the target analysis algorithm to obtain defect analysis data corresponding to the basic defect data.
And a display module 1106, configured to generate and display an evaluation result of the software to be evaluated based on the defect analysis data.
The software quality evaluation device provided by the embodiment performs defect analysis on the estimated defect data or the test defect data by using the data analysis model, can respectively obtain the evaluation results of the software to be evaluated in the estimation stage and the test stage, and displays the evaluation results, so that the credibility of the software quality evaluation result is remarkably improved, and the quality of the software to be evaluated is truly reflected.
In one embodiment, the device is applied to a software quality assessment platform configured with at least one data analysis algorithm; the analysis module 1104 is further 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; wherein the data analysis algorithm at least comprises a Rayleigh distribution algorithm, a Gopper's distribution algorithm and an exponential distribution algorithm.
In an embodiment, the apparatus further includes a first parameter modification module, configured to receive, in response to a parameter modification operation of a user for the target analysis algorithm, a target parameter uploaded by the user; and 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 updated parameters of the target analysis algorithm.
In one embodiment, the basic defect data includes estimated defect data or test defect data, the estimated defect data is used for representing the defect of the software to be evaluated in the estimation stage, and the test defect data is used for representing the defect of the software to be evaluated in the test stage; the device also comprises a second parameter modification module, which 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 so as to optimize the target analysis algorithm.
In one embodiment, 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 the evaluation result of the software to be evaluated through an interactive interface.
In an 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 effect as the method embodiments, and for the sake of brief description, reference may be made to the corresponding contents in the method embodiments without reference to the device embodiments.
The embodiment of the invention provides a server, which particularly 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 above described embodiments.
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, wherein the processor 120, the communication interface 123 and the memory 121 are connected through the bus 122; the processor 120 is used 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) and may also include a non-volatile Memory (non-volatile Memory), such as at least one disk Memory. The communication connection between the network element of the system and at least one other network element is realized through at least one communication interface 123 (which may be wired or wireless), and the internet, a wide area network, a local network, a metropolitan area network, and the like may be used.
The bus 122 may be an ISA bus, PCI bus, EISA bus, or the like. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one double-headed arrow is shown in FIG. 12, but that does not indicate only one bus or one type of bus.
The memory 121 is configured to store a program, and the processor 120 executes the program after receiving an execution instruction, and the method executed by the apparatus defined by the flow process 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 having signal processing capabilities. In implementation, the steps of the above method may be performed by integrated logic circuits of hardware or instructions in the form of software in the processor 120. The Processor 120 may be a general-purpose Processor, and includes a Central Processing Unit (CPU), a Network Processor (NP), and the like; the device can also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field-Programmable Gate Array (FPGA), or other Programmable logic devices, discrete Gate or transistor logic devices, discrete hardware components. The various methods, steps and logic blocks disclosed 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 directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software modules in the decoding processor. The software module may be located in ram, flash memory, rom, prom, or eprom, registers, etc. storage media as is 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 completes the steps of the method in combination with the hardware thereof.
The computer program product of the readable storage medium provided in the embodiment of the present invention includes a computer readable storage medium storing a program code, where instructions included in the program code may be used to execute the method described in the foregoing method embodiment, and specific implementation may refer to the foregoing method embodiment, which is not described herein again.
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 such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute 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), a magnetic disk or an optical disk, and other various media capable of storing program codes.
Finally, it should be noted that: the above-mentioned embodiments are only specific embodiments of the present invention, which are used for illustrating the technical solutions of the present invention and not for limiting the same, and the protection scope of the present invention is not limited thereto, although the present invention is described in detail with reference to the foregoing embodiments, those skilled in the art should understand that: any person skilled in the art can modify or easily conceive the technical solutions described in the foregoing embodiments or equivalent substitutes for some technical features within the technical scope of the present disclosure; such modifications, changes or substitutions do not depart from the spirit and scope of the embodiments of the present invention, and they should be construed as being included therein. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.

Claims (10)

1. A method for evaluating software quality, comprising:
acquiring basic defect data of software to be evaluated;
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 the evaluation result of the software to be evaluated based on the defect analysis data.
2. The method of claim 1, 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 includes:
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; wherein the data analysis algorithm at least comprises a Rayleigh distribution algorithm, a Gopper's 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 parameter modification operation of a user aiming at the target analysis algorithm, and receiving target parameters uploaded by the user;
and 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 updated parameters of the target analysis algorithm.
4. The method of claim 1, wherein the base defect data comprises estimated defect data characterizing defects of the software to be evaluated at an estimation stage or test defect data characterizing defects of the software to be evaluated at 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 so as to optimize the target analysis algorithm.
5. The method of claim 2, wherein the step of generating and presenting the evaluation results of the software to be evaluated 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.
6. The method of claim 1, further comprising:
and sending the evaluation result to a specified associated terminal.
7. An apparatus for evaluating 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;
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.
8. The apparatus of claim 7, wherein the apparatus is applied to a software quality assessment platform configured with at least one data analysis algorithm;
the analysis module is further 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; wherein the data analysis algorithm at least comprises a Rayleigh distribution algorithm, a Gopper's distribution algorithm and an exponential distribution algorithm.
9. A server, comprising a processor and a memory;
the memory has stored thereon a computer program which, when executed by the processor, performs the method of any of claims 1 to 6.
10. A computer storage medium storing computer software instructions for use in the method of any one of claims 1 to 6.
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 true CN112783762A (en) 2021-05-11
CN112783762B 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)

Cited By (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 (9)

* 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
US20140365990A1 (en) * 2013-06-11 2014-12-11 Hitachi, Ltd. Software evaluation device and method
US20170091071A1 (en) * 2015-09-25 2017-03-30 International Business Machines Corporation Predicting software product quality
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

Patent Citations (9)

* 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
US20140365990A1 (en) * 2013-06-11 2014-12-11 Hitachi, Ltd. Software evaluation device and method
US20170091071A1 (en) * 2015-09-25 2017-03-30 International Business Machines Corporation Predicting software product quality
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》 *
张国志: "数学算法对计算机编程的优化分析", 《计算机技术应用》 *
黄云: "基于 Rayleigh 模型和 Gompertz 模型的 3G 软件开发质量评估", 《中国优秀硕士学位论文全文数据库 信息科技辑》《, pages 38 - 58 *

Cited By (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

Also Published As

Publication number Publication date
CN112783762B (en) 2024-04-09

Similar Documents

Publication Publication Date Title
US20210256047A1 (en) System and method for providing technology assisted data review with optimizing features
US9558464B2 (en) System and method to determine defect risks in software solutions
CN107517251B (en) Information pushing method and device
CN110880136A (en) Recommendation method, system, equipment and storage medium for matched product
US10599760B2 (en) Intelligent form creation
CN109815042B (en) Abnormal factor positioning method, abnormal factor positioning device, server and storage medium
JP2020128962A (en) Material characteristics prediction device and material characteristics prediction method
CN110674117A (en) Data modeling method and device, computer readable medium and electronic equipment
CN113342692B (en) Automatic test case generation method and device, electronic equipment and storage medium
CN109409419B (en) Method and apparatus for processing data
US7992126B2 (en) Apparatus and method for quantitatively measuring the balance within a balanced scorecard
CN109978594B (en) Order processing method, device and medium
CN112783762B (en) Software quality assessment method, device and server
CN109800933B (en) Risk assessment method and device, storage medium and electronic equipment
CN114895997A (en) Task association method and device and electronic equipment
JP7246957B2 (en) Data analysis device and data analysis method
CN109697141B (en) Method and device for visual testing
CN112906723A (en) Feature selection method and device
CN111414103B (en) Method and device for generating instruction
CN116823407B (en) Product information pushing method, device, electronic equipment and computer readable medium
CN113986305B (en) B/S model upgrade detection method, device, equipment and storage medium
US20220237547A1 (en) Artificial intelligence-enabled metadata optimizer
US20230080572A1 (en) System and method to engineer user experience
CN114238092A (en) Software performance evaluation method, device, equipment and readable storage medium
US20150046439A1 (en) Determining Recommendations In Data Analysis

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