免费智能真题库 > 历年试卷 > 系统分析师 > 2016年上半年 系统分析师 上午试卷 综合知识
  第5题      
  知识点:   用例模型   面向对象分析
  关键词:   面向对象分析   用例   对象   面向对象        章/节:   需求分析和设计方法       

 
面向对象分析中,构建用例模型一般分为四个阶段,其中,除了(5)阶段之外,其它阶段是必需的。
 
 
  A.  识别参与者
 
  B.  合并需求获得用例
 
  C.  细化用例描述
 
  D.  调整用例模型
 
 
 

 
  第1题    2016年上半年  
   50%
用例是一种描述系统需求的方法,以下关于用例建模的说法中,正确的是(1)。
  第5题    2019年上半年  
   34%
在线学习系统中,课程学习和课程考试都需要先检查学员的权限,“课程学习”与“检查权限”两个用例之间属于(3);课程学习过程中..
  第2题    2009年上半年  
   52%
在某银行业务的用例模型中,“取款”用例需要等到“存款”用例执行之后才能执行,两个用例之间的关系属于(..
   知识点讲解    
   · 用例模型    · 面向对象分析
 
       用例模型
        OOA的基本任务是运用面向对象方法,对问题域和系统责任进行分析和理解,正确认识其中的事物及它们之间的关系,找出描述问题域及系统责任所需的类和对象,定义它们的属性和服务,以及它们之间所形成的结构、静态联系和动态联系。最终产生一个符合用户需求,并能直接反映问题域和系统责任的OOA模型及其详细说明。
        用例分析方法的创始人Ivar Jacobson给用例的定义是:“用例实例是在系统中执行的一系列动作,这些动作将生成特定参与者可见的价值结果。一个用例则定义一组用例实例。”从这个定义中,我们可以得知用例是由一组用例实例组成的,用例实例也就是常说的“使用场景”,就是用户使用系统的一个实际的、特定的场景;其次,可以知道,用例应该给参与者带来可见的价值,这点很关键;最后还可以得知,用例是在系统中的。
        用例分析技术为软件需求规格化提供了一个基本的元素,而且该元素是可验证、可度量的。用例可以作为项目计划、进度控制、测试等环节的基础。而且用例还可以使开发团队与客户之间的交流更加顺畅。构建用例模型需要经历识别参与者、合并需求获得用例、细化用例描述三个阶段。
        (1)识别参与者(actor)。参与者是系统之外与系统进行交互的任何事物,参与者可以是使用系统的用户,也可以是其他外部系统、外部设备等外部实体。在UML中采用小人符号来表示参与者。参与者有主要参与者和次要参与者之分,开发用例的重点是要找到主要参与者。
        (2)合并需求获得用例。将参与者都找到之后,接下来就是仔细地检查参与者,为每一个参与者确定用例。而其中的依据主要可以来源于已经获取得到的特征表。首先,将特征分配给相应的参与者,然后进行合并操作,最后绘制成用例图。在确定用例的过程中,不能混淆用例和用例所包含的步骤,要注意区分业务用例和系统用例。
        (3)细化用例描述。用例建模的主要工作是书写用例规约(use case specification),而不是画图。用例模板为一个给定项目的所有人员定义了用例规约的结果,其内容至少包括用例名、参与者、目标、前置条件、事件流(基本事件流、扩展事件流)、后置条件等,其他的还可以包括非功能需求、用例优先级等。
        一个较为复杂的系统会有较多的用例,为便于理解,可以为它们建立多张用例图。更为复杂的情况将导致所有用例难以维持一种平面结构,这时可以对用例进行分组。UML使用用例主题划分用例图,一组用例放置在以主题命名的方框中(类似于系统边界),每个主题中可以包含多个用例图。
 
       面向对象分析
        同其他分析方法一样,面向对象分析(Object-Oriented Analysis,OOA)的目的是获得对应用问题的理解。理解的目的是确定系统的功能、性能要求。面向对象分析法与功能/数据分析法之间的差别是前期的表述含义不同。功能/数据分析法分开考虑系统的功能要求和数据及其结构,面向对象分析方法是将数据和功能结合在一起作为一个综合对象来考虑。面向对象分析技术可以将系统的行为和信息间的关系表示为迭代构造特征。
        面向对象分析包含5个活动:认定对象、组织对象、描述对象间的相互作用、定义对象的操作、定义对象的内部信息。
               认定对象
               在应用领域中,按自然存在的实体确立对象。在定义域中,首先将自然存在的“名词”作为一个对象,这通常是研究问题、定义域实体的良好开始。通过实体间的关系寻找对象常常没有问题,而困难在于寻找(选择)系统关心的实质性对象,实质性对象是系统稳定性的基础。例如在银行应用系统中,实质性对象应包含客户账务、清算等,而门卫值班表不是实质性对象,甚至可不包含在该系统中。
               组织对象
               分析对象间的关系,将相关对象抽象成类,其目的是简化关联对象,利用类的继承性建立具有继承性层次的类结构。抽象类时可从对象间的操作或一个对象是另一个对象的一部分来考虑,如房子由门和窗构成,门和窗是房子类的子类。由对象抽象类,通过相关类的继承构造类层次,所以说系统的行为和信息间的分析过程是一种迭代表征过程。
               对象间的相互作用
               描述出各对象在应用系统中的关系。如一个对象是另一个对象的一部分,一个对象与其他对象间的通信关系等。这样可以完整地描述每个对象的环境,由一个对象解释另一个对象,以及一个对象如何生成另一个对象,最后得到对象的界面描述。
               基于对象的操作
               当考虑对象的界面时,自然要考虑对象的操作。其操作有从对象直接标识的简单操作,如创建、增加、删除等;也有更复杂的操作,如将几个对象的信息连接起来。一般而言,避免对象太复杂比较好,当连接的对象太复杂时,可将其标识为新对象。当确定了对象的操作后,再定义对象的内部,对象内部定义包括其内部数据信息、信息存储方法,继承关系以及可能生成的实例数等属性。
               分析阶段最重要的是理解问题域的概念,其结果将影响整个工作。经验表明,从应用定义域概念标识对象是非常合理的,完成上述工作后写出规范文档,文档确定每个对象的范围。
               早期面向对象的目标之一是简化模型与问题域之间的语义差距。事实上,面向对象分析的基础是软件系统结构,这依赖于人类看待现实世界的方法。当人们理解求解问题的环境时,常采用对象、分类法和层次性这类术语。面向对象分析与功能/数据分析方法相比,面向对象的结果比较容易理解和管理。面向对象分析方法的另一个优点是便于修改,早期阶段的修改容易提高软件的可靠性。
   题号导航      2016年上半年 系统分析师 上午试卷 综合知识   本试卷我的完整做题情况  
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 /
 
第5题    在手机中做本题