需求工程的方法 过程、方法和技术 描述的重要性 建模的作用
需求工程的方法 过程、方法和技术 描述的重要性 建模的作用
需求工程的维度 ◆表示维(代表需求的可维护、可验证的程度) 非形式的:自然语言 ■半形式的:图形语言(如:UML,DFD,等) ■形式的:数学或逻辑语言(如:Z,等) ◆内容维(代表需求工程的进行程度) ■模糊的客观世界现象 明确的需求规格说明 致性维 代表某个投资者的观点 得到全部投资者的认可
需求工程的维度 表示维(代表需求的可维护、可验证的程度) ◼ 非形式的:自然语言 ◼ 半形式的:图形语言(如:UML,DFD,等) ◼ 形式的:数学或逻辑语言(如:Z,等) 内容维(代表需求工程的进行程度) ◼ 模糊的客观世界现象 ◼ 明确的需求规格说明 一致性维 ◼ 代表某个投资者的观点 ◼ 得到全部投资者的认可
需求工程的三维视图 内容维 完全 般 模糊 表示维 非形式非形式 形式 接受度维
需求工程的三维视图 非形式 非形式 形式 规格说明 表示 一致的程度 模糊 一般 完全 个人观点 公共的观点 表示维 内容维 接受度维
再论描述的重要性 ◆软件开发:获取描述+逐步精化 需求:是过程的起点 需求 设计 代码 问题 系统 描述 需求
再论描述的重要性 软件开发:获取描述+逐步精化 需求:是过程的起点 需求 设计 代码 系统 需求 问题 描述
什么、怎样、相互转化 传统地,需求应该说明‘什么’而不 说明‘怎样’ 系统什么 但是这不很容易区分: 需求 辆小汽车做什么? 怎样 ●一个WEB浏览器做什么? 在某个抽象层次上的怎样’形成下子系统<什么 设计 个层次上的“什么 需求 怎样 Jackson&Zave的工作提供了一个区分: 什么’涉及系统的目的 单元 什么分设计 ●对系统来说是外部的 需求 怎样 是应用领域的特性 ■‘怎样’涉及系统的结构和行为 2设计 对系统是内部的 ●是机器领域的特性
什么、怎样、相互转化 传统地,需求应该说明‘什么’而不 说明‘怎样’ ◼ 但是这不很容易区分: ⚫ 一辆小汽车做什么? ⚫ 一个WEB浏览器做什么? ◼ 在某个抽象层次上的‘怎样’形成下 一个层次上的‘什么’ Jackson&Zave的工作提供了一个区分: ◼ ‘什么’涉及系统的目的 ⚫ 对系统来说是外部的 ⚫ 是应用领域的特性 ◼ ‘怎样’涉及系统的结构和行为 ⚫ 对系统是内部的 ⚫ 是机器领域的特性 需求 需求 需求 设计 设计 设计 系统 子系统 单元 什么 什么 什么 怎样 怎样 怎样