UML类图分析-旅程航行案例
- 格式:docx
- 大小:127.14 KB
- 文档页数:3
《可视化建模与UML》课程结业报告课题名称: 航空客运订票系统建模姓名: ***学号: *******班级:****: ***完成日期: 2013.06.16目录第一章概述 (3)1.1系统开发的摸底和开发背景 (3)1.2系统功能 (3)1.3系统结构框架 (4)1.4开发环境 (5)第二章用例模型 (6)2.1用例模型简介 (6)2.2用例图的的含义及其作用 (6)2.3用例图及用例描述 (7)第三章类模型 (10)3.1类模型简介 (10)3.2类图的作用 (10)3.3类图 (11)第四章交互模型 (13)4.1交互模型简介 (13)4.2序列图简介 (13)4.3序列图的作用 (13)4.4序列图描述及其序列图 (14)第五章行为模型 (20)5.1行为模型简介 (20)5.1.1活动图简介 (20)5.1.2活动图的作用 (20)5.1.3状态图简介 (21)5.1.4状态图的作用 (21)5.2行为模型图 (21)5.2.1活动图及其描述 (21)5.2.2状态图及其描述 (23)第六章构件图和部署图 (25)6.1构件图简介 (25)6.2部署图简介 (25)第七章课程学习小结 (27)7.1课程小结 (27)7.2学习心得 (27)参考文献 (28)第一章概述1.1系统开发的摸底和开发背景随着科技与经济的发展,越来越多的人选择乘飞机,这跟我国的经济增长有很大关系,人们在追求快节奏的生活方式,所以做飞机无疑成了首选。
而且随着网络的盛行,航空订票系统就显得尤为重要,我们开发这个系统主要是为了方便大家,让大家能够快速、清晰、准确地了解航班信息,而不至于像以前那样排队等候,从而避免耽搁乘客大量的等待时间。
航空客运业务诞生已有进一个世纪了,作为现有交通工具中最方便快捷的一种,它确实地给大家的生活、出行带来了极大的方便。
随着航空客运业务多年来的发展,其售票业务也同样不断地发展。
1.2系统功能机票预订系统是在现代社会生活节奏不断加快,对机票预订工作的自动化和准确化要求也日益强烈的背景下,为了实现机票预订工作的网络化,以及实现网络查询和统计一体化而开发的管理信息系统。
UML类图的常见设计模式案例解析UML类图是一种常见的软件设计工具,也是面向对象编程中的重要部分。
设计模式则是面向对象编程中的重要概念,它提供了一种可重复使用的解决方案,可以解决软件开发中常见的问题。
本文将介绍UML类图中几种常见的设计模式,并分析它们的实现原理。
工厂模式工厂模式是一种创建型模式,它依赖一个工厂对象来创建其他对象。
在实际开发中,我们有时需要根据不同的条件创建不同的对象,例如在游戏中,需要根据不同的角色创建不同的技能。
传统的做法是使用if/else语句来进行判断,这种做法会使代码变得复杂,而且不容易扩展。
工厂模式就是为了解决这个问题而产生的。
我们可以使用UML类图来表示工厂模式的类结构。
工厂模式中包含3个主要元素:产品接口、产品实现类和工厂类。
其中,产品实现类是需要创建的对象,产品接口是产品实现类所实现的接口,工厂类是用来创建不同类型产品实现类对象的类。
如图所示,客户端只需要知道工厂类即可通过工厂类来创建产品实现类对象。
这样既避免了复杂的if/else语句,又方便了扩展。
观察者模式观察者模式是一种行为型模式,它定义了一种一对多的依赖关系,当一个对象状态改变时,它的所有依赖者都会收到通知并自动更新。
在实际开发中,常常需要实现当某个状态发生改变时,自动向其他对象发送通知。
我们可以使用UML类图来表示观察者模式的类结构。
观察者模式中包含2个主要元素:观察者接口和具体观察者类。
其中,观察者接口是被观察者所依赖的接口,具体观察者类是实现观察者接口的类。
如图所示,当被观察者状态发生改变时,它会将状态通知给所有的观察者。
具体观察者类在接收到通知后,会根据需要更新自己的状态和数据。
装饰器模式装饰器模式是一种结构型模式,它使得在运行时增加对象的功能变得容易。
在实际开发中,经常需要对一个对象进行多次装饰,以增加其功能。
例如,在游戏中,我们可能需要为一个角色添加多种技能。
我们可以使用UML类图来表示装饰器模式的类结构。
UML建模之旅:“旅游业务申请”系统分析与设计建模案例使用说明书编写单位:北京航空航天大学软件学院编写人:谭火彬,林广艳编写时间:2018年10月目录1.案例说明 (3)2.案例教学目标 (3)3.案例准备 (3)4.案例教学要点 (3)4.1需求建模 (3)4.1.1识别参与者 (4)4.1.2识别用例 (4)4.1.3构造用例图 (5)4.1.4编写用例文档 (6)4.1.5重构用例模型 (9)4.2系统分析 (10)4.2.1架构分析 (11)4.2.2识别分析类 (11)4.2.3构造用例实现 (12)4.2.4构造分析类图 (15)4.3系统设计 (16)4.3.1架构设计 (16)4.3.2构件设计 (17)5.案例教学组织方式 (19)6.案例小结 (20)1.案例说明本案例完整地展示如何利用UML开展系统分析和设计。
借助于UML所提供的各种模型,可以有效地处理系统分析和设计中的各类问题。
目前,该案例主要用于“面向对象分析与设计”课程教学,贯穿课程教学的各个阶段。
该案例可以用于课程教学阶段,也可用于学生实践。
该案例总共包括3个组成部分,分别是需求建模、系统分析和系统设计;这三部分是软件系统编码前的三个核心过程,也是软件工程专业学生必备的专业技能。
本案例通过利用UML完成三部分的工作,通过带领学生完成UML建模之旅,从而向学生全面展示了如何利用UML建模技术来构建系统的需求、分析和设计模型。
教师可根据理论授课的进度,逐步完成案例教学内容。
2.案例教学目标本案例适用于软件工程专业的高年级本科生和研究生,其的目标是就是针对前面提出的三个方面的问题,引入UML建模技术,引导学生通过UML建模完成需求定义、需求分析和系统设计这三个软件系统开发。
具体的教学内容包括以下三个方面的建模工作:(1)基于UML用例模型的需求定义方法。
通过利用UML用例图、用例文档等技术,引导学生构建目标系统的需求模型,以完成需求定义工作。
UML中的活动图实践案例在软件开发过程中,使用统一建模语言(UML)可以帮助开发人员更好地理解和设计软件系统。
其中,活动图是一种非常有用的工具,可以描述系统中的业务流程和操作流程。
本文将通过一个实践案例,详细介绍如何使用活动图来建模和分析系统的业务流程。
案例背景假设我们正在开发一个在线购物系统。
该系统允许用户浏览商品、选择商品、下订单并支付。
为了更好地理解和设计该系统,我们将使用活动图来描述用户购物的整个流程。
活动图的基本元素在开始建模之前,让我们先来了解一下活动图的基本元素。
活动图由以下几个主要元素组成:1. 动作(Action):表示系统执行的基本操作,例如发送电子邮件、生成报告等。
2. 控制流(Control Flow):表示活动图中的控制流程,即动作之间的顺序关系。
3. 决策节点(Decision Node):表示在不同条件下的流程分支,类似于编程语言中的if语句。
4. 合并节点(Merge Node):表示流程分支的合并点,类似于编程语言中的else语句。
5. 初始节点(Initial Node):表示活动图的起点。
6. 终止节点(Final Node):表示活动图的终点。
建模过程现在让我们开始建模购物系统的活动图。
1. 首先,我们需要定义系统的起点和终点。
在活动图中,起点用一个带有黑色实心圆圈的初始节点表示,终点用一个带有黑色实心圆圈的终止节点表示。
2. 接下来,我们需要定义用户浏览商品的流程。
用户打开购物系统后,系统将显示所有可用的商品。
用户可以通过滚动或搜索来浏览商品。
在活动图中,我们可以使用动作来表示这些操作,并使用控制流来表示它们之间的顺序关系。
3. 用户选择商品后,系统将显示商品的详细信息。
用户可以查看商品的图片、描述、价格等信息。
在活动图中,我们可以使用动作来表示这些操作,并使用控制流来表示它们之间的顺序关系。
4. 用户选择完商品后,系统将允许用户下订单。
用户需要提供收货地址、联系方式等信息。
实验六UML 类图
实验项目名称:UML 类图
实验目的:
1) 确定系统中相应的类,建立类的属性和操作;
2) 正确定义类的继承关系,分析属性和操作的可继承性;
3) 正确分析类之间的关系,熟练使用软件创建出完整的类图。
实验内容:
本实验通过分析订票系统寻找相应的类,然后设计出它们的类图。
然后着重对飞机订票系统的关联关系进行分析和设计。
实验步骤:
1) 确定飞机订票系统中的类
2) 进行类图的创建
3) 确定类的继承关系
4) 分析订票系统的关联关系
5) 确定飞机订票系统中的类、属性和操作
6) 确定并创建类图的关联关系
1.分析订票系统中的主要类:
1.航班信息管理类图:
2.旅客信息管理类图:
2. 实验小结:
通过本次实验,遇到了很多问题,首先第一个难点就是在自己电脑上安装Rational Rose软件的问题。
由于我的电脑是Win8系统,安装Rational Rose软件出现问题,并且破解不了,最后下载了starUML软件。
本次实验,了解StarUML工具软件的组成及功能,遇到不会使用的问题学会从网上寻找资源来解决,并且掌握了StarUML画用例图的具体的使用方法,设计类图主要根据参与者具备的属性来完成,并且不断的完善功能需求,通过这几次实验对软件的完整架构有了一个较全面的认识,掌握了软件工程的一些思想和方法。
航空公司管理系统UML分析与设计文档组长:********组员:*************学院******目录目录 (2)1 问题陈述 (3)2 需求分析 (4)2.1用例图 (4)2.2术语表 (6)2.3活动图 (6)2.3.1输入航线信息活动图 (6)2.4用例规约 (7)2.4.1用例规约Login (7)2.4.2用例规约用户管理 (8)2.4.3用例规约航线信息管理 (8)2.4.4用例规约客户信息管理 (9)2.4.5用例规约订票信息管理 (9)3 分析与设计 (10)3.1架构分析 (10)3.1.1 界面层 (10)3.1.2管理逻辑层 (11)3.1.3 数据库层 (11)3.2 关键抽象 (11)3.3 用例实现 (11)3.3.1 输入航线信息的用例实现 (11)4 用例分析 (13)4.1分析类 (13)4.2分析类的功能 (13)4.2.1 airline类 (13)4.2.2 plane类 (13)4.2.3 service类 (13)4.2.4 customerType类 (14)4.2.5 customer类 (14)4.2.6 ticket类 (14)4.3 类图及类之间的关联 (14)4.4数据库设计 (15)4.4.1 user_info1 管理用户信息表 (15)4.4.2 serviceInfo 舱位等级信息表 (15)4.4.3 planeInfo客机信息表格 (15)4.4.4 airlineInfo航线信息表 (16)4.4.5 customerType 客户类型信息表 (16)4.4.6 customerInfo 客户信息表 (16)4.4.7 ticketInfo 订票信息表 (16)4.4.8 数据库结构及各表间的关系 (17)1 问题陈述本小组项目任务是开发一个航空公司管理系统。
一个正常营运的航空公司需要管理所拥有的飞机、航线的设置、客户的信息等,更重要的还要提供票务管理。
航空订票系统UML建模设计20117760XXX金振方鉴于当今互联网行业的飞速发展,网络用户的日渐增多,对互联网应用的需求日益强烈,某航空公司欲开发一套航空管理系统,以下内容为管理系统中订票子系统的UML建模设计:1.需求系统需求如下:1.该订票系统的浏览用户被划分为游客(即未注册用户)与用户(即注册用户),未注册用户只能访问该系统的首页,首页提供登录功能和前往注册按钮,用户可以登录或者前往注册。
2.用户登录成功后,前往航班查询页面,进行航班信息的查询,当欲订航班存在时可以进行订票。
3.用户可以查看自身所有预定的航班票,并在一定条件下(即航班未发出)可以进行退票和付款。
4.该系统的管理员可以对航班信息进行增删查改,并负责航班信息的更新。
5.用户可以登入系统进行票据的打印。
6.权限验证,即用户与管理员身份的区别验证。
附录:该系统的核心与主要的功能模块分为查询模块和订票模块,直接用户为管理员和注册用户,管理员登入系统后负责信息的更新与修改,并且审核错误的信息。
注册用户登入系统后,可以进行航班查询操作,待查询到欲订的航班信息时,可以进行订票,订票完成后可以进行付款,并且可以到相关页面查看预定的所有的机票的信息,与付款情况,并可在当前页面进行退票或者付款,还可进行票据的打印,以及对订票的个人信息的修改。
管理员用户的注册为特殊用户注册,由系统的最高权限的管理员分派标识符或者由航空公司内部员工号进行区别鉴定,管理员登入系统时与普通注册用户相同,但进行敏感操作时,比如点击航班信息添加或修改时需要进行身份验证,此时需要输入当时由系统最高权限的管理员派发的标识符(或其他)进行验证。
系统用例如下:根据系统功能的区别,系统分为订票模块与航班信息管理模块还有个人信息管理模块,订票模块主要由查票,订票,退票,改票等功能组成。
航班信息管理模块主要由航班信息的增删查改等功能组成。
个人信息管理模块主要由个人信息的查询,修改等功能组成。
UML 建模设计航空订票系统姓名:卫飞班级:1528学号:201515614375一、背景1.1背景概述随着知识经济的到来,人类已经逐步进入信息化社会,信息增长的速度越来越快,人们希望利用先进的管理理论方法手段来得到并处理越来越多的信息,以提高工作效率和管理水平。
由于信息资源对人们生活的重要性,不断提高信息的收集,传输,加以利用等活动,日益成为人们社会生活的重要组成部分。
网上机票预订管理系统的产生和发展正好满足人们的这种需求1.2 主要组成及功能1、新用户注册,新用户可以注册,注册时输入用户名可以查询用户可不可用,可用就可以注册,注册时可以判断用户输入的密码和验证密码是否相同,相同才给以注册,如果满意可以点注册,注册成功后用户可以选择不用在回到登陆界面,可以直接陆到用户主界面,以后就可以用这个用户登录了,如果不满意,点取消,所有信息清空,重新输入。
2、验证登陆名密码,正确进入主菜单,根据登录时所选的登录方式(客户、管理员)的不同分别对用户设定不同的访问权限(如果是输入的客户用户名和密码正确,选择以客户方式登陆则主界面里面的管理员界面不能用,如果输入的是管理员的相应用户密码正确,以管理员的方式登陆则管理员界面可用)不正确则清空登录框,最多可以输入三次,三次不正确系统会自动关闭3.我的航班界面。
你可以点击你想查询的有关机票的信息的按钮(舱位信息查询,客机信息查询,航线查询,客户类型信息查询)获得相关信息的表,根据表的内容,你可以在下面的下拉框中选择你要定的票信息,点确定后在下面会显示你的机票的相关内容,如果满意可以点击订票,把相关信息添加到机票数据库表中,如果不满意,可以点重置,所有信息清空,再重新选择。
4.退票功能。
用户可以根据用户信息表中的我的机票信息查询,找出机票号,在输入到机票号查询里,点击查询获得你的机票信息以及价格显示,点击退票则在数据库机票信息表中删除本条信息二、使用Rose绘制图分别有:用例图、类图、包图、顺序图、协作图、状态图、活动图、组件图、部署图情景:机票预订系统是某航空公司推出的一款网上选票系统。
UML中的类图和部署图的关系解析与实例分析UML(Unified Modeling Language)是一种用于软件系统建模的标准化语言,它提供了一套丰富的图形符号和规范,用于描述软件系统的结构、行为和交互。
在UML中,类图和部署图是两种常用的图形表示方式,用于分别描述软件系统的静态结构和物理部署。
类图是UML中最常见的一种图形表示方式,用于描述软件系统中的类、对象和它们之间的关系。
在类图中,类被表示为矩形框,其中包含类的名称、属性和方法。
关系则通过箭头和线来表示,常见的关系有关联、继承、实现和依赖等。
类图可以帮助开发人员更好地理解软件系统的结构,以及类之间的关系。
部署图是另一种常用的UML图形表示方式,它主要用于描述软件系统的物理部署和运行环境。
在部署图中,物理节点(例如服务器、计算机)被表示为方框,而软件系统的组件则被表示为圆角矩形。
通过箭头和线来表示物理节点和组件之间的连接关系,例如部署、依赖和关联等。
部署图可以帮助开发人员更好地了解软件系统的部署情况,以及不同组件之间的交互关系。
类图和部署图之间存在一定的关系,它们可以相互补充和影响。
首先,类图可以为部署图提供必要的信息。
在设计软件系统时,开发人员可以通过类图来确定需要部署的组件和它们之间的关系。
例如,一个类图中的类可以对应到部署图中的组件,类之间的关系可以对应到组件之间的关联关系。
这样一来,开发人员可以更好地了解软件系统的组件结构,并在部署图中进行相应的部署安排。
另外,部署图也可以影响类图的设计。
在设计类图时,开发人员可以考虑软件系统的物理部署情况,以及不同组件之间的连接方式。
例如,如果某个组件需要在多个物理节点上部署,那么在类图中可以设计一个抽象类,然后在部署图中将其实例化到不同的节点上。
这样一来,开发人员可以更好地将软件系统的物理部署和类的设计结合起来,提高系统的可扩展性和灵活性。
为了更好地理解类图和部署图之间的关系,下面我们以一个简单的示例来进行分析。
航空公司管理系统UML分析与设计文档组长:********组员:*************学院******目录目录 (2)1 问题陈述 (3)2 需求分析 (4)2.1用例图 (4)2.2术语表 (6)2.3活动图 (6)2.3.1输入航线信息活动图 (6)2.4用例规约 (7)2.4.1用例规约Login (7)2.4.2用例规约用户管理 (8)2.4.3用例规约航线信息管理 (8)2.4.4用例规约客户信息管理 (9)2.4.5用例规约订票信息管理 (9)3 分析与设计 (10)3.1架构分析 (10)3.1.1 界面层 (10)3.1.2管理逻辑层 (11)3.1.3 数据库层 (11)3.2 关键抽象 (11)3.3 用例实现 (11)3.3.1 输入航线信息的用例实现 (11)4 用例分析 (13)4.1分析类 (13)4.2分析类的功能 (13)4.2.1 airline类 (13)4.2.2 plane类 (13)4.2.3 service类 (13)4.2.4 customerType类 (14)4.2.5 customer类 (14)4.2.6 ticket类 (14)4.3 类图及类之间的关联 (14)4.4数据库设计 (15)4.4.1 user_info1 管理用户信息表 (15)4.4.2 serviceInfo 舱位等级信息表 (15)4.4.3 planeInfo客机信息表格 (15)4.4.4 airlineInfo航线信息表 (16)4.4.5 customerType 客户类型信息表 (16)4.4.6 customerInfo 客户信息表 (16)4.4.7 ticketInfo 订票信息表 (16)4.4.8 数据库结构及各表间的关系 (17)1 问题陈述本小组项目任务是开发一个航空公司管理系统。
一个正常营运的航空公司需要管理所拥有的飞机、航线的设置、客户的信息等,更重要的还要提供票务管理。
UML类图分析-旅程航行案例
最近计划回顾一下UML的相关知识。
起因由于跟别人沟通时,太多专业术语在耳边飘过,太久没有刷新大脑了。
是时候翻炒一下UML的相关知识了。
类图相关知识主要从类型、可见性、关系、案例demo等方面入手:
1.类型:主要有接口、静态类、抽象类、内部类。
针对其类型也可以对进行扩展(<<Stereotype>>)不同的类型,如实体,业务领域及值对象等;
2.可见性:+代表public、-代表private、#代表protected 、~代表package;
3.语法:_ 代表静态常量、实例名:类名(Instance Name : Class Name)、r1=conn(角色)、m1=1..*(关系)
4.关系:泛化(generalization)、继承(generalization)、实现(Realization)、依赖(dependency)、关联(association)、聚合(aggregation)、组合(composition);
5.案例
场景:5W场景分析,乘客打算在什么时候和谁,乘坐飞机在A点出发点到B点。
类图分析,主要从抽象业务的实体、值对象及其关联
注:案例来源于UMlet的Demo。