吉林大学软件学院UML复习重点01
UML考试必备

UNIT 1 UML概述 1.UML的全称是The Unified Modeling Language 统一建模语言,是应用于软件系统的分析、设计和开发过程中的一种有效建模手段。
2.软件开发方法概述:a.瀑布型 b.原型法 c.面向对象 3. 什么是建模?模型是对现实的简化。
建模就是建立系统模型的过程,又称模型化。
4.UML的特点:统一标准面向对象可视化、表达能力强独立于过程易掌握,易用UNIT 2 UML 关系 1.UML中的四种关系: a.依赖(Dependency)描述了类之间的使用关系。
b/类属(Generalization)描述了类之间的“一般”和“特殊”的关系。
c .关联(Association)描述了对象之间的结构关系。
D.实现(Realization)描述了规定协议的元素和遵守协议的元素之间的关系。
依赖关系(Dependency)(最弱)图形表示:带有箭头的虚线表示。
Y (源) X(目的)类属关系(Generalization)图示表示:用带有空心箭头的直线表示。
子元素父元素关联关系(Association)对象A (关联名称)对象B Car wheels (聚合)关联上的四种修饰阶元的表示:1)0…n代表0~∞,表示0个或任意多个。
2)1…n代表1~∞,表示1个或任意多个。
3)单个数字表示。
1表示一个,2表示两个等等。
4)连续或不连续的数字范围表示。
0…2,4…6,8…*,表示除了3,7之外的任何数量。
聚合关系表示了整体和部分的关系用“has-a”来表示图形表示:用带有空心菱形箭头的直线表示。
部分整体组合关系部分离开整体后就没有实际意义了。
用“contains-a”来表示这种关系。
部分整体实现关系一方作为要求被提出,另一方具体履行要求中声明的任务1、2 总结复习关联关系的两种特殊情况:聚合和组合。
UML统一的是什么?(统一的是符号标记Notation,不是过程Process)传统的软件工程方法叫什么?分为几个阶段?瀑布模型。
uml期末复习(1)

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 Goods8、在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:.mdlB:.ptlC:.catD:.sub5、关于浏览窗⼝的描述,正确的是(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 :能够减少程序员的编码⼯作量。
吉林大学《软件工程》第一章 期末考试学习资料

吉大《软件工程》第一章一、简述软件的特点。
参考答案:·软件是一种逻辑实体,具有抽象性:·软件的生产与硬件不同呢,在它的开发中没有明显的制造过程。
·与硬件不同,软件在运行和使用期间,没有机械磨损和老化问题。
二、说明软件生命周期参考答案:一个软件从定义、开发、使用和维护,直到最终被废弃,要经历一个漫长的时期,通常把它称为软件的生命周期。
具体包括:问题定义、可行性研究、需求分析、设计(概要设计、详细设计)、编码、测试和维护。
三、软件工程的七条基本原理参考答案:(1)用分阶段的生命周期计划严格管理;(2)坚持进行阶段评审;(3)实行严格的产品控制;(4)采用现代程序设计技术(5)结果应能清楚地审查(6)开发小组的成员应该少而精(7)承认不断改进软件工程实践的必要性不仅要积极主动地采纳新的软件技术,而且要注意不断总结经验。
四、简述瀑布模型的特点及存在的问题参考答案:·阶段间具有顺序性和依赖性·推迟实现的观点·质量保证的观点I 每个阶段都必须完成规定的文档,没有交出合格的文档就是没有完成该阶段的任务。
II 每个阶段结束前都要对完成的文档进行评审,以便尽早发现问题,改正错误。
瀑布模型的成功在很大程度上是由于它基本上是一种文档驱动的模型。
瀑布模型存在的问题·将本来非线性的软件开发过程人为地加以线性化,不符合实际中的软件开发情况;·在项目的开始阶段难以清除地给出所有需求;·软件开发耗时长,可运行版本要等到项目后期才能得到,一旦在后期发现错误,付出的代价将是巨大的。
UML学习重点汇总

第一章OOM&软件建模概述UML(Unified Modeling Language)通用的标准建模语言,可以对任何具有静态结构和动态行为的系统进行建模。
标准建模语言UML适用于以面向对象技术来描述任何类型的系统,而且适用于系统开发的不同阶段,从需求规格描述直至系统完成后的测试和维护。
特点:统一标准,面向对象,可视化、表达能力强,独立于过程,UML很适合于以体系结构中心的、用例驱动的、迭代式和渐增式的软件开发过程第二章UML构成1. UML的“4+1视图”从某个角度观察系统构成系统的一个视图,每个视图都是系统描述的一个投影,说明了系统某个侧面的特征。
(1)用例视图(2)逻辑视图(3)组件视图(4)进程视图(并发视图)(5)配置视图(部署视图)2. UML的模型图:模型图是一组UML模型元素构成的有向图表示,它通常由一组节点(UML基本模型元素), 及节点之间的连线(关系)组成。
(1) 用例视图:用例图(2) 静态模型:类图、对象图、包图、构件图和配置图(3) 动态模型:活动图、顺序图、状态图和协作图3. 用例图.用例图是表达用例和参与者及其关系的载体。
关系包括:关联关系,依赖关系实现关系:3. 用例图(续)——用例之间关系1(包含与扩展).3. 用例图(续)——用例之间关系2(泛化).3. 用例图(续)——用例与参与者用例Use Case:一组用例的实例(场景),其中每个实例都是系统执行的一系列活动,这些活动产生了对每个参与者而言可观察的返回值。
描述了从参与者角度看系统做了什么用例模型本身不是面向对象建模技术。
参与者Actor: 是指在系统外部与系统交互的人或其他系统,以某种方式参与了系统内用例的执行。
4. 交互式视图图(顺序图、协作图)1)协作图:采用图的形式展示对象间的交互2)顺序图:采用栅栏格式展示对象间的交互顺序图与协作图的优缺点:顺序图(优点)强调消息的时间顺序及对象生命线(优点)大量详细表示法选项(缺点)强制在右侧增加新对象,消耗空间大协作图(优点)强调结构组织,复杂交互表达更容易(优点)空间利用率高,和方便添加新对象(缺点)不宜查询消息的顺序,表示法选项少5 活动图活动图用于表示完成一个操作所需要的活动,或者是一个用例实例(场景)的活动。
吉林大学《软件工程》第一章 期末考试备考资料

