2013年UML复习知识要点及考试范围 - 图文 联系客服

发布时间 : 星期日 文章2013年UML复习知识要点及考试范围 - 图文更新完毕开始阅读4fe51664b84ae45c3b358cfb

2013年UML复习知识要点及考试范围

1.

什么是UML?用UML进行建模的目的是什么?UML的主要特点是什么?

答:UML是对软件密集型系统中的制品进行可视化、详述、构造和文档化语言。

目的:1.使用模型可以更好地解决问题;2. 使用模型可以加强人员之间的沟通;3. 使用模型可以更早地发现错误或疏漏的地方;4. 使用模型可以获取设计结果;5. 模型为最后的代码生成提供依据。

特点:①统一的标准;②面向对象;③可视化、表示能力强大;④独立于过程;⑤概念明确,建模表示法简洁,图形结构清晰,容易掌握和使用。 2.

UML中包含哪9种图?每种图的用途是什么?

答:用例图(use case diagram)、顺序图(sequence diagram)、协作图(collaboration diagram)、类图(class diagram)、对象图(object diagram)、状态图(statechart diagram)、活动图(activity diagram)、构件图(component diagram)和部署图(deployment diagram) 用途:1.用例图(use case diagram)是被称为参与者的外部用户所能观察到的系统功能的模型图, 呈现了一些参与者和一些用例,以及它们之间的关系,主要用于对系统、子系统或类 的功能行为进行建模。

1

2. 类图(class diagram)的目的是显示建模系统的类型,描述组成系统的对象内容与对象之间的关系。

3. 对象图(object diagram)显示某时刻对象和对象之间的关系。一个对象图可看成一个类图的特 殊用例,实例和类可在其中显示。对象也和合作图相联系,合作图显示处于语境 中的对象原型(类元角色)。

4. 组件图(component diagram)的主要目的是显示系统组件间的结构关系。

5. 序列图(sequence diagram)用于为使用方案的逻辑建模。使用方案恰如其名称所揭示的那样--描述使 用系统的潜在方法。使用方案的逻辑可以是用例的一部分,可能是备选过程。 6.状态图(statechart diagram)用于检查、调试和描述类的动作行为。

7.活动图(activity diagram)用于对系统的工作流程建模,即迪对系统的业务过程建模,也可以对具体的操作建模,用于描述计算机过程的细节。

8.协作图(collaboration diagram)1. 通过描绘对象之间消息的传递情况来反映具体的使用语境的逻辑表达。2. 显示对象及其交互关系的空间组织结构。3. 协作图的另外一个作用是表现一个类操作的实现。

9.部署图(deployment diagram)用于帮助理解分布式系统。 3.

什么是用例?什么是参与者?用例之间、参与者之间以及用例

2

与参与者之间有分别什么关系?其表示符号是什么?根据需求分析要求能画出系统的用例图。

答:用例是对一个活动者使用系统的一项功能时所进行的交互过程的一个文字描述序列。

参与者(actor)是指系统一位的、需要使用系统或与系统交互的东西,包括人、设备、外部系统等。

关系类型 关联(association) 说明 actor和use case之间的关系 表示符号 泛化(generalization) actor之间和use case之间的关系 包含(include) use case 之间的关系 扩展(extend) use case 之间的关系 用例图:

4.

什么是交互图?什么是顺序图和协作图?二者有何异同?顺

序图和协作图中分别包含哪些建模元素?

答:交互图(interaction diagram)是用来描述对象之间以及对象与

3

参与者之间的动态协作关系以及协作过程中行为次序的图形文档。 顺序图(sequence diagram)是显示对象之间交互的图,这些图像是按时间顺序排列。

协作图(collaboration diagram)是用于描述系统行为是如何由系统的成分协作实现的图。

二者的区别:顺序图强调的是消息的时间顺序,而协作图强调的是参与交互的对象的组织。

顺序图中包括的建模元素有:对象(参与者实例也是对象)、生命线(lifeline)、控制焦点(focus of control,FOC)、消息(message)等

协作图中包括的建模元素有对象(包括参与者实例、多对象、主动对象等)、消息、链等。

顺序图:

stu : StudentForm : FormObjectcourse : Coursecontrol : ControlObjectdb : Database1: SelectCommand()2: GetAllCourse()3: QueryCourse()4: Create(String,int,String,String)5: GetcourseInfo()6: DisplayCourseList()7: DeleteCourse()8: GetCourse()9: QueryAssociation(int,int)10: QueryAssociation(int,int)11: CanSelect()12: AddAssociation(int,int)13: ShowSucessInfo()14: GetStudentId()

4