文档库 最新最全的文档下载
当前位置:文档库 › UML面向对象设计及分析复习资料

UML面向对象设计及分析复习资料

第1章UML概述

1. 请指出UML的三个主要的特性。

1)UML是一种语言

2)UML是用来建模的

3)UML是统一的标准

2. 请指出三种以上现实生活中的常用模型,并说明它们分别在各自的领域中发挥了什么样的作用。

1)电路图:电子产品设计、生产、维修

2)园区沙盘:直观、立体化地展示园区的景观、布局

3)地图:导航、指路等

3. 请简要说明建模的意义和建模的原则。

建模能够帮助我们按照实际情况或按我们需要的样式对系统进行可视化;提供一种详细说明系统的结构或行为的方法;给出一个指导系统构造的模板;对我们所做出的决策进行文档化在建模时应遵循以下原则:选择要创建什么模型对如何动手解决问题和如何形成解决方案有着意义深远的影响;每一种模型可以在不同的精度级别上表示;最好的模型是与现实相联系的;单个模型是不充分的。对每个重要的系统最好用一组几乎独立的模型去处理

4. 说明UML适用的建模领域,以及其作用和主要的参与人员。

?业务建模,用来加强对业务领域的了解,以领域专家为主,需求分析人员是主力,系统分

析员、架构师可参与。

?需求模型,用来加强需求了解,便于技术决策,以需求分析人员为主,系统分析员是主力,

领域专家提供指导,架构师和资深开发人员参与。

?设计模型:包括高层设计模型和详细设计模型。高层设计模型以架构师为主,系统分析员

从需求方面提供支持,资深开发人员从技术实现方面提供支持。详细设计模型则以资深开

发人员为主,架构师提供指导。

?实现模型:架构师、资深开发人员(设计人员);以资深开发人员(设计人员)为主,架

构师提供总体指导。

?数据库模型:架构师、数据库开发人员、资深开发人员(设计人员);以数据库开发人员

为主,架构师提供指导,资深开发人员(设计人员)予以配合。

5. UML是一种方法论吗?并简要说明理由。

UML不是方法论。它仅仅是一种描述模型的标准语言,虽然渗透了许多方法论的基础概念,但是却没有在标准中给出完整的方法指南。

6. 请简要说明UML和面向软件开发之间的关系。

UML和面向对象软件开发之间有很强的关联关系,甚至可以说是面向对象软件开发催生了UML。但是由于在UML的标准化和发展过程,有机地吸纳了业务建模、工作流建模、数据库建模等领域的标准规范,形成了一个适用性很强的标准。

7. 请简要阐述在软件开发过程中使用UML的必要性以及好处。

软件开发是一个很复杂的工程,而采用统一的建模语言来对软件进行描述能够使客户、涉众、开发人员对软件能够有更好的共识,也能够有效地降低复杂性。

8. UML的体系包括那三个部分

UML基本构造块,UML的规则和UML公共机制

9. 在UML中,有3种基本构造块,分别是什么?

事物、关系和图

10 状态图的基本概念

11 协作图的基本概念

12 顺序图的基本概念

13 泳道的基本概念

14 对象图类图的基本概念

15 组件、规范、接口、接点的概念

第2章用例图

1. 在用例图中参与者是什么,它属于系统范围之内吗?

参与者是为了完成一个事件而与系统交互的实体,它不属于系统范围之内。

2. 用例和使用场景之间是什么关系?与协作又是什么关系?

用例是由一组用例实例组成的,用例实例也就是常说的“使用场景”,而协作是用例的实现。

3. 用例之间的扩展、泛化、包含三种关系有什么异同,请分别举例说明。

?扩展关系:基用例是可以独立于扩展用例存在的,只是在特定的条件下,它的行为可以被

另一个用例的行为所扩展

?包含关系:被包含的用例(此例中的检查座位详情)不是孤立存在的,它仅作为某些包含

它的更大的基用例(此例中的预订座位、安排座位)的一部分出现

?泛化关系:用来表示参与者与参与者之间,用例与用例之间的特殊/一般化关系

4. 一个用例的描述,最基本的部分有哪些。

用户描述、用例名称、用例概述、主参与者、基本事件流

5. 对于一个电子商务网站而言,以下哪些不是合适的用例,指出并说明理由。

输入支付信息将商品放入购物车结账预订商品

用户登录邮寄商品查看商品详情

输入支付信息:太小

邮件商品:系统功能之外

查看商品详情:太小

6. 用例分析技术和结构化分析相比,最大的区别是什么?请简要地说明它们之间的关系。

用例分析技术最大的特点是从用户的角度来分析、组织需求。而结构化分析更多是从系统的结构上进行分析。

7. 为了满足物业中介行业的信息化要求,甲公司基于详尽的需求调研与分析,准备研发一套符合市场需要的、实用的信息管理系统。主要将实现客户资料信息管理、客户委托(出租、出售、租赁、购买)信息管理、业务线索生成与管理、房源状态自动更新、权限管理、到期用户管理、房源组合查询等功能。该公司小王,通过多次的与潜在客户的交流与沟通,完成了最初的用例模型的开发,图2-1是一个用例模型的局部:

图6-14 物业管理系统用例模型局部

(1)但小李认为该模型不符合“用例建模”的思想,存在明显的错误。请用200字以内说明错误所在,并说明应该如何修改。

1)主要错误:用例的分解太细,并没有遵从每个用例为用户传递一个有价值的结果的原则。在原设计中“打开房源信息页面”、“录入房源信息”、“确认提交信息”都只是一个操作步骤,因此不适合作为用例。

2)修改方法:将“打开房源信息页面”、“录入房源信息”、“确认提交信息”合并为“新增房源信息”。

(2)在上图中构造型“《include》”表示的是什么意思,它与“《extent》”之间的区别是什么?