吉大《软件工程》第一章详述原型法信息系统的开发有好多中方法,其中一种就是原型法,那么你知道什么是原型法吗?原型法就是在还没有开始之前。
首先经行调查,确定系统的需求,在确定需求以后,构造出系统的基本原型,这个原型比较简单,开发的时间比较短暂,开发好以后马上交给用户使用,用户使用以后在给这个系统提出要求,就这样反复修改,知道满足用户的需求,这就是原型法,就是先确定简单的。
原型法(Prototyping)原型是一个可以实际运行、反复修改,可以不断完善的系统。
基本思想:在管理信息系统开发的开始阶段,凭借系统开发售货员对用户需求的理解与用户共同确定系统的基本要求和主要功能,在强有力的人、软件环境支持下,给出一个满足用户需求的初始系统原型,然后与用户反复协商修改,最终形成。
不管你做什么也好,软件开发或者是组织一场晚会,工作计划都是必须的,这跟你选择什么开发方式没关系!而且你对原型开发的定义完全不正确!原型开发是指在需求不明确的条件下,根据现有的需求,在短时间内开发一个原型,以这个原型作为进一步确定需求的依据,用户可以根据你的原型来检查你是否能提供它想要的产品,以及你的原型究竟和用户需求的差距程度。
原型必须用快速的方法来开发,在一些情况下,这个原型只是概念性的,在后面的开发中被抛弃。
根据生存周期可以分为:瀑布模型(线性顺序模型)、原型法、演进模型(进一步分为增量模型、螺旋模型、迭代式开发、并发开发模型等)。
软件项目需求分析是一个项目的开端,也是一个项目建设的基石。
在失败的开发项目中,80%是由于需求分析的不明确而造成的。
因此,一个软件开发项目想要成功的关键就是要做好需求分析。
这是我经过在上个月不堪回首的痛苦折腾后,才深深领悟到的真意。
在这里我想把在这个项目得到的教训和经验与大家分享。
在上个月,公司委派我负责一个小型的软件开发项目。
在接手这个项目时,我看到该项目的需求比较简单,于是想当然的就直接开始工作了。
结果是由于在开发初期忽视了与用户的信息沟通和深度需求分析,不但导致系统开发出来后不能很好地满足用户的需求,而且频繁的需求变更返工不仅在技术上给开发人员带来了巨大的麻烦,也使到软件性能深受影响且造成人力、物力的浪费。
UML重点

