软件工程导论实验报告航空订票系统_第1页
软件工程导论实验报告航空订票系统_第2页
软件工程导论实验报告航空订票系统_第3页
软件工程导论实验报告航空订票系统_第4页
软件工程导论实验报告航空订票系统_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、本科实验报告课程名称: 软件工程导论 实验项目: 航空订票系统 实验地点: * 专业班级: * 学号: * 学生姓名: * 指导教师: * 2012年 05 月 21 日可行性分析报告1项目背景机票预订工作的记录、查询、核对等工作量十分庞大,同时,操作相对简单且重复率很高,因此,可以利用计算机的管理信息系统进行这些繁杂而又简单的工作,以提高机票预定的工作效率、准确性、管理水平和服务质量 。因此开发机票预订系统。本机票预订系统是在现代社会生活节奏不断加快,对机票预订工作的自动化和准确化要求也日益强烈的背景下,为了实现机票预订工作的网络化,以及实现网络查询和统计一体化而开发的管理信息系统。该系统为

2、机票预订管理员提供了一个个性化的界面,并且机票预订管理员只需一次登录就可以使用所有服务;将订票旅客需要的各种服务集中起来,订票旅客可以很方便地进行自身信息和航班、票价情况查询。总之,从基本订票信息的录入到订票信息的查询,再到最终的信息核准打印机票,都可以通过这个系统完成。本系统采用最新的计算机技术,界面友好、操作方便,管理员可以针对不同需求分类、排序、查询、统计,方便订票旅客和其他部门根据自己的需求准确、快速地查询订票及航班信息。2可行性研究的前提1) 要求:主要功能:为游客提供机票预定服务,方便旅游局的售票工作,提高旅游局的服务质量和服务效率性能要求:机场提供的信息必须及时的反映在旅游局的工

3、作平台上。售票系统的定单必须无差错的存储在机场的主服务器上。对服务器上的数据必须进行及时正确的刷新。输出要求:数据完整,详实。输出要求:简捷,快速,实时。安全与保密要求:服务器的管理员享有对机场航班信息库及机票信息库和定票信息库的管理与修改。售票员只享有对订票信息库的部分修改(写入与读出)。2) 目标:系统实现后,大大提高旅游局的机票预定服务效率。降低售票服务中的错误发生率,减少信息交流的烦琐过程及其带来的开销。3) 条件,假定和限制:建议软件寿命:5年。运行环境:Linux数据库:SQL Server4) 决定可行性的主要因素:成本/效益分析结果,效益>成本。技术可行,现有技术可完全承

4、担开发任务。操作可行,软件能被原有工作人员快速接受。3技术可行性分析1) 系统简要描述在旅游局中的终端是安装了Windows NT的PC机,主要目的是向机场的服务器传递数据。当顾客在旅游局进行咨询时,终端向服务器发出查询请求,服务器根据航班信息库的实时数据,向终端发送数据,显示在终端的屏幕上。当顾客向售票员定票时,终端向服务器发出详尽的一份定单,服务器核对后,存入定票信息库,并修改机票信息库。当顾客再次来取票时,终端向服务器发出查询定票请求,服务器接收后,查询定票信息库,核对后,传送机票确认表单,终端打印出机票。2) 处理流程和数据流程机票核对事务客户机终端显示数据产生报表表单申请售票员客户机

5、终端显示数据产生报表 数据库售票员查询请求产生报表及账单服务器终端显示数据系统管理员产生报表事务航班信息的更新售票员在客户端打印机票和账单4社会因素可行性分析1) 法律因素所有软件都选用正版。所有技术资料都由提出方保管。合同制定确定违约责任。2) 用户使用可行性使用本软件人员要求有一定计算机基础的人员,系统管理员要求由计算机的专业知识,所有人员都要经过本公司培训。管理人员也需经过一般培训。经过培训人员将会熟练使用本软件。两名系统管理员,一名审计员将进行专业培训,他们将熟练管理本系统。5其他可供选择的方案客户端与服务器端联系在一起 在旅游局中只设立终端,在机场设立服务器,数据输入由终端输入,所有

6、数据都由服务器处理,只在终端上显示数据结果。 此设计简化了数据处理,但加重了服务器的数据处理。而使用客户端/服务器机理,简化数据流量,加快数据处理。 6结论意见由于投资效益比远大于100%,技术、经济、操作都有可行性,可以进行开发。“机票预订系统”的需求分析需求分析是开发软件系统的重要环节,是系统开发的第一步和基础环节。通过需求分析充分认识系统的目标、系统的各个组成部分、各部分的任务职责、业务范畴、工作流程、工作中使用的各种数据及数据结构、各部门的业务关系和数据流程等,为系统设计打下基础。需求分析的好坏往往决定了系统开发的成败。需求分析从系统的调查研究入手,需求分析要对系统的各个方面有全面的了

7、解,既包括系统内部的各个方面,也包括与系统有联系的各种外部因素。通过调查研究和分析,对系统产生比较深刻的认识。需求分析阶段的最终结果是“需求分析说明书”,它涵盖了对用户环境、事务处理和信息流程分析的一切成果,供项目开发小组和用户共同遵守。如果采用瀑布模型,就要对“需求分析说明书”进行冻结,使它成为凝固可靠的基线。万一要求变更基线,开发者和用户双方,都必须执行基线变更程序,此变更程序在合同中已做了明确规定。现针对“机票预订系统”对机票预订部门的组织结构、业务流程、用户角色职能、系统数据流进行分析。利用结构化分析和UML中的用例从大到小、从粗到细进行系统建模。1、 组织结构调查系统的组织结构,反映

8、了单位内部各个部门的职责划分和它们之间的关系。为了对系统有一个全貌性的了解,首先要对系统内部部门结构、人员组织及用户情况有所了解。对系统组织结构的调查,是从总的方面对系统进行宏观了解和分析。信息的流动关系是以组织结构为背景的,而且总是伴随着组织部门之间的资金流和物流的传递而产生。机票预订系统的组织结构如图 1所示。图1 系统组织结构图机票预订由机票预定部门全面负责,下设信息管理部、票务部、客服部三个部门的业务职责如下:l 信息管理部:管理基本信息、主要包括旅客基本信息的查询、更改、删除;航班信息的添加、查询、更改、删除。l 票务部:管理各种票据,主要包括根据订票信息和航班信息打印账单和取票通知

9、、核对账单和取票通知以及交款信息,无误则打印机票并发放。l 客服部:为订票旅客提供实时服务,主要包括投诉咨询受理,和售前售后支持。2、系统用户分析“机票预订系统”主要是针对机票预订工作而开发的应用软件。通常有系统管理员、机票预订管理员和订票旅客三种用户,他们的使用权限如下:l 系统管理员:对系统、数据库进行维护,主要对不同人员赋予不同的权限。l 机票预订管理员:对机票预定工作进行具体的操作。l 订票客户:一般操作水平,能够在本系统查询个人信息和订票信息。(由于水平有限,做出来的系统不包含此功能)3、UML用例图建模图 2是根据用户的职能建立的用例图。图2 用例图图 2中<<incl

10、ude>>表示包含关系,表示被包含用例是被多个包含用例使用的一个可复用模块,而<<extends>>表示对用例的扩展。4、数据流图数据流图是全面描述系统逻辑模型的工具,它抽象概括地把系统中各种业务处理过程联系起来。 在画“机票预订系统”的数据流图时,首先要画出整个顶层图,以保证对整个系统的概况有个整体了解,然后把顶层图中的细节用下一层次的数据流程图来表示,按照由粗到细、逐层细化的原则对系统的各个模块进行深入的分析。图 3是“机票预订系统”的顶层数据流图。图 3 顶层数据流图顶层数据流图只是粗略地给出了整个系统的数据流情况,为了更好地把“机票预订系统”中各个模

