软件工程机票预订实验报告.docx
- 文档编号:24303495
- 上传时间:2023-05-26
- 格式:DOCX
- 页数:38
- 大小:205.19KB
软件工程机票预订实验报告.docx
《软件工程机票预订实验报告.docx》由会员分享,可在线阅读,更多相关《软件工程机票预订实验报告.docx(38页珍藏版)》请在冰豆网上搜索。
软件工程机票预订实验报告
本科实验报告
课程名称:
软件工程导论
实验项目:
机票预订系统
实验地点:
专业班级:
学生姓名:
指导教师:
年月日
1.实验目的和要求
目的:
为本实验课程做好各项准备工作,熟悉软件开发环境,熟悉电子资源的获取,了解学校内部工资系统的流程及其内容。
本实验课程通过完整地实施软件生命周期各阶段的任务,让学生系统地学习到软件开发过程的主要理论、方法、技术、标准和规范,使他们具备基本的软件开发设计能力;通过软件工程中常用CASE工具和软件项目管理的实践,使他们具备运用各种工具完成项目设计和实施的基本技能;通过集体项目开发,培训学生的合作意识和团队精神,培养学生对技术文档的编写能力。
要求:
确定分组成员,根据提供的课题需求,作出相应的可行性研究报告,需求分析,结构化设计等。
结合具体的开发项目进行分析、设计。
二、实验内容和原理
1.班级按项目小组进行分组,每组不得超过5人。
2.每个项目小组选出项目负责人或项目经理,由项目经理召集项目组成员讨论、选定开发项目,所有实验中都要采用同一个实验题目。
项目开发的每项任务要落实到人且规定该任务的起止日期和时间。
3.每个项目小组全体成员参加集体讨论需求分析,完成需求分析报告,,修订并评审需求分析报告,确定系统的需求分析模型。
4.项目总体设计小组每个成员根据第3步需求分析的结果对系统进行总体设计,并完成文档,提交项目小组讨论。
2.5.项目详细设计小组人员每人选择第4步的一个模块进行详细设计。
6.项目小组全体成员选择第4步的一个模块编码实现。
7.由需求分析人员对第5步的结果进行黑盒测试,设计人员进行白盒测试,并编写测试计划和测试结果报告。
3、主要仪器设备
计算机,相关软件开发工具和环境,浏览器
4、操作方法与实验步骤
小组情况
项目题目:
机票预订系统
项目成员
一、可行性分析报告
1.引言
1.1目的
为了方便旅客,航空公司拟开发一个飞机票预订系统。
旅游公司把预订机票的旅客信息(姓名、年龄、工作单位、身份证号码、旅游时间,旅游目的地等)输入系统,系统为旅客安排航班,打印出取票通知和账单,旅客在飞机起飞的三天内凭取票通知和账单交款取票,系统校对无误即可打印出飞机票给旅客。
1.2背景:
开发项目软件名称:
航空机票预订系统
项目任务提出者:
民航以及国际旅游开发公司
项目开发者:
开发小组(团队名称:
五人行)
用户:
民航以及国际旅游开发公司
实现软件单位:
国际旅游开发公司
项目与其他软件、系统的关系:
本项目采用b/s模式,客户只需要一个浏览器就能登录系统,服务器采用linux系统,数据库采用Oracle10g
2可行性研究的前提
2.1要求:
主要功能:
为游客提供机票预订服务,方便旅游局的售票工作,提高旅游局的服务质量和服务效率
性能要求:
机场提供的信息必须能及时的反应在旅游局的工作平台上,售票系统的订单必须无差错的存储在机场的主服务器上,对服务器的数据必须进行及时正确地刷新。
输出要求:
数据完整,详实
输入要求:
简捷,实时
安全与保密要求:
服务器的管理员享有对机场航班信息库、机票信息库和订票信息库德管理与修改,售票只享有对订票信息库的部分修改(写入与读出)。
完成期限:
预计四个月
2.2目标:
“机票预定系统”的主要功能是帮助航空公司对乘客的信息进行统计,更新。
并对自己的航班做出相应的调整,来达到最好的运输效果。
其功能描述如下:
(1)旅行社将乘客的信息传输到该系统,并在系统中注册。
(2)系统为乘客安排航班。
(3)旅客交付了预定金后,系统印出取票通知和帐单给旅客 (4)旅客在飞机起飞的前一天凭取票通知和帐单交款取票,系统核对无误即印出机票给旅客
(5)航空公司为随时掌握各航向飞机的乘载情况,系统定期进行查询统计,以便适当调整。
(6)系统对旅客延误了取票时间的处理
(7)系统对班机取消后的处理
(8)旅客临时更改机票班次的处理
2.3条件、假定和限制:
建议软件使用寿命:
四到五年(软件当然会根据市场环境和社会等一系列环境的不同做些必要的更新和维护)
经费来源:
旅游开发公司,民航
硬件条件:
服务器Linux,数据库服务器Oracle,开发端客户机条件尽量高,cpu至少要奔腾系列,内存至少要达到1G,最好到2G
运行环境:
Linux
数据库:
Oracle
投入运行最迟时间:
四个月
2.4进行可行性研究的方法:
进行全面的市场调查,深入研究国内的经济环境、社会环境,通过小组会议进行多次研究与探讨并通过科学论证来规划整个系统的草图以及制定项目计划并按部就班的完成各阶段的任务。
3对现有系统的分析
此处的现有系统是指传统的人工办理订票事务的系统。
传统的人工录入不仅工作效率低,可变性差而且容易因为人为的主观因素而导致各个环节出现不可预估的差错。
分析现有系统的目的是为了进一步阐明建议中的开发系统或修改现有系统的必要性。
3.1数据流程和处理流程
旅客先去航空公司的订票处输入订票信息,然后航空公司的工作人员登记旅客信息,并进行审核。
之后工作人员根据旅客的订票信息查询相关航班信息,并将此信息反馈给旅客。
若订票成功旅客则交付预定金,工作人员打印单据给旅客,在飞机起飞的前一天,旅客凭单据及本人身份证明拿机票。
若订票不成功,则旅客可更改航班或放弃订票
3.2工作负荷
现有系统使航空公司的工作人员需24小时轮班工作,还需对大量的旅客信息进行登记统计,大大增加了工作时间也降低了工作效率。
3.3费用支出
现有的系统需支付工作人员工资以及纸张费、打印费等费用
3.4人员
现有系统需大量工作人员,如:
旅客信息登记人员,有效性审查人员、会计、出纳、服务人员、保安人员等等。
3.5设备
微机、打印机、刷卡机、柜员机、柜台等。
3.6局限性
现有系统在众多旅客订票时处理时间较长,也不能及时向旅客反馈航班信息。
4所建议的系统
4.1对所建议的系统的说明
该系统是一个自动化系统,能方便快捷的为旅客订票,并能及时向旅客反馈航班信息,使旅客能及时作出更改。
4.2数据流程和处理流程
旅客能在通过互联网登录到系统,输入自己的信息,并选择所需的航班,该系统就反馈出该航班信息,旅客根据此信息来确定自己是否已预订机票;若已预订,则通过网上银行交付预定金,该系统打印出单据,旅客在飞机起飞的前一天凭单据去航空公司交付余款金额,并领取机票。
若无预订,则旅客可更改航班。
4.3改进之处
若旅客想退票,则需要制定一个退票系统,使得该系统更加的完备。
4.4影响
该系统的开发需得到航空公司以及政府和旅客的大力支持,在开发完成后航空公司需供应该系统所需的设备。
4.5局限性
该系统在取票时需旅客出示身份证明,若旅客由于身份证丢失等原因而不能证明自己的身份,则不能为旅客办理取票手续,从而为旅客的出行带来了诸多不便。
5技术可行性
处理流程和数据流程
6经济可行性
6.1支出:
终端pc机6到8台、一些网络必须设备、Linux服务器、辅助设施、开发人员工资、服务器端管理人员培训费、数据库服务器、其他一些费用
6.2效益:
初期收益:
网站刚刚推出,收益是零
长期收益:
系统大大提高了售票的售票效率
当网站推出市场之后,能收取一定的广告费用,经过严密的估算,长期收益大于
500万
通用的机票预订系统对于快速处理旅客的订票请求可以起到事半功倍的效果。
它能大大较少投资成本,使企业和个人不需要通过繁琐主力以及专业技术就可以轻松应对旅客订票、变更机票等各种请求。
与此同时还可以减少大量的人力物力资源、减少出错的几率,并能使旅客可以方便快捷的预订机票和更改机票,降低了大量的中间等待过程所耗费的时间。
一次性支出包括系统设计、开发费用等。
非一次性支出包括系统维护费用等。
收益需实现飞机票预订自动化,减少专门人员的管理费用、办公设备购买费用和维修费用,极大的提高办公效率。
6.3投资回收周期
预期二到三年
7法律可行性
法律方面的可行性:
所建议系统的研制和开发将不会侵害他人、集体、国家的利益,不会违反相关的国家政策和法律。
操作方面的可行性:
本系统的研制和开发充分考虑了软件的人性化,方便用户傻瓜式的直接使用,无需用户具备相应的专业知识,并充分保证的用户信息的私密性。
《机票预订系统需求规格说明书》
此部分由李杰、李海鹏、刘世杰共同完成
一.目的
需求分析说明书提供用户与开发人员对开发软件的共同理解,使用户与开发单位就该系统的功能定义、环境需求达成共识,是今后各阶段设计工作的基础和依据,也是本阶段评审和测试阶段确认验收的依据。
明确机票预订系统的软件需求,以便安排项目规划与进度,组织软件开发与测试,撰写本文档。
二.任务
功能分析图
机票预订系统实现后,能够运行于Internet环境,提供远程机票预订功能,包括远程航班信息查询,机票预订与确认等;使用《机票预订系统》可使机票订购过程简单化、电子化、数字化,节省常规过程所不必要的资源浪费。
提高服务效率。
降低售票服务中的错误发生率,减少信息交流的繁琐过程及其带来的开销。
2.数据流图
数据流图是全面描述系统逻辑模型的工具,它抽象概括地把系统中各种业务处理过程联系起来。
在画“机票预订系统”的数据流图时,首先要画出整个顶层图,以保证对整个系统的概况有个整体了解,然后把顶层图中的细节用下一层次的数据流程图来表示,按照由粗到细、逐层细化的原则对系统的各个模块进行深入的分析。
本系统的数据流图如下:
1),旅客订票数据流图
2),旅客取票数据流图
3)票务数据流图
3.数据字典:
数据字典是软件分析过程中对数据的描述,是数据流图的必不可少的辅助资料。
数据字典的定义和数据流图是同时进行的,每当完成一张数据流图时,都需要对该数据流图中的成分进行完整的定义,数据字典是需求分析阶段一个重要的工具,通过在数据字典中建立一组严密一致的数据定义可以帮助软件分析人员和用户之间交流,同时也有助于软件人员之间的交流,容易达到对数据的统一认识。
本系统的数据字典如下:
(1)数据流名称:
旅客信息
简述:
订票旅客基本信息及订票要求
数据流来源:
旅客确定订票后,由订票管理人员编码整理后,输入计算机
数据流去向:
加工1安排航班,该加工将录入的数据存入数据库(订票基本信息表)
数据项组成:
身份证号+姓名+性别+工作单位+旅行日期+旅行时间+旅行目的地+联系方式
(2)数据流名称:
订票信息
简述:
航班安排结果
数据流来源:
旅客信息和航班信息
数据流去向:
加工2,打印通知和账单
数据项组成:
身份证号+姓名+性别+班次+航班起飞时间+航班到达时间+航班目的地+票价
(3)数据流名称:
航班信息
简述:
通知单
数据流来源:
加工1.1航班管理
数据流去向:
加工1.2安排
数据项组成:
航班日期+航班起飞时间+航班到达时间+航班目的地+班次+票价+票余量
(4)数据流名称:
取票通知和账单信息
简述:
返回给旅客的航班安排结果及旅
客取票时用来核对的凭证
数据流来源:
加工1.2打印取票通知和账单
数据流去向:
加工2.1核对订票信息
数据项组成:
身份证号+姓名+性别+班次+航班日期+航班时间+航班目的地+票价
(5)数据流名称:
订票信息核对正确
简述:
将旅客的取票通知和账单与系统中的订票信息核对,二者一致产生的信息
数据流来源:
加工2.1核对订票信息
数据流去向:
加工2.2收费
数据项组成:
身份证号+姓名+性别+班次+航班日期+航班起飞时间+航班目的地+票价
(6)数据流名称:
收费信息
简述:
对订票信息核对正确的旅客收费产生的信息
数据流来源:
加工2.2收费
数据流去向:
加工2.3打印机票
数据项组成:
身份证号+姓名+性别+班次+航班日期+航班起飞时间+航班目的地+票价
加工条目
(1)加工名:
安排航班
处理逻辑编号:
1.1
处理逻辑:
接收旅客信息的录入,并检查有无错误,如果没有错误,将数据存入订票信息表,并在航班信息表里查找符合旅客订票信息的相应航班,生成订票信息
激发条件:
接收到旅客信息时
输入:
旅客信息
输出:
订票信息
(2)加工名:
打印通知和账单
编号:
1.2
处理逻辑:
由生成的订票信息,打印取票通知和账单
激发条件:
接收到已经安排了航班的订票信息时
输入:
订票信息
输出:
通知和账单信息
(3)加工名:
核对机票信息
编号:
2.1
处理逻辑:
对旅客订票信息进行核对
激发条件:
接收到旅客的取票通知和账单
输入:
无
输出:
“订票信息正确”的信息
(4)加工名:
收费
编号:
2.2
处理逻辑:
对订票信息核对正确的旅客进行收费,收费后生成收费信息
激发条件:
接收到订票信息核对正确的信息并收到旅客交费要求
输入:
交费信息
输出:
打印机票信息
(5)加工名:
打印机票
编号:
2.3
处理逻辑:
由打印机票信息打印机票
激发条件:
收到打印机票的信息
输入:
无
输出:
机票
数据存储条目
(1)数据存储编号:
D1
数据存储名称:
订票信息表
简述:
存储旅客详细信息及订票要求
组成:
旅客身份证号+姓名+性别+工作单位+航班起飞时间+航班到达时间+旅行目的地
关键字:
旅客身份证号
组织方式:
索引文件,以旅客身份证号为关键字
数据项条目
(1)数据项名称:
身份证号
简述:
表明每个人身份的证件号
组成:
籍贯代码+出生年月日+其他代码码
类型:
字符
长度:
20位
取值范围:
数字0-9,字母a-x
(2)数据项名称:
姓名
简述:
旅客姓名
组成:
姓名
类型:
字符
长度:
10位
取值范围:
汉字或字母
(3)数据项名称:
性别
简述:
旅客性别
组成:
男或女
类型:
字符
长度:
2位
取值范围:
男或女
(4)数据项名称:
联系方式
简述:
联系电话
组成:
数字
类型:
字符
长度:
11位
取值范围:
数字0-9
(5)数据项名称:
班次
简述:
航班班次
组成:
航班类型+航班号码
类型:
字符
长度:
10位
取值范围:
字母+数字
(6)数据项名称:
航班日期
简述:
航班起飞的日期
组成:
年月日
类型:
日期
长度:
10位
取值范围:
正确的年月日
(7)数据项名称:
航班起飞时间
简述:
航班起飞的时间
组成:
时分
类型:
时间
长度:
20位
取值范围:
正确的时分
(8)数据项名称:
航班到达时间
简述:
航班到达的时间
组成:
年月日+时分秒
类型:
字符
长度:
20位
取值范围:
正确的年月日和时分秒
(9)数据项名称:
航班目的地
简述:
航班飞往的目的地
组成:
国家或地区+机场
类型:
字符
长度:
10位
取值范围:
汉字或英文
(10)数据项名称:
票价
简述:
相应航班对应机票的价格
组成:
数字+货币单位
类型:
浮点型
长度:
8位
取值范围:
数字0-9
(11)数据项名称:
票余量
简述:
机票剩余数量
组成:
数字
类型:
整型
长度:
4位
取值范围:
数字0-9
总体设计
1.1需求规定
航空公司为方便旅客,需开发一个机票预定系统。
为便于旅客由旅行社代替航空公司负责为旅客定票,旅行社把预定机票的旅客信息,包括姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地,输入机票预定系统的客户端程序,系统经过查询航空公司内的航班数据服务器后,为旅客安排航班,印出取票通知。
旅客在飞机起飞前一天凭取票通知和帐单交款后取票,系统校对无误后即印出机票给旅客。
要求系统能有效、快速、安全、可靠和无误的完成上述操作。
并要求客户机的界面要简单明了,易于操作,服务器程序利于维护。
1.2运行环境
系统将由两部分程序组成,安装在各旅行社客户机上的客户程序及航空公司内的数据服务器程序。
根据调研得知所有旅行社的计算机配置均在Pentium133级别以上,客户程序应能够在Pentium133级别以上,WinNT环境下运行。
1.3基本设计概念和处理流程
航空公司为方便旅客,需开发一个机票预定系统。
为便于旅客由旅行社代替航空公司负责为旅客定票,旅行社把预定机票的旅客信息,包括姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地,输入机票预定系统的客户端程序,系统经过查询航空公司内的航班数据服务器后,为旅客安排航班,印出取票通知。
旅客在飞机起飞前一天凭取票通知和帐单交款后取票,系统校对无误后即印出机票给旅客。
要求系统能有效、快速、安全、可靠和无误的完成上述操作。
并要求客户机的界面要简单明了,易于操作,服务器程序利于维护。
1.4结构
下面以结构图来描述机票预定系统的软件总体结构。
框内注明了模块的名字;方框之间的直线表示模块的调用关系。
。
2接口设计
2.1用户接口
本产品的用户一般需要通过终端进行操作,进入主界面后点击相应的窗口,分别进入相对应的界面(如:
输入界面、输出界面)。
用户对程序的维护,最好要有备份。
2.2外部接口
3.2.1用户界面
在用户界面部分,根据需求分析的结果,用户需要一个用户友善界面。
在界面设计上,应做到简单明了,易于操作,并且要注意到界面的布局,应突出的显示重要以及出错信息。
外观上也要做到合理化。
总的来说,系统的用户界面应作到可靠性、简单性、易学习和使用
2.3内部接口
内部接口方面,各模块之间采用函数调用、参数传递、返回值的方式进行信息传递。
具体参数的结构将在下面数据结构设计的内容中说明。
接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间传输。
3运行设计
3.1运行模块组合
客户机程序在有输入时启动接收数据模块,通过各模块之间的调用,读入并对输入进行格式化。
在接收数据模块得到充分的数据时,将调用网络传输模块,将数据通过网络送到服务器,并等待接收服务器返回的信息。
接收到返回信息后随即调用数据输出模块,对信息进行处理,产生相应的输出。
服务器程序的接收网络数据模块必须始终处于活动状态。
接收到数据后,调用数据处理/查询模块对数据库进行访问,完成后调用网络发送模块,将信息返回客户机。
3.2运行控制
运行控制将严格按照各模块间函数调用关系来实现。
在各事务中心模块中,需对运行控制进行正确的判断,选择正确的运行控制路径。
在网络传方面,客户机在发送数据后,将等待服务器的确认收到信号,收到后,再次等待服务器发送回答数据,然后对数据进行确认。
服务器在接到数据后发送确认信号,在对数据处理、访问数据库后,将返回信息送回客户机,并等待确认。
3.3运行时间
在软体的需求分析中,对运行时间的要求为必须对作出的操作有较快的反应。
网络硬件对运行时间有最大的影响,所以建议采用高速ATM网络。
其次硬件对本系统的速度影响将会大于软件的影响,建议使用PentiumIII处理器。
硬件对本系统的速度影响将会大于软件的影响。
4系统数据结构设计
4.1逻辑结构设计要点
passager表
乘客ID
姓名
性别
工作单位
旅行时间
旅行目的地
说明:
乘客表保存了所有定票旅客的个人信息和旅行信息。
主键为乘客ID。
Plane表
航班号
目的地
座位数
票价
起飞时间
剩余座位数
座位号分配
说明:
航班班次表保存了所有从本地起飞的班机信息,它的主键为航班号。
在定位前先查寻座位空数,在定位后将修改剩余座位号。
Ticket表
机票号
取票单号
座位号
说明:
机票表里存储了有关机票的信息。
主键为机票号。
Getticket表:
取票单号
乘客ID
航班号
起飞时间
订票数量
说明:
取票表里存储的是有关取票的核对信息和要取机票有关的信息。
4.2物理结构设计要点
物理数据结构设计主要是设计数据在模块中的表示形式。
数据在模块中都是以结构的方式表示。
旅客信息
通知单信息
5系统出错处理设计
5.1出错信息
程序在运行时主要会出现两种错误:
1、由于输入信息,或无法满足要求时产生的错误,称为软错误。
2、由于其他问题,如网络传输超时等,产生的问题,称为硬错误。
对于软错误,须在定票/领票操作成功判断及输入数据验证模块由数据进行数据分析,判断错误类型,再生成相应的错误提示语句,送到输出模块中。
对与硬错误,可在出错的相应模块中输出简单的出错语句,并将程序重置。
返回输入阶段。
5.2补救措施
所有的客户机及服务器都必须安装不间断电源以防止停电或电压不稳造成的数据丢失的损失。
在网络传输方面,可考虑建立一条成本较低的后备网络,以保证当主网络断路时数据的通信。
在硬件方面要选择较可靠、稳定的服务器机种,保证系统运行时的可靠性。
5.3系统维护设计
维护方面主要为对服务器上的数据库数据进行维护。
可使用SQLSERVER的数据库维护功能机制。
例如,定期为数据库进行Backup,维护管理数据库死锁问题和维护数据库内数据的一致性等
四详细设计规划
1.引言
1.1编写目的:
在本阶段中,我们对在本阶段中对系统所做的所有详细设计进行说明:
确定应该如何具体地实现所要求的系统,从而在编码阶段可以把这个描述直接翻译成用具体的程序语言书写的程序。
主要的工作有:
根据前阶段描述的数据、功能、运行、性能需求,及处理流程、总体结构和模块外部设计,设计软件系统的结构设计、逐个模块的程序描述(包括各模块的功能、性能、输入、输出、算法、程序逻辑、接口等等),解决如何
1.接受:
旅客信息及取票通知和账单;
2.输出:
取票通知和账单及机票;
3.网络输出,输入;
4.分辨信息的种类并采取相应的处理步骤;
5.判断信息的正误并采取相应的处理步骤;
6.进行数据库的查询、修改工作;
7.接受并判断错误,输出相应的出错消息。
1.2文中定义
数据库管理系统(DBMS)。
SQL:
一种用于访问查询数据库的语言
事务流:
数据进入模块后可能有多种路径进行处理。
主键:
数据库表中的关键域。
值互不相同。
外部主键:
数据库表中与其他表主键关联的域。
此部分由***完成
:
2.系统结构设计:
2.1系统结构图
3.模块设计
此部分由***完成
3.1登陆模块
1.模块描述
本模块的主要功能,是根据旅行社提供的预定机票的旅客信息,由操作员输入旅客信息,同时保存在数据库。
2.功能
主要是记录预定机票的旅客信息,是系统产生取票通知和账单的源数据。
3.性能
操作员输入预定机票的旅客信息后,数据库立即保存记录,并通过查询可以检测保存是否成功。
4.输入项
客户定票信息:
任意长度字符串,包括数字、汉字和英文字母。
5
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 机票 预订 实验 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)