CN109947428A - A kind of high-quality software recommendation method based on software stability measurement - Google Patents

A kind of high-quality software recommendation method based on software stability measurement Download PDF

Info

Publication number
CN109947428A
CN109947428A CN201910033598.7A CN201910033598A CN109947428A CN 109947428 A CN109947428 A CN 109947428A CN 201910033598 A CN201910033598 A CN 201910033598A CN 109947428 A CN109947428 A CN 109947428A
Authority
CN
China
Prior art keywords
class
software
stability
node
cdn
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
CN201910033598.7A
Other languages
Chinese (zh)
Other versions
CN109947428B (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.)
Zhejiang Gongshang University
Original Assignee
Zhejiang Gongshang University
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 Zhejiang Gongshang University filed Critical Zhejiang Gongshang University
Priority to CN201910033598.7A priority Critical patent/CN109947428B/en
Publication of CN109947428A publication Critical patent/CN109947428A/en
Application granted granted Critical
Publication of CN109947428B publication Critical patent/CN109947428B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

The invention discloses a kind of high-quality software recommendation methods based on software stability measurement, comprising the following steps: the method call procedural abstraction of the software for writing Java language at runtime is method call net;Net is relied on based on method call net building class;The stability of net building Measure Indexes measurement class is relied on based on class;The stability of class-based stability metric index building Measure Indexes measurement software;Intimate software is subjected to descending arrangement according to stability, is recommended by sequence.The prior art is based primarily upon the static analysis of software source code to construct Measure Indexes measurement software stability, and the model of building is not accurate enough.The Measure Indexes of prior art building fail to make full use of the internal structure of software.The present invention constructs more accurate model using dynamic analysis technology and recommends high-quality software for measuring software stability, and then for user, and for understanding software, the high-quality software to select stability high from multiple intimate softwares provides technical support.

Description