11、块的具体数据流处理细节表示出来,可以在顶层图的基础上自顶向下地继续分解,得到1层和2层数据流程图,如图4和5所示。图4 1层数据流图图5 2层流程图虽然1层数据流图对“机票预订系统”的顶层数据流图进行了细化,但是1层数据流图仍然不够详细,因此对1层数据流图中个别复杂的加工进一步细化,单独画出一张数据流图,如图 5至图6所示。图6 订票处理的细化流程图图7 取票处理的细化流程图5、数据字典为了对数据流图中各元素进行详细的说明,采用了数据字典的说明方法。由于篇幅限制,仅对机票预订系统数据流图的部分数据字典举例说明如下:l 数据流条目(1)数据流名称:旅客信息简 述:订票旅客基本信息及订票要求数据流

12、来源:旅客确定订票后,由订票管理人员编码整理后,输入计算机数据流去向:加工1安排航班,该加工将录入的数据存入数据库(订票基本信息表)数据项组成:身份证号+姓名+性别+工作单位+旅行日期+旅行时间+旅行目的地+联系方式数据流量: 0人/天高峰流量:1000人/天(2)数据流名称:订票信息简 述:航班安排结果数据流来源:旅客信息和航班信息数据流去向:加工2,打印通知和账单数据项组成:身份证号+姓名+性别+班次+航班起飞时间+航班到达时间+航班目的地+票价数据流量:0次/天高峰流量:1000次/天(3)数据流名称:航班信息简 述:航班基本信息数据流来源:加工1.4航班管理数据流去向:加工1.2安排数

13、据项组成:航班日期+航班起飞时间+航班到达时间+航班目的地+班次+票价+票余量数据流量:0次/天高峰流量:1000次/天(4)数据流名称:取票通知和账单信息简 述:返回给旅客的航班安排结果及旅 客取票时用来核对的凭证数据流来源:加工2打印取票通知和账单数据流去向:加工3核对订票信息数据项组成:身份证号+姓名+性别+班次+航班日期+航班时间+航班目的地+票价数据流量:0次/天高峰流量:1000次/天(5)数据流名称:订票信息核对正确简 述:将旅客的取票通知和账单与系统中的订票信息核对,二者一致产生的信息数据流来源:加工3核对订票信息数据流去向:加工4收费数据项组成:身份证号+姓名+性别+班次+

14、航班日期+航班起飞时间+航班目的地+票价数据流量: 0人次/天高峰流量:1000人次/天(6)数据流名称:收费信息简 述:对订票信息核对正确的旅客收费产生的信息数据流来源:加工4收费数据流去向:加工5打印机票数据项组成:身份证号+姓名+性别+班次+航班日期+航班起飞时间+航班目的地+票价数据流量: 0人次/天高峰流量:1000人次/天l 加工条目(1)加 工 名:安排航班处理逻辑编号:1.1处理逻辑:接收旅客信息的录入,并检查有无错误,如果没有错误,将数据存入订票信息表,并在航班信息表里查找符合旅客订票信息的相应航班,生成订票信息激发条件:接收到旅客信息时输 入:旅客信息输 出:订票信息(2)

15、加 工 名:打印通知和账单编 号:1.2处理逻辑:由生成的订票信息,打印取票通知和账单 激发条件:接收到已经安排了航班的订票信息时输 入:订票信息输 出:通知和账单信息(4)加 工 名:核对机票信息编 号:2.1处理逻辑:对旅客订票信息进行核对激发条件:接收到旅客的取票通知和账单输 入:无输 出:“订票信息正确”的信息(4)加 工 名:收费编 号:2.2处理逻辑:对订票信息核对正确的旅客进行收费,收费后生成收费信息激发条件:接收到订票信息核对正确的信息并收到旅客交费要求输 入:交费信息输 出:打印机票信息(5)加 工 名:打印机票编 号:2.3处理逻辑:由打印机票信息打印机票激发条件:收到打印

