2024年4月3日发(作者:)
旅游机票预订系统
UML分析与设计文档
学号:
姓名: 李聪颖
导师: 潘春花
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
系统管理员
系统管理员进入航线信息管理模块
查询、添加、删除航线信息成功
添加舱位等级信息:
基本流程2
基本流程3
基本流程4
辅助流程1
1) 设置舱位等级(舱位等级编号、舱位等级名
称)
2) 录入基本信息(是否有礼品、是否有报纸、
是否有饮料、是否有午餐、是否有电影、是
否可以改签、是否可以退票、是否可以打
折、备注信息等)。
3) 添加成功
添加客机信息:
1) 对现有客机进行登记(客机编号、客机型
号)
2) 录入基本信息(购买时间、服役时间、经济
舱座位数量、公务舱座位数量、头等舱座位
数量、备注信息等)。
3) 操作成功
航线的设置:
1) 前两个流程完成后进行操作;
2) 设置将要飞行的航线;
3) 录入基本信息:航线编号、出发城市、到达
城市、航班日期、出发时间、到达时间、客
机编号、经济舱价格、公务舱价格、头等舱
价格、备注信息等。
4) 操作成功
1) 对现有信息进行查询;
2) 对录入信息进行修改;
3) 操作成功
添加客户信息:
1)当订票时有新来客户,应同时添加到数据
库的customerType 客户类型信息表中
2.4.4用例规约 客户信息管理
主要参与者
前置条件
后置条件
基本流程1
基本流程2
基本流程3
辅助流程1
系统管理员
一般员工进入客户信息管理模块
查询、添加、删除客户信息成功
添加客户类型信息:
1) 设置客户类型(客户类型编号、客户类型
名称)
2) 录入基本信息(折扣比例、备注信息
等)。
3) 添加成功
添加客户信息:
1) 客户信息录入
2) 录入信息包括:客户编号、客户姓名、客
户性别、身份证号码、联系电话、客户类
型、备注信息等。
3) 操作成功
1) 对现有信息进行查询;
2) 对录入信息进行修改
3) 操作成功
修改航线信息:
1)当开始订票后,如非发生突发的事故,航
线信息不能修改
2.4.5用例规约 订票信息管理
主要参与者
前置条件
后置条件
基本流程1
系统管理员
添加了航线信息后,一般员工进入订票信息管
理模块
查询、添加、删除订票信息成功
录入订票信息:
1)查看所订航线是否还用座位
2)订票编号、顾客编号、航线编号、舱位类
基本流程2
辅助流程1
辅助流程2
型、机票价格、结算金额、备注信息等。
1) 操作成功
1) 对现有信息进行查询;
2) 对录入信息进行修改
3) 操作成功
1) 所订航线已满,出现提示信息;
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
user_Des
char
varchar
NOT
NULL
NULL
用户密码
备注
4.4.2 serviceInfo 舱位等级信息表
列 名
serviceNO
serviceName
noFood
canChange
canCancel
canDiscount
serviceMemo
数据类型
char
nvarchar
char
char
char
char
text
可否为空
NOT
NULL
NULL
NULL
NULL
NULL
NULL
NULL
说 明
舱位等级编号
舱位等级名称
是否有午餐
是否可以改签
是否可以退票
是否可以打折
备注信息
4.4.3 planeInfo客机信息表格
列 名
planeNO
planeType
buyDate
serveDate
isCommon
isCommercial
数据类型
char
char
datetime
datetime
nvarchar
nvarchar
可否为空
NOT
NULL
NULL
NULL
NULL
NULL
NULL
说 明
客机编号
客机型号
购买日期
服役日期
经济舱座位数量
公务舱座位数量
isFirst
planeMemo
nvarchar
text
NULL
NULL
头等舱座位数量
备注信息
4.4.4 airlineInfo航线信息表
列 名
airlineNO
departCity
arrivalCity
departDate
departTime
arrivalTime
planeNO
commonPrice
commercialPrice
firstPrice
airlineMemo
数据类型
char
nvarchar
nvarchar
char
char
char
char
numeric
numeric
numeric
text
可否为空
NOT NULL
NULL
NULL
NULL
NULL
NULL
NULL
NULL
NULL
NULL
NULL
说 明
航线编号
出发城市
到达城市
航班日期
出发时间
到达时间
客机编号
经济舱价格
公务舱价格
头等舱价格
备注信息
4.4.5 customerType 客户类型信息表
列 名
ctypeNO
ctypeName
discount
ctypeMemo
数据类型
char
char
numeric
text
可否为空
NOT
NULL
NULL
NULL
NULL
说 明
客户类型编号
客户类型名称
折扣比例
备注
4.4.6 customerInfo 客户信息表
列 名
customerNO
customerName
customerSex
customerID
customerTele
customerType
customerMemo
数据类型
char
char
char
char
char
char
text
可否为空
NOT
NULL
NULL
NULL
NULL
NULL
NULL
NULL
说 明
客户编号
客户姓名
客户性别
身份证号码
客户联系电话
客户类型
备注
4.4.7 ticketInfo 订票信息表
列 名
ticketNO
customerNO
airlineNO
serviceType
ticketPrice
ticketSum
customerMemo
数据类型
char
char
char
char
numeric
numeric
text
可否为空
NOT
NULL
NULL
NULL
NULL
NULL
NULL
NULL
说 明
订票编号
客户编号
航线编号
舱位类型
机票价格
结算金额
备注
4.4.8 数据库结构及各表间的关系
数据库结构及各表间的关系如图4-2:
发布评论