A kind of high-quality software recommendation method based on software stability measurement
Technical field
The present invention relates to a kind of high-quality software recommendation methods, more particularly, to a kind of based on the high-quality of software stability measurement Software recommendation method.
Background technique
Computer software has goed deep into the every aspect of our lives, becomes us and lives indispensable a part.It is soft Part is changing, and changes our life for lasting.People are higher and higher to the function and performance requirement of software, lead to software Scale increase sharply, there are many intimate software products.Open source software is a kind of important software.Many enterprises in reality Under the agreement for following open source software, open source software is largely used.However, open source software scale is very big, exist many similar Software product, how from similar software select better quality software become a technical problem.
Software complexity is an important factor for causing software quality to decline.Therefore, in metric software the complexity amount of being Spend a kind of important channel of software quality.Software stability is a kind of embodiment in software in complexity, has been often expressed as software For the resistance ability of modification.Software stability is high, and software quality is often relatively good.Have many software complexity metrics at present The work of aspect: Wolverton proposes to use the code rate of LOC (Lines of Code) statement line measuring procedure person.McCabe base It is proposed that McCabe cyclomatic complexity (Cyclomatic Complexity) carrys out the complexity of measuring procedure in graph theory.Halstead is logical The quantity of the operator (operator) and operand (operand) crossed in calculation procedure carrys out the complexity of measuring procedure. Albrecht proposes function-point method method from statement of requirements book.Oviedo construct a model will control stream and Data stream merging processing, and by calculating control and data flow complexity come the complexity of measuring procedure.Harrison and Magel Propose it is a kind of by flow chart decomposition come the method for metric software complexity.Tai proposes a kind of program based on data flow Complexity measure.Bieman proposes the frame for metric software reusability, and defines some evaluation softwares and reuse The measurement of property, such as public private reusability (public/private reuse).Lake and Cook has studied C++ software Metric question.Sharble and Cohen has studied the measurement of Object-Oriented Software Design.Lorenz proposes 11 object-orienteds Measurement, such as the par of method in averaging method scale (Loc), each class, in each class instance variable average, also Targetedly give the verification rule of some measurements.Chidamber and Kemerer elaborates that Object-Oriented Software Metric is studied the science By basis, 6 Object-Oriented Software Designs and complexity measure are proposed, such as method of weighting number WMC (Weighted Method Per Class), inheritance tree depth DIT (Depth of Inheritance Tree), degree of coupling CBO between class The measure of a set of object-orienteds such as (CouplingBetween Objects).Abreu is directed to the encapsulation of object-oriented software Property, inheritance, coupling and polymorphism propose include 6 Measure Indexes MOOD set of metrics.
Although having there is the research work in terms of many software complexity metrics at present, can be mentioned for the quality of understanding software For certain help, but still there is following deficiency:
(1) existing work focuses primarily upon the complexity of measurement code element itself, lacks to software total quality, such as The measurement of software stability.
(2) existing work focuses primarily upon the static analysis of software code, dynamic when lacking to software actual motion Analysis.Static analysis does not need runs software, relies solely on software source code, and the relationship between the element of extraction is actually one kind Relationship in the case of " the worst " may include extra relationship;Dynamic analysis need runs software, collect in software running process Element and element between relationship, representative is true interaction between element.Dynamic analysis are more more acurrate than static analysis.
(3) work on hand often only considers to whether there is interaction between element, has ignored the intensity interacted between element to measurement It is worth the influence of itself.
Software stability is a kind of important qualitative factor of software, and the invention proposes one kind to be measured based on software stability High-quality software recommendation method, by software dynamic analysis construct Measure Indexes measure software stability, existing work can be made up The deficiency of work, for understanding software, the high-quality software to select stability high from multiple intimate softwares provides technology It supports.
Summary of the invention
In view of the above-mentioned deficiencies in the prior art, it is an object of the present invention to provide a kind of based on the high-quality of software stability measurement Software recommendation method.
Above-mentioned technical problem of the invention is mainly to be addressed by following technical proposals: one kind is stablized based on software Property measurement high-quality software recommendation method, method includes the following steps:
(1) the method call procedural abstraction of the software for writing Java language at runtime be method call net FCN=(N, D).Wherein, N is the set of the method node in software;D={ < fi,fj>}(fi∈N,fj∈ N) be directed edge set, indicate Call relation between method, from fiIt is directed toward fj
(2) the FCN building class completed based on step (1) relies on net CDN=(Nc,Dc).Wherein, NcFor where method in FCN Class node set;Dc={ < ci,cj>}(ci∈Nc,cj∈Nc) be a directed edge set, indicate class between dependence Relationship, from ciIt is directed toward cj;Each edge in CDN will be endowed a nonnegative real number, the intensity value as dependence between class.
(3) CDN based on step (2) building calculates the stability s (i) of class node i, the stability as node respective class Metric.
(4) stability value for each class being calculated based on step (3), the stability of software for calculation entirety Stability。
(5) stability of multiple intimate softwares is calculated based on step (1)~(4), and according to their stability Descending arrangement is carried out, software in the top is high-quality software recommended to the user.
Further, the call relation between the method and method in above-mentioned steps (1) is according to the Java software in Java It is obtained in actual moving process on virtual machine, is a kind of dynamic analysis, and be not based on the static analysis of source code.
Further, the class in above-mentioned steps (2) is obtained according to the method in FCN.The class that method is defined in FCN As the class in CDN.Meanwhile the class in CDN is class, inner classes, the general designation of abstract class and interface in Java.
Further, the dependence in above-mentioned steps (2) between class is obtained according to the call relation between method in FCN , i.e., class include method between call relation if it exists, then there are dependences between corresponding class.
Further, the intensity value of the dependence in above-mentioned steps (2) between class is according to the calling between method in FCN What relationship obtained.
Further, the building of CDN specifically includes following sub-step in above-mentioned steps (2):
(2.1) all classes in FCN where method are extracted, the only node of building one does not have the CDN on side, i.e. CDN= (Nc,Dc=Φ).Φ representative edge collection is sky.
(2.2) a line < f in step (1) D is takeni,fj> ∈ D, according to fiAnd fjNaming rule determine its definition Class, it is assumed that fiIt is defined in class k, fjIt is defined in class p.If k ≠ p, and<k, p>not in DcIt is interior, then general<k, p>addition Dc, otherwise It is without any processing.
(2.3) side<k, p>on intensity value be defined as shared by the method directly or indirectly being had an impact to class k in class p Ratio, it may be assumed that
Wherein, mCnt (p) returns to the side operator (side operator for belonging to class p in FCN) for including in class p;Po (p) returns to class p It is middle may (there are a directed walks (inverse arrow direction) to reach in class k for the method in class p to side operator that class k has an impact Method, and the path, without other classes, such method is known as on the influential method of class k in class p);W (k, p) is Side<k, p>on intensity value.
(2.4) step (2.2) and (2.3) are repeated, until having traversed all sides in FCN.
Further, the calculating of the stability s (i) of class node i specifically includes following sub-step in above-mentioned steps (3):
(3.1) the weighting in-degree of all class nodes in CDN obtained by step (2) is sought.The weighting in-degree wi of class node iiDefinition For be connected in CDN with such node it is all enter side intensity value and, it may be assumed that
Wherein, viIt is neighbours' class node set of class node i;W (m, i) is side<m, i>on intensity value.
(3.2) the weighting out-degree of all class nodes in CDN obtained by step (2) is sought.The weighting out-degree wo of class node iiDefinition For be connected in CDN with such node it is all go out side intensity values and, it may be assumed that
Wherein, viIt is neighbours' class node set of class node i;W (i, m) is side<i, m>on intensity value.
(3.3) the weighting in-degree of the node i acquired based on step (3.1) and (3.2) and weighting out-degree, calculate node i's Stability s (i):
Further, in above-mentioned steps (4) software entirety stability stability is defined as:
Wherein, | Nc| return to NcIn class number of nodes.
Compared with prior art, the present invention has the advantages that:
(1) building of FCN and CDN is constructed based on the dynamic analysis of Java software at runtime in the present invention, is represented True interactive relation between method and method in software, between class and class, than the static analysis side based on software source code Method is more accurate, overcomes the existing problem of the software complexity metric work based on static analysis to a certain extent.
(2) the invention proposes a kind of high-quality software recommendation methods based on software stability measurement, pass through software dynamic Analysis constructs the interaction models between more accurate software element, and interaction intensity is incorporated in software stability measurement, is compensated for The deficiency of work on hand, for understanding software, the high-quality software to select stability high from multiple intimate softwares is mentioned For technical support.
Detailed description of the invention
The source code that Java language Fig. 1 of the invention is write;
The FCN of Fig. 2 the embodiment of the present invention building;
The only node of Fig. 3 the embodiment of the present invention building does not have the CDN on side;
The CDN comprising a line of Fig. 4 the embodiment of the present invention building;
The final CDN of Fig. 5 the embodiment of the present invention building.
Specific embodiment
Further description of the technical solution of the present invention by way of example and in conjunction with the accompanying drawings:
A kind of high-quality software recommendation method based on software stability measurement proposed by the present invention, the specific steps are as follows:
(1) the method call procedural abstraction of the software for writing Java language at runtime is a kind of software operational network- Method call net FCN=(N, D).Shown in FIG. 1 is a Java source code.The Java source code given according to Fig. 1, when its When being run on JVM, Calculator.main (String [] args) method is run first, is then passed through Calculator.main (String [] args) method call ADD.add (int augent, int addend) method, passes through Calculator.main (String [] args) method call SUB.sub1 (int augend, int addend) method; SUB.sub1 (int augend, int addend) calls SUB.sub2 (int augend, int when operation ) and ADD.add (int augent, int addend) addend.SUB.sub2 (int augend, int addend) is being run When call Calculator.mul (int augend, int addend) method.The above method is all according to " the class name side The form name of religious name parameter list ", be the complete name of each method.The operation shape of Java source code according to Fig. 1 Condition, available FCN as shown in Figure 2, the text on node side are the name of node correlation method.Wherein, N=main, Sub1, sub2, add, mul } be method node set (for simplicity, the class name of class where having ignored each method and each method Parameter list);D=<main,sub1>,<main,add>,<sub1,sub2>,<sub2,mul>,<sub2,add>it is oriented The set on side, the call relation between representation method.
(2) the FCN building class completed based on step (1) relies on net CDN=(Nc,Dc).The building of CDN specifically includes following Sub-step:
(2.1) all classes in FCN where method are extracted, the only node of building one does not have the CDN on side, i.e. CDN= (Nc,Dc=Φ).Φ representative edge collection is sky.The Java source code segment given according to Fig. 1 can construct corresponding CDN=(Nc, Dc=Φ) (as shown in Figure 3), wherein Nc={ Calculator, ADD, SUB } is the set of class node in source code, node side Text be node respective class name.
(2.2) a line < f in step (1) D is takeni,fj> ∈ D, according to fiAnd fjNaming rule determine its definition Class, it is assumed that fiIt is defined in class k, fjIt is defined in class p.If k ≠ p, and<k, p>not in DcIt is interior, then general<k, p>addition Dc, otherwise It is without any processing.As shown in Fig. 2, if taking side<sub2,mul>, because sub2 is defined in SUB class, mul is in class Calculator Middle definition, and SUB and Calculator are not same class, therefore will<sub2,mul>d is addedc
(2.3) side<k, p>on intensity value be defined as shared by the method directly or indirectly being had an impact to class k in class p Ratio, it may be assumed that
Wherein, mCnt (p) returns to the side operator (side operator for belonging to class p in FCN) for including in class p;Po (p) returns to class p It is middle may (there are a directed walks (inverse arrow direction) to reach in class k for the method in class p to side operator that class k has an impact Method, and the path is without other classes.Such method is known as on the influential method of class k in class p);W (k, p) is Side<k, p>on intensity value.As shown in Fig. 2, because mul by mul ← sub2 influence sub2, po (mul)=| { mul } | =1, while mCnt (p)=| { main, mul } |=2, so w (sub2, mul)=1/2.
(2.4) step (2.2) and (2.3) are repeated, until having traversed all sides in FCN, it is available it is shown in fig. 5 most Whole CDN.
(3) CDN based on step (2) building calculates the stability s (i) of class node i, the stability as node respective class Metric.The calculating of the stability s (i) of class node i specifically includes following sub-step:
(3.1) the weighting in-degree of all class nodes in CDN obtained by step (2) is sought.The weighting in-degree wi of class node iiDefinition For be connected in CDN with such node it is all enter side intensity value and, it may be assumed that
Wherein, viIt is neighbours' class node set of class node i;W (m, i) is side<m, i>on intensity value.Therefore, in Fig. 5 The weighting in-degree wi of class node CalculatorCalculatorThe weighting in-degree of=1/2, SUB are wiSUBThe weighting in-degree of=1, ADD wiADDThe weighting degree of=1, ADD are wiADD=1+1=2.
(3.2) the weighting out-degree of all class nodes in CDN obtained by step (2) is sought.The weighting out-degree wo of class node iiDefinition For be connected in CDN with such node it is all go out side intensity values and, it may be assumed that
Wherein, viIt is neighbours' class node set of class node i;W (i, m) is side<i, m>on intensity value.Therefore, in Fig. 5 The weighting out-degree wo of class node CalculatorCalculatorThe weighting out-degree of=1+1=2, SUB are woSUB=1+1+1/2= 2.5, ADD weighting out-degree is woADD=0.
(3.3) the weighting in-degree of the node i acquired based on step (3.1) and (3.2) and weighting out-degree, calculate node i's Stability s (i):
Therefore, in Fig. 5 class node Calculator s (Calculator)=(1/2)/(1/2+2)=0.2, SUB s (SUB)=1/ the s (ADD)=2/ (2+0)=1 of (1+2.5)=0.29, ADD.
(4) stability value for each class being calculated based on step (3), the stability of software for calculation entiretyTherefore, its stability value of code shown in FIG. 1 is stability=(0.2+0.29+1)/3= 0.50。
(5) stability of multiple intimate softwares is calculated based on step (1)~(4), and according to their stability Descending arrangement is carried out, software in the top is high-quality software recommended to the user.Assuming that other 1 function phase is calculated Stability like software is 0.4, then is 0.5 > 0.4 according to the result that their stability descending arranges.It therefore, can be by ranking First software (0.5 corresponding software) is recommended as high-quality software.
Specific embodiment described herein is only an example for the spirit of the invention, and embodiment is in reality A kind of possible situation, but do not represent all situations and be not always the case.Those skilled in the art can be with It makes various modifications or additions to the described embodiments or is substituted in a similar manner, but without departing from this The spirit or beyond the scope defined by the appended claims of invention.

Claims (8)

1. a kind of high-quality software recommendation method based on software stability measurement, which comprises the following steps:
(1) the method call procedural abstraction of the software for writing Java language at runtime is method call net FCN=(N, D). Wherein, N is the set of the method node in software;D={ < fi,fj>}(fi∈N,fj∈ N) be directed edge set, expression side Call relation between method, from fiIt is directed toward fj
(2) the FCN building class completed based on step (1) relies on net CDN=(Nc,Dc).Wherein, NcFor the class where method in FCN The set of node;Dc={ < ci,cj>}(ci∈Nc,cj∈Nc) be a directed edge set, indicate class between dependence, From ciIt is directed toward cj;Each edge in CDN will be endowed a nonnegative real number, the intensity value as dependence between class.
(3) CDN based on step (2) building calculates the stability s (i) of class node i, the stability metric as node respective class Value.
(4) stability value for each class being calculated based on step (3), the stability Stability of software for calculation entirety.
(5) stability of multiple intimate softwares is calculated based on step (1)~(4), and is carried out according to their stability Descending arrangement, software in the top is high-quality software recommended to the user.
2. a kind of high-quality software recommendation method based on software stability measurement according to claim 1, which is characterized in that institute The call relation between method and method in the step of stating (1) is according to Java software actual motion mistake on a java virtual machine It is obtained in journey, is a kind of dynamic analysis, and be not based on the static analysis of source code.
3. a kind of high-quality software recommendation method based on software stability measurement according to claim 1, which is characterized in that institute Class in the step of stating (2) is obtained according to the method in FCN.The class that method is defined in FCN becomes the class in CDN.Together When, the class in CDN is class, inner classes, the general designation of abstract class and interface in Java.
4. a kind of high-quality software recommendation method based on software stability measurement according to claim 1, which is characterized in that institute Dependence in the step of stating (2) between class is obtained according to the call relation between method in FCN, i.e. the class method that includes Between call relation if it exists, then there are dependences between corresponding class.
5. a kind of high-quality software recommendation method based on software stability measurement according to claim 1, which is characterized in that institute The intensity value of dependence in the step of stating (2) between class is obtained according to the call relation between method in FCN.
6. a kind of high-quality software recommendation method based on software stability measurement according to claim 1, which is characterized in that institute The building of CDN specifically includes following sub-step in the step of stating (2):
(2.1) all classes in FCN where method are extracted, the only node of building one does not have the CDN on side, i.e. CDN=(Nc,Dc= Φ).Φ representative edge collection is sky.
(2.2) a line < f in step (1) D is takeni,fj> ∈ D, according to fiAnd fjNaming rule determine its definition class, it is assumed that fiIt is defined in class k, fjIt is defined in class p.If k ≠ p, and<k, p>not in DcIt is interior, then general<k, p>addition Dc, otherwise do not appoint Where reason.
(2.3) side<k, p>on intensity value be defined as ratio shared by the method directly or indirectly having an impact to class k in class p, That is:
Wherein, mCnt (p) returns to the side operator for including in class p;Po (p) is returned may be to the side operator that class k has an impact in class p (method in class p reaches the method in class k there are a directed walk, and the path is without other classes, in class p in this way Method be known as on the influential method of class k);W (k, p) is side<k, p>on intensity value.
(2.4) step (2.2) and (2.3) are repeated, until having traversed all sides in FCN.
7. a kind of high-quality software recommendation method based on software stability measurement according to claim 1, which is characterized in that institute The calculating of the stability s (i) of class node i specifically includes following sub-step in the step of stating (3):
(3.1) the weighting in-degree of all class nodes in CDN obtained by step (2) is sought.The weighting in-degree wi of class node iiIt is defined as CDN In be connected with such node it is all enter side intensity value and, it may be assumed that
Wherein, viIt is neighbours' class node set of class node i;W (m, i) is side<m, i>on intensity value.
(3.2) the weighting out-degree of all class nodes in CDN obtained by step (2) is sought.The weighting out-degree wo of class node iiIt is defined as CDN In be connected with such node it is all go out side intensity values and, it may be assumed that
Wherein, viIt is neighbours' class node set of class node i;W (i, m) is side<i, m>on intensity value.
(3.3) the weighting in-degree of the node i acquired based on step (3.1) and (3.2) and weighting out-degree, the stabilization of calculate node i Property s (i):
8. a kind of high-quality software recommendation method based on software stability measurement according to claim 1, which is characterized in that institute The stability stability of software entirety in the step of stating (4) is defined as:
Wherein, | Nc| return to NcIn class number of nodes.
CN201910033598.7A 2019-01-14 2019-01-14 High-quality software recommendation method based on software stability measurement Active CN109947428B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910033598.7A CN109947428B (en) 2019-01-14 2019-01-14 High-quality software recommendation method based on software stability measurement

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910033598.7A CN109947428B (en) 2019-01-14 2019-01-14 High-quality software recommendation method based on software stability measurement

