浅析UML在软件设计中的应用

来源 :科学与财富 | 被引量 : 0次 | 上传用户:zc198926
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:在面向对象软件开发中,软件设计师们需要对实际需求进行抽象,也就是建模,来完成实际需求到软件体系结构的映射。有一个好的模型或者软件架构,在软件开发中,尤为重要。UML(一种建模语言)技术可以清晰的描述模型体系,比如类的职责定义,对外的依赖关系,以及类之间的交互动作等,可以提高建模的准确性。因此,研究UML建模技术在软件设计中具有指导价值。
  关键词:UML;软件设计;建模;模型图
  UML(Unified Modeling Language)在软件工程中得到了广泛的应用。UML有严格的语法和语义规范,定义了标准的图形符号,立足于对事物的实体、性质、关系、结构、状态和动态变化过程的全程描述,构建了用例图、类图等各种各样的图,用于描述软件的体系结构。软件设计的过程中,UML可以很好的描述系统的结构,可以有效地指导软件设计工作的进行。
  一、UML建模技术概述
  UML是一种标准的建模语言,用来描述软件的设计。作为建模语言,UML拥有规范的定义,统一的符号以及语义,可以准确地表示和定义软件项目中的概念。UML具备可视化的特点,UML不再是“文字”式的语言,构成元素分为模型元素、图、视图和通用机制等几个部分,图形相比于文字更具备直观性,UML元素相互结合,以图的形式将项目的流程,模块,设计等以可视化的方式表现出来。语言本质是为了交流,而UML以其简单、可视、规范、统一的特点,恰如其分的充当着这个交流的工具。一个软件项目有产品,架构师,程序员,测试者等众多参与者,UML语言使得参与者之间的交流更加简单。到目前为止UML语言已经发展到了2.5版本,已经应用与电子、航天、金融等众多领域。
  二、UML建模技术
  UML的精髓在于各种图,图是模型最直观的表达,UML有以下各式各样图:用例图、类图、对象图、包图、状态图、活动图、序列图、通信图、构件图、部署图等。每个图都从一个方面反应这软件的设计。用例图描述系统功能职责及与用户交互关系;通信图描述对象间通过消息进行的交互;类图描述类内部职责及类之间关系;包图描述包之间关系;构件图描述系统中的构件、接口及关系;对象图描述系统对象之间的关系;活动图描述活动的控制流程;部署图描述在硬件节点上的软件部署以及彼此通信。其中用例图、类图、和时序图是最常使用的,这里以图书馆管理系统为例,重点说这三种图。
  首先是用例图。用例图用来描述软件的执行者和软件的功能,它描述了一个用户能够观察到的系统功能模型图,在图书馆管理系统中,这里的用户有管理员和借阅者,管理员对应的软件功能有图书借阅、图书预约、图书归还、超期罚款等子功能,借阅者对应的软件功能有借阅者信息、登录、检索、图书借阅、图书归还、超期缴费等子功能,这些用户与系统子功能之间的关系构成了用例图。从用例图中可以很清楚的理解软件的整个系统需要哪些功能模块,有哪些用户,以及各个用户所对应的功能,用例图画出来以后,就相当于界定了模块之间的大致关系。
  其次类图。类图描述了系统内部类与类之间的关系,是静态的。实际开发过程中,就是根据类图进行代码编写的。举个例子,图书馆管理系统中,借阅者信息这一模块可以抽象出一个类,那么这个类的职责可以有:修改个人信息,查阅个人信息,查阅借书信息,预约信息等。类不是孤立存在的,类与类之间需要交互。类图中有6大关系:泛化、实现、组合、聚合、关联、依赖。泛化表示一般和特殊的关系,实现是类与接口的问题,组合是整体与部分的关系且整体与部分不可单独存在,聚合是整体与部分的关系且整体和部分可以单独存在,关联是拥有的关系,依赖是使用的关系。软件设计的过程就是将实际场景中的功能抽像到类,并确定好类与类之间关系的过程,借助于UML的类图,这个过程可以很准确而清晰的实现。
  最后是序列图。序列图描述的是类与类之间动态交互的关系。序列图按照时间顺序,将这些类之间的交互信息依次排列。消息分为同步信息,异步信息和返回信息。序列图的元素主要有角色,对象,生命线,焦点,信息等。举个例子, 借阅者网上预约的简单时序过程应该如下:1.调用登录子系统身份验证;2.经过检索系统获取图书信息;3.在预约系统完成预约;4.推出登录系统。在这个简单的订阅过程中,借阅者依次与登录、检索、预约等子系统进行交互,和类图纯粹的静态关系相比,这些信息是动态的,序列图可以清晰的描述软件内部的交互逻辑。
  三、软件设计中的UML建模技术应用流程
  软件工程的过程一般可分为的需求分析、架构设计、代码实现、測试、后期维护等主要阶段,其中UML的作用主要体现在需求分析和软件设计阶段。一旦设计完成,开发人员便可根据UML设计架构实施编码。
  1.需求分析环节。该环节,设计者主要应用UML建模技术中的用例图。用例是一个系统中所进行的一连串的处置活动,该活动主要是要能够满足系统外部的执行者对于系统的某种期望。首先设计者需要了解系统的所有需求,并对需求进行相应的描述,划分系统的功能子系统。然后设计者要提取系统中有哪些活动,活动的参与者有谁,活动需要哪些系统提供的服务,系统需要提供的服务有哪些等等。最后结合活动和系统的需求提取出用例,在UML中描绘出用户与系统间的交互作用,子系统的划分,子系统之间的关系,并表明用户能够实现的目标,便绘制出了用例图。
  2.架构设计环节。在架构设计中,设计者主要应用UML的类图和序列图。设计者需要对需求分析阶段的系统模型进行进一步的扩展与细化,分离出具体的类,设计各个类的内部职责和外部依赖,然后结合系统现有需求及将来扩展的可能性,以及子系统的输入数据与输出数据等,对这些类进行进一步的优化、分离或者合并。类设计完成后,还要完成数据库,通信机制,系统流程调度等设计工作。最后对各个子系统的职责进行总结抽象,抽象出共同职责,分离抽象层和接口的设计,完成架构的高层设计。UML类图中提供了各种抽象类,接口等机制,以及各种类之间的关系,可以简单明明确地表达这些关系。UML类图绘制完成,就代表着系统架构设计的基本完成,在UML类图的指导下,开发者的编码工作会变得非常清晰简单,UML类图不仅提高了而开发效率,还减少代码中的漏洞,提高了代码质量。由于类图属于静态图,只能描述类之间的静态关系,无法体现流程的动态执行过程,所以为了更清楚的体现架构的动态流程特性,还需要绘制UML序列图。UML序列图属于动态视图,主要用于描述系统中各个对象的交互以及通讯。设计者依次列出类之间的方法调用关系,根据时间顺序,将系统中用例的活动行为在UML序列图中绘制出来,便制作出了序列图根据UML序列图。根据序列图,可以清晰地了解对象之间的消息的发送与接收详情,获知软件系统内部动态的交互流程。
  总之,UML建模技术可以提高软件设计的效率和有效性,值得推广应用。开发人员如果能深入了解UML建模技术的各种视图及应用特点,在软件设计中正确使用视图,充分发挥出UML建模技术的作用,便可设计出高质量的软件架构,保证软件的质量。
  参考文献:
  [1]骆元.软件工程中的UML建模技术.2017.
  [2]刘海生,探讨UML在软件工程中的应用.2018.
