Movatterモバイル変換


[0]ホーム

URL:


CN118535834A - A scoring method, system, and computer storage medium for open source components - Google Patents

A scoring method, system, and computer storage medium for open source components
Download PDF

Info

Publication number
CN118535834A
CN118535834ACN202410693934.1ACN202410693934ACN118535834ACN 118535834 ACN118535834 ACN 118535834ACN 202410693934 ACN202410693934 ACN 202410693934ACN 118535834 ACN118535834 ACN 118535834A
Authority
CN
China
Prior art keywords
open source
score
source component
tested
difference
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.)
Pending
Application number
CN202410693934.1A
Other languages
Chinese (zh)
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.)
State Grid E Commerce Technology Co Ltd
Original Assignee
State Grid E Commerce Technology 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 State Grid E Commerce Technology Co LtdfiledCriticalState Grid E Commerce Technology Co Ltd
Priority to CN202410693934.1ApriorityCriticalpatent/CN118535834A/en
Publication of CN118535834ApublicationCriticalpatent/CN118535834A/en
Pendinglegal-statusCriticalCurrent

Links

Classifications

Landscapes

Abstract

The invention relates to the technical field of computers, and discloses a scoring method of an open source assembly, which comprises the following steps: acquiring basic information of any similar open source component with similar functions to those of the open source component to be tested; independently scoring each factor influencing the scoring of the open source component to be tested through the basic information; obtaining multi-dimensional user evaluation data of each factor, wherein the multi-dimensional user evaluation data comprises an evaluation total number xi Total (S)={x1 Total (S),x2 Total (S),x3 Total (S),……,x7 Total (S) of each factor and a difference evaluation number xi Difference of difference={x1 Difference of difference,x2 Difference of difference,x3 Difference of difference,……,x7 Difference of difference of each factor: and calculating the weight ki={k1,k2,k3,……,k7 corresponding to the score ai={a1,a2,a3,……,a7 of each factor according to the multidimensional user evaluation data, and obtaining the comprehensive score s of the to-be-detected open source component according to the weight ki of each factor and the score ai of the independent score of each factor.

Description

Translated fromChinese
一种开源组件的评分方法、系统、及计算机储存介质A scoring method, system, and computer storage medium for open source components

技术领域Technical Field

本发明涉及计算机技术领域,特别是涉及一种开源组件的评分方法、系统、及计算机储存介质。The present invention relates to the field of computer technology, and in particular to a scoring method and system for open source components, and a computer storage medium.

背景技术Background Art

开源组件,指的是通过开源许可证声明该软件在指定条件下可用于商业应用,再进行分发和使用,从而使其成为商业和非商业软件项目中的受欢迎的选择。Open source components refer to software that is distributed and used under specified conditions and declared to be available for commercial applications through an open source license, making it a popular choice in commercial and non-commercial software projects.

但是,功能相同、相似的开源组件在开源社区中通常有很多。这是因为在软件开发中存在各种技术和框架,不同的开发者会选择不同的技术来实现类似的功能,这就会产生多个功能相似但实现方式不同的开源组件。参差不齐的开源组件给用户在选择时造成了极大的困难。However, there are usually many open source components with the same or similar functions in the open source community. This is because there are various technologies and frameworks in software development, and different developers will choose different technologies to implement similar functions, which will produce multiple open source components with similar functions but different implementation methods. The uneven open source components make it extremely difficult for users to choose.

目前,用户对相似开源组件进行评分的方法为对待测开源组件的某一影响因素进行单独评分,从而得出该待测开源组件的评分,例如在公开号为CN117407885A,专利名称为风险评估方法、装置、电子设备及计算机存储介质的专利申请中,该专利仅仅从开源组件的漏洞数这一方面对开源组件进行评分,显然这是不够全面的。Currently, the method for users to score similar open source components is to score a certain influencing factor of the open source component to be tested separately, thereby obtaining a score for the open source component to be tested. For example, in the patent application with publication number CN117407885A and patent name "Risk Assessment Method, Device, Electronic Device and Computer Storage Medium", the patent only scores the open source components based on the number of vulnerabilities of the open source components, which is obviously not comprehensive enough.

发明内容Summary of the invention

本发明要解决的技术问题是:解决目前对开源组件进行评分的方法不够全面的问题。The technical problem to be solved by the present invention is to solve the problem that the current method for scoring open source components is not comprehensive enough.

为了解决上述技术问题,本发明提供了一种开源组件的评分方法,其特征在于,所述评分方法包括:In order to solve the above technical problems, the present invention provides a scoring method for open source components, characterized in that the scoring method includes:

获取任一与待测开源组件功能相似的相似开源组件的基础信息,所述基础信息包括所述相似开源组件的平均引入量、所述待测开源组件的网络引入量、所述待测开源组件的网络评分、网络评分的满分、所述待测开源组件的网络评分某公司对所述待测开源组件的引入量、某公司对所述相似开源组件的引入量、所述待测开源组件的运行次数、所述待测开源组件运行的偏差、高危安全漏洞个数、中危安全漏洞个数、低危安全漏洞个数、提示级安全漏洞个数、高危功能漏洞个数、中危功能漏洞个数、低危功能漏洞个数、提示级功能漏洞个数、一定量用户并发下的响应时间、待测开源组件的月更新次数、相似开源软件的平均月更新次数、所述待测开源组件的许可类型数、所述相似开源组件的许可总类型数;Obtain basic information of any similar open source component with similar functions to the open source component to be tested, the basic information including the average introduction amount of the similar open source component, the network introduction amount of the open source component to be tested, the network score of the open source component to be tested, the full score of the network score, the network score of the open source component to be tested, the introduction amount of the open source component to be tested by a certain company, the introduction amount of the similar open source component by a certain company, the number of operations of the open source component to be tested, the deviation of the operation of the open source component to be tested, the number of high-risk security vulnerabilities, the number of medium-risk security vulnerabilities, the number of low-risk security vulnerabilities, the number of warning-level security vulnerabilities, the number of high-risk functional vulnerabilities, the number of medium-risk functional vulnerabilities, the number of low-risk functional vulnerabilities, the number of warning-level functional vulnerabilities, the response time under a certain number of concurrent users, the monthly update number of the open source component to be tested, the average monthly update number of similar open source software, the number of license types of the open source component to be tested, and the total number of license types of the similar open source components;

通过所述基础信息对影响所述待测开源组件的评分的各个因子进行单独评分,所述因子进行单独评分的分值ai包括使用频率的分值a1、方法稳定性的分值a2、安全漏洞的分值a3、功能漏洞的分值a4、性能的分值a5、更新频率的分值a6、许可类型的分值a7Using the basic information, each factor that affects the score of the open source component to be tested is scored separately, and the scoresai for the factors scored separately include a scorea1 for usage frequency, a scorea2 for method stability, a scorea3 for security vulnerability, a scorea4 for functional vulnerability, a scorea5 for performance, a scorea6 for update frequency, and a scorea7 for license type;

获取各个所述因子的多维用户评价数据,所述多维用户评价数据包括各个所述因子的评价总条数xi总={x1总,x2总,x3总,……,x7总}和各个所述因子的差评条数xi差={x1差,x2差,x3差,……,x7差}:Obtain multidimensional user evaluation data for each of the factors, wherein the multidimensional user evaluation data includes the total number of evaluations of each of the factors xi total = {x1 total , x2 total , x3 total , ..., x7 total } and the number of negative reviews of each of the factors xi difference = {x1 difference , x 2difference , x3 difference , ..., x7 difference }:

根据所述多维用户评价数据计算出每个所述因子的分值ai={a1,a2,a3,……,a7}对应的权重ki={k1,k2,k3,……,k7},所述权重ki的公式为The weight ki ={k1 ,k2 ,k3 ,...,k7 } corresponding to the score ai ={a1 ,a2 ,a3 ,...,a7 } of each factor is calculated according to the multi-dimensional user evaluation data. The formula of the weight ki is:

根据所述待测开源组件的各个所述因子的权重ki和所述待测开源组件评分的各个所述因子的单独评分的分值ai得到所述待测开源组件的综合评分s。The comprehensive score s of the open source component to be tested is obtained according to the weights ki of the factors of the open source component to be tested and the scores ai of the individual scores of the factors of the score of the open source component to be tested.

更进一步地,所述使用频率的分值a1的评分计算公式为Furthermore, the scoring formula for the frequency of use scorea1 is:

其中,Q为所述待测开源组件的网络引入量;R为相似开源组件的平均引入量;P为所述待测开源组件的网络评分;S为所述网络评分的满分;M为某公司对所述待测开源组件的引入量;N为某公司对所述相似开源组件的引入量;α+β+θ=100,20≤α=β≤30。Among them, Q is the network introduction amount of the open source component to be tested; R is the average introduction amount of similar open source components; P is the network score of the open source component to be tested; S is the full score of the network score; M is the introduction amount of the open source component to be tested by a certain company; N is the introduction amount of the similar open source component by a certain company; α+β+θ=100, 20≤α=β≤30.

更进一步地,所述方法稳定性的分值a2的评分计算公式为Furthermore, the scoring formula for calculating the stability scorea2 of the method is:

其中,c为所述待测开源组件的运行次数,d为所述待测开源组件运行c次的偏差。Wherein, c is the number of times the open source component to be tested is run, and d is the deviation of the open source component to be tested being run c times.

更进一步地,所述安全漏洞的分值a3的评分计算公式为Furthermore, the score calculation formula of the security vulnerability scorea3 is:

其中,高危安全漏洞个数为U1,中危安全漏洞个数为V1,低危安全漏洞个数为W1,提示级安全漏洞个数为X1个。Among them, the number of high-risk security vulnerabilities is U1 , the number of medium-risk security vulnerabilities is V1 , the number of low-risk security vulnerabilities is W1 , and the number of warning-level security vulnerabilities is X1 .

更进一步地,所述功能漏洞的分值a4的评分计算公式为Furthermore, the score calculation formula for the functional vulnerability score a4 is:

其中,高危功能漏洞个数为U2,中危功能漏洞个数为V2,低危功能漏洞个数为W2,提示级功能漏洞个数为X2个。Among them, the number of high-risk functional vulnerabilities is U2 , the number of medium-risk functional vulnerabilities is V2 , the number of low-risk functional vulnerabilities is W2 , and the number of warning-level functional vulnerabilities is X2 .

更进一步地,所述性能的分值a5的评分计算公式为Furthermore, the score calculation formula of the performance score a5 is:

其中,t为一定量用户并发下的响应时间。Among them, t is the response time under a certain number of concurrent users.

更进一步地,所述更新频率的分值a6的评分计算公式为Furthermore, the score calculation formula for the update frequency scorea6 is:

其中,e为待测开源组件的月更新次数,f为相似开源软件的平均月更新次数。Among them, e is the monthly update number of the open source component to be tested, and f is the average monthly update number of similar open source software.

更进一步地,所述许可类型的分值a7的评分计算公式为Furthermore, the score calculation formula for the license type score a7 is:

其中,m为所述待测开源组件的许可类型数,n为相似开源组件的许可总类型数。Wherein, m is the number of license types of the open source component to be tested, and n is the total number of license types of similar open source components.

根据本发明的另一方面,提供一种开源组件评分系统,包括:According to another aspect of the present invention, there is provided an open source component scoring system, comprising:

信息获取模块,用于获取任一与待测开源组件功能相似的相似开源组件的基础信息,所述基础信息包括所述相似开源组件的平均引入量、所述待测开源组件的网络引入量、所述待测开源组件的网络评分、网络评分的满分、所述待测开源组件的网络评分某公司对所述待测开源组件的引入量、某公司对所述相似开源组件的引入量、所述待测开源组件的运行次数、所述待测开源组件运行的偏差、高危安全漏洞个数、中危安全漏洞个数、低危安全漏洞个数、提示级安全漏洞个数、高危功能漏洞个数、中危功能漏洞个数、低危功能漏洞个数、提示级功能漏洞个数、一定量用户并发下的响应时间、待测开源组件的月更新次数、相似开源软件的平均月更新次数、所述待测开源组件的许可类型数、所述相似开源组件的许可总类型数;an information acquisition module, for acquiring basic information of any similar open source component with similar functions to the open source component to be tested, wherein the basic information includes an average introduction amount of the similar open source component, a network introduction amount of the open source component to be tested, a network score of the open source component to be tested, a full score of the network score, a network score of the open source component to be tested, an introduction amount of the open source component to be tested by a certain company, an introduction amount of the similar open source component by a certain company, an operation number of the open source component to be tested, an operation deviation of the open source component to be tested, a number of high-risk security vulnerabilities, a number of medium-risk security vulnerabilities, a number of low-risk security vulnerabilities, a number of warning-level security vulnerabilities, a number of high-risk functional vulnerabilities, a number of medium-risk functional vulnerabilities, a number of low-risk functional vulnerabilities, a number of warning-level functional vulnerabilities, a response time under a certain number of concurrent users, a monthly update number of the open source component to be tested, an average monthly update number of similar open source software, a number of license types of the open source component to be tested, and a total number of license types of the similar open source component;

分量计算模块,用于通过所述基础信息对影响所述待测开源组件的评分的各个因子进行单独评分,所述因子进行单独评分的分值ai包括使用频率的分值a1、方法稳定性的分值a2、安全漏洞的分值a3、功能漏洞的分值a4、性能的分值a5、更新频率的分值a6、许可类型的分值a7A component calculation module, used to separately score each factor affecting the score of the open source component to be tested based on the basic information, wherein the scoresai for the separate scores of the factors includea1 for the frequency of use,a2 for the method stability,a3 for the security vulnerability,a4 for the functional vulnerability,a5 for the performance,a6 for the update frequency, anda7 for the license type;

数据收集模块,用于获取各个所述因子的多维用户评价数据,所述多维用户评价数据包括各个所述因子的评价总条数xi总={x1总,x2总,x3总,……,x7总}和各个所述因子的差评条数xi差={x1差,x2差,x3差,……,x7差}:A data collection module is used to obtain multidimensional user evaluation data of each of the factors, wherein the multidimensional user evaluation data includes the total number of evaluations of each of the factors xi total = {x1 total , x2 total , x3 total , ..., x7 total } and the number of negative reviews of each of the factors xi difference = {x1 difference , x2 difference , x3 difference , ..., x7 difference }:

权重确定模块,根据所述多维用户评价数据计算出每个所述因子的分值ai={a1,a2,a3,……,a7}对应的权重ki={k1,k2,k3,……,k7},所述权重ki的公式为The weight determination module calculates the weight ki ={k1 ,k2 ,k3 ,...,k7 } corresponding to the score ai ={a1 ,a2 ,a3 ,...,a7 } of each factor according to the multi-dimensional user evaluation data. The formula of the weight ki is:

综合计算模块,根据所述待测开源组件的各个所述因子的权重ki和所述待测开源组件评分的各个所述因子的单独评分的分值ai得到所述待测开源组件的综合评分s。The comprehensive calculation module obtains the comprehensive score s of the open source component to be tested according to the weights ki of the factors of the open source component to be tested and the scores ai of the individual scores of the factors of the score of the open source component to be tested.

根据本发明的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,该计算机指令用于使计算机执行本发明实施例中任一开源组件的方法。According to another aspect of the present invention, a non-transitory computer-readable storage medium storing computer instructions is provided, wherein the computer instructions are used to enable a computer to execute any open source component method in the embodiments of the present invention.

本发明实施例一种与现有技术相比,其有益效果在于:Compared with the prior art, the embodiment of the present invention has the following beneficial effects:

本发明实施例通过对待测开源组件的各因子进行单独评分,然后根据七因子的重要程度分别设置不同的权重,进而将各个因子的单独评分和各因子所对应的权重进行处理得到待测开源组件的综合评分,这种方法从待测开源组件的七个方面对待测开源组件进行评分,相较于目前对开源组件的某一方面进行评分而得出开源组件的评分结果,该方法更全面立体,由于考虑待测开源组件的影响其评分的因素更多,因此得出的待测开源组件的评分结果的可信度也更高。The embodiment of the present invention scores each factor of the open source component to be tested separately, and then sets different weights according to the importance of the seven factors, and then processes the separate scores of each factor and the weights corresponding to each factor to obtain a comprehensive score of the open source component to be tested. This method scores the open source component to be tested from seven aspects of the open source component to be tested. Compared with the current method of scoring a certain aspect of the open source component to obtain the scoring result of the open source component, this method is more comprehensive and three-dimensional. Since more factors affecting the scoring of the open source component to be tested are considered, the credibility of the scoring result of the open source component to be tested is also higher.

附图说明BRIEF DESCRIPTION OF THE DRAWINGS

图1是本发明实施例提供的开源组件的评分方法的流程图;FIG1 is a flow chart of a scoring method for open source components provided by an embodiment of the present invention;

图2是本发明实施例提供的开源组件的评分系统的示意图;FIG2 is a schematic diagram of a scoring system for open source components provided by an embodiment of the present invention;

图3是用来实现本发明实施例的电子设备的框图。FIG. 3 is a block diagram of an electronic device for implementing an embodiment of the present invention.

图中,10、信息获取模块;20、分量计算模块;30、数据收集模块;40、权重确定模块;50、综合计算模块;600、电子设备;601、计算单元;602、ROM;603、RAM;604、总线;605、I/O接口;606、输入单元;607、输出单元;608、存储单元;609、通信单元。In the figure, 10, information acquisition module; 20, component calculation module; 30, data collection module; 40, weight determination module; 50, comprehensive calculation module; 600, electronic device; 601, calculation unit; 602, ROM; 603, RAM; 604, bus; 605, I/O interface; 606, input unit; 607, output unit; 608, storage unit; 609, communication unit.

具体实施方式DETAILED DESCRIPTION

以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。The following is a description of exemplary embodiments of the present invention in conjunction with the accompanying drawings, including various details of the embodiments of the present invention to facilitate understanding, which should be considered as merely exemplary. Therefore, it should be recognized by those of ordinary skill in the art that various changes and modifications may be made to the embodiments described herein without departing from the scope of the present invention. Similarly, for clarity and conciseness, the description of well-known functions and structures is omitted in the following description.

如图1所示,在本发明的一个可选实施例中,所述评分方法包括:As shown in FIG1 , in an optional embodiment of the present invention, the scoring method includes:

S100,获取任一与待测开源组件功能相似的相似开源组件的基础信息,所述基础信息包括所述相似开源组件的平均引入量、所述待测开源组件的网络引入量、所述待测开源组件的网络评分、网络评分的满分、所述待测开源组件的网络评分某公司对所述待测开源组件的引入量、某公司对所述相似开源组件的引入量、所述待测开源组件的运行次数、所述待测开源组件运行的偏差、高危安全漏洞个数、中危安全漏洞个数、低危安全漏洞个数、提示级安全漏洞个数、高危功能漏洞个数、中危功能漏洞个数、低危功能漏洞个数、提示级功能漏洞个数、一定量用户并发下的响应时间、待测开源组件的月更新次数、相似开源软件的平均月更新次数、所述待测开源组件的许可类型数、所述相似开源组件的许可总类型数;S200,通过所述基础信息对影响所述待测开源组件的评分的各个因子进行单独评分,所述因子进行单独评分的分值ai包括使用频率的分值a1、方法稳定性的分值a2、安全漏洞的分值a3、功能漏洞的分值a4、性能的分值a5、更新频率的分值a6、许可类型的分值a7;S300,获取各个所述因子的多维用户评价数据,所述多维用户评价数据包括各个所述因子的评价总条数xi总={x1总,x2总,x3总,……,x7总}和各个所述因子的差评条数xi差={x1差,x2差,x3差,……,x7差}:S400,根据所述多维用户评价数据计算出每个所述因子的分值ai={a1,a2,a3,……,a7}对应的权重ki={k1,k2,k3,……,k7},所述权重ki的公式为S100, obtaining basic information of any similar open source component with similar functions to the open source component to be tested, the basic information including the average introduction amount of the similar open source component, the network introduction amount of the open source component to be tested, the network score of the open source component to be tested, the full score of the network score, the network score of the open source component to be tested, the introduction amount of the open source component to be tested by a certain company, the introduction amount of the similar open source component by a certain company, the number of operations of the open source component to be tested, the deviation of the operation of the open source component to be tested, the number of high-risk security vulnerabilities, the number of medium-risk security vulnerabilities, the number of low-risk security vulnerabilities, the number of warning-level security vulnerabilities, the number of high-risk functional vulnerabilities, the number of medium-risk functional vulnerabilities, the number of low-risk functional vulnerabilities, the number of warning-level functional vulnerabilities, the response time under a certain number of concurrent users, the number of monthly updates of the open source component to be tested, the average number of monthly updates of similar open source software, the number of license types of the open source component to be tested, and the total number of license types of the similar open source component; S200, scoring each factor affecting the score of the open source component to be tested separately through the basic information, and the score of the factor scored separately is ai includes a scorea1 for usage frequency, a scorea2 for method stability, a scorea3 for security vulnerability, a scorea4 for functional vulnerability, a scorea5 for performance, a scorea6 for update frequency, and a scorea7 for license type; S300, obtaining multidimensional user evaluation data of each of the factors, the multidimensional user evaluation data including a total number of evaluations of each of the factors xitotal ={x1total ,x2total ,x3total , ...,x7total } and a number of negative reviews of each of the factors xidifference ={x1difference, x2difference,x3difference , ...,x7difference }: S400, calculating a weight k i ={k1 , k2 , k 3 , ..., k 7 } corresponding to the score ai ={a1 , a2 , a3 , ..., a7 } of each of the factors according to the multidimensional user evaluation data, the weight ki ={k1 , k2 , k3 , ..., k7 } The formula fori is

S500,根据所述待测开源组件的各个所述因子的权重ki和所述待测开源组件评分的各个所述因子的单独评分的分值ai得到所述待测开源组件的综合评分s。S500: Obtain a comprehensive score s of the open source component to be tested according to the weights ki of the factors of the open source component to be tested and the scores ai of the individual scores of the factors of the score of the open source component to be tested.

其中,使用频率的分值a1指的是该开源组件被用户使用的频率或者被其他软件项目所采用的频率,它反映了该组件在实际应用中的普及程度或者被广泛采用的程度。方法稳定性的分值指的是开源组件中提供的方法或功能的稳定性程度。这包括了方法的可靠性、稳定性和容错性,它反映了开发者在使用该组件时能够依赖其提供的功能而不会出现意外行为或崩溃的程度。安全漏洞的分值指的是开源组件存在安全漏洞的程度。这包括已知的漏洞数量、漏洞的严重程度以及对这些漏洞的及时修复程度。安全漏洞是指可能被黑客利用或导致系统遭受损害的软件缺陷或漏洞。Among them, the score of frequency of usea1 refers to the frequency with which the open source component is used by users or adopted by other software projects, which reflects the popularity of the component in practical applications or the degree to which it is widely adopted. The score of method stability refers to the degree of stability of the methods or functions provided in the open source component. This includes the reliability, stability and fault tolerance of the method, which reflects the degree to which developers can rely on the functions provided by the component without unexpected behavior or crashes when using it. The score of security vulnerabilities refers to the degree to which open source components have security vulnerabilities. This includes the number of known vulnerabilities, the severity of the vulnerabilities, and the degree to which these vulnerabilities are repaired in a timely manner. Security vulnerabilities refer to software defects or loopholes that can be exploited by hackers or cause damage to the system.

具体地,在S300中,获取各个所述因子的多维用户评价数据,可以通过用户反馈、社区讨论、在线论坛等途径获取。例如用户反馈:设置用户反馈通道,收集用户对于待测开源组件各个因子的评价信息。这些评价信息包括使用频率、安全漏洞、性能等方面的用户评价。通过以上渠道收集到用户评价信息,用于统计每个因子的评价总条数和差评条数,将其作为评价数据的重要参考。这些数据用于计算每个因子的权重,进而得出待测开源组件的综合评分。Specifically, in S300, multi-dimensional user evaluation data of each of the factors is obtained, which can be obtained through user feedback, community discussions, online forums, etc. For example, user feedback: set up a user feedback channel to collect user evaluation information on each factor of the open source component to be tested. These evaluation information include user evaluations on frequency of use, security vulnerabilities, performance, etc. The user evaluation information collected through the above channels is used to count the total number of evaluations and the number of negative reviews for each factor, which is used as an important reference for evaluation data. These data are used to calculate the weight of each factor, and then derive the comprehensive score of the open source component to be tested.

在S500中,将各个因子对应的评分与对应的权重相乘后求和就可以得到综合评分的结果,在计算待测开源组件的综合评分时,根据各个因子的权重和单独评分的分值计算出的综合评分可以反映出待测开源组件的整体质量水平,可以帮助用户在选择开源组件时进行决策,并对其有益效果进行初步估计。In S500, the score corresponding to each factor is multiplied by the corresponding weight and then summed up to obtain the comprehensive score result. When calculating the comprehensive score of the open source component to be tested, the comprehensive score calculated based on the weight of each factor and the score of the individual score can reflect the overall quality level of the open source component to be tested, which can help users make decisions when selecting open source components and make a preliminary estimate of their beneficial effects.

在本发明实施例中,本发明实施例通过对待测开源组件的各因子进行单独评分,然后根据各因子的重要程度分别设置不同的权重,进而将各个因子的单独评分和各因子所对应的权重进行处理得到待测开源组件的综合评分,这种方法从待测开源组件的七个方面对待测开源组件进行评分,相较于目前对开源组件的某一方面进行评分而得出开源组件的评分结果,该方法更全面立体,由于考虑待测开源组件的影响其评分的因素更多,因此得出的待测开源组件的评分结果的可信度也更高。In an embodiment of the present invention, each factor of the open source component to be tested is scored separately, and then different weights are set according to the importance of each factor, and then the separate scores of each factor and the weights corresponding to each factor are processed to obtain a comprehensive score of the open source component to be tested. This method scores the open source component to be tested from seven aspects of the open source component to be tested. Compared with the current method of scoring a certain aspect of the open source component to obtain the scoring result of the open source component, this method is more comprehensive and three-dimensional. Since more factors that affect the scoring of the open source component to be tested are considered, the credibility of the scoring result of the open source component to be tested is also higher.

在本发明的一个可选实施例中,所述使用频率的分值a1的评分计算公式为In an optional embodiment of the present invention, the scoring calculation formula of the usage frequency score a1 is:

其中,Q为所述待测开源组件的网络引入量;R为相似开源组件的平均引入量;P为所述待测开源组件的网络评分;S为所述网络评分的满分;M为某公司对所述待测开源组件的引入量;N为某公司对所述相似开源组件的引入量;α+β+θ=100,20≤α=β≤30。Among them, Q is the network introduction amount of the open source component to be tested; R is the average introduction amount of similar open source components; P is the network score of the open source component to be tested; S is the full score of the network score; M is the introduction amount of the open source component to be tested by a certain company; N is the introduction amount of the similar open source component by a certain company; α+β+θ=100, 20≤α=β≤30.

其中,开源组件的各个引入量可以通过开源软件包获取,例如npm(Node.js的包管理器)、PyPI(Python的包索引)和Maven(Java的构建工具),提供了有关软件包下载量或安装量的统计信息。开源组件的网络评分可以获取技术网站或专业博客对开源组件进行评测的分值。The amount of open source components introduced can be obtained through open source software packages, such as npm (Node.js package manager), PyPI (Python package index) and Maven (Java build tool), which provide statistics on the download or installation volume of software packages. The network score of open source components can obtain the scores of technical websites or professional blogs that evaluate open source components.

在本发明实施例中,使用频率的分值a1的评分计算公式通过对网络引入量和网络评分的考量,考虑了待测组件在网络中的实际引入量和网络评分,这能更好地反映出待测开源组件在实际应用中的普及程度和受欢迎程度,本发明实施例还将待测开源组件与相似组件的引入量和网络评分进行比较,可以更好地评估待测开源组件在相似功能领域中的表现,该发明实施例的评分计算公式可以更全面地评估开源组件的使用频率表现的分值,为开发者或企业在选择和采用开源组件时提供更多的参考信息,增强了使用频率的分值a1的客观性和准确性。In the embodiment of the present invention, the scoring calculation formula for the usage frequency scorea1 takes into account the actual introduction volume and network score of the component to be tested in the network by considering the network introduction volume and the network score, which can better reflect the popularity and popularity of the open source component to be tested in actual applications. The embodiment of the present invention also compares the introduction volume and network score of the open source component to be tested with similar components, which can better evaluate the performance of the open source component to be tested in similar functional areas. The scoring calculation formula of the embodiment of the invention can more comprehensively evaluate the score of the usage frequency performance of the open source component, provide more reference information for developers or enterprises when selecting and adopting open source components, and enhance the objectivity and accuracy of the usage frequency scorea1 .

在本发明的一个可选实施例中,所述方法稳定性的分值a2的评分计算公式为In an optional embodiment of the present invention, the scoring calculation formula of the method stability scorea2 is:

其中,c为所述待测开源组件的运行次数,d为所述待测开源组件运行c次的偏差。Wherein, c is the number of times the open source component to be tested is run, and d is the deviation of the open source component to be tested being run c times.

具体地,待测开源组件的运行次数通常指的是该组件在实际使用环境中被执行或调用的次数。运行的偏差次数指的是待测开源组件在多次运行中产生的性能或行为上的差异。这种差异可能是由于环境变化、输入数据不同或者其他因素导致的。通过量化这种差异,可以评估开源组件的稳定性和可靠性。Specifically, the number of runs of the open source component under test usually refers to the number of times the component is executed or called in the actual usage environment. The number of deviations in runs refers to the differences in performance or behavior of the open source component under test during multiple runs. This difference may be caused by changes in the environment, different input data, or other factors. By quantifying this difference, the stability and reliability of the open source component can be evaluated.

在本发明实施例中,该评分计算公式通过对运行次数和一定运行次数的偏差量的计算,使待测开源组件的稳定性得到了客观的评估,为待测开源组件关于稳定性的评分提供了依据。In the embodiment of the present invention, the scoring calculation formula objectively evaluates the stability of the open source component to be tested by calculating the number of runs and the deviation of a certain number of runs, and provides a basis for scoring the stability of the open source component to be tested.

在本发明的一个可选实施例中,所述安全漏洞的分值a3的评分计算公式为In an optional embodiment of the present invention, the scoring calculation formula of the security vulnerability scorea3 is:

其中,高危安全漏洞个数为U1,中危安全漏洞个数为V1,低危安全漏洞个数为W1,提示级安全漏洞个数为X1个。Among them, the number of high-risk security vulnerabilities is U1, the number of medium-risk security vulnerabilities is V1, the number of low-risk security vulnerabilities is W1, and the number of warning-level security vulnerabilities is X1.

具体地,安全漏洞指的是软件中存在关于软件安全方面的漏洞或缺陷,这些漏洞可以被恶意用户利用来获取未经授权的访问或执行未经授权的操作,从而对系统的安全性造成威胁。安全漏洞可能导致数据泄露、拒绝服务攻击、远程代码执行等安全问题。因此,对安全漏洞进行评分对评估开源组件至关重要。高危安全漏洞指的是软件中存在的严重漏洞或缺陷,可能导致严重的安全问题,例如远程代码执行、越权访问敏感信息、拒绝服务攻击等。这些漏洞可能会被恶意用户利用来对系统造成严重的损害或入侵。中危安全漏洞指的是软件中存在的一些漏洞或缺陷,虽然不像高危漏洞那样严重,但仍然可能对系统的安全性造成一定程度的威胁。这些漏洞可能会导致数据泄露、越权访问、身份验证问题等安全隐患。低危安全漏洞指的是软件中存在的一些漏洞或缺陷,其影响程度相对较轻,不会对系统的安全性造成严重威胁。这些漏洞可能包括一些界面问题、功能不完善、低优先级的错误等。尽管低危漏洞不会导致严重的安全问题,但它们仍然需要被记录、跟踪和修复,以确保软件的完整性和稳定性。提示级安全漏洞指的是软件中存在的一些较为轻微的问题或建议,通常不会导致实际的安全威胁,但可能会影响系统的易用性、性能或其他方面。这些漏洞可能包括一些提示性的警告或建议,例如代码风格不规范、文档不完整、优化建议等。其中,安全漏洞的评分系数反映了漏洞的严重程度和影响程度。高危漏洞具有更高的权重系数,而提示级漏洞的权重系数最低。这种评分计算公式可以帮助决策者更好地理解开源组件的安全风险,并采取相应的措施来降低这些风险Specifically, security vulnerabilities refer to vulnerabilities or defects in software security that can be exploited by malicious users to gain unauthorized access or perform unauthorized operations, thereby threatening the security of the system. Security vulnerabilities may lead to security issues such as data leakage, denial of service attacks, and remote code execution. Therefore, scoring security vulnerabilities is crucial for evaluating open source components. High-risk security vulnerabilities refer to serious vulnerabilities or defects in software that may lead to serious security issues, such as remote code execution, unauthorized access to sensitive information, and denial of service attacks. These vulnerabilities may be exploited by malicious users to cause serious damage or intrusion to the system. Medium-risk security vulnerabilities refer to some vulnerabilities or defects in software that, although not as serious as high-risk vulnerabilities, may still pose a certain degree of threat to the security of the system. These vulnerabilities may lead to security risks such as data leakage, unauthorized access, and authentication issues. Low-risk security vulnerabilities refer to some vulnerabilities or defects in software that have a relatively mild impact and will not pose a serious threat to the security of the system. These vulnerabilities may include some interface problems, imperfect functions, low-priority errors, etc. Although low-risk vulnerabilities do not lead to serious security issues, they still need to be recorded, tracked, and fixed to ensure the integrity and stability of the software. Warning-level security vulnerabilities refer to some relatively minor problems or suggestions in the software, which usually do not cause actual security threats, but may affect the usability, performance or other aspects of the system. These vulnerabilities may include some suggestive warnings or suggestions, such as irregular code style, incomplete documentation, optimization suggestions, etc. Among them, the scoring coefficient of the security vulnerability reflects the severity and impact of the vulnerability. High-risk vulnerabilities have higher weight coefficients, while warning-level vulnerabilities have the lowest weight coefficient. This scoring calculation formula can help decision makers better understand the security risks of open source components and take appropriate measures to reduce these risks.

在本发明实施例中,该评分计算公式通过考虑不同级别的安全漏洞,使评估开源组件的安全性变得更加全面。这种方法不仅仅关注严重的漏洞,还考虑了中等、轻微和提示级别的漏洞,从而提供了对整体安全状况的更全面的评估,这种安全漏洞的评分计算公式还可以帮助决策者更好地理解开源组件的安全风险,并采取相应的措施来降低这些风险In the embodiment of the present invention, the scoring calculation formula makes the security assessment of open source components more comprehensive by considering different levels of security vulnerabilities. This method not only focuses on serious vulnerabilities, but also considers medium, minor and warning level vulnerabilities, thereby providing a more comprehensive assessment of the overall security situation. This security vulnerability scoring calculation formula can also help decision makers better understand the security risks of open source components and take appropriate measures to reduce these risks.

在本发明的一个可选实施例中,所述功能漏洞的分值a4的评分计算公式为In an optional embodiment of the present invention, the scoring calculation formula of the score a4 of the functional vulnerability is:

其中,高危功能漏洞个数为U2,中危功能漏洞个数为V2,低危功能漏洞个数为W2,提示级功能漏洞个数为X2个。Among them, the number of high-risk functional vulnerabilities is U2, the number of medium-risk functional vulnerabilities is V2, the number of low-risk functional vulnerabilities is W2, and the number of warning-level functional vulnerabilities is X2.

具体地,功能漏洞是指软件或系统中存在的与功能相关的缺陷或问题。这些问题可能导致软件无法按预期执行其设计的功能,或者在特定情况下表现不一致或不正确。功能漏洞可能包括但不限于以下情况:功能失效:某个功能无法正常工作或不能按照设计的方式执行。功能不完善:某个功能存在缺陷或不完整,导致其无法满足用户的需求或期望。功能误操作:某个功能可能由于设计或实现上的问题导致用户误操作或误解。功能冲突:不同功能之间可能存在冲突,导致某些功能无法同时正常工作。功能一致性:功能在不同环境或平台下的一致性问题,导致用户体验不佳或功能无法正常使用。该功能评分的工作过程为:首先,需要对开源组件进行全面的审查,识别其中存在的所有功能漏洞。这包括高危、中危、低危以及提示级别的功能漏洞。这一步通常涉及代码审查、自动化扫描工具和可能的手动测试;然后,对识别后的功能漏洞进行分类和评级。根据漏洞的危害程度,将每个漏洞分配一个危害级别(高、中、低、提示);最后,进行评分计算得到功能漏洞的单独评分。Specifically, functional vulnerabilities refer to defects or problems related to functions in software or systems. These problems may cause the software to fail to perform its designed functions as expected, or to behave inconsistently or incorrectly in specific situations. Functional vulnerabilities may include, but are not limited to, the following situations: Functional failure: a function does not work properly or cannot be performed in the designed way. Functional imperfection: a function is defective or incomplete, resulting in it not meeting the needs or expectations of users. Functional misoperation: a function may cause users to misoperate or misunderstand due to design or implementation problems. Functional conflict: there may be conflicts between different functions, resulting in some functions not working properly at the same time. Functional consistency: the consistency problem of functions in different environments or platforms leads to poor user experience or the inability to use functions properly. The working process of this functional scoring is as follows: first, a comprehensive review of open source components is required to identify all functional vulnerabilities in them. This includes high-risk, medium-risk, low-risk, and prompt-level functional vulnerabilities. This step usually involves code review, automated scanning tools, and possible manual testing; then, the identified functional vulnerabilities are classified and rated. According to the degree of harm of the vulnerability, each vulnerability is assigned a harm level (high, medium, low, prompt); finally, a score calculation is performed to obtain a separate score for the functional vulnerability.

在本发明实施例中,该功能漏洞的评分计算公式通过引入不同级别的功能漏洞来获取功能漏洞的分值a4,该功能漏洞评分计算公式将开源组件的功能特性进行分级,增加了功能漏洞的分值a4的可靠性。In the embodiment of the present invention, the functional vulnerability scoring calculation formula obtains the functional vulnerability score a4 by introducing functional vulnerabilities of different levels. The functional vulnerability scoring calculation formula grades the functional characteristics of the open source components, thereby increasing the reliability of the functional vulnerability score a4 .

在本发明的一个可选实施例中,所述性能的分值a5的评分计算公式为In an optional embodiment of the present invention, the scoring calculation formula of the performance scorea5 is:

其中,t为一定量用户并发下的响应时间。Among them, t is the response time under a certain number of concurrent users.

具体地,一定量用户并发下的响应时间是指系统在同时处理一定数量的用户请求时所花费的时间。这个数量通常会根据系统的设计和预期的负载情况进行定义。在并发请求中,系统需要处理多个请求同时到达的情况,并确保在合理的时间内为每个请求提供响应。因此,一定量用户并发下的响应时间是衡量系统性能重要指标之一。Specifically, the response time under a certain amount of user concurrency refers to the time it takes for the system to process a certain number of user requests at the same time. This number is usually defined based on the system design and expected load. In concurrent requests, the system needs to handle the situation where multiple requests arrive at the same time and ensure that a response is provided to each request within a reasonable time. Therefore, the response time under a certain amount of user concurrency is one of the important indicators for measuring system performance.

在本发明实施例中,该性能的分值a5的评分计算公式通过引入一定量用户并发下的响应时间,该评分计算公式考虑到了实际应用场景中可能出现的并发请求情况,可以更准确地评估开源组件在真实环境中的性能表现,提高了开源组件关于性能评分的准确性。In an embodiment of the present invention, the scoring calculation formula for the performance score a5 introduces the response time under a certain amount of user concurrency. The scoring calculation formula takes into account the concurrent requests that may occur in actual application scenarios, and can more accurately evaluate the performance of open source components in real environments, thereby improving the accuracy of performance scoring of open source components.

在本发明的一个可选实施例中,所述更新频率的分值a6的评分计算公式为In an optional embodiment of the present invention, the score calculation formula of the update frequency scorea6 is:

其中,e为待测开源组件的月更新次数,f为相似开源软件的平均月更新次数。Among them, e is the monthly update number of the open source component to be tested, and f is the average monthly update number of similar open source software.

具体地,该评分计算公式通过待测开源组件的月更新次数e和相似开源软件的平均月更新次数f进行比值分析,这种分析能够反映待测开源组件的更新次数在这一功能相似的开源组件的更新次数中属于什么水平,算e和f的比值,可以得出待测开源组件的更新频率相对于相似组件的水平,是高于、等同于还是低于平均水平。Specifically, the scoring calculation formula performs a ratio analysis through the monthly update frequency e of the open source component to be tested and the average monthly update frequency f of similar open source software. This analysis can reflect the update frequency of the open source component to be tested in the update frequency of open source components with similar functions. By calculating the ratio of e and f, it can be concluded whether the update frequency of the open source component to be tested is higher, equal to, or lower than the average level relative to that of similar components.

在本发明实施例中,该评分计算公式客观地评价了待测开源组件的更新活跃度。In the embodiment of the present invention, the scoring calculation formula objectively evaluates the update activity of the open source component to be tested.

在本发明的一个可选实施例,所述许可类型的分值a7的评分计算公式为In an optional embodiment of the present invention, the score calculation formula of the license type scorea7 is:

其中,m为所述待测开源组件的许可类型数,n为相似开源组件的许可总类型数。Wherein, m is the number of license types of the open source component to be tested, and n is the total number of license types of similar open source components.

具体地,待测开源组件的许可类型数指的是待测开源组件所采用的不同许可证类型的数量,相似开源组件的许可总类型数指的是与待测开源组件具有相似功能或特性的其他开源组件中,所涵盖的许可证类型的总数目。Specifically, the number of license types of the open source component to be tested refers to the number of different license types adopted by the open source component to be tested, and the total number of license types of similar open source components refers to the total number of license types covered in other open source components that have similar functions or characteristics to the open source component to be tested.

在本发明实施例中,该评分计算公式中将待测开源组件的许可类型数、相似组件的许可总类型数考虑进去,可以提供一种比较基准,用于衡量待测组件所采用许可证类型的相对多样性,该评分计算公式客观地评价了待测开源组件的许可类型的分值a7In the embodiment of the present invention, the score calculation formula takes into account the number of license types of the open source component to be tested and the total number of license types of similar components, which can provide a comparison benchmark for measuring the relative diversity of license types used by the component to be tested. The score calculation formula objectively evaluates the score a7 of the license type of the open source component to be tested.

如图2所示,在本发明的另一方面,提供了一种开源组件评分系统,包括:As shown in FIG2 , in another aspect of the present invention, an open source component scoring system is provided, comprising:

信息获取模块10,用于获取任一与待测开源组件功能相似的相似开源组件的基础信息,所述基础信息包括所述相似开源组件的平均引入量、所述待测开源组件的网络引入量、所述待测开源组件的网络评分、网络评分的满分、所述待测开源组件的网络评分某公司对所述待测开源组件的引入量、某公司对所述相似开源组件的引入量、所述待测开源组件的运行次数、所述待测开源组件运行的偏差、高危安全漏洞个数、中危安全漏洞个数、低危安全漏洞个数、提示级安全漏洞个数、高危功能漏洞个数、中危功能漏洞个数、低危功能漏洞个数、提示级功能漏洞个数、一定量用户并发下的响应时间、待测开源组件的月更新次数、相似开源软件的平均月更新次数、所述待测开源组件的许可类型数、所述相似开源组件的许可总类型数;The information acquisition module 10 is used to obtain basic information of any similar open source component with similar functions to the open source component to be tested, wherein the basic information includes the average introduction amount of the similar open source component, the network introduction amount of the open source component to be tested, the network score of the open source component to be tested, the full score of the network score, the network score of the open source component to be tested, the introduction amount of the open source component to be tested by a certain company, the introduction amount of the similar open source component by a certain company, the number of operations of the open source component to be tested, the deviation of the operation of the open source component to be tested, the number of high-risk security vulnerabilities, the number of medium-risk security vulnerabilities, the number of low-risk security vulnerabilities, the number of warning-level security vulnerabilities, the number of high-risk functional vulnerabilities, the number of medium-risk functional vulnerabilities, the number of low-risk functional vulnerabilities, the number of warning-level functional vulnerabilities, the response time under a certain number of concurrent users, the monthly update number of the open source component to be tested, the average monthly update number of similar open source software, the number of license types of the open source component to be tested, and the total number of license types of the similar open source components;

分量计算模块20,用于通过所述基础信息对影响所述待测开源组件的评分的各个因子进行单独评分,所述因子进行单独评分的分值ai包括使用频率的分值a1、方法稳定性的分值a2、安全漏洞的分值a3、功能漏洞的分值a4、性能的分值a5、更新频率的分值a6、许可类型的分值a7A component calculation module 20, configured to separately score each factor affecting the score of the open source component to be tested based on the basic information, wherein the scoresai for the separate scores of the factors includea1 for the frequency of use,a2 for the method stability,a3 for the security vulnerability,a4 for the functional vulnerability,a5 for the performance,a6 for the update frequency, anda7 for the license type;

数据收集模块30,用于获取各个所述因子的多维用户评价数据,所述多维用户评价数据包括各个所述因子的评价总条数xi总={x1总,x2总,x3总,……,x7总}和各个所述因子的差评条数xi差={x1差,x2差,x3差,……,x7差}:The data collection module 30 is used to obtain multidimensional user evaluation data of each of the factors, wherein the multidimensional user evaluation data includes the total number of evaluations of each of the factors xi total = {x1 total , x2 total , x3 total , ..., x7 total } and the number of negative reviews of each of the factors xi difference = {x1 difference , x2 difference , x3 difference , ..., x7 difference }:

权重确定模块40,根据所述多维用户评价数据计算出每个所述因子的分值ai={a1,a2,a3,……,a7}对应的权重ki={k1,k2,k3,……,k7},所述权重ki的公式为The weight determination module 40 calculates the weight ki ={k1 ,k2 ,k3 ,...,k7 } corresponding to the score ai ={a1 ,a2 ,a3 ,...,a7 } of each factor according to the multi-dimensional user evaluation data. The formula of the weight ki is:

综合计算模块50,根据所述待测开源组件的各个所述因子的权重ki和所述待测开源组件评分的各个所述因子的单独评分的分值ai得到所述待测开源组件的综合评分s。The comprehensive calculation module 50 obtains a comprehensive score s of the open source component to be tested according to the weights ki of the factors of the open source component to be tested and the scores ai of the individual scores of the factors of the score of the open source component to be tested.

其中,使用频率的分值a1指的是该开源组件被用户使用的频率或者被其他软件项目所采用的频率,它反映了该组件在实际应用中的普及程度或者被广泛采用的程度。方法稳定性的分值指的是开源组件中提供的方法或功能的稳定性程度。这包括了方法的可靠性、稳定性和容错性,它反映了开发者在使用该组件时能够依赖其提供的功能而不会出现意外行为或崩溃的程度。安全漏洞的分值指的是开源组件存在安全漏洞的程度。这包括已知的漏洞数量、漏洞的严重程度以及对这些漏洞的及时修复程度。安全漏洞是指可能被黑客利用或导致系统遭受损害的软件缺陷或漏洞。Among them, the frequency of use score a1 refers to the frequency with which the open source component is used by users or adopted by other software projects, which reflects the popularity of the component in actual applications or the degree to which it is widely adopted. The method stability score refers to the stability of the methods or functions provided in the open source component. This includes the reliability, stability and fault tolerance of the method, which reflects the extent to which developers can rely on the functions provided by the component without unexpected behavior or crashes when using it. The security vulnerability score refers to the extent to which the open source component has security vulnerabilities. This includes the number of known vulnerabilities, the severity of the vulnerabilities, and the degree to which these vulnerabilities are promptly fixed. Security vulnerabilities refer to software defects or loopholes that can be exploited by hackers or cause damage to the system.

如图2所示,在本发明实施例中,本发明实施例通过对待测开源组件的各个因子进行单独评分,然后根据各个因子的重要程度分别设置不同的权重,进而将各个因子的单独评分和各因子所对应的权重进行处理得到待测开源组件的综合评分,这种评分系统从待测开源组件的七个方面对待测开源组件进行评分,相较于目前对开源组件的某一方面进行评分的评分系统而得出开源组件的评分结果,该评分系统更全面立体,由于考虑待测开源组件的影响其评分的因素更多,因此得出的待测开源组件的评分结果的可信度也更高。As shown in FIG. 2 , in an embodiment of the present invention, each factor of the open source component to be tested is scored separately, and then different weights are set according to the importance of each factor, and then the separate scores of each factor and the weights corresponding to each factor are processed to obtain a comprehensive score of the open source component to be tested. This scoring system scores the open source component to be tested from seven aspects of the open source component to be tested. Compared with the current scoring system that scores a certain aspect of the open source component to obtain the scoring result of the open source component, this scoring system is more comprehensive and three-dimensional. Since more factors that affect the scoring of the open source component to be tested are considered, the credibility of the scoring result of the open source component to be tested is also higher.

根据本发明的实施例,本发明还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。According to an embodiment of the present invention, the present invention also provides an electronic device, a readable storage medium and a computer program product.

图3示出了可以用来实施本发明的实施例的示例电子设备600的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机和其他适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字助理、蜂窝电话、智能电话、可穿戴设备和其他类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。Fig. 3 shows a schematic block diagram of an example electronic device 600 that can be used to implement an embodiment of the present invention. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workbenches, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described and/or required herein.

如图3所示,设备600包括计算单元601,其可以根据存储在只读存储器(ROM)602中的计算机程序或者从存储单元608加载到随机访问存储器(RAM)603中的计算机程序,来执行各种适当的动作和处理。在RAM 603中,还可存储设备600操作所需的各种程序和数据。计算单元601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。As shown in FIG3 , the device 600 includes a computing unit 601, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 602 or a computer program loaded from a storage unit 608 into a random access memory (RAM) 603. In the RAM 603, various programs and data required for the operation of the device 600 can also be stored. The computing unit 601, the ROM 602, and the RAM 603 are connected to each other via a bus 604. An input/output (I/O) interface 605 is also connected to the bus 604.

设备600中的多个部件连接至I/O接口605,包括:输入单元606,例如键盘、鼠标等;输出单元607,例如各种类型的显示器、扬声器等;存储单元608,例如磁盘、光盘等;以及通信单元609,例如网卡、调制解调器、无线通信收发机等。通信单元609允许设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。A number of components in the device 600 are connected to the I/O interface 605, including: an input unit 606, such as a keyboard, a mouse, etc.; an output unit 607, such as various types of displays, speakers, etc.; a storage unit 608, such as a disk, an optical disk, etc.; and a communication unit 609, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 609 allows the device 600 to exchange information/data with other devices through a computer network such as the Internet and/or various telecommunication networks.

计算单元601可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元601的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元601执行上文所描述的各个方法和处理,例如一种发电功率预测方法。例如,在一些实施例中,一种发电功率预测方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由ROM 602和/或通信单元609而被载入和/或安装到设备600上。当计算机程序加载到RAM 603并由计算单元601执行时,可以执行上文描述的一种发电功率预测方法的一个或多个步骤。备选地,在其他实施例中,计算单元601可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行一种发电功率预测方法。The computing unit 601 may be a variety of general and/or special processing components with processing and computing capabilities. Some examples of the computing unit 601 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 601 performs the various methods and processes described above, such as a power generation prediction method. For example, in some embodiments, a power generation prediction method may be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as a storage unit 608. In some embodiments, part or all of the computer program may be loaded and/or installed on the device 600 via the ROM 602 and/or the communication unit 609. When the computer program is loaded into the RAM 603 and executed by the computing unit 601, one or more steps of a power generation prediction method described above may be performed. Alternatively, in other embodiments, the computing unit 601 may be configured to perform a power generation prediction method in any other appropriate manner (e.g., by means of firmware).

本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and/or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

用于实施本发明的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。The program code for implementing the method of the present invention can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer or other programmable data processing device, so that the program code, when executed by the processor or controller, enables the functions/operations specified in the flow chart and/or block diagram to be implemented. The program code can be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

在本发明的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。In the context of the present invention, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入、或者触觉输入)来接收来自用户的输入。To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。The systems and techniques described herein may be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communications network). Examples of communications networks include: a local area network (LAN), a wide area network (WAN), and the Internet.

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。A computer system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The relationship of client and server is generated by computer programs running on respective computers and having a client-server relationship with each other. The server may be a cloud server, a server of a distributed system, or a server combined with a blockchain.

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明公开的技术方案所期望的结果,本文在此不进行限制。It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in the present invention can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solution disclosed in the present invention can be achieved, and this document does not limit this.

上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。The above specific implementations do not constitute a limitation on the protection scope of the present invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the principles of the present invention should be included in the protection scope of the present invention.

Claims (10)

Obtaining basic information of any similar open source component similar to the function of the open source component to be tested, wherein the basic information comprises average introduced quantity of the similar open source component, network introduced quantity of the open source component to be tested, network score of the open source component to be tested, full score of the network score, introduced quantity of a certain company of the open source component to be tested on the open source component to be tested, introduced quantity of the similar open source component by the certain company, operation times of the open source component to be tested, operation deviation of the open source component to be tested, number of high-risk security holes, number of medium-risk security holes, number of low-risk security holes, number of prompt-level security holes, number of high-risk functionality holes, number of medium-risk functionality holes, number of low-risk functionality holes, number of prompt-level functionality holes, response time concurrent by a certain amount of users, month update times of the open source component to be tested, average month update times of the similar open source software, number of permission types of the open source component to be tested, and total number of permission types of the similar open source component;
The information acquisition module is used for acquiring basic information of any similar open source component similar to the function of the open source component to be detected, wherein the basic information comprises an average introduction amount of the similar open source component, a network introduction amount of the open source component to be detected, a network score of the open source component to be detected, a full score of the network score, a month update frequency of the open source component to be detected, an average month update frequency of similar open source software, a permission type number of the open source component to be detected and a total permission type number of the similar open source component, wherein the average introduction amount of the similar open source component, the network score of the open source component to be detected, the introduction amount of the similar open source component to be detected, the operation times of the similar open source component, the deviation of the operation of the open source component to be detected, the number of high-risk security holes, the number of medium-risk security holes, the number of low-risk security holes, the number of prompt-level security holes, the number of high-risk security holes, the number of medium-risk security holes, the number of prompt-level security holes, the response time issued by a certain amount of users, the month update frequency of the open source component to be detected, the average month update frequency of the similar open source software, the permission type number of the open source component to be detected and the total type of the similar open source component to be detected;
CN202410693934.1A2024-05-312024-05-31 A scoring method, system, and computer storage medium for open source componentsPendingCN118535834A (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
CN202410693934.1ACN118535834A (en)2024-05-312024-05-31 A scoring method, system, and computer storage medium for open source components

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
CN202410693934.1ACN118535834A (en)2024-05-312024-05-31 A scoring method, system, and computer storage medium for open source components

Publications (1)

Publication NumberPublication Date
CN118535834Atrue CN118535834A (en)2024-08-23

Family

ID=92391796

Family Applications (1)

Application NumberTitlePriority DateFiling Date
CN202410693934.1APendingCN118535834A (en)2024-05-312024-05-31 A scoring method, system, and computer storage medium for open source components

Country Status (1)

CountryLink
CN (1)CN118535834A (en)

Similar Documents

PublicationPublication DateTitle
KR102061987B1 (en) Risk Assessment Method and System
CN114780965A (en)Vulnerability repair priority evaluation method and system
US9158663B2 (en)Evaluating performance maturity level of an application
CN111669365B (en)Network security test method and device
CN111343154A (en)Vulnerability detection method and device, terminal equipment and storage medium
CN113626825A (en)Security vulnerability management and control method, device, equipment and computer readable medium
CN106294174B (en)The various dimensions measure and device of testing adequacy
Autili et al.Software engineering techniques for statically analyzing mobile apps: research trends, characteristics, and potential for industrial adoption
CN113254944B (en)Vulnerability processing method, system, electronic device, storage medium and program product
CN119484153A (en) A vulnerability accessibility rating method based on EPSS
CN118535835A (en) A dynamic scoring method, system, and computer storage medium for open source components
CN117236275A (en)Chip optimization method, device, equipment and storage medium
CN113342634A (en)Software quality evaluation method and device
CN115983191A (en)Test point verification method and related device
CN115329336A (en)NET platform open source software supply chain vulnerability scoring method based on dependency item detection and open source scoring system
CN114416583A (en)Workload determination method, device, equipment and storage medium for automatic test
CN105653730B (en)A kind of method of inspection and device of the quality of data
CN118535834A (en) A scoring method, system, and computer storage medium for open source components
CN117573461A (en)Method and system for verifying credit-fit performance of power information system
CN118350707A (en) A data processing method and device
CN118152282A (en)Plug-in testing method, device, equipment and storage medium
CN115277165B (en) A vehicle network risk determination method, device, equipment and storage medium
CN117609995A (en) Industrial control system security protection methods, devices, terminal equipment and storage media
CN115034322B (en)Data processing method and device and electronic equipment
CN116955182A (en) Abnormal indicator analysis methods, equipment, storage media and devices

Legal Events

DateCodeTitleDescription
PB01Publication
PB01Publication
SE01Entry into force of request for substantive examination
SE01Entry into force of request for substantive examination

[8]ページ先頭

©2009-2025 Movatter.jp