飞机订票管理系统的设计与开发.docx
- 文档编号:30157958
- 上传时间:2023-08-05
- 格式:DOCX
- 页数:27
- 大小:186.48KB
飞机订票管理系统的设计与开发.docx
《飞机订票管理系统的设计与开发.docx》由会员分享,可在线阅读,更多相关《飞机订票管理系统的设计与开发.docx(27页珍藏版)》请在冰豆网上搜索。
飞机订票管理系统的设计与开发
飞机订票管理系统的设计与开发
摘要
随着社会信息技术的快速发展,使用计算机对飞机订票系统进行管理,具有人工管理无法比拟的优点,可以减少更多的人力物力,极大的提高对飞机订票系统管理的效率,也是飞机订票系统科学化、正规化,与世界接轨的重要条件。
因此开发一个飞机订票管理系统时必要的。
本文开发的飞机订票管理系统是在网络环境下实现订票业务的管理系统。
系统改变了传统的手工订票、送票、柜台支付方式,具有广泛的实用性。
系统由用户模块和管理模块两部分组成,用户模块实现游客注册、会员登录、航班查询、机票预订、更改订单、退票等业务操作,管理模块实现订单管理、航班管理、用户管理、帐单管理等管理功能。
系统是利用UML的开发思想,以订单流程为线索,以功能模块为框架结构,构建B/S模式的WEB应用程序,采用了基于JSP+WEB技术平台,以SQL Server2000作服务器数据库,利用角色访问控制技术增强系统安全性这种非常实用的应用程序开发技术。
本文详细记录了整个系统的开发过程,包括需求分析、系统的分析阶段、设计阶段等,通过文字、图形、表格形式,对系统所涉及到的功能模块的理解情况进行了展示,便于开发人员对系统的理解和分析,同时根据该文档把握系统开发流程及开发进展。
【关键词】 UML建模网络订票软件工程
第一章系统概述
1.1基本性能
飞机订票管理系统包括的基本功能有:
游客用户的注册,会员登录,会员更改个人资料,会员查询机票信息,会员订票,会员退票,管理员对游客信息和订票、退票等机票信息的管理,提高工作人员的对机票的管理工作效率。
基本可以满足一般用户的需要。
1.2开发目标
机票预订系统的目标是:
在计算机网络,数据库和先进的开发平台上,开发出一个稳定的,易于维护,易于扩充,有着良好的人机交互界面的机票预订系统。
实现航空公司飞机订票的全自动化,为用户提供快速,准确,精细的飞机票信息,并尽可能方便用户订票和退票。
1.3应用目标
飞机订票系统是一个会员订票与退票系统。
网上想订票的游客可以通过注册成为会员。
在成功注册成为会员以后,用户就可以享受网上订票的权力。
会员可以随时了解机票的信息以及发售情况,并对已经定好的机票进行退换,同时了解最新优惠情况。
管理员可以有效地录入会员的信息,并能及时知道机票的预订以及退票情况,并能随时更新机票的预订信息,对于机票进行管理。
1.4业务分析
随着知识经济的到来,人类已经逐步进入了信息化社会,信息增长的速度越来越快,人们希望用先进的管理理论方法手段来得到并处理越来越多的信息,以提高工作效率和管理水平。
由于信息资源对人类的重要性,不断提高信息的收集,传输,加以利用等活动,日益成为人们社会生活的重要组成部分。
网上机票预订管理系统的产生和发展正好满足人们这种需求。
系统的主要功能是提供机票预订服务,性能要求是对数据的操作准确的反映在航空公司的主服务器上,输入要求是数据完整,详细,输出要求是简单快速,实时。
系统要求游客在注册并登陆后才能享受网上订票的服务,这就要求用户提供一定量的个人信息,如姓名,住址,身份证号,用于支付机票的网上银行账户等,经审查合格后方可成为会员。
当会员登陆后,可以看到简洁,美观,易懂的界面,经由这个界面,会员可以很方便的查询到自己需要的机票信息,并且可以获得相关的剩余票数,机票优惠等相关信息。
会员要求订票的信息有专业人员负责输入,这部分功能是以后各个部分的基础,系统要求做到既能从其他子系统中分享一部分信息,又能有管理员手工输入旅客信息。
这部分要求对输入的数据进行简单的统计,供航空公司查询和调控。
将旅客所需的机票信息由网络传到航空公司的服务器上,并且接受航空公司返回的航班信息并存储起来。
在会员要求退票时,系统先分辨会员的要求是否符合公司相关的规定,不符合就停止操作,并在客户端上显示不能退票的原因,可以退票,系统将向会员显示退票的相关步骤,并把退回的金额返还给会员提供的银行账号上。
在后台,航空公司主服务器将退回的机票信息重新加入到可供会员购买的机票信息的数据库中。
本系统详细的业务流程图如图1-1:
注册审核
图1—1
请求信息
1.5软件系统数据字典
本文只给出会员的基本信息表中的用户名,性别,E—mail,订票数目,等级,注册时间等说明。
名字:
会员
别名:
描述:
会员的个人信息,用于对会员的确认
定义:
会员信息=姓名+性别+地址+身份证号+网上银行账号
位置:
客户端(client端)
名字:
订票信息
别名:
描述:
会员的旅行时间和目的地,用于确定会员的航班
定义:
订票信息=会员登机时间+会员出行目的地
位置:
传输到航空公司段(server端)
名字:
航班机票信息
别名:
描述:
会员的航班信息,根据会员的出行时间和目的地确定
定义:
航班机票信息=会员机票时间+会员机票班次+票价
位置:
传输到客户端(client端)
名字:
订票会员清单
别名:
描述:
已订票的会员的记录
定义:
订票会员清单=会员信息的合集
位置;输入到客户端(client端)
名字:
会员订票记录
别名:
描述:
已订票的会员在航空公司的记录
定义:
会员订票记录=会员姓名+航班机票信息
位置:
输出到航空公司端(server端)
第二章可行性分析
可行性研究的目的是为了对问题进行研究,以最小的代价在最短的时间内确定问题是否可解。
可行性分析的进行是因为项目开发过程中会存在约条件,必须首先确立方案是否可行,是否最优,然后在最优方案的基础上进行开发,保证在技术、经济、社会的方面进行分析和研究。
该系统的可行性分析包括以下几个方面。
2.1技术可行性
随着国内软件开发的日益发展壮大,尽管飞机订票管理系统在组织关系上存在着很大的复杂性,繁琐性,但是就整个系统的技术结构上来看,它属于一个数据库的应用类系统。
其基本操作是对数据库进行添加,删除,查找,编辑等。
所以从数据库角度来看,不存在太大的技术问题。
2.2经济可行性
在数据库发生变动时,管理员需登录用户名和密码就可进行对数据库的田间、删除等的修改,从而保证了数据库的安全性,也提高的更新的效率,另外本系统中用户等级的设置,可保证用户的消费心理,提高满意度,使系统更加完善。
第三章系统分析
3.1需求分析
本文飞机订票系统的设计,主要是通过理解软件工程课程中的系统分析,模型建立,用例图等方法,对飞机订票系统的流程进行功能细化,分析完成一个飞机订票系统所拥有的基本功能。
采用用例图的驱动的分析方法分需求的主要任务是识别出系统中的参与者与用例关系,并建立用例模型。
本文开发的飞机订票系统用户第一次订票时需完成自行注册,成为会员后可以实现登录,在线浏览,下订单,查看个人订票情况,
同时管理员也可以实现对订票系统的日常维护,整理订票情况,管理会员用户,修改会员等级等。
3.1.1性能要求:
1、准确性:
录入的信息(包括飞机航班的信息,飞机票的预定情况)都必须准确无误的记录在系统中。
2、实时性:
能及时反应在机票管理系统平台上,并可以进行及时的备份和恢复。
3、安全性:
数据的录入采用尽可能的效验方法严格校验,数据的维护和系统管理员负责。
本套航空订票软件系统所涉及的数据存放于MicrosoftSQLServer数据库中,在程序中应尽可能的使用调用存储过程的方法以免使某人反编译软件后或入侵到服务器后对数据库的结构了如指掌,在程序中应该设置不同权限的人访问时的账户和密码,以保证数据不容易被错改、破坏,而且要经常对数据库进行备份操作,使得数据一旦受到破坏或是出错能够保证及时的恢复数据,将损失降低到最低。
3.1.2实现目标:
系统可以大大提高飞机票的管理效率,降低飞机票管理中的出错率,减少信息交流繁琐过程以及带来的不必要的开销。
3.2系统用例分析
3.2.1识别参与者
从以上分析可知,飞机订票系统的参与者有
(1)飞机订票系统管理员:
负责管理订单,管理机票信息。
(2)游客:
在线浏览机票信息,注册会员
(3)会员:
在线浏览机票信息,在线订票,查询订单。
3.2.2识别用例
前面已经分析出参与者,通过对需求的进一步分析,可以确定系统中有如下用例存在:
(1)管理员登录
系统初始化好部分的飞机订票系统管理员用户,这些管理员可以通过该入口进入
(2)后台进行管理操作。
(3)管理员管理飞机票
(4)管理员管理订单
(5)管理员管理用户
(6)会员注册
网络用户均能注册。
注册信息包括:
登录用户名,密码,确认密码,真实信息,性别,联系地址,联系邮编,联系电话,电子邮件。
用户名不能重复。
(7)会员登录
系统会员使用自己注册的用户名登录系统,进行浏览机票信息,查看订单操作。
修改个人信息。
会员在线订票
会员可以查看航班时间及机票价格,选择购买,填写购买的数量。
(8)用户查看个人订票情况
用户可以查看自己已经完成的订票情况,付款金额和数量,机票属性等。
可以修改订票数量,删除已定机票订单,进行退票,但退票需要在相应的规定时间内操作。
3.2.3系统用例图
图3-1.系统用例图
图3.-3会员用例图
图3-2.管理员用例图
图3-4游客用例图
3.2.4用例的事件流描述
用例1
会员登录
主执行者
会员
前置条件
无
后置条件
如果这个用例成功,自动切入已登录的页面
描述
步骤
活动
1
填写会员ID
2
验证顾客信息,验证是否符合要求
3
提示顾客注册成功
扩展
步骤
分支活动
1
验证不符合网站要求
2
登录用例重新开始
用例2
注册会员
主执行者
会员
前置条件
无
后置条件
如果这个用例成功,将在系统中建立一个新的会员资料,并自动切入到已登录界面
描述
步骤
活动
1
填写会员相关信息
2
验证顾客信息,验证是否符合要求
3
提示顾客注册成功
扩展
步骤
分支动作
La
验证不符网站要求
注册用例重新开始
用例3
生成订单
主执行者
会员
前置条件
会员已选中所订机票
后置条件
如果这个用例成功,系统将计算出订单总额,并提示会员是否结账
描述
步骤
活动
1
会员提交订单
2
系统生成订单
3
系统计算订单
4
提示会员订单处理结果
用例4
修改订票情况
主执行者
会员
前置条件
会员已登录
后置条件
用例结束后,会员订票情况将被更新
描述
步骤
活动
1
会员选定机票
2
会员打开订票单,进行修改
3
系统根据会员的修改情况,进行更新,并返回消息
第四章系统设计
4.1系统功能模块设计
本系统设计主要是根据售票业务的基本流程进行的。
一般来说,售票业务包括如下几个方面:
登陆界面,订票和退票子系统,航班时刻信息查询子系统,航班综合信息查询子系统。
一般来说,售票与订票系统至少要满足下列条件:
1、具有乘客乘坐飞机的起点,终点,日期,和座位等信息。
2、可以查询当前航班的订票信息,可以查询航空公司的航班信息和航班时刻信息。
通过对系统进行详细的需求分析,获得一个最优的设计方案,将系统分为若干子模块,且在划分系统时,根据软件工程的思想,注重保持功能模块的独立性,尽量做到高内聚、低耦合。
如图1-2
系统层次结构图服务器端)
4.2系统时序图
为了更加详细的介绍本系统中各个用例的工作过程,给出了本系统中关键用例的UML时序图。
时序图反映了各用例的工作流程,以及工作过程中系统各层次间的协作关系。
4.2.1登录/退出系统时序图
:
管理员:
注册会员
会员信息
登录验证
登陆页面
发送登录请求
发送登录请求
获取会员登录信息
发送用户信息
获取会员真实信息
验证登录信息
发送验证结果
显示验证结果
说明:
a.系统的所有用户(会员)都必须经过登录之后才能使用系统提供的功能,不登录则不能使用。
系统不为“游客”身份的用户提供服务。
b.从系统的安全性考虑,用户的登录信息需要使用加密手段进行处理,以保证系统的安全。
4.2.2订票时序图
添加订票信息
验证订票信息
返回机票详细信息
查询机票详细信息
:
订购管理
生成订票订单
发送处理结果
发送订票信息
获取订票信息
发送订票请求
订购页面
:
订单信息
:
机票信息
:
会员
会员订票时序图
说明:
a.只有经过验证的会员才有权限使用系统进行订购业务,其他用户无权使用该功能。
b.系统将详细记录订票的详情,并在数据处理完毕之后需要将结果以报表的形式详细显示给用户,以等待用户的确认。
c.系统必须保证订单信息可靠、有效。
4.2.3修改订票信息时序图
发送修改信息息
修改订票信息
显示结果
返回操作结果
发动修改后的订单信息
获取修改信息
显示订票报表
返回订票信息
发送订票编号
获取订票编号
返回订票信息
查询订票信息
发送修改请求
:
会员
:
订票管理
:
订票信息
订票管理页面
修改订票信息时序图
说明:
a.会员在订票之后,可以对已订机票进行修改。
b.为了维护订单信息的严谨性,系统应该对用户修改订单的次数进行限制。
c.如果修改操作不成功,系统应当维持原有的订票信息不变,并保留会员对订票进行修改的权利。
4.2.4管理订票信息时序图
:
订票管理页面
:
订票信息
:
订票管理
:
管理员
发送查询请求
获取查询关键字
查询订单信息的时序图
返回点票信息
获取机票信息息
显示订票信息
发送订票信息
发送查询关键字
说明:
a.整个系统中的订票信息都由系统管理负责,对所有人的订票信息查询、管理,操作必须具备管理员权限才能操作。
b.在真正执行修改操作之前,系统必须验证所输入的参数的合法性。
4.3数据库设计
4.3.1E-R图
数据库系统时对现实世界中数据的一种抽象,通过概念模型将现实世界抽象成为信息世界,然后再抽象成为基本数据类型,E-R模型表示实体型、属性和联系的方法。
本系统的E-R图如下
n
1
支付
会员卡支付
货到付款
网上银行
4.3.2数据库对象
机票信息表:
列名
数据类型
可否为空
说明
客机编号
Int(10)
NOTNULL
主键
客机名
Char(10)
NULL
航线编号
Int(10)
NOTNULL
外键
服役日期
Char
NULL
出发时间
Time
NULL
抵达时间
Time
NULL
备注信息
Char(50)
NULL
会员等级信息表:
列名
数据类型
可否为空
说明
会员等级编号
Int(10)
NOTNULL
主键
会员等级名称
Char(10)
NULL
是否可打折
Char
(1)
NULL
折扣率
Char
(1)
NULL
备注信息
Char(50)
NULL
会员类型信息表:
列名
数据类型
可否为空
说明
客户类型编号
Int(10)
NOTNULL
主键
客户类型名称
Char(10)
NULL
折扣比例
Char(5)
NULL
备注信息
Char(50)
NULL
管理员信息表:
列名
数据类型
可否为空
说明
管理员编号
Int(10)
NOTNULL
主键
姓名
Char(10)
NULL
修改信息时间
Time
NOTNULL
电话
Char(5)
NULL
备注信息
Char(50)
NULL
订票信息表:
列名
数据类型
可否为空
说明
订票编号
Int(10)
NOTNULL
主键
用户编号
Char(10)
NOTNULL
外键
航线编号
Int(10)
NOTNULL
外键
舱位等级编号
Int(8)
NOTNULL
外键
机票价格
Char(5)
NOTNULL
结算金额
Char(5)
NULL
备注信息
Char(50)
NULL
客户信息表:
列名
数据类型
可否为空
说明
客户编号
int(10)
NOTNULL
主键
客户姓名
char(10)
NOTNULL
客户性别
Char
(1)
NOTNULL
身份证号
Char(20)
NOTNULL
联系电话
Char(5)
NULL
客户类型编号
Int(10)
NULL
备注信息
Char(50)
NULL
第五章系统实现
5.1系统前台设计
前台直接面向会员及游客,内容的丰富程度、界面的友好美观、操作的简便快捷易懂,将直接影响订票系统对游客和会员的吸引力,也直接影响到订票系统的生命力,因此前台设计是整个订票系统开发设计的重中之重,需要大量时间做到精益求精。
5.1.1.首页(Top.jsp)
在全面考虑好订票系统的功能和结构之后,就可以动手制作登录首页了。
首页的设计是系统成功与否的关键。
首页留给浏览者的第一印象直接决定浏览者是否使用该订票系统,因此对于首页的设计上要给予足够的重视。
首页从根本上说就是订票系统功能的一个索引,因此首页的设计要让人看起来条理清楚,美观大方。
该系统的首页确定了功能模块如下:
(1)注册模块:
当点击首页上的“注册”按钮,跳转至注册页面(Register.jsp)
(2)登录模块:
当点击首页上的“登录”按钮,跳转至登录页面(Login.jsp)
(3)搜索模块:
当点击首页上的“查询”按钮,跳转至查询界面(Search.jsp)。
首页的每次载入都会验证浏览者的登录状态和身份,如果发现用户没有登录,则仅仅启用上述3个模块,如果用户为已登录状态,则启用更多的功能模块。
下面仅从比较的角度来描述:
(1)去掉了注册和登录模块,由于首页面向的用户是已注册并登录的用户,所以注册和登录模块可以对该类用户隐藏。
(2)增加了个人信息模块。
由于会员对自己的信息进行修改和完善。
当会员点击首页上个人信息时,将跳转至个人信息界面(Information.jsp)
5.1.2注册页面(Register.jsp)的设计
注册页面是未登录用户通过点击首页上的“注册”按钮进入的页面,即Register.jsp,它主要是一个收集数据的页面,接受用户输入的数据,并将链接到服务器端的数据库去进行验证,存储操作。
因此,该页面是一个包含一些接受数据的Testbox控件,包括:
用户名、密码、邮箱。
当用户名填写完毕后点击“注册”按钮时,后台控制程序将链接服务器数据库对控件接受的信息进行验证,如账户名重复验证,密码长度合法验证和邮箱字符串合法验证。
当一切合法,成功注册之后,跳转为登录页面(Login.jsp)。
流程图如下:
开始
填写注册信息
否
否
合法用户名
是
否
合法密码长度
是
更新数据库
结束
注册流程图
5.1.4登录界面(Login)的设计
登录界面是一个收集/验证数据界面,它接受用户输入的数据,包括三个Textbox控件:
用户名,密码,邮箱,并链接到服务器端的数据库验证用户名的存在性、密码的匹配性,然后跳转到首页。
流程图如下:
开始
填写登录信息
是
用户名存在
否
是
提示:
用户密码不正确
否
进入首页
结束
登录流程图
5.1.5会员搜索页面的设计
搜索主题页面是通过会员点击首页上的搜索按钮,跳转到的页面。
搜索功能是飞机订票系统的一项高级功能,关系到系统的可实现性。
用于用户快速查找到自己需要的机票及查看机票信息。
页面中有一个主题列表,当它被载入时,首先从服务器端的数据库中查找符合条件的机票,另外,该页面在会员点击“回到首页”按钮,用户点击后跳转至首页。
流程图如下:
结束
开始
进入订票页面
搜索机票
目标机票
是
否
机票存在获得机票信息
是
否
否
是
5.1.6会员订票页面(Order.jsp)的设计
会员订票页面是本系统的重要页面之一,它的实用性的好坏决定系统开发的性能。
该界面中是在用户进行搜索之后,会员完成详细查看机票信息,并进行订票确认、选择付款等操作功能。
用户确认机票信息之后,在确认订票之前用户需要填写订票订单,包括订票数量,付款方式等。
用户按下订票的“确认”按钮时,系统会提示“是否完成订票”,点击确定责链接到服务端数据库,将接受用户订票信息,若选择否则跳转至首页。
流程图如下:
开始
否
进入首页
机票信息无误
提交订单
结束
否
是
否
完成订单编辑
是
是
5.2后台设计
5.2.1管理页面(Management.jsp)的设计
本系统只给出针对管理员的后台设计。
使用后台设计的人数一般比较少,因此为了减少设计成本,后台设计应尽量简化界面,但是功能实现应该考虑周全到位,是管理员行使应有的权利属性。
本系统中管理员完成三个方面的管理任务:
会员信息管理,订票信息管理,机票库存管理。
对会员的管理:
管理员可以在Textbox控件中输入要搜索的用户名,点击“搜索”按钮,程序将链接数据用户表,在用户信息表里列出的用户的各项信息,尤其是需要管理员频繁修改的两项是用户权限和等级,因此这两项显示在控件Textbox中,由管理员修改,管理员点击“修改按钮”,弹出提示信息“是否对用户信息进行修改?
”点击“确定”按钮则将数据库内用户表中对应修改存储。
管理员可以点击该信息后的“删除”按钮,弹出提示信息“时候要将该用户信息删除”点击“确认”,将链接数据库用户表删除该条用户记录。
以上两种管理员的操作页面都将自动刷新完成。
对订票信息的管理:
管理员可以在Textbox控件中输入要搜索的机票编号,点击“搜索”按钮,程序将链接数据库机票信息,机票信息表里列出该编号下的机票订单的各项信息,在完成机票信息管理之前,需要锁定现阶段机票信息数据库,以免操作过程中机票信息的更改造成用户订票信息丢失,管理之后,机票信息归零,重新统计。
因此需要管理员需要两个在控件Textbox中,由管理员修改,管理员点击“提收”按钮,弹出提示信息“是否对订票信息进行提收?
”点击“确定”按钮则将数据库内用户表中对应修改存储。
机票库存管理:
管理员通过“搜索”按钮,查看相关机票的信息,掌握库存信息,通过与运营商联系,及时更补库存。
第六章结论
我们的软件工程的项目实验,通过我们两个星期的共同努力,设计开发出的这个系统虽然在一些细节和功能上还不尽完善,但是我们在开发的过程中对软件工程的思想有了更深的理解,学习到了很多东西,这是我们比较满意的地方。
通过这个航空订票管理系统的开发和分析,使我们尽力去弄清楚如何去着手开发一个系统。
在软件课程学习到RUP模型是比较合理的开发模型,UML建模方法等。
但是当时学习课程的时候对开发的各个阶段和术语并不能够理解,经过亲自去开发一个项目,去经历系统分析,需求分析,架构设计,数据库设计,系统设计等一系列具体的活动之后,在不知从何下手到硬着头皮着实设计出一些框架进而反复修改,最后
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 飞机 订票 管理 系统 设计 开发
![提示](https://static.bdocx.com/images/bang_tan.gif)