uml飞机订票系统建模
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
面向对象分析与设计实验
机票预订管理系统
学号: **********
姓名:***
班级:计科141
指导老师:***
2016年1月2日
目录
1 系统概述 (3)
1.1 背景 (3)
1.2 主要组成及功能 (3)
2. 系统建模 (4)
2.1 创建系统用例模型 (4)
2.1.1参与者分析 (4)
2.1.2用户特点及一般约束 (5)
2.2 系统用例分析 (5)
2.2.1乘客用例图 (6)
2.2.2乘务管理员用例图 (6)
2.2.3系统维护员用例图 (7)
3. 创建系统静态模型 (8)
3.1 类图 (9)
4. 创建系统动态模型 (9)
4.1 时序图 (10)
4.1.1客户预订时序图 (10)
4.1.2乘务管理员航线信息录入时序图 (11)
4.1.3乘客账户管理时序图 (11)
4.2协作图 (12)
4.2.1客户预订协作图 (13)
4.2.2乘客账户管理协作图 (14)
4.2.3乘务管理员航线信息录入协作图 (15)
4.3 状态图 (15)
4.3.1退订状态图 (15)
4.3.2公共信息服务状态图 (16)
5. 创建系统部署模型 (17)
6. 小结 (18)
6.1设计总结 (18)
6.2改善 (18)
6.3小组分工说明: (19)
1 系统概述
1.1 背景
当今世界,以信息技术为主要标志的科技进步日新月异,高科技成果向现实生产力的转化越来越快。
纵观全球经济发展,信息技术和信息产业已经成为经济增长的主要推动力之一,正在改变着传统的生产和经营方式以至生活方式,发达国家经过产业结构的升级和经济结构的转型已进入信息经济阶段。
信息资源已经成为国民经济和社会发展的战略资源,信息化水平也已成为现代水平和综合国力的重要标志。
党和国家已将国民经济和社会信息化放在优先发展位置,体现了先进生产力的客观要求,是一项重要的战略决策。
这是民航加快发展的机遇,更是民航信息化的难得机遇。
随着知识经济的到来,人类已经逐步进入信息化社会,信息增长的速度越来越快,人们希望利用先进的管理理论方法手段来得到并处理越来越多的信息,以提高工作效率和管理水平。
由于信息资源对人们生活的重要性,不断提高信息的收集,传输,加以利用等活动,日益成为人们社会生活的重要组成部分。
网上机票预订管理系统的产生和发展正好满足人们的这种需求。
1.2 主要组成及功能
1、新用户注册,新用户可以注册,注册时输入用户名可以查询用户可不可用,可用就可以
注册,注册时可以判断用户输入的密码和验证密码是否相同,相同才给以注册,如果满意可以点注册,注册成功后用户可以选择不用在回到登陆界面,可以直接陆到用户主界面,以后就可以用这个用户登录了,如果不满意,点取消,所有信息清空,重新输入。
2、验证登陆名密码,正确进入主菜单,根据登录时所选的登录方式(客户、管理员)的不
同分别对用户设定不同的访问权限(如果是输入的客户用户名和密码正确,选择以客户方式登陆则主界面里面的管理员界面不能用,如果输入的是管理员的相应用户密码正确,以管理员的方式登陆则管理员界面可用)不正确则清空登录框,最多可以输入三次,三次不正确系统会自动关闭。
3、主窗体的用户信息界面,用户点击个人查询按钮,可以把自己的个人信息显示到界面上,
还可以对自己的信息进行相应的修改(用户编号和用户名不能修改),还可以点击我的机票查询,查询该用户的订票记录。
基本信息查询及设置。
显示当前登录用户的个人基本信息,姓名,住址,邮箱等信息。
除此之外,可以更改设置自己的密码。
4、我的航班界面。
你可以点击你想查询的有关机票的信息的按钮(舱位信息查询,客机信
息查询,航线查询,客户类型信息查询)获得相关信息的表,根据表的内容,你可以在下面的下拉框中选择你要定的票信息,点确定后在下面会显示你的机票的相关内容,如果满意可以点击订票,把相关信息添加到机票数据库表中,如果不满意,可以点重置,所有信息清空,再重新选择。
5、可以选定已定航班的订票信息进行转让信息发布。
相关的转让二手票的业务信息发布到
系统的公共信息服务页面上。
查询公共信息服务。
打开相应的页面,查询感兴趣的信息。
包括系统发布的机票打折信息,以及二手票信息。
6、退票功能。
用户可以根据用户信息表中的我的机票信息查询,找出机票号,在输入到机
票号查询里,点击查询获得你的机票信息以及价格显示,点击退票则在数据库机票信息表中删除本条信息。
7、我的账户信息。
由于订购机票需要进行支付票费功能,开设网上账户便于进行票务交易。
开设我的账户,可以相关连自己的网上银行,查询账户余额,进行缴费,以及转账等业务。
8、管理员界面的管理员添加界面能对管理员信息进行查询、添加、删除和修改,包括用户
名、登陆密码和联系方式。
管理员界面的舱位信息的查询、添加、删除和修改,包括舱位等级编号、舱位等级名称、提供的各种服务类别,以及备注信息等。
9、管理员界面的客机信息界面对客机信息的添加、修改、删除和查询,包括客机编号、客
机型号、购买时间、服役时间、经济舱座位数量、公务舱座位数量、头等舱座位数量以及备注信息等。
10、管理员界面的航线信息界面对航线信息的添加、修改、删除和查询,包括航线编号、
出发城市、到达城市、航班日期、出发时间、到达时间、客机编号、经济舱价格、公务舱价格、头等舱价格和备注信息等。
11、客户等级信息的的添加、修改、删除和查询,包括客户等级编号、客户等级名称、
折扣比例和备注信息等。
12、管理员界面的用户信息查询,能查询所有的已注册的用户信息。
13、管理员界面订票信息界面,可以查询所有的已订的机票的信息。
2. 系统建模
2.1 创建系统用例模型
由参与者(Actor)、用例(Use Case)以及它们之间的关系构成的用于描述系统功能的动态视图称为用例图。
用例图(User Case)是被称为参与者的外部用户所能观察到的系统功能的模型图,呈现了一些参与者和一些用例,以及它们之间的关系,主要用于对系统、子系统或类的功能行为进行建模。
用例图展示了用例之间以及同用例参与者之间是怎样相互联系的。
用例图用于对系统、子系统或类的行为进行可视化,使用户能够理解如何使用这些元素,并使开发者能够实现这些元素。
将每个系统中的用户分出工作状态的属性和工作内容,方便建模,防止功能重复和多余的类。
用例图定义了系统的功能需求,它是从系统的外部看系统功能,并不描述系统内部对功能的具体实现。
由以上相关用例图的概念以及作用,根据系统需求分析得到的系统功能抽象出系统的用例图。
主要是从参与者的角度进行的分能划分。
2.1.1参与者分析
创建系统用例模型的第一步就是确定系统参与者。
该系统主要分有服务者和管理者。
服务者主要是乘客,管理者分有乘务管理员和系统维护员。
其中的乘客可按照服务的等级分为普通用户和VIP用户。
VIP用户会比普通用户在订购机票上享受更多的优惠。
根据以上分析,创建系统参与者,如图所示:
普通乘客
VIP
乘客
乘务管理员
系统维护员
2.1.2用户特点及一般约束
1、管理员和用户的登陆
要求合法的管理员以及用户才能登陆体统,防止系统被无关人员动用,使用字符串匹配对用户名和密码进行判断。
管理员和用户的登录对相应的操作权限也不一样,如果是用户登录,管理员的窗口属性为不可用。
管理员有航线信息管理,航班信息管理,机票信息管理,客户信息管理,客户订票信息管理,公共服务信息管理。
乘客主要有个人基本信息管理,我的航班信息管理,我的账户信息管理。
2、管理员的日常操作
管理员可以对航线,航班,机票进行查询、修改和删除操作,可以对客户信息和订票信息只有查询操作。
3、用户的的日常操作
用户可以进行注册然后登陆系统,可以个人基本信息及我的航班我的账户基本信息,可以对自己的信息进行修改,可以定票(按照航班号进行预订机票,显示所订机票的信息和价格,进入支付系统付账,并再次要求客户确认,确认无误后订票成功),可以退票(在特殊情况下(如天气不适合飞机起降,飞机延误超过30 分钟)等给予全额退票,如果是个人原因只能退50%),对退票后的机票要在未售出机票中重新体现。
4、系统维护员的日常操作
系统维护员有特殊的权限。
进行登录之后,主要是负责系统的维护工作。
主要分为两大块:系统的应用维护以及后台数据库维护,保证该系统顺利有效地运行。
应用维护主要是系统界面风格或者功能的升级,以及系统运行中出现的技术问题。
数据库维护需要保证数据库的正常运行,能够有效的为前台系统提供服务。
主要有系统数据库备份及完善等操作。
2.2 系统用例分析
根据系统中各个参与者的职责,分别建立各层用例图。
2.2.1乘客用例图
需要该系统的机票预定系统进行机票预定服务的客户均为乘客,乘客是一个抽象的概念,他包含的行为是所有乘客的共同行为。
乘客在本系统中通过合法的身份验证能够修改自身的信息和密码。
根据以上分析,建立用例图如下所示:
转账
2.2.2乘务管理员用例图
乘务管理员是以管理者的身份出现。
所涉及的业务规模较大需要更稳定的系统支持。
系统模块中乘务管理模块是乘务管理员总体功能的体现。
乘务管理的主要功能是对航空业务的管理,包括航空中航线,航班,机票信息的增删查改,以及航空公司公共服务信息的管理。
由以上分析绘制乘务管理用例图如下:
乘客管理
2.2.3系统维护员用例图
该系统中将系统维护模块划为一个单独的模块。
系统参与主体为系统维护员,主要负责系统的维护工作,偏向于更加技术的工作。
良好的系统维护理由系统的流畅运行,系统更加稳定,安全性能优秀,可扩展性良好。
系统维护员工作的两大功能模块:系统应用维护,数据库维护
据上述分析绘制系统管理员的用例图:
改善
3. 创建系统静态模型
在获得系统需求的用例模型,通过考察系统对象的各种属性创建系统静态模型。
首先,确定系统参与者的属性。
系统的主要参与者有:,乘客,乘务管理员。
其中乘客通过系统操作个人的客户航班信息和个人的账户信息。
乘客的属性:姓名,性别,身份证号,地址,电话,VIP。
个人的航班客户信息:出发地,目的地,出发时间,到达时间,票价
个人的账户信息属性:账户号,当前交易额,当前余额。
乘务管理员里的主要任务是维护系统,管理航线计划,机票,财务。
乘务管理员的属性:姓名,账号,密码
航线信息的属性:航班,距离,出发地,目的地,出发时间,到达时间,总的座位数,当前所剩的票数。
系统维护的属性:数据库,系统应用程序
财务信息的属性:账户号,交易类型,交易额,当前余额。
3.1 类图
4. 创建系统动态模型
根据系统的用例模型,通过相互作用的一组对象为中心的序列图和以独立对象为中心的活动图来考察系统对象的行为。
构建出系统的静态模型之后,对于系统实现的关键模块进行详细的设计,以动态的模型构架进行建模。
4.1 时序图
在网上机票预定系统中,通过上述用例分析,具体产生以下序列图:
4.1.1客户预订时序图
客户预定功能是网上机票预定系统的核心部分,乘客通过该部分实现网上预定机票的功能,便利乘客的出行。
乘客的操作均要涉及到后台数据库,用到数据库的增删查改操作。
相对应的有系统支持的各种服务功能。
预定功能需要对航班信息数据库和乘客账户数据库里传递的数据,传到乘客客户端并显示出来。
操作说明:
1、按要求查询乘客输入查询条件,系统按照条件将结果返回给页面。
2、选中浏览详细信息选中返回结果,浏览航班的具体信息,以便决定是否预定。
3、预定确认对乘客预定进行提示,确认乘客的预定。
4、支付确认据机票的价格需要乘客支付一定的费用。
确认支付后账户余额进行扣除。
4.1.2乘务管理员航线信息录入时序图
乘务管理员也是系统的一个关键参与者,负责航空信息的管理维护工作。
这里选择其中的航线录入操作绘制了其的详细时序图。
操作说明:
1、打开信息浏览数据库中的航线信息。
2、增加航线点击录入按钮,系统返回录入界面。
在该界面上输入录入信息。
3、确认确认按钮后台对应一系列数据库操作。
包括对录入信息的完整性检查等。
4、返回成功确认信息增加成功
4.1.3乘客账户管理时序图
乘客的另外一个重要的功能操作,对乘客的账户进行管理。
操作说明:
1、账户信息显示显示乘客账户的基本信息
2、余额查询显示乘客账户余额
3、充值充值的过程也需要对数据库的更改过程。
选择充值方式、充值数目完成账户
的充值。
4.2协作图
协作图概述:
“顺序图”与“协作图”表述的是相似的消息。
协作图(Collaboration Diagram /Communication Diagram,也叫合作图)是一种交互图(interaction diagram),强调的是发送和接收消息的对象之间的组织结构。
一个协作图显示了一系列的对象和在这些对象之间的联系以及对象间发送和接收的消息。
对象通常是命名或匿名的类的实例,也可以代表其他事物的实例,例如协作、组件和节点。
使用协作图来说明系统的动态情况。
协作图(Collaboration Diagram /Communication Diagram)显示某组对象如何为了由一个用
例描述的一个系统事件而与另一组对象进行协作的交互图。
使用协作图可以显示对象角色之间的关系,如为实现某个操作或达到某种结果而在对象间交换的一组消息。
如果需要强调时间和序列,最好选择序列图;如果需要强调上下文相关,最好选择协作图。
协作图用于显示对象之间如何进行交互以执行特定用例或用例中特定部分的行为。
设计员使用协作图和序列图确定并阐明对象的角色,这些对象执行用例的特定事件流。
它们是主要的信息来源,用于确定类的职责和接口。
与序列图(Sequence Diagram)不同,协作图显示了对象之间的关系。
序列图(Sequence Diagram)和协作图表述的是相似的信息,但表述的方式却不同。
协作图显示对象之间的关系,它更有利于理解对给定对象的所有影响,也更适合过程设计。
一下是上述序列图对应的协作图,以不同的视角表现了操作信息。
4.2.1客户预订协作图
3: 选中浏览详细信息
4: 点击预订7:
4.2.2乘客账户管理协作图
7: 相应数据返回
14: 成功
4.2.3乘务管理员航线信息录入协作图
1: 打开航线信息
3: 增加航线
4.3 状态图
状态图概述:
状态图(Statechart Diagram)是描述一个实体基于事件反应的动态行为,显示了该实体如何根据当前所处的状态对不同的事件做出反应的。
通常我们创建一个UML状态图是为了以下的研究目的:研究类、角色、子系统、或组件的复杂行为。
状态图用于显示状态机(它指定对象所在的状态序列)、使对象达到这些状态的事件和条件、以及达到这些状态时所发生的操作。
关于状态图选取了另外的系统相关模块进行分析。
4.3.1退订状态图
退订操作与预定操作类似,只是细节步骤不是很一样。
状态说明:
1、我的航班显示显示预定过的航班信息,退订机票需要从已定的航班信息中选择。
2、选定航班选定将要退订的航班。
、
3、航班删除将该航班从我的航班中删除,并且更新航空信息数据库。
4、票价返还将退订后返还的票价返回客户账户。
以下按照分析所得的退订操作状态绘制了退订状态图。
4.3.2公共信息服务状态图
公共服务模块是该系统的一个特色功能,便于乘客之间,航空公司之间的信息交流。
状态说明:
1、服务信息页面显示公共服务信息,主要包括乘客自己发布的机票转让信息和乘务管理者公布的航空服务信息。
2、打折信息打折的事情是乘客比较关注的事情,可以将其单独列为一个模块。
3、信息显示显示乘客感兴趣的信息。
5. 创建系统部署模型
部署图概要
部署图(deployment diagram,配置图)是用来显示系统中软件和硬件的物理架构。
从部署图中,您可以了解到软件和硬件组件之间的物理关系以及处理节点的组件分布情况。
使用部署图可以显示运行时系统的结构,同时还传达构成应用程序的硬件和软件元素的配置和部署方式。
部署图说明
整个系统的三大模块都与数据库操作直接相关。
6. 小结
6.1设计总结
本次设计主要完成了一下任务:
1 根据选择的题目,搜集所完成机票预订管理系统的相关资料,用活动图表示机票预订管理系统的业务流程;
2 根据UML系统分析设计的第一步,完成系统的需求捕获,在Rational Rose中用用例模型表示出来;
3 根据已分析出来的用例模型,对其中核心的用例进行分析,得到分析模型(包括用例分析(类图)、顺序图等);
4 根据上一步骤的分析模型,进一步细化得出设计模型和实施模型,设计模型主要包括设计类(类图)、类的状态图,实施模型包括了构件图和配置图;
本次课程设计熟悉了简单系统的设计流程,熟悉了系统的建模流程,对简单的系统建模有了初步的了解。
6.2改善
本系统是一个小型的网上机票预定系统,选择了比需要用到的功能进行了设计,搭建了整体的模块。
在现在用户需求越来越多样化的今天,系统需要进一步的完善才能紧跟市场,
实现用户喜欢的系统。
从以下几点来看系统的有待完善之处:
1、界面人性化多彩的界面是一个优秀系统不可或缺的部分。
在界面友好性,视觉效果方面可以设计出本系统的特色,从而作为优秀系统的点睛之笔。
2、功能扩展系统的关键在于其支持的功能,可以进一步的进行客户的需求调查,提出更加完美的功能模块。
3、数据库完善数据库是支撑整个系统的支架。
优秀的数据库设计对系统的运行稳定、服务良好不言而喻。
在新赠的用户需求提取出的功能需求模式上抽象出更加完善的数据库系统。
6.3小组分工说明:。