软件工程需求分析课件.ppt

上传人(卖家):三亚风情 文档编号:2872714 上传时间:2022-06-06 格式:PPT 页数:54 大小:2.54MB
下载 相关 举报
软件工程需求分析课件.ppt_第1页
第1页 / 共54页
软件工程需求分析课件.ppt_第2页
第2页 / 共54页
软件工程需求分析课件.ppt_第3页
第3页 / 共54页
软件工程需求分析课件.ppt_第4页
第4页 / 共54页
软件工程需求分析课件.ppt_第5页
第5页 / 共54页
点击查看更多>>
资源描述

1、需求分析思考? 在需求分析阶段,需要了解哪些需求? 你能够采取何种手段与用户进行交流沟通? 如何描述需求?软件生存期第4章软件需求分析 需求分析的主要任务是什么? 如何识别、获取需求? 需要获取哪些需求? 何为需求建模? 什么是结构化分析方法? 什么是面向数据流的分析方法?一、需求分析 目标和任务 需求获取技术 需求内容 需求建模方法1. 需求分析的任务 问题分析,确定需求 需求描述和分析 开发原型系统 编写SRS 需求评审 修正计划2. 初步需求获取技术1. 用户访谈2. 用户调查(问卷)3. 文档分析4. 原型法5. 模型驱动的方法 举例:某出版社系统需求调查表编号编号提出问题提出问题1您

2、在哪个部门工作?您在哪个部门工作?2出版业务流程是什么?出版业务流程是什么?3您每日都处理那些文件、数据、报表?您每日都处理那些文件、数据、报表?4工作中手工处理特别麻烦的事情是什么?工作中手工处理特别麻烦的事情是什么?5工作中手工处理什么问题解决不了?影响效率的问题有哪工作中手工处理什么问题解决不了?影响效率的问题有哪些?些?6您认为提高工作效率,节省工作时间,减轻工作强度可采您认为提高工作效率,节省工作时间,减轻工作强度可采取哪些办法?取哪些办法?举例:某出版社系统需求调查表编号编号提出问题提出问题7您的部门需要成本核算和统计的内容有哪些?您的部门需要成本核算和统计的内容有哪些?8您的部门

3、采用计算机管理工作情况如何?您的部门采用计算机管理工作情况如何?9如何改进业务流程使之更合理?如何改进业务流程使之更合理?10哪些问题是目前传统手工方法根本无法解决的?哪些问题是目前传统手工方法根本无法解决的?11出版社计算机管理信息系统需要解决什么问题?出版社计算机管理信息系统需要解决什么问题?3. 需求内容 功能性需求 定义了系统做什么 描述系统必须支持的功能和过程 非功能性需求(技术需求) 定义了系统工作时的特性 描述操作环境和性能目标需求包括的内容 4. 需求分析和描述技术1.问题分解2.抽象3.多视点4.快速原型5.建模整个问题子问题1子问题3子问题21). 问题分解 什么是问题分解

4、 将大问题分解为小问题,通过小问题解决来实现大问题的解决 问题分解有助于降低解决问题的复杂度; 获取和分析问题本身所固有的整体-部分关系2). 问题抽象 什么是抽象? 抽象有助于控制问题复杂度,抓住问题的本质,获取一般和特殊关系 3). 多视点分析 什么是多视点分析 从多个角度、不同层面上分析和描述用户需求 为什么需要多视点分析 人的认识具有片面性(瞎子摸象) 多视点可以帮助我们全面把握用户的需求4). 快速原型方法 传统软件开发存在的问题 需求分析员与用户之间没有一种直观交流媒介 用户需求不断变化 如何适应这样一种变化 如何更为直观地评价用户需求 什么是软件系统的原型 对软件系统的主要功能和

5、行为的直观描述(操作模式、过程和界面) 通过构建用户需求的原型来分析和描述用户需求快速原型方法示意图5). 需求建模 什么是需求模型 模型是对现实的简化,包含有广泛影响的要素,忽略不相关的次要因素 需求模型详细、准确地描述了用户对目标软件系统的功能、行为、性能、 设计约束等方面的要求 为什么需要建模 建模可缩小和简化所用户需求的分析和描述,从多个视点、多个不同的抽象层次来描述用户需求,从而更好促进软件的开发 需求建模方法 面向数据流的方法 面向对象的方法二、需求分析技术(Structured Analysis)F用抽象的概念,按照软件内部数据传递、变换的关系,自顶向下逐层分解,直到找到满足功能

