预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共105页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

软件需求分析的任务和过程结构化分析方法原型化方法图形分析方法有穷状态机Petri网3.1软件需求分析的任务软件的综合需求(P46):分析系统的数据要求借助于当前系统的逻辑模型导出目标系统的逻辑模型,解决目标系统的“做什么”的问题。3.2需求分析的方法及过程问题识别的另一项工作是建立分析所需要的通信途径,以保证能顺利地对问题进行分析。(2)分析与综合从信息流和信息结构出发,逐步细化所有的软件功能,找出系统各元素之间的联系、接口特性和设计上的约束,分析它们是否满足功能要求,是否合理。剔除其不合理的部分,增加其需要部分。最终综合成系统的解决方案,给出目标系统的详细逻辑模型。(3)编制需求分析阶段的文档软件需求说明书数据要求说明书初步的用户手册修改、完善与确定软件开发实施计划(4)需求分析评审被开发项目的数据流与数据结构是否足够,确定;所有图表是否清楚,在不补充说明时能否理解;主要功能是否已包括在规定的软件范围之内,是否都已充分说明;设计的约束条件或限制条件是否符合实际;开发的技术风险是什么;是否考虑过软件需求的其它方案;是否考虑过将来可能会提出的软件需求;是否详细制定了检验标准,它们能否对系统定义是否成功进行确认;需求分析流程软件需求分析的原则面向数据流自顶向下求精-结构化分析方法结构化分析方法使用工具:数据流图-记录补充的数据流、数据存储和处理数据字典-记录数据元素信息IPO图-描述算法结构化英语判定表与判定树在模型的核心是数据词典,它描述了所有的在目标系统中使用的和生成的数据对象。围绕着这个核心的有三种图:实体—联系图(ERD)描述数据对象及数据对象之间的关系;数据流图(DFD)描述数据在系统中如何被传送或变换,以及描述如何对数据流进行变换的功能(子功能);状态—迁移图(STD)描述系统对外部事件如何响应,如何动作。因此,ERD用于数据建模,DFD用于功能建模,STD用于行为建模。用于写加工逻辑说明的工具(1)结构化英语是一种介于自然语言和形式化语言之间的语言语言的正文用基本控制结构进行分割,加工中的操作用自然语言短语来表示其基本控制结构有三种:简单陈述句结构:避免复合语句;重复结构:while_do或repeat_until结构。判定结构:if_then_else或case_of结构;商店业务处理系统中“检查发货单”(2)判定表以“检查发货单”为例26(3)判定树简易的应用规格说明技术原型化方法随着开发工作向前推进,用户可能会产生新的要求,或因环境变化,要求系统也能随之变化;开发者又可能在设计与实现的过程中遇到些没有预料到的实际困难,需要以改变需求来解脱困境。因此规格说明难以完善、需求的变更、以及通信中的模糊和误解,都会成为软件开发顺利推进的障碍。为解决这些问题,逐渐形成了软件系统的快速原型的概念。软件原型的分类实验型:这种原型用于大规模开发和实现之前,考核方案是否合适,规格说明是否可靠。演化型:这种原型的目的不在于改进规格说明,而是将系统建造得易于变化,在改进原型的过程中,逐步将原型进化成最终系统。原型类型的选择从用户特征方面考虑:不满足于预先做系统定义说明,愿意为定义和修改原型投资,不易肯定详细需求,愿意承担决策的责任,准备积极参与的用户是适合于使用原型的用户。从应用约束方面考虑:对已经运行系统的补充,不能用原型化方法。选择适当的原型方法建立快速原型,进行系统的分析和构造的4点好处:使用原型化方法,可以容易地确定系统的性能,确认各项主要系统服务的可应用性,确认系统设计的可行性,确认系统作为产品的结果。软件原型的最终版本,有的可以原封不动地成为产品,有的略加修改就可以成为最终系统的一个组成部分,这样有利于建成最终系统。下面讲原型的生存期38原型开发技术可执行规格说明(1)代数规格说明(2)有限状态模型举例:建立用户/程序对话(3)可执行的数据流图基于场景的设计(原型开发技术2)可在任一场景中使用一套可复用的软件模块,以表达某一方面的要求。可使用一种原型语言来描述原型系统。原型开发过程中用这种语言来定义屏幕、数据项、及其相关的操作。从系统的外部描述开始,开发与数据库的接口、错误处理和恢复过程等系统的与外部视图一致的细节。自动程序设计(原型开发技术3)程序变换手段:将一程序转换成另一功能等价的程序,并保持其正确性不变。实例推广手段:从实例特征出发,将它推广为待编程序的特征,最后得到程序。过程化手段:研究甚高级语言的编译和知识的过程化。专用语言(原型开发技术4)软件复用技术(原型开发技术5)简化假设(原型开发技术6)在修改一个文件时,可以假设这个文件确实存在在存取文件时,待存取的记录总是存在一旦计划中的系统满足用户所有的要求,就可以撤消