一种基于产品线开发的软件质量评估方法与流程

文档序号:26589279发布日期:2021-09-10 20:21阅读:104来源:国知局
一种基于产品线开发的软件质量评估方法与流程

1.本发明属于软件质量评价方法技术领域,涉及一种基于产品线开发的软件质量评估方法。


背景技术:

2.软件度量是对软件开发项目、过程及其产品进行定量化的过程,目的在于对其加以理解、预测、评估、控制和改善。正确有效地度量和评价出软件质量的高低对于软件的使用者及开发人员都具有非常重要的意义。没有适当准则去判断、评估软件的过程和阶段性的质量,就无法做出适当的决策,更谈不上进行有效的管理。软件质量度量是贯穿于软件工程的全过程以及软件交付之后的。软件产品是遵循特定过程开发的,高质量的产品是通过软件生命周期的所有阶段才得到的,应考虑到软件生命周期的问题,针对不同阶段的软件产品确定不同的度量项,现有技术暂未出现此种方法。


技术实现要素:

3.本发明的目的是提供一种基于产品线开发的软件质量评估方法,能针对基于产品线开发的软件产品,计算各开发阶段的质量评估因子并根据软件特性分配各质量评估因子权重完成软件综合质量量化评估。
4.本发明所采用的技术方案是,一种基于产品线开发的软件质量评估方法,具体按照如下步骤实施:
5.步骤1,确定开发过程各阶段的质量评估因子;
6.步骤2,决定质量评估因子预处理;
7.步骤3,确定每个决定质量评估因子的权重;
8.步骤4,计算软件质量的综合评估值。
9.本发明的特征还在于,
10.步骤1中开发过程各阶段具体为确定产品线架构阶段,框架构件检索、选取和构建阶段,框架实现阶段和产品应用阶段四个阶段。
11.步骤1中产品线架构阶段的质量评估因子的确定方法具体为:
12.首先将新系统的需求与领域需求进行比较,确定该领域是否有现货产品架构可以直接复用;
13.若有现货产品架构时,则质量评估因子为:需创建的支撑拓展功能的新框架n
naf
占组成支撑拓展功能全部框架n
af
的比例p
naf

14.p
naf
=n
naf
/n
af

15.以及,需创建的支撑拓展功能的新框架n
naf
占组成支撑拓展功能全部框架n
af
的比例p
naf
和需创建的支撑拓展功能的新框架n
naf
占组成新架构所需全部框架n
f
的比例p
nf
之积,即为:p
naf
×
p
nf

16.若无现货产品架构时,则质量评估因子为:需创建的支撑拓展功能的新框架n
naf

组成新架构所需全部框架n
f
的比例p
nf
,p
nf
=n
naf
/n
f

17.步骤1中框架构件检索、选取和构建阶段的质量评估因子为:
18.构件从通用构件库获得的比例与需要新开发构件的比例之积,即为:p
c
=p
gc
×
(1

p
sc

p
gc
)
19.其中,p
sc
=n
sc
/n
c
,p
gc
=n
gc
/n
c
,n
c
为框架中的构件,n
sc
为从专用构件库获得构件,p
sc
为框架中的构件n
c
从专用构件库获得构件n
sc
所占的比例,n
gc
为从通用构件库获得构件、p
gc
为框架中的构件n
c
从通用构件库获得构件n
gc
的比例。
20.步骤1中框架实现阶段的质量评估因子包括:
21.代码开发量l
nf
与组成该框架的构件平均代码行l
ac
的比例p
gf
,即为p
gf
=l
nf
/l
ac

22.框架测试的一次通过率,即为p
sf
=n
sf
/n
f
,其中n
sf
为一次通过框架数量,n
f
为框架总数;
23.框架集成测试质效比p
tf
,即为:p
tf
=c
pf
/c
nf
,其中,c
nf
为框架集成测试的代码缺陷密度,c
pf
为框架封装测试时的代码缺陷密度;
24.产品测试质效比p
ta
,即为:p
ta
=c
pa
/c
na
,其中c
na
为产品测试的代码缺陷密度,c
pa
为同类成熟产品测试或者架构上线测试时的代码缺陷密度c
pa

25.步骤1中产品应用阶段的质量评估因子包括:
26.可靠性q
r
,是指一个指定时间周期内软件无故障运行的概率,定义如下:
[0027][0028]
即为,在时间间隔δt内,s是软件产品提供的总的服务请求,f代表未完成的服务请求;
[0029]
可用性q
a
,指平均正常运行的比率;
[0030][0031]
其中,mttr为平均修复时间,mtbf为平均故障间隔时间,n是在δt内服务被请求时发生故障的次数,t
f(n)
是第n次失效的时刻,t
r(n)
是第n次失效恢复正常的时刻,t
r(n

1)
是第n

1次失效恢复正常的时刻;
[0032]
执行时间实需比p
qt
,p
qt
=q
t
/q
maxt

