软件工程
机票预订系统
——详细设计报告
一、引言
1.1 编写目的:
在本机票预定系统项目的前一阶段,也就是概要设计阶段中,已经将系统用户对本系统的子模块功能做了详细的阐述,这些模块功能具体设计将在本报告中详尽得以叙述及阐明。
本阶段已在系统的概要设计的基础上,对机票预定系统做详细设计。主要解决了实现该系统程序模块具体设计问题。包括确定算法,数据结构,模块接口的使用,数据库的动态操作以及界面设计等。在以下的概要设计报告中将对在本阶段中对系统所做的所有详细设计进行详细的说明。
在下一阶段的编码过程中,程序设计员可参考此详细设计报告,在详细设计对机票预定系统所做的算法设计,数据结构以及数据库动态操作的基础上,对系统进行编码。在以后的软件测试以及软件维护阶段也可参考此说明书,以便于了解在详细设计过程中所完成的各模块算法设计,或在修改时找出在本阶段设计的不足或错误。
1.2 项目背景:
本项目由我们小组负责开发。
1.3 定义:
查询:对数据库的操作的一种,用于搜索数据信息。
插入:对数据库的操作的一种,用于将数据存入数据库中。
更新:对数据库的操作的一种,用于更改数据库中的数据信息。
软件结构图:反映软件系统的功能模块之间的关系的数据图。
1.4 参考资料:
1.机票预定系统需求分析报告 软件开发小组
2.机票预定系统概要分析报告 软件开发小组 2009/12 2009/12
二、总体设计
2.1 需求概述
机票预定系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现航空公司的机票销售的自动化的计算机系统,为企业的决策层提供准确、精细、迅速的机票销售信息。具体功能为各个旅行社把预定机票的旅客信息(姓名、性别、工作单位、身份证号码(护照号码)、旅行时间、旅行始发地和目的地,航班舱位要求等)输入到系统中,系统为旅客安排航班。当旅客交付了预订金后,系统打印出取票通知和账单给旅客,旅客在飞机起飞前一天凭取票通知和账单交款取票,系统核对无误即打印出机票给旅客。此外航空公司为随时掌握各个航班飞机的乘载情况,需要定期进行查询统
软件工程
计,以便适当调整。同时还需完成旅客延误了取票时间的处理,航班取消后的处理,旅客临时更改航班的处理等。
根据可行性研究的结果和客户的要求,分析现有情况及问题,采用B/S结构,将机票预定系统划主要就是服务器端子系统。
2.2 软件结构:
软件结构图
3 程序描述
3.1 各功能详细描述:
本系统主要用于机票预订,所以提供了以下几个子功能:机票预订,取票通知,查询航班,查询机票,退票,打印机票,各航班的营运统计,以及后台方面的航班的添加,取消航班,机票的生成,以及航班的查询等后台功能。
1、机票预订功能:旅行社和机场管理员有权力进行该项功能。首先通过查询得到旅客所需的航班,确定该航班还有没有被预订的座位,然后选择座位的等级,填写旅客的详细信息之后就可进行网上预订机票。
2、取票通知:该项功能只有旅行社和机场管理员有权力进行操作,在机票预订功能成功完成之后,系统会自动给浏览器端发送一条取票信息以及所需缴纳的费用。旅行社可以利用特定设备将该取票信息打印出来,这就是取票通知。
3、查询航班:可以通过输入出发地,目的地,日期和时间选定自己航班。
4、查询机票:该项功能三方都可以操作,可以通过自己的身份证号以及取票通知上的机票号查询自己的机票信息。
5、退订机票:该功能只有旅行社和机场管理员有权力操作,利用身份证号和对应的机
软件工程
票号就可以查询到机票信息,然后就可以退订机票。
6、打印机票:该功能只有机场管理员有权力操作,只有当管理员确认旅客已经付款后才予以打印机票,可以通过身份证号和对应的取票信息上的机票号查询机票信息,然后服务器返回机票信息,管理员就可以打印该机票信息,交给旅客。
7、各航班的营运统计:该项功能只有机场管理员才能操作,他可以通过输入年份和月份查询当月个航班的营运情况,以便机场能够及时掌握航班动态。
8、后台的航班添加:该项功能只有机场管理员才能操作,他通过提供航班的具体信息添加航班信息。
9、后台的取消航班:该项功能只有机场管理员才能操作,先通过航班号和航班日期查询到航班信息后,取消航班就可以将该航班从数据库中删除。
10、后台的航班查询:该项功能只有机场管理员才能操作,通过航班号和航班日期查询到航班信息。
11、后台的机票生成:该项功能只有机场管理员才能操作,可以通过该项功能给刚添加的航班生成对应的飞机票号纪录。
3.2 数据库的动态语句:
3.3 页面设计
主要的几个系统页面有登陆页面,主页面,已经其他子系统页面。页面如下:
登陆界面
主界面
订票查询界面
订票
订票
订票成功
后台的管理
3.5测试要点:
在测试过程中,首先需要对各子单元过程进行测试。在各子单元过程测试完毕后,再对各模块(包括各子单元过程之间的接口)进行测试,处理好各模块之间的接口,最后对系统进行测试和维护。
主要通过测试部分,发现开发人员忽视的部分,通过测试人员和编码人员的沟通和协作,可以不断的改进系统,不断提高系统的性能以及安全性。