在用例模型中,构造型“《include》”是用来表示包含关系。它通常用来表示被包含用例是被多包含用例使用的一个可复用模块,而《extent》且通常用来表示对用例的扩展。8.一台自动售货机能提供6种不同的饮料,售货机上有6个不同的按钮,分别对应这6种不同的饮料,顾客通过这些按钮选择不同的饮料。售货机有一个硬币槽和找零槽,分别用来收钱和找钱。现在为这个系统设计一个用例图?

9.现有一个产品销售系统,其总体需求如下:

系统允许管理员生成存货清单报告。

管理员可以更新存货清单。

销售员记录正常的销售情况。

交易可以使用信用卡或支标,系统需要对其进行验证。

每次交易后都需要更新存货清单。

分析其总体需求,并绘制出其用例图?

10.绘制用例图,为如下的每个事件显示酒店管理系统中的用例,并描述各用例的基本操作流程。

客人预订房间。

客人登记。

客人的承担服务费用。

生成最终账单

客人结账

客人支付账单

第3章对象图

1. 对象特性的三要素是什么,请通过一个实际的例子来说明三要素的内容。

对象特性的三要素是状态、行为和标识。

2. “书”、“购物车”、“我的UML参考手册(第二版)”、“银行卡”、“号码为的手机卡”中,哪些是对象,哪些是类。光从这些名字是否一定可以确定为是对象?

“我的UML参考手册(第二版)”、“号码为的手机卡”应该是对象。

3. 在图3-1中最上面的对象的名称是什么?该图表示的意思是什么?请绘制出与其相应的类图。

图3-1 对象图实例

China。该图的意思是福建、四川等省份组成中国。

4. 请说明对象图的适用场景以及它的优缺点。

软件工程与UML期末试题及答案

软件工程与U M L建模复习题B 一:单选题 1.是在系统之外,透过系统边界与系统进行有意义交互的任何事物 A).相关系统B).Use Case C).Class D).Actor 2.软件工程是以为核心 A).过程B).面向对象C).软件开发D).质量 3.“系统应具有很高的可靠性,使用该产品的前3个月,系统不应该出现崩溃(数据不可恢复)的现象”,这属于 A).功能性需求B).客观需求C).主观需求D).非功能性需求 4.“系统每天晚上自动生成进货报表”,Actor是: A).系统B).其它系统C).时间D).报表审阅者 5.数据流程图是一个分层的概念模型,分三个层次:,分别描述系统的不同特征 A).总体图、二级图、三级图B).总体图、二级图、细节图 C).总体图、零级图、细节图D).总体图、次级图、细节图 6.正式运行系统后能够产生的收益被称为 A).直接效益B).运营效益C).最佳效益D).启动效益 7.“以相对短的时间和相对低的成本来确定给定的问题在其约束条件内是否有解、有几种解以及哪个是最佳解”,这指的是软件开发过程中的 A).问题定义B).可行性研究C).需求分析D).设计 8.在处理过程定义中,有时存在多重嵌套的情况,对于复杂的条件组合问题,用自然语言往往不能直观、清楚地表述处理的过程,因此,常常使用方法。 A).数据字典B).判定表和判定树C).用例图D).螺旋模型 9.设C(X)定义问题X的复杂性函数,E(X)定义解决问题X所需要工作量的函数,对于两个问

题p1和p2,一般情况下如果C(p1)E(p2) B).C(p1+p2)=C(p1)+C(p2) C).E(p1+p2)>E(p1)+E(p2) D).E(p1+p2)

面向对象程序设计—文本编辑器的设计与实现

课程设计报告书 课程名称面向对象程序设计 设计题目文本编辑器的设计与实现 专业班级 学号 姓名 指导教师 年月

目录 1 设计时间 (1) 2 设计目的 (1) 3设计任务 (1) 4 设计内容 (1) 4.1需求分析 (1) 4.2概要设计 (1) 4.2.1功能结构图 (1) 4.3详细设计 (2) 4.3.1流程图 (3) 4.4系统的功能实现 (4) 4.4.1类或包的加载 (5) 4.4.2设计一个主类,变量的定义 (5) 4.4.3文件操作功能的实现 (6) 4.5运行测试 (25) 4.5.1文本编辑器界面 (25) 4.5.2各功能菜单界面 (25) 5 总结与展望 (26) 参考文献 (26) 成绩评定 (27)

1 设计时间 2011年12月19日~2011年12月25日 2 设计目的 本次设计是学习完《java6程序设计》课程后进行的一次全面的综合练习,目的是加深对本学期课程的理解,通过设计文本编辑器并实现其功能来熟练掌握java语言基础,初步掌握软件开发的基本方法与技术将理论课程中学到的知识运用到实践中,实现有一定规模的Java应用。 3设计任务 本次设计的主要任务是文本编辑器的设计与实现,要求设计一个类似于Windows记事本(Notepad)的Java程序。可以打开、新建、保存一个文本文件;对选中的文本进行各种编辑操作(设置字体、字号、字型、对齐方式、背景、前景色、复制、粘贴、剪切、查找、替换等);在文本中能够插入对象。 4 设计内容 4.1需求分析 现在网络上各种文本编辑器数不胜数,有EmEditor ,UEStudio ,GridinSoft Notepad ,Notepad++,win32pad ,SkimEdit,UniRed,xint 。功能也是应有尽有,有能改变字体的,有能改变文字颜色的。但是,这些软件又存在各种各样的瑕疵或问题:有的文件体积相对于一般文字编辑来说太大;有的功能太繁杂,使初级使用者一时难以掌握。仅从日常应用方面来说,一个文本编辑器只需一些简单实用的功能就够了。本程序设计就是依照这样一种使用需要设计了一个简单的文本编辑器程序。 4.2概要设计 4.2.1功能结构图

UML期末考试题(必考)

