版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2020/7/7,54,1,软件需求工具Software requirement tool,任课老师:黄武,*,提纲,软件需求概述 软件需求工程 软件需求工具概述 需求分析方法 典型的需求分析工具介绍,54,2,你理解软件需求吗,*,什么是软件需求?如何获取,如何表达需求?,54,3,*,1 软件需求概述,需求的重要性 软件需求的质量高低决定了软件产品的成败和质量 据统计,软件中的错误大约有15%来源于软件需求;软件失败大约有50%是需求的不合理所致,54,4,1.1 需求是软件开发成败的关键,ESPITI(欧洲软件过程改进培训倡议)对3800名软件人员进行了一个调查,一半以上人认为软件的最大
2、两个问题是:需求规格说明及管理客户需求,*,需求规格说明 管理客户需求 建档 软件测试 项目管理 编码,54,5,1.2 软件需求错误的代价,软件需求的错误在后期会被放大,*,54,6,*,2 软件需求工程,简单讲,软件需求工程就是获取用户需求的过程 软件需求工程是需求供需双方采取被证明行之有效的原理、方法,通过使用适当的工具和符号体系,正确、全面地描述用户待开发系统的行为特征、质量要求、约束条件的过程,54,7,2.1需求工程的目标,需求工程的目标是得到清晰、一致且无二义的需求模型 通常使用需求规格说明书(SRS)的形式来定义待开发系统的所有外部特征和内部质量属性,*,54,8,*,2.2需
3、求工程涉及的角色,需求工程涉及到的角色包括: 客户 使用者 系统分析师 项目开发人员 项目管理人员,系统分析师,开发人员,用户,54,9,*,2.3 需求工程的基本任务,需求工程,需求开发,需求获取,需求分析,需求验证,需求规格说明,需求管理,变更管理,54,10,*,2.3.1 需求获取,需求获取过程将归纳和整理用户提出的各种问题和需求,从非形式化的陈述中提取用户需求 需求获取的工具是Word等文字记录工具,54,11,*,2.3.2 需求分析,需求分析是系统分析员将利用特定的方法和工具将需求获取过程中得到的非形式化需求进行形式化描述,最终产生需求规格说明书(SRS) 需求分析的方法包括:结
4、构化的方法,面向对象的方法和原型法 需求分析的工具有 :DFD图,UML用例图等,54,12,*,2.3.3 需求验证,需求验证是对需求规格说明书(SRS)的质量进行检验的过程 这个过程确定SRS是否存在需求遗漏、需求错误以及需求不一致的地方,如果需求不合格则需要进一步进行需求工程 需求验证的工具有Xupper(业务建模,需求追溯),54,13,*,2.4 需求的层次性,软件需求具有不同的层次性,将形成不同的需求,包括: 业务需求(Business Requirement) 用户需求(User Requirement) 功能需求(Functional Requirement),业务需求,用户需
5、求,功能需求,开发人员,客户沟通,系统分析师,54,14,*,2.4.1 业务需求,业务需求反映了用户对系统和产品的高层次的目标要求,他们是用户组织机构流程的再现和模拟,是从用户组织机构的工作流程的角度进行的需求描述 业务需求使用流程图、活动图等来表达 制作业务需求的工具包括:BPwin,Microsoft Visio,UML工具等,54,15,2.4.1.1 业务流程举例1,*,医生导出睡眠数据进行分析的流程,54,16,2.4.1.2 业务流程举例2,*,54,17,*,2.4.2 用户需求,用户需求描述了用户使用产品必须要完成的任务 用户需求从用户的角度看系统,一般通过用例图来表达 用户
6、需求的表达工具有 :UML用例图,54,18,2.4.2.1 用户需求举例1,*,点餐系统的用例图,54,19,2.4.2.2 用户需求举例2,*,学生成绩管理系统的用例图,54,20,*,2.4.3 功能需求,功能需求定义了开发人员必须实现的软件功能,从而使用户能够完成任务,满足其业务需求 功能需求从开发人员的角度看系统,可以使用结构图表达(模块图,接口) 功能需求的表达工具有:Microsoft Visio,54,21,2.4.3.1 功能需求举例1,*,社交网站功能需求图,54,22,2.4.3.2 功能需求举例2,*,54,23,*,2.4.4 软件不同层次需求的关系,54,24,2.
7、4.5 软件需求文档的组成,*,54,25,*,3 软件需求工具概述,软件需求工具是辅助系统分析人员对用户需求进行提取、整理和分析的辅助工具 软件需求工具使用形式化的图形符号以及形式化的描述语言来完成软件需求的开发,54,26,*,3.1 软件需求工具的分类,可以按照不同的方式对软件需求分析工具进行分类: 按自动化程度进行分类 按分析方法进行分类 按特定的应用领域进行分类,54,27,*,3.1.1 按自动化程度进行分类,按照自动化程度可以分类两类: 人工方式为主的分析工具,使用Word等工具按照结构化分析和设计技术进行需求分析 自动化需求分析工具,通过保证需求信息的一致性和完整性来实现需求分
8、析的自动化,比如Xupper工具,54,28,3.1.2 按照分析方法进行分类,按照支持分析方法对需求工具分类: 支持结构化分析方法需求分析工具,这类工具支持数据流图和数据字典的生成和管理,比如BPwin 支持面向对象方法的需求分析工具,这类工具支持UML语言的表达,比如Rational Rose 支持原型化分析的需求分析工具,这类工具支持快速生成原型,比如VB,*,54,29,3.1.3 按照特定的领域进行分类,按照支持的业务领域进行分类: 支持ERP领域的需求分析工具 支持实时系统的需求分析工具 支持其它系统的需求分析工具,*,54,30,3.2 需求分析工具的功能特性,针对不同的设计方法
9、需求分析工具应该尽量满足该设计方法的功能特性 结构化方法 面向对象的方法 共性,*,54,31,*,3.2.1 针对结构化方法,支持多种分析与设计方法(SA、SADT,面向数据结构等) 支持数据流图(DFD)的编辑功能 图形的一致化检查,防止数据项的重名等错误,54,32,3.2.2 针对面向对象的方法,支持多种面向对象方法(如OMT、OOSE以及UML) 支持类定义和类关系描述 支持对象的交互描述 一致性检查,检查对象关系的一致性,*,54,33,*,3.2.3 共同特性,支持信息仓库 支持版本控制 支持脚本 支持生成需求规格说明书 图形化界面 形式化的需求表达 ,54,34,*,3.3 衡
10、量需求工具的依据,可以使用以下方法对需求工具进行衡量: 使用的方便程度,图形化界面 与设计工具的衔接程度 资源占用情况 是否提供错误检测机制 用户领域知识的提示功能,54,35,*,4 需求分析方法,需求分析的方法包括:自顶向下的分析和自底向上的分析方法 自顶向下的分析方法采用逐层分解的方式分析系统,用数据流图和数据字典描述系统,54,36,*,4.1 数据流图,数据流图(Data Flow Diagram DFD)是从数据传递和加工的角度,以图形化的方式刻画数据流从输入到输出的变换过程。其包含3中基本元素: 命名的箭头表示数据流 圆圈表示处理 矩形或其他形状表示数据存贮,54,37,*,4.
11、1.1 数据流图举例,通用的数据流图,数据存储,数据输入,数据输出,处理,数据流,数据流,信息需求,54,38,*,4.1.2 数据流图的分层,当系统比较复杂时,为了便于理解、控制其复杂性,可以采用分层方法描述数据流图: 一层描述系统的全貌 二层描述各子系统的结构 分解直到每层都非常清楚,54,39,*,4.1.2.1 数据流图的分层举例,系统的第三层数据流图(DFD),系统的第二层数据流图(DFD),Medicine Cost Computation,Medicine Name,Medicine Cost,系统的第一层数据流图(DFD),54,40,Medicine Cost Computa
12、tion,*,4.2 数据字典,数据字典(Data Dictionary)是对系统中的数据的详细描述,是各类数据结构的属性清单,它与数据流图互为注释 数据字典包括5个部分: 数据项 数据结构 数据流 数据存储 处理过程,54,41,*,4.2.1 数据项,数据项是数据的最小单位 数据项描述 = 数据项名,数据项含义说明,别名,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系 例如: 名字,学生姓名,String, 128Bytes, 字符,在学生记录中使用,54,42,*,4.2.2 数据结构,数据结构是数据项的有意义的组合结果 数据结构描述= 数据结构名,含义说明,组成:数据项或数
13、据结构 例如: 学生,学生基本信息,组成:名字,出生年月,性别,学院、专业,年级,54,43,*,4.2.3 数据流,数据流可以是数据项或数据结构,它表示某一处理过程中数据在系统内的传输路径 数据流描述= 数据流名,说明,数据流来源,数据流去向,组成:数据结构,平均流量,高峰期流量 例如: 学生信息流,传输修改的学生信息,信息编辑器,数据库,组成:学生, 50个/s, 1000/s,54,44,*,4.2.4 数据存储,数据存储是数据的存放场所,也是数据流的来源或去向之一 数据存储描述= 数据存储名,说明,编号,流入的数据流,流出的数据流,组成数据结构,数据量,存取方式 例如: 学生信息存贮,
14、学生信息,00001,学生信息流,None,组成:学生, 50个,批处理 ,54,45,*,4.2.5 处理过程,处理过程是对数据流的处理,其处理逻辑通常使用判定树来描述,数据字典中的处理过程只描述说明性的信息 处理过程描述= 处理过程名,编号,说明,输入:数据流,输出:数据流,处理:简要说明 例如: 学生编辑, 00011,输入学生信息,输入:学生,输出:学生,处理:编辑,54,46,*,4.3 常用的需求图形分析工具,UML图 数据流图(DFD) 数据字典(DD) 判定表(Decision Table) 判定树(Decision Tree) 输入处理输出图(IPO) Warnier图(表示
15、数据层次结构),54,47,5.典型的需求分析工具介绍,有各种需求分析工具,典型的包括: BPwin Microsoft Visio UML工具,*,54,48,5.1 BPwin工具简介,BPWin是美国CA公司研发的用于业务流程可视化、分析和提高业务处理能力的建模环境 BPwin可以构建以下几种模型: 功能建模 数据流建模 工作流建模,*,54,49,5.1.1 BPwin工具的特点,BPwin具有以下几个特点 可构建各种需求模型 将与建立过程模型的有关任务自动化 为复杂项目的分析提供统一的分析环境 可以模型管理工具ModelMart集成使用 可与数据建模工具ERwin集成使用 符合美国政府FIPS标准 支持Unicode,*,54,50,5.2 Microsoft Visio工具简介,Microsoft Visio是流程图和矢量绘图软件 Microsoft Visio软件可以方便地绘制业务
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年黑龙江省安达市高二生物下册期末考试模拟卷含答案(轻巧夺冠)
- 2025年辽宁省凌源市高二生物下册期末考试模拟卷附完整答案【典优】
- 2026年幼儿园上学期期末总结汇报
- 2026年山东省新泰市高二生物下册期末考试检测卷及完整答案(名校卷)
- 2026年幼儿园秦岭野生动物保护
- 2026年幼儿园中班学期期末家长会6
- 2026年福建省福清市高二生物下册期末考试考试卷及完整答案【名校卷】
- 2026年云南省个旧市高二生物下册期末考试考试卷【预热题】附答案
- 2026年湖南省汨罗市高二生物下册期末考试试卷(模拟题)附答案
- 2025年山东省莱州市高二生物下册期末考试测试卷附答案【达标题】
- 2025-2026学年重庆八中宏帆学校七年级(下)期中英语模拟试卷(含答案)
- 人教版小学六升七数学暑假衔接作业完整版 (可直接打印)
- 2026年山东档案职称必背题库附答案详解(模拟题)
- 四川省成都市2026年初中学业水平考试地理试题(含答案)
- 2026春季学期河南开放大学会计学本科补修课《成本会计#》纸质大作业试题及答案
- 2025年贵州省遵义市八年级地理生物会考考试试题及答案
- 突发性聋诊断和治疗指南(2026实践版)
- 2026新外研七下英语U1-6重点语法归纳+练习
- 网络意识形态工作责任制实施细则
- 2026年人教PEP版四年级英语下册Unit 6 From farm to table 教案
- 2026年青岛华通国有资本运营集团有限责任公司校园招聘笔试模拟试题及答案解析
评论
0/150
提交评论