CN101311898B - 软件构件可信度评价方法和系统 - Google Patents
软件构件可信度评价方法和系统 Download PDFInfo
- Publication number
- CN101311898B CN101311898B CN200810116038XA CN200810116038A CN101311898B CN 101311898 B CN101311898 B CN 101311898B CN 200810116038X A CN200810116038X A CN 200810116038XA CN 200810116038 A CN200810116038 A CN 200810116038A CN 101311898 B CN101311898 B CN 101311898B
- Authority
- CN
- China
- Prior art keywords
- software component
- trust attribute
- feedback
- credible
- software
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种软件构件可信度评价方法和系统,通过定制软件构件可信性描述模板确立面向用户的构件可信性评价的目标,所述可信性描述模板设置有所述软件构件的信任属性;从构件库系统中获取对应于所述软件构件的信任属性的证据信息;根据所述证据信息,对所述软件构件的可信度进行评价,获得所述软件构件的可信度。本发明通过基于软件构件可信性描述模板获取证据信息,根据证据信息获得构件在各信任属性上的信誉值,并综合所述信誉值评估软件构件的可信度,使得软件构件的可信度具有较强的针对性、实用性和环境适应性,同时,也便于软件构件库的管理和用户的检索。
Description
技术领域
本发明涉及软件工程技术领域,特别是涉及一种软件构件可信度评价方法和系统。
背景技术
软件复用和软件构件技术已成为当今国际上软件技术发展趋势之一,基于软件构件的不断重复使用和基于软件构件的软件开发(Component basedSoftware development,CBSD)将生产模式从传统的软件编码工作转换为以软件构件为基础的系统集成组装,改善了软件开发的质量、提高了软件开发的效率。在基于软件构件开发过程中,软件构件库提供对软件构件的描述、分类、存储、检索与维护等功能,支持软件构件提供者发布自己的软件构件信息,并向软件构件复用者提供合适的可使用的软件构件。由于软件构件提供者和软件构件复用者大部分是分离的或互不相识的,因此,软件构件资源的共享和复用通过软件构件库等管理系统实现。
软件构件的共享和复用是建立在软件构件复用者信任软件构件提供者及其所提供的技术和服务的基础上,但在实际应用中,软件构件复用者往往在下载或绑定软件构件之前缺乏有效的方式对所复用的软件构件的功能、运行情况具有一个良好的把握。尤其在分布、开放的网络环境下,由于软件构件复用者和软件构件提供者双方彼此缺乏足够的认识,组装应用系统各部分之间的调用关系也不明确,软件构件复用者必须提防可能存在的恶意的欺骗行为发生。例如,一个软件构件可能在实际调用时仅仅提供了一部分其所承诺的服务或功能,更有甚者,提供了一个完全有害的替代品,如病毒程序等,这些是软件构件复用者所不能接受的。因此,如何评估一个软件构件是否可信成为软件构件库管理系统中需要迫切解决的问题。
信誉是关于一个实体的特征或名声的综合评价。一般来说,信誉是一种从社会群体中导出的可量化信息,它表达了在这个社会群体中从所有或多数成员角度出发的一致性观点,即信誉具有综合性。同时,信誉不仅仅在于评价一次服务的完成情况,它还建立在对实体多次行为的评估的基础上,即信誉具有统计性。
鉴于信誉的综合性和统计性,信誉通常被看作是一种评估实体可信性的重要途径。现有基于信誉的软件构件可信度评价方法主要有以下几种:
现有技术一、研究人员根据来自实体之间经验的反馈信息,建立信任模型并定义可信度为[-1,1)区间上的连续量。后来在社会学研究的基础上,又建立了基于使用经验和第三方推荐的信任模型。在该模型中,一个实体对与其直接交互的实体进行反馈评分并记录为与其交互实体的一次经验,评分的级别有极坏(very bad)、坏(bad)、好(good)和极好(very good)四种,同样的实体的可信度也分为极不信任(very untrustworthy)、不信任(untrustworthy)、信任(trustworthy)和非常信任(very trustworthy)四种级别。基于实体之间是否存在直接使用的经验,实体之间信任关系的建立被分为两种:直接信任和推荐信任。实体可信度计算方法为:在基于直接信任的可信度计算中,系统根据获取的直接经验中最多出现的反馈评分决定信任级别。譬如,若关于实体的评分多数为“very good”,则其可信度为“verytrustworthy”。这是一种系统定义的映射关系,并通过一个映射表格来进行对应;在基于推荐信任的可信度计算中,第三方可以通过推荐的方式交换关于待选实体的经验信息,系统根据出现的最多出现的推荐值决定待选实体的可信度。
上述现有技术中,对实体的评价只有一个信任等级,反馈评价信息和可信性评估均只是一个分值,针对性不强,无法实现特殊应用环境的软件构件的可信性评估,实用性和环境适应性差,同时软件构件可信性评估采用多数统计的原则,可信性评估也不准确。
现有技术二,研究人员建立了基于Beta概率密度函数(probabilitydensity functions,PDF)的软件构件可信度评价方法,实体的可信度取决于由被观察到的肯定事件数r和否定事件数s决定的概率确定性密度函数。PDF公式表述如下:
上述公式的期望值E(p)=α/(α+β),其值域在[0,1]区间。具体的,令α=r+1,β=s+1.例如,被观测实体在某一段时间内被发现调用成功7次,调用不成功1次,其可信度约为0.8。此外,研究人员又提出基于不同实体之间通过信任推荐进行协同,提供了一套主观逻辑(Subjective Logic)运算子用于信任度的推导和综合计算,构造出可以对信任进行传递的模型,适用于开放的网络环境。研究人员建立了主观逻辑与PDF之间的映射,获得实体的可信度。
现有技术二中,通过反馈的肯定事件次数和否定事件次数进行可信性评估,反馈评价信息不全面,也没有针对性,无法根据软件构件的应用环境进行有效的可信性评估,同样不适合特定环境的应用,环境适应性差,实用性也不好。
上述技术中,获取的反馈评价及基于反馈评价获得的可信度针对性不强,实用性和环境适应性也差,无法满足多种应用环境或用户的需要。
发明内容
本发明的目的是提供一种软件构件可信度评价方法和系统,使得可信性评估具有较强的针对性、实用性和环境适应性,以满足不同用户的应用需求。
为实现上述目的,本发明提供了一种软件构件可信度评价方法,包括:
定制软件构件可信性描述模板,确立面向用户的构件可信性评价的目标,所述可信性描述模板设置有所述软件构件的信任属性;
根据可信性描述模板建立反馈模板,所述反馈模板包括所述可信性描述模板中的所述信任属性;
基于所述反馈模板,获得针对软件构件的信任属性提交的反馈评价及与所述反馈评价对应的评分信息,并记录提交所述反馈评价的评价时间,所述反馈评价由构件使用者和/或软件测试者提供;
将包括所述评分信息及评价时间的构件反馈评价作为证据信息保存到构件库系统的数据库中;
基于所述可信性描述模板,从所述构件库系统中获取对应于所述软件构件的信任属性的证据信息,所述软件构件信任属性的证据信息是其它实体对软件构件的信任属性的评价,即该软件构件获得的反馈信息;
根据所述证据信息,对所述软件构件的可信度进行评价,获得所述软件构件的可信度,包括:
根据对应于所述信任属性的所述证据信息,获得所述软件构件在所述信任属性上的信誉值;
根据所述软件构件在所述信任属性上的信誉值和与所述信任属性对应的权重值,按照加权平均方式获得所述软件构件的可信度。
本发明还提供了一种软件构件可信度评价系统,包括:
定制模块,用于定制软件构件可信性描述模板,确立面向用户的构件可信性评价的目标,所述可信性描述模板设置有所述信任属性;
反馈信息描述模块,用于根据所述可信性描述模板建立所述反馈模板,所述反馈模板包括所述可信性描述模板中的所述信任属性;
反馈信息收集模块,用于基于所述反馈模板,获得针对软件构件的信任属性提交的反馈评价及与所述反馈评价对应的评分信息,并记录提交所述反馈评价的评价时间,所述反馈评价由构件使用者和/或软件测试者提供;
反馈信息存储模块,用于将包括所述评分信息及评价时间的构件反馈评价作为证据信息保存到构件库系统的数据库中;
获取模块,用于基于所述可信性描述模板,从所述构件库系统中获取对应于所述软件构件的信任属性的证据信息,所述软件构件信任属性的证据信息是是其它实体对软件构件的信任属性的评价,即该软件构件获得的反馈信息;
运算模块,用于根据所述证据信息,对所述软件构件的可信度进行评价,获得所述软件构件的可信度;所述运算模块包括:
信誉运算模块,用于根据对应于所述信任属性的所述证据信息,获得所述软件构件在所述信任属性上的信誉值;
可信度运算模块,用于根据所述软件构件在所述信任属性上的信誉值和与所述信任属性对应的权重值,按照加权平均方式获得所述软件构件的可信度。
本发明通过定制软件构件的可信性描述模板,确立了可信性评价目标;根据所述评价目标,从构件库系统中获取对应于软件构件的信任属性的证据信息;根据信任属性的证据信息对软件构件进行评估获得软件构件的可信度,使得获得的软件构件的可信度具有较强的针对性和实用性,可信度也更加准确可靠。同时,针对不同的应用环境可实时、动态的对软件构件进行评估获得软件构件的可信度,使得本发明具有较强的环境适应能力,提高了用户检索的效率和成功率。
附图说明
图1为本发明软件构件可信度评价方法实施例一的流程图;
图2为本发明软件构件可信度评价方法实施例二的流程图;
图3为本发明软件构件可信度评价方法实施例三的流程图;
图4为本发明软件构件可信度评价系统实施例一的结构图;
图5为本发明软件构件可信度评价系统实施例二中运算模块的结构图。
具体实施方式
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
在软件构件库管理系统中,通过建立定制模块、获取模块和运算模块,有针对性地获取软件构件的信任属性对应的证据信息,并基于信任属性的证据信息通过一定运算获得软件构件的可信度。使得获得的可信度可作为用户检索时的依据,提高了用户的检索效率和检索的成功率。
如图1所示,为本发明软件构件可信度评价方法实施例一的流程图。本实施例包括以下步骤:
步骤100、定制软件构件可信性描述模板,确立面向用户的构件可信性评价的目标,该可信性描述模板设置有软件构件的信任属性;
在进行软件构件的检索时,不同的构件复用者往往具有不同的评估目标,因此,针对不同的构件复用者,需要建立面向特定用户的信任属性集合,以帮助构件复用者更好的评估或度量一个候选的软件构件。在构件库系统中,系统可维护有一个可定制的可信性描述模板,该可信性描述模板设置了各种信任属性,向下可用于分析系统需要获取哪些方面的反馈评价信息,向上可用于支持面向特定的用户(如构件复用者)的可信度评估。其中,软件构件的各种信任属性反映了软件构件在各个方面的性能,如安全性、可用性、可靠性等。安全性信任属性反映了软件构件在安全方面的性能,可用性反映了构件是否在用户要求的时候可立即投入使用,而可靠性则反映了在规定的时间内软件构件无失效运行的能力。根据构件复用者的需求,可定制面向复用者的软件构件的可信性描述模板;根据该可信性描述模板中的信任属性,便于确定构件复用者的可信度评价目标,为构件复用者提供有针对性的可信度评价结果,使得复用者可获得可靠的复用构件,提高了软件构件的复用效率。
步骤101、从构件库系统中获取对应于软件构件的信任属性的证据信息;
根据构件评估目标,可从构件库系统中获取对应于软件构件信任属性的证据信息。软件构件信任属性的证据信息是是其它实体对软件构件的信任属性的评价,即该软件构件获得的反馈信息,包括用户的评价信息、软件测试信息以及在线监控获得的信息等。证据信息反映了软件构件在该信任属性方面的性能。证据信息包括反馈评分及评价时间等信息,所述反馈评分根据用户对软件构件在该信任属性上的评价获得,评价时间是用户提交评价的时间,这些反馈信息可作为软件构件可信度评估的依据。
由于软件构件的信任属性具有较强的针对性,基于信任属性获得的证据信息也就具有较强的针对性和实用性,因此可根据需要获取不同信任属性的证据信息有针对性的对软件构件的可信度进行评估。
针对特定的应用环境,可根据反映软件构件在该应用环境下所具有的信任属性的证据信息来获得软件构件的可信度,使获得的可信度更加适合该应用环境,因此,可通过本发明获得各种应用环境条件软件构件的可信度,使得本发明具有较强的环境适应能力。
步骤102、根据证据信息,对软件构件的可信度进行评价,获得软件构件的可信度。
软件构件的可信度反映了软件构件值得信任的能力,该可信度可为一个量化的数值。同时,也可根据该量化的数值对软件构件的可信性划分等级,如0~5级(0级最低,5级最高)。可信度越大,可信性级别越高,表明软件构件越值得信赖,软件构件使用预期效果也就越好。用户在检索软件构件时,构件库系统可以计算出各种软件构件的可信度,并将可信度大的软件构件排列在检索结果的前列,便于检索用户选择可信度高的软件构件,提高软件构件的复用效果和成功率。
本实施例中,可通过从构件库系统中获得软件构件的一个或多个信任属性对应的证据信息,并根据各信任属性的证据信息进行可信度的运算。在进行可信度运算的时候,根据检索用户的需要,可定制面向特定用户的软件构件的多个信任属性的权重,这样获得的软件构件可信度具有较强的针对性和实用性。同时也可实现实时、动态的对软件构件进行可信性评估,可提供各种应用环境需求的软件构件的可信度,使得本发明具有较强的环境适应能力和针对性,以满足不同用户和应用环境的需求。
本实施例中,通过定制软件构件的可信性描述模板,确立了可信性评价目标;根据所述评价目标,从构件库系统中获取对应于软件构件的信任属性的证据信息;根据信任属性的证据信息对软件构件进行评估获得软件构件的可信度,使得获得的软件构件的可信度具有较强的针对性和实用性,可信度也更加准确可靠。同时,针对不同的应用环境可实时、动态的对软件构件进行评估获得软件构件的可信度,使得本发明具有较强的环境适应能力,提高了用户检索的效率和成功率。
如图2所示,为本发明软件构件可信度评价方法实施例二的流程图。本实施例包括以下步骤:
步骤200、系统预定制了设置有可用性、可靠性、安全性、完整性、保密性、易维护性和效率的信任属性的可信性描述模板,确立构件可信性评价目标;
可信性描述模板设置有各种反映软件构件特定方面性能的信任属性。本实施例中,系统预定制的构件可信性描述模板的信任属性包括可用性、可靠性、安全性、完整性、保密性、易维护性以及效率。其中,可用性体现了软件构件是否在软件构件复用者要求的时候都可以立即投入使用的能力;可靠性体现了软件构件在规定的时间内无失效运行的能力;安全性体现了软件构件运行时不引起危险、灾难的能力;完整性体现了软件构件是否提供了必需的接口或服务的能力;保密性体现了软件构件能够控制与自己相关的数据不被非法篡改或使用的能力;易维护性体现了软件构件安装和管理的能力,以及可扩展性和复用性的能力;效率体现了软件构件能够快速提供服务的能力。
本实施实例中,软件构件可信性描述模板还设置有信任属性的描述信息,可包括名称、信誉值、反馈数目、以及计算方法等描述项。其中,计算方法可以包括求和平均、加权平均、概率密度等方法;反馈数目反映了度量值的准确性,获得的反馈数目越多,信任属性的信誉值的结果也就越准确;信誉值则反映了在该信任属性下软件构件的可信性,依赖于具体的反馈评价、反馈数目和计算方法。
信任属性体现了软件构件在特定方面的能力,信任属性的描述信息则描述了该信任属性的各种相关信息,便于软件构件复用者的查询或参考,以对软件构件有更好的了解。
本步骤中,通过定制可信性描述模板,便于软件构件库系统的管理,向下可用于分析软件构件库系统需要获取哪些方面的评价信息,向上可用于软件构件可信性评估,获得软件构件的可信度,根据定制的可信性描述模板中的各信任属性,确立了构件可信度评价的目标,便于构件可信度的评价和度量,为有针对性的获取软件构件的可信度提供了依据,提高了软件构件复用的效率。
步骤201、基于可信性描述模板,从构件库系统中获取对应于软件构件的信任属性的证据信息;
可信性描述模板包含各种反映软件构件的信任属性,将该可信性描述模板中的各信任属性作为构件可信度评价的目标,因此,可根据可信性描述模板中的各信任属性,从构件库系统中查询对应软件构件信任属性的证据信息。
具体地,构件库系统中软件构件的各信任属性的证据信息可通过以下步骤获得:
a、根据可信性描述模板建立反馈模板,该反馈模板包括可信性描述模板中的信任属性;
反馈模板中包含各种反映软件构件能力的信任属性,可将反馈模板作为获得软件构件信任属性信息的一个平台。通过该平台,可有针对性的获取反馈用户对软件构件的各信任属性的反馈评价,并将获得的反馈评价作为构件评估的证据信息。该反馈模板通过从构件库系统中寻找与软件构件信任属性对应的反馈评价,并获取对应该构件的反馈评分和评价时间等信息,作为软件构件评估的依据。
具体地,针对反馈模板中的一个信任属性,反馈评价可对应设定多种反馈评价项目,且对每种反馈评价项目,都有一评分信息与此对应。如设定的反馈评价项目可为三种,则对应的评分信息也为三种;若设定的反馈评价项目为六种,对应的评分信息也为六种,可以理解,反馈评价项目越多,用户对软件构件的反馈评价就越详细,则根据证据信息获得的可信度也就越准确。实际应用中,可根据需要预先设定好反馈评价项目。本实施列中,每个信任属性的反馈评价项目有三种,对应的评分信息也有三种,详细请见表1:
表1
b、基于反馈模板,获得针对所述软件构件的信任属性提交的反馈评价及与所述反馈评价对应的评分信息,并记录提交所述反馈评价时的评价时间,该反馈评价由构件使用者和/或软件测试者提供;
具体地,根据步骤a中的反馈模板,可通过以下两种方式获得软件构件各信任属性的证据信息:
第一种方式,当构件库系统中不存在用户反馈机制时,可以此反馈模板收集反馈用户的反馈评价信息,即证据信息。具体地,反馈用户可直接通过该反馈模板对软件构件的各信任属性进行评价,构件库系统可将反馈用户对软件构件各信任属性的评分信息和评价时间收集起来,作为针对该软件构件信任属性的证据信息。
第二种方式,当构件库系统中已存在较好的用户反馈机制时,可通过该反馈模板扫描构件库系统中软件构件获取的所有原始反馈信息,并获针对软件构件各信任属性的评分信息和评价时间,并作为软件构件信任属性的证据信息。
实际应用中,可从构件库系统中获取与表1中安全性信任属性的评价项目对应的评价,并获得对该应评价项目的评分信息和评价时间。如构件库系统中有对安全性中的A评价项目的评价,则获取该评价项目,并获得该评价项目对应的评分信息,同时,可根据构件库系统的需要,将评分信息中的评分转换为软件构件评估所需的数值,如4~5分转化为0.9分,相应的若是B评价项目的评价,对应的评分信息2~3分可转化为0.6分,以便于可信度的运算。
c、将包括评分信息及评价时间的反馈评价作为证据信息保存到构件库系统的数据库中。
通过将证据信息统一存储在数据库中,便于后续软件构件的各信任属性证据信息的查询和调用。
步骤202、根据证据信息,获得软件构件在信任属性上的信誉值;
根据步骤201中获得的信任属性对应的包括评分信息和评价时间的证据信息,可获得软件构件在各信任属性上的信誉值。
具体地,软件构件在信任属性上的信誉值可通过以下运算方式获得:以对应信任属性的证据信息中的评价时间与当前时间的差输入以e为底的指数函数,作为证据信息中的对应评分信息的权重,按照加权求和的方式获得软件构件在该信任属性上的信誉值。即获得评价时间与当前时间的差t,以e-t作为对应的评分信息的权重,通过加权平均的计算方式获得软件构件在该信任属性上的信誉值。
信任属性上的信誉值反映了软件构件在该信任属性方面的可信性。根据需要,可获得软件构件在各种信任属性上的信誉值。
步骤203、获取对应于软件构件的信任属性的权重值;
信任属性的权重值由检索用户输入或软件构件库系统预设,本实施例中,软件构件信任属性的权重可根据检索用户的输入获得。具体地,当检索用户在一个构件库系统中查询软件构件时,软件构件库系统可提供一个由检索用户定义信任属性权重的界面,检索用户可以选择或输入各信任属性的权重。权重值可设定在[-1,1]之间,且所有信任属性的权重值之和为1。权重值的大小反映了检索用户的偏好程度,若用户偏重于软件构件的可靠性,则检索用户可将可靠性的信任属性的权重设定的大些,如0.9,相对的效率可设定的小些,如0.1等。
基于权重值获得的软件构件的可信度更加符合用户的要求,可以为检索用户提供更加有针对性的软件构件的可信度,进一步地提高了软件构件可信度的实用性和针对性。
步骤204、根据信任属性上的信誉值和权重值,获得软件构件的可信度。
根据所述软件构件在所述信任属性上的信誉值和用户输入的与所述信任属性对应的权重值,按照加权平均方式获得所述软件构件的可信度;或
根据所述软件构件在所述信任属性上的信誉值和所述构件库系统预设的与所述信任属性对应的权重值,按照加权平均方式获得所述软件构件的可信度。
与上述实施例一相比,本实施例通过设定信任属性的权重,使得可信度的评价更具针对性和实用性,更加利于用户找到合适的软件构件,进一步提高了软件构件的复用效率。
如图3所示,为本发明软件构件可信度评价方法实施例三的流程图。本实施例包括以下步骤:
步骤300、定制树形的可信性描述模板,信任属性对应于树形的可信性描述模板中的各节点;
本实施例中,树形的可信性描述模板中包括软件构件的各种信任属性以及对应于各信任属性的描述信息。同时,树形的可信性描述模板还反映了软件构件各信任属性之间的关系,即分支节点的信任属性由子节点信任属性组成,分支节点信任属性的信誉值依赖于其子节点信任属性的信誉值。譬如,若一个可信性描述模板的软件构件信任属性包括可靠性和效率,其中可靠性又包括可用性、成熟性和容错性;效率又包括时间特性和资源利用性。在该树形的可信性描述模板中,可靠性和效率属于同一层次,均为分支节点;而可用性、成熟性和容错性为分支节点可靠性的子节点,时间特性和资源利用性为分支节点效率的子节点,且他们均为同一个层次。
本步骤中,通过建立树形的可信性描述模板,便于软件构件库系统的管理,向下可用于分析软件构件库系统需要获取哪些方面的评价信息,向上可用于软件构件可信性评估,获得软件构件的可信度。根据树形的可信性描述模板,可确立构件可信度评价的目标,并有针对性的获取软件构件的各信任属性的证据信息。
步骤301、基于树形的可信性描述模板,从构件库系统中获取对应于可信性描述模板的叶节点的证据信息;
树形可信性描述模板包含各种反映软件构件的信任属性。由于软件构件在树形的可信性描述模板中分支节点信任属性上的信誉值是根据软件构件在该分支节点的子节点的信任属性上的信誉值获得,因此,只要从构件库中获得叶节点信任属性的证据信息,就可获得软件构件在各节点信任属性上的信誉值。通过获得对应于可信性描述模板的叶节点的证据信息,可作为软件构件可信度评价的依据。
具体地,软件构件可信性描述模板中叶节点信任属性的证据信息可通过以下步骤获得:
a、根据树形的可信性描述模板建立反馈模板,该反馈模板包括树形的可信性描述模板中的叶节点信任属性;
由于软件构件在树形的可信性描述模板中的分支节点的信任属性上的信誉值可根据分支节点的各子节点的信誉值获得,因此本反馈模板可只包含树形的可信性描述模板中的叶节点信任属性。
反馈模板中包含了各种反映软件构件能力的信任属性,可将反馈模板作为获得软件构件信任属性信息的一个平台。通过该平台,可有针对性的获取反馈用户对软件构件的各信任属性的反馈评价,并将获得的反馈评价作为构件评估的证据信息。该反馈模板可包括针对各信任属性的反馈评价项目以及与评价项目对应的评分信息。通过从构件库系统中寻找与软件构件信任属性对应的评价项目,并获取对应该反馈评价的评分信息和评价时间,作为软件构件评估的依据。
具体地,针对反馈模板中的一个叶节点信任属性,可对应设定多种反馈评价项目,且对每种反馈评价项目,都有一评分信息与此对应。如设定的反馈评价项目可为三种,则对应的评分信息也为三种;若设定的反馈评价项目为六种,对应的评分信息也为六种,可以理解,反馈评价项目越多,用户对软件构件的反馈评价就越详细,则根据证据信息获得的可信度也就越准确。实际应用中,可根据需要预先设定好反馈评价项目。本实施列中,每个叶节点信任属性的反馈评价项目有三种,对应的评分信息也有三种,详细请见表1。
b、基于反馈模板,获得针对软件构件的信任属性提交的评价项目及与该评价项目对应的评分信息,并记录提交该评价项目时的评价时间,该评价项目由构件使用者和/或软件测试者提供;
具体地,根据步骤a中的反馈模板,可通过以下两种方式获得软件构件各信任属性的证据信息:
第一种方式,当构件库系统中不存在用户反馈机制时,可以此反馈模板收集反馈用户的反馈评价信息,即证据信息。具体地,反馈用户可直接通过该反馈模板对软件构件的各信任属性进行评价,构件库系统可将反馈用户对软件构件各信任属性的评分信息和评价时间收集起来,作为软件构件信任属性的证据信息。
第二种方式,当构件库系统中已存在较好的用户反馈机制时,可通过该反馈模板扫描构件库系统中软件构件获取的所有原始反馈信息,并获针对软件构件各信任属性的评分信息和评价时间,并作为软件构件信任属性的证据信息。
实际应用中,可从构件库系统中获取与表1中安全性信任属性的评价项目对应的评价,并获得对该应评价项目的评分信息和评价时间。如构件库系统中有对安全性中的A评价项目的评价,则获取该评价项目,并获得该评价项目对应的评分信息,同时,可根据构件库系统的需要,将评分信息中的评分转换为软件构件评估所需的数值,如4~5分转化为0.9分,相应的若是B评价项目的评价,对应的评分信息2~3分可转化为0.6分,以便于可信度的运算。
c、将包括评分信息及评价时间的反馈评价作为证据信息保存到构件库系统的数据库中。
通过将证据信息统一存储在数据库中,便于后续对软件构件的各信任属性证据信息的查询和调用。
步骤302、获取对应于软件构件的信任属性的权重值;
信任属性的权重值由检索用户输入或软件构件库系统预设,本实施例中,软件构件信任属性的权重根据检索用户的输入获得。具体地,当检索用户在一个构件库系统中查询软件构件时,软件构件库系统可提供一个由检索用户定义信任属性权重的界面,检索用户可以选择或输入各信任属性的权重。权重值可设定在[-1,1]之间,且所有信任属性的权重值之和为1。权重值的大小反映了检索用户的偏好程度,若用户偏重于软件构件的可靠性,则检索用户可将可靠性的信任属性的权重设定的大些,如0.9,相对的效率可设定的小些,如0.1等。
基于权重值获得的软件构件的可信度更加符合用户的要求,可以为检索用户提供更加有针对性的软件构件的可信度,进一步地提高了软件构件可信度的实用性和针对性。
步骤303、根据证据信息,获得软件构件在各信任属性上的信誉值;
具体地,根据叶节点信任属性对应的证据信息,通过运算获得软件构件在树形模板中各信任属性上的信任属性的信誉值。其中软件构件在叶节点信任属性上的信誉值计算可同上述实施例中信誉值的计算方式,软件构件在各分支节点信任属性上的信誉值计算类似于上述实施例中的可信度的运算。
具体地,本实施例中,叶节点信任属性的信誉值可通过如下方式运算获得:将当前时间减去证据信息中的评价时间,获得差值t,以e-t作为其对应的评分信息的权重值,通过加权求和的计算方式获得信任属性的信誉值。
分支节点信任属性的信誉值可通过如下方式运算获得:根据树形的可信性描述模板中分支节点的子节点的信誉值,获得所述分支节点的信任属性的信誉值。具体地,若用户输入或构件库系统预设有各子节点信任属性的权重值时,根据所述子节点信任属性的信誉值及与所述子节点信任属性对应的权重值,按照加权求和的计算方式获得与所述子节点对应的所述分支节点信任属性的信誉值;否则,根据所述子节点信任属性的信誉值,按照求和的计算方式获得与所述子节点对应的所述分支节点信任属性的信誉值。
步骤304、根据信任属性上的信誉值和权重值,获得软件构件的可信度。
根据软件构件在信任属性上的信誉值和用户输入的与信任属性对应的权重值,按照加权平均方式获得所述软件构件的可信度;或
根据软件构件在信任属性上的信誉值和构件库系统预设的与信任属性对应的权重值,按照加权平均方式获得所述软件构件的可信度。
与上述实施例二相比,本实施例通过建立树形的可信性描述模板,实现了对软件构件各信任属性之间关系的描述,使得基于树形的可信性描述模板的可信度运算更加准确可靠。
如图4所示,为本发明软件构件可信度评价系统实施例一的结构图。本实施例包括定制模块1,用于定制软件构件可信性描述模板,可信性描述模板设置有信任属性和对应于信任属性的描述信息;获取模块2,用于从构件库系统中获取对应于软件构件的信任属性的证据信息;运算模块3,用于根据证据信息,对软件构件的可信度进行评价,获得软件构件的可信度。
本实施例中,运算模块3包括信誉运算模块31,用于根据对应于信任属性的证据信息,获得软件构件在信任属性上的信誉值;可信度运算模块32,用于根据信任属性上的信誉值,获得软件构件的可信度。
本实施例还可包括反馈信息描述模块4,用于根据可信性描述模板建立反馈模板,该反馈模板包括可信性描述模板中的信任属性;反馈信息收集模块5,用于基于反馈模板,获得针对软件构件的信任属性提交的反馈评价及与该反馈评价对应的评分信息,并记录提交该反馈评价的评价时间等信息,该反馈评价由构件使用者和/或软件测试者提供;反馈信息存储模块6,用于将包括评分信息及评价时间的构件反馈评价作为证据信息保存到构件库系统的数据库中。权重获取模块7,用于获取用户输入或构件库系统预设的与信任属性对应的权重值。检索模块8,用于根据软件构件的可信度,将可信性高的软件构件排列在检索结果前列,给所述构件库系统的检索用户提供个性化的构件推荐机制。
本实施例通过定制模块定制软件构件可信性描述模板,确立面向用户的构件可信性评价的目标,并根据该可信性评价目标获得软件构件各信任属性的证据信息,基于证据信息获得软件构件的可信度,使得软件构件的可信度具有较强的针对性和实用性。同时,也可根据软件构件特定的信任属性获取软件构件的可信度,使得本发明具有较强的环境适应能力,可提供适应各种环境需求的可信度评价机制。本实施例还可通过设定信任属性的权重值为用户提供更加可靠准确的可信度,进一步提高了构件复用的效率。
如图5所示,为本发明软件构件可信度评价系统实施例二中运算模块的结构图。在上述实施例的基础上,本实施例中的定制模块1为可用于建立树形的可信性描述模板的定制模块,软件构件的信任属性对应于树形的可信性描述模板的各节点。本实施例中的运算模块3还包括第二信誉运算模块33,用于根据子节点信任属性的信誉值,按照求和平均的方式获得与该子节点对应的分支节点信任属性的信誉值;或根据子节点信任属性的信誉值及与该子节点信任属性对应的权重值,按照加权平均的方式获得与该子节点对应的分支节点信任属性的信誉值。
本实施例中,通过建立树形的可信性描述模板,描述了软件构件各信任属性之间的关系,符合实际应用情况。同时可通过信誉运算模块31获得软件构件在叶节点信任属性上的信誉值,通过第二运算模块33运算获得软件构件在各分支节点信任属性上的信誉值。在计算软件构件在各分支节点信任属性上的信誉值时,还可根据权重获取模块7获得的权重值以加权求和方式获得信誉值。
本实施例中,通过定制树形的可信性描述模板,建立了软件构件信任属性之间的关系,进一步提高了软件构件可信度评估的准确性,提高了构件的复用效率。
由于软件构件库作为一种进行软件构件管理的基础工具,在软件构件提供者和软件构件复用者之间起着桥梁的作用。当一个软件构件被发布到软件构件库中以后,软件构件库可以对软件构件进行标识管理和维护软件构件的所有相关的描述信息,同时为也软件构件复用者提供检索服务。本发明实施例可进行适应性修改后作为构件库系统的一个子系统,用于支持软件构件可信度的评价。
首先,根据软件构件的可信性,由软件构件库管理员在构件库系统中建立并存储可信性描述模板;
为保证可信性描述模板的可定制性,该可信性描述模板可包括模板信息和模板结点两部分,其中模板信息描述了模板的名字、发布者、反馈对象的类别(如软件构件)、验证标记、模板发布时间以及模板更新日期等;模板结点可包括信任属性及描述信息,其中信任属性可包括可用性、可靠性、安全性、完整性、保密性、易维护性以及效率,信任属性的描述包括名称、信誉值、反馈数目、以及计算方法等描述信息。
其次,基于上述的可信性描述模板,建立获取模块;
可信性描述模板可用于建立反馈模板,构件库系统可基于反馈模板扫描构件库系统已有的反馈信息,获取对应于软件构件信任属性的证据信息,不必重新构建收集机制,根据构件库中已有的证据信息对软件构件的可信性进行评估。此外,构件库系统也可基于此反馈模板建立反馈界面,直接获取用户提交的反馈评价,也可由在线监控系统在线获得对反馈模板中的信任属性的评价。
然后,构建一个权重获取模块,支持面向用户的信任属性权重定制;
基于权重获取模块,构件库系统可提供一面向用户的权重定制界面,以满足不同软件构件复用者的检索需求,提高检索效率和构件复用的效果。
最后,建立运算模块和检索模块,进行可信度计算和结果显示。
具体的,构件库系统可基于获得的软件构件在不同信任属性上的信誉值和上述定制的软件构件各信任属性上的权重值,按照加权平均的计算方式计算出软件构件的可信度;经过计算获得的可信度可以量化的数值形式表示,系统也可根据该量化的数值判定可信性等级并以图形化的形式显示出来,以供软件构件复用者使用。在软件构件复用者检索时,构件库系统可以将具有较高可信度的软件构件排在检索结果的前列,对外提供一致的检索界面。
如上所述,本发明用于软件构件库的管理系统中,可通过在软件构件库中建立可信性评估子系统,再结合软件构件库中的其它系统,就可以实现软件构件的证据信息的收集和软件构件可信度的计算,便于软件构件库的管理和软件构件库系统用户的使用,提高构件复用的效率。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种软件构件可信度评价方法,其特征在于,包括:
定制软件构件可信性描述模板,确立面向用户的构件可信性评价的目标,所述可信性描述模板设置有所述软件构件的信任属性;
根据所述可信性描述模板建立反馈模板,所述反馈模板包括所述可信性描述模板中的所述信任属性;
基于所述反馈模板,获得针对软件构件的信任属性提交的反馈评价及与所述反馈评价对应的评分信息,并记录提交所述反馈评价的评价时间,所述反馈评价由构件使用者和/或软件测试者提供;
将包括所述评分信息及评价时间的构件反馈评价作为证据信息保存到构件库系统的数据库中;
基于所述可信性描述模板,从所述构件库系统中获取对应于所述软件构件的信任属性的证据信息,所述软件构件信任属性的证据信息是其它实体对软件构件的信任属性的评价,即该软件构件获得的反馈信息;
根据所述证据信息,对所述软件构件的可信度进行评价,获得所述软件构件的可信度,包括:
根据对应于所述信任属性的所述证据信息,获得所述软件构件在所述信任属性上的信誉值;
根据所述软件构件在所述信任属性上的信誉值和与所述信任属性对应的权重值,按照加权平均方式获得所述软件构件的可信度。
2.根据权利要求1所述的软件构件可信度评价方法,其特征在于所述根据对应于所述信任属性的所述证据信息,获得所述软件构件在所述信任属性上的信誉值包括:
以对应所述信任属性的所述证据信息中的评价时间与当前时间的差输入以e为底的指数函数,作为所述证据信息中的对应评分信息的权重,按照加权求和的方式获得所述软件构件在所述信任属性上的信誉值。
3.根据权利要求1所述的软件构件可信度评价方法,其特征在于所述根据所述软件构件在所述信任属性上的信誉值和与所述信任属性对应的权重值,按照加权平均方式获得所述软件构件的可信度包括:
根据所述软件构件在所述信任属性上的信誉值和用户输入的与所述信任属性对应的权重值,按照加权平均方式获得所述软件构件的可信度;或
根据所述软件构件在所述信任属性上的信誉值和所述构件库系统预设的与所述信任属性对应的权重值,按照加权平均方式获得所述软件构件的可信度。
4.根据权利要求1所述的软件构件可信度评价方法,其特征在于所述定制软件构件可信性描述模板,确立面向用户的构件可信性评价的目标,所述可信性描述模板设置有所述软件构件的信任属性包括:
所述构件库系统预定制了设置有可用性、可靠性、安全性、完整性、保密性、易维护性和效率的所述信任属性的所述可信性描述模板。
5.根据权利要求1所述的软件构件可信度评价方法,其特征在于所述定制软件构件可信性描述模板,确立面向用户的构件可信性评价的目标,所述可信性描述模板设置有所述软件构件的信任属性包括:
定制树形的可信性描述模板,所述信任属性对应于所述树形的可信性描述模板中的各节点。
6.一种软件构件可信度评价系统,其特征在于包括:
定制模块,用于定制软件构件可信性描述模板,确立面向用户的构件可信性评价的目标,所述可信性描述模板设置有所述信任属性;
反馈信息描述模块,用于根据所述可信性描述模板建立所述反馈模板,所述反馈模板包括所述可信性描述模板中的所述信任属性;
反馈信息收集模块,用于基于所述反馈模板,获得针对软件构件的信任属性提交的反馈评价及与所述反馈评价对应的评分信息,并记录提交所述反馈评价的评价时间,所述反馈评价由构件使用者和/或软件测试者提供;
反馈信息存储模块,用于将包括所述评分信息及评价时间的构件反馈评价作为证据信息保存到构件库系统的数据库中;
获取模块,用于基于所述可信性描述模板,从所述构件库系统中获取对应于所述软件构件的信任属性的证据信息,所述软件构件信任属性的证据信息是是其它实体对软件构件的信任属性的评价,即该软件构件获得的反馈信息;
运算模块,用于根据所述证据信息,对所述软件构件的可信度进行评价,获得所述软件构件的可信度;
所运算模块包括:
信誉运算模块,用于根据对应于所述信任属性的所述证据信息,获得所述软件构件在所述信任属性上的信誉值;
可信度运算模块,用于根据所述软件构件在所述信任属性上的信誉值和与所述信任属性对应的权重值,按照加权平均方式获得所述软件构件的可信度。
7.根据权利6所述的软件构件可信度评价系统,其特征在于还包括:
权重获取模块,用于获取用户输入或所述构件库系统预设的与所述信任属性对应的所述权重值。
8.根据权利6所述的软件构件可信度评价系统,其特征在于所述定制模块为还用于定制树形的可信性描述模板的定制模块,所述信任属性对应于所述树形的可信性描述模板中的各节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810116038XA CN101311898B (zh) | 2008-07-02 | 2008-07-02 | 软件构件可信度评价方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810116038XA CN101311898B (zh) | 2008-07-02 | 2008-07-02 | 软件构件可信度评价方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101311898A CN101311898A (zh) | 2008-11-26 |
CN101311898B true CN101311898B (zh) | 2010-11-17 |
Family
ID=40100558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810116038XA Active CN101311898B (zh) | 2008-07-02 | 2008-07-02 | 软件构件可信度评价方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101311898B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101464832B (zh) * | 2009-01-16 | 2011-01-05 | 哈尔滨工程大学 | 基于pi演算和拟合度分析的自律软件可信性度量方法 |
CN102043718A (zh) * | 2010-12-29 | 2011-05-04 | 南京航空航天大学 | 支持定制证据模型与属性模型的软件可信评估实现方法 |
CN102982231B (zh) * | 2012-10-30 | 2015-09-02 | 北京大学 | 软件可信度的定量计算方法 |
CN103294558B (zh) * | 2013-05-29 | 2016-09-21 | 北京大学 | 一种支持动态信任评估的MapReduce调度方法 |
CN104461896B (zh) * | 2014-12-18 | 2017-05-10 | 北京轩宇信息技术有限公司 | 基于可信属性的航天系统关键软件评价方法 |
US10083295B2 (en) * | 2014-12-23 | 2018-09-25 | Mcafee, Llc | System and method to combine multiple reputations |
CN105184170B (zh) * | 2015-09-21 | 2017-07-28 | 吉林大学 | 一种基于形式化程度的领域软件可信性评估方法 |
CN107908557B (zh) * | 2017-11-14 | 2020-10-20 | 上海电子信息职业技术学院 | 一种嵌入式软件可信属性建模与验证方法 |
CN108984843B (zh) * | 2018-06-20 | 2021-02-09 | 北京大学 | 一种基于守卫计算的区间信息分析方法 |
CN112764794A (zh) * | 2021-01-08 | 2021-05-07 | 世纪龙信息网络有限责任公司 | 一种开源软件信息管理系统和方法 |
-
2008
- 2008-07-02 CN CN200810116038XA patent/CN101311898B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN101311898A (zh) | 2008-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101311898B (zh) | 软件构件可信度评价方法和系统 | |
US20160180480A1 (en) | System & Method For Assessing & Responding to Intellectual Property Rights Proceedings/Challenges | |
CN112231533A (zh) | 数据处理方法、装置、设备及存储介质 | |
CN109309596A (zh) | 一种压力测试方法、装置及服务器 | |
CN111708682A (zh) | 数据预测方法、装置、设备及存储介质 | |
CN110866698A (zh) | 用于评定服务提供方的服务分值的装置 | |
WO2020253353A1 (zh) | 预设用户的资源获取资质生成方法及相关设备 | |
CN114219664B (zh) | 产品推荐方法、装置、计算机设备及存储介质 | |
CN113434746B (zh) | 基于用户标签的数据处理方法、终端设备及存储介质 | |
Giacobbe et al. | Evaluating information quality in delivering IoT-as-a-service | |
CN117077648A (zh) | 数据的处理方法及装置、存储介质和电子设备 | |
Johansson et al. | Assessment of enterprise information security-estimating the credibility of the results | |
CN111882113A (zh) | 一种企业手机银行用户的预测方法和装置 | |
CN116089490A (zh) | 数据分析方法、装置、终端和存储介质 | |
CN115358894A (zh) | 一种知识产权生命周期托管管理方法、装置、设备及介质 | |
CN113723974A (zh) | 一种信息处理方法、装置、设备及存储介质 | |
CN113344333A (zh) | 一种可配置的企业征信预警方法、装置、设备及存储介质 | |
CN111400174A (zh) | 数据源的应用效能的确定方法、装置和服务器 | |
CN104778636A (zh) | 船舶装备维修保障信息服务推荐方法 | |
CN112148491B (zh) | 数据处理方法及装置 | |
CN118250735A (zh) | 移动网络感知预测方法、装置、设备及存储介质 | |
Ferrucci et al. | A lean approach to estimate the functional size of operating applications | |
CN118296141A (zh) | 报告生成方法和装置、处理器及电子设备 | |
CN117391490A (zh) | 金融业务的评价信息处理方法、装置和计算机设备 | |
Mielke | IQ principles in software development |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |