第三章-软件需求与需求工程-心得

1、软件需求定义:

    软件需求定义:业务知识+问题列表+其它因素

  1. 业务知识:业务事件、业务实体和业务规则。
  2. 问题列表:用户在工作中遇到的困难和障碍。
  3. 其他因素:设计约束和非功能方面需求。

1.1 需求的三个层次

   业务需求:软件系统的建设目标。
   用户需求:用户使用软件需要完成什么任务、如何完成。
   软件需求:分析需求与建模的产物。

1.2 需求的三种类型

  1. 功能需求
  2. 非功能需求
  3. 设计约束

1.3 优秀需求的标准

  1. 完整性

  2. 不失真

  3. 有优先级
    (确定优先级的不同角度)
    在这里插入图片描述
    (确定必要性)
    在这里插入图片描述

  4. 有技术早期介入
    确认可行性、可验证性

2、需求工程

   需求工程包括:需求开发、需求管理
在这里插入图片描述

2.2 需求开发

   需求获取、需求分析、编写规约和需求验证已多次循环形式进行。
在这里插入图片描述

2.3 需求管理

   需求管理包括:基线管理、变更管理和需求跟踪。
在这里插入图片描述

2.3.1 基线管理

   把需求分成两大类:

   1、 已经开发的基线内的需求(baseline)
    2、 没有安排开发的待处理需求(backlog)
   基线管理示意图如下:
在这里插入图片描述
   划分基线时要考虑三个方面的事:
   1、确立优先级
   2、工作量估算
   3、未完成项合并

2.3.2 变更管理

变更管理考虑以下三点
   业务影响分析:从业务角度对变更的合理性、优先级以及对原有需求的影响进行分析,以便决定是否将其纳入backlog中。
   技术影响分析:从技术角度对变更的影响范围、工作量进行分析,并且决定是拒绝、在后续迭代中进行响应,还是在本次迭代中对其进行响应。
   项目影响分析:基于前面的工作量分析,考虑是否对整个项目的时间、进度、成本产生较大影响。

2.3.3 需求跟踪

3、SERU模型(Subject→Event/Report→Use Case)

   整个需求探索过程可分为三大阶段(其中步骤1-3是需求定义阶段,步骤4是理清脉络阶段,步骤5是填充细节阶段)
在这里插入图片描述

  1. 需求定义阶段:就是项目的立项阶段,与RUP【RUP(Rational Unified Process),统一软件开发过程】的初始阶段相对应;对于需求分析人员而言,该阶段的核心目标在于定义目标和范围。根据SERU模型的总结,该阶段的任务就是划分Subject(主题域),并标识出每个主题域中的Event(业务事件)和Report(报表类型)。
  2. 理清脉络阶段:相当于需求捕获、分析与建模的阶段一,对应于RUP中细化阶段的第一次迭代。根据SERU模型的总结,该阶段的任务就是对每个业务事件(它是业务流程的触发点,因此换句话说,就是分析业务流程)、每类报表进行事(流程分析,只针对业务事件)、物(业务实体)、人(使用角色)分析,并标识出绝大部分用例。
  3. 填充细节阶段:相当于需求捕获、分析与建模的阶段二,在RUP中将从细化阶段的第2次迭代开始,直到构建阶段完成。根据SERU模型的总结,该阶段的任务就是填充每个用例的实现细节,以便开发人员进行具体的实现
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

AbelZ_01

对您有帮助的话给点儿动力吧!!

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

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

打赏作者

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

抵扣说明:

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

余额充值