软件需求分析与总体设计课件

PPT
  • 阅读 57 次
  • 下载 0 次
  • 页数 63 页
  • 大小 797.500 KB
  • 2022-11-24 上传
  • 收藏
  • 违规举报
  • © 版权认领
下载文档30.00 元 加入VIP免费下载
此文档由【小橙橙】提供上传,收益归文档提供者,本网站只提供存储服务。若此文档侵犯了您的版权,欢迎进行违规举报版权认领
软件需求分析与总体设计课件
可在后台配置第一页与第二页中间广告代码
软件需求分析与总体设计课件
可在后台配置第二页与第三页中间广告代码
软件需求分析与总体设计课件
可在后台配置第三页与第四页中间广告代码
软件需求分析与总体设计课件
软件需求分析与总体设计课件
还剩10页未读,继续阅读
【这是免费文档,您可以免费阅读】
/ 63
  • 收藏
  • 违规举报
  • © 版权认领
下载文档30.00 元 加入VIP免费下载
文本内容

【文档说明】软件需求分析与总体设计课件.ppt,共(63)页,797.500 KB,由小橙橙上传

转载请保留链接:https://www.ichengzhen.cn/view-45359.html

以下为本文档部分文字说明:

软件需求分析与总体设计讲座教师:殷锋博士西南民族大学图书馆副馆长西南民族大学计算机科学与技术学院教授(原副院长)1需求工程概述2需求分析及其任务3获取需求的方法4需求分析与软件设计的关系5规格说明的工具(实体-联系图、

数据规范化、状态转换图、其它图形工具)6验证软件需求软件需求分析1需求工程概述需求工程是指应用已证实有效的技术、方法进行需求分析,确定客户需求,帮助分析人员理解问题并定义目标系统的所有外部特征的一门学科。需求工

程的活动:•需求获取•需求建模•形成需求规格(规约)•需求验证•需求管理需求工程的层次分解示意图需求工程需求活动需求管理问题获取分析编写规格说明验证2需求分析及其任务准确地定义未来系统的目标,确定为了满足用户的需求,系统必须要做的工作和应完成的功能。然后以《需求规格说

明书》的形式准确、规范地表达用户的需求。需求分析的步骤•需求获取•需求提炼:分析建模(通过数学建模、有穷状态机、Z语言、Petri网等形式或半形式化方法导出软件的逻辑模型)•需求描述:编写《需求规格说明书》•需求验证软件需求分析的几个阶段•问题分析•问题评估和方案综合•建模

•规约•复审注意:软件“系统分析员”的主要工作焦点是“做什么(what)”,不是“怎样做(how)”。(1)确定对系统的综合要求功能需求性能需求可靠性和可用性需求出错处理需求接口需求约束逆向需求将来可能的需求(2)分析系统的数据要求(3)导出系统的逻辑模

型(4)修正系统开发计划软件需求分析的重要内容3需求获取需求获取的目的清楚地理解所要解决的问题完整地获取用户需求需求获取面临的挑战:(1)问题空间理解;(2)人与人之间的通信与交流困难;(3)需求随着时间的不断变化。需求获取的方法访谈面向数据流自顶向下求精简易的应用规格说明书快速建

立软件原型某出版社系统调查表编号提出问题1您在哪个部门工作?2出版业务流程是什么?3您每日都处理那些文件、数据、报表?4工作中手工处理特别麻烦的事情是什么?5工作中手工处理什么问题解决不了?影响效率的问题有哪些?6您认为提高工作效率,节省工作时间,减轻工作强度可采取哪些办法?某

出版社系统调查表编号提出问题7您的部门需要成本核算和统计的内容有哪些?8您的部门采用计算机管理工作情况如何?9如何改进业务流程使之更合理?10哪些问题是目前传统手工方法根本无法解决的?11出版社计算机管理信息系统需要解决什么问题?需求所要获取的内容(1)用户需求分类1)功能性需求:定义系统需要

