UML期末论文大作业Word下载.docx
《UML期末论文大作业Word下载.docx》由会员分享,可在线阅读,更多相关《UML期末论文大作业Word下载.docx(24页珍藏版)》请在冰豆网上搜索。
(1)Orde和OrderItem之间是组合关系
(2)Order和Customer、Consignee、DeliverOrder是关联关系
(3)Product和Peddlery、OrderItem是关联关系
(4)Customer和Personal、Company是泛化关系
实验总结:
(主要针对实验结果或步骤认真分析)
通过本次实验熟悉了Rose工具的环境,自己画类图掌握了类图之间的四种关系:
关联(包括组合、聚合两种)、泛化、实现、依赖。
将画好的类图进行发布成为HTML文件。
初次上本课实验,画图中出错就需要自己有耐心检查,这样才可做好实验。
教师评语:
《统一建模语言》实验报告
(二)
本次实验成绩:
用例图的使用
通过本次实验,学生用例的设计。
RationalRose或PowerDesigner
1、画出教材P65图6-1棋牌馆管理系统的用例图;
2、说出图中用例间有哪些关系?
3、说明用例图在需求分析中的作用;
4、如何识别用例?
1、棋牌馆管理系统的用例图
2.图中用例之间的关系有:
系统边界、包含关系、扩展关系、泛化关系。
3.用例在需求分析中的作用:
展示了用例之间以及用例与参与者之间是怎样相互联系的,用例图对系统、子系统或类的行为进行了可视化,使用户能够理解如何使用这些元素,并使开发者能够实现这些元素。
4.从参与者的角度看,参与者是怎样使用系统的,用过回答以下问题可以识别用例:
(1)系统支持哪些用户组完成他们的工作?
(2)哪一个用户组执行系统的主要功能?
(3)次要功能由哪一种用户组完成?
如维护或管理。
(4)与该系统进行交互的外部硬件和软件系统是哪些?
一旦参与者被标识出来后,需求获取的下一步是,决定每一个参与者将访问的。
(主要针对实验结果或步骤进行认真分析)
通过本次实验掌握了用例图之间的四种关系有:
系统边界、包含关系、扩展关系、泛化关系;
该图呈现了一些参与者和一些用例,如何识别参与者。
了解用例图在软件开发过程中的需求分析阶段所起到的重要作用,并学会了识别用例和更好的阅读分析用例图。
《统一建模语言》实验报告(三)
顺序图的设计
掌握如何利用建模工具设计顺序图。
实验内容:
1、以用银联卡在银行自动提款机取钱的业务为业务模型,设计顺序图;
2、对象有取款人、提款机与银行服务器,本次取款额为3000元;
3、画出顺序图并写出详细操作步骤;
4、把上面设计的顺序图转化为协作图(通信图)。
顺序图
详细步骤:
取款人在提款机上输入密码,提款机向银行服务器提交密码,若密码正确则显示服务类别,取款人选择取款3000元,提款机检查是否有足够的余额,若有就出钞3000元,若小于3000元则提示余额不足;
若密码不正确则提示取款人再次输入密码。
顺序图转化为协作图(通信图)。
通过本次试验,我了解到,顺序图和通信图的语义是等价的。
只是它们的关注点有所不同,顺序图着重对象在时间顺序上的交互,而通信图着重再看空间布局上的协作关系。
用户可以很容易的完成顺序图到通信图的转换,在Rose中这个转换按F5就可自动完成。
《统一建模语言》实验报告(四)
双向工程
学会利用建模工具生成代码和逆向工程。
RationalRoseV2002或PowerDesignerV15
1、把实验一设计的类生成代码(选择自己熟悉的语言);
2、把自己设计的JAVA(或其他语言)程序进行逆向工程,把分析产生的主要类图画出来;
3、通过以上实验总结双向工程在软件设计中的意义。
1、画好实验一的类图,设置环境变量ClassPath,Tools->
Java/j2ee->
ProjectSpecification->
ClassPath:
具体路径设置为正向工程生成java文件要保存的目录,一般为项目的src目录。
打开设计好的类图,选中要生成的Java文件的类,然后通过Tools->
Java/J2ee->
GeneralCode生成java文件。
正向工程
Personal.java
publicclassPersonalextendsCustomer
{
/**
*@roseuid4FE3C1C401A5
*/
publicPersonal()
{
}
}
Company.java
publicclassCompanyextendsCustomer
*@roseuid4FE3C1C40203
publicCompany()
Customer.java
publicclassCustomer
{privateintname;
privateintaddress;
publicOrdertheOrder;
*@roseuid4FE3C1C40232
publicCustomer()
*@roseuid4FE3BFE600FA
publicvoidgetCreditRating()
Consignee.java
publicclassConsignee
privateintname;
privateintadress;
privateintmoblieNumber;
*@roseuid4FE3C1C40271
publicConsignee()
Order.java
publicclassOrder
privateintorderDate;
privateintdestArea;
privateintprice;
privateintpaymentType;
publicConsigneetheConsignee;
publicDeliverOrdertheDeliverOrder;
*@roseuid4FE3C1C402BF
publicOrder()
*@roseuid4FE3C08C001F
publicvoiddispatch()
*@roseuid4FE3C091004E
publicvoidclose()
{
DeliverOrder.java
publicclassDeliverOrder
privateintdeliverOrderId;
publicOrderItemtheOrderItem;
*@roseuid4FE3C1C500CB
publicDeliverOrder()
*@roseuid4FE3C0FB0232
OrderItem.java
publicclassOrderItem
privateIntegerproductId;
privateIntegerquanlity;
privatefloatprice;
privateintdeliverState;
*@roseuid4FE3C1C5005D
publicOrderItem()
*@roseuid4FE3C0D00280
publicvoidstateChange()
Peddlery.java
publicclassPeddlery
{privateintpeddleryId;
publicProducttheProduct;
*@roseuid4FE3C1C50128
publicPeddlery()
Product.java
publicclassProduct
privateintproductId;
privateintproductName;
privateintproductType;
*@roseuid4FE3C1C50157
publicProduct()
2、逆向工程
步骤:
点击Tools->
ReverseEngineer,调出JavaReverseEngineer对话框。
在此页面添加要进行逆向工程的Java文件,并选中,然后点击Reverse按钮即可。
逆向工程类图
意义:
正向工程是把设计模型转换为代码框架,开发者不需要编写类、属性、方法代码。
一般情况下,开发人员将系统设计细化到一定的级别,然后应用到正向工程。
逆向工程是把代码转换成设计模型,在迭代开发周期中,一旦某个模型作为迭代的一部分被修改,采用正向工程把新的类、方法、属性加入代码;
同时,一旦某些代码被修改,采用逆向工程,将修改后的代码转换成设计模型。
《统一建模语言》实验报告(五)
利用建模工具进行数据库建模
通过本次实验掌握如何利用Rose或PD进行数据库建模。
RationalRose或PowerDesigner+SQLServer
1、利用Rose或PD设计数据库(字段自己定义);
2、分别利用Rose或PD设计的数据库并在SQLServer中生成数据库(写出详细步骤);
3、对比两个建模工具在数据库设计上的不同。
1.使用Rose设计数据库并在SQLServer中生成数据库
(1)在ComponentView上右键,选择Datamodeler,选择new,选择Database,给数据库命名并选择数据库版本为SQLServer2005。
(2)在新建的数据库上右键,选择DataModeler,选择new,选择Tablespace,将其命名为primary(必须的)
(3)在LogicView上右键,选择DataModeler,选择new,选择schema,在弹出的对话框中选择刚才创建的数据库。
(4)在新建的schema上右键,选择DataModeler,选择new,选择Table,将新建的Table拖拽到右侧窗口,设计字段名称,并选择primary。
(5)在SQLServer2005上新建一个数据库。
(6)在rose中选择数据库,右键选择DataModeler,选择ForwardEngineer,单击下一步,下一步,exeute选中,填写user、password、Server、database,单击下一步,单击完成。
(7)在SQLServer2005就可以查看到创建的表了。
2.使用PowerDesigner设计数据库并在SQLServer中生成数据库
第一步:
概念数据模型
打开PowerDesigner软件,设计“概念数据模型”(ConceptualDataModel),它通常用在概要设计阶段。
设计表结构
注意:
如果Palette(工具面板)没有显示,可以在工具栏-->
右键-->
选择“Palette”(打勾选中)
设计结果如下:
在设计属性(字段)的时候,三个字母(M、P、D)分别表示:
M:
是否为空;
(√表示不允许为空)
P:
是否为主键;
D:
是否在该软件的视图中显示;
添加“Relationship”关系时,请注意:
1、在所有实体对象中,属性的取名不能重复。
2、当添加引用完整性时,外键表不必添加主键表的主键字段作为外键。
因为,在添加“Relationship”关系之后,再转换为物理模型以后,外键表将自动添加外键字段列。
3、在添加“Relationship”关系时,起始点实体默认为主键表,结束点实体默认为外键表。
当然,可以在“Relationship”中改变。
第二步:
物理数据模型
将“概念数据模型”的相关设计转换为“物理数据模型”(PhysicalDataModel),相当于从“概要设计”转换为“详细设计”,即对表和关系的具体实现。
选择“Tools”-->
“GeneratePhysicalDataModel...”即可。
然后选择SQLServer2005数据库管理软件:
点击“确定”按钮以后,就产生了对应“SQLServer2005”数据库的表、属性、关系的具体实现。
在PowerDesigner中添加约束
1>
查看或设置属性(字段)的相关约束
2>
设置“标识列”(自动增长)
3>
设置“默认值”
4>
设置“Check约束”
5>
设置唯一索引
第三步:
在SQLServer2005中手动创建数据库
比如:
我在SQLServer2005中手动创建数据库“Students”示例。
第四步:
在数据源ODBC中配置用户数据源
我在用户数据源中,添加数据库“Students”的数据源。
第五步:
在SQLServer2005中自动创建表结构
首先:
根据“物理数据模型”(PhysicalDataModel)自动建立相应的SQL语句:
其次:
执行其创建的SQL语句文件,将数据表结构自动创建到SQLServer2005数据库中:
完成以上步骤后,刷新SQLServer2005数据,将会看到你所创建的相关表结构。
当然,以上两个步骤可以一起完成:
只要在“Database”“DatabaseGeneration”中,选择“Directgeneration”即可:
这样,使用PowerDesigner设计SQLServer数据库的基本步骤就全部完成!
Rose或PD设计的数据库不同:
1、Rose走大而全,一站式的策略,它没有将数据库设计和面向对象设计清晰地分开,仅以不同的目录来区分。
而PowerDesigner将两者划分到独立的模型文件中,分别对应不同的设计环境,并通过模型之间的转换工具建立各模型的关联。
2、模型组织和层次结构上的区。
模型组织Rose将数据库模型和对象模型放在一起,在进行数据表模型设计时,没有特性化的东西。
而PowerDesigner将两者分开,其模型组织层级关系是:
工作空间->
模型类型->
具体语言/数据库的模型->
包->
文件夹->
Diagram->
设计元素。
3、代码导出。
在导出设计模型的代码时,PowerDesigner提供了精细的控制,不但可以进行对象级别,还可以进行代码级别的控制(如是否要生成字段备注的代码,外键代码在表体代码内声明还是在表体外部声明等),而Rose没有提供代码导出的控制,也只能按其系统内部设置的方式导出代码。
4、生成测试数据。
PowerDesigner可为数据表生成批量的测试数据,而且你还可以制定测试数据的生成规则。
这个功能给初期项目的开发测试带来很大的便利。
Rose中没有提供类似的功能。
(主要针对实验结果进行严格、认真分析)
通过本次实验,掌握了使用不同的工具来完成数据库的设计并将其在不同版本的数据库中生成相应的表。
试验比较复杂,上课的时候老师讲解过,不会的问老师,要有耐心做好实验。