小心避免软件需求分析中五类陷阱

 
   | |

导读:本文介绍软件需求分析中五类陷阱,它们是连用户都不理解的用例、用例太多、过于复杂的用例、描述特定用户界面元素和行为的用例和不再使用其他需求模型。

关键词:软件需求分析 陷阱 用例 用户界面 需求模型

 
正在加载数据...

  用例(Use case)已经成为被广泛使用的需求开发技术。围绕着用户和他们的目标,而不是产品的功能,这大大提高了开发出能真正满足客户需求的软件产品的可能性。然而,由于对用例所知甚少,造成用例的神秘感与日俱增,很多开发团队也在试图成功地运用用例技术。本文将针对已经开始应用用例技术的分析师,特别指出五处应避免的用例应用陷阱。

  陷阱1:连用户都不理解的用例

  用例是一种表述用户需求的方法,它描述了用户需要产品所能完成的具体功能。用例应着重于那些用户所需借助产品系统来完成的任务,所以用例和用户的业务流程密切相关。用例应该能让用户方便阅读和检查,以寻找可能存在的问题,例如被遗漏的可替代流程,或者不正确的异常处理等。如果用户不能参与用例,将带来很多问题。或许是因为这些用例太过注重技术,而不是业务性、前瞻性的。

  陷阱2:用例太多啦

  分析人员正忙于建立数十或数百个用例,他们没有意识到这也许是错误的。用例数量过多通常意味着用例的抽象水平太低。每个用例都应当具备一定的抽象性,以涵盖某个共同主题的多个相关场景。这些用例的部分将成功,而其他的在某些特例条件下则不会成功。如果你正处于这样一种用例爆炸的情形,请试着提高抽象层次,将相似的用例合并成组,把它们作为一个单一的、更加抽象的用例的分支流程。

  陷阱3:过于复杂的用例

  用例应用的总体思路是,一个正常的用例流程所包含的步骤应该不超过12个。而事实上,曾经有用例在一个正常流程中包括近50个步骤。问题就在于,所谓 “正常流程”也包含了许多可能的分支,包括错误的异常流向,以及随之而来的如何处理它们等问题。所以,事实上,正常的流程也包括了备选流程和异常情况。更好的方法是选择一个简单的、在默认情况下能够顺利走完整个用例流程的路径,这才是真正的正常流程。然后再写出其他的分支流程用例,以囊括该流程的其他分支和异常情况,特别是描述流程发生错误的那些用例情况。通过这种方法,提供一套包括多个小分支流程的用例包,相比提供给用户一个试图在单一流程描述中处理好每一种可能性的庞大用例,无疑将容易理解和管理得多。

  陷阱4:描述特定用户界面元素和行为的用例

  我们所需要的是撰写“必要”的用例,在一个抽象的层面来描述用户和系统的互动,而不要加入用户界面的细节。用例描述不应包括界面设计,虽然简单的用户界面原型有利于方便地检查用例。笔者甚至不喜欢听到在用例中暗指特定用户界面控制的那些术语。我们说“用户点击确定”,这意味着GUI界面使用到鼠标和按钮。但是,是不是还可以使用触摸屏或语音识别界面呢?在用例中强加入不成熟的设计局限,可能导致产生一个糟糕的设计,除非你喜欢在已有界面的现有应用程序中不断增添新功能。

  陷阱5:不再使用其他需求模型

  分析人员在采用用例方法后,似乎忘记了其它他们所知道的需求模型和获取方法。对于交互式系统、网站等,用例对于捕获用户需求相当有帮助。然而,对于事件驱动的实时系统、数据仓库或批处理过程,用例的方法却并不适合。

  我们要避免受到用例方法好处的诱惑,将用例方法强加于所有的功能需求工作。我们完全可以用一份详细的包括功能需求、非功能需求、图形分析模型、原型、数据字典和其他相关需求信息的列表来补充用例说明。在很多情况下,用例是有用的,但请将它添加到您的需求分析工具箱,而不是用它取代您当前的所有工具。

 
来源:BLOG    
 
 
 
 
 

