第四章  需求工程 

软件需求

软件需求

①用户解决问题或达到目标所需的条件或能力

②系统或系统部件要满足合同、标准、规范或其他正式规定文档所需具有的条件或能力。

③一种反映上面①或②所描述的条件或能力的文档说明。

通常,软件需求可以划分为业务需求、用户需求、系统需求、功能需求和非功能需求等类型。

               不同层次的软件需求及其关系

业务需求

业务需求是组织或客户对于系统的高层次目标要求,定义了项目的远景和范围,即确定软件产品的发展方向、功能范围、目标客户和价值来源。

用户需求

用户需求是从用户角度描述的系统功能需求和非功能需求,通常只涉及系统的外部行为,而不涉及系统的内部特性。

功能和非功能需求

功能需求描述系统应该提供的功能或服务,通常涉及用户或外部系统与该系统之间的交互,一般不考虑系统的实现细节。

非功能需求是从各个角度对系统的约束和限制,反映了应用对软件系统质量和特性的额外要求,例如响应时间、数据精度、可靠性等。

系统需求

系统需求是更加详细地描述系统应该做什么,通常包括许多分析模型,诸如数据模型,状态模型等。

通常,系统需求模型的描述有3种方法:

①结构化英语(PDL)

②可视化模型

③形式化方法

需求工程过程

需求获取

(1)聆听用户的需求

(2)分析和整理所获取的信息

(3)形成文档化的描述

需求分析

(1)定义系统的边界

(2)建立软件原型

(3)分析需求可行性

(4)确定需求优先级

(5)建立需求分析模型

(6)创建数据字典

需求规格说明

软件需求规格说明是需求开发的结果,它精确地阐述一个软件系统必须提供的功能和性能以及它所要考虑的限制条件。软件需求规格说明在整个开发过程中具有重要作用,项目管理人员可以利用它规划软件开发过程,更加准确地估计开发进度和成本,控制需求的变更过程,并将其作为最后验收目标系统的可测试标准。

需求验证

需求验证是为了确保需求说明准确、完整地表达必要的质量特点。需求验证主要围绕需求规格说明的质量特性展开,这些质量特性包括正确性、无二叉性、完整性、可验证性、一致性、可修改性和可跟踪性等。

需求管理

1.需求变更控制

①仔细评估已建议的变更

②挑选合适的人选对变更做出决定

③变更应及时通知所有涉及的人员

④项目要按一定的程序实施需求变更

2.需求文档的版本控制

版本控制是管理需求的一个必要方面,它保证在需求文档中记录和反映所有的需求变更。

3.需求跟踪

需求跟踪帮助人们全面地分析变更带来的影响,以便做出正确的变更政策。

4.需求管理工具

主要包括以数据库为核心和以文档为核心两类

需求获取技术

面谈

(1)事先准备一个合适的与背景无关的面谈,列出一些准备询问的问题,并将其记在笔记本上以便面谈时参考

(2)面谈前,需要研究一下要面谈的风险承担人或公司的背景资料,不要选择自己能回答的问题打扰被面谈人

(3) 面谈过程中,应该参考事先准备的面谈模板,以保证提出的问题是正确的。同时,需要建立起和谐的气氛,并将答案记录下来

(4)面谈之后,分析总结面谈记录,找到主要的用户需求或产品特征

需求专题研讨会

(1)专题讨论会的准备

(2)安排日程

(3)举行专题研讨会

观察用户工作流程

(1)被动观察

(2)主动观察

原始化方法

在构造原型之前,需要充分与客户交流,结合软件的应用领域、应用复杂性、客户特点和项目特点等因素,决定在评价完原型之后抛弃掉原型还是将其进化为最终产品的一部分。

基于用例的方法

(1)确定参与者

(2)确定用例

(3)描述用例

转载于:https://www.cnblogs.com/gting/p/4272807.html

