基于UML的酒店管理系统的分析与设计_第1页
基于UML的酒店管理系统的分析与设计_第2页
基于UML的酒店管理系统的分析与设计_第3页
基于UML的酒店管理系统的分析与设计_第4页
基于UML的酒店管理系统的分析与设计_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于UML的酒店管理系统的分析与设计摘要:酒店管理系统是现代企业管理系统的一个重要组成部分,传统的系统分析设计方法已经难以保证软件开发的效率和质量,UML是一种面向对象的可视化建模语言,通过用例模型、类模型及交互模型的建立可以快速、有效地进行软件开发,将UML应用于酒店管理系统建模,可以加速软件开发进程,提高软件质量,支持动态的业务需求,并方便地集成已有的企业管理资源。关键词:酒店管理系统;UML;系统分析;系统设计;建模;实现目录1. 定义 22. 需求分析 33. 系统的UML分析与实现 53.1. 酒店管理系统的业务建模和需求分析 63.2. 酒店管理系统设计 63.2.1. 系统架构设计 73.2.2. 系统详细设计 83.2.3. 酒店管理系统的实现、测试和系统配置 124. 结束语 12定义

当今社会对信息系统的需求日益增长,需求变化也越来越快,软件开发的技术发展方向已经从“提升被开发系统的执行效率”转变为“提升开发效率”。UML作为一种通用的建模语言,融入了软件工程领域的新思想、新方法、新技术,在软件的开发不同阶段可以采用相同的一套概念和表示法,在同一个模型中它们可以混合使用,具有定义良好、易于表达、功能强大等优势。面向对象技术降低了解决方法域与问题域的差别,提供了良好的复用机制,能够更加有效提高软件开发效率,完全顺应了软件开发技术的发展方向。

UML(TheUnifiedModelingLanguage,即统一建模语言)是一个通用的标准建模语言,可以对复杂的系统建立可视化系统模型,目前已经被工业标准组织OMG(ObjectManagementGroup)接受,一经推出便得到许多著名计算机厂商如Microsoft,HP,IBM,Oracle等支持,在国际上应用日益广泛。UML(UnifiedModelingLanguage)又称统一建模语言或标准建模语言,是一个支持模型化和软件系统的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,由类图、对象图、用例图、状态图、顺序图、活动图、协作图、构件图、包图及部署图这些基本图型组成。软件工程是用工程、科学和数学的原则与方法研制、维护计算机软件的有关技术及管理方法,软件工程的方法、工具和过程构成了软件工程的三要素。软件工程的目标实在给定成本、进度的前提下,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性并满足用户需求的软件产品。软件产品从形成概念开始,经过开发、使用和维护,直到最后退役的全过程成为软件的生存周期。软件的生存周期都包括软件定义、软件开发、软件使用与维护3个部分。软件开发模型给出了软件开发各个阶段之间的关系。它是软件开发过程的概括,是软件工程的重要内容。它为软件工程管理提供里程碑和进度表;为软件开发过程提供原则和方法。图1.酒店管理系统功能模块示意图酒店管理系统作为当前使用非常广泛的数据库应用系统之一,其开发过程包括需求分析、UML系统建模、数据库分析和设计以及各功能模块的实现。我们重点对UML系统建模进行详细讲述。系统的UML分析与实现UML概述及特点;UML又称统一建模语言或标准建模语言,是一个支持模型化和软件系统的图形化语言,为软件开发的所有阶段提供模型化和可视化支持。由类图、对象图、用例图、状态图、顺序图、活动图、协作图、构件图、包图及部署图这些基本图形组成。UML是一种编制系统蓝图的标准化语言,可以对大型复杂系统的各种成分可视化说明并构造系统模型,以及建立各种必要的文档。UML通过三类图形建立系统模型:UseCase图,静态结构图(类图,对象图,组件图,配置图)和动态行为图(顺序图,协同图,状态图,活动图),这些图可以从不同抽象角度使系统可视化。UML具有面向对象、可视化、独立与开发过程和程序设计语言以及易于掌握使用等特点。UML适用于各种规模的系统开发,能促进软件复用,方便地集成已有的系统并有效减少开发中的各种风险。UML在酒店管理系统中的实际应用.UML是一种建模语言,是系统开发的一个组成部分,本身并没有关于开发过程概念的定义和表示符号。UML的创始人booch,Jacobson和RumBaugh在rational公司的支持下综合了多种系统开发过程的长处,提出新的面向对象的开发过程,称为Rational统一过程(RationalUnifiedProcess,RUP)。RUP过程的核心工作流程包括:业务建模、需求分析、系统分析与设计和实现、实现、测试和系统部署。下面通过UML来分析并构造酒店管理系统模型,并结合Rational统一过程加以描述,图形使用RationalRose工具软件绘制。酒店管理系统的业务建模和需求分析业务模型和需求分析的目的是对系统进行评估,采集和分析系统的需求,理解系统要解决的问题,重点是充分考虑系统的实用性。结果可以用一个业务用例(BusinessUseCase)框图表达,根据酒店管理系统的基本特征和功能可得到本系统的用例图,如图2。图2.酒店管理系统业务用例框图模型中的活动者代表外部与系统交互的单元,包括酒店管理员、前台服务员等等;业务用例框图是对系统需求的描述,表达了系统的功能和所提供的服务,该用例图标记了酒店管理系统的所有用例,并且形象地描述了各用例与用户角色之间的关系。图2是酒店管理系统层次的用例模型,只包含了最基本的UseCase模型,是系统的高层抽象。在开发过程中,随着对系统需求认识的不断加深,用例模型可以从顶向下不断细化,演化出更加详细的UseCase模型。根据系统的用例图,可以对系统的持久对象进行设计。酒店管理系统设计

