1、附件:UML2 软件建模课程代号(00000)同步练习题二 O 一五年一月目录第 1 章 概述 .1第 2 章 用例与用例图 .5第 3 章 类 与接口 .14第 4 章 关系建 模 .21第 5 章 其他结构建模 .27第 6 章 交互与交互图 .29第 7 章 状态机与状态图 .36第 8 章 活动与活动图 .43第 9 章 构件与构件图 .48第 10 章 制品、结点与部署图 .51第 1 章 概述一、单项选择题1下面不是面向对象设计基本特性的是( a ) 。A.一致性 B.封装性 C.多态性 D.继承性2. 关于继承性,下列说法错误的是(c )A. 子类不能直接访问其超类的私有特征,但
2、子类继承其超类的私有特征。B. 子类的对象可代替其父类的对象。C. 子类和超类相互依赖。D. 当一个子类实例化创建一个对象时,该子类的超类也将实例化。3. UML 的概念模型不包括( a )A.应用领域 B.规则 C.基本构造块 D.公共机制4. UML 图不包括( d )A.用例图 B.类图 C.状态图 D.流程图5. 面向对象设计的基本特性除了封装和多态之外,还包括( c )A.一致性 B.完整性 C.继承性 D.可移植性6. 关于继承性,下列说法错误的是( d )A.父类的 protected 成员可被其子类访问。B.子类的对象可代替其父类的对象。C.子类的每个对象都是其父类的一个对象。
3、D.一个父类可以有多个子类,每个子类只能有一个父类。7. 在面向对象设计中,关于继承性,下面说法错误的是(b )A.子类不但继承超类的属性和操作,也继承超类的关联。B.子类继承超类的特性,但并不继承其私有特性。C.子类的每个对象都是其超类的一个对象,所以子类的对象可代替其超类的对象。D.超类的 protected 成员可被其子类访问。8. 面向对象的封装有三个层面的解释,不属于这三个层面的是( c )A.对象的封装 B.类的封装 C.接口的封装 D.包的封装9. 好模型的应该符合的条件是(a ) 规范性 正确性 一致性 完备性 独立性A. B. C. D.10. 关于对象和实例的概念,下面说法
4、错误的是( c )A.对象是由类经实例化创建而来的。 B.一个对象是一个实例。C.一个实例也是一个对象。 D.一个对象是属性和行为的一个封装体。11. 下面哪个不是 UML 中的静态视图( a )第 1 章 概述A.状态图 B.用例图 C.对象图 D.类图12. 下面关于正向工程与逆向工程的描述,哪个不正确( c )A.正向工程是通过到实现语言的映射而把模型转换为代码的过程。B.逆向工程是通过从特定实现语言的映射而把代码转换为模型的过程。C.正向工程是通过从特定实现语言的映射而把代码转换为模型的过程。D.正向工程与逆向工程可以通过 rose 支持来实现。13. 在结构化程序设计思想中,不属于程
5、序三种基本控制结构的是( c )A.顺序 B.循环 C.嵌套 D.选择14. 在面向对象的方法学中,封装的目的是分离对象的( d ) 。A.定义和实现 B.设计和测试 C.设计和实现 D.分析和定义二、填空题1. 对象的_行为_用于管理维护对象的状态,可能是改变状态,也可能读取状态。2. 面向对象主要体现为人们观察分析世界的一种_思维_方式,而不局限于软件设计和编程。3. 静态的操作往往用于管理静态的性质,但静态操作中没有_当前对象_的概念。4. _模型_是基于图形的表示,以可视化方式,形象直观地描述系统的特征。5. 结合软件开发过程,模型往往可划分为业务模型、_分析模型_、设计模型、测试模型
6、等。三、名词解释题1. 对象2. 多态性3. 行为图4. 封装性5. 结构图四、简答题1. 对象的概念是什么?2. 如何理解对象的封装?3. 好模型的标准是什么?4. 什么是面向对象建模?5. 为什么要建模?6. 使用建模工具的好处是什么?第 1 章 概述7. 如何描述系统的语境?第 1 章 概述参考答案一、单项选择题1A 2C 3A 4C 5C 6D 7B 8C 9A 10C11A 12C 13C 14D二、填空题1. 行为 2. 思维 3. 当前对象 4. 模型 5. 分析模型三、名词解释题1. 一个对象是:具有明确定义的边界和唯一标识(identity)的一个实体(entity)。 状态
7、和行为的一个封装体。 类的一个实例(instance)。2. 多态性的一般性含义是,某一论域中的一个元素可以有多种具体解释。编程语言中的重载(overload)和类属(generic)都是多态性机制。3. 行为图表示系统中对象的动态行为,包括用例、交互、状态机、活动等。一个系统的动态行为可描述为随时间而进行的一系列变化,但用例除外。24. 封装是一种自然的构造,目的是保护内部;面向对象封装就是把表示状态的各个性质和对状态的各个操作包装成对象类型,使得对对象状态的存取只能通过封装提供的接口来进行。5. 结构图用于表示系统中的静态结构,描述运行时刻不变的特征,与时间无关的元素,可描述抽象的概念,也
8、可描述现实世界中的事实。四、简答题1. 一个对象是: 具有明确定义的边界和唯一标识 (identity) 的一个实体(entity) 。状态和行为的一个封装体。 类的一个实例(instance) 。2. 一个对象封装了自己的状态和行为。在运行时刻,对象的状态表示为一组性质的值,一个对象持有自己的性质的值,而且通过自己的行为对自己的状态施加管理。3. 好模型并没有统一的、明确的标准,但可以从达到建模目的的程度来判定其质量优劣,即规范设计、可视化、构建、存档。可以把一套模型作为一个逻辑系统, “好”模型应符合以下几个条件:规范性、 正确性、一致性、完备性。4. 面向对象建模将被建模事物都看作对象,
9、然后再描述其结构和行为。整个运行系统可看作一个对象,来考察其使用案例(use case) 所表现的功能。面向对象建模是一种建模规范。面向对象建模是一种软件建模方法,即采用对象、类、接口等基本概念,采用封装性、继承性、多态性等进行建模,得到的模型被称为对象模型。5. 建模是为了能更好地理解复杂系统。人的大脑一次只能处理有限的信息,人对复杂问题的理解能力是有限的。建模的最根本目的就是在动手构建系统之前先来理解它。6. 规范,便于建档和共享;能支持正向工程,从模型( 主要是类图) 能生成源代码框第 1 章 概述架;能支持逆向工程,从源代码生成模型,起码能生成类图。一些工具还能支持Roundtrip
10、工程,即正向和逆向互动,模型(如类图) 与源代码都能更改,也能自动保持一致。7. 描述语境 UML 的做法是建立一个矩形框,在左上角命名来描述特定语境,将参与者放在矩形框之外并与系统进行交互。为了对系统的行为建模,将一组相关用例纳入矩形框中,表示系统对外提供的功能。第 2 章 用例与用例图一、单项选择题1. 在一个“订单处理系统”中,下新订单和更新订单都要核查用户账号是否正确,则用例“下新订单” 、 “更新订单”与用例“核查用户账号”之间的关系是( d )A.泛化 B.实现 C. 扩展 D.包含2. 在 UML 提供的图中,用于描述系统与外部系统及用户之间的交互的图是( a )A.用例图 B.
11、类图 C.对象图 D.部署图3. 关于用例之间的包含和扩展关系,下面说法错误的是( c )A.包含是指一个用例含有另一个用例的行为。B.包含关系是一种依赖关系,指向被包含的用例。C.扩展关系是从一个扩展用例到一个被扩展用例的一种泛化关系。D.扩展关系规范了扩展用例的行为如何及何时插入到被扩展用例的行为之中。4. UML 中,用例图展示了外部 Actor 与系统所提供的用例之间的连接,UML 中的外部Actor 是指( d )A.人 B.硬件设备C.人和硬件设备 D.人、硬件设备或外部系统5. 下列关于用例图的描述,错误的是( d )A.用例图中的参与者和用例之间是关联关系。B.包含是用例之间的
12、一种依赖关系,指向被包含的用例。C.参与者和参与者之间、用例和用例之间都可能出现泛化关系。D.扩展关系规范了扩展用例的行为如何及何时插入到被扩展用例的行为之中,由被扩展用例指向扩展用例。6. 在用例图中,关于参与者与角色,下面说法错误的是(c )A.一个参与者 actor 表示与系统交互的一种角色。B.一个参与者与特定的用例之间具有关联关系。C.参与者只能表示特定用户所扮演的角色。D.参与者之间可能有泛化关系。7. 下面关系中不适合描述用例之间关系的是(b )A.包含 B.关联 C.扩展 D.泛化8. 如果对银行 ATM 的常用功能进行建模,包括取款、存款、转账、查询等,可以用来表示该系统的功
13、能需求的是(b )A.序列图 B.用例图 C.活动图 D.对象图9. 在银行 ATM 建模中,每次取款或转账都要求登录系统,那么登录系统与它们之间的关系就是(b )第 2 章 用例与用例图A.包含用例 B.被包含用例 C.扩展用例 D.被扩展用例10. 关于用例,下面说法是错误的是( b )A.一个用例表示了系统中的一部分功能和行为。B.一个用例也描述了一个功能如何实现。C.一个用例抽象了一组动作的规范。D.一个用例的动作的执行会产生可观察的结果。11. 在图书管理系统的用例图中,还书用例和罚款用例之间是( b )关系A.包含 B.扩展 C.分类 D.聚集12. 在用例之间,会有三种不同的关系
14、,下列哪个不是他们之间的关系(a ) 。A.聚集 B.泛化 C.扩展 D.包含13. 在确定用例名时,一般使用( c)来表示。A.名词 B.形容词 C.动词 D.代词14. 一个用例中加入一些新的动作后则构成了另一个用例,这两个用例之间的关系是( c)A.聚集 B.泛化 C.扩展 D. 包含15. 参与者与用例之间的关系是( d )A.包含 B.扩展 C.泛化 D.关联二、填空题下图是图书管理系统中的用例图,完成 14 题:1. 图中 Get book 和 GetWithFine 的关系是_延伸(或扩展) _。2. 这种关系只是在特定的称为_延伸(或扩展)_点发生。3. Get book 称为
15、_基(或被延伸 或被扩展)_用例。4. Lend book 和 Check user account 的关系是_包含_。上图是饮料销售系统的用例图,完成 58 题:第 2 章 用例与用例图饮 料 销 售 系 统购 买 饮 料顾 客供 货 人收 款 人供 货取 钱购 买 一 罐 饮 料购 买 一 瓶 饮 料根 据 销 售 情 况供 货打 开 销 售 机关 闭 销 售 机5. 图中购买饮料和购买一瓶饮料的关系是_泛化_。6. 供货和根据销售情况供货的关系是_延伸(或扩展)_ 。7. 取钱和打开销售机的关系是_包含 _。8. 顾客和购买饮料的关系是_关联_。根据下图完成 1921 题:9. 贷款客户与借款用例之间的关系是_关联关系_。10. 还款用例与计息用例之间的关系是_包含关系_。11. 相对于还款用例和还息用例,计息用例称为_ _包含_用例。三、名词解释题1. 用例2. 参与者3. 扩展关系