uml期末复习(1)
更新时间:2024-03-01 10:21:01 阅读量: 综合文库 文档下载
- uml期末总结推荐度:
- 相关推荐
第一章
1、UML(Unified Modeling Langeage)是一种可视化的建模语言,提供了一种标准的、易于理解的方式描述系统的实现过程,从而实现了用户与设计者之间的有效交流。
2、定义系统的物理元素,用于描述事物的静态特征,包括类、接口、协作、用例、主动类、组件和节点。 3、行为建模元素包括哪些?
反映事物之间的交互过程和状态变化,包括交互图和状态图。 4、 组织建模元素包括哪些?
子系统、模型、包、框架等。 5、 关系元素包括哪些?
关联、泛化、组成、实现、聚集、依赖、约束 6、对于UML的描述,错误的是( A、C )。 A:UML是一种面向对象的设计工具。
B:UML不是一种程序设计语言,而是一种建模语言。
C:UML不是一种建模语言规格说明,而是一种表示的标准。
D:UML不是过程,也不是方法,但允许任何过程和方法使用它。
7、从系统外部用户角度看,用于描述系统功能集合的UML图是用例视图。 8、对如下的用例图的功能进行简单描述。
Browse GoodsCustomerBuy 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:在浏览器中的模型元素发生变化时,可以自动更新模型中的相关元素
D:只有在浏览窗口中才能把模型元素从模型中永久删除 6、Rose是什么的缩写?
Rational Object-oriented Software Engineering
第三章
1、识别“图书管理系统”中的参与者?
系统管理员(Administrator) 图书管理员(Librarian) 读者(Reader)
2、识别“图书管理系统”的用例?
用户管理(Manage User) 图书管里(Manage Book) 读者管理(Manage Reader) 借阅管理(Borrow-Lend)
3、下列关于使用用例的目的,不正确的是( D )? A:确定系统具备哪些功能;
B:为系统功能提供清晰一致的描述; C:为系统验证工作奠定基础;
D:能够减少程序员的编码工作量。
extension point OverdeueBookReturn Book<
4、基本用例可以单独存在,但在一定条件下,它的行为可以被另一个用例的行为扩展; 按照基本用例指定的条件,如果是扩展用例,则可以把它的行为插入到扩展点定义的位置。
5、在一个“订单输入子系统”中,创建新订单和更新订单都需要检查用户账号是否正确,那么它们与“检查用户账号”之间是什么关系?
包含关系
6、 在“成绩管理系统”中,“查询成绩”和“网上查询成绩”用例之间是什么关系?“输入成绩”和“登录系统”
用例之间是什么关系? 扩展关系、包含关系
6、以下是“大学注册系统”的问题描述,创建其用例模型:
(1)沈阳师范大学的教学机构由学院组成,每个学院包含几个系。每个学院管理一种学位,每种学位都有若干必修课和若干选修课。每门课程都处于一个给定的级别,并且有一个学分值。
(2)学生可以组合所提供的课程,形成他们的学习计划(注册课程)。一方面适合他们的个人需要,另一方面完成了这些课程他们就能得到他们所注册的学位。学生对课程的选择可能受事件冲突、最大班级人数等条件的限制。 (3)在注册阶段,系统必须接受学生所提出的学习计划,并验证他们的前提条件、时间冲突、班级大小、特别批准等。学生提出的学习计划要输入在线注册系统中,系统要检查学习计划的一致性,并且报告其中存在的问题。 完成下列要求
确定系统的参与者; 确定系统的用例;
说明用例图所实现的系统功能; 以“学习计划为例”,进行用例描述(写出脚本)。
登录学生查询考试成绩<
识别参与者
为了识别“大学注册系统”的参与者,应回答前面提到的一些问题。
谁将使用系统的主要功能?
注册管理员、学生
谁将需要系统的支持来完成他们的工作?
注册管理员、学生
谁必须维护、管理和确保系统正常工作?
系统管理员
谁将给系统提供信息、使用信息和维护信息?
学生、注册管理员
系统需要与其他系统交互吗?
无
谁或者什么对系统产生的结果感兴趣?
学生、注册管理员
确定参与者
候选参与者:
学生、注册管理员、系统管理员
从用户的角度观察系统,用户并不了解系统管理员的工作内容及作用,为模型的清晰、简洁,暂不考虑系统管理员对系统的需求。
最后确定参与者:学生、注册管理员 学生要求系统为他提供什么功能?
显示考试成绩、学习计划 学生的特定任务是什么?
查看注册课程、提交学习计划
学生需要读取、创建、撤销、修改或存储系统的某些信息吗?
学习计划有关的信息
是否任何一个参与者都要向系统通知有关突发性的、外部的改变?或者必须参加统治者关于系统中发生的事件?
注册管理员需要通知系统状态 系统需要哪些输入/输出?
考试成绩、学习计划
Distribute Report Cards<
9、在UML中,用例的定义为:对一组动作序列的描述,系统通过执行这一组动作序列为参与者产生一个可观察的结果。
10、用例之间的包含关系,可以用虚线表示,沿线上再加上一个用双尖括号括起来的:include。 11、以下关于泛化关系的描述,错误的是( D )。
A泛化表示一般模型元素和更具体模型元素之间的继承关系; B用例之间存在泛化关系; C参与者之间存在泛化关系;
D用例和参与者之间存在泛化关系。 12、关于参与者,错误的说法是(C )。 A 参与者是与所建系统交互的人或物;
B 参与者可以是实际的人,也可以是其他系统或时间; C参与者是系统的一部分,是用例图的重要组成部分; D在参与者之间可以存在泛化关系。 13、以下关于关联的描述,正确的是( D ):
A关联可以在用例之间使用,用来表示用例之间的信息流动; B关联用直角直线表示,也可以在直线上加单箭头或双箭头; C关联关系上的箭头,用于表示信息的输入和输出方向; D关联关系表示一种通信路径,它存在于参与者与用例之间,关系方向显示的不是通信的方向,而是谁启动信息。 14、在Rose模型中,( A )关系不属于用例之间的关系。 A关联; B包含关系; C扩展关系; D泛化关系。
15、根据问题的陈述,完成后面的要求:
图画编辑器是一种交互式的图形编辑器,提供所创建元素的图形显示。鼠标和键盘用作输入设备。用户可以使用它创建由图形元素(直线、矩形、椭圆及文本)组成的图形。
用工具控制编辑器的运作模式。有两种类型工具可用:选择工具和创建工具,但每次只能使用一种工具。 当选择工具处于活动状态时,可以用它选择现有的图画,并进行相应的操作。
当创建工具处于活动状态时,当前选择区域为空。针对特定的创建工具,光标呈现出不同的形状,然后用户就可以创建所选择类型的元素。
Create DiagramCreate Graphical ElementUserCreate Text ElementCreate Element<
16、下面是一个售点系统产品的需求,创建用例图。
系统允许管理员通过从磁盘加载存货数据来运行存货清单报告; 管理员通过从磁盘加载、向磁盘保存存货数据来更新存货清单; 销售员记录正常的销售;
电话操作员是处理电话订单的特殊销售员; 任何类型的销售都要更新存货清单;
如果交易使用信用卡,那么销售员需要核实信用卡; 如果交易使用支票,那么销售员需要核实支票。 要求如下:
① 确定系统的参与者; ② 确定系统的用例; ③ 细化每个用例;
④ 确定每个用例中的泛化。 ⑤ 创建用例图。 参考解答
确定系统的参与者;
1、管理员——administrator
2、电话操作员——telephone operator 3、销售员——sales clerk 4、后两者之间是泛化关系 确定系统的用例:
管理员
① 运行存货清单报告(run inventory reports)
加载存货数据(load inventory data)——include ② 更新存货清单(update inventory)
保存存货数据(load inventory data)——include
确定系统的用例:
电话操作员
电话订单(phone order) 销售员——sales clerk
销售(walk-in sale) 销售(sale)——泛化关系
核实信用卡(verify credit card)——extends 核实支票(verify check)——extends
更新存货清单(update inventory)——include
<
Payroll(薪水管理员)
18、该参与者在Payroll系统上使用的用例有哪些?
Print Weekly Payroll Add Employee to payroll
Remove Employee from Payroll Edit Employee Within Payroll Change Payroll Amount(更新数量) Manage Tax Rates(管理税率)
19、为Payroll系统建立用例图模型。
Print Weekly Payroll<
1、交互图分为两种:顺序图和协作图。其中,顺序图强调消息发送的时间顺序。 2、在顺序图中,一个对象的生命周期结束时,在其生命线上打上一个×。 3、交互图中,消息一般对应着接收对象所属类或超类中定义的某一操作。 4、生命线是从对象引出的向下方的垂直虚线,它代表了对象的生存时间。 5、从严格的意义上讲,下列4个选项中不属于顺序图的内容是( B )。
A对象 B. 参与者 C消息 D. 控制焦点
6、为创建一个数据库对象,把该对象连接到一个数据源,然后查询对象获得结果集的用例建模。
1.确定工作流
情形一:
对象连接成功地与数据源建立连接; 查询对象成功地获得结果集; 情形二:
对象连接没有与数据源建立连接; 查询对象没有获得结果集;
2. 确定对象
数据库对象(Database) 连接对象(Connection) 数据源(Oracle DB 10g) 结果集(ResultSet)
7、在顺序图中,如何销毁一个对象?
在对象的生命线的终点处放置一个“X”符号,该点是对删除或取消消息的回应。
Object11: method()Object2
8、顺序图和交互图的关系类似于下面哪一种类型的关系?( C ) A、类和对象 B、UML和Java
C、C++和高级程序设计语言
9、在顺序图中表示消息时,必须要有消息顺序号。( 对 ) 10、对象是类的实例,对象之间的链接是类之间的关联的实例。
11、在协作图中,消息用连接两个对象之间的关联线附近的箭头表示,箭头指向接受消息的对象。 12、下面( A、C )的建模元素不能在协作图中表出来。
A状态 B. 消息序号 C. 活动 D. 多对象
13、顺序图和交互图的关系类似于下面( C )类型的关系。
A类和对象 B. 类和参与者
C Java和高级程序设计语言 D. UML和Java 14、协作图是由对象、消息、和链接等组成。
15、在协作图中的链是两个或多个对象之间的独立连接,是关联的实例。
16、协作图通过各个对象之间的组织交互关系,以及对象之间连接,表达对象之间的链接。 17、for循环——绘制一个带for循环脚本的顺序图,表示如下语句: 消息发起者为A
for(int i=0; i for ( int i =0; i < n; i++)A1: excute(i)B 18、while循环——绘制一个带while循环的顺序图,表示如下语句: //消息发起者为查找数据库的对象:Searcher while(value.notFound( )) { value=database.search(key); } while ( value.notFound() ) SearcherDatebase1: search() 19、一名参与者通过击键发起了交互序列,并且在序列中引发消息。交互序列如下: GUI将击键事件通知给操作系统(OS); OS接着通知CPU; OS更新GUI数据; CPU又通知图形卡(Video Card); 图形卡向显示器(Monitor)发送一个消息; 显示器将字母或者数字显示在屏幕上,给用户提供了图形化的反馈信息。 1: Keystroke : KeyStroke : GUI2: notify(keystroke) : Operating System : Monitor6: feedback()3: update(keystroke)5: display(keystroke) : CPU : Video Card4: notufy(keystroke) 20、图书管理员添加书籍的协作图 addItem()——添加书籍的方法; find(String)——根据书籍名查找相应书目的方法; update()——修改某类书目下书籍数量的方法; 1: addItem() : MaintenanceWindow : Administrator : Title3: update() : Item2: find(String) 21、图书管理员处理借书的协作图 identify_borrower()—验证借阅者身份的方法; find_reservation()—查找预定信息的方法; find(Borrower,Title)—根据借阅者和借阅的书籍名找到相应预定信息的方法; borrow()—处理借书的方法; update()—更新某一书目下书籍数量的方法; check_if_max( )—检查借阅凭证所借书籍书目是否已经超过最大限额的方法。 findReserva...1: identifyborrower() : LendWindow : Administrator3: borrow() : Title5: borrow()4: update()2: find(borrower,Title)check_if_m... : Reservation : borrower : Item 22、借阅者预定书籍的协作图: Identify_borrower():验证借阅者身份的方法; Find(String):根据书籍名称查找书目信息的方法; Reserve():预定某一书目下的书籍的方法; Create(Title,Borrower):修改预定信息的方法。 : Title : Item1: identifyBorrower()2: find(String) : Administrator3: reserveTitle() : ReservationWindow : Reservation4: reserve()5: create(Title,Borrower) 作业: 1. 什么是顺序图? 顺序图用于显示按照时间顺序排列的对象进行交互作用,特别是用于显示参与交互的对象,以及对象之间消息交互的顺序 2.3种类型的消息分别是什么?它们之间的区别是什么? 调用消息、异步消息、返回消息 调用消息:发送者把控制传递给消息的接受者,然后停止活动,等待消息的接收者或者返回控制 异步消息:发送者通过消息把信号传递给消息的接收者,然后继续自己的活动,不必等待接收者返回消息或控制 返回消息:表示从过程调用返回 3.建模顺序图的4个步骤是什么? ① 确定工作流 ② 从左到右布置对象 ③ 添加消息和条件以便创建每一个工作流 ④ 绘制顺序图 4.列举用例图和顺序图之间的区别是什么? 顺序图从时间的角度描述对象之间的交互,而协作图从对象之间协作的观点描述对象之间的交互。 顺序图更强调时间,比较适合用来描述实时行为,协作图则突出动态行为发生的语境,时间在其中是隐式描述的。 顺序图可以清楚地表达对象之间交互的时间顺序,但没有明确表达对象之间的关系,协作图能清楚地表达对象间的关系,但时间顺序必须从顺序号获得。 顺序图常用于表示解决方案,而协作图常用于过程的详细设计。 顺序图着重描述对象按时间顺序的消息交互,协作图着重描述系统成分(对象)之间如何协同工作。 5.调用消息和异步消息之间的区别是什么? 调用消息的接收者必须是一个被动对象,还必须是一个被动对象,还必须以一个与之配对的返回消息,与调用消息配对的返回消息可不用再画出,调用消息用一个实心箭头表示。 异步消息的发送者和接收者必须是并发工作的,异步消息用一个两条线的箭头表示。 6.指出从自动取款机取钱时一些从属的工作流。 ①插卡,输入密码,密码正确,输入取出金额,取钱成功,退卡 ②插卡,输入密码,密码正确,输入取出金额,卡内金额不足,取钱失败,退卡 ③插卡,输入密码,密码不正确,取钱失败,退卡 7.根据下面的场景描述,绘制一张关于顾客从饮料自动售货机中购买物品的协作图。 顾客(User)先向饮料自动售货机的前端(Front)中投入钱币; 顾客选择要购买的饮料; 售货机的钱币识别器(Register)接收顾客的钱币; 识别器控制售货机的出货器(Dispenser)将一罐饮料送到前端。 第五章 1、类图用于对系统的静态设计模型建模,涉及到对系统的词汇、协作或模式建模。类图也是组件图和部署图的基础。 2、边界类一般从用例图中的参与者与系统的交互识别 3、输出控制的Public选项表示:系统中所有其他类都能访问这个类。 4、如果把一个类的类名成斜体字,则表示这是一个抽象类,即不能由这个类直接产生实例。 5、类和对象的关系类似于下面哪种类型的关系?( A) A. 关联(association)和链接(link) B. 用例(Use case)和参与者(actor) C. 包(package)和类图(class diagram) 6、在下列 4 个类图中,哪一个类图中的类Order所生成的代码具有以下形式?( B) public class Order { public Customer reci; } 7、对象图的模型有对象和链接(link)。对象是类的实例;而对象之间的链接是类之间的关联实例。 8、类的实例是对象,而用例的实例是脚本。 9、如果需要描述类UserGroup和类User之间的关系本身的某些特性,这些特性既不适合放在类UserGroup中,也不适合放在User中,那么可以通过创建一个关联类来描述这些特性,并通过一条虚线使这个类和这个关系相联系。 10、画出模型图,能正确表示出以下要求: ① 一个雇员最多有一个经理; ② 经理管理多个雇员; ③ 经理不管理任何雇员。 11、沈阳师范大学是由多个学院组成。 12、在Windows操作系统下,窗口是由菜单和按钮组成的。 13、一个电子邮件消息由邮件头、邮件体和未指明数目的附件构成的。描述它们之间的关系。 1Header1MailMessage1Body**Attachment 14、类图用于对系统的静态建模,涉及到对系统的词汇、协作或模式建模。类图也是组件图和部署图的基础。 15、边界类一般从用例图中的参与者与系统交互识别。 16、输出控制的Public选项表示:公有的。 17、如果把一个类的类名写成斜体字,则表示这是一个抽象类,即不能由这个类直接产生对象(实例)。 18、在类图中,一共包含了以下几种模型元素,分别是泛化、依赖关系、接口和实现关系、关联关系以及聚集和组成关系。 19、在模型图中,角色位于关联线的一端,用于指明有几个远端对象可以和近端的多少个对象发生关联。 20、下列关于类和类图的说法正确的是:( C)。 A. 类图是由类、构件等模型元素以及它们之间的关系构成的。 B. 类图的目的在于描述系统的运行方式,而不是系统如何构成的。 C. 一个类图通过系统中的类以及各个类之间的关系来描述系统的静态方面。 21、计算机由中央处理器、内存、硬盘、显示器、键盘、鼠标等组成。那么计算机类其他类之间的关系是( B、C )。 A. 泛化关系。 B. 组成关系。 C. 聚集关系。 22、假设类ClassB是ClassA的子类,其中ClassA的属性和方法如图所示,则ClassB能够访问的有哪些? 23、如下图所示,最上面的对象名称是什么?该图表示的意思是什么?绘制出与其相对应的类图。 China: CountryFujian:ProvinceSichuan:Province 24、一个文件系统由根目录下面的一组文件组成,用户可以拥有自己的目录和文件,也可以读取文件和建立自己的主目录。 绘制一张类图,对一个文件系统的某些方面建模。为每个角色设置正确的多重性。 FileSystem0..1-root1Directory11Contains**+subdirectory1User1**File 25、创建“大学注册系统”的结构模型(类图): 了解用户需求; 识别对象和类,定义其属性和操作; 刻画类的层次结构; 识别类之间的关系; 递进地重复任务1—4,直至创建模型 1.识别对象 大学注册系统中的类: 学生(Student) 学位(Degree) 课程(Course) 开设课程(CourseOffering) 学习计划(StudyProgram) 2.识别属性 学生:姓名、学号、住址、出生日期、类型等; 学位:名称、学分、总学分 课程:编号、课程名、学分、课程级别 开设课程:日期、学期、班级人数限制 学习计划:课程级别、日期、学期 3.识别关联 增加一个“学院记录”类——记载学生以往的学习情况; 提供的课程对象中增加了派生属性——选择该课程的学生人数 作业: 根据下面关于编程语言部分语法的描述,构建一张类图,显示由该语言编写的程序的结构。 1.模块由特性集合组成; 2.一个特性可以是一个变量、一个子例程序或者一个嵌套的模块; 3.子例程序由声明和语句两部分组成; 4.子例程序的局部特性可以在声明部分进行声明,语句部分则由一组非空的语句序列组成; 5.语句包括循环、条件或者赋值语句,而每个赋值语句都包含一个对将被赋值的变量的引用。 第六章 1. 以“远程网络教学系统”为例,在该系统中参与者为学生、教师和系统管理员; 学生包括登录名称、登录密码、学生编号、性别、年龄、班级、年级、邮箱等属性; 教师包括登录名称、登录密码、姓名、性别、教授课程、电话号码和邮箱等属性; 系统管理员包括用户名、密码、邮箱等属性。 根据这些信息,创建系统的模型图。 2. 绘制一张类图,描述如下关于一个学校的信息系统的事实,并将类图转换为数据库中的表。 学校是由若干个系和学生组成的; 每个系有若干个教师; 每个系开设若干个课程; 同一门课程也可以由不同的系开设; 一个教师可以教若干门课程,同一门课程也可以由若干个教师讲授; 每个学生可以选修的课程门数不限,听每门课程的学生人数也不限。 学校是由若干个系和学生组成的; 2)每个系有若干个教师; 3)每个系开设若干个课程; 4)同一门课程也可以由不同的系开设; 5)一个教师可以教若干门课程,同一门课程也可以由若干个教师讲授; 6)每个学生可以选修的课程门数不限,听每门课程的学生人数也不限。 3.根据下面关于编程语言部分语法的描述,构建一张类图,显示由该语言编写的程序的结构。 1)模块由特性集合组成; 2)一个特性可以是一个变量、一个子例程序或者一个嵌套的模块; 3)子例程序由声明和语句两部分组成; 4)子例程序的局部特性可以在声明部分进行声明,语句部分则由一组非空的语句序列组成; 5)语句包括循环、条件或者赋值语句,而每个赋值语句都包含一个对将被赋值的变量的引用。 1)模块由特性集合组成; 2)一个特性可以是一个变量、一个子例程序或者一个嵌套的模块; 3)子例程序由声明和语句两部分组成; 4)子例程序的局部特性可以在声明部分进行声明,语句部分则由一组非空的语句序列组成; 5)语句包括循环、条件或者赋值语句,而每个赋值语句都包含一个对将被赋值的变量的引用。 第七章 1、画一个状态图,演示模型图编辑器的选择工具如何响应定位、移动一个元素和调整该元素大小的消息; 要求写出具体步骤。 2、计算机的状态可以定义为:开机、启动、工作中、空闲、关机和离线。 3、怎样用状态图描述? 初态终态转移状态名称状态 4、求一元二次方程的根 求一元二次方程的根的类的属性值包括a,b,c,x1,x2; 求一元二次方程的根的类的状态图。 状态1: 建立一元二次方程 (a,b,c系数已确定,x1,x2不确定)
正在阅读:
uml期末复习(1)03-01
(新人教版)2019年高考历史二轮专题复习 专题训练十四 第二次世界大战 - 图文12-25
家庭室内装修风水知识08-14
自考法理学笔记03-10
打印机的类型有哪些?02-09
《计算机硬件技术基础》实验参考程序206-09
洛嘎活佛简介20140426 - 图文09-19
关于新型农村合作医疗的的调查问卷09-05
简短的教师节诗歌03-30
- 第一单元测试题 - 图文
- 中国移动IDC建设及业务开展思路探讨
- 重点岗位应急处置卡 - 图文
- TG公司机器设备价值评估报告书
- 数控答案
- 2015年教师培训总结
- 2013届高三二轮专题训练:辨析并修改病句(八)(全国)
- 新媒体、新技术在教育教学中的应用-最新教育资料
- 18个集团军的历史沿革
- 天津万科水晶城项目可行性研究报告 - 图文
- 年产5万吨生物质颗粒燃料项目可研报告20120723
- 东营市物业管理办法
- 思修习题总汇
- 汽车售后服务顾问接待话术
- 18学年高中物理第2章能的转化与守恒第3节能量守恒定律课下作业(
- 国家安监局关于煤矿防突规定
- 浙江省中小学教师录用考试小学数学考试大纲
- 小学美术六年级上册第9课小小果壳箱教案设计
- 电磁组-上海电力学院电自二队技术报告 - 图文
- 世界各国高速动车组技术的发展现状 - 图文