需求工程知识总结

软件需求的定义:

        指用户对系统在功能、行为、性能、设计约束等方面的期望。包括业务需求用户需求功能需求非功能性需求

需求工程的主要阶段:

        需求开发阶段:需求获取、需求分析、形成需求规格说(SRS)、需求确认与验证

        需求管理阶段:变更控制、版本控制、需求追踪、需求状态追踪

        需求确认与验证后形成需求基线需求管理是对需求基线的管理。这个基线是客户和开发者之间对于产品功能和非功能需求的一个约定,是需求开发和需求管理之间的桥梁。

一、需求获取

        需求获取的基本步骤:

        1. 开发高层的业务模型;2. 定义项目范围和高层需求;3.识别用户角色和用户带遍;4. 获取具体的需求;5. 确定目标系统的业务工作六;6.需求整理和总结

        需求获取的方法:

        1. 用户面谈最有效的方法,成本高,需要有专业领域知识

        2. 需求专题讨论会:短暂而紧凑的时间段内召集所有相关人员讨论,消除歧义,交互好,成本高

        3. 问卷调查:用户多,成本低

        4. 现场观察复杂流程和操作,现场观察可以更直观的了解需求

        5. 原型化方法:针对客户早期需求不明确

        6. 头脑风暴:业务时新的业务,业务流程不确定。集思广益,发散思维,创造性头脑碰撞

二、需求分析

        1. 结构化分析方法:

                核心:数据字典;

                三个模型和表现方式:功能模型(数据流图);行为模型(状态转换图);数据模型(ER图)

                

        2. 面向对象分析方法

                UML 4+1试图:逻辑视图、实现视图、部署视图、进程视图、用例视图(核心)

                

三、需求跟踪

        需求跟踪提供了由需求到产品实现的整个过程范围的明确查询的能力。需求跟踪的目的是建立和维护“需求-设计-编程-测试”之间的一致性,确保所有的工作成果符合用户需求。

        需求跟踪的两种方式:

                1. 正向跟踪:检查SRS中的每个需求是否都在后续的工作成果中可以找到

                2. 逆向追踪:检查设计文档、代码、测试用例等,确保工作成果都能在SRS中找到。

四、需求变更控制

        变更控制过程

  1. 问题分析和变更描述:进一步分析问题,检查他的有效性
  2. 变更分析和成本计算:进行影响分析待会儿评估,估计该变更引起的所有改动的成本,有需求变更委员会决定是否变更
  3. 变更实现:根据该变更的影响范围,按照开发的过程模型执行相应的变更
  4. 归档:所有的变更都需要做记录留档

        常见的需求变更策略:

  1. 所有的需求变更必须遵循变更控制工程
  2. 对于未获得批准的变更,不应该做设计和实现工作
  3. 变更应该由项目变更控制委员会决定实现哪些变更
  4. 项目风险承担者应该能了解变更的内容
  5. 绝不能从项目配置库中删除或修改变更请求的原始文档
  6. 每一个集成的需求变更编序能跟踪到一个经核准的变更请求,以保持水平可追踪性

        需求变更委员会(CCB):是项目所有者权益代表,负责裁定接受哪些变更。CCB由项目所涉及的多方成员共同组成。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Andrew-ZhangJinyi

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

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

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

打赏作者

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

抵扣说明:

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

余额充值