文档库 最新最全的文档下载
当前位置:文档库 › 类图练习题

类图练习题

类图练习题
类图练习题

专题三:类图(对象图、包图)

一、单项选择题

1.UML中类的有三种,下面哪个不是其中之一()

A.实体类

B.边界类

C.控制类

D.主类

2.在UML中,类之间的关系有一种为关联关系,其中多重性用来描述类之间的对应关系,下面哪个不是其中之一()

A. 0 (1)

B. 0….*

C. 1….*

D. *….*

3.通常对象有很多属性,但对于外部对象来说某些属性应该不能被直接访问,下面哪个不是UML中的类成员访问限定性()

A.公有的(public)

B.受保护的(protected)

C.友员(friendly)

D.私有的(private)

4、在一个课程注册系统中,定义了类CourseSchedule和类Course,并在类CourseSchedule 中定义了方法add(c:Course)和方法remove(c:Course),则类CourseSchedule和类Course 之间的关系是:()

A、泛化关系

B、组成关系

C、依赖关系

D、包含关系

5、类A的一个操作调用类B的一个操作,且这两个类之间不存在其他关系,那么类A和类B之间是()关系。()

A、实现

B、关联

C、依赖

D、泛化

6、在UML2.0版本中的图形表示方式中,“包”的表示方式是下列图形中的哪一个?()

A

B

D、

7、在UML中下列图形代表什么关系?()

A、组成关系

B、依赖关系

C、聚集关系

D、泛化关系

8、在

UML中下列图形代表什么关系?( )

9、汽车(Car)由轮子、发动机、油箱、座椅、方向盘等组成。那么car类和其他类(Wheel、Engin、Tank、Chair、SteeringWheel)之间的关系是:()

A、泛化关系(Generalization)

B、实现关系(Realization)

C、包含关系(Inclusion)

D、组合关系(Composition)

10.在下面的图例中,哪个用来描述注释()

A B C D

11.关于包的描述,哪个不正确()

A.和其他建模元素一样,每个包必须有一个区别于其他包的名字;

B.包中可以包含其他元素,比如类、接口、组件、用例等等;

C.包的可见性分为:public、protected、private;

D.引入(import)使得一个包中的元素可以单向访问另一个包中的元素;

E.导出(export)使的一个包中的元素可以单向访问另一个包中的元素;

12、消息传递是对象间通信的手段,一个对象通过向另一个对象发送消息来请求其服务,一个消息通常包括:()

A、发送消息的对象的标识、调用的发送方的操作名和必要的参数

B、发送消息的类名和接收消息的类名

C、接收消息的对象的标识、调用的接收方的操作名和必要的参数

D、接收消息的类名

13、在一个网络游戏系统中,定义了类Cowboy和类Castle,并在类Cowboy中定义了方法

open(c:Castle)和方法Close(c:Castle),则类Cowboy和类Castle之间的关系是:……

()

A、依赖(dependency)关系

B、组成(composition)关系

C、泛化(generalization)关系

D、包含(include)关系

14、根据下面的代码,判断下面那些叙述是正确的?()

public class HouseKeeper{

privateTimeCardtimecard;

public void clockIn(){

timecard.punch();

}

}

A、类HouseKeeper和类TimeCard之间存在关联(Association)关系;

B、类HouseKeeper和类TimeCard之间存在泛化(Generalization)关系;

C、类HouseKeeper和类TimeCard之间存在实现(Realization)关系;

D、类HouseKeeper和类TimeCard之间存在包含(Inclusion)关系

15、UML关系包括关联、聚合、泛化、实现、依赖等5种类型,请将合适的关系填写在下

列描述的()中。

①用例及其协作之间是()关系。

②类A的一个操作调用类B的一个操作,且这两个类之间不存在其他关系,那么类A

和类B之间是()关系。

③在学校中,一个学生可以选修多门课程,一门课程可以由多个学生选修,那么学生

和课程之间是()关系。

④森林和树木之间是()关系。关系。

⑤在MFC类库中,Window类和DialogBox类之间是()

A 实现

B 关联

C 依赖

D 泛化

E 聚合

16、已知类A 需要类B 提供的服务,下列所描述的四种情况中,哪种情况不好把类A 和类

B 之间的关系定义成依赖关系()

A 、类A 中存在两个操作都需要访问类

B 的同一个对象

B 、类A 的某个操作内部创建了类B 的对象,而其他操作均与类B 无关

C 、类A 的某个操作其参数是类B 的对象,而其他操作均与类B 无关

D 、类B 是一个全局变量 17、“一个研究生在软件学院做助教(teaching assistant ),同时还在校园餐厅打工做收银员(cashier )。也就是说,这个研究生有3种角色:学生、助教、收银员,但在同一时刻只能有一种角色。”

根据上面的陈述,下面哪个设计是最合理的?()

A B

CD

18、类X 与类Y 有许多的属性,但是它的行为与类Y 稍微有所不同;这时可以认为类X 是

类Y 的一种特例;则类X 和类Y 之间是()关系。 A 、泛化关系 B 、关联关系C 、依赖关系 D 、实现关系 19、关于类和对象的关系,下列说法中哪个是错误的()

A 、每个对象都是某个类的实例

B 、每个类某一时刻必定存在对象实体

C 、类是静态的描述

D 、对象是动态的实例

二、填空题

1.下图中类的名字是:____________类中的成员属性是:_________ 类中的行为(方法)是:___________________。

2、在UML中分组元素是。

3、在UML模型图中,最适合用来设计数据库大纲的图形是。

4、在对系统建模时、接口可分为、。

5、下图所表示的含义是WashingMachine了接口ControlKnob,Person了接口ControlKnob

三、简答题

1、在UML建模中使用“包”是为了达到怎样的效果?

2、下图显示了某个学校课程管理系统的部分类图,其中一个学生(student)可以知道所有注册课程的教师(instructor),一个教师也可以知道所有注册课程的学生。

