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. highcharts的dataLabels如何去处阴影

    问题: 在使用highcharts生成的图标中dataLabels是有阴影的,通常是影响美观,那么如何去除阴影呢? 原因:是因为highcharts将dataLabels生成的标签是tspan,里面有 ...

  2. 烽火R2600交换机配置脚本

    烽火交换机端口映射配置 ip nat inside source static udp iP 端口号 公网iP 端口号 ip nat inside source interface Vlan-intf ...

  3. 一起学爬虫——通过爬取豆瓣电影top250学习requests库的使用

    学习一门技术最快的方式是做项目,在做项目的过程中对相关的技术查漏补缺. 本文通过爬取豆瓣top250电影学习python requests的使用. 1.准备工作 在pycharm中安装request库 ...

  4. mysql安装运行(centos)

    http://repo.mysql.com寻找需要的版本 wget -P /opt/downloads http://repo.mysql.com/mysql57-community-release- ...

  5. 一天带你入门到放弃vue.js(一)

    写在前面的话! 每个新的框架入手都会进行一些列的扯犊子!这里不多说那么多!简简单单说一下vue吧! Vue.js是目前三大框架(angular,vue,react)之一,是渐进式js框架,据说是摒弃了 ...

  6. 【java】-- java并发包总结

    1.同步容器类 1.1.Vector与ArrayList异同 1.Arraylist和Vector都是采用数组方式存储数据,都允许直接序号索引元素,所以查找速度快,但是插入数据等操作涉及到数组元素移动 ...

  7. SpringCloud教程 | 第五篇: 路由网关(zuul)(Finchley版本)

    在微服务架构中,需要几个基础的服务治理组件,包括服务注册与发现.服务消费.负载均衡.断路器.智能路由.配置管理等,由这几个基础组件相互协作,共同组建了一个简单的微服务系统.一个简答的微服务系统如下图: ...

  8. centos7.4中安装docker

    #!/bin/sh # 安装docker # 在docker中安装mysql # 解决了docker容器中无法输入中文的问题 ##########################安装docker # ...

  9. 简单的3d变换

    <!DOCTYPE html><html> <head>  <meta charset="UTF-8">  <title> ...

  10. 30、进程的基础理论,并发(multiprocessing模块)

    我们之前基于tcp所做的通信都只能一个一个链接只有关闭当前链接时才能去链接下一个通信,这显然与现实情况不合.今天我们将来学一个新的概念进程,来做一个python多进程的并发编程.还会贴一个用json序 ...