基于UML的用例图模型创建

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:shadowhigher
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:用例视图是其他视图的核心,因为用例视图描述了系统应该具备的主要功能,系统要提供的功能都要在用例视图中具体描述。并且用例视图如有修改,那么都会对其他所有视图产生直接影响。该文主要介绍用例视图在软件工程设计中的地位和作用。结合实际案例分析用例图的设计角度,组成元素,和构造原理以及各元素之间的独特关系。通过图书管理系统的实际案例进行说明。
  关键词:软件工程;Rose软件;视图分析;模型设计
  中图分类号:G642 文献标识码:A
  文章编号:1009-3044(2019)32-0104-02
  1引入
  软件工程的模型设计有多种形式,UML的视图就包括五种,有逻辑视图、组件视图、并发视图、配置视图和用例视图。其中,用例视图是其他视图的核心,因为用例视图描述了系统应该具备的主要功能,系统要提供的功能都要在用例视图中具体描述。并且用例视图如有修改,那么都会对其他所有视图产生直接影响。用例视图强调的是从用户的角度看系统所需要的功能。它描述了用户希望如何使用一个系统,用户希望系统提供什么服务。软件工程的产品通常主要是通过外部特性动态的呈现给用户,至于系统是怎样实现的,系统内部的结构如何,并不是他们所关心的内容。所以,在整个软件工程的开发过程中,用例图的制作情况最为重要,因此,它的合理性和正确与否直接影响到用户对最终产品的满意度。
  2用例图的构造原理与创建
  2.1用例图的构成原理
  UML中,用例图是由参与者(actor)、用例(use case)、和他们之间的关系(relationships)等元素构成的。
  1)其中,参与者通过向系统输入或者是请求系统输人某个需求,来触发系统完成预想事件。参与者不仅仅代表人,还可以代表事物或者是进程。比如,人们在取款机上取款的过程中,人是参与者,取款机是参与者,安装在取款机中软件系统同样是參与者。
  还有一种参与者比较隐秘,只有在特定时刻才能产生作用。举个例子,学生去图书馆借书,假设是一个月的期限,就需要学生在一个月之内及时把书还了,如果超出一个月不还,那么从超出一个月的时刻开始,系统就会提示你要提交罚款。在这个过程中,时间所推动的进程,就是一个系统参与者。所以,综合来说,参与者包括人、相关事物和时间进程。
  2)在用例视图中,另一个重要的组成元素是“用例”。它是一个叙述型的对象,主要描述了“做什么”的问题。是活动者在与系统对话过程中对所执行的行为的描述序列。用例表达了系统的功能和所提供的服务。它是系统参与者与系统在交互过程中需要完成的工作,识别用例的最好的办法就是从分析参与者开始,分析系统参与者是如何使用系统的,比如:参与者希望系统提供什么功能;系统是否需要存储,是否要进行信息检索,如果需要,是由哪个参与者触发的;还有当系统状态改变时,是否通知参与者;是哪些参与者通知系统相关事件;以及是否存在影响系统的外部事件等等。根据存在的参与者不同,可以将系统分为不同的用例图分别加以描述。
  3)用例视图中第三个重要的元素就是参与者与用例之间的关系。因为有了某种关系,才会触发特定事件的产生。在用例视图中,参与者与用例的关系主要有四种:关联关系、泛化关系、包含关系、扩展关系。
  关联关系:泛指两个对象之间发生联系。比如一个对象访问另一个对象。而且在参与者与用例之间的关联关系是有方向的。
  泛化关系:是定义了一般元素和特殊元素的分类关系。比如,“交通工具”与“汽车”“火车”“自行车”之间;再比如,“图书借阅者”与“学生”和“老师”之间。
  包含关系:包含关系是用例视图中特有的一种关系。是指一个用例的行为包含了另一个用例的行为。比如,“查询用户”与“修改用户信息”和“删除用户信息”之间就是这样。在用例图中,泛化关系主要描述多个参与者之间的公共行为。如果一个系统中存在几个参与者,既扮演自身,同时也扮演一般化的角色,那么特殊化的参与者与一般化的角色之间就可以用泛化关系来描述他们。
  扩展关系:是指在已有用例基础上,由于某个事件的触发,而产生了新的用例,就像在某一个节点上又生出了新的节点。比如,在图书馆还书时,因为超出了期限,又要额外交罚款。这就是扩展关系。
  4)用例图建模技术
  对于一个软件工程系统而言,有些事物是存在于系统的内部,他们的任务是完成工程所期望的系统行为;而有些事物是存在于系统的外部,即构成了系统存在的环境。所以,在uML建模过程中,用例视图是对工程系统的语境进行建模,它主要考虑系统做什么,而基本不考虑系统怎么做。根据用户对产品功能的期望,提出产品外部功能描述。用例图是表达和管理系统主要的功能需求。在对系统外部语境建模的过程中,首先要识别系统外部的参与者。如:谁使用该系统;为什么使用;交互中,他们扮演什么角色;谁安装系统;谁从系统中获取信息;谁维护系统;谁启动和关闭系统;谁提供信息给系统等等。
  在参与者的建模中,还有几个要点需要注意:
  每个参与者需要具有一个有针对含义的名字,不要使用模糊含义的名字。
  参与者在系统外部,直接与系统交互,容易定义系统范围。
  参与者是交互时扮演的角色,不是特定的人或特定的事物。
  一个对象在与系统交互过程中,可以扮演多个角色。
  2.2用例图的创建
  为了更深入的理解用例图的构造原理,下面引用一个实际案例来具体说明。以大学图书馆的图书管理系统为例,运用Rational Rose建立图书管理系统用例图。
  大学图书馆图书管理系统软件是一套功能强大,操作方便简单、实用的自动化管理软件,大学图书馆专业图书和其他各种图书众多,从师生等读者角度,会经常频繁的进行图书查询、借阅、归还等等;从图书管理员角度,需要进行借书处理,还书处理等等;从系统管理员的角度,需要进行图书系统维护、增加新书目删除旧书目、管理读者信息等等。所以,应该包括用户信息管理、系统参数设置、图书数据录入、图书数据查询、借阅管理、归还管理、系统维护等等。系统应该具备较好的功能扩充。开发图书管理系统软件,是为了满足广大师生查阅和借阅图书方便的要求,以高效率、现代化的模式进行学习和工作。   图书管理系统应该具备主要的功能需求:
  1)用户登录:首先要求用户进行注册和登录。要求用户名和密码匹配,验证通过才能允许用户进入系统。
  2)修改注册信息:登录后,可以重新修改密码等信息。
  3)权限设置:系统管理员进行。
  4)圖书信息录入:录人新图书的相关信息。
  5)数据查询:根据用户输入的条件进行相应查询。
  6)数据修改:增加图书、删除图书、图书辅助信息的调整(且有管理权限的用户可以操作。)
  7)图书借阅:外借登记、归还记录等(具有管理权限的用户可以操作)
  8)数据备份:实现系统数据的备份和恢复机制。
  9)数据维护:系统管理人员操作。
  10)查阅操作日志:具有权限的用户操作。
  确定系统的主要参与者:
  首先,有借阅者的参与。借阅者登录系统,浏览查询图书,选定并借阅图书,最后归还图书。
  第二,有图书馆管理人员的参与。处理借书、还书的操作
  第三,有系统管理员的参与。增加图书、删除图书、更新图书、还有借阅者信息的管理等工作。
  图书管理系统的用例确定:
  1)借阅者用例:登录系统、查询信息、预定图书、借阅图书、归还图书。
  2)图书馆工作人员用例:处理图书借阅、处理图书归还
  3)系统管理人员:查询图书信息、增加图书信息、删除图书信息、更新图书信息、管理借阅者信息。
  运用Rational Rose制作用例图:
  1)借阅者用例图:用泛化关系将参与者进行连接,“学生”“教师”属于特殊化角色,“借阅者”是一般化角色,关系的方向指向一般角色。由于设计思路和设计理念的不同,用例图呈现的最终结果也不尽相同,有的设计,涉及的所有查询借阅工作,都是在成功登录系统之后才能进行。而有的设计是查询查阅不需要登录就能进行。在这里,提供一种设计形式。
  2)图书馆工作人员的用例图:在这个用例图中,参与者一个,就是“图书管理员”。主要的用例有三个,即“图书借出”“图书归还”“处理预约”。其中,在“图书借出”之前,工作人员需要首先“检查读者账户”信息,看是否超出借阅数量或者是其他情况不能继续借阅,所以这两个人用例之间是包含关系。另外,在“图书归还”之前,管理员也要检查是否超出期限,如果是,则需要增加新的用例“收取罚款”,所以,两者之间是扩展关系。
  3)系统管理员的用例图:参与者是“系统管理员”。主要用例是:“系统维护”“图书管理”“用户管理”。其中,在“图书管理”中,包括“添加图书信息”“编辑图书信息”“删除图书信息”等子用例;在“用户管理”用例中,包括“添加用户信息”“修改用户信息”“查询用户信息”等子用例。
  3总结
  用例视图是UML所有视图中最重要的视图,它的设计优劣直接影响到用户对工程产品的满意度。尽管每个模型都有不同的设计方案和表达形式,但是最好的模型总是能够最大可能的切合实际,节约成本。而且,越庞大的项目,建模的重要性越大。只有好的模型的帮助,才能更好地理解和完成项目。
  【通联编辑:王力】