做什么(描述系统必须支持的功能和过程);2)非功能性需求(技术需求):定义系统工作时的特性(描述操作环境和性能目标)。两类需求应包括的具体内容1)功能2)性能3)环境4)界面5)用户或人的因素6)文档7)数据8)资源9)安全保密10)软件成

本消耗与开发进度11)质量保证1)功能需求•系统做什么?•系统何时做什么?•系统何时及如何修改或升级?2)性能需求软件开发的技术性指标例如:•存储容量限制•执行速度、相应时间•吞吐量3)环境需求•硬件设备:机型、外设、接口、地点、分布、温度、湿度、磁场干扰等•软件:操作系统网络

数据库4)界面需求•有来自其它系统的输入吗?•到自其它系统的输出吗?•对数据格式有规定吗?•对数据存储介质有规定吗?5)用户或人的因素•用户类型?•各种用户熟练程度?•需受何种训练?•用户理解、使用系统的难度?•用户错误操作系统的可能性?6)文档需求•需哪些文档?•文档针对

哪些读者?7)数据需求•输入、输出数据的格式?•接收、发送数据的频率?•数据的准确性和精度?•数据流量?•数据需保持的时间?8)资源需求•软件运行时所需的数据、软件。内存空间等资源。•软件开发、维护所需的人力、支撑软件、开发设备等。9)安全保密要求•需对访问系统或系统信息加以控制吗?•如

何隔离用户之间的数据?•用户程序如何与其它程序和操作系统隔离?•系统备份要求?10)软件成本消耗与开发进度需求•开发有规定的时间表吗?•软硬件投资有无限制?11)质量保证•系统的可靠性要求?•系统必须监测和隔离错误吗?•规

定系统平均出错时间?•出错后,重启系统允许的时间?•系统变化如何反映到设计中?•维护是否包括对系统的改进?•系统的可移植性?分析方法与方案综合分析员从数据流向数据结构出发,逐步细化所有的软件功能,找出系统各元素之间的联系、接口特性和设计上的限制,分析它们是否满足功能要

求,是否合理。依据功能需求、性能需求运行环境需求等,剔除其不合理的部分,增加其需要部分。最终合成系统的解决方案,给出目标系统的详细逻辑模型。常用的分析方法有SA、JSD、OOA4需求分析与软件设计的关系需求分析:系统需要做什么(对问题的调查与描述)软件设计:

系统如何做(逻辑解决方案)当前的需求使我们考虑选择某种设计选项选择设计选项可能引发新的需求需求分析与软件设计的界限:存在、模糊、迭代需求的类型需求类型软件需求设计约束功能性需求非功能性需求父需求子需求1子需求2子需求3例:父需求:系统安全性使用行业标准子需求1:数据安全性采用事务日志镜

象方法。子需求2:数据保密性根据身份等级分配相应数据库存取权限子需求3:……需求分析的过程(1)通过对现实环境的调查,获得当前系统的物理模型学生学生购书申请购书单发票领书单书信北107张教务科信北206王会计室信北206李出纳员(二实南)赵教材科学生购买教材的实际处理流程—当前系统物理模型(2)

去掉具体模型中的非本质因素,抽取现实系统的实质,抽象出当前系统的逻辑模型。学生购买教材的逻辑模型学生学生购书申请购书单发票领书单书审查有效性开发票开领书单发书需求分析的过程需求分析的过程(3)分析当前系统与目标系统的差别,建立目标系统

的逻辑模型计算机教材管理系统的逻辑模型学生购书单发票领书单审查并开发票开领书单无效书单学生需求分析过程示意(4)对目标系统的逻辑模型进行改进与优化(5)需求分析的验证需求分析的步骤当前系统目标系统物理模型逻辑模型逻辑模型物理模型模型化抽象化具体化实例化怎么

做做什么当前系统目标系统需求定义逻辑模型和物理模型模型是对对象系统的形式化的特征抽象,概括性或近似地表示;构造模型的过程是一个抽象、分析的过程。对象系统模型系统抽象(映射)模型应用模型构造的过程逻辑模型物理模型(本质模

型、概念模型)(实施模型、技术模型)现行系统目标系统描述重要的业务功能,无论系统是如何实施的。描述现实系统是如何在物理上实现的。描述新系统的主要业务功能和用户新的需求,无论系统应如何实施。描述新系统是如何实施的(包括技术)。3.1需求分析的任务3.2与用户沟通获取需求