软件开发安全

 
创建安全性强的软件所需的各个准则的最佳实践是怎样的呢?BSIMM被认为是智慧和现行实践的汇集,这个模型使用了软件安全框架SSF来组织软件安全任务……
 
作为软件开发团队的成员,软件开发项目完成的期限是否迫使你的安全测试工作形同虚设?你将采取什么方式来减少编码中出现的bug?
 
什么是缓冲区溢出,它又是如何工作的?如何防范缓冲区溢出攻击?本文通过研究缓冲区溢出的工作机制揭露其如何展开攻击,并介绍了阻止缓冲区溢出攻击的方式……
 
微软本周拓展了其安全开发生命周期SDL项目,引入了新的模板来帮助IT部门和编码人员构建安全的软件开发,这种新的MSF-A+SDL模板是设计来将敏捷开发方法引入到……
 
如何选择和运用不同的软件测试方式呢?在“白盒测试”中我们介绍了白盒测试方式的特点和使用,本文中我们将介绍黑盒测试和灰盒测试的特点和各自的适用场合……

热门技术手册排行

 

虚拟专用网络 VPN(Virtual Private Network )能通过公用网络Internet建立一个临时的、安全的连接,是一条穿过混乱的公用网络的安全、稳定的隧道。VPN是对企业内部网的扩展,它可以帮助远程用户、公司分支机构、商业伙伴及供应商同公司的内部网建立可信的安全连接,并保证数据的安全传输。许多公司使用VPN向公司外部的员工提供企业网络接入。本手册将围绕VPN进行全方位的讲解。

 

“最佳实践”来自英文Best Practice。维基百科对最佳实践的定义是一个管理学概念,认为存在某种技术、方法、过程、活动或机制可以使生产或者管理实践的结果达到最优,并减少出错的可能性。学习应用IT企业安全的最佳实践,其实就是借鉴别人成功的经验,让自己在保护企业安全方面少走弯路。在本手册中,将集合IT业内关于企业安全的最佳实践,并不断更新,以期在企业安全防护方面提供帮助。

 

虚拟化是数据中心的流行技术,它起源于20世纪60年代。它是把昂贵的计算机资源的利用最大化的方式。典型的服务器的利用率不足40%,虚拟化可以更有效地利用技术资源,并节约固定费用。虚拟化的最大优势是,它允许管理员从中央区域为个人电脑和客户设备提供软件。虚拟化不需要管理员对一般任务进行分别考虑。服务器的关机可以带动多用户的关机。

 

黑客策略和技术一直都在进步。黑客还在继续开发新的攻击工具和黑客方法,来恶意访问系统并攻击你的网络,这样企业在开发和采取恰当的方法防御黑客的攻击就变得非常困难。《黑客攻击技术和策略》的技术指南将介绍黑客的内心想法,并帮助你理解恶意攻击者的动机,也提供了一些黑客攻击具体信息的方式,采用的方法以及企业应该采用的保护敏感数据的方法。这里将会提供大量黑客技术和策路的信息,例如允许黑客获取网络系统或者文件访问的系统特征探测。

 

假如你正在寻找一个漏洞扫描器,你可能已经遇到了大量的非常昂贵的商业解决方案,这些方案都有一长串的性能和优点。不幸的是,如果你和我们之中大部分人的情况一样的话,你一般根本没有运行这些奇特的系统的预算。你可能已经退而求其次,转向考虑使用像SATAN或Saint的免费工具。然而,你可能觉得使用这些工具是一种折衷的办法,因为它们的性能设置不能与商业解决方案相比。这时候你就应该学会使用Nessus! 2005年12月Nessus背后的公司Tenable Network Security Inc.发布了Nessus 3,引进了对该产品的全面检查。在写这篇文章时候的最近版本,Nessus 3.2是在2008年3月发布的。Nessus现在可以在多种平台上使用,包括Windows、各种版本的Linux、FreeBSD、Solaris和Mac OS X。以下是这次Nessus3中的重大变化: 下面将介绍如何使用Nessus工具以及Nessus工具的更新。

查看更多
 
 

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
登录Email
请输入您的登录Email
密码
下次自动登录