项目管理之软件产品质量改进框架(1)

  作者:Amteam.org
2009/1/16 10:04:00
本文关键字: 审计

  软件产品质量不同于软件生产质量。如果一种软件产品的性能难以满足用户的期望,或者使用起来很不方便,或者在需要用到的时候却无法使用,等等,而仅仅达到比较准确地满足功能需求的水平,那么该产品并不能从用户那里得到较高的评价。产品的非功能特征包括:操作性、可用性和有效性。满足功能需求是产品获得用户较高评价的必要条件,但要使用户或最终用户对产品感到十分满意并愿意继续使用该产品,还需要深刻理解软件产品的非功能特征并使其得到满足。同一种软件产品有不同的风险承担者,而他们可能对该软件产品有着不同的需求期望。用户们对软件产品质量的认可取决于软件产品是否满足他们的需求期望。而从组织发展的观点来看,一种高质量的软件产品,在某种程度上,应能满足长期的需求期望同时又不必为此付出太多的努力和时间。

  拥有较高软件过程成熟度的组织能以极低的出错率来确保软件生产的质量。因此,在具有较高软件过程成熟度的组织内,如果在需求分析阶段以及对相应的功能进行设计、改进、测试的同时,对非功能特征给予恰当的关注,无疑将极大地提高软件产品的质量。这就是在MIEL发起的产品质量改进计划的主题。在本文中,我们将讨论那些对产品质量改进至关重要的关键过程和软件工程技术的相关领域。同时提出作者从所参与项目中得到的关于如何指导和开展某些关键实践(如指定非功能性需求)的一些经验,以供读者参考。我们还提出一些有关产品质量评价标准的想法,以帮助在产品的改进、测试以及交付过程中保持对产品质量的跟踪。

  1. 绪论

  软件产品质量不同于软件生产质量。一个成熟的软件过程能确保好的生产质量(功能的正确性、可估计的费用和进度、较低的出错率)。但是,产品质量对此提出了一个新的问题:好的生产质量是否就一定能保证满足用户对产品的期望呢?以及产品是否完全按照发展组织的观点进行开发,就像MIEL一样。这种观点包括许多方面,比如用户对产品提出的意见,它是由产品的可用性、操作性、有效性等因素决定的。从发展组织(MIEL)的观点来看,决定产品质量的因素还包括可重用构件的开发和使用以及它们是否在将来的产品中具有较强的改进能力,使产品能够容易地进行变更或者自定义,易于扩展,易于维护,易于操作。

  质量特征是由技术型风险承担者和非技术型风险承担者共同提出的希望实现的系统功能,它包括功能性、操作性、可用性、有效性、风险措施、安全性、质量,等等。我们可以进一步将这些质量特征划分为四大类,即:商业特征、行为特征、改进特征和发展特征。

  一般说来,软件产品的最终用户是最关心行为特征的风险承担者,发展组织最关心发展特征、商业特征和改进特征,消费者团体最关心商业特征和改进特征。

  实现软件产品的功能正确性是必要的,但是将一个产品的系统设计和实现与其它产品区分开来必须依靠非功能特征(比如操作性、可用性、有效性等等)的满足。

  3.1 特征调查

  在明确地阐述产品质量改进计划之前,我们应该与不同操作过程中的关键技术员进行交谈,以较好地理解他们所认同的产品质量特征的含义。数据代表项目的个数。调查涉及到的基本特征包括:操作性、可用性、有效性和改进能力。

  3.2 技术

  与产品质量相关的关键技术组成包括:

  —如何详细说明质量特征?
  —如何为质量特征进行设计?
   —如何分析和测试质量特征?

  我们研究的重点将放在下面四个质量特征上:操作性能、可用性、改进措施和有效性。

  3.2.1 操作性能特征

  操作性能特征规范特别适用于对时间、存储器、带宽和CPU资源进行约束。操作性能特征规范的时间约束包括最终期限、周期等潜在约束。存储器约束包括内存占用范围的约束。

  下面给出一个按照SMAP2000标准[2]得到的操作性能特征规范的例子。

  作为操作性能规范的一部分,设计约束条件最好采用一种相似的格式单独获得。它们如同输入一样是特定的并经过处理的。

  设计约束条件——操作性能模型的输入因素

  我们建议在设计期间[6]对所有的需要鉴定的性能规范进行分析,以确保该规范能用于设计过程。此外,我们还建议通过直接对案例进行测试来验证所有的性能规范[10]。

  3.2.2 改进能力特征

  改进能力是系统的一种适应需求变化、操作环境变更和执行技术变化的能力。改进特征包括产品的不同方面:可操作性、可更改性、可测量性、可扩展性。下面给出一个按照SMAP2000标准[2]得到的改进特征规范的例子:

  可操作性规范:

   —SMAP2000工具应可以基于NM平台在硬件或操作系统上运行。

  可更改性规范:

   —SMAP2000工具应可以支持新消息的添加。

  可扩展性规范:

  —当不得不提高操作性能时,SMAP2000工具应可以在分布式环境下运行。

  可测量性规范:

  —SMAP2000工具在ATM接口上应能达到155Mb/s的速度。

  改进规范会影响设计结果。对设计类型、模式和技术进行分类并记录下来,做到有备无患,将有助于提高系统的改进性能。

  分析

  —可以使用SAAM技术(软件体系分析方法)[4]对体系/设计进行改进规范分析,并在设计检查时对它进行讨论。
  —可以利用类似于复杂循环理论中的工具(如Logiscope)对代码进行静态分析,得出代码的可维护性。

责编:
vsharing微信扫一扫实时了解行业动态
portalart微信扫一扫分享本文给好友

著作权声明:kaiyun体育官方人口 文章著作权分属kaiyun体育官方人口 、网友和合作伙伴,部分非原创文章作者信息可能有所缺失,如需补充或修改请与我们联系,工作人员会在1个工作日内配合处理。
畅享
首页
返回
顶部
×
    信息化规划
    IT总包
    供应商选型
    IT监理
    开发维护外包
    评估维权
客服电话
400-698-9918
Baidu
map