1、UML 软件建模教程课后习题习 题 1一、简答题1、简述模型的作用。2、软件模型有什么特征?3、软件建模技术有哪些因素?4、软件模型包括哪些方面的内容?5、软件建模工具应该具有哪些基本功能?二、填空题1、模型是对现实的( )和模拟,是对现实系统( )特征的一种抽象、简化和直观的描述。2、模型具有( ) 、直观性、 ( )和抽象性等特征。3、从抽象程度,可以把模型分为( ) 、逻辑模型和( )三种类型。4、较之于其他模型,软件模型具有( ) 、复杂性和( )等特征。5、软件模型是软件开发人员交流的( ) ,是软件升级和维护的( ) 。6、软件建模技术的要素包括软件建模方法、 ( ) 、软件建模语
2、言和( ) 。7、从开发阶段看,软件建模有业务模型、 ( ) 、分析模型、 ( )和测试模型。8、软件语言有软件需求定义语言、 ( ) 、软件建模语言、 ( ) 、软件程序设计语言等。9、根据软件建模工具的独立性,把软件建模工具分为( )建模工具和( )建模工具。10、OMG 在( )年吧 UML 作为软件建模的标准, UML2.0 版本是( )年颁布的三、选择题1、对软件模型而言,下面说法错误的是( ) 。A.是人员交流的媒介 B.是软件的中间形态C.是软件升级和维护的依据 D.是软件的标准文档2、下面说法错误的是( ) 。A.数据流图是面向功能软件建模方法提供的方法B.用例图是面向对象方法
3、提供的建模方法C.类图是面向对象建模方法提供的建模方法D.ER 图是面向数据建模方法提供的建模方法四、思考题1、软件为什么一定要建模?2、谈谈对下面这句话的理解:“软件是一种特殊的事物,它以一种可程式化和可动态复现的方式来反映人头脑中的可计算性意识,并通过这些意识的动态性外化,打到对客观以及人的主观意识的反映。 ”习 题 2一、简单题1、简述 UML 的发展过程。2、作为一种统一建模语言,UML 有哪些部分构成?3、元模型理论是 UML 的基础,元模型分为哪 4 个层次?4、聚集关系和组合关系有什么区别?5、用例与协作有什么区别?6、模型元素的可见性含义是什么?7、UML 的构造型有什么作用?
4、二、填空题1、1995 年,G.BOoch 和 J.Rumbaugh 在众多方法基础上提出了( ) ,2005 年 UML 推出了其( )版本。2、作为一种建模语言,UML 独立于软件建模( )和建模( ) 。3、给出 UML 的两个特点:( )和( ) 。4、可以把 UML2.0 版本的 13 种图划分( )和( )两种类型。5、元模型划分为 4 个层次,上一层是对下一层的( ) ,下一层是上一层的( ) 。6、泛化关系等同于( ) 。7、接口可以被分为( )和( )两种类型。8、作用域是模型元素的( ) ,也被称为命名空间,一个模型在其命名空间中可以被( ) 。9、模型元素的可见性有:公开
5、、 ( ) 、保护、 ( )和包几种形式。10、UML 的扩展机制包括( ) 、标记值和( ) 。三、选择题1、对 UML 说法不正确的选项是( ) 。A.有 Rational 公司推出 B.基于面向对象方法C.Jacobson 参与了 UNL 的研制 D.1996 年正式成为国际标准2、下面不属于 UML 特点的是( ) 。A.基于建模过程 B.统一标准C.体系规范 D.方便实用3、下面说法不正确的是( ) 。A.元模型理论是 UML 的基础B.元模型分为 4 个层次C.元元模型处在最顶层,用户对象处在最底层D.元模型是对用户对象的抽象4、下面说法不正确的是( ) 。A.元素是模型的要素 B
6、.元素是 UML 模型中最抽象的要素C.元素可以拥有自己的元素 D.元素不能直接产生实例5、对关系来说,下面说法不正确的是( ) 。A.关系也是 UML 的元素 B.关系分为有向关系和无向关系C.关联关系是一种有向关系 D.泛化关系是一种有向关系6、对命名空间来说,下面说法不正确的是( ) 。A.命名空间可以拥有多个命名元素 B.命名空间也是命名元素C.命名空间与所拥有的命名元素是组成关系 D.命名元素必须隶属于一个命名空间7、下面概念不正确的是( ) 。A.类是一组对象的集合 B.接口分为需求接口和供应接口两种类型C.构件是可以封装的软件部分 D.结点是可以独立部署的软件部件四、思考题1、在
7、软件工程领域,UML 能够被广泛接受的原因是什么?2、图在软件建模中的作用是什么?习 题 3一、简答题1、什么叫参与者,参与者有哪些基本特性?2、用例有哪些特性?3、永利之间有哪几种关系?4、用例叙述应该包括哪些基本内容?二、填空题1、用例图的要素包括( ) 、用例和( ) 。2、参与者的英文名称是( ) ,参与者也被称为( ) 。3、参与者的类型可以是( ) 、设备、 ( )和时间。4、用例的英文名称是( ) ,也被称为( )和( ) 。5、用例之间的关系有( ) 、包含和( ) 。6、执行用例之前系统所处的状态被称为( ) , ( )被称为用例执行的流程。三、选择题1、下面不属于用例图作用
8、的是( ) 。A.展现软件的功能 B.展现软件使用者和软件功能的关系C.展现软件的特性 D.展现软件功能相互之间的关系2、下面( )不属于用例图的要素。A.参与者 B.包含C.用例 D.关系3、下面对参与者说法不正确的是( ) 。A.是系统的一个实体 B.也叫活动者C.在系统外部 D.与系统发生交互4、下面( )不属于参与者类型( ) 。A.人 B.设备C.外部系统 D.交互对象5、下面对用例说法不正确的是( ) 。A.usecase B.用况C.使用情况 D.用案6、下面不属于用例特点的是( ) 。A.用例描述用户可见的软件功能 B.用例反映功能的不同抽象层次C.用例反映参与者与系统一次完整
9、的交互过程 D.用例是软件设计和测试的依据7、下面不属于用例之间关系的是( ) 。A.关联 B.泛化C.包含 D.扩展四、练习题1、根据自己的理解,把图 3.30 所示的用例图补充完整。2、找出图 3.31 中存在的问题,并修改正确。订货管理 系统 图 3.31 3、宾馆客房业务管理提供客房预订、预定变更、客房入住、退房结账、旅客信息查询几个方面的功能。订房人可以通过电话、短信、网络或面对面等方式预订客房。允许预订人根据自己情况的变化更改预订信息。旅客入住客房前需要出示证件并登记,并要预交一定的押金。旅客提交押金后,柜台工作人员将在计算机上登记旅客信息、分配房间,并打印旅客入住单,旅客持入住单
10、到指定客房入住。旅客离开宾馆前需要退房结账。旅客或宾馆管理人员可以随时查询旅客或客房的入住信息。建立该问题的用例模型。4、因业务发展的需求,需要开发一个超市管理系统。超市管理的基本业务需求是:(1)对超市的所有货品信息进行管理,并能够及时更新货品信息。(2)对供货商进行管理,提供供货商基本信息管理,供货商的货品管理,并能够及时更新供货信息。(3)对订货进行管理,提供订货、取消订货、更新订货、付款、订货状态跟踪、订货信息查询等功能。(4)对销售进行管理,提供收款、打印收货单、结账、销售信息查询等功能。试分析以上问题,并通过用例图描述该系统的功能。5、某学校要开发一个网上选课系统。该系统提供以下基
11、本功能:(1)建立课程,教务人员通过本系统建立课程信息。(2)课程维护,教务人员修改和删除课程信息。(3)安排课程,教务人员安排课程,课程的安排信息包括周学时、授课时间、授课老师、教师等信息。(4)调整课程,教务人员对已经安排的课程信息进行调整。(5)课程浏览,用户可以浏览和查询课程信息。(6)学生选课,学生登录本系统,选择自己要选修的课程。(7)选课浏览,学生浏览自己选修的课程。试分析以上问题,并通过用例图描述该系统的功能。习 题 4一、简答题1、什么叫对象?2、简述实例的概念。3、简述类元的概念。4、什么叫类?5、类有那几种类型?6、简述接口的概念。二、填空题1.认识的对象可以是客观中一种
12、具体的( ) ,也可以是主观中的一个抽象( ) 。2软件中的对象是一段具有特定语法规则的( ) ,它能够作为软件系统的一个相对独立的基本单位,在软件中承担确定的( ) 。3类描述具有相同性质的一组对象的( ) ,类用( )来表示。4按作用,可以把类分为( ) ,边界类和( )几种类型。5接口可以分为( )和( )两种类型。三、选择题1.在认识过程中,下面哪个不是对象的要素( ) 。A.认识的指向物 B.认识者C.认识指向物在认识者主观中的反映 D.认识的背景2、下面哪一个对对象的说法不正确( ) 。A.客观实体 B.事物的对立面C.认识的指向物 D.软件的一个基本单位3、下面属性命名不正确的是
13、( ) 。A.*Birthday:Data B.#studentBirthday:Data=1999-10-21C.-price:float=12.01R/W D.+studentName:Strin= “张敏”4、指出下面不合适的类名( ) 。A.材料 B.事物C.订单 D.会员5、下面不是对象图作用的是( ) 。A.功能逻辑建模 B.初期分析工具C.描述业务场景 D.模拟运行场景四、练习题1.在一个订货系统中,采购员从供货商处订货,双方需要签订订单,一个采购员可以订多个供货商的货品,一个供货商也可以给多个采购员供货。分析这个问题,并用类图对这个问题进行建模。2.一个企业可以雇佣多个人员。企
14、业的性质包括名称、地址、电话、简况。人员的情况包括姓名、年龄、性别、住址、电话、简历等。雇佣的信息包括雇佣的开始日期、截止日期,简要说明等。双方要签订雇佣合同。雇佣还涉及被雇用人员所聘请的工作岗位。分析这个问题,提取这个问题所涉及的类,定义各个类之间的关系,并画出类图。3.分析第 3 章练习题第 3 题描述的宾馆客房业务管理问题,提取涉及的类,并画出类图。4.根据自己的理解,对图 4.79 中不合理之处进行修改。客户货品 采购员 订货订货货品图 4.79图书 图书管理员 学生借书证图 4.80借书记录1 *5.修改图 4.80 中不合理之处。6.某高校中有以下事物:学校、教师、教室、教材、课程
15、、课桌、学生、班级、学院、讲台、机房、计算机、交换机、社团,试绘制反映这些事物联系的类图。7.分析书店图书销售管理业务,提取相关的类,并画出类图。8.分析超市购物管理业务,提取相关的类,并画出类图。习 题 5一、简单题1.什么叫包?2.包之间存在哪几种关系?3.包图有什么作用?4.在软件建模中,复合结构图有什么作用?5.协作在建模中的作用是什么?二、填空题1.包是对模型元素进行( )的模型元素,包的英文名是( ) 。2.包的可见性有( ) 、私有和( )几种。3.包的依赖关系可以分为( ) 、抽象和( )几种形式。4.包导入可以分为( )和( )两种类型。5.包的包含关系是指一个包可以( )另
16、外一个包作为自己的( ) 。6.复合结构图也被称为( ) ,它用来描述类及其成员的( )及成员之间的连接关系。7.协作的用途有( )和( ) 。三、选择题1.下面不属于包关系的是( ) 。A.导入关系 B.合并关系C.关联关系 D.依赖关系2.下面说法错误的是( ) 。A.共同重用是为了提高包的独立性 B.子类的稳定性比父类的稳定性好C.共同封闭是为了提高包的聚合性 D.包不应该存在循环依赖四、思考题谈谈包在软件结构建模中的作用。习 题 6一、简答题1.活动的含义是什么?2.动作与活动存在什么关系?3.什么叫令牌?它有什么作用?4.什么叫引脚?5.活动图的作用是什么?二、填空题1.动作是活动的
17、基本( )单位,活动可以分解,动作一般不再( ) 。2.令牌被分为( )和( )两种类型。3.活动结点分为( ) 、对象结点和( )三种类型。4.动作参数结点被形象地成为( ) ,它属于一种特殊的( )结点。5.异常处理器包括( ) 、异常处理结点和( )三个要素。三、选择题1.下面说法不正确的是( ) 。A.一个过程包括多个活动 B.一个活动包括一组动作C.一个动作包括多个操作 D.一个操作包括多个引脚2.下面哪一个不属于活动图建模的作用( ) 。A.消息流程建模 B.工作流程建模C.业务流程建模 D.操作流程建模3.对控制节点,下面说法正确的是( ) 。A.一个活动只有一个起始结点 B.一
18、个活动可以有多个起始结点C.一个活动只有一个活动终止结点 D.一个活动有活动终止结点就不能有流终止结点4.下面哪一个不属于对象结点( )A.活动参数结点 B.引脚C.队列 D.中央缓冲结点5.下面说法不正确的是( )A.一条活动的边权重规定同时通过该边令牌的最大数目B.控制流不能连接对象结点C.对象流至少要连接一个对象结点D.对象流传递对象令牌四、练习题1.小蓝周末休息,到附近超市购物。进入超市后,先找到一辆购物车,然后在超市的各层选择自己所要的商品。选购好后,小蓝到收银队排队,排到自己时收银员一件件地扫描小蓝选购的商品,在收银机的计价器上动态显示商品的累计金额。扫描完后,收银员问小蓝有没有会
19、员卡,小蓝把自己的会员卡交给收银员,收银员扫面小蓝的会员卡,计价器上显示小蓝的总钱数是 60.5 元。小蓝如数交了货款,收款机打印出小蓝的购物单,小蓝提供自己采购的物品回家。分析这个问题,并用活动图描述小蓝购物的过程。2.下面是书店售书处理的用例叙述,分析用例叙述中的事件流程,并用活动图描述出这个流程。售书处理用例编号:02-03用例名:售书处理参与者:售书员前置条件:售书员登录系统事件流程:1. 当售书员选择“售书处理”功能时,启动该用例。2. 售书员扫描要销售图书的图书编号。3. 系统显示该图书的图书信息以及当前的库存数量。4. 如果该图书的购买册数多于 1 本,输入购买册数。5. 如果购
20、买者不是会员,直接进入第 7 步;是会员,输入会员编号。6. 系统显示会员信息。7. 系统显示图书总价。8. 售书员收取图书书款。9. 售书员选择“确认收款”按钮。10. 系统打印售书单。11. 售书员撕下售书单,连同图书一并交给读者。12. 本次售书结束。3.某教学系统操作员登录过程是:启动该系统,系统给出登录窗口。在登录窗口中输入用户名和密码。如果用户名或密码有误,则系统提示错误,操作员重新输入;若连续 3 次用户名或密码均没有输入正确,则系统拒绝登录。如果输入正确,则进入系统。用活动图描述操作员的登录过程。4.李晓在大学二年级时参加计算机等级考试,他持自己的身份证和学生证到学校的计算机等
21、级考试管理办公室报名。工作人员首先检查李晓的证件,在检查合格后交给李晓一份登记表,让李晓填写。李晓填好登记表,交给工作人员。工作人员把他的登记表信息录入计算机系统,并用数码相机给李晓拍照,然后打印计算机等级考试证,要求李晓缴纳报名费。李晓缴纳报名费后,工作人员把考试证和缴费收据交给李晓。分析计算机等级考试的报名过程,并用活动图描述报名过程。5.分析银行储蓄的业务过程,用活动图描述储户在银行取款的业务过程。6.分析医院挂号的业务过程,用活动图描述医院挂号的业务过程。习 题 7一、简单题1.什么是状态,对象的状态和对象的属性有什么区别?2.在状态机图中,状态通常由哪几个部分组成?状态转换的要素有哪
22、些?3.在状态机图中,外部转换和内部转换的区别是什么?请举例说明。4.历史状态的含义是什么?二、填空题1.一个状态转换包括( ) 、监护条件和( )三要素。2.无触发转换指( ) 。3.状态机图描述一个对象在不同( )的驱动下发生的状态转移。三、选择题1.状态机图可以表现( )在生存周期的行为、所经历的状态序列、引起状态转换的事件以及因状态转换引起的动作。A.一组对象 B.一个对象 C.多个执行者 D.几个子系统2.下面( )不属于状态的类型。A.子机状态 B.复合状态 C.简单状态 D.激活状态3.( )不属于状态转换的要素。A.事件 B.活动 C.条件 D.动作四、练习题1.假设有一车库电
23、动门由电机驱动进行上下移动,向上移动开门,向下关门,当门完全打开或者完全关闭时,点击自动停转。绘制一个电动门(ElectDoor)的状态机图。2.某销售 POS 机的工作流程是:当客户到收银台后,收银员逐一扫描用户购买的商品的条码,扫描完成后,计算出商品总金额,然后等待用户付款。收款并确定支付成功后,完成一个客户的售货,等待下一个客户。请为其绘制出相应的状态机图。3.简单的数字手表表面上有一个显示屏和两个设置按钮 A 和 B,有两种操作模式:显示时间和设定时间。在显示时间模式下,手表会显示小时和分钟,小时和分钟由闪烁的冒号分割。设定时间模式有两种子模式:设定小时和设定分钟。按钮 A 选择模式,
24、每次按下此按钮时,模式会连续前进:显示小时、设定小时、设定分钟和显示分钟等。在子模式内,每次只要按下按钮 B,就会拨快小时或分钟。绘制一个数字手表的状态机图。4、假设某人有三位 QQ 好友,启动 QQ 后,可以处于在线、隐身、离线、忙碌等状态,如果要和某一个好友聊天,可以双击该好友的图像打开和该好友交流的窗口,试绘制反映 QQ 工作状态及其转换的状态机图。习 题 8一、简答题1.什么是交互?2.什么是生命线?3.消息有哪几种类型?4.交互图有哪几种形式?5.简述交互概念图的概念和作用。6.交互概览图有哪两种类型?7.什么是时序图?8.时序图在软件建模中有什么作用?二、填空题1.交互表示一组相关
25、的( )为了完成某项任务,相互交换( )的情况。2.顺序图强调在交互过程中,各交互的( )之间消息传输的( )关系。3.消息是一种( )元素,它定义了在交互中,生命线之间的一种特定的( ) 。4.在交互时间的时序中,同一消息的( )时间一定先于( )时间。5.通信图也成为( ) ,用来描述参与交互的多个对象实体之间的( )关系。6.交互概览图结合了( )和( )两种图。7.交互概览图是用来描述交互( )和交互( )的一种图。8.以活动图为主线的交互概览图适合对复杂的( )进行建模,而以顺序图为主线的交互概览图则适合描述( )流程。9.时序图用来描述在一个( )中,参与交互的个对象实体状态变化的
26、( )关系。10.时序图的要素包括:生命线、 ( ) 、事件、 ( )和时序约束。11.时序图的两种表示法为:( )和( ) 。12.时序图可以用在( )和( )的时序逻辑建模。三、选择题1.对生命线来说,下面说法正确的是( ) 。A.表示一个对象 B.表示一个对象的生命C.表示一个对象的生命活动 D.表示参与交互的一个对象实体或实体集合2.下面( )不属于交互建模的图形。A.有序图 B.协作图C.定时图 D.交互概览图3.下面( )不属于 UML2.1 版本规定的消息类型。A.同步调用消息 B.转移消息C.应答消息 D.创建消息4.对交互时序来说,下面说法不正确的是( ) 。A.两个不同生命
27、线上的两个消息的时序不定B.同一生命线上的前一事件先于后一事件C.同一消息的发送时间先于接收事件D.定序的先发事件先于后发事件5.下面( )对顺序图的应用描述是错误的。A.软件体系结构建模 B.用例分析建模C.类操作建模 D.用例时序建模四、练习题1.图 8.55 是一个通信图,试把该图转换为顺序图。2.一个温箱控制系统由温度传感器、温度控制器、加热器几部分构成。温箱应该保持在 35左右,当温度下降到 34以下时,温度控制器就应该启动加热器,当温度高于 36时,温度控制器就应该关闭加热器。试画出表示该问题的顺序图。3.分析一个超市购物过程,并且顺序图描述收款员收款的处理逻辑。4.说明图 8.5
28、6 所示的顺序图的含义。习 题 9一、简单题1.什么是构件?2.构件有哪些特性?3.构件有哪两种视图?4.构件之间存在哪些关系?二、填空题1.构件也称为( ) ,是被封装起来的软件( )部件。2.构件通过( )向其他机构提供服务,获取其他构件服务的接口被称为( ) 。3.两个具有相同接口的构件可以相互( ) 。构建内部的要素、行为和状态被( ) 。4.外部视图也称为( ) ,内部视图需要展示构件的( ) 。5.构件的依赖关系又有( ) 、关联依赖和( )几种形式。三、选择题1.对构件说法不正确的是( ) 。A.内容可以向外展现 B.是软件的逻辑部件C.被封装起来 D.通过接口和外部联系2.下面
29、哪一个不属于构件的特性( ) 。A.封装性 B.协作性 C.复用性 D.自含性3.对构件的端口和接口而言,下面说法不正确的是( ) 。A.一个构件可以拥有不止一个端口 B.一个端口可以拥有多个接口C.对岸口可以分为供口和需口两种类型 D.端口包含接口4.下面描述错误的是( ) 。A.包含指一个构件包含其他构件B.关联依赖表示一个构件中的类与另外一个构建中的类存在关联关系C.跟踪依赖描述模型之间的跟踪关系D.装配依赖表示一个构件通过需口装配另外一个构件习 题 10一、简答题1.什么叫软件部署?2.什么叫制品?3.结点有哪两种基本类型?4.简述部署规范的概念。二、填空题1.软件部署包括( )和(
30、)两方面的工作。2.制品表示可以在( )上独立部署的软件单元。制品一般以( )形式呈现。3.承载是一种( )关系,表示( )来源于所承载的模型元素。4.制品之间存在( ) 、包含和( )等关系。5.结点表示可部署( ) ,并能够从事计算的( ) 。6.结点之间存在( ) 、包含和( )关系。7.部署指把软件的各制品放置到( )上的工作,部署可表示为部署对结点的( )关系。三、选择题1.软件部署是( ) 。A.部署软件构件 B.部署软件程序C.部署软件模型 D.部署软件制品2.下面说法正确的是( )A.制品就是制成品 B.制品是软件模块C.制品是被部署的软件单元 D.制品是软件的构件3.下面说法
31、正确的是( ) 。A.承载表示模型元素依赖制品 B.结点之间存在通信关系C.执行环境一般是一个独立的设备结点 D.部署也就是拷贝软件四、练习题试根据一个小型软件项目画出其部署图。习 题 111.什么是业务模型、 。业务模型有什么作用?2.什么是涉众?涉众与用户的区别是什么?3.业务过程包括哪些元素?4.简述业务对象的概念。5.什么是业务规则?业务规则有哪几种类型?6.选择一个业务领域,并建立该领域的业务模型。习 题 121.需求模型与其他软件模型的关系是什么?2.需求模型包括哪些基本内容?3.简述用例建模的过程。4.非功能需求一般包括哪些内容?5.对所选择的系统建立该系统的需求模型。习 题 131.系统分析的特点是什么?2.分析模型包括哪些基本内容?3.事务模式的四要素是什么?4.什么叫 PIM 类模型?5.什么叫用例分析模型?6.对所选择的系统建立该系统的分析模型。习 题 141.一个设计模型包括哪些基本内容?2.为什么说分层架构是软件的一种共性架构?3.PSM 类建模与 PIM 类建模的区别是什么?4.什么叫用例设计模型?它和用例分析模型的区别是什么?5.为什么要建立界面模型?6.对所选择的系统建立该系统的设计模型。