文档库 最新最全的文档下载
当前位置:文档库 › 《可视化建模与UML》实验1-5指导教案

《可视化建模与UML》实验1-5指导教案

《可视化建模与UML》实验1-5指导教案
《可视化建模与UML》实验1-5指导教案

可视化建模与UML

井大电信学院

2015.03

目录

实验一常用建模软件 (3)

实验二需求定义与陈述 (4)

实验三用例建模 (8)

实验四类图(与对象图)建模 (10)

实验五UML静态模型分析 (11)

实验六交互建模(顺序图与协作图) (14)

实验七行为建模(状态图和活动图) (16)

实验八* 构件图和部署图建模 (20)

实验九* 交互概述图 (22)

实验十* 设计建模实例与分析 (27)

实验十一* 数据库建模实例与分析 (29)

实验一常用建模软件的使用

【实验目的】

1.熟悉常用UML建模工具。

2.熟练掌握Rational Rose的基本操作

3.掌握UML规则和相关机制。

4.掌握UML的可见性规则和构造型的作用。

【实验性质】

验证性实验

【实验环境要求】

Pentium II以上微机,Windows2000以上操作系统,Rational Rose2003,Microsoft Visio,网络。

【实验内容和步骤】

一、安装Rational Rose2003或其它任意一种UML建模工具。本项内容实验者根据情况选择并在实验课外完成。

二、练习使用建模工具建立各种UML图形,并对图形进行相应编辑和修改。认识各种UML关系及可见性符号,并用工具表示出来。

【分析与讨论】

1.总结UML在软件工程中的作用以及使用UML建模的必要性。

2.比较不同建模工具。

【实验导读】

关于Rational Rose2003的安装。Rational Rose的安装比较麻烦,通过安装Rational Rose2003,并在安装过程中,发现一些问题,解决和理解

它。

Rational Rose的建模环境:

Rose是个菜单驱动应用程序,用工具栏帮助使用常用特性。Rose支持九种不同类型的UML图:User Case图,CLASS图,Activity图,Sequence 图,Collaboration图,Class图,Statechart图.Component图和Deployment图。

Rose界面的五大部分是浏览器.文档窗口.工具栏.框图窗口和日志,如图1-1所示。

浏览器:用于在模型中迅速漫游;

文档窗口:用于查看或更新模型元素的文档;

工具栏:用于迅速访问常用命令;

框图窗口:用于显示和编辑一个或多个UML框图;

日志:用于查看错误消息和报告各个命令的结果。

若要了解更详细的知识,请看教材。

Rose模型的四个视图

Rose模型的四个视图是:Use Case视图.Logical视图.Component视图和Deployment视图。各个视图的具体功能请参见教材。

图1-1 Rational Rose界面

实验二需求定义与陈述

【实验目的】

1.了解软件工程的开发过程

2.掌握需求和需求分析的概念

3.掌握需求分析的过程和常用方法

4.掌握需求分析的要点和误区

5.学习如何做需求陈述

【实验性质】

探索型实验

【实验环境要求】

Pentium II以上微机,Windows2000以上操作系统,Microsoft Visio, Microsoft office2003以上,网络。

【实验内容和步骤】

1.软件工程的开发过程分为哪几部分?

2.什么是需求?需求包括哪几个方面?

3.什么是需求分析?需求分析有何重要意义?需求分析可以分为哪几个步骤?

4.进行需求分析的时候要注意哪些要点和误区?

5. 在对现行系统的业务流程建模的基础上,确定目标系统的需求,并按照分层的逻辑陈述。

【分析与讨论】

各小组协作讨论修改选定系统的需求陈述。

实验三用例建模

【实验目的】

1.掌握用例与场景的概念。

2.掌握UML用例图的组成.作用以及使用场合。

3.掌握用例与用例之间的各种关系。

4.学习针对具体场景使用用例图进行分析说明的方法。

5.掌握用例描述的概念和基本结构,以及用例描述的作用。

【实验性质】

设计型实验

【实验环境要求】

Pentium II以上微机,Windows2000以上操作系统,Rational Rose,Microsoft Visio, Microsoft office2003以上,网络。

【实验内容和步骤】

一.想一想

1.为了满足物业中介行业的信息化要求,甲公司基于详尽的需求调研与分析,准备研发一套符合市场需要的、实用的信息管理系统。主要将实现客户资料信息管理、客户委托(出租、出售、租赁、购买)信息管理、业务线索生成与管理、房源状态自动更新、权限管理、到期用户管理、房源组合查询等功能。该公司小王,通过多次的与潜在客户的交流与沟通,完成了最初的用例模型的开发,下图是一个用例模型的局部:

图3-1 物业管理信息系统用例图修改房源信息

小李认为该模型不符合“用例建模”的思想,存在明显的错误。用200字以内说明错误所在,并说明应该如何修改。

2.图3-2是一个描述保险商务系统的简单用例图。根据该用例图回答问题。

a) “签订保险单”用例可能涉及到哪几个实体类?

