第一篇:UML系统建模与分析大作业
UML系统建模与分析设计大作业
题
目:
《图书馆管理系统》 专业班级:
学
号:
姓
名:
一、系统功能需求
1、基本功能
① 借阅者能够借阅书籍和还书。
② 图书管理员能够处理借阅者的借阅和还书请求。
③ 系统管理员可以对系统的数据进行维护,如增加、删除和更新书目,增加、删除和更新借阅者帐户,增加和删除书籍。
2、系统主要包括以下几个模块:
2.1、基本数据维护模块
① 添加借阅者帐户
② 修改更新借阅者帐户信息 ③ 添加书目
④ 修改和更新书目信息 ⑤ 添加书籍 ⑥ 删除书籍
2.2、基本业务模块
① 借书 ② 还书 ③ 书籍预留
④ 取消书籍预定
2.3、数据库模块
① 借阅信息管理 ② 书籍信息管理 ③ 帐户信息管理 ④ 书籍预留信息管理
2.4、信息查询模块
① 查询书籍信息 ② 查询借阅者信息
3、系统中的类
① 读者类Reader ② 图书馆人员类 LibraryStaff 图书馆管理员类LibraryManager 系统管理员类SystemManager 图书馆馆长类LibraryBoos ③ 图书馆数据库类LibraryDatabase 图书馆资源数据库ResourcesDatabase 图书馆读者数据库ReaderDatabase 图书馆工作人员数据库LibraryStaffbase ④ 图书馆资源类LibraryResources 实物书籍类BooksResources 电子书籍类ElectronicResources 书类Book
Magazine杂志类
4、系统的用例图
借阅者请求服务的用例图
1借书还书resourcesDatabase下载(阅读)电子书长籍11读者身份验证1reader查询书籍资料阅读杂志readerDatabase11libraryDatabaselibraryStaffese
图书馆工作人员用例图
图书馆管理员验证处理读者借书处理读书还书1systemManager添加书目resourcesDatabase1系统管理员验证删除书目1添加书籍1libraryDatabaselibraryStaff删除书籍readerDatabase删除读者用户libraryManager添加读者用户
二、软件系统体系结构建模 2.1、系统的时序图
系统管理员添加书籍的时序图
系统管理员添加借阅者帐户的时序图
系统管理员删除书目的时序图
图书管理员处理书籍借阅的时序图
图书管理员处理书籍归还的时序图
借阅者查询书籍信息的时序图
借阅者预留书籍的时序图
ReaderReaderDatabase1:验证身份()ResourcesDatabase2:返回验证信息3:使用终端机器预留书籍()4:预留书籍信息5:返回书籍信息和馆藏地点
2.2、系统的协作图
系统管理员添加书籍的协作图
SystemManager2:返回验证消息LibraryResources3:向数据添加新书()4:向书库添加新书()7:返回添加新书成功1:验证身份()5:返回添加成功信息LibraryStaffbaseResourcesDatabase 系统管理员删除书籍的协作图
SystemManager3:删除数据库书目()7:删除成功2:返回信息1:验证身份()LibraryResources5:返回删除消息4:删除馆藏的书()LibraryStaffbaseResourcesDatabase6:更新数据库
图书管理员处理借书的协作图
对象13:发出借书请求4:输入ReaderID()5:返回读者信息11:将书给读者对象42:返回信息7:输入书籍ID()10:借阅成功1:验证身份()对象38:该书信息对象5对象29:标记该书借出
图书管理员处理还书的协作图
借阅者预留书籍的协作图2.3、系统的活动图
借阅者的活动图
进入图书馆
Reader进入刷卡终端键盘输入ReaderId刷卡输入ReaderID验证成功享受Reader各项服务借书还书将书给图书馆管理人员将书还给图书馆管理员查询书籍资料登录查询终端机下载电子资料登录账户图书管理人员处理借书请图书馆管理人员处理还书请求输入查询资料信息进入电子资料数据库借书成功还书成功得到相关资料信息下载或阅览电子资愿该项服务结束结束离开图书馆 图书管理员的活动图
验证图书馆管理人员账户登录到管理员账户等待读者的还书请求等待读者的借书请书处理读者的还书请处理读者借书请求重新等待读者服务请求处理还书结束处理借书 借书将书给读者重新等待读者服务请求系统管理员的活动图
系统管理员维护借阅者帐户的活动图
系统管理员 维护借阅者账户的活动图登录到系统管理员账户登录到维护读者账户模块添加读者账户删除读者账户修改更新读者账户输入新账户信息检查该账户信息修改更新读者数据库信息有欠款欠书开设新读者账户没有欠款欠书将账户给读者删除该账户信息督促该用户归还欠款书 系统管理员进行书目信息维护的活动图
系统管理员进行书目信息维护的活动图登录到系统管理员账户登录到书目信息维护模块添加书目删除书目修改更新书目向数据库中添加书目删除数据库中的书目修改更新数据库书目向书库添加新书目删除书库中书目 系统管理员维护书籍信息的活动图
系统管理员维护书籍活动图登录到系统管理员账登录到维护书籍模添加书籍删除书籍向书库添加书籍删除书库中书籍更新数据库书籍信
三、硬件系统体系结构建模
3.1、业务对象组件图 <
UpdateBorrowerFBorrowerFrame.jrame.javaavaCancelResevationFBorrowerWirame.javandow.javaFindBorroweReturnItemrDialog.javaFrame.javaLendItemFFindTitleDrame.javaialog.javaUpdateTitleTitleFramFrame.javae.java
3.3、系统的部署图
DatabaseApplication ServiceWeb Bussiness ApplicationOperation<
MainWindow.javaReservationFrame.javaTitleInfoWindow.javaBorrowerInfoWindow.java
Information maintenance
第二篇:UML(ATM系统)动态建模
实验3 动态建模
一、实验目的与要求 掌握分析ATM系统用例中用例的流程,分析对象之间的交互关系 掌握用UML设计参与对象之间的交互,用状态图、时序图、协作图和活动图来描述系统的行为。
二、实验设备、环境
PC(一台),Windows 2000或以上版本,安装Microsoft Visio 2003
三、实验内容及步骤 交互图:实现ATM系统的序列关系图和通信(协作)关系图; 2 分析设计软件系统的状态图。((1)和(2)选做一个状态图);
(1)ATM系统
(2)具体题目如下:某销售POS机,它的工作流程是:当客户到收银台后,收银员逐一输入用户购买的商品,输入完之后,计算出总金额,然后等待用户付款,确定支付成功之后,完成收银,等待下一个客户。请为其绘制出相应的状态机图。
3分析设计ATM系统的活动图(选做1个活动图)。
建立动态模型:
建立序列关系图、状态图、活动图
步骤:
编写脚本
确定各个对象之间的事件
构造事件追踪图(交互图)
构造状态图
添加活动和动作
一、时序关系图
1)ATM系统的正常情况脚本
ATM请储户插卡;储户插入一张现金兑换卡。 ATM接受该卡并读它上面的卡号。
ATM要求储户输入密码;储户输入自己的密码“1234”等数字。
ATM请求系统验证卡号和密码;核对储户密码,然后通知显示器显示说这张卡有效。
ATM要求储户选择事务类型(取款、转账、查询等);储户选择“取款”。 ATM要求储户输入取款额;储户输入“880”。
ATM确认取款额在预先规定的限额内,然后要求处理这个事务;成功处理完这项事务并返回该账户的新余额。
ATM吐出现金并请储户拿走这些现金;储户拿走现金。 ATM问储户是否继续这项事务;储户回答“不”。
ATM打印账单,退出现金兑换卡,请储户拿走它们;储户取走账单和卡。 ATM请储户插卡。
2)ATM系统的异常情况脚本
ATM请储户插卡;储户插入一张现金兑换卡。 ATM接受该卡并顺序读它上面的数字。
ATM要求密码;储户误输入“8888”等数字。
ATM请求总行验证卡号和密码;经验证发现密码错误,拒绝这张卡。 ATM显示“密码错”,并请储户输入密码;储户输入“1234”等数字;ATM请求总行验证后知道输入密码正确。
ATM要求储户选择事务类型;储户选择“取款”。
ATM询问取款额;储户改变主意不想取款了,按“取消”。 ATM退出现金兑换卡,请储户拿走它们;储户取走卡。 ATM请储户插卡。
ATM 脚本的事件时序图如下图所示:(正常情况)
用户读卡器显示器ATM卡用户账户事务提款机插卡读卡初始化提示输入密码输入密码验证密码获取密码获取账户初始化提示选择业务选择业务执行事务初始化提示输入金额输入金额获取余额验证取款金额计算余额计算利息更新账户配给现金打印收据退卡
二、状态图
主屏]do:显示主屏幕插卡[可读]Do:要求密码输入密码Do:验证账户继续密码错拿走卡退卡do:退卡请拿走卡插卡[不可读]不可读的卡do:显示信息取消取消do:显示取消信息无效账户账户有效Do:要求类型取消输入类型Do:要求金额取消结束do:打印账单Do:显示无效账户信息输入金额等待5秒Do:处理事务中止取消Do:请求继续拿走现金do:吐出现金请拿走现金事务成功取消事务失败Do:失败信息网络响应等待网络响应中断do:显示取消信息ATM类的状态图
处理事务验证账户请求处理事务请求验卡事务成功事务失败无效账户账户有效密码错
事务处理状态图
账户验证状态图
三、活动图
插卡<没有接收动作>输入密码<没有接收动作>输入账户类型输入金额取卡取钱<没有发送动作>
四、实验体会
顺序图的重点是完成某个行为的对象类之间所传递的消息的时间顺序。一个顺序图事务对象角色,生命线,激活期和消息构成。协作图用于描述系统的行为是如何有系统的成分合作实现的。协作时一种静态结构,是一个系统对实现某些服务所涉及的对象及其交互的投影。一个协同定义了一组对某些服务有意义的参加者和它们的联系,这些参加者定义了交互中的对象所扮演的角色。
第三篇:UML建模--银行管理系统(范文)
银行管理系统的UML
建模
课程设计报告
专业:
学号:
姓名:
任课教师:
一、系统概述
银行是与人们生活密切相关的一个机构,银行可以提供存款、取款、转账等业务。在银行设立账户的人或机构被称为银行的客户(customer)。一个客户可以在银行开设多个账户(account),客户可以存钱到账户中,也可以从自己的账户中取钱,还可以将存款从一个账户转到另一个账户。另外,客户可以随时查询自己的账户情况,以及查询以前所进行的存款、取款等交易记录。客户还有权利要求关闭自己的账户。
实际生活中的银行功能其实还要复杂得多,但为了简化系统,本次设计只考虑银行的基本功能。简化版的银行信息系统至少应具有如下功能:
1.一个银行可以有多个账户; 2.一个银行可以有多个客户; 3.一个客户可以持有多个账户; 4.一个账户可以有多个持有者; 5.银行可以为客户开设账户; 6.银行可以为客户注销账户; 7.客户可以从自己账户中取钱; 8.客户可以向自己账户中存钱;
9.客户可以在同一银行的不同账户之间转账; 10.客户可以在不同银行的不同账户之间转账; 请完成登录、存款、取款、转账和查询几个模块的设计。
二、需求分析
银行系统是与生活紧密相关的一个机构,银行提供了存款、取款、转账等业务。在银行设立账户的人或机构通常被称为银行的储户。一个储户可以在银行开多个账户,储户可以存钱到账户中,也可以从自己的账户中取现,还可以将存款从一个账户转到另一个账户。储户还可以随时查询自己账户的情况,并查询以前所进行的存款、取款等交易记录。后台管理员可以对客户的账户进行注销、删除、查询等管理,还有就是银行利息、汇率、手续费之类参数的设置,以及财务管理以及财务分析。
软件分别有开户,查询存取款,转账等功能。各个模块各有不同的功能,但都能完成查询和存取功能。各模块的数据都存放在数据库中。数据的调用和连接都有程序来完成。
此软件所要完成的主要功能有三方面:如果是存款,用户填写存款单,然后交给收银员键入系统,同时系统还要记录存款人姓名,住址,身份证号码,存款类型,存款日期,利率及密码(可选)等信息,完成后由系统反馈成功存款信息给用户。如果是取款,用户填写取款的相关信息(取款金额、取款币种)进行提交,系统要求用户输入密码以确认身份,核对密码正确无误后系统计算利息并印出利息单给用户。如果是转账,用户填写转账的相关信息进行提交,系统要求用户输入密码以确认身份,核对密码正确无误后系统计算利息并反馈信息给用户。系统及时更新数据库。
外部功能:实现化窗口,开户/销户、存款/取款、查询/转账。
内部功能:同步,过滤,定位,识别,更新,连接。
三、系统的UML基本模型
(1)、用例图
通过分析对银行管理系统的需求分析,确定参与者有银行客户、收银员。收银员具有维护系统信息、维护客户信息、查询客户情况和处理处理客户需求的作用。用例包括:
1)开户、2)存款、3)取款、4)转账、5)查询、6)销户等
(2)、用例描述:
用例名称:银行信息系统
描述:银行客户对需要办理业务的需求以及收银员对事件的处理。
(3)、银行信息系统的事件流
1.用例存款的事件流
1.1 前置条件
在存款之前,客户已经办理银行账号并且带来现金若干,并到达银行网点。1.2 后置条件
如果这个用例成功,这个存款事件是成功的,否则,系统没有变化。1.3 扩充点
无 1.4 事件流
1.4.1 基流(1)客户将银行卡交给收银员。
(2)收银员要求客户输入卡密码。
(3)客户输入卡密码,并确认密码。
(4)收银员提示,请客户选择服务类型。
(5)客户选择存款服务。
(6)收银员提示:存款数目。
(7)客户说出数目,并把钱交给收银员。
(8)收银员完成服务。
(9)收银员退还卡。1.4.2 替代流
如果输入的密码无效,用户可以重新输入密码或者终止用例。
2.用例转账的事件流
2.1 前置条件
在转账之前,客户已经办理银行账号,被转账人的账号已经存在并且已经知道了对方的账号。
2.2 后置条件
如果这个用例成功,这个转账事件是成功的,否则,系统没有变化。2.3 扩充点
无 2.4 事件流
2.4.1 基流
(1)客户填写转账单。
(2)客户把转账单和银行卡交给收银员。
(3)收银员要求客户输入卡密码。
(4)客户输入卡密码,并确认密码。
(5)收银员转账成功。
(6)收银员退还卡。2.4.2 替代流
如果输入的密码无效,用户可以重新输入密码或者终止用例。
3.用例查询的事件流
3.1 前置条件
在查询之前,客户已经办理银行账号并且携带银行卡,并到达银行网点。3.2 后置条件
如果这个用例成功,这个查询事件是成功的,否则,系统没有变化。3.3 扩充点
无 3.4 事件流
3.4.1 基流
(1)客户将银行卡交给收银员。
(2)收银员要求客户输入卡密码。
(3)客户输入卡密码,并确认密码。
(4)收银员提示,请客户选择服务类型。(5)客户选择查询服务。
(6)客户说出查询内容,收银员将内容反馈给客户。
(7)收银员完成服务。
(8)收银员退还卡。3.4.2 替代流
如果输入的密码无效,用户可以重新输入密码或者终止用例。
(4)、活动图
活动图是基于对象的状态变迁所绘制的视图。
收银员首先凭着自己的系统用户名和密码登录系统,收银员可以通过银行客户提供的有效证件号开户,提供客户账号开户、存款、取款、转账、查询、销户等功能,最后退出系统。
1.存款活动图
2.转账活动图
3.查询活动图
(5)、时序图
时序图(Sequence Diagram)主要用于按照交互发生的一系列顺序,显示对象之间的这些交互。收银员通过用户账号和密码登录系统,在系统的操作窗口对需要存款、取款、转账、查询、销户的用户进行操作,最后退出操作窗口。
我们所开发的银行管理系统时序图如图所示:
(6)、类图
类图是对象结构建模的一部分,类图描述系统中类的静态结构。类图是代码生成(将模型转化为代码)的来源,也是逆向工程(将代码转化为模型)的目标设生成物。
类图设计如下图:
系统中主要的类(1)用户类: 它的属性有用户名(Name)、密码(Password)、银行卡号(Cardnumber)、用户身份证号码(ID)。
操作包括修改密码(Changpassword)、存款(deposit)、取款(cash)、转账(transfer)、查询(Chaxun)、、用户开户(Registered)。
(2)系统类:
它的属性有电脑号(Computernumber)、机器地址(Mac)。本身的操作没有,但有被管理员使用的操作。(3)收银员类:
它的属性有用户名(name)、密码(password)。
操作包括用户开户(Registeredusers)、注销用户(Deleteusers)、查询用户信息(Chaxun)、系统维护(Weihu)。
(7)状态图
状态图用来表示建模对象是如何改变其状态的,状态定义为对象行为在某一时刻的快照或转折点。
四、结论
系统主要的实现目标是实现客户开户、存款、取款、转账、查询、销户和后台服务器端系统的设计,提供完善的功能设计。
五、总结及心得体会
UML工具很好的帮助我们实现了对银行信息系统的设计,通过UML建模,把事物从抽象到实例化的过程,对每个对象进行细化分析,从而得到简单而方便,容易理解的模型结构。通过此次试验收获很大,使我们认识到了通过UML模型可以高效完成软件设计,收获颇丰。
一、开发背景与目标
1.1开发背景
本系统选题为银行存储系统,是模拟银行存储开发的。随着计算机的飞速发展及应用领域的扩大,特别是计算机网络和电子商务的发展,极大的改变了商业银行传统的经营模式。能够为客户提供方便、快捷、安全的服务,也能够有效的降低银行的营运成本,这是银行存储系统追求的目标。目前,对于现代化银行运营的要求是客户可以实现方便安全的业务交易,银行职员可以进行高效合理的工作管理,实现银行业务电子化
在银行管理系统中,系统包括4个节点,分别是:银行管理员业务处理节点、ATM自动取款机节点、系统维护节点、数据库节点。
银行管理员业务处理节点,银行管理员通过该节点办理相应业务; ATM自动取款节点,用户通过该节点进行自动取款服务;
系统维护节点,系统管理员通过该节点进行后台维护,执行银行管理员允许的所有操作;数据库节点,负责数据的存储与处理。
谁使用系统的主要功能?谁改变系统的数据? 谁从系统获取信息? 谁需要系统的支持才能完成日常的工作任务?谁负责维护,管理并保持系统的正常运行?系统需要应付,处理那些硬件设备?系统需要和那些外部系统交互?谁(或是什么)对系统运行产生的结果感兴趣?
用例图主要用来描述“用户、需求、系统功能单元”之间的关系。它展示了一个外部用户能够观察到的系统功能模型图。
【用途】:帮助开发团队以一种可视化的方式理解系统的功能需求
第四篇:uml建模报告ATM自动柜员机系统
UML建模报告
(2010 / 2011 学年 第 2学期)
题 目:
基于UML的ATM自动
柜员机系统
专
业:
成员:
指
导
教
师:
基于UML的ATM自动柜员机系统建模报告
一、需求分析
(1)功能需求:
1.登陆:客户通过输入正确的登陆密码即可登陆ATM。
2.取款:允许客户取出自己账户中的现金。3.客户存款:允许客户把现金存入自己账户。4客户查询余额:允许客户查询自己的账户余额。
5客户转账:允许客户将自己账户中的金额转移至另一账户。6客户更改密码:允许客户修改自己的登录密码。
(2)系统操作要求:
1.要求用户每次取款数额为50的整数倍;
2.要求用户一次取款数额不得大于1000元; 3.要求用户一天取款数额不得超过5000元; 4.要求用户每次取款数额不得大于账户余额; 5.要求用户设置的登录密码为6位。
(3)系统性能要求:
1.要求反应时间不得大于10秒钟; 2. 系统设计目标:
ATM自动取款机可以提供24小时不间断服务,操作简单,可以很方便为用户提供取款、转账/汇款、查询账户余额等服务。
(4)实现手段:
使用ASP.NET进行界面设计,建立一个数据库保存客户的账户信息,使用C#语言功能函数并对数据库中的账户信息进行操作。
二、总体设计
本系统总共分为登陆、查询、存款、取款、转账、修改密码等6个功能模块。
1.登录模块:登陆模块使用字符匹配算法,要求用户在输入账号之后输入登陆密码,只有输入正确的密码才能登陆自己的账户。否则提示密码错误。
2.查询模块:用户输入正确的密码后就可登陆自己的账户并接受服务。查询功能允许用户查得自己账户上的余额信息。
3.存款模块:允许客户向自己的账户中存入现金。
4.取款模块:允许客户从账户中取走现金,要求取出的金额不能大于所剩余款,否则提示余额不足。
5.转账模块:允许客户将自己账户中的金额转移至另一账户。要求所转的金额不能多于所剩余款,否则提示余额不足。
6.修改密码模块:允许用户修改自己的登陆密码,密码仍然是6位数的,修改之后,下次登陆就应该用新密码。
三、详细设计 用例图:
类图:
客户取钱的协作图:
其他功能的协作图与此类似。
账目类的状态图:
ATM系统的部署图:
四、测试报告 我们在客户数据库中建立四个账户,如下:
其中四个属性分别是客户名、账号、密码、账户余额。打开网页,进入初始页面:
若选择取回磁卡,显示如下:
1.登录功能测试
我们选择继续以进行测试,单击测试进入如下页面:
若输入不存在的账号,则出现提示:
现在我们输入正确的账号,这里以08060112为例:
单击确认,系统将提示客户输入密码,正确的密码是“123456”,我们输入“333333”以进行测试,系统提示密码错误:
我们输入正确的密码“123456”,单击确认,则进入交易界面:
2.查询功能测试
单击查询,显示如下
与数据库表中的number值比较可得,结果正确。3.取款功能测试
选择返回,回到主菜单,单击取款,系统提示客户输入取款金额:
我们输入300单击确认,显示如下
单击确定回到主菜单,单击查询,显示如下:
余额为700,说明取款成功,取款功能顺利实现。4.转账功能测试
单击返回,回到主菜单,单击转账,系统提示用户输入转入账号,我们以转入08060119为例:
单击确认,系统提示转账金额,我们输入300:
单击确认,提示转账成功:
单击确定回到主菜单,这时我们单击查询08060112的余额:
结果正确,我们再通过数据库查询08060119的余额,打开表格,右击,执行,显示如下:
结果也正确,说明转账功能也已顺利实现。5.存款功能测试
单击返回回到主菜单,单击“存款”,我们通过输入数值来模拟放入现金:
单击确认,系统提示操作成功:
单击“确定”回到主菜单,单击查询,显示如下:
结果正确。
6.修改密码功能测试
单击返回回到主菜单,单击“修改密码”,系统提示如下:
我们将密码修改为“555555”,输入“555555”后,提示操作成功:
单击确定就回到主菜单。这时我们取回磁卡重新登录以测试密码是否已经修改。依旧输入卡号08060112,单击确认,输入旧密码“123456”,提示密码错误:
单击确定,重新输入新密码“555555”,单击确认,则可顺利登录到主菜单
可见,密码已经修改成功,另一方面,我们查看数据库中的数据,右击,执行,显示如下:
可以看到账户08060112的password属性已经变为“555555”,因此,修改密码功能也能顺利实现。至此,ATM系统的六大功能都已通过测试并正确无误。
五、总结
通过这次UML建模的学习,我们学会了很多知识。之前我对UML建模一无所知,但现在我已学会了一些UML建模的基本知识,并学会了建立一些简单的模型。
虽然只有短短的几个礼拜,但收获却是很大的。首先是分析问题的能力,刚拿到这个题,总觉得无从下手,不知道题目到底要我们做什么,心里只是干着急,不知道该干嘛。经过一周的迷茫,我们开始静下心来,分析题目,找参考书,尝试性地进行编程。到第三周,我们终于做出了一个成果并且编译没有错误。之后就是尝试运行,运行的过程中出现很多问题。比如转账,修改密码等,但经过我们细心的测试、排查,还是找到了错误的原因并进行了纠正。因此,我们的查错改错的能力也得到了提高。最重要的是,我们通过这次实习学会了互相合作,俗话说“三个臭皮匠顶个诸葛亮”,也许我们单独做很难完成这个程序。但是只要我们团结一致就没有克服不了的困难。这次实习在我们的大学生活乃至整个人生中都有着非常重要的意义,是一笔不小的财富,难忘的经历。我们会以此为基础走好人生的每一步。
以上是我们对UML建模的学习的一点总结,同时也是为自己的未来整理好思路,为以后的学习做好准备。UML建模,教会了我很多,而我要做的,就是在以后的学习与生活中更加努力的学习来迎接它带来的知识与挑战。
第五篇:UML建模优缺点
1.UML的优点:
UML语言使系统建模过程标准化,统一化,规范化。
UML在整个软件开发过程中采用相同的概念和表示方法,在不同的开发阶段,不必转换概念和表示方法,避免了传统软件开发方法的两个鸿沟。
UML采用图形化的表现形式。产生的模型易于理解,易于开发人员与用户之间的沟通,从而能够及时得到用户的反馈信息。
用UML进行系统建模所得到的建模制品不仅仅包括各种模型框图,还有大量丰富的文档,这些文档给系统后期的维护工作带来了便捷。UML不是一门程序设计语言,但可以使用代码生成工具将UML模型转换为多种程序设计语言代码,或使用反向生成工具将程序源代码转换为UML模型。2.UML的缺点:
任何事物都有正反两个方面,UML这种新兴的建模工具也存在它本身的一些不足,总结如下:
无法从语法上建立状态图与顺序图的关系。
无法从语法上建立活动图与顺序图在流程描述中的关系。协作图和顺序图中与消息相伴的参数不能与类图建立关系。