16、机票的信息输 入:无输 出:机票 l 数据存储条目(1)数据存储编号:D1数据存储名称:订票信息表简 述:存储旅客详细信息及订票要求组 成:旅客身份证号+姓名+性别+工作单位+航班起飞时间+航班到达时间+旅行目的地关 键 字:旅客身份证号组织方式:索引文件,以旅客身份证号为关键字相关联的处理:加工1、加工3l 数据项条目(1)数据项名称:身份证号简 述:表明每个人身份的证件号组 成:籍贯代码+出生年月日+其他代码码类 型:字符长 度:20位取值范围:数字0-9,字母a-x(2)数据项名称:姓名简 述:旅客姓名组 成:姓名类 型:字符长 度:10位取值范围:汉字或字母(3)数据项名称:性别简 述

17、:旅客性别组 成:男或女类 型:字符长 度:2位取值范围:男或女(4)数据项名称:联系方式简 述:联系电话组 成:数字类 型:字符长 度:15位取值范围:数字0-9(5)数据项名称:班次简 述:航班班次组 成:航班类型+航班号码类 型:字符长 度:10位取值范围:字母+数字(6)数据项名称:航班日期简 述:航班起飞的日期组 成:年月日类 型:日期长 度:10位取值范围:正确的年月日(7)数据项名称:航班起飞时间简 述:航班起飞的时间组 成: 时分类 型:时间长 度:20位取值范围:正确的时分(8)数据项名称:航班到达时间简 述:航班到达的时间组 成:年月日+时分秒类 型:字符长 度:20位取值

18、范围:正确的年月日和时分秒(9)数据项名称:航班目的地简 述:航班飞往的目的地组 成:国家或地区+机场类 型:字符长 度:10位取值范围:汉字或英文(10)数据项名称:票价简 述:相应航班对应机票的价格组 成:数字+货币单位类 型:浮点型长 度:8位取值范围:数字0-9(11)数据项名称:票余量简 述:机票剩余数量组 成:数字类 型:整型长 度:4位取值范围:数字0-9 6、IPO图机票预订工作应完成的多个功能,如图 8的IPO图所示。图8 IPO图7、用户其他需求1. 性能要求查询服务部分:旅客通过本地计算机,从提交查询命令到返回结果不超过3秒钟。数据管理部分:系统管理员从提交一次录入到结果

19、返回不超过3秒钟。2. 灵活性要求如果要为数据项设计编码,尽可能采用行业标准,自行编码也应合乎规范,并留有扩充余地,还要征得相关业务部门认可。数据库设计也应考虑可扩充性,以适应今后机票预订规模发展和系统升级的需要。3. 故障处理要求正常使用时不应出错,一般性错误时应给出错误提示。应提供定期自动备份数据库的功能,当遇到不可恢复的系统错误,可以保证数据库完好无损。在系统出错后,应能恢复最近一次备份数据库的状态。4. 其他要求安全性:不同的用户具有不同的使用权限,只有具有最高权限的系统管理员才能修改、注销数据库中的信息,具有一般权限的人员只能读取与自己相关的内容。一致性:系统的数据要保证一致性、准确

20、性,当某一数据库中记录改变时,与之相关联的数据库也会随之变化。易操作性:界面设计要符合大多数用户的操作习惯,系统还要提供操作指南,便于用户操作使用。1、系统结构设计系统功能模块的划分概要设计的核心问题是确定系统总体结构和模块划分。系统功能要层层划分,直到每一个模块可以作为一个可以执行的程序单元为止。功能模块划分的最终结果,是系统结构图。根据需求分析,该机票预订系统可由航班管理、旅客管理、订票管理、系统管理、系统帮助等子系统组成,如图 9所示。图9 系统结构图各子系统的主要功能如下:(1) 航班管理子系统即管理和维护航班的各项数据信息,包括航班的启程时间与到达时间、目的地、班次、价格以及票余量。

