uml

  • 格式:doc
  • 大小:733.00 KB
  • 文档页数:13

《UML与软件建模》实验1 用例建模[实验日期] 2013年3月13日[实验目的](1)掌握客户需求分析的方法和步骤(2)了解以用例驱动的软件开发(3)识别并编写用例(4)掌握Rose进行用例建模的具体方法和步骤[实验内容]要求学生根据周围的实际情况,自选一个小型应用项目,分析业务需求,识别并编写用例、绘制用例图以理解系统需求。

本实验使用的是教师指定的“企业综合信息管理系统”中的“进销存管理子系统”。

[实验原理和步骤]原理:(1)需求获取。

以任务和客户为中心,通过会议、面谈等手段对客户需求进行调研,获得系统目标、范围和功能要求的初步说明。

(2)用例分析。

确定用例,同时采用分层思想,对用例的层次级别进行划分(3)用例描述。

分层获知用例图,撰写用例的文字描述步骤:(1)需求获取。

(2)用例分析。

确定系统范围和边界、确定参与者、确定用例。

(3)用例描述。

分层绘制用例图、描述用例。

[画图原理]采用rose软件进行用例建模必须建立在完好的系统用例分析基础之上。

步骤:(1)分层绘制用例图,每层采用“包”进行管理。

(2)以“企业综合信息管理系统”->“进销存管理”子系统->“销售管理”->“合同管理”->“收款单处理”为主线完成整个过程[实验结果](1)实验截图:(2)采用Rose绘制的“企业综合信息管理系统”的顶层用例图(3)“管理销售”1级用例图(4)“管理销售子系统”3级用例图(4)“销售合同管理子系统”4级用例图[实验总结]UML与以往我们学的计算机相关的知识有所不同,它通过图形和少量的文字方式,把软件设计者的思想表达出来,进行相应的分析之后,才开始代码的设计与编写。

以前所学的课程,基本上都停留在代码编写这一部分,现在对于软件的设计有了更进一步的了解。

实验中,通过使用Rose软件,进行画图与设计,我了解了用例的概念以及在建模过程中的最要作用,对于我来说,是学习UML语言很好的开始。

《UML与软件建模》实验2 分析建模[实验日期] 2013年3月20日[实验目的](5)理解面向对象系统分析和对象类建模的概念(6)了解和掌握面向对象系统分析的方法和步骤(7)了解和掌握寻找开发系统中类的方法和技巧(8)掌握使用Rose绘制概念模型的方法[实验内容]在用例分析的基础上,选择第一个迭代周期打算开发的用例,建立相关的概念模型。

[实验原理和步骤]建模原理:(4)使用概念目录列表和非正式分析法相结合的方法识别概念。

因此,待开发用例的文字描述中,名词可能成为概念或属性的候选对象;表示行为的动词词组有可能成为事务型或过程型对象;形容词词组有可能对应抽象的名次概念。

采用的技术基本上就是:ER图+纯行为+OO的聚合、泛化。

(5)最终关联的数量介于“需要知道”型与【“需要知道”型关联+“需要理解”型】之间。

步骤:(4)识别关键用例作为第一个迭代周期的开发目标。

(5)识别概念和重要属性。

(6)建立概念间的关联。

[画图原理]步骤:(4)前提条件:第一个迭代周期“企业综合信息管理系统”->“进销存管理”子系统->“销售管理”->“合同管理”->“收款单处理”主线中的“收款单处理”用例。

(5)建立相关的概念模型的基础上,在“逻辑视图”下的类图中描述概念模型,可以直接在类图main中绘制,也可以采用类似用例图中用过的分包机制。

(6)绘制概念和重要属性(7)绘制概念间的关联[实验结果](1)实验截图:(2)“销售管理子系统概念模型“图示[实验总结]了解了在视图下新建包,在包中再建立包,在包下可以建立类,来绘制图形。

类与类之间的关系如何表示,相关的属性应该如何添加,以及箭头的方向怎样从空心到实心。

这些都是在使用Rose软件过程中学习到的知识,一方面掌握了软件基本操作,另一方面对类视图也有了更进一步的理解。

在本次实验中,通过使用Rose软件,建立类视图,与前面的用例视图有了一些不同的地方,但是总的思想还是大致相同。

类视图与我们在学习面向对象这门语言有一点不同,从那个属性继承而来的,箭头就指向那个属性,和我们的习惯有些不同,这一点是我们在以后的学习中要注意的。

《UML与软件建模》实验3 设计建模[实验日期] 2013年3月27日[实验目的](9)理解顺序图的基本概念(10)了解和掌握软件工程中用例逻辑时序的分析方法(11)掌握使用ROSE创建顺序图的方法[实验内容]在用例模型和概念模型的基础上,对首选的用例进行时间分解,识别出系统事件(系统操作),(并写出的后置条件);为每个系统事件画顺序图,为对象分配职责。

[实验原理和步骤]原理:(6)在系统顺序图中,所有的系统都被当成黑盒子看待,顺序图的重点是参与者发起的跨越系统边界的事件。

(7)系统事件是由某参与者发起的指向系统的输入事件。

一个事件的发生能够触发一个响应操作的执行。

(8)请仔细研究下图,考察它是如何从左边的“购买商品”用例的文字描述中分解出3个系统事件的。

(9)参照用例模型和概念模型,为每个系统操作估计后置条件。

(实例创建、形成关联、属性修改)(10)按照设计模式为对象分配职责。

步骤:(7)分析首选用例的文字描述,按事件进行分解,识别出系统事件。

