导航:首页 > 使用方法 > 软件功能点评估常用方法

软件功能点评估常用方法

发布时间:2023-05-27 02:30:16

⑴ 软件规模估算有哪些方法

现实中常见的软件成本估算方法包括经验法(专家法)、类推法,类比法、方程法,交叉验证法。除估算方法外,还需要估算数据库的支持才能继续度量分析,从而得出估算目标。估算数据基础可以是企业历史数据库,也可以是行业基准数据库。
《软件研发成本度量规范》中软件成本估算的思路分三步骤:规模估算、工作量估算、成本估算。

⑵ 软件测试评估的方法有哪些;分析这些方法有哪些特征。

1. 黑盒测试
黑盒测试顾名思义就是将被测系统看成一个黑盒,从外界取得输入,然后再输出。整个测试基于需求文档,看是否能满足需求文档中的所有要求。黑盒测试要求测试者在测试时不能使用与被测系统内部结构相关的知识或经验,它适用于对系统的功能进行测试。
黑盒测试的优点有:
1)比较简单,不需要了解程序内部的代码及实现;
2)与软件的内部实现无关;
3)从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;
4)基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;
5)在做软件自动化测试时较为方便。
黑盒测试的缺点有:
1)不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%;
2)自动化测试的复用性较低。

2. 白盒测试
白盒测试是指在测试时能够了解被测对象的结构,可以查阅被测代码内容的测试工作。它需要知道程序内部的设计结构及具体的代码实现,并以此为基础来设计测试用例。
白盒测试的直接好处就是知道所设计的测试用例在代码级上哪些地方被忽略掉,它的优点是帮助软件测试人员增大代码的覆盖率,提高代码的质量,发现代码中隐藏的问题。

白盒测试的缺点有:

1)程序运行会有很多不同的路径,不可能测试所有的运行路径;
2)测试基于代码,只能测试开发人员做的对不对,而不能知道设计的正确与否,可 能会漏掉一些功能需求;
3)系统庞大时,测试开销会非常大。

3. 基于风险的测试

基于风险的测试是指评估测试的优先级,先做高优先级的测试,如果时间或精力不够,低优先级的测试可以暂时先不做。有如下一个图,横轴代表影响,竖轴代表概率,根据一个软件的特点来确定:如果一个功能出了问题,它对整个产品的影响有多大,这个功能出问题的概率有多大?如果出问题的概率很大,出了问题对整个产品的影响也很大,那么在测试时就一定要覆盖到。对于一个用户很少用到的功能,出问题的概率很小,就算出了问题的影响也不是很大,那么如果时间比较紧的话,就可以考虑不测试。
基于风险测试的两个决定因素就是:该功能出问题对用户的影响有多大,出问题的概率有多大。其它一些影响因素还有复杂性、可用性、依赖性、可修改性等。测试人员主要根据事情的轻重缓急来决定测试工作的重点。

4. 基于模型的测试

模型实际上就是用语言把一个系统的行为描述出来,定义出它可能的各种状态,以及它们之间的转换关系,即状态转换图。模型是系统的抽象。基于模型的测试是利用模型来生成相应的测试用例,然后根据实际结果和原先预想的结果的差异来测试系统。

⑶ 软件开发工作量如何评估

用于软件项目工作量估算的方法有以“估”为主的专家法和类推法,以“算”为主的类比法和方程法。在软件估算的实践中,类比法和类推法也是普遍使用的估算方法。
1、类比法
类比法是指将本项目的部分属性与类似的一组基准数据进行比对,进而获得待估算项目工作量、工期或成本估算值的方法。类比法是基于大量历史项目样本数据来确定目标项目的预测值,通常是以50百分位数为参考而非平均值。选择类比法进行估算,应根据项目的主要属性,在基准数据库中选择主要属性相同的项目进行比对。
类比法适合评估那些与历史项目在应用领域、系统规模、环境和复杂度方面相似的项目,通过新项目与历史项目的比较得到估计数据。类比法估算结果的精确度取决于历史项目数据的完整性和准确度。因此,用好类比法的前提条件之一是组织建立起较好的项目后评价与分析机制,对历史项目的相关属性建立基线数据。
适用范围:
当需求极其模糊或不确定时,如果此时有与本项目类似属性(如规模、应用类型、复杂度、开发团队经验等)的一组基准数据,则可直接采用类比法,充分利用基准数据来估算工作量。类比法可以在整个项目级上做基准比对,也可以在子系统级上进行。
估算过程:
1) 确定待估算项目所具有的属性特点,如系统的规模、复杂度、应用类型、业务领域、开发人员的经验和能力等。
2) 查询历史数据库并筛选“最相似”的项目属性数据。
3) 如果待估算项目属性与历史项目的主要属性类似,则可依据历史项目的基线数据直接得出待估算项目的工作量合理范围。
4) 如果同时满足待估算项目主要属性的历史项目太少,则可针对待估算项目的每个属性与历史项目相应属性的基准数据分别比对,再分别计算得出P25/P50/P75的平均值作为估算值。
5) 一般情况下,取P50的工作量数据作为待估算项目工作量最可能的值。
2、类推法
类推法是指将本项目的部分属性与高度类似的一个或几个已完成项目的数据进行比对,适当调整后获得待估算项目工作量、工期或成本估算值的方罩数法。选择类推法进行估算,通常只参照1~2个高度类似的项目,同时根据待估算项目与参照项目的差异,进行适当调整。
适用范围:
1) 当需求极其模糊或不确定时,较难估算工作量,如果此时具有高度类似的历史项目,则可直接采用类推法,充分利用历史项目数据进行估算。
2) 适用评估一些与历史项目在业务领域、应用类型、环境和复杂度等方面的相似项目,通过新项目与历史项目的比较进行估计。
3) 该方法估算结果的精确度取决于已完成项目滑团数据的完整性、准确度,以及两个项目之间的相似度。如果没有类似的项目,该方法就不能应用。
估算过程:
1) 识别出待估算项目的主要属性。
2) 查找本组织曾经做过的类似的历史项目。
3) 对比历史项目,标记差异点,经过调整后计算出待估算项目的工作量。
3、方程法

