软件工程之面试常考点
软件工程静态视图有:用例图、类图、包图
动态视图:活动图、状态图、时序图、协作图(描述事物行为的)
1、用例图
用例视图采用参与者和用例作为基本元素,以不同的视角展现系统的功能性需求。用例图是了解系统的第一关口,人们通过用例视图得知一个系统将会做什么。对客户来说,用例视图是他们业务领域的逻辑化表达,对建设单位来说,用例视图是系统蓝图和工发的依据。
2、类图
类图用于展示系统中的类及其相互之间的关系。本质上说,类图是现实世界问题领域的抽象对象的结构化、概念化、逻辑化描述。
实际上,UML解决面向对象的困难的方法源于面向对象方法中对类理解的三个层次观点,这三个层次是概念层、说明层和实现层。在UML中,从开始的需求到最终的设计类,类图也是围绕着这三个层次的观点进行建模的。类图建模是先概念层而说明层,进而实现层这样一个随着抽象层次的逐步降低而逐步细化的过程。
3、包图
这个没什么好解释的,在实际项目中,建模过程中获取的元素是非常多的,如果要将这些元素的关系都绘制出来将如同蜘蛛网一样难以辨别。通过包这个容器来从大到小、从粗到细地建立关系是一种很好的方法。
4、活动图
活动图是描述用例场景最为常用的图,它可以方便地描述角色职责。
用例活动图一般可以理解为业务流程,对象活动图刚用于展示 对象交互。
5、状态图
状态图是一个状态机。状态机对模型元素的动态行为进行建模,更具体的说,就是对系统行为中受事件驱动的方面进行建模。通常使用状态图来说明业务角色或业务实体可能的状态----导致状态转换的事件和状态转换引起的操作。还要注意状态图只描述单个对象的行为。
6、时序图
时序图用于描述按时间顺序排列的对象之间的交互模式;它按照参与交互的对象所具有的生命线和它们相互发送的消息来显示这些对象。
时序图描述了在交互的对象中所产生的事件,以及这些对象如何通过相互发送消息进行通信。可以为用例事件流的各种不同形式制作时序图。
7、协作图
协作图用于显示组件及其交互关系的空间组织结构,它并不侧重于交互的顺序。协作图显示了交互中各个对象之间的组织交互关系以及对象彼此之间的链接。与序列图不同,协作图显示的是对象之间的关系。另一方面,协作图没有将时间作为一个单独的维度,因此序列号就决定了消息及并发线程的顺序。协作图是一个介于符号图和序列图之间的交叉产物,它用带有编号的箭头来描述特定的方案,以显示在整个方案过程中消息的移动情况。
协作图具有以下用途:
- 通过描绘对象之间消息的移动情况来反映具体的方案。
- 显示对象及其交互关系的空间组织结构,而非交互的顺序。
8、配置图
配置图描述了运行软件的系统中硬件和软件的物理结构。配置图中通常包含两种元素:节点(Node)和关联关系(Association)
以上大部分来源于Think In UML