软件工程—4需求工程
1 软件需求
定义(1)用户解决问题或达到目标所需条件或权能。 (2)系统或系统部件要满足合同、标准、规范或其它正式规定文档所需具有的条件或权能。 (3)一种反映上面(1)或(2)所述条件或权能的文档说明。它包括功能性需求及非功能性需求,非功能性需求对设计和实现提出了限制,比如性能要求,质量或者设计限制。
业务需求:业务 客户 价值 优先级
用户需求是从用户角度描述的系统功能需求和非功能需求,通常只涉及系统的外部行为而不设计系统内部特性。
功能需求和非功能需求
速度 存储空间 可用性 可靠性 容错性
系统需求:1 结构化英语 2 可视化模型 3 形式化方法
2 需求工程过程
需求获取:1聆听客户的需求 2 分析和整理所获取的信息 3 形成文档化描述
需求分析: 1 定义系统边界 2 建立软件原型 3 分析需求可行性 4 确定需求优先级 5 建立需求分析模型 6创建数据字典
需求规格说明
需求验证是为了确保需求说明准确。完整地表达必要的质量特点。1 真确性 2 无二异性 3 完整性 4 可验证性 5 一致性 6 可修改性 7 可跟踪性
需求管理: 1 需求变更控制 2 需求文档的版本控制 3 需求跟踪 4 需求管理工具
3 需求获取技术
1 面谈 2 需求专题讨论会 3 观察用户工作流程 4 原型化方法 5 基于用例的方法