现在提出一个新的需求:"一个教师也可以是某些课程的学生",那么下面设计A~C中哪一个是最好的?为什么?

设计A:

设计B:

.设计C:

答案:设计___最好。理由:

3、请为下面这段编译正确的代码,补充类图。pulic class Student{

private String name;

public void setName(String name){

https://www.wendangku.net/doc/019955443.html,=name;

}

public String getName(){

return https://www.wendangku.net/doc/019955443.html,;

}

}

4、请参考下图,回答问题:

图A.2

1)图中的实体类为_____________________

2)图中的控制类为______________________

3)图中的边界类为_____________________

4)“借书界面”类中的成员属性有____________________

四、根据下面的陈述画出类图

1)学生包括本科生、研究生两种。

2)研究生的一部分利用课余时间担任助教。

3)教师包括讲师和教授两种。

4)一名助教可以为一位讲师或一位教授助课,一位讲师只能有一名助教,一位教授可以有5名助教。

五、按如下描述画出一个自治机器人的类图。这张图的焦点是聚集在那些让机器人在路上行走的机制所对应的类上。你可以发现一个虚类Motor和两个从它派生出来的类:SteeringMotor和MainMotor。这两个类都从它的父亲Motor继承了五个方法:move()、stop()、resetCounter()、statues()、distance()。这两个类又是另一个类Driver的一部分。类PathAgent 和Driver有一个1对1的关系,和CollisionSensor有1对n的关系。

【问题:】综上所述请你用UML来绘制分析类图。

六、请根据以上题目描述,给出系统的UML类图设计方案,并用Java代码予以实现。

系统名称:农夫果园游戏系统

人物角色:农夫(Farmer)、市场调查员(Inquirer)、农场主(Boss)

系统实物:各种果树(Fruit)、果园(Garden)

功能需求:1、农夫可以根据市场行情种植各种水果;

2、市场调查员可以了解市场行情;

3、农场主可以向农夫、市场调查员发布命令

4、各种果树都具有种植(plant)、成长(grow)、收获(harvest)行为;

5、果园是人物和实物进行交易的经营场所。

UML-课程设计-学生成绩管理系统-精

UML-课程设计-学生成绩管理系统-精

————————————————————————————————作者:————————————————————————————————日期:

学生成绩管理系统UML建模 姓名: 学号: 班级: 指导教师:

一.设计目的 UML统一建模课程是一门面向对象开发方法的设计语言。UML统一建模课程设计实验课,着重加强面向对象建模技术。使用UML统一建模语言,用需求模型简化业务领域;用分析模型验证用例的正确性,一致性,完备性,可行性;用设计模型标识解决方案。通过模型实现了从业务领域到软件领域的映射。通过建模,使问题可视化,形式化。通过以序列的建模和迭代活动,对于提高学生综合素质十分必要。 UML统一建模课程是本科类计算机专业的一门骨干课程,技术复杂,应用范围广。本课程设计实验主要内容:构建系统的分析模型、设计模型。主要目标如下: 1. 掌握面向对象的分析技术、设计技术; 2. 构建“学生成绩管理系统”的需求分析模型和设计模型; 二.设计内容 1.可行性分析 随着网络通信技术的迅速发展和信息技术的广泛应用,计算机的应用已普及到经济和社 会生活的各个领域。教育领域也不例外,现今已经出现了各种远程网络在线教育系统、图书馆管理系统、学籍管理系统……其中学生成绩管理是任何院校都不可缺少的部分,它的内容对于学校的决策者和教学管理者来说都至关重要,而传统的人工管理方式效率较低,为数据的查询、更新和维护代来了极大的不便。所以学生学籍管理信息系统的开发和应用是必要的,它能够为管理人员提供充足的信息和快捷的查询手段,提高学校学籍管理的效率。 系统的可行性分析 (1)系统实施运行的可行性: 各教师,学生都已熟练掌握计算机的基本实用方法和操作技能,对新系统的开发,表现出极大的热情。提出了很多好的建议和要求。 (2)技术可行性: 校园网已正常运行;开发人员已熟练掌握开发工具。技术上实现系统是可行的。 (3)经济可行性: 校园内部局域网络已经建成;硬件投入不需要很大。 2.需求分析 2.1系统需求分析

类图课堂问题及答案

