机票预订系统设计.docx
- 文档编号:24492384
- 上传时间:2023-05-28
- 格式:DOCX
- 页数:19
- 大小:189.34KB
机票预订系统设计.docx
《机票预订系统设计.docx》由会员分享,可在线阅读,更多相关《机票预订系统设计.docx(19页珍藏版)》请在冰豆网上搜索。
机票预订系统设计
软件工程课程设计——
机票预订系统分析及建模
目录:
系统分析与建模——机票预定系统
一、系统名称:
机票预定系统
二、需求分析:
机票预定系统的总目标:
在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现航空公司的机票销售的自动化的计算机系统,为企业的决策层提供准确、精细、迅速的机票销售信息。
根据可行性研究的结果和客户的要求,分析现有情况及问题,采用Client/Server结构。
旅客订票流程图:
功能需求:
1.旅客信息的输入和统计
旅行社把旅客要求订票的信息由专人负责输入。
这部分功能是客户端子系统的基本部分,这个功能是以后各个部分的基础。
系统要求做到即能够从其它子系统中共享一部分信息,又有方便的操作界面工手工输入旅客信息。
这部分要求对输入的数据进行简单的统计,供航空公司进行查询和宏观调控。
2.旅客信息的存储
将旅客的信息存储到旅行社的客户端系统中,以备以后的取票确认以及查询。
3.机票信息的传递及接收
将旅客所须的机票信息由旅行社客户端由网络传到航空公司的服务器上,并且接受航空公司返回的航班信息,然后存储起来。
4.取票通知及帐单的生成和打印
把已存储的从航空公司返回的航班机票信息打印出来,并且生成帐单打印出来一起交给旅客。
打印出机票给已经订票的旅客:
根据旅客的取票通知及帐单,经过确认无误后,接受旅客的付款后把机票印出来交给旅客。
5.机票销售情况的核算
这一功能是在上一功能的基础上,对机票销售额进行单项核算,得到该旅行社的销售情况并把核算结果作为企业报表输出。
性能需求:
为了保证系统能够长期、安全、稳定、可靠、高效的运行,机票预定系统应该满足以下的性能需求:
1.系统处理的准确性和及时性
系统处理的准确性和及时性是系统的必要性能。
在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间能够满足企业对信息处理的需求。
由于机票预定系统的查询功能对于整个系统的功能和性能完成举足轻重。
作为系统的很多数据来源,而机票数量和时间又影响企业的决策活动,其准确性很大程度上决定了机票预定系统的成败。
在系统开发过程中,必须采用一定的方法保证系统的准确性。
2.系统的开放性和系统的可扩充性
机票预定系统在开发过程中,应该充分考虑以后的可扩充性。
例如订票系统的方式的改变(网上订票),用户查询的需求也会不断的更新和完善。
所有这些,都要求系统提供足够的手段进行功能的调整和扩充。
而要实现这一点,应通过系统的开放性来完成,既系统应是一个开放系统,只要符合一定的规范,可以简单的加入和减少系统的模块,配置系统的硬件。
通过软件的修补、替换完成系统的升级和更新换代。
3.系统的易用性和易维护性
机票预定系统是直接面对使用人员的,而使用人员往往对计算机并不时非常熟悉。
这就要求系统能够提供良好的用户接口,易用的人机交互界面。
要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面;针对用户可能出现的使用问题,要提供足够的在线帮助,缩短用户对系统熟悉的过程。
机票预定系统中涉及到的数据是航空公司的相当重要的信息,系统要提供方便的手段供系统维护人员进行数据的备份,日常的安全管理,系统意外崩溃时数据的恢复等工作。
4.系统的标准性
系统在设计开发使用过程中都要涉及到很多计算机硬件、软件。
所有这些都要符合主流国际、国家和行业标准。
例如在开发中使用的操作系统、网络系统、开发工具都必须符合通用标准。
如规范的数据库操纵界面、作为业界标准的TCP/IP网络协议及ISO9002标准所要求的质量规范等;同时,在自主开发本系统时,要进行良好的设计工作,制订行之有效的软件工程规范,保证代码的易读性、可操作性和可移植性。
5.系统的先进性
目前计算系统的技术发展相当快,做为机票预定系统工程,应该保证系统在下个世纪仍旧是先进的,在系统的生命周期尽量做到系统的先进,充分完成企业信息处理的要求而不至于落后。
这一方面通过系统的开放性和可扩充性,不断改善系统的功能完成。
另一方面,在系统设计和开发的过程中,应在考虑成本的基础上尽量采用当前主流并先进且有良好发展前途的产品。
6.系统的响应速度
机票预定系统系统在日常处理中的响应速度为秒级,达到实时要求,以及时反馈信息。
在进行统计分析时,根据所需数据量的不同而从秒级到分钟级,原则是保证操作人员不会因为速度问题而影响工作效率。
数据需求:
1.数据录入和处理的准确性和实时性
数据的输入是否准确是数据处理的前提,错误的输入会导致系统输出的不正确和不可用,从而使系统的工作失去意义。
数据的输入来源是手工输入。
手工输入要通过系统界面上的安排系统具有容错性,并且对操作人员要进行系统的培训。
在系统中,数据的输入往往是大量的,因此系统要有一定的处理能力,以保证迅速的处理数据。
2.数据的一致性与完整性
由于系统的数据是共享的,在不同的旅行社中中,机票是共享数据,所以如何保证这些数据的一致性,是系统必须解决的问题。
要解决这一问题,要有一定的人员维护数据的一致性,在数据录入处控制数据的去向,并且要求对数据库的数据完整性进行严格的约束。
对于输入的数据,要为其定义完整性规则,如果不能符合完整性约束,系统应该拒绝该数据。
3.数据的共享与独立性
整个机票预定系统的数据是共享的。
然而,从系统开发的角度上看,共享会给设计和调试带来困难。
因此,应该提供灵活的配置,使各个分系统能够独立运行,而通过人工干预的手段进行系统数据的交换。
这样,也能提供系统的强壮性。
三、用例分析:
机票预定系统业务参与表:
●旅客:
为取得机票而付费的人
●旅行社:
其安全状况已得到确认的机构,因此,可以把旅客信息输入到系统
●Sys:
处理旅客信息、预约、安排航班,进行定时查询统计的已有系统
●航空公司:
旅客进行预约机票的航空公司
业务用例表:
旅行社预定机票:
其安全状况已得到确认的机构,因此,可以把旅客信息输入到系统
1.系统查询统计:
系统为掌握各个航班的乘载情况定时进行查询统计
2.系统安排航班:
系统根据旅客需求安排航班
3.系统确认交付预约金:
旅客为安排的航班满意后交付预约金
4.旅客获知航班:
根据统计结果可以安排到航班后,旅行社通知旅客
5.系统获得预定:
系统确认获得预约金后,打印出取票通知和帐单给旅客
6.航空公司合法性验证:
航空公司对旅客身份证、护照、取票通知和帐单进行合法性验证
7.旅客交款:
合法性验证通过后,旅客交款
8.系统打印机票:
核对信息无误后系统打印出机票给旅客
9.旅客延误处理:
得到合法性验证后,确定旅客延误,取消预约
10.系统航班取消处理:
旅客按时取预约机票时航班取消,系统取消预约并退还旅客预约金
11.旅客更改航班的处理:
旅客确认更改航班时,系统取消预约
12.旅客重新预约:
旅客更改航班后重新预约机票
用例细化描述:
B1:
系统查询统计:
1.系统确认某一旅客的预约后,对可供预约的座位和已经预约的座位均进行更新和存档
2.旅客因为延机而没有取得机票时,对可供乘载的座位号进行更新同时取消预约
3.由于天气等一些非认为因素航班取消后,系统即时得到更新,并告知旅客取得预约金
4.旅客更改航班后,系统对可供乘载的座位进行更新,取消旅客预约并重新进行旅客航班的预约
B2:
系统安排航班:
1.系统收到旅行社提交的旅客有关信息后,为旅客安排合适的座位
2.当旅客要求的航班座位已经被预约后,系统为旅客提供可供参考的座位建议
B3:
系统确认交付预约金:
1.当旅客对系统安排的航班满意后,并通过航空公司的合法性验证后,旅客缴纳预约金
B4:
旅客获知航班:
1.当旅客向旅行社说明自己的旅行目的地、始发地后,为旅行社提供自己的有效证件,由旅行社向系统输入要求,通过搜索引擎获得航班信息
2.旅客延机时即时取得最新航班信息
3.系统航班取消后,旅客获得可供乘载的航班信息
4.旅客更改航班后取得可供乘载的航班信息
B5:
系统获得预定:
1.系统确认旅客已经缴纳预约金后,输出已预订的信息
B6:
航空公司合法性验证:
1.系统受到旅客对座位满意的回复后,航空公司要求旅客提供身份证、护照
2.航空公司检查扫描旅客的身份证、护照,确定是真实的后,通知旅客缴纳预约金
3.当扫描发现旅客的证件是假的时,取消预约,不能通过合法性验证
B7:
旅客交款
1.旅客通过航空公司的合法性验证后,向航空公司提交预约金
B8:
系统打印机票:
1.旅客出示自己的取票通知和帐单
2.旅客在飞机起飞前一天凭取票通知和帐单缴款
3.系统确认旅客缴款无误后,打印机票给旅客
B9:
旅客延误处理:
1.旅客之前已经取得预约,但是在飞机起飞前没有到航空公司领取机票
2.旅客之前已经取得预约,但是在飞机起飞前一天到航空公司缴款取票
3.航空公司取消旅客预约
B10:
系统航班取消处理:
1.旅客按时取得机票后,航班取消,航空公司预约并退还旅客机票钱
2.旅客仅取得预约但航班取消后,航空公司取消预约退还旅客预约金
B11:
旅客更改航班的处理:
1.旅客确认更改航班后取消原有预约
2.旅客取消预约向航空公司所要预约金
3.旅客重新在系统中搜索查看适合自己要求的航班位置
B12:
旅客重新预约:
1.旅客由于延误取消预约后,重新预约
2.由于航班取消,旅客重新预约
3.旅客更改航班后进行重新预约
四、系统建模:
参与者列表
旅客:
使用Web浏览器访问Sys的人
旅行社:
在航空公司提供了旅行社名称、地址和邮箱;每个旅行社都有自己的帐号和密码
助手:
航空公司的一个员工,他与旅客联系,告诉他们预约的紧张情况
用例列表:
1.浏览索引:
旅客浏览航班情况的索引
2.查看结果:
给旅客显示检索到的航班班次子集
3.查看航班情况的细节:
给旅客显示检索到的航班细节
4.搜索:
旅客通过制定旅行时间、始发地、目的地、航班要求等,搜索航班班次
5.登录:
旅行社使用帐号和密码登陆sys
6.查看旅行社信息:
旅行社查看sys存储的旅行社名称、地址、邮箱等细节
7.进行预约:
旅客在查看航班的细节时,预约一个航位
8.查看销售情况:
旅行社查看当前的已销售航位汇总情况
9.修改密码:
旅行社修改用于登陆的密码
10.查看预约情况:
旅行社查看当前还没有结束的预约汇总情况
11.取消预约:
旅客取消预约
12.注销:
旅行社注销自己的帐号和密码
13.查看航班信息:
旅客从列表中检索航班情况的子集
用例细节:
1.浏览索引
前提条件:
无
1)旅客选择一个索引标题
2)旅客选择查看选中索引标题的航班班次
后置条件:
无
2.查看结果
前提条件:
无
1)Sys给旅客显示每个索引出来的航班班次,包括始发地、目的地
后置条件:
无
3.查看航班情况的细节
前提条件:
无
1)旅客选择一个满意的航班班次
2)旅客请求选中的航班细节
3)sys显示选中的航班细节
后置条件:
sys显示选中的航班细节
4搜索
前提条件:
无
1)旅客选择旅行时间
2)旅客选择始发地
3)旅客选择目的地
4)旅客选择航班要求
5)旅客开始搜索
后置条件:
无
5登录
前提条件:
旅行社拥有自己的帐号和密码
1)旅行社输入帐号
2)旅行社输入密码
3)sys通过验证登录
4)旅行社选择登录
后置条件:
旅行社登录
异常路径:
如果帐号和密码组合是不正确的,sys会通知旅行社,这两个中的一个不正确
6查看旅行社信息
前提条件:
无
1)旅行社选择查看旅行社信息
2)给旅行社显示信息(旅行社名称、地址、邮箱等)
后置条件:
已给旅行社显示了旅行社信息
7进行预约
前提条件:
旅行社已经登录sys
1)旅客的信息已经得到系统的有效验证
2)系统要求旅客确认预约
3)旅客缴纳预约金
4)系统打印出取票通知和帐单
后置条件:
完成所有已请求的预约
异常路径:
如果sys限制了预约条件,就不能进行预约
8查看销售情况
前提条件:
无
1)旅客选择查看他们预约的信息
2)sys给旅客显示他们当前预约的航班的机票销售情况
后置条件:
无
9修改密码
前置条件:
无
1)旅行社选择修改密码
2)旅行社输入旧密码
3)旅行社输入新密码
4)旅行社再次输入新密码
5)旅行社启动修改
6)sys请求确认
7)如果旅行社确认,就修改密码
后置条件:
密码已修改
异常路径:
1)如果旧密码或新密码不匹配,就告知旅行社
2)如果新密码没有遵循密码规则,就告知旅行社
10查看预约情况
前置条件:
无
1)旅行社选择查看预约信息
2)sys显示还没有结束的预约汇总信息
后置条件:
已给旅行社显示了已有的预约汇总信息
11取消预约
前置条件:
无
1)旅行社选择了一个预约
2)旅行社取消了预约
3)sys请求确认
4)旅行社确认要取消预约
5)sys把预约标记为已经结束,更新sys
异常路径:
如果旅行社没有确认取消预约,sys就不采取任何行动
12注销
前置条件:
无
1)旅行社选择注销
2)sys结束当前会话
后置条件:
旅行社已注销
13查看航班信息
前置条件:
无
后置条件:
向旅行社显示检索到的航班班次汇总信息
图1.用例图
图2.顺序图
图3.预约航班活动图
图4.状态图
操作列表:
Plane:
setStart()设置旅行的始发地。
getSart()获取旅行社输入的始发地
setEnd()设置旅行的目的地
getEnd()获取旅行社输入的目的地
setTime()设置旅行的出发时间
getTime()获取旅行的出发时间
traveller:
isLate()判断旅客是否按时到达机场
isTrue()确定旅客取消预约
buy()订购机票
seat:
setColumn()旅客通过页面输入自己要求的座位的列
getColumn()系统获得座位的列
setRang()旅客通过页面输入自己要求的座位的行
getRang()系统获得座位的行
setPrice()旅客通过页面输入自己期望的座位的价格
getPrice()系统获得旅客期望的座位的价格
isBook()显示航班上的座位是否已经预定
agent:
setName()旅行社通过页面输入自己注册的账号
getName()系统获得旅行社的账号
setAddress()旅行社通过页面输入自己注册的地址
getAddress()系统获得旅行社的地址
setEmail()旅行社通过页面输入自己注册的邮箱
getEmail()系统获得旅行社的邮箱
setCredit()旅行社通过页面输入自己注册的密码
getCredit()系统获得旅行社的密码
assit:
changePwd()旅行社修改密码
isLoggedOn()使旅行社登录
logOff()使旅行社注销
getDetails()获得航班信息的描述
showAgentDetails()获得已经注册的旅行社描述
confirmChange()确认密码已经修改
book()预定机票
confirmBook()确认预定
cancel()取消预定
confirmCancel()确认取消预定
logOn()登录用户
图5.类的方法及操作
图6.部署图
五、实现技术:
数据库:
采用SQLSever2000进行数据库的操作
前台:
采用c++进行页面的各种显示设计
连接:
采用ADO连接将前台和后台数据库进行连接
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 机票 预订 系统 设计