软件工程概论总结第四章相关推荐

  1. 《软件工程概论》第四章核心内容

    结构化设计方法是在模块化.自顶向下逐步细化及结构华程序设计技术基础之上发展起来的.结构化设计方法可以分为两类,一类是根据系统的数据流进行设计,称为面向数据流设计或称过程驱动设计:另一类是根据系统的数据 ...

  2. 软件工程复习提纲——第四章

    软件工程复习提纲,期末.考研的学霸笔记 第四章--总体设计 第四章总体设计 1.总体设计/概要设计/初步设计的目的:"概括地说,系统应该如何实现?"How to do?   启发规 ...

  3. 【数据库系统】数据库系统概论====第十四章 大数据管理

    第十四章 大数据管理 文章目录 第十四章 大数据管理 14.1大数据概述 14.1.1什么是大数据 14.1.2大数据的特征 14.2大数据的应用 14.2.1感知现在 预测未来----互联网文本大数 ...

  4. 「武汉理工大学 软件工程复习」第四章 | 面向对象 UML建模

    目录 [对象.属性.方法] [面向对象分析与设计] 专有名字的缩写 面向对象的分析 OOA 面向对象的设计 OOD UML介绍 [面向对象设计原则] SOLID原则 OO设计时需要注意的一些问题 CR ...

  5. 数据库系统概论:第四章 数据库安全性

    4.1 数据库安全性概述 数据库的安全性是指保护数据库以防止不合法使用所造成的数据泄露.更改和破坏 4.1.1 数据库的不安全因素 非授权用户对数据库的恶意存取和破坏 数据库中重要或敏感的数据被泄露 ...

  6. 现代软件工程讨论第一章-第四章

    第一章 1.代码如下 #include <iostream> #include <cstdio> #include <time.h> using namespace ...

  7. 数据库系统概论 第四章课后习题(部分)

    本文是<数据库系统概论>的第四章的部分课后习题,题目来源:[2019-2020春学期]数据库作业12:第四章:数据库安全性 习题

  8. 【软件工程】期末复习题 | 第一~十四章例题/课后习题

    软件工程期末复习题整理(答案在文末) 目录 软件工程期末复习题整理(答案在文末) 一.判断题 二.选择题 三.简答题 四.应用题 一.判断题 第一章 1.软件就是程序,编写软件就是编写程序. ( ) ...

  9. (数据库系统概论|王珊)第四章数据库安全性-第一节:数据库安全性概述

    文章目录 一:数据库的不安全因素 二:安全标准简介 (1)信息安全标准的发展简史 (2)TCSEC/TDI A:基本内容 B:安全级别划分 在(数据库系统概论|王珊)第一章绪论-第一节:数据库系统概论 ...

最新文章

  1. python画图-如何用python画图
  2. 【读书笔记】程序员的自我修养总结(七)
  3. ReLu(Rectified Linear Units)激活函数
  4. 动态添加 ajax,ajax动态的添加内容【原创】
  5. mysql配置向导文件_Mysql的安全配置向导命令mysql_secure_installation
  6. 计算机网络技术发源于什么,计算机网络基础试题和答案
  7. PowerDesigner15对SQLSERVER2008S数据库进行反向工程出错
  8. 【WebRTC---入门篇】(一)WebRTC整体架构
  9. HDU - 3247 Resource Archiver (AC自动机,状压dp)
  10. 2017.4.24 聪明的质检员 思考记录
  11. 经典浪漫的爱情英语妙语
  12. 卖饮料、进工厂、看体检报告,这家AI公司要学三个门派的技能
  13. 15. 从远程库克隆
  14. java datatable用法_C# DataTable用法示例详解|DataTable Select,sort排序,Linq过滤操作
  15. 019 [工具软件]窗体置顶 DeskPins
  16. python画图网格线设置_python – Matplotlib:更改单个网格线的颜色
  17. 关于更新windows10 软件乱码
  18. Day2:两招判断好生意--现金流三拷问
  19. Google翻译API的使用
  20. OPENMV-STM32串口通信

热门文章

  1. python的顶级库_三大用于数据科学的顶级Python库
  2. 我的内核学习笔记1:字符设备完善
  3. Jsoup获取动态js生成的内容
  4. 【java】 java 反序列化过滤器 ObjectInputFilter
  5. 80-30-040-原理-React模式-简介2
  6. 【Es】Es 选主流程
  7. 【elasticsearch】ES数据库重建索引 -- Reindex(数据迁移)
  8. 【Kafka】Kafka如何开启SSL 控制台消费与生产 代码消费与生产
  9. 20-10-020-安装-KyLin-2.1.3单机版安装(MAC)
  10. 【Redis】Redis Jedis实现发布订阅功能