免费智能真题库 > 历年试卷 > 程序员 > 2009年下半年 程序员 上午试卷 综合知识
  第46题      
  知识点:   结构化分析方法   面向对象分析与设计基本概念   结构化分析   面向对象分析
  关键词:   结构化分析   面向对象分析   对象   面向对象        章/节:   系统分析和设计基础知识       

 
以下关于面向对象分析结构化分析的叙述中,错误的是(46)。
 
 
  A.  面向对象分析结果可采用UML描述
 
  B.  结构化分析结果可使用DFD等模型表示
 
  C.  面向对象分析结果需要采用面向对象程序设计语言描述
 
  D.  面向对象分析结果是面向对象设计的输入
 
 
 

 
  第58题    2016年上半年  
   34%
在数据库设计过程中,关系规范化属于(58)。
  第53题    2012年上半年  
   47%
(53)不是结构化设计过程中常用的详细设计描述工具。
  第50题    2018年下半年  
   44%
判定表和判定树常用于描述数据流图的( )。
 
  第47题    2012年下半年  
   35%
以下关于类设计的叙述中,正确的是(47)。
  第45题    2011年上半年  
   52%
在统一建模语言(UML)中,(45)用于描述系统与外部系统及用户之间的交互。
  第47题    2015年上半年  
   23%