的方法3.3分析建模与规格说明3.4实体-联系图3.5数据规范化3.6状态转换图3.7其它图形工具3.8验证软件需求(1)实体-联系图数据模型工具数据对象属性联系实体-联系图的符号5规格说明工具图3.2某校教学管理ER图

为减少数据冗余,避免出现插入异常或删除异常,简化修改数据的过程,通常需要把数据结构规范化。通常用“范式(normalforms)”定义消除数据冗余的程度。第一范式(1NF)数据冗余程度最大,第五范式(5NF)数据

冗余程度最小。(1)第一范式每个属性值都必须是原子值,即仅仅是一个简单值而不含内部结构。(2)第二范式满足第一范式条件,而且每个非关键字属性都由整个关键字决定(而不是由关键字的一部分来决定)。(3)第三范式符合第二范式的条件,每个非关键字属性都仅由关键字决定,而且一

个非关键字属性不能仅仅是对另一个非关键字属性的进一步描述(即一个非关键字属性值不依赖于另一个非关键字属性值)。(2)数据规范化(3)状态转换图1状态:可被观察到的系统的行为模式2事件:引起系统动作或(和)状态转换的控制信息3符号:4例子:下页图状态

图中使用的主要符号1)UML面向对象的分析与设计(OOA&D)方法的发展在80年代末至90年代中出现了一个高潮,UML是这个高潮的产物。它不仅统一了Booch、Rumbaugh和Jacobson的表示方法,而且对其作了进一步的发展,并最终统一为大众所接受的标

准建模语言。其它图形工具面向对象技术和UML的发展过程可用下图来表示,标准建模语言的出现是其重要成果。在美国,截止1996年10月,UML获得了工业界、科技界和应用界的广泛支持,已有700多个公司表示支持采用UML作为建模语言。1996

年底,UML已稳占面向对象技术市场的85%,成为可视化建模语言事实上的工业标准。1997年11月17日,OMG采纳UML1.1作为基于面向对象技术的标准建模语言。UML代表了面向对象方法的软件开发技术的发展方向,具有巨大的市场前景,也具有重大的经济价值和国防价值。作为一种建模语言,U

ML的定义包括UML语义和UML表示法两个部分。(1)UML语义描述基于UML的精确元模型定义。元模型为UML的所有元素在语法和语义上提供了简单、一致、通用的定义性说明,使开发者能在语义上取得一致,消除了因人而异的最佳表达方法所造成的影响。此外UML还支持对元模型的扩展定义。(2)U

ML表示法定义UML符号的表示法,为开发者或开发工具使用这些图形符号和文本语法为系统建模提供了标准。这些图形符号和文字所表达的是应用级的模型,在语义上它是UML元模型的实例。标准建模语言UML的重要内容可以由下列五类图(共9种图形)来定义:·第一类是用例图,从用户角度

描述系统功能,并指出各功能的操作者。·第二类是静态图(Staticdiagram),包括类图、对象图和包图。其中类图描述系统中类的静态结构。不仅定义系统中的类,表示类之间的联系如关联、依赖、聚合等,也包括类的内部结构(类的属性和操作)。类图描述的是一种静态关系,在系统

的整个生命周期都是有效的。对象图是类图的实例,几乎使用与类图完全相同的标识。他们的不同点在于对象图显示类的多个对象实例,而不是实际的类。一个对象图是类图的一个实例。由于对象存在生命周期,因此对象图只能在系统某一时间段存在。包由包或类组成,表示包与包之间的关系。包图用于描

述系统的分层结构。·第三类是行为图(Behaviordiagram),描述系统的动态模型和组成对象间的交互关系。其中状态图描述类的对象所有可能的状态以及事件发生时状态的转移条件。通常,状态图是对类图的补充。在实用上并不需要为所有的类画状态图,仅为那些有多个状态其行为受外