(实验是以“企业综合信息管理系统”->“进销存管理”子系统->“瘦小管理”->“合同管理”->“收款单处理”主线中的“收款单处理”用例为例)。

(8)为每个系统事件估计后置条件。

(9)按设计模式进行设计。

首先考虑控制者,领域控制者选参与者角色,即“销售人员”。

为了避免使用FORM,窗口等表示层对象,我们人造一个类“应用协调者”向控制者发送消息。

[实验结果](1)处理付款单顺序图:(2)“付款单处理“类图(2)顺序图[实验总结]从本次实验中,每个类对象都有生命周期,顺序图是按照一定的顺序进行下来的,有时间顺序。

除此之外,我们还能学到类与类之间的关系如何表示,相关的属性应该如何添加,以及箭头的方向怎样从空心到实心。

这些都是在使用Rose软件过程中学习到的知识,一方面掌握了软件基本操作,另一方面对类视图也有了更进一步的理解。

在本次实验中,通过使用Rose软件,在有了类图的前提下,建立顺序视图,与前面的用例视图有了一些不同的地方,但是总的思想还是大致相同。

类视图与我们在学习面向对象这门语言有一点不同,从那个属性继承而来的,箭头就指向那个属性,和我们的习惯有些不同,这一点是我们在以后的学习中要注意的。

实验之后,对UML有了更深的了解。

《UML与软件建模》实验四:设计建模2[实验日期]:2013年4月3日[实验目的]:理解面向对象类之间关联的概念;了解和掌握分析类之间关联关系的方法;了解和掌握待开发系统中类之间关联关系的分析方法;完善设计类图,掌握使用Rose对关联进行建模的过程。

[实验内容]:根据设计建模(1)中交互分析,进一步设计关联和对象可见性(补上遗漏的关联),完善设计类图。

[实验原理与步骤]:建模原理:(1)关联关系描绘了给定类的对象个体之间的语义连接。

关联可以分为一般关联、聚合关联、组合关联和依赖关联等。

(2)一般关联包括一对类的二元关联及多个类之间的多元关联。

(3)聚合表示整体和部分之间较强的关联关系,聚合关系的多重性大于1,则称为共享聚合。

(4)组合关系表示整体和部分之间有比聚合关系更强的关系,它们之间是一对一的关系,即同生死共存亡,组合关系不能共享。

(5)依赖关系是一种使用关系,表现为一个对象仅仅调用了另一个对象的服务。

可以使用下列的指导方针列出暂时性的关系:(1)存在两个或两个以上的类相互之间就可能有关联。

(2)类的操作(成员函数)的参数列表里出现其他类的对象。

(3)一个类包含另一个类的对象(对象成员)。

(4)根据一般常识可能会出现的关联。

步骤:(1)分析已建立的设计类图和交互图,进一步设计关联和对象可见性(补上遗漏的关联)。

(下面以“企业综合信息管理系统”->“进销存管理”子系统->“销售管理”->“合同管理”->“收款单处理”主线中的“收款单处理”用例为例)。

在销售管理子系统中,定义的各个类之间一般都有关系发生。

销售人员和客户(大客户)共同签署销售合同,销售合同中涉及到多种可以销售的产品,合同经公司经理审查并签字后该合同才能生效,付款单需要客户付款,销售人员签发催款单向客户催缴欠款,销售人员制定销售计划,销售人员要检查督促执行期合同按合同执行、履约,履约后的合同转到履约合同数据库存档备查等等。

例如:(a)销售人员与客户:一般关联,多对多(b)销售合同与合同明细,销售计划与计划明细:组合。

(c)付款单与客户:依赖关系。

《如果付款单类中有“统计付款金额(客户类客户对象)”操作的话,付款单类就依赖客户类》(2)完善设计类图画图原理:(1)关联关系描绘了给定类的对象个体之间的语义连接,是类与类之间的连接,关联可以分为一般关联、聚合关联、组合关联、依赖关联。

(2)一般关联包括一对类的二元关联及多个类之间的多元关联。

(3)聚合表示整体和部分之间较强的关联关系,聚合关系的多重性大于1,则称为共享聚合。

(4)组合关系表示整体和部分之间的有比聚合关系更强的关系,它们之间是一对一的关系,即同生死共存亡,组合关系不能共享。

(5)依赖关系是一种使用关系,表现为一个对象仅仅调用了另一个对象的服务。

步骤:(1)在关联和对象可见性分析的基础上,补充一般关联、组合,泛化、依赖(a)一般关联关系要注意关联的命名以及哪个是role A哪个是role B。

(b)一般关联选中role B detail 中的aggregate,就变成聚合;再选中by value 就变成组合(c)依赖画虚线箭头。

(2)完善设计类图[实验结果]:完善的设计类图(采用ROSE 绘制的设计类图),包括关联的多重性,类中重要属性和方法等[实验总结]:在本次实验中,通过使用Rose软件,在有了类图的前提下,建立顺序视图,与前面的用例视图有了一些不同的地方,但是总的思想还是大致相同。

类视图与我们在学习面向对象这门语言有一点不同,从那个属性继承而来的,箭头就指向那个属性,和我们的习惯有些不同,这一点是我们在以后的学习中要注意的。

实验之后,对UML基本上掌握,可以说是真正学了一门与计算机相关的课程。

《UML与软件建模》实验报告书安徽工业大学计算机学院姓名胡婷婷专业计算机科学与技术班级101班学号099074009指导教师胡增涛2013年5月3日。