




已阅读5页,还剩29页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件需求分析,第三章,软件需求分析是软件生命期中重要的一步,也是决定性的一步。它的基本任务是准确地回答“系统必须做什么?”。,软件需求分析是在可行性的基础上进行的更细致的分析工作,是对软件计划阶段所确定的系统目标和功能做进一步的求精和细化。对目标系统提出完整、准确、清晰、具体的要求。在可行性阶段的文档是系统需求分析的出发点。在需求分析阶段分析员必须仔细研究这些文档并将它们细化。,需求分析的原则:1.必须能够理解和表达问题的数据域,根据这条准则应该建立数据模型。2.必须定义软件应该完成的功能根据这条准则应该建立功能模型。3.必须描述作为外部事件结果的软件行为,根据这条准则应该建行为模型。4必须对数据、功能和行为的模型进行分解和不断细化,建立问题的层次结构。,3.1需求分析的任务,需求分析阶段的任务:在可行性分析的基础上,进一步了解确定用户需求。准确地回答“系统必须做什么?”的问题。对目标系统提出完整、准确、清晰、具体的要求。获得需求规格说明书。,需求分析的具体任务:,1、确定系统的综合要求系统功能要求这是最主要的需求,确定系统必须完成的所有功能。,系统性能要求应就具体系统而定,例如可靠性、联机系统的响应时间、存储容量、安全性能等。系统可靠性和可用性要求可靠性需求是定量地指定系统的可靠性。可用性和可靠性密切相关,它量化了用户使用系统的程度。出错处理要求这类需求说明系统对环境错误应该如何响应。2接口需求接口需求描述系统与环境通信的格式,常见的接口有:用户接口需求、硬件接口需求、软件接口需求、通信接口需求。,约束描述在设计或实现应用系统时应遵守的限制条件,常见的约束有精度、工具和语言约束、使用的标准、使用的硬件平台。逆向需求逆向需求说明软件系统不应该做什么。理论上有无限多个逆向需求,我们应该仅选取能澄清真实需求且可消除可能发生的误解的那些逆向需求。将来可能提出的要求对将来可能提出的扩充及修改作预准备。,2、分析系统的数据要求软件系统本质上是信息处理系统,因此,必须分析系统的数据要求,这是软件需求分析的一个重要任务。分析系统的数据要求通常采用建立数据模型的方法。必须考虑:数据(需要哪些数据、数据间联系、数据性质、结构)数据处理(处理的类型、处理的逻辑功能),3、导出系统的逻辑模型通常系统的逻辑模型用DFD图来描述。4、修正系统的开发计划通过需求对系统的成本及进度有了更精确的估算,可进一步修改开发计划。,3.2与用户沟通获取需求的方法,1.客户访谈访谈是最早开始使用的获取用户需求的一种方法,也是最常用的一种方法。访谈有两种基本形式,分别是正式和非正式的访谈。当需要调查大量人员的意见时,请被调查人填写调查表是十分有效的做法。在访问用户的过程中使用情景分析技术往往非常有效,所谓情景分析就是对用户将来使用目标系统解决某个具体问题的方法和结果进行分析,系统分析员利用情景分析技术,往往能够获知用户的具体需求。,2.面向数据流自顶向下求精结构化分析方法就是面向数据流自顶向下逐步分解求精,在可行性研究阶段描绘出了目标系统的高层数据流图,但对数据考虑的不详,在这个阶段必须细化。通常把分析过程中得到的数据元素的信息记录在数据字典中,把对算法的简明描述记录在IPO图中。最后,分析员要对分析得出的结果即数据流图请用户进行仔细复查。,图3.1面向数据流自顶向下求精过程,3.简易的应用规格说明技术(面向团队的需求收集法)使用前两种方法定义需求时并不理想。因此,人们提出一种简易的应用规格说明技术,它是一种面向团对的需求收集间技术。这种方法提倡用户与开发者密切合作,共同标识问题,提出解决方案,商讨不同的方案并指定基本需求,目前,这种技术已经成为信息系统领域使用的主流技术,4.快速建立软件原型快速原型就是快速建立起旨在演示目标系统主要功能的可运行程序。它是最准确、最有效、最强大的需求分析技术。构建软件原型的要点是,应该实现用户看得见的功能,省略目标系统的隐含功能。快速软件原型的特点应该是:一是快速,二是容易修改。,3.3分析建模与规格说明,3.3.1分析建模,结构化分析实质上是一种创建模型的活动。为了开发出复杂的软件系统,系统分析员应该从不同角度抽象出目标系统的特性,使用精确的表示方法构造系统的模型,验证模型是否满足用户对目标系统的需求,并在设计过程中逐渐把和实现有关的细节加进模型中,直至最终用程序实现模型。根据本章开头讲述的结构化分析准则,需求分析过程应该建立3种模型,它们分别是数据模型、功能模型和行为模型。,通过需求分析除了创建分析模型之外,还应该写出软件需求规格说明书,它是需求分析阶段得出的最主要的文档。通常用自然语言完整、准确、具体地描述系统的数据要求、功能需求、性能需求、可靠性和可用性要求、出错处理需求、接口需求、约束、逆向需求以及将来可能提出的要求。自然语言的规格说明具有容易书写、容易理解的优点,为大多数人所欢迎和采用。,3.3.2软件需求规格说明,为了把用户的数据要求清楚、准确地描述出来,系统分析员通常建立一个概念数据模型(也称为信息模型)。概念性数据模型是一种面向问题的数据模型,是按照用户的观点对数据建立的模型。它描述了从用户角度看到的数据,它反映了用户的现实环境。数据模型中包含3种相互关联的信息:数据对象、数据对象的属性及数据对象间的联系。,3.4实体-联系图,数据对象(实体):客观世界中存在的且可区分的事物。联系:客观事物之间的联系(三类-1:1,1:N,M:N)属性:实体或联系所具有的性质。,实体-联系图的符号用矩形框代表实体,用连接相关实体的菱形框表示关系,用椭圆形或圆角矩形表示实体的属性。并直线把实体或联系与其属性连接起来。,学生,姓名,性别,学号,年级,系,教,成绩,1,N,M,N,教师、学生及课程三者之间的ER图,3.5数据规范化,规范化理论是数据库逻辑设计的指南和工具,那么在概念设计阶段,也要用规范化理论为工具消除E-R图中冗余的联系。数据库中用“范式”来定义消除数据冗余的程度。分为5个范式。第一范式数据冗余程度最大,第五范式数据冗余程度最小,但是范式级别越高,存储自身的过程的越复杂。第二,随着范式级别的提高,数据的存储结构与基于问题域的结构间匹配程度也随之下降,所以当需求发生变化时数据的稳定性就差。第三,范式级别越高需要访问的数据表越多,访问速度就越低。从实用来说,一般选用第三范式比较恰当。,3.6状态转换图,状态转换图(状态图)通过描绘系统的状态及系统的状态转换的事件,来表示系统的行为。因此状态转换图建立系统的行为模型。,状态:状态是可以被观察到的系统行为模式,一个状态代表系统的一种行为模式。状态规定了系统对事件的响应方式。状态主要有处态、终态、和中间状态。在一张图中只能有一个处态,而终态则可以有0至多个。,状态图既可以表示系统的循环运行过程,也可以是系统的单程生命期。,事件:在特定时刻发生的事情,它是对引起系统做动作或从一个状态转换到另一个状态的外界事迹的抽象。,状态图中符号在状态图中,处态用实心圆表示,终态用同心圆(内圆用实心圆)表示,中间状态用圆角矩形表示,可以用两条水平横线把它分成上、中、下3个部分,分别放置状态名、状态变量的名字和值和活动表。其中,状态变量和活动表是可选的。,事件名(参数表)/动作表达式其中,事迹名可以是任何事件的名称,在活动表中常使用3种标准事件:entryexitdo,而entry事件表示进入该状态的动作,exit事件表示退出该状态的动作,do事件表示在该状态下的动作,需要时可以为事迹指定参数表,活动表中的动作表达式描述做的具体动作。它是一个过程表达式,当状态转换开始时执行该表达式。,活动表的语法格式如下:,事件表达式的语法如下:事件说明守卫条件/动作表达式其中事件说明语法为:事件名(参数表)守卫条件是一个布尔表达式,如果同时使用事件说明和守卫条件,则当且仅当事件说明和守卫条件为真时,状态转换才发生。如果只有守卫条件没有事件说明,则只当守卫条件为真时,状态转换才发生。,下图给出了状态图中使用的主要符号,实例:,为了具体说明怎样用状态图建立系统的行为模型,下面举一个人们非常熟悉的电话系统的状态图例子。见书57页图3.4,状态图中使用的主要符号,3.7其它图形工具,3.7.1层次方框图:,层次方框图是用树形结构的一系列多层次的矩形框描绘数据的层次结构。数形结构的顶层是一个单独的矩形框,它代表一个完整的数据结构,下面各层矩形框代表这个数据的组成部分,最低层的各个框代表组成这个数据的实际数据元素。,例如:描绘一个计算机公司全部产品的数据结构可以用下图表示:,产品,处理机,存储器,外部设备,系统软件,应用软件,软件服务,硬件维修,培训,层次方框图的一个例子,注意:层次方框图即可以表示数据的层次结构,也可以表示程序的层次结构,3.7.2Warnier图,Warnier图用树形结构描绘数据的层次结构。它可以清楚地描绘信息的逻辑结构,可以表明一个或一类信息元素是重复出现的,也可以是特定信息在某一类信息中有条件出现的。因为重复和条件约束是软件处理过程的基础,所以很容易把Warnier图转换成软件设计的工具。,例子:用Warnier图描绘一类软件产品,它说明了这种图形工具的用法。,软件产品,系统软件,操作系统(P1),编译程序(P2),软件工具,编辑程序(P3),测试驱动程序(P4),设计辅助程序(P5),应用软件,Warnier图的一个例子,3.7.3IPO图,输入、处理、输出图的简称。它能够方便地描绘输入数据、对数据的处理和输出数据之间的关系。,下图是一个主文件更新的例子:,旧的主文件,事务文件,1、校验主记录,2、校验事务记录,3、更新主记录,1、校验主记录,2、有效的事务记录,3、更新后的主文件,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年矿产资源勘探工程师职业资格考试试题及答案解析
- 2025年教师资格认定考试试卷及答案解析
- 2025年健身教练员执业能力水平考核试题及答案解析
- 2025年建筑装潢工程师资格考试试题及答案解析
- 2025年机器人操作员职业技术水准测验试卷及答案解析
- 课件中强调重点的声音
- 2025年化妆品品质监督员资格考试试题及答案解析
- 课件中位数众数
- 2025年广播节目策划师资格认定考试试题及答案解析
- 2025年互联网营销师面试问题集
- 合作利润分成合同协议书
- 压实法的压实参数确定
- 证据保全公证协议书
- 拍摄临时用工协议书
- 《教育向美而生》读书分享
- 2025年法制副校长演讲稿(7篇)
- 无肝素透析考试题及答案
- 智能生鲜机器人项目商业计划书
- 生物质颗粒购销合同
- 临床教学经验总结
- 高中化学拔尖创新人才早期培养路径
评论
0/150
提交评论