您的当前位置:首页正文

软件工程中UML建模的技术与分析

来源:个人技术集锦
第9卷第8期 2010年8月 软件导刊 Software Guide V01.9 NO.8 Aug.2010 软件工程中UML建模的技术与分析 宋国顺 (同济大学软件学院,上海310018) 摘 要:分析了UML的概念以及UML的组成,深入地对UML图进行了说明,并给出了流程图和用例图的应用实 例,对该工具的应用可以起到一定的借鉴作用。 关键词:UML;统一建模语言;软件工程;用例图;流程图 中图分类号:TP311 文献标识码:A 文章编号:1672—78o0(2010)08一O035一O2 取系统的重要资料,这样就能清楚地理解问题起因,还能更容 0 引言 在软件开发过程中,特别是数据库软件工程通常需要一套 标准来辅助软件开发工作。UML就是其中的一种标准(注意并 不是唯一标准,只是UML是比较推崇的一种标准)。UML可以 易地开发解决方案的体系结构,以及清晰识别与构造实现方 式。此外,UML还为基本构建块中复杂的系统关系提供了表达 方式。 表1 UML图的种类表 类别 …… … 实现大型复杂系统各种成分描述的可视化,说明并构造系统模 型,以及建立各种所需的文档,它是一种定义良好、易于表达、 功能强大且普遍适用的建模语言。 说明 描述对系统的精确要求 显示系统中一组类和接口间的静态关系。一些普通的关系 类型都有继承性、聚集性和相关性 提供指定时刻位于类实例间关系的快照视图 系统或对象此外在对接口的行为建模时也很有用 .用例图显示用例、参与者以及它们之间关系。该图根据用户的角度 ’’ 1 UML的概念 现代的软件开发采用面向对象的观点进行建模。按照这种 方法,所有软件系统都用对象或类作为其主要构造块。对象通 常是从问题空间或解空间的词汇中抽取出来的东西:类是对具 有共同性质的一组对象(从建模者的视角)的描述。而UML正 式这种面向对象统一建模的方法。UML合并了许多面向对象 方法中被普遍接受的概念,对每一种概念它都给出了清晰的定 义、表示法和有关术语。使用UML可以对已有的用各种方法建 对象图 .. 适用于保存系统的动态行为。尤其适用于事件驱动,交互式 允许根据各自动作或交互对系统行为建模 包括序列图与协作图两种.用来对系统的动态行为建模 ”一 活动图 交互图 用例图显示用例、参与者以及它们之间关系。该图根据用户的角度 描述对系统的精确要求 一 显示系统中一组类和接口间的静态关系。一些普通的关系 类型都有继承性、聚集性和相关性 提供指定时刻位于类实例间关系的快照视图 系统或对象.此外在对接口的行为建模时也很有用 对象图 . …立的模型进行描述,并比原来的方法描述得更好。UML由图和 元模型组成。在这里图是语法,元模型是语义。UML主要包括 适用于保存系统的动态行为。尤其适用于事件驱动,交互式 允许根据各自动作或交互对系统行为建模 活动图 了3个基本构造块:事物(Things)、关系(Relationships)和图 (Diagrams)。 交互图 包括序列图与协作图两种。用来对系统的动态行为建模 代表部分系统的物理表示,例如文件、可执行文件等,说明各 组件图组件间的关系和相关性 2 UML的组成 UML提供的图有8种,如表1所示。UML(统一建模语言) 是一种图形语言,用于软件系统建模与开发工作。在软件开发 的每个步骤中,从需求的分析到技术规范,再到结构设计及配 置要求,UML都提供了模型化和可视化的支持。利用UML获 害B署图根据节点、处理器及其关系来显示系统的体系结构。一个或 多个组件通常映射为一个部署节点 (1)用例图。最基础的是用例图。需求获取是需求工程的主 体,主要工作是建立系统的模型,用例就是用于建立这种模型 的良好方法。用例定义了执行者(在系统外部和系统交互的人) 和被考虑的系统之间的交互来实现的一个业务目标,这个用例 作者简介:宋国顺(1978-),男,浙江杭州人,同济大学软件学院硕士研究生,研究方向为软件工程。 ・36・ 软件导刊 2010正 模型奠定了整个系统软件开发的基础。 启动一次招聘活动;②启动招聘活动后,招聘信息填写页面以 Web形式发布于Internet上;③应聘者通过招聘信息填写页面 (2)类图表示不同的实体(人、事物和数据)如何彼此相关; 换句话说,它显示了系统的静态结构。类图可用于表示逻辑类. 来填写应聘信息,提交至人力资源管理系统;④招聘管理员通 过招聘信息管理界面来查看应聘者的详细信息,根据条件决定 是否通知应聘者面试。决定通知应聘者面试后,系统将自动通 知Email发送至应聘者邮箱。考虑人才招聘在时间和地域上的 逻辑类通常就是业务人员所谈及的事物种类——摇滚乐队、 CD、广播剧;或者贷款、住房抵押、汽车信贷以及利率。类图还 可用于表示实现类,实现类就是程序员处理的实体。实现类图 或许会与逻辑类图显示一些相同的类。然而,实现类图不会使 用相同的属性来描述,因为它很可能具有对诸如Vector和 HashMap这种事物的引用。 特殊性,招聘信息管理也以Web页面方式进行,做到相关信息 和数据随时随地更新;⑤招聘管理员可将应聘者信息数据导人 人事档案基本信息,或者以其它格式导出,以便进行高级处理 (3)序列图显示具体用例(或者是用例的一部分)的详细流 或与其它应用系统共享数据;⑥招聘活动结束后。招聘管理员 程。它几乎是自描述的,并且显示了流程中不同对象之间的调 用关系,同时还可以很详细地显示对不同对象的不同调用。序 列图的绘制非常简单。横跨图的顶部,每个框表示每个类的实 例(对象)。在框中,类实例名称和类名称之间用空格/冒号/空 格来分隔,例如,mvReponGenerat0r:ReportGenerator。如果某个 类实例向另一个类实例发送一条消息。则绘制一条具有指向接 收类实例的开箭头的连线,并把消息/方法的名称放在连线上 面。对于某些特别重要的消息,您可以绘制一条具有指向发起 类实例的开箭头的虚线,将返回值标注在虚线上。 (4)协作图。UML1.1时.协作图英文名字叫:Collaboration Diagram,UML2.0时,英文名字变为:Communication Diagram。 Collaboration Diagram的中文翻译为协作图.Communication Diagram的中文翻译为通讯图.这里我们将统一称之为协作图。 如果理解了序列图,协作图其实很容易理解,协作图是序列图 的另外一种表示方式。序列图更强调先后顺序,协作图则更强 调相互之间的关系。序列图可以画循环、分支结构,而协作图则 不能画。 在实际工作中往往用序列图更多,可根据实际需要决定用 序列图还是协作图。 3应用实例分析 3.1某系统流程图 鑫 甲 [ 图1某系统用户登陆数据流程 该模块是用来处理用户登陆的。customLoginUI。处理用户 登陆信息的输入界面和参数的传递功能。用户输入完用户信息 之后.点击页面上的确认按钮,系统调用sendMessage()方法, 通过HT]'PCommunieation向服务器发送参数请求,经过 loginUtil业务处理是合法用户以后,返回值1表明登陆成功, 可以对系统进行下一步操作。 3.2人才招聘的用例图 在线人才招聘及招聘信息管理的基本流程是:①招聘管理 员启用招聘管理功能,设置好应聘职位、任职条件等基本信息, 可结束此次招聘活动。 每 一 一蔓 一一≥ 哆  图2人才招聘和管理UseCase图 图2中,“管理员”角色为抽象角色,完成对系统的管理,在 图中用“from Use Case View”标注。“招聘管理员”角色派生自 “管理员”,完成对在线人才招聘的管理维护,具体包括招聘设 置、启动招聘活动、填写招聘活动、停止招聘活动、招聘信息查 阅与管理、通知面试、导入人事档案、导出招聘信息等。在线人 才招聘与管理活动中,还有“应聘者”角色的参与,该角色主要 参与填写应聘信息活动。 4 UML的特点 ①统一标准UML融合了当前一些流行的开发方法的主要 概念与技术。成为一种面向对象的标准化的统一建模语言,提 供了标准的面向对象的模型元素定义和表示法,以及对模型的 表示法的规定.使得对系统的建模有章可循,有标准的语言工 具可用,有利于保质保量地建立起软件系统模型;②面向对象 UML支持面向对象技术的主要概念。UML提供了一批基本的 模型元素的表示图形和方法,能简洁明了地表达面向对象的各 种概念和模型元素:③可视化、表达能力强大。UML是一种图 形化语言。系统的逻辑模型或实现模型都能用UML的模型图 形清晰地表示。UML不只是一堆图形符号,在每一个UML的 图形表示符号背后.都有良好定义的语义。UML的强大表示能 力使它可以用于各种复杂类型的软件体系的建模;④独立于过 程的UML是系统建模语言,独立于开发过程;⑤容易掌握使 用。UML概念明确,建模表示法简洁明了,图形结构清晰,容易 掌握使用。 参考文献: [1] 张龙祥.UML与系统分析设计[M].北京:人民邮电出版社,2003. [2]周伯生,冯学民,樊东平.统一软件开发过程[M].北京:机械工业 出版社.2002. (责任编辑:杜能钢) 

因篇幅问题不能全部显示,请点此查看更多更全内容