6、要求的所有可实现的软件为止。 DFA(Data Flow Analysis):一种分析数据在系统中流向为方法,分析结果称数据流图DFD(Data Flow Diagram) 1. 结构化分析建模实体 关系图状态转换图数据流图数据字典数据对象描述控制规格说明加工规格说明分析模型核心数据字典数据字典使用或产生的所有数据对象使用或产生的所有数据对象 数据建模实体关系图实体关系图n 数据对象间关系数据对象间关系数据对象描述数据对象描述 功能建模数据流图数据流图n 数据移动怎样被转换数据移动怎样被转换n 变换数据流的功能变换数据流的功能加工规格说明加工规格说明 行为建模状态转换图状态转换图n 系统行为模

7、式系统行为模式( (状态状态) )n 不同状态间转换的方式不同状态间转换的方式控制规格说明控制规格说明(1)实体关系图ERD (Entity-Relationship Diagram) 对数据密集型的系统进行需求分析时的主要任务应是对其中的复杂的数据及数据间的复杂关系进行分析。显然,DD无法适应这项任务。这时,最常用的方法是建立E-R模型。E-R模型中包括实体、联系和属性三个基本成分。E-R模型采用E-R图来实现。 实体是客观世界中存在的可相互区分的事务。 联系是实体间的关系,有三种:一对一(1:1)、 一对多(1:n)、 多对多(m:n)。 属性是实体和联系所具有的性质、特征。relatio

8、nattribute教师-学生-课程E-R 图(2)数据流图(Data Flow Diagram, DFD)DFD中的基本符号 Input/output Function Data flow Data storage外部实体加工数据流数据存储DFD的绘制过程数据流图的作法例1:某工厂仓库的“订货系统”应根据仓库管理员的提货清单和进货单,更新库存报表,决定需要再次定货的零件(包括零件编号、名称、订货量、价格、供应商等数据),将定货报表呈交给采购员去采购(每天一次)。当某零件的库存量库存量临界值,就要再次定货。仓库管理员采购员订货系统提货清单进货单定货报表 更新库 存信息 处理 定货库存报表库存报

9、表RW2.1 定货 判断2.2 产生定 货报表数据流图的作法仓库管理员采购员订货系统提货清单进货单定货报表 更新库 存信息 处理 定货库存报表库存报表RW定货信息W定货信息R定货信息数据的不同形式 同样数据的两种不同形式 只是所处状态不同 静止态 运动中数据流数据存储命名 数据流(数据存储) 表格、单据名称 代表性数据名称 便于理解的名称 错误命名 控制流 实物 加工/处理 顶层:软件项目名 先为与之关联的数据流命名 动宾结构 反映系统的功能 错误命名 意义空洞的动词(计算,处理,加工)123ABCDE3.13.23.33.4在顶层DFD中不画数据存储外部实体1数据存储1 系统数据流1数据流2

10、数据流3数据流4外部实体2数据存储23.1.2创建一个新的会员账号 3.1.3冻结会员账号编号生成一份雇员银行结算表冻结账号通知会员应用3.1.1雇员银行结算表账目数据从哪里来 灰洞现有帐号会员账号新帐号状态这个过程没有输出 黑洞雇员地址雇员应收账 部门这个过程没有输入 奇迹!雇员状态处理过程既有输入,又有输出。 分解(细化)的深度和层次 综上所述:细化DFD的原则 自顶向下逐步细化,将需分解的功能进一步分解; 分层细化时须保持信息的连续性;细化前后对应功能的输入、输出流应相同,且每个处理最少要有一个输入和一个输出流; 当把一个功能分解至处理级时,就不用分解了; 低层DFD较复杂时,可以画在多

