软件需求分析PPT课件_第1页
软件需求分析PPT课件_第2页
软件需求分析PPT课件_第3页
软件需求分析PPT课件_第4页
软件需求分析PPT课件_第5页
已阅读5页,还剩100页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.1、软件需求分析的工作和流程结构化分析方法原型方法图形分析方法包括穷状态机Petri网、软件需求分析(包括第3章和第4章内容)。2,3.1分析软件要求的工作,对系统的综合要求分析系统的数据要求确定系统的逻辑模型修改开发计划。3,软件的综合要求(P46):功能要求性能要求环境要求稳定性要求安全机密要求反向要求限制用户界面要求,资源使用要求消费要求开发进度要求错误处理要求接口要求未来可能提出的要求,4,分析系统的数据要求,使用数据模型构建方法分析系统的数据结构标准化问题-范式,5,通过当前系统的逻辑模型推导目标系统的逻辑模型,解决目标系统的“什么”问题。6,3.2需求分析方法和过程,(1)问题识

2、别是从系统角度理解软件,审查软件范围,以确定目标系统的综合要求,即软件的要求提出了这些要求实现条件,要求必须满足的标准,7,问题识别的另一任务是建立分析所需的通信路径,以便顺利分析问题。8,(2)在信息流和信息结构中进行分析和合成,逐步细化所有软件功能,了解系统元素之间的连接,了解接口特性和设计约束,分析是否满足功能要求,并分析是否合理。除去不合理的部分,增加需要的部分。最后是综合配置的解决方案,提出了目标系统的详细逻辑模型。9,(3)需求分析阶段的文档编写软件需求指南数据需求指南初始用户指南修改、改进和决策软件开发实施计划,10,(4)审查需求分析,系统定义的目标是否符合用户的要求;系统要求

3、分析阶段提供的文档信息是否完整;文档中的所有说明是否完整、明确、准确地反映用户要求:是否说明了与所有其他系统组件的重要接口?11、验证正在开发的项目的数据流和数据结构是否足够;所有图表清楚,说明不补充时能否理解;主要功能是否包括在指定的软件范围内,是否充分说明:设计的约束或约束是否符合实际;开发的技术风险是什么?12、是否考虑了其他软件要求;是否考虑了未来可能提出的软件要求;检查标准是否详细编写,系统定义是否成功,13,需求分析流程,14、需要软件需求分析的原则、能够表达和理解问题的信息域和功能区域。要分层分解问题并不断细化系统的逻辑和物理视图,请执行以下操作:15、数据流的自顶向下细化-结构

4、分析方法、数据流的需求分析方法结构化分析方法适用于数据处理类型软件的需求分析。特别是结构化分析方法使用抽象模型的概念,根据软件内部数据传输、转换的关系,逐层分解,直到找到满足功能要求的所有可实现软件。16,结构化分析方法使用工具:数据流图-补充数据数据记录、数据存储和处理词典-数据元素信息记录IPO图-结构化算法结构化英语决策表和决策树。17,实体-联系图,数据字典,状态-迁移图,数据流程图,数据对象说明,控制规范说明,处理规范说明,分析模型的结构,结构化分析的分析模型,18,模型的核心是描述目标系统中使用和生成的所有数据对象的数据词典。围绕这个核心有三个图表。实体-接触映射(ERD)描述数据

5、对象和数据对象之间的关系。数据流图(DFD)描述系统如何传输或转换数据,以及如何转换数据流(子功能)。状态-迁移图表(STD)说明系统如何响应外部事件和执行哪些操作。因此,ERD用于数据建模,DFD用于功能建模,STD用于运动建模。19,数据流图中的每个缺省加工都必须有缺省处理逻辑。基本处理逻辑描述基本处理如何将输入数据流转换为输出数据流的处理规则处理逻辑应当描述实现处理的策略,而不是实现处理的详细处理逻辑。实现处理的详细处理逻辑必须包含足够的信息。完整、有用、没有冗馀、基本处理逻辑说明、20,编写处理逻辑说明的工具,结构化英语判定表判定树,21、(1)结构化英语、结构化英语词汇表由英文命令动