界环境的影响并且发生改变的类画状态图。而活动图描述满足用例要求所要进行的活动以及活动间的约束关系,有利于识别并行活动。·第四类是交互图(Interactivediagram),描述对象间的交互关系。其中

顺序图显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显示对象之间的交互;合作图描述对象间的协作关系,合作图跟顺序图相似,显示对象间的动态合作关系。除显示信息交换外,合作图还显示对象以及它们之间的关系。如果强调时间和

顺序,则使用顺序图;如果强调上下级关系,则选择合作图。这两种图合称为交互图。·第五类是实现图(Implementationdiagram)。其中构件图描述代码部件的物理结构及各部件之间的依赖关系。一个

部件可能是一个资源代码部件、一个二进制部件或一个可执行部件。它包含逻辑类或实现类的有关信息。部件图有助于分析和理解部件之间的相互影响程度。需求建模实例:某金融贸易系统用例图(UML)风险分析交易估计进行交易进行交易接待员酒店系统财务系统需求建模实例:用例图举例(UM

L)签定一份保险单客户保险销售人员销售统计客户统计需求建模实例:描述客房状态的状态图取消预定已预订空闲占用维修?事件创建图层次方框图的一个例子2)层次方框图(SC图)图Warnier图的一个例子3)W

arnier图图IPO图的一个例子图4)IPO图图3.8改进的IPO图的形式3.1需求分析的任务3.2与用户沟通获取需求的方法3.3分析建模与规格说明3.4实体-联系图3.5数据规范化3.6状态转换图3.7其它图形工

具3.8验证软件需求6验证软件需求(1)从哪些方面验证软件需求的正确性1)一致性:所有需求必须是一致的,任何一条需求不能和其他需求互相矛盾。2)完整性:需求必须是完整的,规格说明书应该包括用户需要的每一个功能或性能。3)

现实性:指定的需求应该是用现有的硬件技术和软件技术基本上可以实现的。对硬件技术的进步可以做些预测,对软件技术的进步则很难做出预测,只能从现有技术水平出发判断需求的现实性。4)有效性:必须证明需求是正确有效的,确实能解决

用户面对的问题(2)验证软件需求的方法1.验证需求的一致性2.验证需求的现实性3.验证需求的完整性和有效性OMT方法的特点:•开发重点在分析阶段•强调数据结构而不是功能•形式化描述能力强•开发步骤的衔接良好•重复性的开发过程系统分析报告新系统逻辑方案

的建立是:对业务流程分析整理的结果对数据和数据流分析整理的结果子系统划分的结果在具体业务处理中应建立的管理模型和管理方法对新系统相配套的管理制度和运行体制建立的建议最后写出系统分析报告系统分析报告格式一:引言部分(名称,开发目标,主要功能,开发背景等)二:现行系统概况A.现行

系统现状详细调查说明:包括组织机构图,系统目标、功能一览表、业务流程图、业务流量以及存在的薄弱环节,数据,主要算法等。B.现行系统分析:用户需求及主要存在的问题等。三:新系统逻辑方案1:新系统目标(要求具体);2:新系统逻辑模型(数

据流程图、数据字典、实体关系图)3:新系统功能分析(改进,补充,优越之处);4:新系统在各个处理环节上采用的管理方法、模型;5:与新系统相配套的管理制度和运行体制的建立;四:下阶段工程进度计划软件需求说明书(SRS)(S

oftwareRequirementSpecification)需求分析阶段要完成的文档。SRS的作用:•开发者与用户间事实上的技术合同书•开发者下一步设计和编码的基础•测试验收目标系统的依据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故障处理要求3.6其他专门要求(GB9385-88)4运行环境规定4.1设备4.2支持软件4.3接口

4.4控制

小橙橙
小橙橙
文档分享,欢迎浏览!
  • 文档 25747
  • 被下载 7
  • 被收藏 0
相关资源
广告代码123
若发现您的权益受到侵害,请立即联系客服,我们会尽快为您处理。侵权客服QQ:395972555 (支持时间:9:00-21:00) 公众号
Powered by 太赞文库
×
确认删除?