北京理工大学:《软件工程基础》课程教学资源(PPT课件讲稿)需求工程(主讲:刘驰)

北京理工大学 BEIJING INSTITUTE OF TECHNOLOGY 软件工程基础 需求工程 刘驰
软件工程基础 需求工程 刘 驰

北京理工大学 讲授内容 口软件需求 口需求工程过程 需求建模 口形式化描述
讲授内容 软件需求 需求工程过程 需求建模 形式化描述

北京理工大学 1.什么是需求? 口需求是对系统应该提供的服务和所受约束的描述 口由于需求要向不同类型的涉众(读者)传达不同层 次的信息,可以将需求分为 用户需求(目标需求):用用户所熟悉的表达形式给出 需求描述。 系统需求〔产品需求):详细地给出系统将提供的服务以 及系统所受到的约束,比用户需求更具体,更形式化。 ■软件设计描述(设计层需求):在系统需求描述的基础上 再加入更加详细的设计层面的需求细节
1. 什么是需求? 需求是对系统应该提供的服务和所受约束的描述。 由于需求要向不同类型的涉众(读者)传达不同层 次的信息,可以将需求分为: ◼ 用户需求(目标需求) :用用户所熟悉的表达形式给出 需求描述。 ◼ 系统需求(产品需求):详细地给出系统将提供的服务以 及系统所受到的约束,比用户需求更具体,更形式化。 ◼ 软件设计描述(设计层需求):在系统需求描述的基础上 再加入更加详细的设计层面的需求细节

北京理工大学 示例1 用户需求 1.软件必须能够访问外部文件,这些外部文件是由其它工具 创建的 2 系统需求 1.1为用户提供定义外部文件类型的工具。 1.2每种外部文件类型在界面上用一种专门的图标来表示。 1.3当用户选择一个代表外部文件的图标时,与该外部文件 类型相关联的工具启动 1.4 2.1…
示例1 用户需求 1. 软件必须能够访问外部文件,这些外部文件是由其它工具 创建的 2. …… 系统需求 1.1 为用户提供定义外部文件类型的工具。 1.2 每种外部文件类型在界面上用一种专门的图标来表示 。 1.3 当用户选择一个代表外部文件的图标时,与该外部文件 类型相关联的工具启动。 1.4 …… 2.1 …

北京理工大学 示例2 R1预算误差<5% 目标需求 R2.支持报价注册、更新,以及根据业务需求 需求随时调整报价 R3产品应具有记录、检索历史报价产品需求 的功能 R4系统界面大致如附件xX所示 目标需求
示例2 R1. 预算误差<5% R2. 支持报价注册、更新,以及根据 需求随时调整报价 R3. 产品应具有记录、检索历史报价 的功能 R4.系统界面大致如附件xx所示 目标需求 业务需求 产品需求 目标需求

北京理工大学 口用自然语言描述的用户需求 ■描述不够清楚(二义性) ˉ需求混乱(功能需求、非功能需求、系统目标和设计 信息无法清晰地区分) 需求混合(多个不同的需求交织在一起,以一个需求 的形式给出) 口描述系统需求可能用到多种不同模型,如:对象 模型、数据流模型等
用自然语言描述的用户需求 ◼ 描述不够清楚(二义性) ◼ 需求混乱(功能需求、非功能需求、系统目标和设计 信息无法清晰地区分) ◼ 需求混合(多个不同的需求交织在一起,以一个需求 的形式给出) 描述系统需求可能用到多种不同模型,如:对象 模型、数据流模型等

北京理工大学 口原则上讲,系统需求仅仅描述做什么,而不应该描述 如何实现。然而,要给出细节需求而不提到任何设计 信息,事实上也是不可能的: ■通常系统需求依照构成系统的各个子系统结构来给 出,即由初始的系统体系结构来构造需求描述: ■通常目标系统和已有系统互操作,这就约束了目标 系统的设计,同时这些约束又构成了新系统的需求; 口某些特别的设计(如NVP)是系统的一个外部 需求
原则上讲,系统需求仅仅描述做什么,而不应该描述 如何实现。然而,要给出细节需求而不提到任何设计 信息,事实上也是不可能的: ◼ 通常系统需求依照构成系统的各个子系统结构来给 出,即由初始的系统体系结构来构造需求描述; ◼ 通常目标系统和已有系统互操作,这就约束了目标 系统的设计,同时这些约束又构成了新系统的需求; 某些特别的设计(如NVP)是系统的一个外部 需求

北京理工大学 系统需求描述工具 描述工具 说明 结构化自然语 依赖于定义标准格式或模板来表达需求 PDL语言 比一般的计算机高级语言更接近自然语言 图形化工具通过图形语言(辅之于文本注释)来定义系 统的功能需求。如SADT,基于用例的描述等 形式化工具于有限状态机、集合等数学工具形式化地 描述需求
系统需求描述工具 描述工具 说明 结构化自然语 言 依赖于定义标准格式或模板来表达需求 PDL语言 比一般的计算机高级语言更接近自然语言 图形化工具 通过图形语言(辅之于文本注释)来定义系 统的功能需求。如SADT,基于用例的描述等 形式化工具 基于有限状态机、集合等数学工具形式化地 描述需求

SADT More General Structured Analysis and More Detailed Design Techniques This box is the parent of this diagram. A4 NOTE: Node numbers shov here indicate that the box been detailed. The C-numb or page number of the chile diagram could have been L instead of the node numbe 匚A42□
SADT: Structured Analysis and Design Techniques

北京理工大学 2需求的另一种划分 业务需求 用户需求 ■功能需求 非功能需求 口业务需求( Business Requirement) ■反映了组织机构或客户对系统、产品的高层次目标要求 反映目标系统所处领域的特点 在项目视图与范围文档中予以说明
2. 需求的另一种划分 ◼ 业务需求 ◼ 用户需求 ◼ 功能需求 ◼ 非功能需求 业务需求(Business Requirement) ◼ 反映了组织机构或客户对系统、产品的高层次目标要求 ◼ 反映目标系统所处领域的特点 ◼ 在项目视图与范围文档中予以说明
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《计算机图形学》课程教学资源(PPT课件讲稿)Chapter 4 Graphics Output Primitives(Part II).pptx
- 亚马逊云计算AWS(Amazon Web Service)、Cloud Computing——Cassandra.ppt
- 上海交通大学:《通信网络》课程PPT教学课件(讲稿)Communication Networks - ANALYSIS OF 10G EEE PROTOCOL.pptx
- 上海交通大学:《Multicore Architecture and Parallel Computing》课程教学资源(PPT课件讲稿)Lecture 7 CUDA.ppt
- 上海交通大学:云安全(PPT讲稿)Cloud Security.pptx
- 局域网的硬件设备和操作系统(PPT讲稿).ppt
- 大数据分析(PPT讲稿)大数据引领我们走向数据智能化时代.ppt
- 淮阴工学院:《数据库原理》课程教学资源(PPT课件讲稿)第3章 关系数据库的基本理论.ppt
- 《Java面向对象程序设计》课程教学资源(PPT课件讲稿)第三章 Java面向对象编程.pptx
- 《Java面向对象程序设计》课程教学资源(PPT课件讲稿)第六章 Java输入输出流与文件操作.pptx
- 《Java面向对象程序设计》课程教学课件(PPT讲稿)流程控制语句.pptx
- 《Java面向对象程序设计》课程教学课件(PPT讲稿)AWT和Swing组件.pptx
- 江苏海洋大学(淮海工学院):《Java面向对象程序设计》课程教学资源(PPT课件讲稿)第4章 Java图形用户界面设计.pptx
- 江苏海洋大学(淮海工学院):《Java面向对象程序设计》课程教学资源(PPT课件讲稿)第2章 Java语言基础.pptx
- 《Java面向对象程序设计》课程教学资源(PPT课件讲稿)第四章 Java图形用户界面设计 4.2 AWT和Swing组件.pptx
- 《高级语言程序设计 Advanced Programming》课程教学资源(PPT课件讲稿)第8章 指针.ppt
- 《C语言程序设计》课程教学资源(PPT课件讲稿)第5章 循环结构程序设计.ppt
- 广西外国语学院:《计算机网络》课程教学资源(PPT课件讲稿)第8章 DNS.ppt
- 深圳大学:《图片处理基础》课程教学课件(PPT讲稿)Poisson Image Editing.pptx
- 《PhotoshopCS2基础教程与上机指导》课程教学资源(PPT课件讲稿)第20章 Web图像与动画设计.ppt
- 上海交通大学:Scheduling Algorithms in Heterogeneous Computing Systems.pptx
- 上海交通大学:《程序设计》课程教学资源(PPT课件讲稿)第5章 批量数据处理——数组.ppt
- 上海交通大学:《现代操作系统》课程教学资源(PPT课件讲稿)Chapter 02 进程与线程 Process and Thread.pps
- 《数据库基础与应用》课程PPT教学课件(Access案例教程)第9章 数据库语言SQL.pptx
- 《数据库基础与应用》课程PPT教学课件(Access案例教程)第8章 宏.pptx
- 《数据库基础与Access应用》课程教学资源(PPT课件)第12章 应用实例.pptx
- 《数字图像处理基础》课程教学资源(教学大纲.pdf
- 长安大学:《微机原理》课程教学资源(PPT课件讲稿)第7章 汇编语言程序设计.pptx
- 西安交通大学:《微型计算机接口技术》课程教学资源(PPT课件讲稿)第二章 微型处理器与单片机.ppt
- 中国铁道出版社:《局域网技术与组网工程》课程教学资源(PPT课件讲稿)第7章 网络系统集成与网络维护.ppt
- 《计算机应用基础》课程教学资源(PPT课件讲稿)第3章 Word 2007文字处理.ppt
- 《微机原理》课程教学资源(PPT课件)第六章 微型计算机的输入/输出.ppt
- 《单片机原理及应用》课程教学资源(PPT课件)第8章 AT89S51单片机外部存储器的扩展.ppt
- 《网页设计与制作》课程教学资源(PPT课件讲稿)第七章 模板与库的应用.ppt
- 《网页设计与制作》课程教学资源(PPT课件讲稿)第四章 设计页面布局.ppt
- 《微机原理》课程教学资源(PPT课件)第2章 微处理器与总线.ppt
- 山东大学:《微机原理及单片机接口技术》课程教学资源(PPT课件讲稿)第四章 指令系统及汇编语言程序设计 4.5 各类指令详解.ppt
- 多媒体图像处理技术(PPT课件讲稿,共六章).ppt
- 山东大学:《人机交互技术》课程教学资源(PPT课件讲稿)第9章 可用性分析与评估.ppt
- 《C++语言程序设计》课程教学课件(PPT讲稿)第13讲 多态.ppt