6、词数据字典中定义的名称受限的自定义单词逻辑关系单词IF_THEN_ELSE、CASE_OF、WHILE_DO和REPEAT_UNTIL等组成,22是自然语言和格式化语言之间的语言正文,分为基本控制结构,处理中的操作是自然语言短语,表示基本控制结构。简单语句结构:防止复合语句;重复结构:while_do或repeat_until结构。晶体结构:if_then_else或case_of结构;23、店铺业务处理系统中的“确认陆运单”,if开票金额超过$500 then if逾期60天以上的then在偿还欠款之前,不批准签发else(未超过拖欠期限的金额)的审批书,陆运单else(挑库单金额超过$50

7、0),24,(2)如果数据流图的处理依赖于多个逻辑条件,则使用决策表进行说明更合适。25,“检验运单”,例如。26,27,(3)决策树,决策树也是表示处理逻辑的工具。有时比判断表更直观。检查和发放订单,金额500美元,拖欠60天,不发放批准书,拖欠60天,发放批准书,拖欠60天,发放批准书,运单和信用报告,拖欠60天,发放批准书,签发运单,运单,空运单,28,简单的应用规范技术,完整的软件要求规范说明书,其中明确了团队初始访谈审查要求的意见匹配列表整体确认标准。29,原型方法,在开发初期获得完整准确的规格说明不是件容易的事。特别是一些大型软件项目。用户对系统往往只有一个模糊的想法,很难完全准确

8、地表达对系统的全面要求。软件开发人员对需要解决的应用程序问题更加了解。5点原因,30,随着开发工作的进行,用户可以创建新的要求,也可以根据环境的变化更改要求系统。开发人员在设计和实施过程中也可能遇到意想不到的实际困难,需要改变需求以解决困境。因此,规范说明难以详述,要求发生了变化,沟通中的模糊和误解可能会阻碍软件开发的顺利推进。为了解决这些问题,逐渐形成了软件系统快速原型的概念。31、软件原型的分类,在软件开发中,原型是软件的早期可执行版本,反映了最终系统的一些重要特征。探索型:目的是了解目标系统的要求,掌握所需的特性,探索各种方案的可行性。32,实验型:该原型在用于大规模开发和实施之前,评估

9、程序是否合适,规格说明是否可靠。进化型:这个原型的目的不是改进规格说明,而是在轻松地改造系统,改进原型的过程中逐步将原型演化成最终系统。33,选择原型类型,从系统结构角度考虑:联机事务处理系统、相互关联的应用系统适合原型方法,批、批修改等结构不适合原型方法。从逻辑结构角度考虑:操作支持系统、管理信息系统、记录管理系统等结构系统适合使用原型方法,而基于许多算法的系统不适合使用原型方法。34,在用户特性方面考虑:不满意预先制作的系统定义说明,愿意投资定义和修改原型,不容易确定详细要求,愿意承担决策责任,准备积极参与的用户是适合使用原型的用户。考虑应用约束:不能对已运行的系统进行原型补充。35,选择

10、适当的原型方法,36、快速原型构建、系统分析和部署的四个优点:提高对软件和用户系统服务需求的理解,确定模糊不确定性的软件需求(主要是功能)。软件原型化方法提供了强大的学习手段。37、使用原型方法,可以轻松地了解系统的性能,确认各种关键系统服务的适用性,确认系统设计的可行性,确认系统作为产品的结果。软件原型的最终版本,有利于最终系统的构建,因为有些可以原封不动地成为产品,有些稍加修改就成为最终系统的一部分。下面是原型寿命,38,39、40,原型开发技术,执行规范说明基于脚本的设计自动化编程专用语言可重用软件组件简化假设。41,执行规范说明,执行规范说明是用于说明需求规范的自动化技术。使用这种方法

11、,人们可以直接观察到他们用语言规定的任何系统行为。描述有限状态模型可以运行的数据流程图的代数规范,42、(1)代数规格说明、代数规格说明使用集合、这些集合中定义的函数以及这些函数中定义的方程式来说明物件。规格说明的操作意义用这些方程式表示。请参阅以下范例:43,new _ stack: stackpush: stack,elementstack pop:stack(element | undefined)pop,例如。44,(2) parnas最常用的执行规范说明格式之一,定义无限堆栈及其操作。从一个初始状态开始接收输入,到生成输出,状态发生变化。套用至状态元素的约束决定有效状态的推入。请参阅