一、选择 1.UML 的全称是 ( ) (A )Unify Modeling Language (B )Unified Modeling Language (C )Unified Modem Language (D )Unified Making Language 2.参与者(Actor )与用例之间的关系是( ) (A )包含关系(B )泛化关系(C )关联关系 (D )扩展关系 3.在类图中,下面哪个符号表示继承关系( ) (B) (A) (C) (D) 4.下面哪个视图属于UML 语言的交互图( ) (A )行为图 (B )状态图 (C )实现图 (D )顺序图 5. 在类图中,下面哪个符号表示实现关系( ) (B) (A) (C) (D) 6.下面哪个图形代表活动( ) 7.UML 中关联的多重度是指 ( ) (A )一个类有多个方法被另一个类调用 (B )一个类的实类能够与另一个类的多个实类相关联 (C )一个类的某个方法被另一个类调用的次数 (D )两个类所具有的相同的方法和属性 8.下面哪个不是UML 中的静态视图( ) (A)状态图 (B)用例图 (C)对象图 (D)类图 9.( )技术是将一个活动图中的活动状态进行分组,每一组表示一个特定的类、人或部门,他们负责完成组内的活动。 (A)泳道 (B)分叉汇合 (C)分支 (D)转移 10.下列关于状态图的说法中,正确的是( ) (A) 状态图是UML 中对系统的静态方面进行建模的图之一。 (B) 状态图是活动图的一个特例,状态图中的多数状态是活动状态 (C) 活动图和状态图是对对象的生命周期进行建模,描述对象随时间变化的行为。 (D) 状态图强调对有几个对象参与的活动过程建模,而活动图更强调对单个反应型对象建模 11.类图应该画在Rose 的哪种( )视图中。 (A)Use Case View (B)Logic View (C)Component View (D)Deployment View 12.顺序图由类角色,生命线,激活期和( )组成 (A)关系 (B)消息 (C)用例 (D)实体 13.关于通信图的描述,下列哪个不正确( ) (A)通信图作为一种交互图,强调的是参加交互的对象的组织; (B)通信图是顺序图的一种特例 (C)通信图中有消息流的顺序号;

UML期末考卷一份(有答案)

考试时间年月日(120分钟) 课程UML 请将答案填写在答题纸上!不要在考卷上作答! 一、单选题(每小题只有一个正确选项,每小题2分,共30分) 1.执行者(Actor)与用例之间的关系是() (A)包含关系(B)泛化关系(C)关联关系(D)扩展关系2 .在类图中,下面哪个符号表示继承关系() 3.在类图中,“#”表示的可见性是() (A)Public (B)Protected (C)Private (D)Package 4.下面那个类图的表示是正确的() 5.下面哪个符号代表部署图的节点() 6.生命线是UML视图中哪个图形的组成部分() (A)类图(B)状态图(C)活动图(D)顺序图 7.在类图中,那种关系表达总体与局部的关系() (A)泛化(B)实现(C)依赖(D)聚合 8.下面哪个图形代表活动() 9.下面哪个UML视图是描述一个对象的生命周期的() (A)类图(B)状态图(C)协作图(D)顺序图 10.下面哪个视图属于UML语言的交互图() (A)行为图(B)状态图(C)实现图(D)顺序图 11.下面哪个符号代表包图() 12.在UML协作图中,有多少种关联角色的构造型() (A)1 (B)3 (C)5 (D)7 13.在类图中,哪种关系表达总体与局部的关系() (A)泛化(B)实现(C)依赖(D)聚合 14.在类图中,“#”表示的可见性是() (A)Public (B)Protected (C)Private (D)Package 15.下面哪个符号表示注释() 二、多选题(每小题有一个或多个选项,每小题2分,共10分) 1.下面哪些图形可以清楚地表达并发行为() (A)类图(B)状态体(C)活动图(D)顺序图 2.下面哪些元素构成了组件图形() (A)组件(B)转换(C)关系(D)接口 3.部署图中的节点具有以下哪些方面的内容() (A)计算能力(B)基本内存(C)位置(D)接口 4.顺序图的用途包括() (A)显示并发进程和激活 (B)当不同的类之间存在多个简短的方法时,描述控制流的整体序列 (C)显示在协作图中难于描述的事件序列 (D)显示涉及类交互而与对象无关的一般形式 5.常见的UML工具有哪些?() (A)Rational Rose (B)Power Designer (C)Visio (D)Visual UML 三、填空题(每空2分,共30分) 1. UML中有多种关系,请标出图示是哪种关系: (B) (A) (C) (D) (B) (A) (C) (D) (B) (A) (C) (D) (B) (A) (C) (D) Student Student name : String age : Student getName () getAge () Student Name : String Age: intInteger getName () getAge () (B) (A) (C) (D) (B) (A) (C) (D)

uml期末考试题A卷及答案北信科

