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: