The risk is greatest at several points:

1. Overlooking a crucial requirement

This one the greatest risk in RE. If you overlook an important user class, you'll probably have to spend much more time to add in it or even redo the whole project!

How to avoid this risk?

  • always keep in mind to figure out what the important parts are from the customer's requirement.
  • keep the scalability of your software.

2. Inadequate customer representation

Which means there are many designers are so confident about their skills that they think they have understand exactly what customers need and doesn't spend enough time negotiating with their customers.

How to avoid this risk?

Never be arrogant that you have understand all of the requirements your customers need without keep in touch with them.You have to spend more time on negotiating with your customers.

Customers only discover if we had the right idea when they attempt to use our software.

3. Modeling only functional requirements

?

4. Not inspecting requirements

The cost to remove defects in requirements increases geometrically with time.

Inspecting your requirements model is the most effective way to identify ambiguities, unstated assumptions, conflicting requirements, and other defects at the earliest possible point.

Every requirement may have some defect, so don't be too confident to ignore inspecting your requirements.

How to avoid this risk?

  • be patient in finding defects in your requirements.
  • You can find a team to do this work for you, if you want.

5. Attempt to perfect requirements before beginning construction

The time when we could know everything we needed to know before starting software construction is long past.

It's safer to assume that our requiremens are going to change than that they won't.

How to avoid this risk?

  • Do the best job you can early to get a good set of requirements, but don't be discouraged if everything isn't absolutely certain. Identify those ares of uncertainty and move on, ensuring that someone is responsible for closing those gaps in your knowledge before construction is complete.
  • Track the uncertain requirements carefully as your project proceeds.

6. Representing requirements in the form of designs

?

Reference:

[November/December 2001] "The Top Risks of Requirements Engineering", Brian Lawrence, Karl Wiegers, and Christof Ebert   IEEE SOFTWARE

note_The Top Risks of Requirements Engineering的更多相关文章

  1. top Universities in Mechanical Engineering

  2. CiteSeer统计的计算机领域的期刊和会议的影响因子(2005)

    产生自CiterSeer 2005数据库,实际的影响因子可能更高.仅供参考使用.真实的IF还需去官网查看 . OSDI: 3.31 (top 0.08%) . USENIX Symposium on ...

  3. [Z] 计算机类会议期刊根据引用数排名

    一位cornell的教授做的计算机类期刊会议依据Microsoft Research引用数的排名 link:http://www.cs.cornell.edu/andru/csconf.html Th ...

  4. Java theory and practice: Thread pools and work queues--reference

    Why thread pools? Many server applications, such as Web servers, database servers, file servers, or ...

  5. How to implement long running flows, sagas, business processes or similar

    转自:https://blog.bernd-ruecker.com/how-to-implement-long-running-flows-sagas-business-processes-or-si ...

  6. ACM会议列表与介绍(2014/05/06)

    Conferences ACM SEACM Southeast Regional Conference ACM Southeast Regional Conference the oldest, co ...

  7. 100 Most Influential Books According to Stack Overflow

    Please read this blog post to see why this is here. This data was created on 02/13/2012 20:00:00 All ...

  8. Cryptographic method and system

    The present invention relates to the field of security of electronic data and/or communications. In ...

  9. CCF推荐国际学术期刊

    中国计算机学会推荐国际学术期刊 (计算机系统与高性能计算) 一.A类 序号 刊物简称 刊物全称 出版社 网址 1 TOCS ACM Transactions on Computer Systems A ...

随机推荐

  1. Postman 安装及使用入门教程(我主要使用接口测试)

    1.Postman 安装及使用入门教程(我主要使用接口测试)Postman的English官网:https://www.getpostman.com/chrome插件整理的Postman中文使用教程( ...

  2. linux添加新磁盘

    先fdisk -l 看一下有哪些没有挂载的盘符. 然后将创建的文件夹与待挂载的盘符绑定,即:mount /dev/vdc /data

  3. every循环

    一.语法 var result = myArr.every(function(item, index){ return item>0; }) //全部满足,才为true every方法检测数组中 ...

  4. django——form组件

    1.html表单概述 Django开发的是动态Web服务,而非单纯提供静态页面.动态服务的本质在于和用户进行互动,接收用户的输入,根据输入的不同,返回不同的内容给用户.返回数据是我们服务器后端做的,而 ...

  5. vue中,对象数组多层嵌套时,更新数据更新页面

    vue中的对象和数组的元素直接赋值修改时,是不能响应到view中去的 1.对象更新 this.a={title:'列表1’}; this.a.title='列表2’; <h1>{{a.ti ...

  6. __x__(48)0910第六天__CSS Hack

    CSS Hack: 不到万不得已,不要使用.不易于维护. 有一些情况,需要一段特殊代码在遇到特殊浏览器环境才执行,而在其他条件下,不执行. 此时,CSS Hack 就能实现. CSS Hack 实际上 ...

  7. elasticsearch视频

    简单的集群管理 (1)快速检查集群的健康状况 es提供了一套api,叫做cat api,可以查看es中各种各样的数据 GET /_cat/health?v epoch timestamp cluste ...

  8. shell-特殊变量列表

    特殊变量列表 变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数.n $# 传递给脚本或函数的参数个数. $* 传递给脚本或函数的所有参数.有引号则引号内,作为一个参数传入. $@ 传递 ...

  9. HTTP &RFC

    HTTP 1,HTTP所表达的控制以及描述性相关的信息都包含在了HTTP的起始行和首部之中.BNF的使用使得自己能够清晰的梳理出起始行和首部中所有类别的元信息.对于每一类的元信息具体包含哪些内容也能够 ...

  10. 170217、nginx 安装时候报错:make: *** No rule to make target `build', needed by `default'. Stop.

    出现此种情况,是linux系统没有安装先决条件 1.GCC——GNU编译器集合(GCC可以使用默认包管理器的仓库(repositories)来安装,包管理器的选择依赖于你使用的Linux发布版本,包管 ...