敏捷开发中的可用性测试

发表于:2010-6-12 11:42

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:陈序明,王建芳,李雨恭    来源:IBM

  前言

  近年来有两个词语在软件行业迅速“走红”,一个是敏捷开发,另一个则是软件可用性。在 IBM 内部 2009 年的 QSE(Quality Software Engineer)大会上,这二位“当红明星”也是备受全球 IBMer 们的推崇,成为演讲场数最多的其中两个话题。

  相对于这样“走红”的现象,作者更关心背后的原因和本质。究竟为什么这两个方法近年来会相续被推崇?这二者之间有什么关系?怎样能够强强联合,把二者结合起来实现在实践中使用?有没有 Best Practice 或流程帮助开发团队让这二位“明星”为团队服务?

  几位作者具有丰富的敏捷开发经验,可用性经验,以及在敏捷开发中使用可用性的经验。在这篇文章中,几位作者就经验和体会和大家一起来探讨敏捷开发,软件可用性,以及如何在敏捷开发中进行可用性测试

  软件质量、敏捷开发和可用性

  在介绍敏捷开发和软件可用性之前,有个铺垫需要先进行介绍,那就是软件质量。我们认为不管是敏捷开发,还是软件可用性,有个共同的目标是实现高质量的软件产品,即对终端客户有价值的产品。换句话说“软件质量”的诉求是敏捷开发和软件可用性二者“当红”的驱动力,所以很有必要先谈谈软件质量。

  软件质量

  什么是软件产品质量呢?一些同仁可能会认为软件质量是指系统的 Bug 数量,作者认为这样的理解是不够全面的。软件质量应该从使用者的角度去衡量其真正价值。正如大师温伯格在《 质量 . 软件 . 管理 : 系统思维》说到:“质量就是软件产品对于某个 ( 或某些 ) 人的价值”。软件质量包含两个层次的质量含义,即“正确的软件”及“软件运行正确”:

  第一、“正确的软件”是指一个软件要能够满足用户的需求,为用户创造价值。此处的价值可以体现在两个方面,即为用户创造利润或者减少成本。如果一个软件能够满足需求的用户群体越大、创造的利润越大或减少的成本越大,则该软件产品的质量越高。反之,一个产品尽管运行良好,没有 Bug,扩展性很强,性能很好,但如果没有服务的用户人群,没有为用户创造价值,则这样的软件尽管运行良好,也无任何质量可言。

  第二、“软件运行正确”是指软件没有或很少 Bug,扩展性很强,性能良好,易用性高等。这样的软件是一个运行良好的软件,但还不能称之为高质量的软件。只有在软件符合用户的需求的基础上,运行良好的软件,才是一个高质量的软件。当然,如果软件完全符合用户需求,但不易使用,经常出错,性能很差,这样的软件也不是一个高质量的软件。

  “正确的软件”及“软件运行正确”二者相辅相成,前者关系到软件的成败,后者关系到软件的好坏。在现实的很多开发团队中,特别是偏技术的开发团队中,往往过分注重后者(软件的 Bug 率,性能,可扩展性,架构等),经常陷入在软件开发过程的细节之中,而忽略了前者(软件需要符合用户的需求),开发出的软件经常能用但无用,不是最终用户期望的软件,这样的软件是能用但无用的零质量软件。

  不管是敏捷开发,还是软件可用性,都更加注重软件质量,即用户的价值。

  敏捷开发

  敏捷开发的定义为:通过一系列迭代,利用 User Stories 和持续关注利益干系人(Stakeholder)的反馈,驱动开发高质量、高可用性的软件。可以从下面三个方面来看敏捷开发,如下图所示:

点击图片可在新窗口打开

图 1. 敏捷开发的三个方面

  首先是对象,也是利益干系人,随着企业组织结构的不断壮大,企业信息化的全面开展,一个软件产品或项目,面向的用户越来越多,典型的有:开发人员,企业业务人员,CIO/CEO,运维部门,甚至来自开发企业的领导等等。不同的部门和人员,由于工作和业务关系,关注的价值和重点都不一样。而软件的核心价值要能够符合最主要的利益干系人的价值目标和财务目标,该软件才会获得市场生命力。

  其次是目标,这里的目标一定要是利益干系人的目标,敏捷开发和任何好的方法论或者新兴事物一样,如果要有持久的生命力,归根到财务上,就是要能带来利润,或者减少成本。敏捷开发就是这样的一种方法,能够通过高效率迭代和敏捷机制,为客户开发出能够符合业务发展需求,能为企业带来业务价值,并最终能为企业创造效益的方法。

  最后是方法,即通过什么方法才能达到利益干系人的价值。这里强调的是敏捷中应用迭代的开发方式,以及敏捷开发中以人为中心,最大化发挥出团队的积极性和效率的开发及管理模式。

61/6123456>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号