1.简述消息的种类和状态的种类以及各自的概念一个对象向另一个对象发出的请求被称为消息。
简单来说,消息是连接发送者和接收者的一根箭头线。
消息类型有:简单消息,同步消息,异步消息。
在UML中对于状态的定义着重于对象行动的规则,状态描述了一个对象生命周期中的一个时间段。
它可以用三种附加方式说明:在某些方面性质相似的一组对象值;一个对象等待一些事件发生时的一段时间;对象执行持续活动的一段时间。
状态代表的是对象的行为积累的历史。
状态的种类:简单状态,并发组合状态,顺序组合状态,初始状态,终止状态,历史状态,子机器引用状态,桩状态。
2.比较RUP、XP以及其他软件开发过程之间的异同。
XP和RUP的比较XP (Extreme Programming)是Kent Beck和Ward Cunningham于1996年提出的一套软件开发过程理论。
它不同于以往的软件开发理论,没有对软件开发的整个过程进行强制而繁琐的规定,而是给出了一套在实际软件开发过程中需要遵守的活动原则。
XP没有强调复杂的过程和繁琐的文档,可以说XP是轻量级的软件开发过程理论。
当然,与任何软件过程理论一样,XP 也是为了利用更少的成本而开发出品质卓越的软件,满足最终用户的需求,所以它非常强调客户满意度和客户在软件项目中所扮演的角色。
在XP中,主要强调从四个基本方面来提升软件质量:△提高团队成员之间的沟通△以最简单的方法设计和编写程序△从最终用户处得到持续的反馈△在项目开发过程中,保持整个团队的士气和勇气在现代软件开发过程中,能够唯一保持不变的就是不断的变化。
客户的需求随时可以更改;竞争对手会在开发过程中推出新的版本,不得不使我们更改原有的软件开发计划和需求定义。
XP充分认识到了这个不可更改的现实,整个理论强调了作为软件开发团队要充分适应这种不断的变化,即使是在项目开发的后期。
1、共同点:XP和RUP都强调方便同一项目的不同投资者之间的沟通,尽管RUP为此明确选用UML,而XP则通常不使用正式的模型。
UML考试重点

UML考试重点第一章1.UML的定义:UML(Unified Modeling Language)统一建模语言用于对软件进行描述、可视化处理、构造和建立软件系统产品的文档;是一个通用的面向对象的建模语言;统一的定义:即合为整体建模的定义:即建立模型,为了理解事物对事物做出的一种抽象。
模型的定义:使用某种工具对同类或其他工具的表达方式。
语言:语言是人类最重要的交际工具,是人们进行沟通交流的各种表达符号2.UML十大模型图如何进行分类用例图:用例图狭义静态图:类图、对象图、包图广义静态图:用例图、类图、对象图、包图、组件图、配置图实现图:组件图、配置图交互图:时序图、协作图行为图:状态图、活动图动态图:交互图、行为图3.软件工程的6个阶段可行性分析、需求分析、设计、编码、测试、维护第二章1.UML建模的两个常用的建模工具Rose和Visio2.Rose建模的三大特征:迭代式开发、双向工程、可扩展的能力第三章1.UML四种事物的概念结构事物:(包含7种,分别是:用例、类、接口、协作、活动类、组件、节点)是UML模型的静态部分,主要用来描述概念的或物理的元素行为事物:模型的动态部分。
组织事物:又称为分组事物,是UML模型中的组织部分辅助事物:也称为注释事物,是UML模型中的解释部分,描述和标注模型的任何元素2.UML四种关系关联关系:表示类与类之间的联接,它使一个类知道另一个类的属性和方法。
关联关系的种类:双向关联、有向关联、聚合和组成关联依赖关系:一个类发生变化,可能一起对另一个对象的变化,则称后者对象依赖于前者的类(不可逆)泛化关系:一个类继承另一个类的功能,并可以增加自己的新功能的类间关系实现关系:将一种模型元素与另一种模型元素连接起来实现特定的功能的相互关联,并且接口只是行为的说明而不是结构或是实现第四章1.用例,用例图,参与者的定义用例:是相对完整的部分功能流程的描述,是对系统或子系统的某个连贯的功能单元的定义用例图:定义了系统的功能需求,是从系统的外部看系统功能,并不描述系统内部功能的具体实现。
UML复习资料