电子科技大学考卷(A 卷) 线 ---------【【封--- 二 一二 一二二一二一 一二心 中学教 考试时间 年 月 日(120分钟) 课程 UML 教师签名—于楠_ 9 .下面哪个UML 视图是描述一个对象的生命周期的( B ) (A)类图 (B)状态图 (C)协作图 (D)顺序图 请将答案填写在答题纸上!不要在考卷上作答! 、单选题(每小题只有一个正确选项,每小题 1.执行者(Actor)与用例之间的关系是 (A )包含关系 (B)泛化关系 2 ?在类图中,下面哪个符号表示继承关系( (A) (B) 3 .在类图中,“ #”表示的可见性是( B (A) Public (B) Protected 4 .下面那个类图的表示是正确的( 共 30 分) ) (C) (C)关联关系 (D)扩展关系 (D) 10.下面哪个视图属于 UML 语言的交互图( D ) (A)行为图 (B)状态图 (C)实现图 11.下面哪个符号代表包图( A ) (A) (B) (C) 12.在UML 协作图中,有多少种关联角色的构造型( C ) (A) 1 ( B) 3 (C) 5 13?在类图中,哪种关系表达总体与局部的关系( D ) (A)泛化 (B)实现 (C)依赖 (D)顺序图 (D) (D) 7 (D)聚合 (C) Private (D) Package (A) Stude nt (B) Stude nt (C) Stude nt (D) Stude nt n ame : String getName () Name : String age : getAge () Age: intln teger 14. 在类图中,“ #”表示的可见性是( B ) (A) Public ( B) Protected 15. 下面哪个符号表示注释( D ) (C) Private (D) Package (A) (B) (C) (D) 二二二-二密 ---------一称名业 专--------- 5 .下面哪个符号代表部署图的节点( C ) (A ) (D) 6 ?生命线是UML 视图中哪个图形的组成部分( D ) (A)类图 (B)状态图 (C)活动图 7 .在类图中,那种关系表达总体与局部的关系( D ) (A)泛化 (B)实现 (C)依赖 &下面哪个图形代表活动( D ) getName () getAge () (D)顺序图 (D)聚合 2 ?下面哪些元素构成了组件图形( (A)组件 (B)转换 4 .顺序图的用途包括(ABCD 2 分,共10分) CD ) (C) 活动图 (D) 顺序图 ) (C) 关系 (D) 接口 ABC ) (C) 位置 (D) 接口 ACD 3 ?部署图中的节点具有以下哪些方面的内容( (A)计算能力 (B)基本内存 1 ?下面哪些图形可以清楚地表达并发行为( (A)类图 (B)状态体 二、多选题(每小题有一个或多个选项,每小题 (A) 显示并发进程和激活 (B) 当不同的类之间存在多个简短的方法时,描述控制流的整体序列 (C) 显示在协作图中难于描述的事件序列 (D) 显示涉及类交互而与对象无关的一般形式 5.常见的UML 工具有哪些? ( ABCD ) (A )R ational Rose ( B ) Power Designer (C ) Visio ( D ) Visual UML

UML面向对象分析与设计

UML面向对象分析与设计 大作业 前言 “UML面向对象分析与设计”是计算机专业和软件工程等相关专业的一门重要课程,也是其他理工科专业的热门选修课程。“程序设计语言”、“计算机网络”、“数据库原理”和“数据机构”等是它的前导课程,学好本课程对学生毕业后从事软件开发有着极为重要的作用。 要学好这门课,仅仅通过课堂教学或自学掌握理论知识是远远不够的,还必须加强实践。特在学期末引入uml的综合分析与设计,从实际项目出发,使学生学会运用软件工程基本理论知识,UML建模语言和rose建模环境,去解决软件开发中的实际问题,达到学以致用的目的。

面向对象软件开发技术 项目的引入及需求 简易教学管理系统的分析、设计与实现 一、设计的目的 1.初步了解UML语言的概念、结构、语义与表示方法; 2.掌握UML建模工具Rational Rose的使用方法; 3.给出某个简单系统的模型,能够熟练地使用Rose工具表达; 二、设计理论基础 1. 面向对象的程序设计C++或JAVA程序设计课程; 2.数据结构或算法课程 2.SQLServer或mysql数据库系统; 3. 熟悉传统软件工程以及软件测试技术。 三、设计内容与步骤 需求陈述:简易教学管理系统主要提供两个方面的服务: 选课管理,负责新学期的课程选课注册。 成绩管理,负责学生成绩管理。 (1)简易教学管理系统---选课管理应提供的服务如下: 1.录入与生成新学期课程表 教学管理人员在新学期开学前录入新学期的课程,打印将开设的课程目录表,供师 生参考选择。如果某门课实际选课的学生少于10人,则停开该课程,把该课程从 课程表中删除;如某课程选课学生多于60人,则停止选课。 2.学生选课注册 新学期开始前一周为学生选课注册时间,在此期间学生可以选课注册,并且允许改 变或取消注册申请。 每个学生选课可不允许超过4门,每门课最多允许60名学生选课注册。 3.查询 可以查询课程信息、学生选课信息和学生、教师信息。

UML期末考试试题与答案解析

UML期末考试试题与答案解析 一、选择题: 1.UML中关联的多重度就是指(B) A.一个类有多个方法被另一个类调用 B.一个类的实类能够与另一个类的多个实类相关联 C.一个类的某个方法被另一个类调用的次数 D.两个类所具有的相同的方法与属性 2.已知三个类A、B与C、其中类A由类B的一个实类与类C的1个或多个实类构成、 请画出能够正确表示类A,B与C之间关系的UML类图、 3在某个信息系统中,存在如下的业务陈述:①一个客户提交0个或多个订单;②一个订单由一个且仅由一个客户提交。系统中存在两个类:“客户”类与“订单”类。对应每个“订单”类的实例,存在___(46)_B__“客户”类的实例;对应每个“客户”类的实例,存在___(47)D___个“订单”类的实例。 供选择的答案: (1)A、0个 B、1个C、1个或多个 D、0个或多个 (2)A、0个 B、1个 C、1个或多个 D、0个或多个 4、 UML中的交互图有两种,分别就是顺序图与协作图,请分析一下两者之间的主要差别与各自的优缺点。掌握利用两种图进行的设计的方法。 答:顺序图可视化地表示了对象之间随时间发生的交互,它除了展示对象之间的关联,还显示出对象之间的消息传递。与顺序图一样,协作图也展示对象之间的交互关系。顺序图强调的就是交互的时间顺序,而协作图强调的就是交互的语境与参与交互的对象的整体组织。顺序图按照时间顺序布图,而协作图按照空间组织布图。 顺序图可以清晰地表示消息之间的顺序与时间关系,但需要较多的水平方向的空间。 协作图在增加对象时比较容易,而且分支也比较少,但如果消息比较多时难以表示消息之间的顺序。 14、什么就是对象间的可见性? 答:可见性(Visibility)指的就是一个对象能够“瞧到”或者引用另一个对象的能力。 5、UML提供了一系列的图支持面向对象的分析与设计,其中____(1)___给出系统的静态设计视图;___(2)____对系统的行为进行组织与建模就是非常重要的;____(3)___与____(4)___都就是描述系统动态视图的交互图,其中___(3)___描述了以时间顺序组织的对象之间的交互活动,___(4)____强调收发消息的对象的组织结构。 A、状态图 B、用例图 C、序列图 D、部署图 E、协作图 F、类图 答案:(1)F (2)B (3)C (4)E 6、在UML提供的图中,___(1)___用于描述系统与外部系统及用户之间的交互;__(2)___用于按时间顺序描述对象间的交互。

uml期末考试题A卷及答案

考试时间 年 月 日(90分钟) 课程 UML 请将答案填写在答题纸上!不要在考卷上作答! 一、单选题 1.执行者(Actor )与用例之间的关系是( ) (A )包含关系 (B )泛化关系 (C )关联关系 (D )扩展关系 2 .在类图中,下面哪个符号表示继承关系( ) 3.在类图中,“ #”表示的可见性是( ) (A )Public (B )Protected (C )Private (D )Package 4.下面那个类图的表示是正确的( ) 5.下面哪个符号代表部署图的节点( ) 6.生命线是UML 视图中哪个图形的组成部分( ) (A )类图 (B )状态图 (C )活动图 (D )顺序图 7.在类图中,那种关系表达总体与局部的关系( ) (A )泛化 (B )实现 (C )依赖 (D )聚合 8.下面哪个图形代表活动( ) (B) (A) (C) (D) (B) (A) (C) (D) Student Student name : String age : Student getName () getAge () Student Name : String Age: intInteger getName () getAge () (B) (A) (C) (D) (B) (A) (C) (D)

9.下面哪个UML 视图是描述一个对象的生命周期的( ) (A )类图 (B )状态图 (C )协作图 (D )顺序图 10.下面哪个视图属于UML 语言的交互图( ) (A )行为图 (B )状态图 (C )实现图 (D )顺序图 11.下面哪个符号代表包图( ) 12.在UML 协作图中,有多少种关联角色的构造型( ) (A )1 (B )3 (C )5 (D )7 13.在类图中,哪种关系表达总体与局部的关系( ) (A )泛化 (B )实现 (C )依赖 (D )聚合 14.在类图中,“ #”表示的可见性是( ) (A )Public (B )Protected (C )Private (D )Package 15.下面哪个符号表示注释( ) 二、多选题 1.下面哪些图形可以清楚地表达并发行为( ) (A )类图 (B )状态图 (C )活动图 (D )顺序图 2.下面哪些元素构成了组件图形( ) (A )组件 (B )转换 (C )关系 (D )接口 3.部署图中的节点具有以下哪些方面的内容( ) (A )计算能力 (B )基本内存 (C )位置 (D )接口 4.顺序图的用途包括( ) (A )显示并发进程和激活 (B )当不同的类之间存在多个简短的方法时,描述控制流的整体序列 (C )显示在协作图中难于描述的事件序列 (D )显示涉及类交互而与对象无关的一般形式 5.常见的UML 工具有哪些?( ) (A )Rational Rose (B )Power Designer (C )Visio (D )Visual UML (B) (A) (C) (D) (B) (A) (C) (D)

面向对象的分析设计实现--图书管理系统

实验报告面向对象的分析设计实现—图书管理系统 一.需求分析 1.1系统需求描述 一般图书馆管理系统主要用于对图书馆日常工作的管理,主要任务是用计算机对读者、图书等各种信息进行日常管理,如查询、修改、增加、删除、图书借阅和归还的管理等。本系统实现了图书馆的信息化管理,完成了图书馆管理系统的基本功能。 一般图书馆管理系统主要包括用户登录子系统、用户管理子系统、图书管理子系统、图书借阅与归还、图书和用户信息查询子系统四个部分,各部分主要功能如下: 用户登录子系统:用于数据库的连接,主界面的设计和不同身份用户的登录管理。 用户管理子系统:用于用户信息的管理,如用户添加、用户信息修改、用户删除。 图书管理子系统:用于图书信息的管理,如新书入库、图书信息修改、图书信息删除。 图书借阅与归还子系统:用于用户借阅和归还图书。 图书和用户信息查询:图书和用户信息的查询。 1.2系统功能结构图

图 1.1 图书管理系统分析系统流程图 1.3 系统解决方案 以上述一般的图书管理系统分析为构思原型。为简化系统,忽略掉其他复杂琐碎的功能需求,仅保留图书信息的录入、修改和读者借、续借、还的功能。读者与管理员通过界面对象调用控制类对象,控制对象进行各种操作并把信息写入数据库。 二.系统设计 2.1 系统E-R图 图 1.2 用户实体图

图1.3 书籍实体图 图 1.4 实体属性图 2.2数据库表结构 表2.1 图书信息表

表2.2 用户借阅表 表2.3用户信息表 2.3用例文档 本系统共设置四个活动者。分别是TT_People、TT_Registrar、TT_Reader 和TT_Database。其中TT_People泛指与系统发生关系的人;TT_Registrar为系统管理员,负责添加、修改图书信息;TT_Reader为所有读者,读者可能发生借书、续借、还书的行为;TT_Database为存储各种信息的数据库对象。另:考虑到现实图书馆中还存在“图书馆管理员”这一角色,但其所起的作用仅为代替读者完成各种系统操作,故没有设置此活动者。 系统中共有五个用例。TT_Addinfo、TT_Modifyinfo、TT_Borrow、TT_Renew 和TT_Return。TT_Addinfo表示管理员添加图书信息;TT_Modifyinfo表示修改图书信息;TT_Borrow表示读者借阅图书;TT_Renew表示读者续借图书;TT_Return表示读者归还图书。

uml期末考试题a卷及答案

文档来源为:从网络收集整理.word 版本可编辑.欢迎下载支持. 一、单选题 1.执行者(Actor )与用例之间的关系是( ) (A )包含关系 (B )泛化关系 (C )关联关系 (D )扩展关系 2 .在类图中,下面哪个符号表示继承关系( 3.在类图中,“ #”表示的可见性是( ) (A )Public (B )Protected (C )Private (D )Package 4.下面那个类图的表示是正确的( ) 5.下面哪个符号代表部署图的节点( ) 6.生命线是UML 视图中哪个图形的组成部分( ) (A )类图 (B )状态图 (C )活动图 (D )顺序图 7.在类图中,那种关系表达总体与局部的关系( ) (A )泛化 (B )实现 (C )依赖 (D )聚合 8.下面哪个图形代表活动( ) 9.下面哪个UML 视图是描述一个对象的生命周期的( ) (A )类图 (B )状态图 (C )协作图 (D )顺序图 10.下面哪个视图属于UML 语言的交互图( ) (A )行为图 (B )状态图 (C )实现图 (D )顺序图 11.下面哪个符号代表包图( ) (B) (A) (C) (D) (B) (A) (C) (D) (B) (A) (C) (D) (B) (A) (D)

文档来源为从网络收集整理 .word版本可编辑.欢迎下载支持 . 12.在UML协作图中,有多少种关联角色的构造型( ) (A)1 (B)3 (C)5 (D)7 13.在类图中,哪种关系表达总体与局部的关系() (A)泛化(B)实现(C)依赖(D)聚合 14.在类图中,“#”表示的可见性是() (A)Public (B)Protected (C)Private (D)Package 15.下面哪个符号表示注释() 二、多选题 1.下面哪些图形可以清楚地表达并发行为() (A)类图(B)状态图(C)活动图(D)顺序图 2.下面哪些元素构成了组件图形() (A)组件(B)转换(C)关系(D)接口 3.部署图中的节点具有以下哪些方面的内容() (A)计算能力(B)基本内存(C)位置(D)接口 4.顺序图的用途包括() (A)显示并发进程和激活 (B)当不同的类之间存在多个简短的方法时,描述控制流的整体序列 (C)显示在协作图中难于描述的事件序列 (D)显示涉及类交互而与对象无关的一般形式 5.常见的UML工具有哪些?() (A)Rational Rose (B)Power Designer (C)Visio (D)Visual UML 三、填空题(每空2分,共30分) 1. UML中有多种关系,请标出图示是哪种关系: (1)(2) (3)(4) (5)(6) (B) (A) (C) (D) (B) (A) (C) (D) 0..1 0..* employer employee

(完整版)面向对象程序设计与面向过程程序设计的区别(2)

面向过程程序设计和面向对象程序设计的区别 面向过程程序设计我个人的理解简单来说,他考虑问题的方式是面向流程的,一个程序的设计思路就是解决一个问题的流程。就好比游戏先登入界面,再输入密码,然后选择角色,在然后进入游戏玩耍,结束... .... 这把这些步样就是面向过程。面向过程就是分析出解决问题所需要的步骤,然后用函数骤一步调用就可以了一步实现,使用的时候一个一个依次。可以看出面向过程化程序设计是先确定算法,再确定数据结构。而面向对象程序设计是面向问题中的各种独立个体的,程序的析设分计过程就是将程序分解成不同对象(不同概念体)之间的交互的过程。这就好比在针对某个工程或游戏设计程序时先不考虑,游戏是怎么玩的,工作是怎么做的,而先会去找,游戏或工程中有哪些人或事物参与(一般选择:用户,玩家,角色等等),然后再看他们都有什么用,都干了些什么,针对这个区设计方法。最后在通过这些千丝万缕的联系把他们分门别类的,组装在一起。可以看出面向过程化程序设计是先确定数据结构再确定算法。 从上面很容易看出,面向过程的程序上一步和下一步环环相扣,他只考虑实现客户的需求不考虑以后扩展,如果以后客户的需求有变化那代码量要改变非常大耗费的时间也相当多。从本质上说,面向过程基本上是一种状态机,不利于修改,当新状态出现的时候,甚至可能需要重设每一个状态解决实现。所以说面向过

程是一种直接的编程方法,它是按照编程语言的思路考虑问题。尤其是想C语言这种过程式语言,它就是通过顺序执行一组语句来实现一个功能,这些语句的执行过程就是整个程序。不同的语言解决同一个问题的过程是不一样的。 而面向对象的程序设计很多东西都是独立的,每个对象都可以重复使用。而面向对象程序设计强调“封装”,“继承“和“多态”。数据和与数据相关的操作被包装成对象(严格的说是“类”),每一种对象是相对完整和独立的。对象可以有派生的类型,派生的类型可以覆盖(或重载)原本已有的操作。所有的这些,是为了达成更好的内聚性,即一种对象做好一件(或者一类相关的)事情,对象内部的细节外面世界不关心也看不到;以及降低耦合性,即不同种类的对象之间相互的依赖尽可能降低。而所有的这些,都有助于达成一个崇高的目标,就是可复用性。 下面举个例子来说明面向过程的程序和面向对象的程序设计的区别: 用面向过程的思想去考虑它应该是这样的:如何启动汽车、如何起步、加速、刹车、熄火等一个个操作。面向过程是把所有的功能全部在一个大的类里定义出来,当系统庞大时,功能多了,各种操作之间的调用关系也很复杂,当需要修改一个功能时就可能引发一连串的改动,使修改和维护成本增加,而不利于修改。 而面向对象则以汽车为对象,一切由汽车开始,以上的可用操

面向对象分析与设计试题及其答案

面向对象分析与设计试题B卷 一、单项选择题( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题2 分,共20 分) 1.到20世纪末,面向对象软件工程已经逐渐发展成熟,特别是()的 形成和广泛使用,采用面向对象分析与编程的软件开发方法已成为软件开发的主流方法。 A. Simula67语言 B. Smalltalk语言 C. Java语言 D. 统一建模语言(UML)的标准 2. 面向对象的运动产生了多种面向对象的语言, 其中()是一种混合性面向对象语言, 既支持面向过程的程序设计方法,又支持面向对象的程序设计方法,有广泛应用的基础和丰富开发环境的支持,因而使面向对象的程序设计能得到很快普及。 A. Smalltalk B. Eiffel C. C++ D. Java 3.下列不属于面向对象技术的基本特征的是()。 A. 封装性 B. 模块性 C. 多态性 D. 继承性 4. 面向对象程序设计将描述事物的数据与( ) 封装在一起,作为一个相互依存、不可分割的整体来处理。 A. 信息 B. 数据隐藏 C. 对数据的操作 D. 数据抽象 5. 关于面向对象方法的优点,下列不正确的叙述是()。 A. 与人类习惯的思维方法比较一致 B. 可重用性好 C. 以数据操作为中心 D.可维护性好 6. ()是从用户使用系统的角度描述系统功能的图形表达方法。 A. 类图 B. 对象图 C. 序列图 D. 用例图 7. ( ) 是表达系统类及其相互联系的图示,它是面向对象设计的核心,建立状态图、协作图 和其他图的基础。 A.对象图 B. 组件图 C. 类图 D. 配置图 8.()描述了一组交互对象间的动态协作关系,它表示完成某项行为的对象和这些对象之 间传递消息的时间顺序。 A.对象图 B. 协作图 C. 状态图 D. 序列图 9.()就是用于表示构成分布式系统的节点集和节点之间的联系的图示,它可以表示系统 中软件和硬件的物理架构。 A. 组件图 B. 协作图 C. 状态图 D. 配置图 10. 使用UML进行关系数据库的()时,需要设计出表达持久数据的实体类及其联系,并把它们映射成为关系数据库表(Table)、视图(View)等。 A. 业务Use Case模型设计 B. 逻辑数据模型设计 C. 物理数据模型设计 C. 物理实现设计 二、填空题( 每空1 分,共20 分) 1. 面向对象开发方法一改过去传统的以___功能分析___为基础的__面向过程__的结 构化分析与设计方法,它模拟人们理解和处理客观世界的方式来分析问题,把系统视为

UMl期末考试题

1.下列描述中,哪个不是建模的基本原则(D) A.要仔细的选择模型 B.每一种模型可以在不同的精度级别上表示所要开发的系统 C.模型要与现实相联系 D.对一个重要的系统用一个模型就可以充分描述 2.UML体系包括三个部分:UML基本构造块,(A)和UML公共机制 A、UML规则 B、UML命名 C、UML模型 D、UML约束 3.UML中的事物包括:结构事物,分组事物,注释事物和(D) A、实体事物 B、边界事物 C、控制事物 D、动作事物 4.(A)模型的缺点是缺乏灵活性,特别是无法解决软件需求不明确或不准确的问题 A、瀑布模型 B、原型模型 C、增量模型 D、螺旋模型 5.下面哪个不是UML中的静态视图(A) A.状态图 B.用例图 C.对象图 D.类图 6.(A)技术是将一个活动图中的活动状态进行分组,每一组表示一个特定的类、人或部门,他们负责完成组内的活动。 A、泳道 B、分叉汇合 C、分支 D、转移 7.下列关于状态图的说法中,正确的是(C) A. 状态图是UML中对系统的静态方面进行建模的五种图之一。 B. 状态图是活动图的一个特例,状态图中的多数状态是活动状态 C.活动图和状态图是对一个对象的生命周期进行建模,描述对象随时间变化的行为。 D. 状态图强调对有几个对象参与的活动过程建模,而活动图更强调对单个反应型对象建模 8.对反应型对象建模一般使用(A)图 A、状态图 B、顺序图 C、活动图 D、类图 9.对反应型对象建模一般使用(A)图 A、状态图 B、顺序图 C、活动图 D、类图 10.类图应该画在Rose的哪种(B)视图中 A、Use CaseView B、Logic View C、ComponentView D、Deployment View 11.类通常可以分为实体类,(C)和边界类 A、父类 B、子类 C、控制类 D、祖先类 12.顺序图由类角色,生命线,激活期和(B)组成 A、关系 B、消息 C、用例 D、实体 13.(D)是系统中遵从一组接口且提供实现的一个物理部件,通常指开发和运行时类的物理实现 A、部署图 B、类 C、接口 D、组件 13关于协作图的描述,下列哪个不正确(B) A.协作图作为一种交互图,强调的是参加交互的对象的组织; B.协作图是顺序图的一种特例 C.协作图中有消息流的顺序号; D.在ROSE工具中,协作图可在顺序图的基础上按“F5”键自动生成; 14.组件图用于对系统的静态实现视图建模,这种视图主要支持系统部件的配置管理,通常可以分为四种方式来 完成,下面哪种不是其中之一(B) A.对源代码建模

uml期末复习(1)

第一章 1、UML(Unified Modeling Langeage)是一种可视化的建模语言,提供了一种标准的、易于理解的方式描述系统的实现过程,从而实现了用户与设计者之间的有效交流。 2、定义系统的物理元素,用于描述事物的静态特征,包括类、接口、协作、用例、主动类、组件和节点。 3、行为建模元素包括哪些? 反映事物之间的交互过程和状态变化,包括交互图和状态图。 4、组织建模元素包括哪些? 子系统、模型、包、框架等。 5、关系元素包括哪些? 关联、泛化、组成、实现、聚集、依赖、约束 6、对于UML的描述,错误的是(A、C)。 A:UML是一种面向对象的设计工具。 B:UML不是一种程序设计语言,而是一种建模语言。 C:UML不是一种建模语言规格说明,而是一种表示的标准。 D:UML不是过程,也不是方法,但允许任何过程和方法使用它。 7、从系统外部用户角度看,用于描述系统功能集合的UML图是用例视图。 8、对如下的用例图的功能进行简单描述。 Buy Goods 8、在UML中,描述父类与子类之间关系的是泛化关系。 9、“交通工具”类与“汽车”类之间的关系属于(D)。 A:关联关系 B:聚集关系 C:依赖关系 D:泛化关系 第二章 1、从软件工程的角度,软件开发可分为:需求分析、系统分析、设计、实现、测试5个阶段。 2、用UML进行建模时会涉及9种图,Rose 2003只支持其中的8种,还有一种图只能用别的图来代替。这个不能在Rose中直接表示的图是(C)。 A:顺序图 B:用例图 C:对象图 D:构件图 3、应用题:Rose分别用哪些图描述系统的静态和动态方面? 静态:用例图、类图、构件图、部署图; 动态:状态图、协作图、顺序图、活动图。 4、默认情况下,Rose模型文件的扩展名为(A)。 A:.mdl B:.ptl C:.cat D:.sub 5、关于浏览窗口的描述,正确的是(A、B、C、D)。 A:可视化地显示模型中所有元素的层次结构 B:具有托放功能,通过模型元素的托放操作可以方便地改变一个模型的特征 C:在浏览器中的模型元素发生变化时,可以自动更新模型中的相关元素

面向对象三维图形引擎的设计与实现

第39卷 第1期 电 子 科 技 大 学 学 报 V ol.39 No.1 2010年1月 Journal of University of Electronic Science and Technology of China Jan. 2010 面向对象三维图形引擎的设计与实现 邱 航,陈雷霆 (电子科技大学计算机科学与工程学院 成都 610054) 【摘要】提出并实现了一种面向对象的三维图形渲染引擎Gingko ,对引擎的体系结构、各模块之间的关系以及关键技术进行了分析说明。该引擎提供可扩展的软件体系结构、高效的场景处理方法、方便易用的应用程序接口,为三维图形应用的快速开发和高效运行提供了支撑。实验证明,该引擎具有运行稳定、渲染速度快的特点,对于大规模室外场景的渲染速度能保持在20 fps 以上。 关 键 词 图形引擎; 插件; 实时渲染; 真实感渲染 中图分类号 TP391.41 文献标识码 A doi:10.3969/j.issn.1001-0548.2010.01.028 Design and Implementation of Object-Oriented 3D Graphics Engine QIU Hang and CHEN Lei-ting (School of Computer Science and Engineering, University of Electronic Science and Technology of China Chengdu 610054) Abstract An object-oriented 3D graphics engine is presented and implemented. The general architecture, the relationships of every module, and the key techniques of the engine are discussed. This engine can support extendable software architectures, and provide high efficient scene rendering method and convenient application programming interfaces. It can greatly accelerate the development of 3D graphics and provide supports for its efficient running. Experimental results show that this engine has high stability and high rendering speed, for rendering large-scale out-door scene, the speed is still above 20 fps. Key words graphics engine; plug-in; real time rendering; realistic rendering 收稿日期:2008 ? 06 ? 25; 修回日期:2009 ? 04 ? 28 基金项目:国家863高技术研究发展计划项目(2006AA01Z335);总装“十一五”预研项目 作者简介:邱 航(1978 ? ),男,在职博士生,讲师,主要从事计算机图形学、数字媒体技术方面的研究. 实时真实感图形生成是计算机科学技术的重要 研究方向,目标是使计算机可以产生与真实世界相 同或高度近似的视觉环境,从而使用户获得身临其 境的视觉感受[1-2],其应用范围覆盖大众娱乐、视景 仿真、城市规划及文化教育等诸多领域。 近年来,随着计算机图形软、硬件的不断发展, 人们对实时真实感渲染以及场景复杂度提出了更高 的要求。传统的直接使用底层图形接口如OpenGL 、 DirectX 开发图形应用的模式越来越暴露出开发复 杂性大、周期长、维护困难的缺陷。鉴于以上原因, 三维图形引擎相关技术受到了广泛的关注。目前, 国外已有众多商用或开源三维图形引擎,如 OGRE [3]、OSG [4]等。 OGRE(object-oriented graphics rendering engine) 是一种用C++实现的跨平台开源三维图形引擎。该 引擎底层对DirectX 、OpenGL 进行完全封装,采用 了基于插件的体系结构,方便用户使用和功能扩展。 但OGRE 过于庞大和复杂,使用户感觉掌握困难。此外,由于底层对DirectX 和OpenGL 的完全封装,用户无法对基本图形API 进行直接操作。 OSG(open scene graph)是一款著名的3D 图形引擎,主要用于虚拟现实、仿真和游戏等领域。OSG 底层只提供了对OpenGL 的封装,与其他图形引擎一样,拥有诸如场景管理、地形管理和底层API 封装等功能。但OSG 的渲染管理比较特殊,它不是采用渲染队列进行渲染管理,而是采用渲染树,更为高效。 Irrlicht 引擎是一款开源、跨平台的3D 引擎,底层封装了DirectX 和OpenGL ,并提供基于GLSL 和HLSL 的可编程渲染管道。该引擎结构简单、速度快。但Irrlicht 以牺牲渲染质量达到高速的目的,在光照等真实感方面比较薄弱。 纵观目前国内外三维图形引擎的发展格局,开发具有自主知识产权、融入新方法、新技术的三维图形引擎是我国在信息技术领域的一项重要目标。 本文提出并实现了一种面向对象的三维图形引擎Gingko ,该引擎不仅能提高用户的开发速度,而

相关文档