Publications (2)

Publication Number Publication Date
CN109947428A true CN109947428A (en) 2019-06-28
CN109947428B CN109947428B (en) 2022-04-26

Family

ID=67007256

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910033598.7A Active CN109947428B (en) 2019-01-14 2019-01-14 High-quality software recommendation method based on software stability measurement

Country Status (1)

Country Link
CN (1) CN109947428B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021087648A1 (en) * 2019-11-04 2021-05-14 Merico, Inc. Systems and methods for evaluating code contributions by software developers

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104932944A (en) * 2015-06-15 2015-09-23 浙江金大科技有限公司 Cloud computing resource service combination method based on weighted bipartite graph
CN105389192A (en) * 2015-12-18 2016-03-09 浙江工商大学 Method for measuring importance of software class based on weighted q2 index
CN106293800A (en) * 2015-06-29 2017-01-04 中兴通讯股份有限公司 Software recommendation method and device
US9830392B1 (en) * 2013-12-18 2017-11-28 BloomReach Inc. Query-dependent and content-class based ranking
CN107608872A (en) * 2016-07-11 2018-01-19 北京京东尚科信息技术有限公司 A kind of horizontal method and apparatus of the modularization of inspection software system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9830392B1 (en) * 2013-12-18 2017-11-28 BloomReach Inc. Query-dependent and content-class based ranking
CN104932944A (en) * 2015-06-15 2015-09-23 浙江金大科技有限公司 Cloud computing resource service combination method based on weighted bipartite graph
CN106293800A (en) * 2015-06-29 2017-01-04 中兴通讯股份有限公司 Software recommendation method and device
CN105389192A (en) * 2015-12-18 2016-03-09 浙江工商大学 Method for measuring importance of software class based on weighted q2 index
CN107608872A (en) * 2016-07-11 2018-01-19 北京京东尚科信息技术有限公司 A kind of horizontal method and apparatus of the modularization of inspection software system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
潘伟丰等: ""基于软件网络的服务自动分类和推荐方法研究"", 《2011年中国计算机学会服务计算学术会议(CCF NCSC2011)论文集》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021087648A1 (en) * 2019-11-04 2021-05-14 Merico, Inc. Systems and methods for evaluating code contributions by software developers
US11816017B2 (en) 2019-11-04 2023-11-14 Merico, Inc. Systems and methods for evaluating code contributions by software developers