b) 现实生活中签订保单的基本流程如下:客户提出购买需求,保险员根据客户需求选择相应的保险服务,客户阅读保险条款,同意后打印保单样据,客户签字并支付保金,保单开始生效,保险员做相关系统纪录。如需要根据以上信息,请列举这个用例描述中可能存在扩展事件流。

c) 保单管理用例在实际开发过程中可以泛化出若干小用例,列出可能存在的子用例,并且说明这些用例和“保单管理”用例之间关系。

图3-2 保险商务系统用例分析图

二.练一练

3.在一个TelephoneSystem(电话系统)中,用户可以使用电话卡或对方付款两种办法来打电话。

1)请画出表示该场景的用例图。

2)在前图的基础上,继续画出可能存在的包含用例和扩展用例。

4.为目标系统建立用例模型。

【分析与讨论】

1.总结用例图的重要作用,讨论并指出哪些场合下可以使用用例图。

2.讨论用例分析技术和结构化分析之间的关系和区别。

3.在使用用例图的时候应该如何划分用例,应注意哪些问题?

4.用例图能表达的信息依然是有限的,如何对每个用例做简单描述?

【扩展导读】

用例图和用例描述共同构成用例模型,以下是有关用例描述的材料阅读,通过阅读学会为选定系统做用例描述。

用例的描述格式(参考模板)

如:用例“添加图书”的描述

实验四类图和对象图建模

【实验目的】

1.掌握类的定义,类的3要素,UML中类的表示方法。

2.掌握类与类之间的各种关系代表的含义及表示方法。

3.实体类,边界类,控制类,关联类的概念和表示方法。

4.了解对象图。

5.学会对一个系统建立类和对象图并进行相关的描述。

6.掌握类和包图的关系并学会用包来对类分组。

【实验性质】

设计型实验

【实验环境要求】

Pentium II以上微机,Windows2000以上操作系统,Rational Rose,Microsoft Visio, Microsoft office2003以上,网络。

【实验内容和步骤】

一、想一想:

1.简述类的属性和方法的可见性有哪些?UML中如何表示?

2.分析类模型和设计类模型的区别和联系?

二、练一练:

3.已知三个类A.B和C.其中类A由类B的一个实类和类C的1个或多个实类构成.请画出能够正确表示类A,B和C之间关系的UML类图.

4.根据以下描述画出类图,并注明多重性关系:一个学生可以选修多门课程,也可能没有任何课程;一门课程可以被多个学生选修;一个老师可以教

多门课程或者不教课;每门课程至少有一个老师,也可以有多个老师任教;每门课程可以有0或1本教材,每本教材只能用于一门课程。

5.现有一系统需要对商品进行管理,包括添加,删除商品,修改商品信息三项功能,画出系统类图。(商品信息包括商品编号,商品名称,价格,生产厂商等)

1)如果现在系统需求发生变化,需要能够对损坏商品进行打折,以及可以按照商品的颜色和外形进行查询,则系统类图应该如何修改?

2)根据下面的代码画出Invoice类的类图,要求标明各属性的类型和可见性以及类方法。

public class Invoice

{

public double amount;

public Date date = new Date();

public string customer;

public string specification;

public string administrator = “unspecified”;

static private int number_of_invoices()=0;

public invoice();

{

number_of_invoices++;

}

public void print()

{

System.out.println("The number of invoices is”+ int

number_of_invoices);

}

}

6.下图4-1是一个仓库管理系统的类模型局部,其中IncomeOrder是指入库单,OrderItem是指入库中的每一项,Product则是产品信息。请指出模型中的错误,说明原因并改正类图。

图4-1 仓库管理系统的局部类模型

【分析与讨论】

1.讨论类图在建模过程中的重要作用。

2.总结在设计绘制类图的过程中应注意哪些问题。

3.在下图4-2中最上面的对象的名称是什么?该图表示的意思是什么?请绘制出与其相应的类图。

图4-2 示例图

4.说明对象图的适用场景以及它的优缺点

【实验导读】

1.注意:在逻辑视图中创建类,创建的类须指定相应的类的版型,即是边界类.实体类或控制类;类的取名一定要简洁.明了,当类的名字由多个单词构成时,可以由每个单词的首字母构成类名。

2.在分析类模型中要定义类的职责,那么,如何定义类的职责?例:已定义的类PersonalPlannerForm有三个职责://maintain profile//prompt to create new profile//submit profile information

具体操作步骤:

1)双击PersonalPlannerForm类,打开Specification窗口;

2)选择Operation标签,在空白窗口中,鼠标右键点击,选择Insert,输入该类的第一个职责,得到图4-3;

3)重复步骤2,为该类添加完所有的操作;

4)重复1-3直到所有类的操作均添加完毕。

图4-3 输入类的属性

3.如何创建包,并将类组成包?

◆创建包的具体操作:

A.右键单击浏览器中的Logical 视图;

B.选择New/Package;

C.新包取名如Entities;

D.重复前述步骤A~D,创建Boundaries 和Control包。

◆将类组成包

A.在浏览器中,将边界类如PersonalPlannerForm类拖动到Boundaries 包;

B.重复上述步骤,把已定义的实体类和控制类分别拖入所属包。

相关文档