其他文献
摘要:随着银行业对金融科技的重视程度不断增加,相应资金投入也越来越大,网络规模和复杂程度也较以往出现较大的增长,这对网络运维人员提出极大挑战,目前网络故障排查没有统一的办法,主要依靠个人的经验来判断,该文提出一种“立足源点,同类比较,精准定位”的网络故障排查方法,可以帮助网络管理员第一时间分析、排查、定位故障原因,解决网络故障,提升银行业网络故障应急处置能力。  关键词:网络故障排查;立足源点;同
摘要:随着信息技术的高速发展,计算机面临着大量的数据处理业务。文本字符串处理是一种经常性的业务,正则表达式在复杂字符串处理方面有着得天独厚的优势。文章介绍了Java语言中的正则表达式处理方法,分析了复杂字符串的分割、查找、替换和提取特殊子串的方法,总结了构建正则表达式重要性。  关键词:文本;字符串;正则表达式;模式;Java  中图分类号:TP312 文献标识码:A  文章编号:1009-304
摘要:随着物联网技术的发展,智能化已成为锁具行业发展的趋势之一。针对目前智能锁不支持无线通信、不支持手机APP控制等缺点,提出一种基于蓝牙无线模块的手机控制智能锁系统。通过手机蓝牙控制智能锁的开关,硬件端的HC-05蓝牙模块作为服务器端,手机蓝牙作为客户端;客户端采用APPInventor编程语言制作手机APP;硬件端采用Arduino主控板控制,实现了Arduino与蓝牙之间通过串口进行通信。实
摘要:针对现实社会农产品溯源数据的可信任问题,采用分布式共享加密数据库技术即区块链技术,设计一个安全可信任的农产品溯源系统。该系统基于区块链技术,设计了农产品溯源系统的功能组件构架图,改进的DPOS公共识机制设计了农产品溯源系统数据安全共享模型,实现数据安全共享;经验证该系统具有远程访问、产品各环节透明呈现、数据不可篡改、防伪不可复制、信息压缩、通信加密、信息安全交互、隐私保护、时间戳验证等特点。
摘要:近年来,我国患癌人数呈直线上升趋势,每分钟大约有七人被确诊为癌症,癌症发病率接近世界水平,但死亡率高于世界水平。从2010年开始癌症已经成为主要的致死原因,也成为中国的一个主要公共卫生问题。目前国家政策导向、互联智能广泛应用、健康医疗市场需求等为互联网医疗发展推波助澜。我们平台的初心是让患者主动健康、主动幸福。为此,我们基于LBS技术、聚类分析、大数据智能推荐等技术更好地为患者服务,让患者可
摘要:JavaEE是软件开发的一种常用架构,支持分布式环境下B/S结构的开发。该文针对科研项目管理中的实际需求,在中标麒麟操作系统和达梦数据库的基础上,基于JaveEE体系结构配置了SSH框架,设计了系统功能结构和数据库结构,实现了项目管理、权限管理和数据库访问等功能,最终建立了一个科研项目管理系统。  关键词:JavaEE;SSH;B/S;科研项目管理;信息系统  中图分类号:TP315 文献标
摘要:目的:介绍预住院系统的设计及在护理工作中的应用;方法:采用微软.NET平台,结合软件工程的方法,研制出一套符合患者预住院流程的软件系统;结果:预住院系统成功在我院上线使用,该系统使用后患者住院时间明显缩短(P<0.01),患者的满意度整体提高(P<0.01);结论:预住院系统的建设能较大程度上减少患者的住院时间,提高患者的就诊环境。  关键词:预住院;病区;信息软件  中图分类号:R197.
摘要:现如今,我国各个领域对互联网技术的运用越发普遍,在此背景下对计算机人才的需求也愈发迫切。中职教育为培养学生的重要场所,对中职院校来说,在开展计算机教学时,应善于采用良好的教学方法,来提高计算机教学质量,实现培养计算机人才。项目教学法为一种新型教学方式,相较于传统的教学方法,这种教学方法有着十分显著的优势。在中职计算机教学中,教师可积极运用项目教学法,来激发学生学习计算机的興趣与热情,促进学生
摘要:目前学生就业不仅是教育教学领域面临的主要问题,也是社会发展中需要面临的重要难题。因此,以就业为导向推动教育教学改革,构建应用型人才培养体系已经成为目前职业院校的必然选择。高职院校的计算机专业是信息化背景下专业人才供应的重要平台。基于此,该文从以就业为导向教学模式入手,根据学生职业素养与就业要求分析高职计算机教学模式中存在的问题,并立足学生的未来发展,对以就业为导向的高职计算机教学模式优化策略
摘要:在软件开发平台上存在两个阵营,一个J2EE,一个是.NET。这两个平台都是为了解决构建企业计算等大型平台而出现的。这两个平台中都包含了一系列的技术,通过这些技术可以缩短开发周期,提高开发效率,节省构造成本。无论是J2EE还是.NET都是非常优秀的软件开发平台。工作中,根据具体项目来选用平台和技术,构造合理的解决方案。  关键词:平台;J2EE;NET;计算  中图分类号:TP311 文献标识