航空公司管理系统(uml建模)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
旅游机票预订系统
UML分析与设计文档
学号: 09070800010
姓名: 李聪颖
导师: 潘春花
目录
1 问题陈述
2 需求分析
2.1用例图
2.2术语表
2.3活动图
2.3.1输入航线信息活动图
2.4用例规约
2.4.1用例规约Login
2.4.2用例规约用户管理
2.4.3用例规约航线信息管理
2.4.4用例规约客户信息管理
2.4.5用例规约订票信息管理
3 分析与设计
3.1架构分析
3.1.1 界面层
3.1.2管理逻辑层
3.1.3 数据库层
3.2 关键抽象
3.3 用例实现
3.3.1 输入航线信息的用例实现
4 用例分析
4.1分析类
4.2分析类的功能
4.2.1 airline类
4.2.2 plane类
4.2.3 service类
4.2.4 customerType类
4.2.5 customer类
4.2.6 ticket类
4.3 类图及类之间的关联
4.4数据库设计
4.4.1 user_info1 管理用户信息表4.4.2 serviceInfo 舱位等级信息表4.4.3 planeInfo客机信息表格
4.4.4 airlineInfo航线信息表
4.4.5 customerType 客户类型信息表
4.4.6 customerInfo 客户信息表
4.4.7 ticketInfo 订票信息表
4.4.8 数据库结构及各表间的关系
1 问题陈述
本小组项目任务是开发一个旅游订票管理系统,需要管理客户的信息,提供票务管理。
面对各种不同种类的信息,需要合理的数据库结构来保存数据信息以及有效的程序结构支持各种数据操作的执行。
本系统包括系统管理,客户信息管理,订票信息管理等功能。
系统开发的总体任务是实现各种信息的系统化、规范化和自动化。
系统设系统管理角色有:系统管理员,负责监控整个系统的运行,添加和删除一般用户,对数据进行添加,修改,删除,查询。
系统允许舱位信息的输入和修改,包括舱位等级编号、舱位等级名称、提供的各种服务类别,以及备注信息等。
客机信息的输入、修改和查询,包括客机编号、客机型号、购买时间、服役时间、经济舱座位数量、公务舱座位数量、头等舱座位数量以及备注信息等。
航线信息的输入、修改和查询,包括航线编号、出发城市、到达城市、航班日期、出发时间、到达时间、客机编号、经济舱价格、公务舱价格、头等舱价格和备注信息等。
客户
等级信息的输入、修改,包括客户等级编号、客户等级名称、折扣比例和备注信息等。
订票信息的输入、查询和修改,包括订票编号、客户编号、客户姓名、客户类型、折扣比例、航线编号、出发城市、到达城市、出发时间、舱位类型、票价、结算金额和备注信息等。
同时,该系统用 windows开发,实现跨平台操作,使用Mysql数据库,
把所需信息记录到Mysql数据库中,以便系统管理员查看和管理。
2 需求分析
2.1用例图
航空公司管理信息系统的用例图如图2-1所示,包括:系统管理,航线信息管理,客户信息管理,订票信息管理。
图2-1. 航空公司管理系统用例图2.2术语表
2.3活动图
2.4用例规约
2.4.1用例规约Login
主要参与者系统管理员和一般员工
前置条件输入正确的用户名、密码
后置条件登入系统
基本流程1) 输入用户名、密码
2) 验证用户名、密码
3) 如验证正确,登入系统
辅助流程输入用户名或密码不正确:
1) 统显示错误信息
2) 提示用户重新输入
2.4.2用例规约用户管理
主要参与者系统管理员
前置条件系统管理员进入用户管理界面
后置条件查询、添加、删除用户信息成功
基本流程1) 显示所以系统管理员的信息
2) 添加用户
3) 删除用户
4) 系统管理员输入查询的关键字,按下查询按
钮
5) 系统显示所查询得到的信息
6) 系统管理员对得到的信息进行增、删操作
7) 操作成功退出
2.4.3用例规约航线信息管理
主要参与者系统管理员
前置条件系统管理员进入航线信息管理模块
后置条件查询、添加、删除航线信息成功
基本流程1添加舱位等级信息:
1) 设置舱位等级(舱位等级编号、舱位等级名
称)
2) 录入基本信息(是否有礼品、是否有报纸、
是否有饮料、是否有午餐、是否有电影、是
否可以改签、是否可以退票、是否可以打
折、备注信息等)。
3) 添加成功
基本流程2添加客机信息:
1) 对现有客机进行登记(客机编号、客机型
号)
2) 录入基本信息(购买时间、服役时间、经济
舱座位数量、公务舱座位数量、头等舱座位
数量、备注信息等)。
3) 操作成功
基本流程3航线的设置:
1) 前两个流程完成后进行操作;
2) 设置将要飞行的航线;
3) 录入基本信息:航线编号、出发城市、到达
城市、航班日期、出发时间、到达时间、客
机编号、经济舱价格、公务舱价格、头等舱
价格、备注信息等。
4) 操作成功
基本流程41) 对现有信息进行查询;
2) 对录入信息进行修改;
3) 操作成功
辅助流程1添加客户信息:
1)当订票时有新来客户,应同时添加到数据
库的customerType 客户类型信息表中
2.4.4用例规约客户信息管理
主要参与者系统管理员
前置条件一般员工进入客户信息管理模块
后置条件查询、添加、删除客户信息成功
基本流程1添加客户类型信息:
1)设置客户类型(客户类型编号、客户类型
名称)
2)录入基本信息(折扣比例、备注信息
等)。
3)添加成功
基本流程2添加客户信息:
1)客户信息录入
2)录入信息包括:客户编号、客户姓名、客
户性别、身份证号码、联系电话、客户类
型、备注信息等。
3)操作成功
基本流程31)对现有信息进行查询;
2)对录入信息进行修改
3)操作成功
辅助流程1修改航线信息:
1)当开始订票后,如非发生突发的事故,航
线信息不能修改
2.4.5用例规约订票信息管理
主要参与者系统管理员
前置条件添加了航线信息后,一般员工进入订票信息管
理模块
后置条件查询、添加、删除订票信息成功
基本流程1录入订票信息:
1)查看所订航线是否还用座位
2)订票编号、顾客编号、航线编号、舱位类
型、机票价格、结算金额、备注信息等。
1)操作成功
基本流程21)对现有信息进行查询;
2)对录入信息进行修改
3)操作成功
辅助流程11)所订航线已满,出现提示信息;
2)新增顾客,提示先到客户管理增加顾客信
息
辅助流程2修改订票信息:
1)在飞机起飞前2个小时,办理对折退票;
对舱位进行升等;
2)在其他航线有空位的情况下,可以更改航
线;
3)该航线出现晚点或停飞,可以办理全额退
票;
3 分析与设计
3.1架构分析
本系统使用C/S架构,以三层架构组成,由上到下分别是:界面层、管理流程层、数据库层。
3.1.1 界面层
界面层向系统管理员和一般员工展示系统操作界面,它集成的界面有:系统登陆界面、主操作界面、系统用户管理界面、舱位信息管理界面、客机信息管理界面、航线信息管理界面、客户类型信息管理界面、客户信息管理界面、订票信息管理界面等。
3.1.2管理逻辑层
业务流程中与用户提交信息相关的服务在这一层中被定义。
界面层的用户信息通过业务逻辑层访问数据库,对所指定的业务进行查询、增加、修改和删除等操作。
3.1.3 数据库层
数据库层由业务逻辑层访问,并返回结果到界面层。
3.2 关键抽象
本系统的关键抽象包括客户类、管理员类、提交信息类、界面类和数据库类,如图3-2所示。
3.3 用例实现
3.3.1 输入航线信息的用例实现
输入航线信息的用例中包括用户类、航线类、客机类、客机类,用顺序图表示出来,如图3-
3所示:
对应的协作图如图所示:
输入航线信息的用例实现协作图
4 用例分析
4.1分析类
分析类包括:
airline类、plane类、service类、
customerType类、customer类、ticket类
4.2分析类的功能
4.2.1 airline类
职能:pointplane();addairline();updateairline();deleteairline()。
属性:airlineID;departCity;arrivalCity;departDate; departTime;
arrivalTime。
4.2.2 plane类
职能:setservice();addplane();updateplane();deleteplane()。
属性:planeID;planeType;buyDate;serveDate; planeMemo。
4.2.3 service类
职能:addservice();updateservice ();deleteservice ()。
属性:serviceID;serviceName;
hasPresent; hasNewpaper; hasDrink; hasMovie;hasChange;hasDiscount;hasFood;serviceMemo。
4.2.4 customerType类
职能::setdicount();addcustomerType();updatecustomerType ();deletecustomerType ()。
属性:ctypeID;ctypeName;discount;ctypeMemo。
4.2.5 customer类
职能:setcustomerType();addCustomer();updateCustomer();deleteCustomer()。
属性:customerID;customerName;customerSex;customerNo;customerPhone;customerMemo。
4.2.6 ticket类
职能:退票();买票();setairline();setservice()。
属性:ticketID;price;
4.4数据库设计
4.4.1 user_info1 管理用户信息表
列名数据类型可否为空说明
user_ID char
NOT
NULL
用户编号
User_PWD char
NOT
NULL
用户密码
user_Des varchar NULL备注
4.4.2 serviceInfo 舱位等级信息表
列名数据类型可否为空说明
serviceNO char
NOT
NULL
舱位等级编号
serviceName nvarchar NULL舱位等级名称noFood char NULL是否有午餐canChange char NULL是否可以改签canCancel char NULL是否可以退票canDiscount char NULL是否可以打折serviceMemo text NULL备注信息
4.4.3 planeInfo客机信息表格
列名数据类型可否为空说明
planeNO char
NOT
NULL
客机编号
planeType char NULL客机型号buyDate datetime NULL购买日期serveDate datetime NULL服役日期isCommon nvarchar NULL经济舱座位数量isCommercial nvarchar NULL公务舱座位数量
isFirst nvarchar NULL头等舱座位数量planeMemo text NULL备注信息
4.4.4 airlineInfo航线信息表
列名数据类型可否为空说明airlineNO char NOT NULL航线编号departCity nvarchar NULL出发城市arrivalCity nvarchar NULL到达城市departDate char NULL航班日期departTime char NULL出发时间arrivalTime char NULL到达时间planeNO char NULL客机编号commonPrice numeric NULL经济舱价格commercialPrice numeric NULL公务舱价格firstPrice numeric NULL头等舱价格airlineMemo text NULL备注信息4.4.5 customerType 客户类型信息表
列名数据类型可否为空说明
ctypeNO char
NOT
NULL
客户类型编号
ctypeName char NULL客户类型名称discount numeric NULL折扣比例ctypeMemo text NULL备注
4.4.6 customerInfo 客户信息表
列名数据类型可否为空说明
customerNO char
NOT
NULL
客户编号
customerName char NULL客户姓名customerSex char NULL客户性别customerID char NULL身份证号码customerTele char NULL客户联系电话customerType char NULL客户类型customerMemo text NULL备注
4.4.7 ticketInfo 订票信息表
列名数据类型可否为空说明
ticketNO char
NOT
NULL
订票编号
customerNO char NULL客户编号airlineNO char NULL航线编号serviceType char NULL舱位类型ticketPrice numeric NULL机票价格ticketSum numeric NULL结算金额customerMemo text NULL备注
4.4.8 数据库结构及各表间的关系
数据库结构及各表间的关系如图4-2:。