第4章 习题 新闻发布系统需求分析与建模
1、解答题
(1)常用的需求分析的方法有哪些?
首先成立联合分析小组,需求分析需要方方面面人员的参与,如用户、系统分析员、领域专家等。需求获取方法一般有问卷法、面谈法、情景分析法、简易的应用规格说明技术和基于模型的知识获取法等。
(2)需求分析的任务是什么?步骤有哪些?
一、 确定对系统的综合要求
- 功能需求
这方面的需求指定系统必须提供的服务。通过需求分析应该划分出系统必须完成的所有功能。 - 性能需求
性能需求指定系统必须满足的定时约束或容量约束,通常包括速度(响应时间)、信息量速率、主存容量、磁盘容量、安全性等方面的需求。 - 可靠性和可用性需求
可靠性需求定量地指定系统的可靠性。
可用性与可靠性密切相关,它量化了用户可以使用系统的程度。 - 出错处理需求
这类需求说明系统对环境错误应该怎样响应。例如,如果它接收到从另一个系统发来的违反协议格式的消息,应该做什么?注意,上述这类错误并不是由该应用系统本身造成的。 - 接口需求
接口需求描述应用系统与它的环境通信的格式。常见的接口需求有:用户接口需求;硬件接口需求;软件接口需求;通信接口需求。 - 约束
设计约束或实现约束描述在设计或实现应用系统时应遵守的限制条件。在需求分析阶段提出这类需求,并不是要取代设计(或实现)过程,只是说明用户或环境强加给项目的限制条件。常见的约束有:精度;工具和语言约束;设计约束;应该使用的标准;应该使用的硬件平台。 - 逆向需求
逆向需求说明软件系统不应该做什么。理论上有无限多个逆向需求,我们应该仅选取能澄清真实需求且可消除可能发生的误解的那些逆向需求。 - 将来可能提出的要求
应该明确地列出那些虽然不属于当前系统开发范畴,但是据分析将来很可能会提出来的要求。
注意:举例让学生理解:这样做的目的是,在设计过程中对系统将来可能的扩充和修改预做准备,以便一旦确实需要时能比较容易地进行这种扩充和修改。
二 、分析系统的数据要求
任何一个软件系统本质上都是信息处理系统,系统必须处理的信息和系统应该产生的信息在很大程度上决定了系统的面貌,对软件设计有深远影响,因此,必须分析系统的数据要求,这是软件需求分析的一个重要任务。
分析系统的数据要求通常采用建立数据模型的方法(举例)。
三. 导出系统的逻辑模型
综合上述两项分析的结果可以导出系统的详细的逻辑模型,通常用数据流图、实体-联系图、状态转换图、数据字典和主要的处理算法描述这个逻辑模型。
四。 修正系统开发计划
根据在分析过程中获得的对系统的更深入更具体的了解,可以比较准确地估计系统的成本和进度,修正以前制定的开发计划。
(3)什么是面向对象的分析方法?步骤是什么?
面向对象的分析方法就是运用面向对象的方法进行系统分析,强调运用面向对象的方法,对系统问题域和系统职责进行分析与理解,找出描述问题域及系统职责所需的对象,定义对象的属性、服务以及它们之间的关系,目标是建立一个符合系统问题域、满足用户需求的OOA模型。
具体来说,面向对象的分析过程如下。
(1)获取系统需求,识别用例,建立用例图。
(2)识别问题域对象和概念类,建立类图。首先,识别软件系统中的对象;其次,再识别对象所具有的相关属性和对象所具有的各种行为;再次,识别对象所属于的类;最后,根据对象的相关属性以及动作定义关键词。
(3)分析用例的执行逻辑,建立用例的动态图。
(4)什么是结构化的分析方法?步骤是什么?
结构化分析方法是以数据为中心的结构化分析方法,关键点有两个:一确定有哪些数据,格式是什么,如何存储,如ER图;二是确定数据加工、处理过程,如数据流图。
在实际工作中,一般用于对工作任务分解结构、公司管理中组织结构分解。
常用的建模方法有:数据流图、ER图、数据字典。
(5)基于用例的需求分析方法的主要步骤有哪些?
识别并描述参与者
识别用例
绘制用例图
描述用例
细化用例模型
(6)活动图建模技术的步骤有哪些?
识别要对其工作流进行表述的类和方法。
确定工作流的初始状态和终止状态,明确工作流的边界。
对动作状态或活动状态进行建模。
对动作流进行建模。
对对象流进行建模。
对建立的模型进行精化和细化。
(7)什么是数据流图?画数据流图的步骤有哪些?
数据流图:是软件系统逻辑结构的图形表示,是结构化系统分析过程中使用的最主要的建模工具。他描绘信息流和数据在软件从输入移动到输出的过程中所经历的变换。在数据流图中没有任何具体的物理元素,所以设计系统数据流图时不必考虑系统怎么样实现这样的功能。
通常数据流图是分层绘制的,采用自顶向下、逐层分解的原则,直到细化为止,形成若干层次的数据流图。
先画顶层数据流图
再画下层数据流图
(8)什么是数据字典?其内容有哪些?
数据字典:是描述数据的信息的集合,是对系统中使用的所有数据元素的定义的集合。数据字典主要是为分析人员查找数据流图中有关数据的详细定义而服务的,是数据流图的补充工具。数据字典和数据流图共同构成系统的逻辑模型。
数据字典的内容有:数据流、数据项、数据存储和数据处理四类元素的定义组成。