系统分析与设计是研究欲采用的实现环境和系统结构,结果是产生一个对象模型,也就是设计模型。设计模型包含了UseCase的实现,可以表现对象如何相互通信和运作来实现UseCase流的。对于系统的静态结构,可以通过类图、对象图、组件图和配置图来描述;对于系统的动态行为,可以通过顺序图、协同图、状态图、活动图描述。这些图在加上说明文档就构成一个完整的设计模型。系统架构设计

酒店管理系统拥有大量业务信息资源,这些资源包括各种客户信息、订房、和退房等信息。其数据量大、信息变化快,非结构化信息与结构化信息共存。使用UML对酒店管理系统进行基于面向对象的分析和实现,可以从开发的第一步开始,从系统的底层就把握住酒店信息资源的特征,为下一步具体实现打好基础。在酒店管理系统建立模型时要涉及到处理大量的模型元素,如类、接口、组件、节点、图等,可以将语意上相近的模型元素组织在一起,这就构成了UML的包,包从较高的层次来组织管理系统模型。

系统主要有以下四个包:用户接口包(UserInterfacePackage)

用户接口包在其他包的顶层次,为系统用户提供访问信息和服务。要注意一点,由于开发工具使用不同,该接口描述也是有区别的。如果采用JavaWeb开发,就要以JSP(JavaServerPages)为基础,如果采取Microsoft的A开发,其基础就是标准化控件组。本系统在此将使用JavaWeb开发,下面有关代码的描述都是基于Java的。业务逻辑包(BusinessRulePackage)

该包是酒店管理系统业务的核心实现部分,包括客户管理、订房管理、退房管理等,其他包可以通过访问该包提供的接口,实现业务逻辑,如客户管理业务等。数据持久访问包(DataPersistencePackage)

该包实现数据的持久化,也就是与数据库交互,实现数据的存取、修改等操作。通用工具包(UtilPackage)

该包主要包括应用程序安全检查的类,可以为上面三个包提供安全检查,如客户端检查和服务器端业务规则检查等,同时包括一些系统异常检查与抛出处理以及系统日志服务等。系统详细设计

详细设计主要是描述在系统分析阶段产生的类,与分析阶段类的区别就是偏重于技术层面和类的细节实现。酒店管理系统提供的各种服务都是建立在分布、开放的信息结构之上,依托高速、可靠的网络环境来完成的。每项服务都可以看作一个事件流,由若干相关的对象交互合作来完成。对于这种系统内部的协作关系和过程行为,可以通过绘制序列(Sequence)框图和协作(Collaboration)框图来帮助观察和理解。此外,描述工作流和并发行为还可以通过活动框图,表达从一个活动到另一个活动的控制流。同时,可以在理解这些图的基础上,抽象出系统的类图,为系统编码阶段继续细化提供基础。下面以JavaWeb开发为例,介绍客户管理子系统的详细设计。客户管理子系统的基本结构建模:下图是客户管理子系统主要类极其关系的详细设计图3.酒店管理系统域类图序列图:序列图是一种对象交互图,着重强调了时间序列,而不是静态对象的关系,通过序列图可以清楚地看到“谁在什么时间对谁说了写什么”。图4.订房管理时序图图5.退房管理时序图图4是一个订房管理的序列框图例子。描述了先加载某个客户;显示某些状态;再更改某些属性值,最后更新数据库状态的一次执行过程。

通过序列框图可以清晰看出系统客户、客户管理子系统的用户接口、数据库连接模块之间以时间为顺序的消息交换,这对于把握系统的控制流、顺序行为和交互行为是非常有益的。建立在分布网络环境下的管理系统的事件流和控制流是非常复杂的,需要从顶层到底层进行一步步分解,用多幅能反映动态结构的图来分析与说明。图5反映了退房管理的顺序框图。状态图适合描述一个对象穿越多个UseCase的行为。类的状态图表示类的对象可以呈现的状态和这个对象从一种状态到另一种状态的转换。图6.状态图图6描述了对象的生命期中可能的状态及状态变化(从创建、更新到消亡的转变过程),我们需要使用状态图来描述类的对象的状态及其行为,显示对象的整个生命周期。此例说明其他对象的操作可能改变当前对象的状态。到此,经过了需求分析,使用UML建模绘出了各用例的用例图、状态图、时序图之后,我们已经对酒店管理系统的具体功能实现有了比较明确的认识。接下来,需要我们对系统进行框架设计和详细设计。在进行构架设计时,我们将酒店管理系统设计视图中的类组织成一个标准的三级体系结构,如图7所示。用户服务包(UserServices)中的元素提供了表现信息和收集的可视化界面。业务服务包(BussinessServices)中的元素负责维护、访问和修改数据。数据服务包(DataServices)中的元素为另两个包的元素搭桥,并包含了管理用户请求(为了执行业务上的任务)的所有类和其他元素,包括支配数据操纵策略的业务规则。图7.酒店管理系统的体系结构至此,UML系统建模完成。酒店管理系统的实现、测试和系统配置系统采用五层逻辑结构:客户端只需中文浏览器;表示层用12个JSP(JavaServerPage)文档实现动态页面以创建、操作业务对象;核心对象层用6个Java类以JavaBean形式构成业务处理的核心对象;连接层采用JDBC2提供两种连接方式:一种是基于DriverManager,主要支持Java应用和测试;另一种基于DataSource;资源层即数据库服务器。经过系统分析和设计后,就可以根据设计模型在具体的环境中实现系统,生成系统的源代码、可执行程序和相应的软件文档,建立一个可执行系统;进而需要对系统进行测试和排错,保证系统符合预

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论