21、允许业务员和系统管理员添加、更新和删除航班信息和查询航班信息。该子系统功能由flight模块完成。(2)旅客管理子系统:即管理和维护旅客的各项数据信息,包括旅客身份证号码、姓名、性别、工作单位、旅行时间、旅行目的地等。允许业务管理员和系统管理员添加、更新、删除和查询旅客信息。该子系统功能由guest模块完成。(3)订票管理子系统即管理和维护旅客的订票信息的各项数据,包括身份证号、姓名、性别和航班日期、航班目的地、班次、价格等信息。允许业务管理员和系统管理员添加、更新、删除以及查询订票信息,并进行航班的安排,打印取票通知和账单的打印,订票信息的核对,收费以及机票的打印。而旅客只能查询自己的订票信

22、息。该子系统功能由book模块完成。(4)系统管理子系统即管理和维护用户的各项数据信息,包括管理员ID、姓名和密码。主要有添加、删除和修改用户信息、修改用户密码、系统初始化和系统备份、系统恢复等5项功能。用户类型决定了用户的权限管理,系统定义了2种用户权限:第1种是机票预订管理员,能查询、添加、删除和修改订票信息、航班和客户的信息数据,还能根据航班和订票信息为客户安排航班,以及核对通知、账单和订票信息;第2种是一般用户,能够自行注册和登陆,能够查询个人相关的信息。该子系统功能由arrangement模块完成。(5)系统帮助子系统即为用户提供操作帮助,解决用户使用过程中遇到的一般性问题。该子系统

23、功能由help模块完成。2、数据库设计数据库是应用系统的核心,应当精心设计,以保证系统的正确、可靠、高效运行。数据库设计包括数据库需求分析、数据库概念设计、数据库逻辑结构设计和数据库物理设计。数据库设计的目的,是为信息系统在数据库服务器上建立一个理想的数据模型。1. 数据库需求分析机票预订系统的数据库主要用于航班信息、旅客信息、订票信息的管理,因此数据库设计必须充分满足这些功能要求。根据系统结构设计中各子系统的功能要求,可确定数据库的具体需求如下:(1)航班信息管理部分:管理员可对航班信息进行维护,如添加、修改、删除和查询航班信息等。班次为关键字段(2)旅客信息管理部分管理员可对旅客信息数据进

24、行维护,如添加、修改、删除和查询旅客信息。旅客身份证号为关键字段(3)订票信息管理部分系统根据旅客信息和航班信息安排航班,生成订票信息管理员可对订票信息数据进行添加、修改、删除和查询订票信息。航班号和旅客身份证号应该设为关键字段。订票信息生成后打印通知和账单,息管理员将通知和账单交给客户。管理员将订票信息和通知、账单核对,核对无误后收费并打印机票。订票信息记录中的旅客身份证号是旅客信息表的外码。订票信息记录中的航班号是航班信息表的外码。(4)系统管理部分系统用户可以注册添加账户,登陆后查询个人信息和订票信息。系统管理员添加、删除和修改系统用户信息、修改用户密码。系统管理员可以对系统进行初始化和

25、系统备份、系统恢复。2. 数据库概念设计根据数据库的需求分析,接着开始数据库概念设计。数据库概念设计是指设计出数据库的概念数据模型,即实体-联系图(简称E-R图)。这里给出E-R模型,如图 10 所示。图 10 实体联系图3. 数据库逻辑结构设计数据的概念结构设计完毕后,要将设计出来的数据库概念模型转化为某种数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。机票预订系统的数据库中各个数据表的设计结构如表1表3 所示。数据库命名为flight reservation MIS,由 3个数据表组成,数据表的命名采用拼音综合,每个表由若干字段组成,字段用汉字命名。下面设计表的具体字段。(1) 旅

26、客信息表:存放旅客基本信息,表1列出了旅客信息表所有字段信息。字段类型长度允许空主键身份证号码字符20否姓名字符10是 性别字符2是 工作单位字符30是 旅行时间字符20是 旅行目的地字符10是 联系方式字符15是 表1 旅客信息表guest(2)航班信息表:存放航班基本信息,表2列出了航班信息表所有字段信息。字段类型长度允许空主键班次字符10否航班时间字符10否航班起飞时间字符20否 航班到达时间字符20否 航班目的地字符10否 票价浮点型数字8否 票余量整数4否 表2 航班信息表f

