免费智能真题库 > 历年试卷 > 数据库系统工程师 > 2009年上半年 数据库系统工程师 上午试卷 综合知识
  第57题      
  知识点:   系统需求分析   需求分析   需求分析阶段
  关键词:   分析阶段   需求分析   需求        章/节:   数据库设计       

 
需求分析阶段,需求调查的内容是(57),需求分析的结果是(58)。
 
 
  A.  信息要求、处理要求
 
  B.  安全性与完整性要求
 
  C.  信息要求、安全性要求
 
  D.  信息要求、处理要求、安全性与完整性要求
 
 
 

 
  第29题    2010年上半年  
   56%
确定系统边界和关系规范化分别在数据库设计的(29)阶段进行。
  第58题    2011年上半年  
   40%
需求分析阶段,用于描述业务处理流程及各项业务处理所使用数据的图是(58)。
  第58题    2009年上半年  
   59%
在需求分析阶段,需求调查的内容是(57),需求分析的结果是(58)。
   知识点讲解    
   · 系统需求分析    · 需求分析    · 需求分析阶段
 
       系统需求分析
        系统需求分析是在项目确定之后,用户和设计人员对数据库应用系统所要涉及的内容(数据)和功能(行为)的整理和描述,是以用户的角度来认识系统。这一过程是后续开发的基础,因为逻辑设计和物理设计以及应用程序的设计都会以此为依据。如果这一阶段的工作没有做好,会给以后的工作带来困难,若再重新做需求分析,将影响整个项目的工期,而且在人力、物力等方面造成浪费。因此,这一阶段的工作要求做到耐心细致,这在整个设计开发过程中是最困难、最耗时的一步。
                      需求分析的任务、方法和目标
                      需求分析阶段的任务:综合各个用户的应用需求,对现实世界要处理的对象(组织、部门和企业等)进行详细调查,在了解现行系统的概况,确定新系统功能的过程中,收集支持系统目标的基础数据及处理方法。
                      参与需求分析的主要人员是分析人员和用户,由于数据库应用系统是面向企业和部门的具体业务,分析人员一般并不了解,而同样用户也不会具有系统分析的能力,这就需要双方进行有效的沟通,使得设计人员对用户的各项业务了解和熟悉,进行分析和加工,将用户眼中的业务转换成为设计人员所需要的信息组织。
                      分析和表达用户需求的方法主要包括自顶向下和自底向上两类方法。自顶向下的结构化分析(Structured Analysis,SA)方法从最上层的系统组织机构入手,采用逐层分解的方式分析系统,并把每一层用数据流图和数据字典描述。需求分析的重点是调查组织机构情况、调查各部门的业务活动情况、协助用户明确对新系统的各种要求、确定新系统的边界,以此获得用户对系统的如下要求:
                      (1)信息要求。用户需要在系统中保存哪些信息,由这些保存的信息要得到什么样的信息,这些信息以及信息间应当满足的完整性要求。
                      (2)处理要求。用户在系统中要实现什么样的操作功能,对保存信息的处理过程和方式,各种操作处理的频度、响应时间要求、处理方式等以及处理过程中的安全性要求和完整性要求。
                      (3)系统要求。包括安全性要求、使用方式要求和可扩充性要求。安全性要求:系统有几种用户使用,每一种用户的使用权限如何。使用方式要求:用户的使用环境是什么,平均有多少用户同时使用,最高峰时有多少用户同时使用,有无查询相应的时间要求等。可扩充性要求:对未来功能、性能和应用访问的可扩充性的要求。
                      需求分析阶段的工作以及形成的相关文档(作为概念结构设计阶段的依据)如下图所示。
                      
                      需求分析阶段的工作
                      需求分析阶段的文档
                      需求调查所得到的数据可能是零碎的、局部的,分析师和设计人员必须进一步分析和表达用户的需求,建立需求说明文档、数据字典和数据流图。将需求调查文档化,文档既要被用户所理解,又要方便数据库的概念结构设计。
                      数据流分析是对事务处理所需的原始数据的收集及经处理后所得数据及其流向,一般用数据流图(DFD)来表示。DFD不仅指出了数据的流向,而且还指出了需要进行的事务处理(但并不涉及如何处理,这是应用程序的设计范畴)。除了使用数据流图、数据字典以外,需求分析还可使用判定表、判定树等工具。下面介绍数据流图和数据字典,其他工具的使用可参见软件工程等方面的参考书。
                      数据字典(Data Dictionary,DD)是各类数据描述的集合,它是关于数据库中数据的描述,即元数据,而不是数据本身。如用户将向数据库中输入什么信息,从数据库中要得到什么信息,各类信息的内容和结构,信息之间的联系等。数据字典包括数据项、数据结构、数据流、数据存储和处理过程5个部分(至少应该包含每个字段的数据类型和在每个表内的主键、外键)。
                      数据项描述={数据项名,数据项含义说明,别名,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系}
                      数据结构描述={数据结构名,含义说明,组成:{数据项或数据结构}}
                      数据流描述={数据流名,说明,数据流来源,数据流去向,组成:{数据结构},平均流量,高峰期流量}
                      数据存储描述={数据存储名,说明,编号,流入的数据流,流出的数据流,组成:{数据结构},数据量,存取方式}
                      处理过程描述={处理过程名,说明,输入:{数据流},输出:{数据流},处理:{简要说明}}
                      需求分析阶段的成果是系统需求说明书,主要包括数据流图、数据字典、各种说明性表格、统计输出表和系统功能结构图等。系统需求说明书是以后设计、开发、测试和验收等过程的重要依据。关于需求分析的详细过程请参见第10章。
                      案例分析
                      我们以一个机械制造厂的采购业务为例来理解需求分析的方法步骤。
                                    数据字典
                                    (1)数据项:数据项是数据的最小单位,对数据项的描述一般包括项名、含义说明、别名、类型、长度、取值范围及该项与其他项的逻辑关系。常以表格的形式给出。例如,采购业务中订货单的订货单号,其数据项的描述如下:
                                    
                                    (2)数据结构:数据结构是若干数据项的有意义的集合,通常代表某一具体的事物。包括数据结构名、含义、组成成份等。如对采购单的描述:
                                    
                                    (3)数据流:数据流可以是数据项,也可以是数据结构,表示某一次处理的输入/输出数据。包括数据流名,说明,数据来源,数据去向,及需要的数据项或数据结构。如采购计划数据流。
                                    
                                    (4)数据存储:加工中需要存储的数据。包括数据存储名、说明、输入数据流、输出数据流、组成成份、数据量、存取方式、存取频度等。如原材料价目表,在计算成本和支付采购费用这一处理过程中要用到这些数据。
                                    
                                    (5)处理过程:加工处理过程定义和说明。包括处理名称、输入数据、输出数据、数据存储、响应时间等。如采购支付处理。
                                    
                                    数据流图
                                    采购数据流图如下图所示。
                                    
                                    采购数据流图
                                    需求分析阶段的成果是系统需求说明书,主要包括数据流图、数据字典、各种说明性表格、统计输出表、系统功能结构图等。系统需求说明书是以后设计、开发、测试和验收等过程的重要依据。
 
       需求分析
        需求分析是软件生存周期中相当重要的一个阶段。由于开发人员熟悉计算机但不熟悉应用领域的业务,用户熟悉应用领域的业务但不熟悉计算机,因此对于同一个问题,开发人员和用户之间可能存在认识上的差异。在需求分析阶段,通过开发人员与用户之间的广泛交流,不断澄清一些模糊的概念,最终形成一个完整的、清晰的、一致的需求说明。可以说,需求分析的好坏将直接影响到所开发的软件的成败。
               需求分析的任务
               需求分析主要是确定待开发软件的功能、性能、数据和界面等要求。具体来说,可有以下五个方面:
               (1)确定软件系统的综合要求。主要包括系统界面要求、系统的功能要求、系统的性能要求、系统的安全和保密性要求、系统的可靠性要求、系统的运行要求、异常处理要求和将来可能提出的要求。其中,系统界面要求是指描述软件系统的外部特性,即系统从外部输入哪些数据,系统向外部输出哪些数据;系统的功能要求是要列出软件系统必须完成的所有功能;系统的性能要求是指系统对响应时间、吞吐量、处理时间、对主存和外存的限制等方面的要求;系统的运行要求是指对硬件、支撑软件和数据通信接口等方面的要求;异常处理要求通常是指在运行过程中出现异常情况时应采取的行动以及希望显示的信息,例如临时性或永久性的资源故障,不合法或超出范围的输入数据、非法操作和数组越界等异常情况的处理要求;将来可能提出的要求主要是为将来可能的扩充和修改做准备。
               (2)分析软件系统的数据要求。包括基本数据元素、数据元素之间的逻辑关系、数据量和峰值等。常用的数据描述方法是实体-关系模型(E-R模型)。
               (3)导出系统的逻辑模型。在结构化分析方法中可用数据流图来描述;在面向对象分析方法中可用类模型来描述。
               (4)修正项目开发计划。在明确了用户的真正需求后,可以更准确地估算软件的成本和进度,从而修正项目开发计划。
               (5)如有必要,可开发一个原型系统。对一些需求不够明确的软件,可以先开发一个原型系统,以验证用户的需求。
               在此需要强调的是,需求分析阶段主要解决“做什么”的问题,而“怎么做”则是由设计阶段来完成。
               需求的分类
               软件需求就是系统必须完成的事以及必须具备的品质。软件需求包括功能需求、非功能需求和设计约束三方面的内容。
               (1)功能需求:所开发的软件必须具备什么样的功能。
               (2)非功能需求:是指产品必须具备的属性或品质,如可靠性、性能、响应时间、容错性和扩展性等。
               (3)设计约束:也称为限制条件、补充规约,这通常是对解决方案的一些约束说明。
 
       需求分析阶段
        . 确定软件的可靠性目标;
        . 分析可能影响可靠性的因素;
        . 确定可靠性的验收标准;
        . 制定可靠性管理框架;
        . 制定可靠性文档编写规范;
        . 制定可靠性活动初步计划;
        . 确定可靠性数据收集规范。
   题号导航      2009年上半年 数据库系统工程师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第57题    在手机中做本题