UML中有4种事物:结构事物、行为事物、分组事物和注释事物。类、接口、构件属于(47)事物。
   知识点讲解    
   · 结构化分析方法    · 面向对象分析与设计基本概念    · 结构化分析    · 面向对象分析
 
       结构化分析方法
        结构化分析方法(SA)的基本思想是将系统分析看成工程项目,有计划、有步骤地进行工作。这是一种应用很广泛的开发方法,适用于分析大型信息系统。结构化分析方法采用"自顶向下,逐层分解"的开发策略。按照这种策略,再复杂的系统也可以有条不紊地进行,只要将复杂的系统适当分层,每层的复杂程度即可降低。
        结构化分析方法的分析结果由以下几个部分组成。
        .一套分层的数据流图(Data Flow Diagram, DFD):用来描述数据流从输入到输出的变换流程。
        .一本数据字典:用来描述DFD中的每个数据流、文件以及组成数据流或文件的数据项。
        .一组小说明(也称加工逻辑说明):用来描述每个基本加工(即不再分解的加工)的加工逻辑。
        DFD的基本成分如下。
        .数据流(Dataflow):由一组固定成分的数据组成。
        .加工(Process):描述输入数据流到输出数据流的变换,也就是输入数据流经过什么处理后变成了输出数据流。
        .数据存储(Datastore):数据存储用来表示暂时存储的数据,每个数据存储都有一个名字。
        .外部实体(External Agent):外部实体是指存在于软件系统之外的人员或组织。
        数据字典有4类条目:数据流、数据项、数据存储和基本加工。加工逻辑一般采用3种工具描述:结构化语言、判定表和判定树。
 
       面向对象分析与设计基本概念
        用面向对象方法开发的软件具有以下特点:模型与客观世界一致,因而便于理解;适应变化的需要,修改局限在模块中;具有可复用性。
               面向对象分析与设计概述
               面向对象分析(Object-Oriented Analysis, OOA)的目标是建立待开发软件系统的模型。OOA模型描述了表示某个特定应用领域中的对象、对象间的结构关系和通信关系,反映了现实世界强加给软件系统的各种规则和约束条件。OOA模型还规定了对象如何协同工作和完成系统的职责。
               面向对象设计(Object-Oriented Design, OOD)的目标是定义系统构造蓝图,并根据系统构造蓝图在特定的环境中实现系统。面向对象设计(OOD)分为两个阶段:高层设计(建立应用的体系结构)、低层设计(类的详细设计)。
               面向对象的程序设计,是利用面向对象的程序语言将面向对象的产品定义模型转换成可以在计算机上处理的表达形式,以便最终在计算机上实现系统的设计。常用的面向对象编程语言有Smalltalk、Eiffel、C++、Java等。
               统一建模语言(UML)概述
               UML由3个要素构成:UML的基本构造块、支配这些构造块如何放置在一起的规则和运用于整个语言的一些公共机制。
               UML的词汇表包含3种构造块:事物、关系和图。事物是对模型中最具有代表性的成分的抽象;关系把事物结合在一起;图聚集了相关的事物。UML提供了9种图:类图、对象图、用例图、序列图、协作图、状态图、活动图、构件图、部署图。
 
       结构化分析
        SA方法使用抽象模型的概念,按照软件内部数据传递、变换的关系,自顶向下、逐层分解,直至找到满足功能要求的所有可实现的软件为止。SA方法给出一组帮助系统分析人员产生功能规约的原理与技术。它一般利用图形表达用户需求,使用的手段主要有数据流图、数据字典、结构化语言、判定表及判定树等。
        SA方法的步骤如下:
        (1)分析当前的情况,做出反映当前物理模型的数据流图(Data Flow Diagram, DFD)。
        (2)推导出等价的逻辑模型的DFD。
        (3)设计新的逻辑系统,生成数据字典和基元描述。
        (4)建立人机接口,提出可供选择的目标系统物理模型的DFD。
        (5)确定各种方案的成本和风险等级,据此对各种方案进行分析。
        (6)选择一种方案。
        (7)建立完整的需求规约。
 
       面向对象分析
        同其他分析方法一样,面向对象分析(Object-Oriented Analysis,OOA)的目的是获得对应用问题的理解。理解的目的是确定系统的功能、性能要求。面向对象分析法与功能/数据分析法之间的差别是前期的表述含义不同。功能/数据分析法分开考虑系统的功能要求和数据及其结构,面向对象分析方法是将数据和功能结合在一起作为一个综合对象来考虑。面向对象分析技术可以将系统的行为和信息间的关系表示为迭代构造特征。
        面向对象分析包含5个活动:认定对象、组织对象、描述对象间的相互作用、定义对象的操作、定义对象的内部信息。
               认定对象
               在应用领域中,按自然存在的实体确立对象。在定义域中,首先将自然存在的“名词”作为一个对象,这通常是研究问题、定义域实体的良好开始。通过实体间的关系寻找对象常常没有问题,而困难在于寻找(选择)系统关心的实质性对象,实质性对象是系统稳定性的基础。例如在银行应用系统中,实质性对象应包含客户账务、清算等,而门卫值班表不是实质性对象,甚至可不包含在该系统中。
               组织对象
               分析对象间的关系,将相关对象抽象成类,其目的是简化关联对象,利用类的继承性建立具有继承性层次的类结构。抽象类时可从对象间的操作或一个对象是另一个对象的一部分来考虑,如房子由门和窗构成,门和窗是房子类的子类。由对象抽象类,通过相关类的继承构造类层次,所以说系统的行为和信息间的分析过程是一种迭代表征过程。
               对象间的相互作用
               描述出各对象在应用系统中的关系。如一个对象是另一个对象的一部分,一个对象与其他对象间的通信关系等。这样可以完整地描述每个对象的环境,由一个对象解释另一个对象,以及一个对象如何生成另一个对象,最后得到对象的界面描述。
               基于对象的操作
               当考虑对象的界面时,自然要考虑对象的操作。其操作有从对象直接标识的简单操作,如创建、增加、删除等;也有更复杂的操作,如将几个对象的信息连接起来。一般而言,避免对象太复杂比较好,当连接的对象太复杂时,可将其标识为新对象。当确定了对象的操作后,再定义对象的内部,对象内部定义包括其内部数据信息、信息存储方法,继承关系以及可能生成的实例数等属性。
               分析阶段最重要的是理解问题域的概念,其结果将影响整个工作。经验表明,从应用定义域概念标识对象是非常合理的,完成上述工作后写出规范文档,文档确定每个对象的范围。
               早期面向对象的目标之一是简化模型与问题域之间的语义差距。事实上,面向对象分析的基础是软件系统结构,这依赖于人类看待现实世界的方法。当人们理解求解问题的环境时,常采用对象、分类法和层次性这类术语。面向对象分析与功能/数据分析方法相比,面向对象的结果比较容易理解和管理。面向对象分析方法的另一个优点是便于修改,早期阶段的修改容易提高软件的可靠性。
   题号导航      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 /
 
第46题    在手机中做本题