软件需求管理(一) 绪论和基础

目录

一、软件需求概述

1.1软件需求定义

1.2成功项目的影响要素

二、需求工程

2.1需求工程的概述

2.2需求工程的基本活动

2.3需求工程的特性 

三、需求基础

3.1相关概述

 3.2问题解决的两个方面 ——问题域与解系统

3.3需求的类型

3.3.1层次性

 补充对应三个文档

3.3.2广义的需求分类

3.3.3严格意义上的需求分类※※

3.4需求工程的步骤

3.5优秀需求的特性(原则)※

补充常见的需求定义错误

 四、需求工程过程

4.1相关概述

 4.2需求工程过程的活动

4.3需求工程过程的并发和迭代性


一、软件需求概述

1.1软件需求定义

软件需求可定义为: 用户需解决某一问题或达到某一目标所需的软件功能。 必须满足或具备的软件功能

1.2成功项目的影响要素

1.用户参与(用户输入)

2.高层管理支持

3.清晰的需求说明

4.切合实际的期望

5.清晰的目标和前景

6.需求变化 

二、需求工程

2.1需求工程的概述

它关注于软件系统所应予实现的现实世界目标、软件系统的功能和软件系统应当遵守的约束规格说明之间的联系

2.2需求工程的基本活动

补充需求工程 与  系统工程 

2.3需求工程的特性 

1.必要性

利用通用的计算机结构,构建一个有用的软件系统,来满足人们的某些目的

2.复杂性 

处理范围广泛        涉及诸多参与方        处理内容多样        处理活动互相交织        处理结果要求苛刻

三、需求基础

3.1相关概述

需求是用户对问题域当中的实体状态或事件的期望描述 

 3.2问题解决的两个方面 ——问题域与解系统

需求工程的主要工作

(1)进行需求开发,确定用户的期望效果R;

(2)研究问题背景,描述问题域特性E;

(3)构建解系统,描述解系统行为S;

需求规格说明书包括两个部分:

(1)对共享现象(模型)的描述

(2)对系统对共享现象所施加的操作的描述。

3.3需求的类型

需求的3个层次: 业务需求,用户需求,系统需求

3.3.1层次性

 补充对应三个文档

业务需求        前景和范围文档

用户需求        用例说明文档

系统需求        需求规格说明文档

具体说明

业务需求

描述了组织为什么要开发系统        定义系统应该具备的特性        共同的前景        系统的范围

用户需求

执行实际工作的用户对系统所能完成的具体任务的期望,描述了系统能够帮助用户做些什么

系统需求

1.发现问题域和计算机系统的共享知识,建立系统的知识模型

2.定义一系列的系统行为,每一个系统行为即为一个系统需求。

3.建模与分析活动

3.3.2广义的需求分类

包括项目需求、过程需求、系统级需求

1.项目需求:针对项目核心的计划,包括项目成本、资源、时间和进度等。

2.过程需求,针对软件开发过程,包括开发人员、工具和方法等。

3.系统级需求:针对系统工程的需求,包括硬件需求、软件需求以及其他需求。

4.不切实际的期望:根本无法实现的期望,包括技术上的不可行、在有限资源条件下不可行以及超出软件所能影响的问题范围

3.3.3严格意义上的需求分类※※

包括功能需求和非功能需求。 非功能需求包括性能需求、质量属性、接口和约束条件(补充规约)。

性能需求:速度  容量  吞吐量  负载  实时性

质量属性:

  • A. 功能性、可靠性
  • B. 可用性、效率
  • C. 可维护性
  • D. 可移植性

3.4需求工程的步骤

1.问题分析和背景分析

2.需求获取

3.需求分析 

4.文档化和验证

3.5优秀需求的特性(原则)※

1.完整性        功能需要的所有信息

2.正确性(真实性)

3.可行性        需要进行一定的分析和研究        必要的时候要通过开发原型来加以验证

4.必要性(精确性)

5.无歧义        定义一个可以共同理解的词汇表

6.可验证        分析、检查、模拟或者测试等方法

补充常见的需求定义错误

 四、需求工程过程

4.1相关概述

需求工程过程是系统开发当中需求开发活动的集成,它的模版是产生一个能够在用户环境下解决用户业务问题的系统方案

 4.2需求工程过程的活动

1.需求获取

需求获取是从人、文档或者环境当中获取需求的过程

需求工程师必须要利用各种方法和技术来“发现”需求

2.需求分析

为问题定义出一个需求集合

背景分析

确定系统边界(用例图,上下文图)

需求建模(DFD数据流图、ERD实体关系图、STD状态转换图,类图等)

需求细化(用户需求->系统需求)

确定优先级

 需求协商

3.需求规格说明

业务需求被写入项目前景和范围文档

用户需求被写入用户需求文档(或者用例文档)

系统需求被写入需求规格说明

4.需求验证

确保需求规格说明文档能正确、准确的反映用户的意图

确保文档的高质量※        执行验证(同级评审、原型或模拟)

5.需求管理

保证需求作用在整个软件的产品生命周期中

4.3需求工程过程的并发和迭代性

实际的需求开发过程是获取-分析-重构的不断交织和迭代的过程。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

烟雨平生9527

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值