《uml系统建模基础》课后问题解答(清华大学出版社)
第一章是面向对象设计和UML。
1.
(1)基本构建块中UML规则的通用机制
(2)名称属性操作
(3)封装继承多态性
(4)继承
(5)基于组件的瀑布模型喷泉模型XP开发模型。
2.多项选择问题
(1)C
(2)A B C D
(3)A B C D
(4)公元前
(5)答
3.简答题
(1)类是具有相同或相似结构、操作和约束规则的对象的集合,而对象是某个类的具体实例,每个类都是具有某种* * *特征的对象的抽象。类和对象的关系就像模具和铸件的关系一样。类的实例化结果是对象,而类的抽象是类。一个类描述了一组具有相同特征和行为的对象。
(2)1.UML是一种语言。2.UML是用来建模的。3.UML是一个统一的标准。
(3)建模可以帮助我们根据实际情况或者我们需要的形式将系统可视化;提供详细解释系统结构或行为的方法;给出模板,指导制度建设;记录我们做出的决定。
建模时应遵循以下原则:选择创建什么模型,对如何解决问题、如何形成解决方案影响深远;每个模型可以用不同的精度等级来表示;最好的模型是与现实相联系的;单一模式是不够的;最好用一套几乎独立的模型来处理每一个重要的系统。
(UML与面向对象软件开发有着密切的关系。可以说,面向对象的软件开发促进了UML的出现。然而,在UML标准化的过程中,业务建模、工作流建模和数据库建模领域的标准和规范被吸收,形成了一个适应性很强的标准。
(5)在软件设计过程中,使用UML建模来更好地理解正在开发的系统。通过UML建模,可以达到以下目的:有助于根据实际情况或所需风格对系统进行可视化;能够调节系统的结构或行为;给出了指导系统建设的模板。记录所做的决定。
第二章总结了UML的一般知识点。
1.
(1)依赖泛化关联的实现
(2)查看图模型元素
(3)实现视图部署视图
(4)构造标签值约束
(5)规范修改的一般划分
2.多项选择问题
(1)D
(2)C
(3)答
⑷A B
⑸D
3.简答题
(1)在UML中,定义了四种基本的面向对象的东西,即结构的东西、行为的东西、分组的东西和注释的东西。
(2)组件类型有:源代码组件、二进制组件和可执行组件。
(UML中主要包含的视图有静态视图、用例视图、交互视图、实现视图、状态机视图、活动视图、部署视图和模型管理视图。
(4)视图和图形是包含与被包含的关系。每个视图包含一个或多个图形。
(5)UML提供了一些公共* * *机制。使用这些公共* * *机制(common mechanisms)可以使UML为各种图添加适当的描述信息,从而提高UML的语义表达。通常,模型元素的基本功能不能完美地表达要描述的实际信息,但这些通用机制可以有效地帮助表达,并帮助我们进行有效的UML建模。UML提供的这些通用机制贯穿于整个建模过程的各个方面。正如我们前面提到的,UML的一般机制包括规范、修饰和一般划分。
第三章理性统一过程
1.
(1)角色活动产品工作流程
(2)逻辑视图、过程视图、物理视图、开发视图和用例视图
(3)设计和开发验证
(4)两个维度
(5)周期性迭代过程的里程碑
2.多项选择问题
(1)A B C D
(2)甲丙丁
(3)甲丙丁
(4)公元前
(5)A B C D
3.简答题
(1)初始阶段、细化阶段、建设阶段、移交阶段。
(2)迭代软件开发、需求管理、基于组件的架构应用、建立可视化软件模型、软件质量验证和软件变更控制。
(3)在Rational统一过程的开发过程中,用角色、活动、产品和工作流四个建模元素来表达。
(4)对于一个以架构为中心的开发组织,需要关注架构的目的、表达和过程。
(5)Rational统一过程是Rational软件开发公司的软件产品,它与Rational软件开发公司开发的一系列软件开发工具紧密结合。Rational unified process有自己的一套架构,并且这种架构以一种大多数项目和开发组织都能接受的形式存在。它提供了一种管理软件开发组织的方式,有自己的目标和方法。
(6)实现理性统一过程的步骤:评估当前状态,确立明确目标,识别过程风险,策划过程实现,实施过程实现,评价过程实现。
(7)Rational统一过程作为一种软件工程过程,为开发组织提供了如何严格分配软件开发的任务,如何严格划分参与开发的人员的职责等方法。根据预先制定的计划,这些计划包括项目时间计划和预算,并开发能够满足最终用户要求的高质量软件产品。Rational统一过程提供了一个可预测周期的软件开发过程,一个保证生产高质量软件的系统产品,一套可以灵活转换和扩展的过程框架,以及许多软件开发最佳实践,这些都使得Rational统一过程对现代软件工程的发展产生了深远的影响。
第四章Rational Rose的安装和运行
1.
(1)创建并打开最近使用的模型。
(2)用例视图逻辑视图组件视图部署视图
(3)编辑区
(4)模型内容记录
(5)mdl
2.多项选择问题
(1)A B C D
(2)甲丙丁
(3)公元前
(4)甲丙丁
⑸C
3.简答题
(1)Rational Rose是一个完整的解决方案,具有满足所有建模环境(包括Web开发、数据库建模以及各种开发工具和语言)需求的能力和灵活性。Rational Rose允许系统开发人员、系统管理人员和系统分析人员在软件的每个开发周期中建立系统需求和系统架构的可视化模型,并且可以将这些系统需求和系统架构的可视化模型转换成代码来帮助系统开发。Rational Rose建模工具可以为UML提供良好的支持。
②略,参阅第二节。
(3)通过选择“文件”菜单栏下的“导入”,可以导入模型、包或类等。可用的文件类型包括。mdl,。ptl,。sub或。猫等。,然后导入“模型”对话框。通过导入模型,您可以利用现有的模型。
通过选择“导出模型...”在"文件"菜单栏下,我们可以导出模型。导出的文件带有后缀。ptl。例如,当选择一个特定的类时,我们可以选择“文件”菜单栏下的“导出用户”来导出它。
(4)4)Rational Rose 2003的主界面主要由标题栏、菜单栏、工具栏、工作区和状态栏组成。默认工作区由四部分组成,即左边的浏览器,右边的文档编辑区和图形编辑区,以及下面的日志记录。
第五章使用Rose设计UML
1.
(1)用例视图逻辑视图组件视图部署视图
(2)非一致性检查和复查功能复查功能重用建模元素和图形功能。
(3)组件组件图包
(4)部署
(5)模型代码库执行文件运行时其他组件的信息。
2.多项选择问题
(1)公元
(2)甲丙丁
(3)甲丙丁
(4)公元前
(5)A B C D
3.简答题
(1)Rational Rose建立的Rose模型分别包括用例视图、逻辑视图、组件视图和部署视图。用例视图是系统功能的高级抽象。逻辑视图是系统如何实现用例中描述的功能。部署视图显示系统的实际部署,这是在分析和设计中使用的架构视图,以便理解系统如何在一组处理节点上物理分布。
(2)使用Rational Rose生成代码包括以下四个步骤:选择要转换的目标模型,检查语言的语法错误,设置代码生成属性,最后生成代码。
(3)在Rational Rose中,可以收集关于类、类属性、类操作、类之间的关系、包和组件的静态信息,这些信息可以转换成相应的模型并显示在相应的图中。
(4)用例视图侧重于系统功能的高层抽象,适用于分析和获取系统的需求,不关注系统的具体实现方法。逻辑视图侧重于系统如何实现用例中描述的功能,主要支持系统的功能需求,即系统在向用户提供服务时应该提供的功能。
第六章用例图
1.
(1)用例图
(2)参与者(角色)的系统边界关联
(3)包括扩展概括
(4)用例粒度
(5)系统外的组件
2.多项选择问题
(1)D
(2)甲丙丁
(3)C
(4)C
⑸D
3.简答题
(1)识别用例的最好方法是从分析系统参与者开始,在这个过程中经常会发现新的参与者。找到参与者后,就可以根据参与者来确定系统的用例,主要是看参与者如何使用系统,系统需要提供什么服务。对于这个选择的用例模型,它不仅应该容易理解,而且对于不同的涉众应该是一致的。
(2)我们可以抽象出用例之间的三种关系:包含、扩展和概括。如果多个用例使用相同的行为部分,您可以将这部分行为分别抽象成一个用例,然后让其他用例包含这个用例。扩展关系通常用于处理异常或构建灵活的系统框架。利用可拓关系可以降低系统的复杂度,有利于系统的扩展,提高系统的性能。扩展关系还可以用来处理基本用例中难以描述的问题,使系统更加清晰易懂。当你发现系统中有两个或两个以上的用例在行为、结构、目的上是* * *的时候,就可以使用泛化关系了。这时可以用一个新的(通常是抽象的)用例来描述这些部分,这个新用例就是父用例。
(3)取决于系统的复杂程度。对于一个相对简单的系统,你可以使用较少的用例图,而对于一个更复杂的系统,为了清晰地表达系统功能,你必须创建更多的用例图。要根据每个系统的具体情况具体问题具体分析,在尽可能保证整个用例模型可理解的前提下决定用例的大小和数量。
(4)用例图是软件需求分析到最终实现的第一步。它向系统的用户展示了他们想要提供的功能,有利于用户和软件开发者之间的交流。借助用例图,系统用户、系统分析人员、系统设计人员和领域专家可以用可视化的方式讨论问题,减少了很多沟通障碍,方便了对问题的理解。
(5)使用Rose创建用例图的步骤:确定参与者,创建用例,最后创建用例之间的关系。
4.电脑问题
(1)用例图位于光盘学生管理系统中。mdl。-& gt;用户案例视图-& gt;系统管理员用例图
(2)用例图位于学生管理系统光盘中。MDL。->;用户案例视图-& gt;教师用例图
(3)用例图位于学生管理系统光盘中。mdl。-& gt;用户案例视图-& gt;学生使用案例
第七章类图和对象图
1.
(1)对象链
(2)依存概括和联想实现
(3)阶级
(4)类接口数据类型组件
(5)***类型化私有类型受保护类型
2.多项选择问题
(1)A B
(2)C
(3)D
⑷D
⑸C
3.简答题
(1)类由类名、类属性、类操作、类责任、类约束和类注释组成。
(2)对象图由对象和链组成。
(3)在面向对象的分析方法中,类和对象的图形化表示是关键的建模技术之一。他们能有效地为业务领域和软件系统建立可视化的对象模型,用强大的表达能力表达面向对象模型的主要概念。UML中的类图和对象图显示了系统的静态结构,其中类和对象是图形元素的基础。
(4)类由三部分组成,即类名、类的性质和类的操作。类的名称列只包含类名。类的属性栏定义所有属性的特征。操作类列在类中。操作类中使用关联连接,关联中使用名称、角色、约束等特征定义。类是一类对象的抽象,没有多重类。
一个对象包含两部分:对象的名称和对象的属性。对象名称列包含“对象名称:类名”。对象的属性栏定义属性的当前值。操作内容不包括在对象图中,因为属于同一类的对象的操作是相同的。对象由链连接,链中包含名称和角色。对象可以是多个。
4.电脑问题
(1)类图位于光盘学生管理系统中。mdl。-& gt;用户案例视图-& gt;类图
(2)对象图位于学生管理系统光盘中。mdl。-& gt;逻辑视图-& gt;类图
(3)对象图位于学生管理系统光盘中。MDL。->;逻辑视图-& gt;类图
该类图位于学生管理系统光盘中。mdl。-& gt;用户案例视图-& gt;类图
第八章顺序图
1.
(1)顺序图
(2)发送者和接收者的活动
(3)激活
(4)生命线
(5)给矩形框加下划线
2.多项选择问题
(1)A B C D
(2)答
(3)交流
(4)B
(5)公元前
3.简答题
(1)序列图的目的包括:确认和丰富一个使用上下文的逻辑表达式。提炼用例的表达。有效描述如何分配每个类的职责,以及为什么每个类都有相应的职责。
(2)确定序列对象。创建一个对象。创造一条生命线。创建一条消息。摧毁物体。
(3)序列图展示了不同的业务对象是如何交互的,对于沟通当前业务是如何进行的非常有用。除了记录组织的当前事件之外,业务级别的序列图还可以用作需求文件来交付未来系统的需求。在项目的需求阶段,分析师可以通过提供一个更正式的表达,将用例带到下一个层次。在这种情况下,用例经常被细化成一个或多个序列图。组织的技术人员也可以通过序列图记录一个未来系统的行为应该如何表现。在设计阶段,架构师和开发人员可以利用这个图挖掘出系统对象之间的交互,从而丰富整个系统设计。
(4)销毁对象表示对象生命线的结束,在对象生命线中使用一个“X”进行标识。向对象生命线添加销毁标记的步骤如下:在序列图的图形编辑工具栏中选择按钮,光标会变成一个“+”符号。单击要销毁的对象的生命线,该标记在对象的生命线中被识别。该对象的生命线从破坏标记下方的部分消失。
4.电脑问题
(1)序列图位于学生管理系统光盘中。MDL-->;逻辑视图->;输入学生信息1(顺序图)
(2)序列图位于学生管理系统光盘中。MDL-->;逻辑视图->;输入学生信息(顺序图)
(3)序列图位于学生管理系统光盘中。MDL-->;逻辑视图->;修改学生信息(顺序图)
第九章协作图
1.
(1)对象协同关系链
(2)物体之间的相互作用
(3)独立的联系和关联
(4)协作图
(5)新闻
2.多项选择问题
(1)B
(2)A B D
(3)D
(4)公元前
(5)答
3.简答题
(1)协作图的作用:通过刻画对象之间的消息传递,反映特定使用上下文的逻辑表达。显示对象及其交互的空间组织结构。协作图的另一个功能是显示一个类操作的实现。
(2)构成协作图的对象、消息和链。一个对象的角色代表了一个对象或一组对象在完成目标的过程中应该发挥的作用。系统的动态行为由一系列消息描述。链是两个或多个对象之间的独立连接和关联实例。
(3)协作图中有同步消息和异步消息。当系统中使用多个线程时,使用同步消息。当存在并行活动(如消息队列)时,使用异步消息。
(4)协作图和顺序图都是交互图,既等价又不同。序列图表示时间消息的顺序,但不表示静态对象关系。序列图可以有效地帮助我们观察系统的顺序行为。协作图用于表示协作中对象之间的关系和消息,并描述操作或分类器的实现。在对系统的行为进行建模时,通常的做法是用序列图按时间顺序对控制流进行建模,用协作图按对象组织对控制流进行建模。
4.电脑问题
(1)协作图位于学生管理系统光盘中。MDL-->;逻辑视图->;输入学生信息1(协作图)
(2)协作图位于学生管理系统光盘中。MDL-->;逻辑视图->;输入学生信息(协作图表)
(3)协作图位于学生管理系统光盘中。MDL-->;逻辑视图->;修改学生信息(协作图)
第十章活动图
1.
(1)活动图
(2)一个目标流
(3)动作状态
(4)进入动作和退出动作
(5)泳道
2.多项选择问题
(1)公元
(2)A B D
(3)C
(4)B
(5)答
3.简答题
(1)活动图描述了一个操作执行过程中完成的工作,对于活动图描述用例特别有用。它可以对用例的工作流进行建模,并显示用例内部和用例之间的路径。活动图可以解释用例的实例如何执行动作和改变对象的状态。它展示了如何执行一组相关的操作,以及这些操作如何影响它们周围的对象。活动图对于理解业务流程非常有用。
(2)2)UML活动图包含的图形元素有:动作状态、活动状态、组合状态、分叉和组合、分支和组合、泳道和对象流。
(3)分叉用于指示控制流被分成两个或更多同时运行的分支。分叉有一个输入转换和两个或多个输出转换,每个转换可以是一个独立的控制流。分支是转化的一部分,它将转化路径分成多个部分,每个部分都有单独的监护条件和不同的结果。当动作流遇到分支时,会根据监护条件的真值(布尔值)来确定动作的方向。分支的每条路径的监护条件应该是互斥的,这样才能保证只触发一条路径的转换。
(4)动作状态是原子动作或操作的执行状态,不能被外部事件的转换打断。动作状态的原子性决定了动作状态要么不执行,要么不中断地完全执行。动作状态不能有进入动作和退出动作,也不能有内部转移。动作状态是一种特殊的活动状态。作用态可以理解为原子的活动态。
活动状态是非原子的,用于表示带有子结构的纯计算的执行。活动状态可以分解为其他子活动或动作状态,并且可以被从该状态转移的事件从外部中断。活动状态可以有内部转换、进入动作和退出动作。活动状态至少有一个输出完成转换,该转换在状态中的活动完成时触发。
4.电脑问题
(1)活动图位于光盘学生管理系统中。MDL-->;逻辑视图->;状态/活动模型-& gt;学生登录
(2)活动图表位于学生管理系统光盘中。MDL-->;用户案例视图-& gt;状态/活动模型-& gt;学生登录
(3)活动图表位于学生管理系统光盘中。MDL-->;逻辑视图->;状态/活动模型-& gt;删除学生信息
第11章包装图
1.
(1)程序包子系统依赖关系
(2)公共、私人和受保护
(3)模型元件图
(4)包装图
(5)模型
2.多项选择问题
(1)A
(2)A B
(3)B C D
(4)B C D
(5)公元前
3.简答题
(1)包之间的关系可以概括为依赖和泛化。
(2)包图是维护和描述系统整体结构的模型的重要建模工具。通过描述图中的每个包以及包之间的关系,显示了系统的模块之间的依赖关系。包图由包和包之间的关系组成,是维护和控制系统整体结构的重要工具。
(3)包图的基本元素是包、子系统和依赖关系。包是一个通用的名称空间,可以有任何种类的模型元素。在系统模型中,每个图必须被一个唯一的包所拥有,并且这个包也可能被另一个包所包含。包构成了配置控制、存储和访问控制的基础。几个相对独立的子系统构成一个大型复杂系统,系统与子系统之间的关系基本上是组合关系。通过对包图中每个包以及包之间的关系的描述,展示了系统各模块之间的依赖关系。
(4)包装是包装图中最重要的概念和组成部分。包图由包和包之间的关系组成。没有包,就没有包图。
4.电脑问题
(1)包图位于光盘学生管理系统中。MDL-->;逻辑视图->;趵突山
第十二章组件图和部署图
1.
(1)代码特征身份特征
(2)部件图
(3)组件类和接口
(4)虚拟包
(5)部署图
2.多项选择问题
(1)公元
(2)B
(3)A B D
(4)答
⑸B
3.简答题
(1)组件图适用于以下建模需求:系统源代码、系统发布版本、物理数据库、适配系统、业务模型构建、系统开发管理。
(2)两者都有名字,可以实现一组接口,可以参与依赖,可以嵌套,可以有实例,可以参与交互。类描述了软件设计的逻辑组织和意图,而组件描述了软件设计的物理实现。类可以有属性和操作,组件只有操作,只有通过组件才能使用接口。
(3)在基本组件图中,组件之间最常见的关系是依赖和实现。
(4)在UML中,组件主要包括配置组件、工作产品组件和可执行组件。
4.电脑问题
(1)组件图位于光盘学生管理系统中。MDL-->;组件视图->;组件图
(2)部署图位于学生管理系统光盘中。MDL-->;部署视图
第十三章状态图
1.
(1)对象
(2)状态图
(3)简单状态和复合状态
(4)历史地位
(5)事件
2.多项选择问题
(1)A B C D
(2)A B
(3)答
(4)甲丙丁
(5)公元前
3.简答题
(1)状态图由状态、初始状态、终止状态、转移和判断组成。
(2)状态机是记录给定时刻状态的装置,它可以根据各种输入改变其状态或为每个给定的改变触发一个动作。状态图本质上是一个状态机,或者说是状态机的一个特例。它基本上是状态机中元素的投影,这意味着状态图包含了状态机的所有特性。状态图描述了基于事件响应的实体的动态行为,并显示了实体如何根据其当前状态来响应不同的时间。
(3)使用状态图建模在软件开发中的作用:状态图清晰地描述了状态之间的转移顺序,通过状态的转移顺序可以清楚地看到事件的执行顺序;清晰的事件顺序有助于程序员在开发程序时避免事件的无序;状态图清晰地描述了触发事件、监控条件和动作等影响状态转换的因素,有助于程序员避免程序中出现非法事件。通过判断,状态图可以更好地描述工作流因不同条件而产生的分支。
(4)按顺序组成一个状态的多个子状态是互斥的,不能同时存在。顺序合成状态最多可以有一个初始状态和一个最终状态。并发组成状态可以有两个或多个并发子状态,每个并发子状态可以进一步分解为连续的组成状态。并发合成状态可以没有初始状态或最终状态。
4.电脑问题
(1)状态图位于学生管理系统光盘中。MDL-->;逻辑视图->;状态/活动模型-& gt;学生信息
(2)状态图位于学生管理系统光盘中。MDL-->;逻辑视图->;状态/活动模型-& gt;系统管理员