Also Published As

Publication number Publication date
CN109947428B (en) 2022-04-26

Similar Documents

Publication Publication Date Title
US9361077B1 (en) Hierarchical dependency analysis of source code
Kagdi et al. Assigning change requests to software developers
US8898072B2 (en) Optimizing electronic display of advertising content
US20160092336A1 (en) Code analysis for cloud-based integrated development environments
Alcocer et al. Performance evolution blueprint: Understanding the impact of software evolution on performance
CN103839172B (en) Method of Commodity Recommendation and system
Saviankou et al. Cube v4: From performance report explorer to performance analysis tool
CN103748584B (en) Automatic detection of item lists within a web page
US9495282B2 (en) Method and systems for a dashboard testing framework in an online demand service environment
CN107958007A (en) Case information search method and device
WO2016181368A1 (en) Method implemented by a computer that presents software-type applications based on design specifications
CN114365095A (en) System and method for evaluating code contribution of software developer
CN107644100A (en) Information processing method, device and system and computer-readable recording medium
KR100987330B1 (en) A system and method generating multi-concept networks based on user&#39;s web usage data
US20180089154A1 (en) Computer implemented system and method for transforming web content for display on multiple form factors
CN109947428A (en) A kind of high-quality software recommendation method based on software stability measurement
Bessghaier et al. On the detection of structural aesthetic defects of android mobile user interfaces with a metrics-based tool
US11947441B2 (en) Visual testing of implemented product code from a codified user experience design
CN106445934A (en) Data processing method and apparatus
Gerlec et al. A programming language independent framework for metrics-based software evolution and analysis
Lee et al. A user experience evaluation framework for mobile usability
Miranda et al. Using reverse engineering techniques to infer a system use case model
Shaw et al. Mining android apps to predict market ratings
Yang Measuring indirect coupling
Lee et al. A user-centered approach for ubiquitous service evaluation: an evaluation metrics focused on human-system interaction capability

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