其他文献
摘 要:工匠精神是新时期职业道德理念深化发展的具体呈现,也是现代化人才在胜任岗位工作中必须具备的,这就需要革新学科课堂教学。因此,本文多层次客观探讨了“工匠精神”视域下高职英语课堂的改革创新,在渗透工匠精神过程中打造高效的英语课堂,让专业学生在学习英语知识、锻炼英语能力过程中有效培养工匠精神以及综合素质。  关键词:“工匠精神”视域 高职英语课堂 改革创新  在现代化发展背景下,职业教育和社会、经
期刊
摘 要:随着社会经济与科学技术的双重推进下,传感器技术在获得突飞猛进发展的同时,在各个领域之中也获得了极为广泛的运用,尤其是在机械电子领域之中,传感器技术的有效运用所体现出来的优势极为显著。对此,文章针对传感器技术在机械电子中的应用展开了论述。  关键词:传感器技术;机械电子;应用  1傳感器技术概述  传感器可以感受相应的被测量,并且按照相关规律将其转换为可用输出信号,一般情况下被测量大多为非电
期刊
摘 要:在安防领域,随着安全城市和智慧城市建设的不断推进,越来越多的监测点被设置。从最初的几千路,到几万路,甚至于到现在几十万路的规模,视频和卡口产生海量的数据。同时,随着高清视频、智能分析、云计算和大数据相关技术的发展,安全是判断从传统的被动防御为主动开发早期预警,该行业也从单一安全应用行業,提高生产效率,增加生活智能化方向发展的程度,提供更多的工业和人的视觉和智能的解决方案。随着安全领域的发展
期刊
摘 要:每一个孩子是一个不同的个体,习惯各有不同,因此,引导幼儿养成良好的习惯,应该成为当前解决孩子问题的重要环节。幼儿是形成行为习惯的关键时期,所谓“少成若天性,习惯成自然”。幼儿教育如何抓住这一有利时机,及时培养幼儿良好习惯是素质教育的重要内容。  关键词:幼儿;行为习惯;养成教育;研究  在我国,孩子的智力发展水平和身体状况方面一般表现出较大的优势,而优越的生活和家长的溺爱也使一些儿童产生了
期刊
摘 要:在新时代背景下,计算机信息系统集成项目复杂化、特殊化、规模化等特征日渐明显,传统管理模式很难满足其客观要求,要在联系实际基础上进行合理化创新,确保计算机信息系统集成项目管理更加科学、全面、有效,高效控制各类风险的同时将项目成本控制在规定范围内,同步提升计算机信息系统集成项目实施效率与效益。  关键词:计算机信息系统;集成项目;项目管理  1项目管理在计算机信息系统集成中的应用优势  (1)
期刊
摘 要:介绍了正压电效应和逆压电效应,主要分析了压电效应产生的微观机制,讨论了压电效应的主要应用以及发展前景。  关键词:正压电效应;逆压电效应;電致伸缩效应  电介质被极化后会表现出特有的物理特性,压电效应便是其中一种。利用压电效应制成的各种电子元件和传感器被广泛地应用到生产和生活的各个方面,有着广泛的应用前景。  1 正压电效应和逆压电效应  压电效应分为两种,分别称为正压电效应和逆压电效应。
期刊
摘 要:云计算是信息时代的产物,它给信息时代的发展带来了机遇,云计算确保了用户能随时随地获取和处理有关信息,它使与人共享信息变得非常方便,并大大提高了计算资源的利用效率,给人类社会带来了巨大的便利。  关键词:云计算;获取;处理;共享信息;计算资源  在当今社会,云计算这一概念已经深入人心,它已经是信息时代的支柱产业之一,不得不说云计算对今后的经济和社会的发展有巨大的作用。当年市值只有苹果公司的1
期刊
摘 要:幼儿的健康教育是指保持和促进幼儿健康发展,依据幼儿身心发展的特点和需求而进行的系统性教育活动,它对幼儿的发展具有独特的价值。随着人们对儿童健康教育越来越重视及学前教育研究和发展的科学化,毫无疑问,学前健康教育的理论和实践研究将进一步深化发展。  关键词:幼儿;健康教育;意义;对策  幼儿健康教育的主要目的是使孩子身心健康和谐发展,而健康教育包括心理健康和生理健康两方面。幼儿的心理健康是指心
期刊
摘 要:《綱要》指出:“在幼儿生活经验的基础上,帮助幼儿了解自然、环境与人类生活的关系。”挖掘农村资源引导幼儿开展游戏活动,在游戏活动中既弥补农村孩子生活中的缺失与不足,又能让农村孩子能和城市孩子一样获得最大的发展,真正满足其生成发展的需要,促使农村幼儿健康茁壮的成长。  关键词:农村幼儿园;资源;利用;游戏活动  教育家陈鹤琴曾说过:“大自然是我们的知识宝库,是我们的活教材。”农村幼儿生活在大自
期刊
摘 要:随着国家的经济水平不断提高,科学技术水平也随之提高,我国已经进入到信息化时代当中,电力行业也迅速发展。在信息化时代中,电气工程自动化的技术水平也不断提高,应用范围越来越广。人工智能技术应运而生,将人工智能技术应用在电气工程自动化当中可以有效提高工作效率、降低成本,也能减少人力消耗和人工误差,因此本文将对人工智能在电气工程自动化中的实践进行简要的分析和探讨。  关键词:电气工程自动化;人工智
期刊