12、以下范例:45,例如用户/程序对话设置,46,(3)可执行数据流程图,代替定义处理逻辑的结构化英语,数据流程图成为由可执行语言程序模块组成的网络,在特定环境或工具的支持下成为可执行原型系统。47,基于场景的设计,用于指代用户界面的原型(原型开发技术2)。模拟用户在系统运行期间经历的事件的场景。输入-处理-为输出提供屏幕格式和对话提供模型。因此,软件开发人员可以向用户展示系统的生动视图,以确定用户是否符合自己的意图。48 .在任何场景中,都可以使用一组可重复使用的软件模块来表示特定要求。可以使用原型语言描述原型系统。在原型开发过程中,使用此语言定义屏幕、数据项和相关任务。从系统的外部说明开始,开

13、发与系统的外部视图(如数据库的接口、错误处理和恢复过程)相匹配的详细信息。49,自动编程(原型开发技术3),自动编程在程序自动生成环境的支持下,允许使用计算机进行软件开发。用户的非程序问题规范说明可以自动或半自动地转换为基于数学推理的结构性证明,这是一种高级语言程序,是一种演绎合成工具。50,程序转换手段:将一个程序转换为与另一个功能等价的程序,并保持其准确性。实例推广手段:从实例特征开始,推广为要编程的特征,最后获得程序。过程手段:研究非常高级语言的编译和知识的过程流。51,专用语言(原型开发技术4),专用语言是应用程序的建模语言。在原型开发中使用专用语言,可以使用户和软件开发人员在程序中方

14、便地交换系统特性。52,利用软件重用技术(原型开发技术5)、可重用模块创建适当的组合,可以获得快速构建的原型系统。为了快速构建原型,这些模块必须首先具有简单明确的接口;第二,不要最大限度地依赖其他模块或数据结构。第三,必须具有一些一般功能。53,简化假设(原型开发技术6),简化假设是使设计者在开发过程中快速获得简单系统的假设。这种假设实际上可能不成立,但在原型开发过程中,开发者的注意力可能集中在几个主要方面。54,修改文件时,可以假定此文件实际访问文件时要访问的记录始终存在。如果计划的系统满足用户的所有要求,则可以撤消这些假设并添加详细信息。55,3.3软件要求规范说明、原则1:功能和实现分离

15、原则2:定义行为模型需要面向过程的规范说明语言。原则3:如果目标软件是一个大型系统的一个元素,那么整个大型系统也包含在规格说明中。原则4:必须包括系统运行的环境。原则5:必须是公认的模式。原则6:规格说明必须有效。原则7:必须允许不完整性,允许扩大。原则8:需要本地化和松散的结合。56,57,审查要求规格说明,共16大内容:系统定义目标是否符合用户要求;系统要求分析阶段提供的文档信息是否完整;文档中的所有说明是否完整、明确、准确地反映用户要求:是否说明了与所有其他系统组件的重要接口?开发项目的数据流和数据结构是否充分和确定;所有图表清楚,说明不补充时能否理解;58、主要功能是否包括在规定的软件范围内,是否充分说明;软件必须处理的信息与必须执行的功能是否一致:设计的约束或约束是否符合实际;是否考虑了开发的技术风险;是否考虑了其他软件要求;59,是否考虑了未来可能提出的软件要求?检查标准是否详细编写,系统定义是否成功,是否存在缺失、重复或不一致?用户是否审查了初步用户手册或原型;软件开发计划的估算是否受到影响。60,系统图形分析,系统的要求规格说明通常用自然语言描述,但用自然语言描述时经常出现歧义。为了直观分析系统的行为,需要使用图形分析方法从特定视点描述系统的行为。61,最常用的图形分析方法,E-R图表状态迁移图时间顺序图Petri网,在62,3.4 E-R方法和物理模型

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论