采用方程法进行工作量估算时,应考虑根据开发组织实际情况进行回归分析,建立回归方程。可将所有影响因子都考虑在内建立多元方程,也可以先根据部分影响因子算出初步的结果,再对结果进行调整。
行业级模型示例如下:
行业级模型: AE=(S*PDR)*SWF*RDF
公式中:
AE:调整后工作量,单位为人时
S:规模,单位物让首为功能点数
PDR:生产率,单位为人时每功能点
SWF:软件因素调整因子
RDF:开发因素调整因子
能上回答望采纳!如有疑问可私信!

⑷ 软件测试的方法一共有几种

1、从是否关心内部结构来看

(1)白盒测试:又称为结构测试或逻辑驱动测试,是一种按照程序内部逻辑结构和编码结构,设计测试数据并完成测试的一种测试方法。

(2)黑盒测试:又称为数据驱动测试,把测试对象当做看不见的黑盒,在完全不考虑程序内部结构和处理过程的情况下,测试者仅依据程序功能的需求规范考虑,确定测试用例和推断测试结果的正确性,它是站在使用软件或程序的角度,从输入数据与输出数据的对应关系出发进行的测试。

(3)灰盒测试:是一种综合测试法,它将“黑盒”测试与“白盒”测试结合在一起,是基于程序运行时的外部表现又结合内部逻辑结构来设计用例,执行程序并采集路径执行信息和外部用户接口结果的测试技术。

2、从是否执行代码看

(1)静态测试:指不运行被测程序本身,仅通过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性。

(2)动态测试:是指通过运行被测程序,检查运行结果与预期结果的差异,并分析运行效率、正确性和健壮性等性能指标。

3、从开发过程级别看

(1)单元测试:又称模块测试,是针对软件设计的最小单位----程序模块或功能模块,进行正确性检验的测试工作。其目的在于检验程序各模块是否存在各种差错,是否能正确地实现了其功能,满足其性能和接口要求。

(2)集成测试:又叫组装测试或联合,是单元测试的多级扩展,是在单元测试的基础上进行的一种有序测试。旨在检验软件单元之间的接口关系,以期望通过测试发现各软件单元接口之间存在的问题,最终把经过测试的单元组成符合设计要求的软件。

(3)系统测试:是为判断系统是否符合要求而对集成的软、硬件系统进行的测试活动、它是将已经集成好的软件系统,作为基于整个计算机系统的一个元素,与计算机硬件、外设、某些支持软件、人员、数据等其他系统元素结合在一起,在实际运行环境下,对计算机系统进行一系列的组装测试和确认测试。

在系统测试中,对于具体的测试类型有:

(1)功能测试:对软件需求规格说明书中的功能需求逐项进行的测试,以验证功能是否满足要求。

(2)性能测试:对软件需求规格说明书的功能需求逐项进行的测试,以验证功能是否满足要求。

(3)接口测试:对软件需求规格说明中的接口需求逐项进行的测试。

(4)人机交互界面测试:对所有人机交互界面提供的操作和显示界面进行的测试,以检验是否满足用户的需求。

(5)强度测试:强制软件运行在异常乃至发生故障的情况下(设计的极限状态到超出极限),验证软件可以运行到何种程序的测试。

(6)余量测试:对软件是否达到规格说明中要求的余量的测试。

(7)安全性测试:检验软件中已存在的安全性、安全保密性措施是否有效的测试,

(8)可靠性测试:在真实的或仿真的环境中,为做出软件可靠性估计而对软件进行的功能(其输入覆盖和环境覆盖一般大于普通的功能测试)

