航空订票系统详细设计 联系客服

发布时间 : 星期四 文章航空订票系统详细设计更新完毕开始阅读44fc25f40622192e453610661ed9ad51f11d54ef

详细设计报告

一、引言

1.1 编写目的:

本阶段在系统的需求分析的基础上,对航空订票系统做详细设计。主要解决了实现该系统程序模块具体设计问题。包括确定算法,数据结构,模块接口的使用,数据库的动态操作以及界面设计等。在以下的概要设计报告中将对在本阶段中对系统所做的所有详细设计进行详细的说明。

在下一阶段的编码过程中,程序设计员可参考此详细设计报告,在详细设计对机票预定系统所做的算法设计,数据结构以及数据库动态操作的基础上,对系统进行编码。

1.2 项目背景:

开发软件名称:航空订票系统。 用户:航空公司

运行环境:宿舍电脑。

开发平台:MyEclipse 7.0 PostgreSql数据库。 系统架构:该系统采用java+jsp框架

1.3 定义:

查询:对数据库的操作的一种,用于搜索数据信息。

插入:对数据库的操作的一种,用于将数据存入数据库中。 更新:对数据库的操作的一种,用于更改数据库中的数据信息。 PostgreSql: 系统服务器所使用的数据库管理系统(DBMS)。 SQL: 一种用于访问查询数据库的语言

事务流:数据进入模块后可能有多种路径进行处理。 主键:数据库表中的关键域。值互不相同。 外部主键:数据库表中与其他表主键关联的域。 1.4 参考资料:

需求分析说明书 软件开发小组

软件工程 齐治昌 谭庆平 宁洪等 高等教育出版社 实用软件工程 郑人杰等,清华大学出版社。

二、总体设计 2.1 需求概述

航空订票系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现航空公司的机票销售的自动化的计算机系统,为企业的决策层提供准确、精细、迅速的机票销售信息。具体功能为用户把预定机票的旅客信息(姓名、性别、身份证号码(护照号码)、乘坐时间、出行始发地和目的地等)输入到系统中,系统为旅客安排航班。当旅客交付了预订金后,系统打印出取票通知和帐单给旅客,旅客在飞机起飞前一天凭取票通知和帐单交款取票,系统核对无误即打印出机票给旅客。此外航空公司为随时掌握各个航班飞机的乘载情况,需要定期进行查询统计,以便适当调整。同时还需完成旅客延误了取票时间的处理,航班取消后的处理,旅客临时更改航班的处理等。

根据可行性研究的结果和客户的要求,分析现有情况及问题,采用B/S结构,将机票预定系统划主要就是服务器端子系统。

2.2 软件结构:

航空订票系统 数据输入 数据输入 数据输出 数据判断 数据处理、查询 判断查询 返回账单等 确定错误原因 返回机票信息 页面信息录入 PostgreSql 打印账单等 数据库操作 用户登陆或注册 显示错误原因 打印机票 图1软件结构图

三、程序描述

3.1 各功能详细描述:

本系统主要用于机票预订,所以提供了以下几个子功能:机票预订,取票通知,查询航班,查询机票,退票,打印机票,各航班的营运统计,以及后台方面的航班的添加,取消航班,机票的生成,以及航班的查询等后台功能。

1、机票预订功能:用户和机场管理员有权力进行该项功能。首先通过查询得到旅客所需的航班,确定该航班还有没有被预订的座位,然后选择座位的等级,填写旅客的详细信息之后就可进行网上预订机票。

2、取票通知:该项功能只有用户和机场管理员有权力进行操作,在机票预订功能成功完成之后,系统会自动给浏览器端发送一条取票信息以及所需缴纳的费用。旅行社可以利用特定设备将该取票信息打印出来,这就是取票通知。

3、查询航班:可以通过输入出发地,目的地,日期和时间选定自己航班。

4、查询机票:该项功能用户、游客、管理员都可以操作,可以通过自己的身份证号以及取票通知上的机票号查询自己的机票信息。

5、退订机票:该功能只有用户和机场管理员有权力操作,利用身份证号和对应的机票号就可以查询到机票信息,然后就可以退订机票。

6、打印机票:该功能只有机场管理员有权力操作,只有当管理员确认旅客已经付款后才予以打印机票,可以通过身份证号和对应的取票信息上的机票号查询机票信息,然后服务器返回机票信息,管理员就可以打印该机票信息,交给旅客。

7、各航班的营运统计:该项功能只有机场管理员才能操作,他可以通过输入年份和月份查询当月个航班的营运情况,以便机场能够及时掌握航班动态。

8、后台的航班添加:该项功能只有机场管理员才能操作,他通过提供航班的具体信息添加航班信息。

9、后台的取消航班:该项功能只有机场管理员才能操作,先通过航班号和航班日期查询到航班信息后,取消航班就可以将该航班从数据库中删除。

10、后台的航班查询:该项功能只有机场管理员才能操作,通过航班号和航班日期查询到航班信息。

11、后台的机票生成:该项功能只有机场管理员才能操作,可以通过该项功能给刚添加的航班生成对应的飞机票号纪录。 3.2 主要的系统功能模块如下:

1、用户模块:用户用例图如图2所示

(1)用户登陆模块ConsumerDAO.getConsumer() (2)用户注册模块ConsumerDAO.register()

(3)查询航班模块ConsumerDAO.getFlightByInformation() (4)订票模块ConsumerDAO.orderTicket() (5)修改密码模块ConsumerDAO.modifyPassword() (6)付款模块ConsumerDAO.paying() (7)退票模块ConsumerDAO.returnTicket() 用户注册或登录 普通用户 删除已定机票 预订飞机票 搜索飞机票 图2 请用户确认 生成交易信息并 付款 2、管理员模块:管理员用例图如图3所示 (1)管理员登陆模块ManagerDAO.getManager() (2)管理员修改密码模块ManagerDAO.modifyPassword() (3)删除用户ManagerDAO.deleteConsumer() (4)添加新管理员ManagerDAO.addManager() (5)删除管理员模块ManagerDAO.deleteManager() (6)发布新航班模块ManagerDAO.addNewFlight() (7)删除航班模块ManagerDAO.deleteFlight()

(8)根据信息查看航班信息模块ConsumerDAO.getFlightByInformation()

管理员登录 管理员修改密码 删除用户 查看航班信息 删除管理员 增加新管理员 管理员 发布新航班 删除航班 图3 3、创新点——通过关键字从其他网站找到一些信息推荐给用户模块:用例如图4所示。 推荐信息模块InformationDAO.getInformationByKeyWord()

交通状况 附近旅馆信息 附近餐馆信息 信息采集器

3.3数据库设计:

普通用户(Consumer) 是默否字段类型 认字段含义 为值 空 VARCHAR2(10) VARCHAR2(20) VARCHAR2(20) VARCHAR2(1) VARCHAR2(20) VARCHAR2(20) VARCHAR2(20) N N N N Y Y N 用户编号 用户名称 用户密码 用户性别 用户已订票航班 用户已定机票的座位号 用户的身份证号或护照号 字段名 注释 consumerId consumerName consumerPassword consumerGender consumerBookingFligt consumerBookingSeat consumerIDCardOrPassportNo 用以标示不同用户。 用户自己取的名字有利于用户记忆,可以用来登录等。 用于确定用户身份。 用于储存用户已订票的航班。 用于储存用户已订票航班的座位号。 用户取票的凭证(身份证号或护照号)