11、张子图上,子图编号一般采用父图对应的处理号,子图中的处理号由子图号、小数点、局部顺序组成。 DFD要与数据词典(DD)配合才能清楚地表达数据处理的要求练习:某企业销售管理系统的功能描述: 接受顾客的订单,检验订单,若库存有货,进行供货处理,即修改库存,给仓库开备货单,并且将订单留底;若库存量不足,将缺货订单登入缺货记录。 根据缺货记录进行缺货统计,将缺货通知单发给采购部门,以便采购。 根据采购部门发来的进货通知单处理进货,即修改库存,并从缺货记录中取出缺货订单进行供货处理。 根据留底的订单进行销售统计,打印统计表给经理。请根据上述描述分层画出该系统的DFD(3)状态转换图(State Tran

12、sition Diagram) 通过描绘系统的及引起系统状态转换的来表示系统的。c系统行为模式cdo:在该状态下的动作c引起系统状态转换的控制信息STD中使用的主要符号初始事件事件1条件1事件2条件2结束事件【例】电话系统的状态转换图闲置拨号音do:响拨号音拨号接通中do:试接通振铃do:振铃通话断线忙音do:响忙音超时do:响蜂鸣音提示信息do:播放信息挂机数字占线摘机数字有效号码已接通受话人摘机应答受话人挂机超时超时无效号码挂机信息播完练习:办公室复印机的工作过程大致如下: 未接收到复印命令时处于闲置状态,一旦接收到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下

13、一个复印命令;如果执行复印命令时发现缺纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接收复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告,等人来排除故障,故障排除后回到闲置状态。(4) 数据字典(Data Dictionary, DD) 数据字典是关于数据的信息的集合,是对系统中所有的数据元素的进行严密一致的定义的集合。 DD中数据应包含的信息 名字、别名 定义(类型、长度、结构等等) 使用地点与方式(值的范围和含义、使用频率、使用方式) 内容描述 补充信息复杂数据一般由数据项按顺序、选择、重复、可选的方式组成。进行描述时,使用下列符号: 符符 号号 含含 义义

14、举举 例例 .,.或或.|. . 或或 m.n (.) “.” . 被定义为被定义为与与 或或重复重复可选可选 基本数据元素基本数据元素 连结符连结符 x=abx=a, b,x=a|bx=a,x=3a8x=(a)x=“a” x=1.9telephone numberintegrated office phone systemName: Aliases: Where/How used: Description: Format:telephone number phone number, number read-phone-number (input) display-phone-number (

15、output) analyze-long-distance-calls (input) telephone no. = local extension | outside no. | 0 outside no. = 9 + service code | domestic no. service code = 211 | 411 | 611 | 911 domestic no. = ( ( 0 ) + area code ) + local number area code = *three numeral designator*Build the requirements dictionary

16、:alphanumeric datasystem output练习:请定义下面的存折格式三、软件需求规格说明书 (SRS)编写SRS的基本要求 必须描述软件具备的功能和性能 ; 必须用确定地、无二义性的、完整的语句来描述功能和性能 。SRS由谁来编写?分析人员应具备的素质有哪些? (1) 能够熟练地掌握计算机硬、软件的专业知识,具有一定的系统开发经验。 (2) 善于进行抽象的思维和创造性的思维,善于把握抽象的概念,并把它们重新整理成为各种逻辑成分,并给出简明、清晰的描述。 (3) 善于从相互冲突或混淆的原始资料中抽出恰当的条目来。 (4) 善于进行调查研究,能够很快学习用户的专业领域知识,理解

17、用户的环境条件。 (5) 能够倾听他人的意见,注意发挥其它人员的作用。 (6) 具有良好的书面和口头交流表达能力。SRS大纲1引言1.1编写目的1.2背景1.3定义1.4 参考资料2任务概述2.1目标2.2用户特点2.3假定和限制3数据要求3.1静态数据3.2动态数据3.3数据库描述3.4数据字典3.5数据采集4功能需求4.1功能划分4.2功能描述5性能需求5.1数据精确度5.2时间特性5.3适应性6运行需求6.1用户界面6.2硬件接口6.3软件接口6.4故障处理7其它需求如质量要求、设计约束等四、需求评审 产品与需求符合的程度: 需求是永无止境的,成本往往是有限的。 微软:质量只要好到能够使大量的产品卖给客户。 NASA:可靠性要求达到99.999% 产品属性完全满足用户需求是不现实的。小 结 需求分析的目标和任务 软件需求的获取方法 软件需求的内容 结构化分析方法 面向数据流的分析方法思考题 软件需求分析是软件工程过程中交换意见最频繁的步骤。为什么交换意见的途径会经常阻塞?你会采用哪些有效的方式与用户沟通以获取真正的需求? 采用面向数据流的分析方法对你的项目进行需求分析。 在软件需求分析时,首先建立当前系统的物理模型,再根据物理模型建立当前系统的逻辑模型。试问:什么是当前系统?当前系统的物理模型与逻辑模型有什么差别?

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(软件工程需求分析课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|