重点面向对象分析与设计资料 A4排版.docx
- 文档编号:7401008
- 上传时间:2023-01-23
- 格式:DOCX
- 页数:20
- 大小:674.98KB
重点面向对象分析与设计资料 A4排版.docx
《重点面向对象分析与设计资料 A4排版.docx》由会员分享,可在线阅读,更多相关《重点面向对象分析与设计资料 A4排版.docx(20页珍藏版)》请在冰豆网上搜索。
重点面向对象分析与设计资料A4排版
面向对象分析与设计资料(内)
1、下列关于方法学与方法的描述不正确的是(B)
A、方法=模型+算法
B、软件方法主要涉及指导软件设计的原理和原则,以及基于这些原理、原则的方法和技术。
C、方法论是一个有理论意义的视角。
D、软件开发中存在结构化、面向对象等多种方法学。
2、下列关于面向对象方法学的描述不正确的是(A)
A、相对其他方法学,面向对象方法学是完美的。
B、面向对象方法学在软件系统构造中尽可能运用人类的自然思维方式。
C、面向对象方法学是当前软件开发的主流方法学.
D、面向对象方法学从现实世界中客观存在的事物(即对象)出发来构造软件系统。
3、下列各项不是面向对象方法学的优势的是(D)
A、面向对象语言使得从客观世界到计算机的语言鸿沟变窄
B、面向对象方法使从问题域到计算机间的鸿沟变窄
C、易于维护和复用
D、有利与代码的自动生成
4、关于封装与信息隐藏的描述错误的是(B)
A、封装是指将对象的全部的属性和全部的操作结合在一起,形成不可分割的独立单位,即对象。
B、信息隐藏使对象能够集中而完整地描述并对应一个具体事物。
C、信息隐藏是指对象在与外界的交互中,尽可能地隐藏对象的内部细节,仅保留有限的对外接口与外部进行联系。
D、封装会造成一定程度上的执行效率的损失。
5、关于多态的描述正确的是(A)
A、多态可实现接口复用,节省大量的编码工作量.
B、多态是指在聚合关系中的各个类中名字相同的属性和操作具有不同的意义。
C、多态的实现机制是编译时静态链接。
D、函数名重载(overload)会导致多态现象出现。
6、关于“面向对象”中的对象描述正确的是(B)
A、只能指代有型的事物
B、可以指代软件世界中的事物
C、只能指代意识中的事物
D、只能指代现实世界的事物
7、对象为什么会有操作?
(B)
A、对象的定义就是这么规定的。
B、因为对象是一种结构,操作代表转换规则。
C、对象与生俱来的特征。
D、对象要为其他对象提供服务。
8、对象的封装原则的作用描述不正确的是(C)
A、将属性和操作结合在一起形成独立单位。
B、避免数据和函数的过度耦合。
C、将编程错误限制在对象内部。
D、符合人类自然的世界观。
9、关于信息隐藏的作用描述不正确的是?
(A)
A、只对外提供接口,在接口不变的情况下将改动封装在对象内部。
B、对不同的对象提供不同的接口。
C、将数据和操作结合在一起。
D、可将错误局限在对象内部。
10、两个对象之间存在关联链,但不发送消息的例子是?
(E)
A、医生和病人的治疗关系
B、警察和嫌疑人的侦察关系
C、两个人存在亲属关系,但并不来往。
D、老师和学生的教学关系
E、图书馆图书借阅系统中图书和读者之间的借阅关系,只是记录两个对象存在该关系。
11、实例化原则的作用不包括(C)
A、可以很好的处理并发。
B、符合人类自然的思维方式。
C、将数据和操作合二为一
D、符合现实世界中一些事物的运作方式。
12、不属于分类原则的作用的是(C)
A、符合自然的思维方式
B、代码复用的一种机制
C、产生无穷实例
D、实现对已有知识的复用
13、实现相同的功能,使用多态比不用多态的运行效率慢的最准确的原因是(A)
A、多态情况下,需要在运行时查询虚拟方法表,以便确定最终调用的方法的首地址。
B、多态情况下,需要先决定对象的类型,在根据类型虚拟方法表
C、多态需要在运行时产生虚拟方法表
D、多态情况下,需要先先找到对象的首地址,再找到所要调用方法的首地址。
14、下列对于不同的软件分析设计方法的描述,正确的是?
(C)
A、功能分析法可以很好的适应需求的变化。
B、功能分解方法和结构化方法是相同方法的不同的提法。
C、功能分解法中局部的错误和修改很容易产生全局性的影响。
D、结构化方法分析和设计阶段采用同一种模型。
15、不是结构化方法缺点的是(B)
A、数据流和加工的数量太多,引起分析文档的膨胀。
B、注重研究实际的业务。
C、有些事物不适合映射为数据流和加工。
D、分析与设计的概念不一致,从分析到设计的过渡比较困难;
16、对UML的描述正确的是(CEF)
A、是一种建模方法
B、是一种比高级语言还要高级的编程语言
C、是一种已被OMG采纳的建模语言规范
D、UML1系列已被ISO采纳的为标准
E、用于建立系统的分析模型和设计模型
F、是一种建模语言
17、下列关于本课程采用的面向对象的分析与设计方法的描述,正确的是(B)
A、面向对象分析软件做什么,设计描述软件要怎么做。
B、面向对象分析描述问题域与系统责任,面向对象的设计考虑与软件实现有关的问题。
C、面向对象分析类图与面向对象的设计类图具有相同的类与关系
D、面向对象分析与面向对象的设计遵循不同的范型。
18、不属于人机交互的设计的是?
(C)
A、手势与体感输入
B、用户图形界面
C、输入输出的线程设计
D、语音识别与输出
19、模型的重要性体现在以下哪些方面?
(ABCDE)
A、便于转换为代码
B、对复杂的设计问题进行验证
C、便于涉及人员之间交流信息
D、及时反映用户需求
E、深入理解软件所涉及的业务
20、Usecase出现在以下哪些阶段(ABCDE)
A、需求分析
B、系统实现
C、系统设计
D、系统测试
E、系统分析
21、类图出现在以下哪些阶段?
(BCD)
A、需求分析
B、系统实现
C、系统分析
D、系统设计
22、下列关于识别类的属性的例子正确的(C)
A、学生的课程成绩是该学生的一个属性
B、教师的授课是该教师的一个属性
C、汽车的最大时速是该汽车的一个属性
D、企业员工的薪水是该员工的一个属性
23、关于关联的说法正确的是(D)
A、关联用于表示两个特定实例之间静态关系。
B、仅当两个类之间存在关联关系时,它们的实例才可以传递消息。
C、两个类之间只能存在一种关联关系。
D、问题域中的事物的各种关系不一定都识别为类图中的类间的关联关系。
24、流感与感冒类型之间是(C)关系
A、泛化
B、聚合
C、关联
D、组合
25、太阳系和地球之间是(A)关系。
A、聚合
B、组合
C、关联
D、泛化
26、关于分析模式的描述不正确的是(B)
A、分析模式不涉及软件的实现方案
B、分析模式可以帮助我们从无到有地构造OOA模型
C、分析模式是上下文有关的模型片段
D、分析模型可以帮助我们重构已有的OOA模型
27、下列情况适合由泛化关系来表达的是(C)
A、公司人员可以根据人员的属性——部门划分为若干部门,公司人员与各部门人员之间构成泛化关系
B、公司人员可以分为技术人员、管理人员、行政人员等,技术人员、管理人员、行政人员之间可能相互转换,公司人员与技术人员、管理人员、行政人员构成泛化关系。
C、公司人员可以分为男职工和女职工,公司人员与男职工和女职工之间可构成泛化关系。
D、公司人员可以按照人员类型分类,分为技术人员、管理人员、行政人员等,技术人员与人员类型可构成泛化关系。
28、关于接口的描述正确的是(B)
A、接口有自己单独的表示法
B、接口与类之间存在实现与依赖关系
C、接口仅出现在设计模型中
D、接口仅能在java和C#中得到实现
29、不属于识别类的方法的是(D)
A、分析系统责任
B、关注系统边界
C、分析问题域
D、分析状态
30、关于OOA类图描述正确的是(B)
A、OOA类图中不能有参与者形成的类
B、OOA类图可以有现实世界中不存在的类
C、OOA类图中必须完全记录相应的现实世界中的各种关系
D、OOA类图完全与现实世界中的对象一致
31、下面UML2顺序图中不可能发生的消息序列是(A)
A、m2,m1,m3,m4
B、m4,m2,m3,m1
C、m2,m3,m4,m1
D、m1,m2,m3,m4
32、不属于UML2中的交互图的是(C)
A、顺序图
B、交互概览图
C、协作图
D、时序图
33、下列关于顺序系统与并发系统的描述错误的是(B)
A、并发系统中的OOA模型中要有多个主动对象,若有一个主动对象则有多个主动服务。
B、并发系统中的消息只能是异步消息
C、顺序系统中的消息只能是同步消息,
D、顺序系统的OOA模型中只有一个主动对象,并且这个主动对象中只有一个主动服务.
34、关于状态图的陈述正确的是(B)
A、一个状态的内部转换与自转换的意义是相同的。
B、动作是在状态内或在转化时所做的操作,是原子的和即时的。
C、一个对象自身的属性值变化不能作为其状态图中的事件。
D、历史状态是指一个对象以前曾经所处的状态集合。
35、下列行为不适合用状态图描述的是(D)
A、交换机的工作行为
B、空调的工作行为
C、洗衣机的工作行为
D、电子政务中的文件审批流程
36、当一对象处于某一组合状态S内的子状态s1,在某事件的激发下要求其退出状态S,,并且再次进入状态S时,直接进入s1,此时需要用到:
(C)
A、延迟事件
B、并发状态
C、历史状态
D、完成事件
37、
示例:
根据上面的状态图,根据上面的状态图,若当前处于状态S21,相应事件E2的动作序列是(act213-act221),注意填写时只填动作,若结果是由多个动作组成的序列,动作之间用"-"链接,注意不要有空格。
若没有动作序列不填或填"无"。
现假设当前处于状态S11,填写响应事件E11的动作序列是(act112)
38、接上题的情境,填写响应事件E1的动作序列(act213-act22-act31-act32-act21-act211)
39、关于问题域的分析与问题域部分的设计的描述正确的是:
(D)
A、二者的方法学不同。
B、问题域部分的设计是对问题域的分析的结果进行细化。
C、两者的输入是相同的,都是对现实世界中的对象进行建模。
D、两者使用相同的模型。
40、下列哪项不是进行问题域部分设计的理由:
(B)
A、复用相对稳定的业务模型。
B、加深对现实世界的理解。
C、使设计模型可以有一部分相对稳定。
D、使设计模型从容适应技术的变化。
41、下列哪项不是进行问题域部分设计的内容:
(B)
A、考虑线程方案
B、复用以前存在的类。
C、根据选定的编程语言调整模型的结构。
D、为以后的版本或领域内其他的系统设计提供可复用的机会。
42、下列关于面向对象的分析与设计的描述,正确的是(C)
A、面向对象分析软件做什么,设计描述软件要怎么做
B、面向对象分析与面向对象的设计遵循不同的范型。
C、面向对象分析描述问题域与系统责任,面向对象的设计考虑与软件实现有关的问题。
D、面向对象分析类图与面向对象的设计类图具有相同的类与关系
43、“植物大战僵尸”是一款流行的游戏,游戏中的精灵分为僵尸和植物两大类,僵尸可以运动但不能发射武器,植物不能运动但能发射武器。
某同学计划在游戏开发中多重继承已有的植物类和僵尸类,形成植物僵尸类,具有植物和僵尸的所有行为,请分析是否可行:
(B)
A、无法判定。
B、可行与否取决于僵尸和植物类是否有共同的父类,使用的编程语言,以及操作和属性之间的耦合关系等等。
C、可行,这就是面向对象的神奇之处。
D、不可行,僵尸和植物类是被封装在两个类中,彼此之间没有任何交互。
44、下列关于人机交互设计的观点,哪个是正确的?
(C)
A、可以直接使用需求分析的用例图,进行人机交互设计。
B、人机交互设计不需关注人机交互与其他部分的关系。
C、由于可视化开发环境的出现,人机交互设计可大大简化.
D、窗口与子窗口必须建模为组合关系
45、关于面向对象控制驱动部分的设计的描述错误的是(D)
A、可以根据系统的分布方案设置控制流。
B、可以设置起协调者作用的控制器。
C、需要为耗时的任务建立控制流。
D、OOA中的主动对象都需要作为OOD中的进程或线程。
46、下列哪项不属于人机交互部分的设计?
(B)
A、身体姿态感应
B、软件系统之间的交互
C、屏幕触摸
D、播放语音
E、系统与外部设备的交互
47、在进行控制驱动设计时,选用进程与线程的区别在于(BDE)
A、控制流之间无通讯时,宜选择进程。
B、当控制流之间需要进行快速、大量的数据通讯时,宜选用线程。
C、控制流之间有通讯时,宜选择线程。
D、当无需显式的编程,借用操作系统的便利条件实现并发时,宜选用进程。
E、从节约系统资源的角度,宜选择线程。
48、在windows操作系统下,打开多次word程序,将产生多个(B)。
A、管程
B、线程
C、进程
D、作业
49、OOD的数据管理部分不能通过下列的哪种方式实现(A)
A、内存管理
B、NoSQL
C、关系数据库
D、文件管理
50、.在对某系统的数据管理部分的设计中,已知该系统不需数据一致性和数据共享的支持,且需要存取大量的非结构化的数据,对存取速度要求较高。
最好应选用什么实现方式(D)
A、以上三者都可以
B、关系数据管理系统
C、面向对象的数据库管理系统
D、文件系统
51、关于数据管理部分的设计,正确的描述是(D)
A、采用关系数据库管理系统实现方式,必须保证类图与数据表之间具有一对一的映射关系。
B、由于目前关系数据库技术已非常成熟,应优先选用,而尽可能不采用文件系统实现方式。
C、面向对象的数据库不存在范型转化的问题,应优先考虑使用。
D、根据类图中的类进行关系数据库的设计,设计出的数据表,可以在很大程度上解决2NF,3NF,4NF所要解决的问题
52、关于构件图与部署图的描述正确的是(B)。
A、构件只能是构成一个可执行系统必要和充分的构件,如动态连接库和可执行程序。
B、部署图通常包括节点、节点间的关联关系、构件以及构件和节点间的依赖关系。
C、节点内可以嵌套构件,构件内部不能嵌套构件
D、构件图与部署图都是在实现阶段才建立的。
53、活动图与程序流程图都能表示的语义(B)。
A、泳道
B、控制流
C、并发
D、对象流
54、对于文件方式与关系数据库方式的数据管理设计的描述,正确的是(D)
A、文件方式的数据管理具有廉价、可以存储任何类型的对象、便于实现等优点。
B、二者都必须保证外存中记录与内存中的对象一一对应。
C、二者都不存在从内存对象到外存记录的映射鸿沟。
D、关系数据库的的数据管理需要较多的计算机资源,处理速度较慢,不适合非结构化的数据存储。
55、下列情况不适合用构件描述的是(A)
A、描述源代码中的类之间的依赖关系。
B、描述可执行文件与动态链接库文件之间的依赖关系。
C、描述源代码文件之间的依赖关系。
D、对可执行文件及其执行过程中所产生的表、文件和文档建模。
56、下列关于数据管理设计的描述正确的是(C)
A、当采用关系数据库的方式存取持久对象时,存储持久类信息的数据表应与持久类一一对应。
B、应尽可能选择关系数据库的方式存取持久对象。
C、不论文件还是关系数据库的数据管理方式,都需要设计对象存储方案和数据存储接口。
D、对于同一持久类,其在内存中的对象应于其在磁盘中的对象(或对象信息)一一对应。
57~59、某公司计划计划开发幼儿教学CAI系统,用于幼儿园电子教学。
具体需求如下:
•该系统为分布式系统,一名幼儿教师通过教师机教学,多名幼儿通过幼儿机学习。
•完成的功能如下:
•1)控制各台幼儿机的启动与关机。
•2)上课前,在教师机中选择本次课程所用到的课件(由另外的团队开发),通过与课件的交互设置某次课程教学的若干知识点,该知识点所对应的例题与习题。
•3)上课时,幼儿教师针对每个知识点在教师机中示范例题,例题解答过程显示在每个幼儿机上。
之后,幼儿教师启动该知识点的若干习题,要求每个幼儿在规定时间内完成。
•4)幼儿在幼儿机上的解答的过程中,幼儿教师监督每个幼儿的解答过程。
•5)幼儿解答完毕,系统与课件交互,将每个幼儿的答题情况与得分从课件自动取出。
并显示在教师机上,供幼儿教师点评与讲解。
57、请根据以上对该系统主要需求的描述,并结合合理的设想,梳理需求,建立该系统完整的用例图。
58、请建立该系统完整的OOA类图
59、•在OOA类图的基础上,用顺序图描述幼儿解答习题后,在汇总各幼儿答题情况与得分场景下,各个对象的交互序列.
60、考虑如下自动洗衣机的行为,建立状态图进行描述:
对洗衣机的用户有一个控制按钮可以使用。
如果洗衣机门关了用户按下按钮,洗衣机就洗衣1小时,为一个完整的洗衣周期。
洗衣周期中经历洗涤、漂洗、脱水三个阶段,在这三个阶段用户都可能会按下按钮,再次延长一次洗衣周期。
用户都可能打开门中断洗衣,并且在关上门的时候,又需要回到原来的状态,继续开始洗衣。
如果当洗衣机就洗衣的任何时候用户按下按钮,洗衣机就会追加1小时洗衣时间。
在洗衣机门打开的时候使用按钮无效。
在洗衣机上有指示灯。
在洗衣的时候,指示灯灯必须打开。
在洗衣机门打开的任何时间,指示灯也必须开着。
用户可以通过打开洗衣机门停止洗衣。
如果用户关上门,指示灯就灭了。
如果洗衣预置时间到了,洗衣机就关上马达和指示灯。
同时发出警告鸣声告诉用户衣服已经洗好了。
第1章面向对象方法概论
1.3面向对象的基本原则:
抽象、分类、封装、消息通信、多态性、行为分析和复杂性控制。
1.5面向对象方法的发展史及现状简介
(1)雏形阶段
(2)完善阶段
(3)繁荣阶段
第2章什么是面向对象分析
2.2面向对象分析综述
1.概念与表示法
2.OOA模型
3.OOA过程
第3章建立需求模型--用况图
3.22识别参与者
(1)人员
(2)外部系统
(3)设备
3.3.3用况之间的关系
UML把用况之间存在的关系分为三种:
包含、扩展、继承。
第4章建立基本模型--类图
4.1.2识别对象与类
如下是一些识别对象与类的方法:
1.考虑系统边界
2.考虑问题域
3.考虑系统责任
4.利用名词、代词和名词短语
4.1.5认识对象的主动行为并识别主动对象
1.主动对象(activeobject)是具有主动行为的对象,在设计阶段是拥有线程或进程并启动控制活动的对象。
2.主动类(activeclass)是其实例为主动对象的类。
4.2.2操作
1.概念
操作是类的对象被要求提供的服务的规约。
操作除了要具有名称外,还可以具有可见性、参数列表或返回类型、定义操作的基本格式为:
[可见性]操作名[(参数列表)][:
返回类型]
2.表示法
3.识别操作
4.4接口
接口(interface)声明了一组操作,用以刻画模型元素对外提供的服务或它所需要的外部服务。
接口定义了一个契约,在接口两端的类可以独立变更,但必须遵循这个契约。
第5章建立辅助模型
5.1.2顺序图中的结构化控制
Loop、opt和par为控制操作符,分别表示循环、选择和并行。
5.4.1page96图5-27简易微波炉的状态机图
第7章问题域部分的设计
7.3提高性能
1.调整对象的分析
2.增加保存中间结果的属性或类
3.为提高或降低系统的并发度,可能要人为地增加或减少主动类
4.合并通信频繁的类
5.用聚合关系描述复杂类
第8章人机交互部分的设计
8.1什么是人机交互部分
人机交互部分是OOD模型的组成部分之一。
突出人如何命令系统以及系统如何向用户提交信息。
设计人机交互就是要设计输入与输出,其中所包含的对象(称作界面对象)以及其间的关系构成了系统的人机交互部分的模型。
第9章控制驱动部分的设计
9.2控制流
控制流(controlflow)是进程或县城的统称。
1.进程
进程(process)是具有一定独立功能的程序的一次执行的过程。
进程既是处理机的分配单位,也是其他计算机资源的分配单位。
2.线程
3.控制流
第10章数据管理部分的设计
10.2数据库和数据库管理系统
数据库是长期存在计算机内、有组织、可共享的数据的集合。
数据库管理系统是用于建立、使用和维护数据库的软件,它对数据库进行统一管理和控制,以保证数据库的完整性和安全性。
第11章构件及部署部分的设计
11.1.1概念与表示法
通常采用UML的构件图进行勾践设计。
构件图是描述构件、构件的内部结构(哪些系统元素形成了那些构件)和构件之间关系的图,基于构件图,进而可对实现构件的制品建模。
1.构件
2.构件的接口
3.构件的端口
4.连接件
11.2部署设计
UML不但支持对构件建模以对实现构件的制品建模,还支持用部署图对系统的网络拓扑结构建模以及对可执行制品的部署建模。
11.2.1概念与表示法
节点(node)是制品可部署并执行在其上的计算资源,并能够通过通信路径互联。
通常把节点看作是一个可以在其上部署可执行制品的运行环境。
嵌入式系统和分布式系统等中的处理器和具有运算能力的设备,都可以用节点进行建模。
进一步地,使用节点和节点间的关系可以对系统在其上运行的拓扑结构建模。
第13章OOD的评价准则
13.1耦合
用耦合(coupling)来描述OOD成分之间联系的紧密程度。
考虑耦合问题的目的在于:
改动一部分,对其他部分的影响应尽量地小;阅读一部分,需要查阅的其他部分也要尽量少。
1.交互耦合
OOD中的交互耦合指的是模型成分间通过消息的交互程导。
OOD模型成分间的交互耦合越低越好。
一般说来,一条消息中的参数不应过多,参数过多会导致相关模型成分间的强耦合(高度耦合)。
此外,还要减少由一个对象发送和接收的消息的数目。
如果一个对象的进出消息太多,则会引起对象间的强耦合。
强耦合容易引起修改的波动效应,即对一个对象的改动可能要过多地涉及其他对象。
若设计中出现了强耦合,就需要考虑重新进行设计。
2.继承耦合
继承耦合是指特殊类继承一般类的属性和操作的数量程度。
对继承而言,强耦合为好,强的继承耦合是OOA和OOD努力追求的目标。
为了在系统中达到强的继承耦合,每个特殊类应该真正地是一般类的特殊类,即特殊类不应该拒绝或不使用一般类中的较多属性或者操作。
如果设计中的继承耦合不强,就要重新组织类,调整原有的模型。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 重点面向对象分析与设计资料 A4排版 重点 面向 对象 分析 设计 资料 A4 排版
![提示](https://static.bdocx.com/images/bang_tan.gif)