[0033]
其中,q
t
为执行时间,是完成服务任务的平均花费时间,t
q(m)
是软件完成服务请求的时刻,t
a(m)
是服务请求到达时间,m是指在以秒为单位的时间间隔δt内对软件的请求次数;
[0034]
q
maxt
为研制性能需求中要求的执行时间最大容忍值;
[0035]
吞吐量的实需比p
qtp
,p
qtp
=q
tp
/q
mintp

[0036]
其中,q
tp
为吞吐量,是指在δt的时间间隔内软件能够处理的最大请求数量,即就是q
tp
=max(s
success
);
[0037]
q
mintp
为研制性能需求中要求的最低吞吐量容忍值。
[0038]
步骤2具体为:质量评估因子分为中间评估因子和决定评估因子,中间评估因子是效率或质量要素的不完全表征,用途为计算决定评估因子,决定评估因子的值直接影响综合评估值,确定决定评估因子为:p
nf
或p
naf
×
p
nf
、p
c
、p
gf
、p
sf
、p
ta
、p
tf
、q
r
、p
qt
、p
qtp
和q
a

[0039]
其中,p
naf
×
p
nf
、p
nf
、p
c
、p
gf
、p
qt
为极小型因子,p
sf
、p
ta
、p
tf
、q
r
、p
qtp
、q
a
是极大型因子;
[0040]
对极小型因子x=p
naf
×
p
nf
或p
nf
或p
c
或p
gf
或p
qt
进行预处理,具体为:x
*
=1

x;
[0041]
对极大型因子x=p
sf
或p
ta
或p
tf
或q
r
或p
qtp
或q
a
进行预处理,具体为:x
*
=x。
[0042]
步骤3具体为:
[0043]
评估者将经步骤2预处理的后的极小型因子以及极大型因子按重要程度从高到低排列起来依次放入集合中,m为决定评估因子数量,即的重要性要大于i=1、2

m,决策者根据软件的质量需求、开发过程数据和自身经验给出每个评估因子的权重值ω
i
[0044][0045]
步骤4具体为:
[0046]
将各项评估因子预处理后综合起来计算得到软件产品质量的综合评估值q
un

[0047][0048]
本发明的有益效果是
[0049]
本发明填补了缺少针对基于产品线开发的软件综合质量量化评估模型的空白,既精确、客观地评价了各度量项,又克服了单一模型不能适应不同特性软件的缺陷,所有度量项均转化成可以量化计算的质量评估因子,各质量评估因子的权重可以根据软件特性自定义,通过各开发阶段的质量评估因子计算出软件质量的综合评估值。
具体实施方式
[0050]
下面结合具体实施方式对本发明进行详细说明。
[0051]
一种基于产品线开发的软件质量评估方法,具体按照如下步骤实施:
[0052]
步骤1,确定产品线架构阶段,框架构件检索、选取和构建阶段,框架实现阶段和产品应用阶段四个阶段的质量评估因子,具体为:
[0053]
产品线架构阶段的质量评估因子包括:
[0054]
首先将新系统的需求与领域需求进行比较,确定该领域是否有现货产品架构可以直接复用;
[0055]
若有现货产品架构时,则质量评估因子为:需创建的支撑拓展功能的新框架n
naf
占组成支撑拓展功能全部框架n
af
的比例p
naf

[0056]
p
naf
=n
naf
/n
af

[0057]
以及,需创建的支撑拓展功能的新框架n
naf
占组成支撑拓展功能全部框架n
af
的比例p
naf
和需创建的支撑拓展功能的新框架n
naf
占组成新架构所需全部框架n
f
的比例p
nf
之积,即为:p
naf
×
p
nf

[0058]
若无现货产品架构时,则质量评估因子为:需创建的支撑拓展功能的新框架n
naf
占组成新架构所需全部框架n
f
的比例p
nf
,p
nf
=n
naf
/n
f

[0059]
框架构件检索、选取和构建阶段的质量评估因子为:
[0060]
在确定了新产品的框架要素后,进一步在专用构件库和通用构件库检索组成框架所需的构件。框架是解决产品线架构某个子问题的相互关联的构件集合。专用构件库是为特定领域下的某一框架服务的,其可以为多个产品线架构服务,为框架提供直接的、统一的存储和检索服务。因此,专用构件库中的构件在检索时可以一定程度屏蔽描述结构异构、术语语义差异等问题,提高选取的准确性和效率;
[0061]
构件从通用构件库获得的比例与需要新开发构件的比例之积,即为:p
c
=p
gc
×
(1

p
sc

p
gc
)
[0062]
其中,p
sc
=n
sc
/n
c
,p
gc
=n
gc
/n
c
,n
c
为框架中的构件,n
sc
为从专用构件库获得构件,p
sc
为框架中的构件n
c
从专用构件库获得构件n
sc
所占的比例,n
gc
为从通用构件库获得构件、p
gc
为框架中的构件n
c
从通用构件库获得构件n
gc
的比例;
[0063]
框架实现阶段的质量评估因子包括:
[0064]
构件需要通过适配器或胶水代码装配到框架中,这个过程中的代码开发量l
nf
与组成该框架的构件平均代码行l
ac
的比例p
gf
是反映构件适配性的关键参数;
[0065]
代码开发量l
nf
与组成该框架的构件平均代码行l
ac
的比例p
gf
,即为p
gf
=l
nf
/l
ac