(9)恢复性测试:对有恢复或重置功能的软件的每一类导致恢复或重置的情况,逐一进行的测试。

(10)边界测试:对软件处在边界或端点情况下运行状态的测试。

(11)数据处理测试:对完成专门数据处理功能所进行的测试。

(12)安装性测试:对安装过程是否符合安装规程的测试,以发现安装过程中的错误。

(13)容量测试:检验软件的能力最高能达到什么程度的测试。

(14)互操作性测试:为验证不同软件之间的互操作能力而进行的测试。

(15)敏感性测试:为发现在有效输入类中可能引起某种不稳定性或不正常处理的某些数据的组合而进行的测试。

(16)标准符合性测试:验证软件与相关国家标准或规范(如军用标准、国家标准、行业标准及国际标准)一致性的测试。

(17)兼容性测试:验证软件在规定条件下与若干个实体共同使用或实现数据格式转换时能满足有关要求能力的测试。

(18)中文本地化测试:验证软件在不降低原有能力的条件下,处理中文能力的测试。

4、从执行过程是否需要人工干预来看

(1)手工测试:就是测试人员按照事先为覆盖被测软件需求而编写的测试用例,根据测试大纲中所描述的测试步骤和方法,手工地一个一个地输 入执行,包括与被测软件进行交互(如输入测试数据、记录测试结果等),然后观察测试结果,看被测程序是否存在问题,或在执行过程中是否会有一场发生,属于比较原始但是必须执行的一个步骤。

(2)自动化测试:实际上是将大量的重复性的测试工作交给计算机去完成,通常是使用自动化测试工具来模拟手动测试步骤,执行用某种程序设计语言编写的过程(全自动测试就是指在自动测试过程中,不需要人工干预,由程序自动完成测试的全过程;半自动测试就是指在自动测试过程中,需要手动输入测试用例或选择测试路径,再由自动测试程序按照人工指定的要求完成自动测试)

5、从测试实施组织看

(1)开发测试:开发人员进行的测试

(2)用户测试:用户方进行的测试

(3)第三方测试:有别于开发人员或用户进行的测试,由专业的第三方承担的测试,目的是为了保证测试工作的客观性

6、从测试所处的环境看

(1)阿尔法测试:是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的测试

(2)贝塔测试:是用户公司组织各方面的典型终端用户在日常工作中实际使用贝塔版本,并要求用户报告

(4)软件功能点评估常用方法扩展阅读

软件测试的内容:

1 得到需求、功能设计、内部设计说书和其他必要的文档

2 得到预算和进度要求

3 确定与项目有关的人员和他们的责任、对报告的要求、所需的标准和过程 ( 例如发行过程、变更过程、等等 )

4 确定应用软件的高风险范围,建立优先级、确定测试所涉及的范围和限制

5 确定测试的步骤和方法 ── 部件、集成、功能、系统、负载、可用性等各种测试

6 确定对测试环境的要求 ( 硬件、软件、通信等 )

7 确定所需的测试用具 (testware) ,包括记录 / 回放工具、覆盖分析、测试跟踪、问题 / 错误跟踪、等等

8 确定对测试的输入数据的要求

9 分配任务和任务负责人,以及所需的劳动力

10 设立大致的时间表、期限、和里程碑

11 确定输入环境的类别、边界值分析、错误类别

12 准备测试计划文件和对计划进行必要的回顾

13 准备白盒测试案例

14 对测试案例进行必要的回顾 / 调查 / 计划

15 准备测试环境和测试用具,得到必需的用户手册 / 参考文件 / 结构指南 / 安装指南,建立测试跟踪过程,建立日志和档案、建立或得到测试输入数据

16 得到并安装软件版本

17 进行测试

18 评估和报告结果

19 跟踪问题 / 错误,并解决它

20 如果有必要,重新进行测试

21 在整个生命周期里维护和修改测试计划、测试案例、测试环境、和测试用具

阅读全文

与软件功能点评估常用方法相关的资料

热点内容
拟研究的内容思路与方法怎么写 浏览:842
q74螺纹安装方法 浏览:895
简单去毛又不疼的方法 浏览:170
红利转投份额计算方法 浏览:58
猫罐头食用方法 浏览:54
香港拓客方法如何做 浏览:120
体力考核哪些方法 浏览:292
电脑防止蹭网最简单方法 浏览:508
散装苦荞的食用方法 浏览:889
治疗hpv有什么好方法吗 浏览:955
方差分析数据变换方法 浏览:66
和田玉籽料玉器鉴别方法 浏览:384
导线计算方法 浏览:322
票房的计算方法 浏览:573
少儿象棋教学方法探讨 浏览:894
口腔黏液囊肿治疗方法 浏览:415
什么是密度测量方法 浏览:591
卫生间做防水的正确方法 浏览:551
快速认识圈子的方法 浏览:257
前臂肌肉锻炼方法 浏览:628