27、light(3)订票信息表:存放订票信息,表3列出了订票信息表所有字段信息。字段类型长度允许空主键身份证号码字符20否姓名字符10是 性别字符2是 班次字符10否航班起飞时间字符20是 航班到达时间字符20是 航班目的地字符10是 票价浮点型数字8是 表3 订票信息表book(4)旅客注册表:存放旅客注册信息,表4列出了旅客注册表所有字段信息。字段类型长度允许空主键用户名1020否密码字符6否 真实姓名字符10是 年龄字符4是性别字符2是 工作单位字符30是 表4 订票信息表guestzc(5)

28、管理员注册表:存放旅客注册信息,表4列出了旅客注册表所有字段信息。字段类型长度允许空主键用户名1020否密码字符6否 真实姓名字符10是 年龄字符4是性别字符2是 工作单位字符30是 表5 管理员注册表guestzc3、数据库物理设计数据库物理设计是指设计出数据库的物理数据模型,它是数据库在物理设备上的具体实现,即数据库服务器物理空间上的表空间、表、字段、索引、视图、存储过程、触发器以及相应的数据字典的设计。经过数据库的需求分析和概念模型设计,得到数据库的逻辑结构。现在可以设计好的逻辑结构在SQL server 2000中建立数据库及数据库中的数据表。

29、航班安排功能的介绍输入具体的旅客信息后,单击“可选航班”按钮(如图23 所示),即出现可供旅客选择的某一天的多条航班信息,根据旅客的选择,确定到底预订哪一班次,然后单击“安排航班”按钮,生成某一旅客确定的订票信息。图23 航班安排界面订票功能代码航班安排部分代码Private Sub Command1_Click()Adodc1.RecordSource = "select * from flight where 航班日期 = '" & Text3.Text & "' and 航班目的地 = '" & Te

30、xt4.Text & "'"Adodc1.RefreshDataGrid1.Visible = TrueIf Text1.Text <> "" And Text2.Text <> "" And Text3.Text <> "" And Text4.Text <> "" Then Adodc2.Recordset.AddNew Text1.SetFocus Adodc2.Recordset.Fields("身份证号码&quo

31、t;) = Text1.Text Adodc2.Recordset.Fields("姓名") = Text2.Text If Option1.Caption <> "" And Option2.Caption = "" Then Adodc2.Recordset.Fields("性别") = Option1.Caption ElseIf Option2.Caption <> "" And Option1.Caption = "" Then Adodc2

32、.Recordset.Fields("性别") = Option2.Caption End If Adodc2.Recordset.Fields("工作单位") = Text5.Text Adodc2.Recordset.Fields("旅行时间") = Text3.Text Adodc2.Recordset.Fields("旅行目的地") = Text4.Text Adodc2.Recordset.Fields("联系方式") = Text6.TextElseMsgBox "请输入完

33、整的旅客信息!", vbInformation + vbOKOnly, "信息不完整"End IfEnd SubPrivate Sub Command2_Click()If DataGrid1.Visible = True ThenFdy.ShowElseMsgBox "请先查询航班", 64, "警告"End IfEnd SubPrivate Sub Command3_Click()Unload MeEnd SubPrivate Sub Command4_Click()Text1.Text = ""Te

34、xt2.Text = ""Text3.Text = ""Text4.Text = ""Text5.Text = ""Text6.Text = ""Text7.Text = ""Text8.Text = ""Text9.Text = ""Text10.Text = ""Text11.Text = ""End SubPrivate Sub Command5_Click()Adodc1.RecordSo

35、urce = "select * from flight where 航班日期 = '" & Text3.Text & "' and 航班目的地 = '" & Text4.Text & "'"Adodc1.RefreshDataGrid1.Visible = TrueText1.SetFocus If Text1.Text <> "" And Text2.Text <> "" And Text3.Text <> "" And Text4.Text <> "" Then Text1.SetFocus Adodc2.Recordset.Fields("身份证号码") = Text1.Text Adodc2.Recordset.Fields("姓名") = Text2.T

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论