uml实验三类图答案
- 格式:doc
- 大小:107.50 KB
- 文档页数:2
UML系统建模与分析设计第一章系统建模与分析设计的演变1、系统建模的三要素:方法、工具和过程2、软件的分类:按软件的功能划分:系统软件、支撑软件和应用软件按软件的规模划分:小型软件、中型软件、大型甚至超大型软件按软件的工作方式划分:实时处理软件、分时处理软件交互式软件和批处理软件按软件服务对象的范围划分:一次性使用软件和使用频度较高的软件按软件失效的影响程度划分:一般性软件和关键性软件3、软件危机产生的原因主要有两个:一是与软件本身的特点相关;二是软件开发和维护的方法不正确。
4、软件开发过程模型:瀑布模型、渐增模型、演化模型、螺旋模型、智能模型5、UML的特点:唯一性、连续性、维护性、复用性和逐步完善6、面向对象的三大重要特征:封装性、继承性和多态性7、软件开发方法从结构化开发方法、模块化开发方法到面向对象开发方法是一个渐进的演变过程8、软件生命周期描述了一个软件从定义、开发、使用、维护到服用的全过程9、面向对象的基本概念有:对象、类急气封装性、多态性、继承性和消息传递10、软件开发过程由客户端需求分析、系统分析、系统设计和系统实现以测试与维护四个四个阶段组成11、面向对象系统的开发过程以体系结构为中心,以用例为驱动,是一个反复、渐增的过程课后习题:ACDB1、封装是吧对象的属性和操作结合在一起,组成一个独立的对象、2、封装是一种信息隐蔽技术,目的是使对象的生产者和使用者分离,使对象的定义和实现分开。
3、面向对象方法中的继承机制使子类可以自动地拥有复制父类全部属性和操作4、使得在多个类中能够定义同一个操作或属性名,并在每一个类中有不同的实现的一种方法是多态性5、软件按照其工作方式可划分为实时处理软件、分时处理软件、交互式软件和批处理软件。
6、软件生存周期由软件的定义、软件的开发和软件的使用维护和更新换代三部分组成。
7、软件开发模型有瀑布模型、增量模型、螺旋模型、智能模型和快速原型模型等五种主要模型8、面向对象技术采用以类为中心的封装、继承、多态等不仅支持软件复用,而且使软件维护工作可靠有效,可实现软件系统的柔性制造。
填空题第一章(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)使用R ational Rose 生成代码的步骤包括选择待转换的目标模型、检查Java语言的语法错误、设置代码生成属性、生成代码。
(4)在用例视图中包括了系统中的所有参与者、用例和用例图,必要时还可以在其中添加顺序图、协作图、活动图和类图等。
(5) 构件视图用来描述系统中的各个实现模块以及它们之间的依赖关系包含模型代码库、执行文件、运行库和其他构件等信息。
第四章(1)对象图的目的在于描述系统中参与交互的各个对象在同一时刻是如何运行的。
(2)链是两个或多个对象之间的独立连接,是关联的实例。
(3)在UML的图形表示中,类是由名字、属性和方法三个部分组成的。
(4)依赖关系使用一个从客户指南提供者的虚箭头来进行表示。
第6章用例图3. 简答题(1)试述识别用例的方法。
答:识别用例的最好方法就是从分析系统参与者开始,在这个过程中往往会发现新的参与者。
当找到参与者之后,我们就可以根据参与者来确定系统的用例,主要是看各参与者如何使用系统,需要系统提供什么样的服务。
对于这个被选出的用例模型,不仅要做到易于理解,还要做到不同的涉众对于它的理解是一致的(4)请简述为何在系统设计时要使用用例图及其对用户有什么帮助?答:用例图是从软件需求分析到最终实现的第一步,它显示了系统的用户和用户希望提供的功能,有利于用户和软件开发人员之间的沟通。
借助于用例图,系统用户、系统分析人员、系统设计人员、领域专家能够以可视化的方式对问题进行探讨,减少了大量交流上的障碍,便于对问题达成共识。
第7章类图与对象图3. 简答题(3)简述使用类图和对象图的原因。
答:在面向对象分析方法中,类和对象的图形表示法是关键的建模技术之一。
它们能够有效的对业务领域和软件系统建立可视化的对象模型,使用强大的表达能力来表示出面向对象模型的主要概念。
UML中的类图和对象图显示了系统的静态结构,其中的类、对象是图形元素的基础。
(4)请简要说明类图和对象图的关系和异同。
答:在类中包含三个部分,分别是类名、类的属性和类的操作。
类的名称栏只包含类名。
类的属性栏定义了所有属性的特征。
类中列出了操作类中使用了关联连接,关联中使用名称、角色以及约束等特征定义。
类是一类的对象的抽象,类不存在多重性。
对象包含两个部分:对象的名称和对象的属性。
对象的名称栏包含“对象名:类名”。
对象的属性栏定义了属性的当前值。
对象图中不包含操作内容,因为对属于同一个类的对象,其操作是相同的。
对象使用链进行连接,链中包含名称、角色。
对象可以具有多重性。
类与类之间的主要关系有几种?它们的含义是什么?答:a.泛化关系:泛化是一种继承关系,表示一般与特殊的关系,它指定了子类如何特化父类的所有特征和行为。
b.实现关系:用于规定规格说明与其实现之间的关系,换句话说,就是指定两个实体之间的一个合同,一个实体定义一个合同,而另一个实体保证履行该合同。
UML实验(含答案)实验:设计一个网上选课系统的各种UML图网上选课系统的产生是因为目前高校扩招后,在校学生日益增多。
如果仍然通过传统的纸上方式选课,既浪费大量的人力物力,又浪费时间。
同时,在人为的统计过程中不可避免出现的错误。
因此,通过借助网络系统,让学生只要在电脑中输入自己的个人选课信息来替代有纸化的手工操作成为高校管理的必然趋势。
该信息系统能够为学生提供方便的选课功能,也能够提高高等院校对学生和教学管理的效率。
要求:1. 上课前必须带草图去,否则记为缺课。
2. 对于每个图要求必须按照书中绘制相关图的过程来撰写实验报告,不可只摆出几个图。
3. 第二次实验课做用例图、类图。
其中需要对每个用例实例撰写用例描述。
4. 第三次实验课做剩下的顺序图、活动图、状态图、构件图、部署图。
需求分析网上选课系统的功能性需求包括以下内容:(1)系统管理员负责系统的管理维护工作,维护工作包括课程的添加、删除和修改,对学生基本信息的添加、修改、查询和删除。
(2)学生通过客户机浏览器根据学号和密码进入选课界面,在这里学生可以进行查询已选课程、指定自己的选修课程以及对自己基本信息的查询。
满足上述需求的系统主要包括以下几个小的系统模块:(1)基本业务处理模块。
基本业务处理模块主要用于实现学生通过合法认证登录到该系统中进行网上课程的选择和确定。
(2)信息查询模块。
信息查询模块主要用于实现学生对选课信息的查询和自身信息的查询。
(3)系统维护模块。
系统维护模块主要用于实现系统管理员对系统的管理和对数据库的维护,系统的管理包括学生信息、课程信息等信息的维护。
数据库的维护包括数据库的备份、恢复等数据库管理操作。
系统建模在系统建模以前,我们首先需要在Rational Rose 2021中创建一个模型。
并命名为“网上选课系统”,该名称将会在Rational Rose 2021的顶端出现。
1创建系统用例模型创建系统用例的第一步是确定系统的参与者。
实验三.类图答案第一题:问题:软件学院打算开发一个学生选课系统。
… 新的系统允许学生利用局域网上的PC机来注册本学期的课程,并可以查看自己已学的所有课程的所有成绩。
新的系统允许教师决定要教哪些课程,并通过管理员更新数据库,教师在学期末登记自己教授的课程的成绩。
… 学院已有课程目录(course catalog)数据库部分,课程目录数据库中保存了所有的课程信息新的学生注册系统将读取课程目录数据库中的课程信息,但不会修改数据库中的课程信息。
管理员通过其它系统来维护课程信息† 在每个学期初,学生可以获取这个学期所开设的所有课程的目录,在课程目录中包含每门课的详细信息,如professor(讲课教师,因为后面约定老师可以有教授、副教授和讲师3种类型), department, prerequisite等。
† 每个学生在一个学期,根据自己所在系的培养计划,必修课必须选,选修课自愿,但一学期不可超过8门课程,不少于3门课程。
(第8周周二到周五可以退课,但必须保证本学期课程不少于3门,退课需交纳50/门的费用,由计费系统扣费,扣费成功后,该门课程从学生的选课计划中删除,否则,退课不成功)† 每门课的学生人数最多为200人,最少为30人,如果选修课学生人数少于30人,该门课将被取消,必修课无最低人数限制。
在每个学期,有一个选课期,在这个时间段内,学生可以改变他们的选课计划(Schedule),注册系统允许学生在这段时间内可以增加或删除所选课程,选课最后一天只能选课,不可退课,在学期结束的时候,学生可以通过系统查询成绩,由于学生成绩属于敏感信息,因此系统要有安全措施来防止非授权的存取。
(学生查询成绩前,需要先评教)。
† 教师可以读取系统来获取他们所教的课程的信息,可以了解哪些学生选了他们的课,也可以登记该门课程的学生成绩。
† 教师分为讲师、副教授、教授。
此系统涉及到得参与者有:①学生;②教师;③管理员;④课程目录数据库;⑤计费系统。
UML课后习题答案第1章UML概述1. 请指出UML的三个主要的特性。
1)UML是一种语言2)UML是用来建模的3)UML是统一的标准2. 请指出三种以上现实生活中的常用模型,并说明它们分别在各自的领域中发挥了什么样的作用。
1)电路图:电子产品设计、生产、维修2)园区沙盘:直观、立体化地展示园区的景观、布局3)地图:导航、指路等3. 请说明蓝图和草图的区别,并简单描述其适用的场景。
蓝图一般是指采用CASE(Computer Aided(or Assisted)Software Engineering)工具绘制的、正式的、规范的UML模型;而草图则通常是指手工绘制的、规范度较低的在纸张的UML模型。
对于局部的、重要性不高的、共享范围较小的UML模型,直接将草图扫描到电脑存档即可;对于全局的、重要性高的、高度共享的,在草图的基础上用CASE工具绘制成为正式的蓝图,并将其纳入统一的模型管理中4. 说明UML适用的建模领域,以及其作用和主要的参与人员。
业务建模,用来加强对业务领域的了解,以领域专家为主,需求分析人员是主力,系统分析员、架构师可参与。
需求模型,用来加强需求了解,便于技术决策,以需求分析人员为主,系统分析员是主力,领域专家提供指导,架构师和资深开发人员参与。
设计模型:包括高层设计模型和详细设计模型。
高层设计模型以架构师为主,系统分析员从需求方面提供支持,资深开发人员从技术实现方面提供支持。
详细设计模型则以资深开发人员为主,架构师提供指导。
实现模型:架构师、资深开发人员(设计人员);以资深开发人员(设计人员)为主,架构师提供总体指导。
数据库模型:架构师、数据库开发人员、资深开发人员(设计人员);以数据库开发人员为主,架构师提供指导,资深开发人员(设计人员)予以配合。
第2章UML世界的构成1. UML是由哪三个部分组成的,请分别说明它们的作用。
基本构造块:也就是建模元素,是模型的主体UML规则:也就是支配基本构造块如何放在一起的规则公共机制:运用于整个UML模型中的公共机制、扩展机制2. 请列举出三个以上UML中的事物构造块,并说明适合用来表示“系统向用户提供的功能”的构造块是什么。
简答题请指出UML的三个主要的特性。
答:(1)UML是一种语言,是一种表示法,本身不包含任何方法论的部分;(2)UML是一种建模语言,不是用于编程而是用于建模。
(3)UML是统一的标准,得到众多UML是一种方法论吗?并简要说明理由。
答:UML不是方法论。
它仅仅是一种描述模型的标准语言,虽然渗透了许多方法论的基础概念,但是却没有在标准中给出完整的方法指南。
应用UML的三种方式是什么?答:1)、UML作为草图----用于探讨问题或解决方案空间的复杂部分。
2)、UML作为蓝图----相对详细的设计图,用于:逆向工程或代码生成(前向工程3)、UML作为编程语言----用UML完成软件系统可执行规格说明,代码可能被自动生成。
构造型的作用是什么?答:构造型用来定义一些特定于某个领域或某个系统的构造块。
用来扩展建模元素,增加建模元素的语义应用UML的三种透视图是什么?答:1)、概念透视图:用图来描述现实世界或关注领域中的事物。
2)、规格说明(软件)透视图:用图来描述软件抽象物或具有规格说明和接口的构建,但并不约定特定的实现。
3)、实现(软件)透视图:用图来描述特定技术(如Java)中的软件实现。
请简要解释主动类的概念,并说明它建模的意义?答:主动类的实例称为主动对象,一个主动对象拥有一个控制线程并且能够发起控制活动;它不在别的线程、堆栈或状态机内运行,具有独立的控制期。
从某种意义上说,它就是一个线程。
什么是敏捷开发?答:敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。
在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。
换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。
请说明对象图的适用场景以及它的优缺点?、答:对象图适用于论证类模型的设计以及对源代码进行分析和说明。
其优点是能够直观理解出系统运行时的实时状态,缺点是比较复杂,工作量大。
【精品】UML系统建模基础教程课后习题答案UML(Unified Modeling Language)是一种用于软件系统建模的标准语言。
它提供了一套丰富的图形符号和规则,用于描述软件系统的结构、行为和交互,能够帮助开发人员更好地理解和设计复杂的软件系统。
1. 简要介绍UML的主要图形符号及其用途。
答案:UML主要图形符号包括类图、对象图、用例图、时序图、活动图、状态图和组件图等。
其中,类图用于描述系统的静态结构,包括类、接口、关联关系等;对象图用于描述系统的运行时结构,包括对象及其关系;用例图用于描述系统的功能需求,包括用户与系统之间的交互;时序图用于描述系统的交互行为,包括对象之间的消息传递;活动图用于描述系统的业务流程,包括活动和控制流程;状态图用于描述系统的状态转换,包括对象的状态和事件;组件图用于描述系统的组成部分和依赖关系。
2. 什么是类图?如何用类图描述系统的静态结构?答案:类图是UML中描述系统静态结构的主要图形符号。
它由类、接口、关联关系、继承关系、依赖关系等元素组成。
类图用于描述系统中的类和它们之间的关系。
每个类包含了类名、属性和操作。
类之间的关联关系用于描述类之间的关联关系,如一对一、一对多、多对多等关系。
继承关系用于描述类之间的继承关系,即子类继承父类的属性和操作。
依赖关系用于描述类之间的依赖关系,即一个类的实现依赖于另一个类。
3. 什么是用例图?如何用用例图描述系统的功能需求?答案:用例图是UML中描述系统功能需求的主要图形符号。
它由参与者、用例和关系等元素组成。
参与者代表与系统交互的角色,可以是人、系统或其他外部实体。
用例代表系统的功能需求,即系统要完成的一项任务或功能。
用例图用于描述参与者与用例之间的交互关系。
参与者与用例之间的关系可以是关联关系、包含关系、扩展关系等。
关联关系表示参与者与用例之间的关联关系,包含关系表示一个用例包含另一个用例,扩展关系表示一个用例可以扩展另一个用例。
第一章系统建模与分析技术的演变一选择题1 封装是指把对象的(A)结合在一起,组成一个独立的对象。
A 属性和操作B 信息流C 信息和事件D 数据的集合2 封装是一种(C)技术,目的是使对象的生产者和使用者分离,使对象的定义和实现分开。
A 工程化B 系统维护C 信息隐蔽D 生产对象3 面向对象方法中的(D)机制使子类可以自动地拥有(复制)父类全部属性和操作A 约束B 对象映射C 信息隐蔽D 继承4使得在多个类中能够定义同一个操作或属性名,并在每一个类中有不同的实现的一种方法是(A)A 继承B 多态性C 约束D 接口二填空题5.软件按照其工作方式可分为(分时软件)、(交互式软件)、(批处理软件)和(实时处理软件)。
6.软件生存周期由(软件定义)、(软件开发)和(软件使用、维护和更新)三部分组成。
7.软件开发模型有(瀑布模型)、(渐增模型)、(演化模型)、(螺旋模型)和(智能模型)等5种主要模型。
8.面向对象技术采用以类为中心的(封装)、(继承)、(多态)等不仅支持软件复用,而且使软件维护共作可靠有效,可实现系统的柔性制造。
9. UML的优点是(唯一性)、(连续性)、(维护性)、(复用性)和(逐步完善)。
三解释题10.软件:程序以及开发、使用、维护程序所需要的所有文档,即:软件=程序+文档11.类:是一组具有相同属性和相同操作的对象的集合,是对象的抽象,它抽象地描述了属于该类的全部对象的属性和操作。
12.封装:是面向对象方法的一个重要原则和基本原则,其目的是有效地实现信息隐蔽和局部化。
13.继承性:是指子类可以自动拥有其父类的猼属性了操作。
14.消息:是面向对象系统中,实现对象类之间的通信和任务传递。
15.动态绑定:是指在执行期间判断所引用对象的实际类型,根据其实际的类型调用其相应的方法。
16.多态性:是消息发送者不必知道接受消息的对象所属的类。
第二章统一建模语言UML一、选择题1. UML的软件以(B)为中心,以系统体系结构为主线,采用循环迭代渐增的方式进行开发A 用例B 对象C 类D 程序2.UML的(B)模型图是由类图、对象图、包图、构件图和配置图组成。
一、填空题参考答案
参与者(角色)用例系统边界关联
对象对象发送消息
规格说明修饰通用划分
发送者接收者活动
共有类型私有类型受保护类型
用例类图对象图包图组件图部署图活动图顺序图状态图协作图
基本构造块规则公共机制
调用消息(或称同步消息)异步消息简单消息返回消息
用例活动类和对象
用例静态动态
顺序图协作图
确定对象和类定义类的接口定义类之间的关系建立类图建立系统包图
依赖泛化关联实现
类接口数据类型构件
实现视图部署视图
对象协作关系中的链
对象的静态模型对象的动态模型系统功能模型
视图图模型元素
确定系统边界确定参与者和用例细化用例编写用例描述审核用例模型
用例逻辑实现进程部署
继承包含扩展使用
需求模型静态模型动态模型构架模型
独立连接关联
构造型标记值约束
组成部分系统外部
发送者接收者
唯一性连续性维护性复用性逐步完善
包含扩展泛化
对象链
人外部系统
矩形框下划线。