[0066]
组装后的框架要进行测试,如果不能通过测试需要更换构件重新装配再次测试,所以框架测试的一次通过率p
sf
(一次通过框架数量n
sf
/框架总数n
f
)是制约框架实现阶段效率和质量的重要因素;
[0067]
框架测试的一次通过率,即为p
sf
=n
sf
/n
f
,其中n
sf
为一次通过框架数量,n
f
为框架总数;
[0068]
框架测试后还要进行框架集成测试和产品测试,框架集成测试的代码缺陷密度c
nf
、产品测试的代码缺陷密度c
na
是反映代码质量的主要指征。但是,代码的缺陷密度不能直接反映基于产品线开发的产品的质量和效率,应该通过与框架相似成功应用或者框架封装测试时的代码缺陷密度c
pf
、同类成熟产品测试或者架构上线测试时的代码缺陷密度c
pa
比较有参照物的体现该质量因素;
[0069]
框架集成测试质效比p
tf
,即为:p
tf
=c
pf
/c
nf
,其中,c
nf
为框架集成测试的代码缺陷密度,c
pf
为框架封装测试时的代码缺陷密度;
[0070]
产品测试质效比p
ta
,即为:p
ta
=c
pa
/c
na
,其中c
na
为产品测试的代码缺陷密度,c
pa
为同类成熟产品测试或者架构上线测试时的代码缺陷密度c
pa

[0071]
产品应用阶段的质量评估因子包括:
[0072]
可靠性q
r
,是指一个指定时间周期内软件无故障运行的概率,定义如下:
[0073][0074]
即为,在时间间隔δt内,s是软件产品提供的总的服务请求,f代表未完成的服务请求;
[0075]
可用性q
a
,指平均正常运行的比率;
[0076][0077]
其中,mttr为平均修复时间,mtbf为平均故障间隔时间,n是在δt内服务被请求时发生故障的次数,t
f(n)
是第n次失效的时刻,t
r(n)
是第n次失效恢复正常的时刻,t
r(n

1)
是第n

1次失效恢复正常的时刻;
[0078]
执行时间实需比p
qt
,p
qt
=q
t
/q
maxt

[0079]
其中,q
t
为执行时间,是完成服务任务的平均花费时间,t
q(m)
是软件完成服务请求的时刻,t
a(m)
是服务请求到达时间,m是指在以秒为单位的时间间隔δt内对软件的请求次数;
[0080]
q
maxt
为研制性能需求中要求的执行时间最大容忍值;
[0081]
吞吐量的实需比p
qtp
,p
qtp
=q
tp
/q
mintp

[0082]
其中,q
tp
为吞吐量,是指在δt的时间间隔内软件能够处理的最大请求数量,即就是q
tp
=max(s
success
);
[0083]
q
mintp
为研制性能需求中要求的最低吞吐量容忍值;
[0084]
步骤2,决定质量评估因子预处理,具体为:质量评估因子分为中间评估因子和决定评估因子,中间评估因子是效率或质量要素的不完全表征,用途为计算决定评估因子,决定评估因子的值直接影响综合评估值,确定决定评估因子为:p
nf
或p
naf
×
p
nf
、p
c
、p
gf
、p
sf
、p
ta
、p
tf
、q
r
、p
qt
、p
qtp
和q
a

[0085]
其中,p
naf
×
p
nf
、p
nf
、p
c
、p
gf
、p
qt
为极小型因子,p
sf
、p
ta
、p
tf
、q
r
、p
qtp
、q
a
是极大型因子;
[0086]
对极小型因子x=p
naf
×
p
nf
或p
nf
或p
c
或p
gf
或p
qt
进行预处理,具体为:x
*
=1

x;
[0087]
对极大型因子x=p
sf
或p
ta
或p
tf
或q
r
或p
qtp
或q
a
进行预处理,具体为:x
*
=x。
[0088]
步骤3,确定每个决定质量评估因子的权重,具体为:评估者将经步骤2预处理的后的极小型因子以及极大型因子按重要程度从高到低排列起来依次放入集合中,m为决定评估因子数量,即的重要性要大于i=1、2

m,决策者根据软件的质量需求、开发过程数据和自身经验给出每个评估因子的权重值ω
i

[0089]
步骤4,计算软件质量的综合评估值,具体为:将各项评估因子预处理后综合起来计算得到软件产品质量的综合评估值q
un

[0090][0091]
本发明以数据处理软件在航天测控软件架构的基础上根据基于产品线的航天测控软件开发过程进行开发,收集开发过程各阶段数据并计算质量评估因子如表1所示:
[0092]
数据处理软件质量综合评估值
[0093]
q
un
=0.09445+0.059178+0.019302+0.02723+0.024675+0.05115+0.149985+0.09+
0.24+0.149925=0.9059。
[0094]
表1数据处理软件质量评估因子及权重
[0095][0096]
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1