需求分析是软件定义时期的最后一个阶段,它的基本任务是准确地回答“系统必须做什么”这个问题
任何一个软件系统本质上都是信息处理系统
数据结构表示数据元素之间的逻辑关系。利用数据字典可以全面准确地定义数据,但是数据字典的缺点是不够形象直观。为了提高可理解性,常常利用图形工具辅助描绘数据结构?
常用的图形工具有层次方框图和Warnier图
综合上述两项分析的结果可以导出系统的详细的逻辑模型,通常用数据流图、实体-联系图、状态转换图、数据字典和主要的处理算法描述这个逻辑模型
访谈是最早开始使用的获取用户需求的技术,也是迄今为止仍然广泛使用的需求分析技术。访谈有两种基本形式,分别是正式的和非正式的访谈
正式访谈时,系统分析员将提出一些事先准备好的具体问题
在非正式访谈中,分析员将提出一些用户可以自由回答的开放性问题,以鼓励被访问人员说出自己的想法
在访问用户的过程中使用情景分析技术往往非常有效。所谓情景分析就是对用户将来使用目标系统解决某个具体问题的方法和结果进行分析
结构化分析方法就是面向数据流自顶向下逐步求精进行需求分析的方法。通过可行性研究已经得出了目标系统的高层数据流图,需求分析的目标之一就是把数据流和数据存储定义到元素级。 为了达到这个目标,通常从数据流图的输出端着手分析,这是因为系统的基本功能是产生这些输出,输出数据决定了系统必须具有的最基本的组成元素。
简易的应用规格说明技术是为了解用传决使统的访谈或面向数据流自顶向下求精方法定义需求时,用户处于被动地位而且往往有意无意地与开发者区分“彼此”。由于不能像同一个团队的人那样齐心协力地识别和精化需求,这两种方法的效果有时并不理想的问题提出的
通常采用的三种技术:第四代技术 可重用的软件构件 形式化规格说明和原型环境
快速原型就是快速建立起来的旨在演示目标系统主要功能的可运行的程序,快速原型应该具备的特性:快速,容易修改
模型,就是为了理解事物而对事物作出的一种抽象,是对事物的一种无歧义的书面描述
根据本章开头讲述的结构化分析准则,需求分析过程应该建立3种模型,数据模型、功能模型、行为模型
实体联系图,描绘数据对象及数据对象之间的关系,是用于建立数据模型的图形
数据流图是建立功能模型的基础
状态转换图描绘了系统的各种行为模式和在不同状态间转换的方式,是建立行为模型的基础
软件需求规格说明是需求分析阶段得出的最主要的文档
数据模型中包含3种相互关联的信息:数据对象、数据对象的属性及数据对象彼此间相互连接的关系
数据对象是对软件必须理解的复合信息的抽象
数据对象可以是外部实体、事物、行为、事件、角色、单位、地点或结构等。总之,可以由一组属性来定义的实体都可以被认为是数据对象
属性定义了数据对象的性质
客观世界中的事物彼此间往往是有联系的。 数据对象彼此之间相互连接的方式称为联系,也称为关系。联系可分为以下3种类型
一对一联系(1∶1)
一对多联系(1∶N)
多对多联系(M∶N)
与数据库所学的E-R图一致,无需详述
状态转换图(简称为状态图)通过描绘系统的状态及引起系统状态转换的事件,来表示系统的行为。此外,状态图还指明了作为特定事件的结果系统将做哪些动作
状态是任何可以被观察到的系统行为模式,一个状态代表系统的一种行为模式。状态规定了系统对事件的响应方式
在状态图中定义的状态主要有:初态(即初始状态)、终态(即最终状态)和中间状态。在一张状态图中只能有一个初态,而终态则可以有0至多个
状态图既可以表示系统循环运行过程,也可以表示系统单程生命期
事件是在某个特定时刻发生的事情,它是对引起系统做动作或(和)从一个状态转换到另一个状态的外界事件的抽象
事件就是引起系统做动作或(和)转换状态的控制信息
在状态图中,初态用实心圆表示,终态用一对同心圆(内圆为实心圆)表示。 中间状态用圆角矩形表示,可以用两条水平横线把它分成上、中、下3个部分。上面部分为状态的名称,这部分是必须有的;中间部分为状态变量的名字和值,这部分是可选的;下面部分是活动表,这部分也是可选的
?
?
?
?
?
层次方框图用树形结构的一系列多层次的矩形框描绘数据的层次结构
用Warnier图可以表明信息的逻辑组织,也就是说,它可以指出一类信息或一个信息元素是重复出现的,也可以表示特定信息在某一类信息中是有条件地出现的
在一个{内的所有名字都属于同一类信息,异或符号代表一类信息或一个数据元素在一定条件下才出现,且上下方只能出现一个,在名字下方或右边的圆括号内的数字指明了该信息类在数据结构中重复出现的次数,即P1代表了操作系统在系统软件中出现的次数,操作系统中共有P1种操作系统
IPO图是输入、处理、输出图的简称,它是由美国IBM公司发展完善起来的一种图形工具,能够方便地描绘输入数据、对数据的处理和输出数据之间的关系
?
一致性、现实性、完整性、有效性
要从验证需求的一致性、现实性、完整性和有效性这四个角度入手
?
该类软件工具应满足的要求
PSL/PSA系统是CADSAT(计算机辅助设计和规格说明分析工具)的一部分。其中PSL是用来描述系统的形式语言,PSA是处理PSL描述的分析程序?