UML复习资料uml的考点一.uml语言的构成:1.从概念上uml对展开分割:静态结构、动态犯罪行为、同时实现结构、模型非政府和拓展机制形成了uml的概念和模型。
2.从可视化的角度进行划分:基本元素、关系元素、视图、图和公共机制构成了uml 的概念和模型。
二.uml的基本元素:在uml中,定义了四种基本的面向对象的事物,分别是结构、行为、分组和注释等。
(1)事物:事物是uml模型中面向对象基本的模块,它们在模型中属于静态部分。
在uml 中,定义了四种基本的面向对象的事物,分别是结构事物、行为事物、分组事物和注释事物等。
(2)结构:结构就是uml模型中的名词部分,这些名词往往形成模型的静态部分,负责管理叙述静态概念和客观元素。
在uml规范中,一共定义了七种结构。
这七种结构分别就是类、USB、协作、用例、主动类、构件和节点。
(3)行为:行为是指uml模型的相关动态行为,是uml模型的动态部分,它可以用来描述跨越时间和空间的行为。
可以把行为划分为两类,分别是交互和状态机。
(4)分组:分组就是uml对模型中的各种组成部分展开事物分组的一种机制。
只有一种分组,即为纸盒。
(5)注释:注释是uml模型的解释部分,用于进一步说明uml模型中的其它任何组成部分。
有一种最主要的注释,我们把它称为“注解“。
注解是依附于某个元素或一组建模元素之上,对这个或这一组建模元素进行约束或解释的简单注释符号。
三.uml中的关系:uml中主要包含四种关系,分别是依赖、关联、泛化和实现。
(1)倚赖关系:倚赖关系所指的就是两个事物之间的一种语义关系,当其中一个事物(单一制事物)发生变化就可以影响另外一个事物(倚赖事物)的语义。
(2)关联关系(聚集):是一种事物之间的结构关系,我们用它来描述一组链,链是对象之间的连接。
(3)简单化关系(承继):是事物之间的一种特殊/一般关系,特殊元素(子元素)的对象可以替代通常元素(父元素)的对象,也就是我们在面向对象学中常提出诉讼的承继(4)实现关系(实现接口):是uml元素之间的一种语义关系,它描述了一组操作的规约和一组对操作的具体实现之间的语义关系。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
月老
干儿子 外甥女 作品 没关系
小伙 干妈
姑娘 舅妈
恋人 撮合者
男友&老公 男主角
女友&太太
女主角
组合
组合
准备的礼 受物心意 礼物 物
玫瑰 没关系 买送主 受主 使用者
-22-
问题分析-5
F. 这些东东是怎么成事的?
月老牵线搭桥,介绍小伙和姑娘认识 姑娘和小伙一见钟情,成为一对恋人 一对恋人开始拍拖 小伙追求献花,表达对姑娘的爱意 姑娘收到999火红玫瑰 小伙真心求婚,姑娘以身相许 一对恋人终于走入婚姻殿堂
本节目的
通过简单通俗的事例来演绎对象建模的基本 概念
开阔视野,轻松树立面向对象的观点 掌握用面向对象方法分析问题的要领 为学习对象建模方法热身
-17-
1.4.1 问题分析
昨天我的一个朋友结婚了
-18-
问题分析-1
A. 这里面有什么东东?
月老,小伙,姑娘,恋人,玫瑰花
B. 每个东东看上去是什么样的?
UML: Unified Modeling Language 统一建模语言
Unified Modeling Language(统一建模语言)是对象管 理组织(OMG)制定的一个通用的、可视化的建模语言标 准,可以用来可视化(visualize) 、描述(specify)、 构造(construct)和文档化(document)软件密集型系 统的各种工件(artifacts,又译制品)
属性,在每个属性上都有一
个特征值
E
B C
F
小伙:体格,特征值:强壮
姑娘:性情,特征值:温柔 月老:年纪,特征值:较大 恋人:关系,特征值:亲密
1.3.2 UML的发展历史
面向对象建模语言产生于1970年代中期 1990年代初,建模语言数量达到50多种
众多语言各有千秋,缺乏通用性 语言之间的细小差别妨碍了用户的交流
1990年代中期,三位主要的OO建模大师: Booch,Rumbaugh,Jacobson开始致力于建 立统一建模语言的工作
A D
-25-
我的一个朋友结婚了-A
A.这里面有什么东东?
Object Class
B
我 — 本剧与我无关
我的朋友 小伙
E
我朋友的妻子 姑娘
月老 恋人 玫瑰
A D
……
C F
-26-
我的一个朋友结婚了-B
B.每个东东看上去是什么样 的?
每个事物看上去都有自己的
测试软件的方案描述.
1.2.1 软件建模要素
面向对 象的建 模方法
建模方法 建模过程
UML
建模语言 建模工具
支持UML 的建模工
具
1.2.2 软件建模方法
软件建模方法一览 面向对象的软件建模方法和特点 对象在三个世界中的含义和关系 软件领域中的对象 继承,封装 ,多态
1.3.1 UML的含义
-20-
问题分析-3
D. 这些东东都呆在什么地方?
月老:婚介所,交友网站 小伙:软件园,住唐家 姑娘:人民医院,住新香洲 恋人:情侣路,电影院, … 玫瑰花:花店里,小伙手中,姑娘手中
-21-
问题分析-4
E. 这些东东之间有什么关系?
关系 月老 小伙 姑娘 恋人 玫瑰
Much more important: Skill in designing with objects.
第一章 软件建模与UML概述
1.1 软件模型 1.2 软件建模 1.3 关于UML 1.4 一个UML建模的例子
1.4.1 问题分析 1.4.2 用对象观点认识事物 1.4.3 基于UML的分析
月老,看上去有些年纪了,挺热心的 小伙,看上去很强壮,很诚实的 姑娘,看上去好漂亮,还很温柔 恋人,看上去很亲密,当然就结婚了 玫瑰花,火红火红的,难怪姑娘动情了
-19-
问题分析-2
C. 每个东东能做点什么用?
月老:牵线搭桥,介绍认识 小伙:追求献花,表达爱意 姑娘:仰慕倾情,以身相许 恋人:拍拖,…,结婚 玫瑰花:传情示爱
软件模型的内容
需求模型
描述软件向用户所能够提供的 外在特性,包括软件的目标、 功能、性能等。
软件模型的内容
需求模型 分析模型
立足于系统的抽象逻
软件设计方案的规范化描述。 包括软件的架构、详细设计、 界面设计、数据库设计等模型。
软件模型的内容
需求模型 分析模型 设计模型 测试模型
Java、C++ 等程序设计语言用来编码实现一个 软件系统。
UML用于对一个软件系统建立模型。 一个比喻: 作曲用五线谱:
设计软件用UML:
-12-
UML和软件过程的关系
软件过程规定软件开发的阶段、步骤和工作。 UML是语言,用来描述软件模型。
A Language Is Not Enough to Build a System
-13-
建模、 OO(Object Oriented )与UML
建模是目的 OO是一种建模理论 UML是一种体现OO的建模语言,是将
OO理论转化为实践的工具
-14-
UML的是与非
The UML is not
a process or methodology object-oriented analysis and design Guidelines(指导、准则) for design
-23-
1.4.2 用对象观点认识事物
-24-
对象观点
A.这里面有什么东东? 类与对象
B.每个东东看上去是什么样的? 类的属性
B C
C.每个东东能做点什么用?
类的方法
E
F
D.这些东东都呆在什么地方?
类的行为、状态、部署
E.这些东东之间有什么关系? 类间的关联
F.这些东东是怎么成事的? 类间的交互
-8-
UML的创建人:
Rumbaugh
Booch
Jacobson
OMT方法
Booch方法 OOSE方法
UML
-9-
-10-
1.3.3 UML的本质
UML和程序设计语言的关系 UML和软件过程的关系 建模、 OO(Object Oriented )与UML UML的是与非
UML和程序设计语言的关系