1、简述类的定义,以及类的三要素。 答:类是对一组具有相同属性、操作、关系和语义事物的描述。类的三要素是:类的名称、属性、操作。 2、类的属性和方法的可见性有哪些?UML中如何表示? 答:类的属性和方法的可见性有protect(符号“#”),private(符号“-”),public(符号“+”) 3、已知三个类A.B和C.其中类A由类B的一个实类和类C的1个或多个实类构成.请画出能够正确表示类A,B和C之间关系的UML类图. 答: 4、根据以下描述画出类图,并注明多重性关系:一个学生可以选修多门课程,也可能没有任何课程;一门课程可以被多个学生选修;一个老师可以教多门课程或者不教课;每门课程至少有一个老师,也可以有多个老师任教;每门课程可以有0或1本教材,每本教材只能用于一门课程。

5、现有一系统需要对商品进行管理,包括添加,删除商品,修改商品信息三项功能,画出系统类图。(商品信息包括商品编号,商品名称,价格,生产厂商等) 6、如果现在系统需求发生变化,需要能够对损坏商品进行打折,以及可以按照商品的颜色和外形进行查询,则系统类图应该如何修改? 7、根据下面的代码画出Invoice类的类图,要求标明各属性的类 型和可见性以及类方法。 public class Invoice { public double amount; public Date date = new Date(); public string customer; public string specification; public string administrator = “unspecified”; static private int number_of_invoices()=0; public invoice(); { number_of_invoices++; } public void print() {

UML中类图实例

UML中类图实例 接口:空心圆+直线(唐老鸭类实现了‘讲人话’); 依赖:虚线+箭头(动物与空气的关系); 关联:实线+箭头(企鹅需要知道气候才迁移); 聚合:空心四边形+实线+箭头(雁群与大雁的关系); 合成/组合:实心四边形+实线+箭头(鸟与翅膀的关系); 泛化/继承:空心三角形+实线(动物与鸟的继承关系); 实现:空心三角形+虚线(实现大雁飞翔的接口); UML类图 解释UML类图:

1、首先瞧“动物”矩形框,它代表一个类。该类图分为三层,第一层显示类的名称,如果就 是抽象类就要用斜体显示。第二层就是类的特性,通常就就是字段与属性。第三层就是类的操作,通常就是方法与行为。 注意前面的符号,‘+’表示public, ‘—’ 表示private, ‘#’表示protected、 2、“飞翔”矩形框表示一个接口图,它与类图的区别主要就是顶端有《interface》显示, 第一行就是接口名称,第二行就是接口方法。接口还有另一种表示方法,俗称棒棒糖表示法,就就是唐老鸭类实现了“讲人话”的接口。 interface IFly interface Ilanguage { { void Fly(); void Speak(); } } 3、动物,鸟,鸭,唐老鸭她们之间都就是继承的关系,继承关系用空心三角形+实现来表 示。 4、“大雁”实现了“飞翔”接口。实现接口用空心三角形+虚线来表示。(注:下面的图中应为空 心三角形)

class Bird:Animal class WideGoose:IFly { { //继承动物类 //实现飞翔接口 } } 5、企鹅与气候有很大的关系,企鹅需要“知道”气候的变化,需要“了解”气候规律。当一个 类“知道”另一个类时,可以用关联(association)关系。关联关系用实线箭头来表示。 class Penguin :Bird { private Climate climate;//在企鹅Penguin中,引用到气候Climate对象 } 6、“大雁”与“雁群”这两个类。大雁就是群居动物,每只大雁都属于一个雁群,一个雁群可 以有多只大雁。所以它们之间就满足聚合(Aggregation)关系。聚合表示一种弱的“拥有” 关系,体现的就是A对象可以包含B对象,但B对象不就是A对象的一部分。聚合关系用空心的菱形+ 实线箭头表示。

uml学生成绩管理系统

《面向对象分析与设计(UML)》课程设计报告 设计题目:学生成绩管理系统 院系:计算机科学与工程学院 专业:软件工程 班级: 学号: 姓名: 指导教师: 设计地点: 开课时间: 2012 至 2013 学年第 1 学期 常熟理工学院计算机科学与工程学院制

学生姓名成绩 评语: 指导教师(签名) 年月日

目录 1. 设计目的和任务.................................................................. .. (1) 2. 开发环境.................................................................. .............................. (2) 硬件环境.................................................................. ....................... (2) 软件环境.................................................................. (2) 3.设计题目.................................................................. (3) 题目名称.................................................................. ...................... . (3) 题目详细描述.................................................................. ........... .. (3) 功能要求.................................................................. (3) 4. 相关技术及知识点.................................................................. .. (4) UML的建模语言................................................................... . (4) RUP软件开发过程................................................................... ....... .. (4)

UML课后习题答案

第一章 (1)统一建模语言UML是绘制软件蓝图的标准工具语言,可以对软件系统产品进行说明、可视化、构造和编制文档。 (2)UML在实际软件项目中,可以用于构造各种类型系统的业务模型和软件模型。 (3)软件的开发模式有瀑布模型、喷泉模型、基于构件的开发模型和XP方法。 (4)面向对象程序的三大要素是多态、封装和继承。(抽象) (5)瀑布模型的缺点是缺乏灵活性,特别是无法解决软件需求不明确或不准确的问题。 第二章 (1) 在UML中,静态视图包含有两种视图,分别是类图和对象图。 (2) 规格说明,修饰,拓展划分是UML常用的通用机制。 (3) 够造型,标记型,约束是UML常用的扩展机制。 (4) 用例视图描述了系统的参与者与系统进行交互的功能,是参与者所能观察和使用到 的系统功能的模型图。 (5) 状态图是通过对象的各种状态来建立模型来描述对象的随时间变化的动态行为,并 且它是独立的对象为中心进行描述。 第三章 (1)Rational Rose默认支持的目标语言主要包括 Java、Visual Basic等。(C++,C#) (2) 部署视图显示的是系统的实际部署情况,它是为了便于理解系统如何在一组处 理解节点上的物理分布,而在分析和设计中使用的架构视图。 (3)使用Rational Rose 生成代码的步骤包括选择待转换的目标模型、检查Java语言的语法错误、设置代码生成属性、生成代码。 (4)在用例视图中包括了系统中的所有参与者、用例和用例图,必要时还可以在其中添加顺序图、协作图、活动图和类图等。 (5) 构件视图用来描述系统中的各个实现模块以及它们之间的依赖关系包含模型代码库、执行文件、运行库和其他构件等信息。 第四章 (1)对象图的目的在于描述系统中参与交互的各个对象在同一时刻是如何运行的。 (2)链是两个或多个对象之间的独立连接,是关联的实例。 (3)在UML的图形表示中,类是由名字、属性和方法三个部分组成的。 (4)依赖关系使用一个从客户指南提供者的虚箭头来进行表示。 (5)在接口中包含一系列操作但是不包含属性,并且它没有对外界可见的关联。 第五章 1)包是用于把元素组织成组的通用机制。 (2)包的可见性关键字包括private、public和protect。 (3)包之间的关系总的来讲可以概括为依赖关系和嵌套关系。 (4)将系统分层很常用的一种方式是将系统分为用户界面层、业务逻辑层和数据访问层的三层结构。 (5)包是包图中最重要的概念,它包含了一组模型元素。 第六章

最新UML课后习题答案

填空题 第一章 第二章 常用的通用机制。 的系统功能的模型图。 (5) 并 且它是独立的对象为中心进行描述。 第三章 (1)Rational Rose默认支持的目标语言主要包括C++,C#) ,它是为了便于理解系统如何在一组处 (3)使用R ational Rose 库、执行文件、运行库和其他构件等信息。 (3)在UML 第五章 1 (2)包的可见性关键字包括 (3 (4

三层结构。 (5 第六章 (1) 例图。 (3) (4) 第七章 (1)在UML时 (2) (4) (5) 第八章 表示一个程序或工作流,常用于计算机流程和工作流程建模。 每一组表示一个特定的类、人或部门、他们完成组内的活动。 第九章 1.uml的交互图中,强调对象之间关系和消息传递的是(协作图)。 2.(结构图)的作用体现在显示对象及其交互关系的空间组织结构。 3.在协作图中的(链)是两个或多个对象之间的(连接)关联的实例。 4.uml中,对象行为是对象间为完成某一目的而进行的一系列消息传递,消息序列可用(顺序号)和(消息的名称)来表示。 5. uml中的协作图强调的是交互对象的整体结构,是按照(空间结构)进行布图。 第十章 2 4在uml中 的图。

第十一章 1.填空题 理实现。 (2)在UML (3 (4 资源建模。 第十二章 1.填空题 的集合。 (2)Rational在每一次迭代中以不同的重点和强度重复。 (3) 解决方案的软件开发方式。 (5)Rational 选择题 第一章 (1) 对象程序的基本特征是(ABCD) A.抽象 B.封装 C.继承 D.多态 (2)类包含的要素有(ABC) A.名字 B.属性 C.操作 D.编号 (3)下列关于类与对象的关系说法不正确的是(A) A.有些对象是不能被抽象成类的

用况图、类图应用举例

UML系列图--用例图 UML-Unified Model Language 统一建模语言,又称标准建模语言。是用来对软件密集系统进行可视化建模的一种语言。 在UML系统开发中有三个主要的模型: 功能模型: 从用户的角度展示系统的功能,包括用例图。 对象模型: 采用对象,属性,操作,关联等概念展示系统的结构和基础,包括类图、对象图、包图。 动态模型: 展现系统的内部行为。包括序列图,活动图,状态图。 UML的重要内容可以由以下五种类图定义 用例图:从用户角度描述系统功能,并指各功能的操作者。 静态图:包括类图,包图,对象图。 类图:描述系统中类的静态结构 包图:是包和类组成的,表示包与包之间的关系,包图描述系统的分层结构 对象图:是类图的实例 行为图:描述系统动态模型和对象组成的交换关系。包括状态图和活动图 活动图:描述了业务实现用例的工作流程

状态图:是描述状态到状态控制流,常用于动态特性建模 交互图:描述对象之间的交互关系 顺序图:对象之间的动态合作关系,强调对象发送消息的顺序,同时显示对象之间的交互 合作图:描述对象之间的协助关系 实现图: 配置图:定义系统中软硬件的物理体系结构 UML包括用例图、类图、构件图、部署图、顺序图、协作图、状态图、活动图各个图简介: 用例图从外部用户的角度捕获系统的行为。他将系统功能划分为对活动者具有意义的事务。 类图描述类、接口、写作以及它们之间的关系的图顺序图描述了随时间安排的一系列消息。每个分类角色显示为一条生命线,代表整个交互期间的角色。消息则显示为生命线之间的箭头。 协作图对交互中存在意义的对象和链建模 状态图用来描述一个特定对象所有可能的状态以及由于各种事件的发生而引起的状态之间的转移和变化。用例图主要用来描述“用户、需求、系统功能单元”之间的关系。它展示了一个外部用户能够观察到的系统功能模型图。 【用途】:帮助开发团队以一种可视化的方式理解系统的功能需求。 用例图所包含的元素如下: 1. 参与者(Actor) 表示与您的应用程序或系统进行交互的用户、组织或外部系统。用一个小人表示。

学生信息管理系统面向对象分析设计

1 绪论 1.1系统简介 学生信息管理系统是针对学校人事处的大量业务处理工作而开发的管理软件,主要用于学校学生信息管理,总体任务是实现学生信息关系的系统化、科学化、规范化和自动化,其主要任务是用计算机对学生各种信息进行日常管理,如查询、修改、增加、删除,另外还考虑到学生选课,针对这些要求设计了学生信息管理系统。 1.2设计目的 学生信息管理系统是高校管理信息系统的重要组成部分,开发或及时升级学生信息管理系统,是提高管理水平和工作效率的必然要求。本设计是对该学生信息管理系统的一个总体的把握,以便在后续的进一步开发过程中更好的控制总体进度,系统主要面向的对象是在校的学生。 1.3设计内容 本系统主要用于学校学生信息管理,总体任务是实现学生信息关系的系统化、规范化和自动化,其主要任务是用计算机对学生各种信息进行日常管理,如查询、修改、增加、删除,针对这些要求设计了学生管理信息系统。本设计主要解决与学生信息管理相关的问题,设计一个功能齐全的学生管理信息系统,实现学生档案信息的增删查改以及学生选课及课程的增删查改、学生成绩的录入和对学生成绩的分析等主要功能。 2 需求分析 2.1. 系统目标 2.1.1 信息系统目标 分析设计并开发实现完善的学生信息管理系统,实现学生信息管理的系统化、规范化和自动化,提高管理水平和工作效率。 2.1.2 目标说明 完成系统目标,功能上尽量完善,性能上要求能够完全适应日常运营管理需求。

2.2 系统结构 2.2.1 信息系统需求结构 系统需求包括功能需求、性能需求、可靠性要求、安全与保密要求等。 经过综合分析,确定该系统包括以下功能: (1)学生基础信息管理 学生基础信息管理包括对学生的姓名、性别、学号、登录名称和登录密码等基本信息的查看和修改,以及学生院系、班级、学期等信息的查询。 (2)教师基本信息管理 教师基本信息管理是对教师的登录名称、登录密码,教职工号等的维护。 (3)课程信息管理 课程信息管理包括对课程设置和班级选课的管理。该模块可实现以下功能:添加、修改、删除和显示课程代码、课程名称、学分和院系名称。添加、删除和提交班级所选课程。 (4)成绩信息管理 成绩信息管理包括对成绩录入和成绩分析的管理。该模块可实现以下功能:录入班级课程成绩,以不同形式(列表统计、图表分析)显示班级课程成绩。 (5)其它相关信息展示 除了以上的信息需要管理维护,可能还有些相关信息需要查询维护等,如通知公告等。 2.2.2 需求结构的说明 以上主要从功能需求进行分析说明,另外还有性能需求和可靠性需求等,将在下面进行进一步分析。 2.3.系统功能需求 2.3.1 功能用例模型 根据系统功能需求,系统的用例图如下。 (1)系统整体用例图

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)___用于按时间顺序描述对象间的交互。

4章:类图与对象图习题-推荐下载

第4章类图与对象图习题 一、简答题 1. 什么叫对象? 答:对象的本意是指认识的指向物。在计算机软件中,对象用来表示客观事物的一 个实体,它封装了一组属性和操作。从形式上看,对象是一段具有特定语法规则的程 序单元,它能够作为软件系统的一个相对独立的基本单位,在软件中承担确定的服务 职能。 2. 简述实例的概念。 答:实例是类元中的一个元素。  3. 简述类元的概念。  答:类元是对聚集一组具有共同特征的实例的模型元素的通称,类、接口、用例、 参与者、关联等都属于类元。类元的名字用标识符来表示,首字母要大写。类元会包 括一组实例。 4. 什么叫类? 答:类是具有相同性质的一组对象的集合,这组对象具有相同的特征、约束和语义。 5. 类有哪几种类型? 答:按阶段分:业务对象,PIM类,PSM类;按作用分:实体类,控制类,界面类。 6. 简述接口的概念。 答:接口是一种类元,聚集了一组需要通过其他类元实现的公共的操作和属性。 二、填空题 1.认识的对象可以是客观中一个具体的(事物),也可以是主观中的一个抽象(观念)。 2.软件中的对象是一段具有特定语法规则的(程序单元),它能够作为软件系统的一个相对独立的基本单位,在软件中承担确定的(服务职能)。 3.类描述具有相同性质的一组对象的(集合),类用(矩形)来表示。 4.按作用,可以把类分为(控制类)、边界类和(实体类)几种类型。 5.接口可以分为(供口)和(需口)两种类型。 三、选择题 1.在认识过程中,下面哪个不是对象的要素(D) A:认识的指向物 B:认识者 C:认识指向物在认识者主观中的反映 D:认识的背景 2.下面哪一个对对象的说法不正确(B) A:客观实体 B:事物的对立面

UML学生管理系统

学生成绩管理系统 一、需求分析 学生成绩管理工作是高校教育工作的一项重要内容。教务管理工作是指学校管理人员按照一定教育方针,运用先进的管理手段,组织、协调、指挥并指导各用户活动,以便高效率、高质量地完成各项教学任务,完成国家所制定的教育目标。学生成绩管理工作是学校教学工作的中枢,是保证高校教学机制正常运转的枢纽,它是一项目的性、计划性、适用性、创造性和科学性很强的工作。学生成绩工作关系到高校教学秩序的稳定。大中型院校人员众多,如果没有好的管理,就不能取得很好的成果,应用数据库来管理,在这方面能够取得很好的效果。 系统的可行性分析 1.系统实施运行的可行性 各教师,学生都已熟练掌握计算机的基本实用方法和操作技能,对新系统的开发,表现出极大的热情。提出了很多好的建议和要求。 2.技术可行性 校园网已正常运行;开发人员已熟练掌握开发工具。技术上实现系统是可行的。 3.经济可行性 校园内部局域网络已经建成;硬件投入不需要很大。 学生成绩管理系统是为了开发学生信息管理系统而编写,主要 面向系统分析员、程序员、测试员、实施员和最终用户。其主要任务

是用计算机对学生成绩信息进行日常管理,如查询、修改、增加、删除,另外还考虑到学生选课,针对这些要求设计了学生成绩管理系统。推行学校信息管理系统的应用是进一步推进学生学籍管理规范化、电子化控制辍学和提高义务教育水平的重要举措。 首先学生可以登录系统,并可以根据自己的情况修改密码,然后通过登陆系统查看自己的成绩,并可以对自己的成绩提出申请错误信息。其次是作为参与者的教师,教师可以输入学生的成绩,也可以查询其对应所教的科目的学生的成绩情况。第三参与者就是教务人员,教务人员就是核实学生的成绩情况并分类各科的成绩。第四参与者是系统管理员,系统管理员有权利添加,删除学生;整个系统的管理都是由系统管理员进行的,如用户的授权、用户的添加与删除等情况。所以系统管理员的角色也非常重要。 系统功能分析 4.参与者的确定 经过对该系统的分析,参与者可确定为:学生、教师和教务员、系统管理员。 5.用户登录 将登录分为学生登录、教师登录、教务员登录、管理员登录,不同的用户有着不同的权限。 6.成绩管理 在学期结束时,教师通过批改试卷得到的成绩单将学生成绩依次加入学生成绩数据库中。

UML重点及课后答案(部分)刁成嘉编著

UML系统建模与分析设计(刁成嘉主编)课后答案 第一章 一、选择 1.A 2.C 3.D 4.B 二、填空 5.实时处理软件分时软件交互式软件批处理软件 6.软件定义软件开发软件使用与维护 7.瀑布模型渐增模型演化模型螺旋模型智能模型 8.封装继承多态 9.唯一性连续性维护性复用性逐步完善 三、解释名词 10.软件:是程序以及开发、使用、维护程序所需要的所有文档。 11.类:是一组具有相同属性和相同操作的对象的集合,是对象的抽象,他抽象的描述了属于该类的全部对象的属性和操作。 12.封装:是指把相关的数据(属性)和对这些数据的操作结合在一起,组成一个独立的对象。 13.继承:是指子类(也成派生类、特化类)可以自动拥有某父类的全部属性和操作,即一个类可以定义为另一个一般的类的特殊情况。 14.消息:实现对象类之间的通信和任务传递。 15.运行期间,当实际发送消息时才进行实例连接,称为动态绑定。 16.多态性:是指同一个消息被不同的对象接收时,产生不同的动作或执行结果。 四、综合题 17、简述软件危机产生的背景 计算机科学的不断发展,使得软件需求量不断增大,他的要求、复杂度、开发成本也越来越高,但软件开发放大和技术却停留在“小程序”、“个体化”的操作上面,致使软件设计犹如泥潭,大批设计者深陷其中,甚至出现上述存在的种种缺点。 18、试述软件生存周期过程 一个软件产品从概念开始,经过开发、使用和维护,直到最后该软件更新换代为止的全部过程就是软件的生存周期。软件生存周期有软件定义、软件开发和软件使用与维护三部分组成。分为软件系统的可行性分析、需求分析、概要设计、详细设计、实现、组装测试、确认测试、使用、维护和更新换代十个阶段。 19、试述软件开发的几种基本方法 结构化软件开发方法、模块化软件开发方法、面向数据结构软件开发方法、面向对象软件开发方法

UML中类图实例

UML中类图实例 接口:空心圆+直线(唐老鸭类实现了‘讲人话’); 依赖:虚线+箭头(动物和空气的关系); 关联:实线+箭头(企鹅需要知道气候才迁移); 聚合:空心四边形+实线+箭头(雁群和大雁的关系); 合成/组合:实心四边形+实线+箭头(鸟和翅膀的关系);泛化/继承:空心三角形+实线(动物和鸟的继承关系);实现:空心三角形+虚线(实现大雁飞翔的接口); UML类图

解释UML类图: 1. 首先看“动物”矩形框,它代表一个类。该类图分为 三层,第一层显示类的名称,如果是抽象类就要用斜体显示。第二层是类的特性,通常就是字段和属性。第三层是类的操作,通常是方法和行为。

注意前面的符号,‘+’表示public, ‘—’ 表示private, ‘#’表示protected. 2. “飞翔”矩形框表示一个接口图,它与类图的区别主 要是顶端有《interface》显示,第一行是接口名称,第二行是接口方法。接口还有另一种表示方法,俗称棒棒糖表示法,就是唐老鸭类实现了“讲人话”的接口。 interface IFly interface Ilanguage { {

void Fly(); void Speak(); } } 3. 动物,鸟,鸭,唐老鸭他们之间都是继承的关系,继 承关系用空心三角形+实现来表示。 4.“大雁”实现了“飞翔”接口。实现接口用空心三角形+虚线来表 示。(注:下面的图中应为空心三角形)

class Bird:Animal clas s WideGoose:IFly { { //继承动物 类 //实现飞翔接口 } } 5. 企鹅与气候有很大的关系,企鹅需要“知道”气候的 变化,需要“了解”气候规律。当一个类“知道”另一个类时,可以用关联(association)关系。关联关系用实线箭头来表示。 class Penguin :Bird { private Climate climate;//在企鹅Penguin中,引用到气候Climate对象 }

UML考试试题及答案

二、单选题 (A )不是UML 体系的组成部分。 A. 应用领域 B .规则 以下(C )不是RUP 中的优秀方法。 A. 迭代的开发软件 C .配置管理与变更管理 在UM 冲,( )把活动图中的活动划分为若干组,并将划分的组指定给对象, 的活动,它能够明确地表示哪些活动是由哪些对象完成的。 A A. 泳道 B.同步条 C.活动 用例之间有几种不同的关系,下列哪个不是他们之间可能的关系( )。 B A . include B . connect C . generalization D . extend event 表示对一个在时间和空间上占据一定位置的有意义的事情的规格说明, 下 面哪个不是事件的类型 ( ) C A .信号 B.调用事件 C .源事件 D.时间事件 通常对象有很多属性,但对于外部对象来说某些属性应该不能被直接访问,下面哪个不是 UML 中的类成员访问 限定性( )。 D A . public B . protected C . private D . friendly 在UML 中,类之间的关系有一种关系称为关联,其中多重性用来描述类之间的对应关系,下面哪个不是其中之 一( )。 A A . *??? * B. 0…* C . 1 ...* D. 0. (1) 关于包的描述,不正确的是( A. 和其他建模元素一样,每个包必须有一个区别于其他包的名字 B. export 使一个包中的元素可以单向访问另一个包中的元素 C. 包的可见性分为 public 、protected 、private D. 包中可以包含其他元素,比如类、接口、组件、用例等等 2008-2009 第 2 学期 UML 与面向对象方法学》复习题 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 下面(D )属于UML 中的动态视图。 A .类图 B.用例图 C . 对象图 D.状态图 C .基本构造块 D.公共机制 在UML 中,有四种事物,下面哪个不是( A .结构事物 B.静态事物 )。 C .分组事物 D.注释事物 B .不断的验证软件质量 D .支持正向与逆向工程 这些对象必须履行该组所包括 D.组合活动 )。 B Use Case 用来描述系统在事件做出响应时所采取的行动。 中, 创建新订单和更新订单都需要检查用户帐号是否正确。 查用户帐号”之间是( )关系。 C 用例之间是具有相关性的。 在一个“订单输入子系统” 那么, 用例“创建新订单”、“更新订单” 与用例“检

UML类图各符号含义

UML类图各符号含义 类图基本符号可拆分为虚线,箭头,实线,空心右三角,实心右三角,空心菱形和实心菱形。由这些基本的图形进行组合构成了类图的基本符号。这里要注意这几个符号的顺序,代表了类与类之间关系的耦合程 度。越向右耦合度越高。 其中虚线+箭头是表示即依赖的关系,实线+箭头表示关联的关系,虚线+空心右三角表示implements,实线+空心右三角表示的是泛化,即类的继承关系。实线+空心菱形表示的是聚合的关系,实线+实心菱形则表示 组合的关系。 另外一点是在看类图的时候要注意。类图的思想其实也还没有脱离面向对象的思想,以某个类为中心,有些线是射入的而有些线是射出的。射入的线表示的是这个类被哪些类所调用而射出的线则表示该类调用了哪些类,包括泛化,关联,依赖,聚合和组合四种关系。这类似于离散数学中有关图部分的描述。 1. 类(Class):使用三层矩形框表示。 第一层显示类的名称,如果是抽象类,则就用斜体显示。 第二层是字段和属性。 第三层是类的方法。 注意前面的符号,‘+’表示public,‘-’表示private,‘#’表示protected。 2. 接口:使用两层矩形框表示,与类图的区别主要是顶端有<>显示。 第一行是接口名称。 第二行是接口方法。 3. 继承类(extends):用空心三角形+实线来表示。 4. 实现接口(implements):用空心三角形+虚线来表示 5. 关联(Association):用实线箭头来表示,例如:燕子与气候 6. 聚合(Aggregation):用空心的菱形+实线箭头来表示 聚合:表示一种弱的‘拥有’关系,体现的是A对象可以包含B对象,但B对象不是A对象的一部分,例如: 公司和员工 组合(Composition):用实心的菱形+实线箭头来表示 组合:部分和整体的关系,并且生命周期是相同的。例如:人与手 7. 依赖(Dependency):用虚线箭头来表示,例如:动物与氧气 8. 基数:连线两端的数字表明这一端的类可以有几个实例,比如:一个鸟应该有两只翅膀。如果一个类 可能有无数个实例,则就用‘n’来表示。关联、聚合、组合是有基数的。

学生管理系统建模

学生管理系统建模 步骤 (1)分析并得出系统的主要参与者与主要用况,并画出系统的用况图。为所有的用况撰写脚本,将脚本放于单独的word文档中,并将文档与相应的用况相连接。 1)确定系统的使用者 通过对上面问题陈述的分析,我们可以发现系统的使用者主要有Student和Professor,同时还需要Registrar来维护这个系统。此外,由于需要打印Student列表,故需要参与者Billing System;由于需要自动维护课程目录的改变,故需要参与者Course Catalog。因此应该在用况视图中添加如图5-15所示的参与者。 2)确定系统的用况 通过对上面问题陈述的分析,我们可以知道参与者Student主要要做view report cards和register for courses 两件工作,而参与者Professor主要要做Select Courses to Teach和Submit Grades两件工作。参与者Registrar 要维护信息,即要做Maintain Professor Information和Maintain Student Information两件工作,此外Registrar 还要控制注册何时结束,即要做Close Registration的工作。由于安全性的原因,要使用系统还需要首先做Login的工作。因此,应在用况视图中添加如图5-16所示用况。 3)用况图 通过上面的分析我们确定了系统中的参与者,用况以及它们之间的关系,根据这些关系,可以画出系统用况视图中的Main用况图,如图5-17所示:

(2)实现关键用例。做出相应的顺序图和协作图,对于每一个协作,说明其静态结构和动态结构。 为了说明协作的动态结构,我们可以画出其顺序图与协作图。对于Login协作而言,由于只有一个边界类LoginForm与系统的使用者交互,而任何系统的使用者都必须登陆,故可画出其顺序图和协作图,如图5-18和图5-19所示。

uml课后习题答案

第一章系统建模与分析设计的演变 课后习题: 1、A 2、C 3、D 4、B 5、软件按照其工作方式可划分为实时处理软件、分时处理软件、交互式软件和批处理软件。 6、软件生存周期由软件的定义、软件的开发和软件的使用维护和更新换代三部分组成。 7、软件开发模型有瀑布模型、增量模型、螺旋模型、智能模型和快速原型模型等五种主要模型 8、面向对象技术采用以类为中心的封装、继承、多态等不仅支持软件复用,而且使软件维护工作可靠有效,可实现软件系统的柔性制造。 9、UML的优点是:唯一性、连续性、维护性、复用性和完善性。 第二章统一建模语言UML 1、A 2、B 3、C 4、D 5、B 6、UML分析和设计模型由三类模型图表示,三类模型图是:用例模型图、静态模型图和动态模型图。 7、UML的软件统一开发过程,即生命周期按时间顺序可以划分为,开始,详细设计,系统构造和移交四个阶段及阶段中一系列的循环重复。 8、UML开发过程是一种二维结构软件开发过程,软件项目开发过程流程包括的核心工作内容是,分析,设计,实现,测试和配置 9、UML中的五个不同的视图可以完整地描述出所建造的系统,这五种视图是用例视图、逻辑视图、构件视图、进程视图和配置视图。 10、UML中有10中基本图可以完整地描述出所有建造的系统,这10中视图是用例图、类图、对象图、包图、构件图、配置图、序列图、活动图、状态图和合作图。 第三章需求分析与用例建模 习题: 1、B 2、A 3、C 4、D 5、B 6、A 7、A 8、UML软件开发过程需求分析阶段产生的模型由三类模型图表示。他们是:用例模型图、静态模型图和动态模型图。 9、CRC卡中的描述由类名、类特征、类类型、责任和协作者共五部分组成 10、软件项目的目的的可行性研究分析中,技术可行性研究包括风险分析、资源分析、技术分析三部分组成 11、在UML软件开发过程的需求分析阶段,建立用例模型的步骤分为,确定系统的范围和边界,确定系统的执行者和用例,对用例进行描述,定义用例之间的关系和审核用例模型。12、用例图中以实践方框表示系统的范围和边界,在熊边界内描述的是用例,在边界之外描述的是执行者 13、用例模型中的执行者可以是“人”执行者也可以是“外部”系统执行者 14、用例模型中的用例之间的关联有使用关联、扩展关联。包含关联和继承关联 第四章系统分析与对象类建模 习题

类图例子

UML类图几种关系的总结 在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency) 1. 泛化(Generalization) 【泛化关系】:是一种继承关系,表示一般与特殊的关系,它指定了子类如何特化父类的所有特征和行为。例如:老虎是动物的一种,即有老虎的特性也有动物的共性。 【箭头指向】:带三角箭头的实线,箭头指向父类 2. 实现(Realization) 【实现关系】:是一种类与接口的关系,表示类是接口所有特征和行为的实现. 【箭头指向】:带三角箭头的虚线,箭头指向接口

3. 关联(Association) 【关联关系】:是一种拥有的关系,它使一个类知道另一个类的属性和方法;如:老师与学生,丈夫与妻子关联可以是双向的,也可以是单向的。双向的关联可以有两个箭头或者没有箭头,单向的关联有一个箭头。 【代码体现】:成员变量 【箭头及指向】:带普通箭头的实心线,指向被拥有者 上图中,老师与学生是双向关联,老师有多名学生,学生也可能有多名老师。但学生与某课程间的关系为单向关联,一名学生可能要上多门课程,课程是个抽象的东西他不拥有学生。

下图为自身关联: 4. 聚合(Aggregation) 【聚合关系】:是整体与部分的关系,且部分可以离开整体而单独存在。如车和轮胎是整体和部分的关系,轮胎离开车仍然可以存在。 聚合关系是关联关系的一种,是强的关联关系;关联和聚合在语法上无法区分,必须考察具体的逻辑关系。 【代码体现】:成员变量 【箭头及指向】:带空心菱形的实心线,菱形指向整体

学生成绩管理系统UML课程设计

UML课程设计 学生成绩管理系统 学院:计算机 专业:软件工程 学号: 姓名:兰青海 1、可行性研究报告?错误!未定义书签。 2需求规格说明?错误!未定义书签。 3、设计说明 3、1功能设置 ........................................................... 错误!未定义书签。3、2模块划分?错误!未定义书签。 3、3识别参与者与用例?错误!未定义书签。 4、其她得uml图10? 5、系统数据库设计 ...................................................................... 125、1数据库得需求分析13? 5、2数据库得逻辑设计 (14) 6.参考文献: ................................................................ 错误!未定义书签。1、可行性研究报告 随着网络通信技术得迅速发展与信息技术得广泛应用,计算机得应用已普及到经济与社

会生活得各个领域.教育领域也不例外,现今已经出现了各种远程网络在线教育系统、图书馆管理系统、学籍管理系统……其中学生成绩管理就是任一院校都不可缺少得部分,它得内容对于学校得决策者与教学管理者来说都至关重要,而传统得人工管理方式效率较低,为数据得查询、更新与维护代来了极大得不便。所以学生学籍管理信息系统得开发与应用就是必要得,它能够为管理人员提供充足得信息与快捷得查询手段,提高学校学籍管理得效率 系统得可行性分析 (1)系统实施运行得可行性: 各教师,学生都已熟练掌握计算机得基本实用方法与操作技能,对新系统得开发,表现出极大得热情。提出了很多好得建议与要求。 (2)技术可行性: 校园网已正常运行;开发人员已熟练掌握开发工具。技术上实现系统就是可行得。 (3)经济可行性: 校园内部局域网络已经建成;硬件投入不需要很大. 2、需求规格说明 2、1对功能得规定?2。1.1:输入一个同学得姓名与学号,系统能够输 出学生所在得学院、班级、成绩等学生信息 2.1。2:对于已经录入学生成绩管理系统得学生信息可以进行修改,例如:删除、添加。对于没有录入学生成绩管理系统得学生信息可以添加到系统(此项功能得实现需要对用户身份进行核查) 2.1。3:能够对学生得信息进行保存,即退出系统时,成绩成绩不能丢失?2、1、4:能够对学生成绩进行拷贝 2、1、5:能够登入与退出系 2、2对性能得规定 能够比较准确快捷地完成上述学生成绩管理系统所要求得功能即可。 3。设计说明 3、1系统描述 对于该系统得简要说明如下:此程序就是常驻内存得;因为学号就是学生得唯一标识符,所以学生姓名可以重复,但学号不可重复;本系统对数据修改时,会对数据进行覆盖 3、2功能 功能:此学生成绩管理系统基本能够实现学生成绩得输入、输出、插入、删除、

类图课堂问题及答案-推荐下载

、、简述类的定义,以及类的三要素。 答:类是对一组具有相同属性、操作、关系和语义事物的描述。类的三要素是:类的名称、属性、操作。 、、类的属性和方法的可见性有哪些?UML中如何表示? 答:类的属性和方法的可见性有protect(符号“#”),private(符号“-”),public(符号“+”) 、、已知三个类A.B和C.其中类A由类B的一个实类和类C的1个或多个实类构成.请画出能够正确表示类A,B和C之间关系 的UML类图. 、、根据以下描述画出类图,并注明多重性关系:一个学生可以选修多门课程,也可能没有任何课程;一门课程可以被多个学生 选修;一个老师可以教多门课程或者不教课;每门课程至少有一 个老师,也可以有多个老师任教;每门课程可以有0或1本教 材,每本教材只能用于一门课 程。

、、现有一系统需要对商品进行管理,包括添加,删除商品,修改商品信息三项功能,画出系统类图。(商品信息包括商品编号,商品名称,价格,生产厂商等) 、、如果现在系统需求发生变化,需要能够对损坏商品进行打折,以及可以按照商品的颜色和外形进行查询,则系统类图应该如何修改? 、、根据下面的代码画出Invoice类的类图,要求标明各属性的类 型和可见性以及类方法。 public class Invoice { public double amount; public Date date = new Date(); public string customer; public string specification; public string administrator = “unspecified”; static private int number_of_invoices()=0; public invoice(); { number_of_invoices++; } public void print() {

相关文档