收藏 分享(赏)

软件工程课程设计机票预定系统.doc

上传人:gsy285395 文档编号:9132493 上传时间:2019-07-25 格式:DOC 页数:41 大小:319.05KB
下载 相关 举报
软件工程课程设计机票预定系统.doc_第1页
第1页 / 共41页
软件工程课程设计机票预定系统.doc_第2页
第2页 / 共41页
软件工程课程设计机票预定系统.doc_第3页
第3页 / 共41页
软件工程课程设计机票预定系统.doc_第4页
第4页 / 共41页
软件工程课程设计机票预定系统.doc_第5页
第5页 / 共41页
点击查看更多>>
资源描述

1、1机票预订系统设计与实现一、可行性研究1 引言1.1 编写目的本文从各个方面讲解了机票预订系统在市场中的作用,以及说明机票预订系统能给旅客、航空公司和旅行带来的好处,为各个方面提供方便。本文读者是航空公司分管售票方面的经理。1.2 项目背景a. 开发软件的名称:机票预订系统b. 项目的任务提出者:航空公司c. 开发者:修宇(1)班软件工程课程设计第五小组d. 用户:国内各大航空公司e. 项目与其他软件或其他系统的关系:本系统采用客户机/服务器原理,客户端的程序是建立在 Windows NT 系统上以 PowerBuilder9.0 为开发软件的应用程序,服务器端采用 Linux 为操作系统的工

2、作站,系统中是采用 Sysbase Adaptive Server Anywhere 为开发软件的数据库服务程序。1.3 定义数据库管理系统(DBMS) 。SQL: 一种用于访问查询数据库的语言事务流:数据进入模块后可能有多种路径进行处理。主键:数据库表中的关键域。值互不相同。外部主键:数据库表中与其他表主键关联的域。1.4 参考资料1.张海藩.软件工程导论(第四版) ,清华大学出版社,20032.郑人杰等.实用软件工程(第二版) ,清华大学出版社,199723.Software Engineering A Practioners Approach,Roger S.Pressman,(英文版,

3、第 5 版),机械工业出版社McGraw-Hill,20014.文斌,刘长青,田园.软件工程与软件文档写作,清华大学出版社,20065. http:/msdn.M http:/7.中国期刊全文数据库 http:/211.86.225.6/kns50/index.aspx8.数字化期刊 http:/202.38.93.7/wf/html_outside/szhqk/index.html2 可行性研究前提2.1 要求a. 主要功能:为游客提供机票预订服务,方便旅游局的售票工作,提高旅游局的服务质量和服务效率。b. 性能要求:机场提供的信息必须及时的反映在旅游局的工作平台上。售票系统的订单必须无差错

4、的存储在机场的主服务器上。以服务器上的数据必须进行及时正确的刷新。c. 输入要求:数据完整,详实。d. 输出:简捷,快速,实时。e. 基本的数据流程和处理流程:略。f. 安全与保密要求:服务器的管理员享有对机场航班信息库及机票信息库和弃权票信息库的管理与修改,售票员只享有对订票信息库的部分修改(写入与读出) 。g. 完成期限:预计一个星期2.2 目标系统实现后,大大提高旅游局的机票预订服务效率。降低售票服务中的错误发生率,减少信息交流的烦琐过程及其带来的开销。2.3 条件、假定和限制a. 建议开发软件运行的最短寿命:5 年b. 经费来源和使用限制:X X 航空公司3c. 硬件条件:服务器 IB

5、M 工作站d. 软件环境:终端为普通 PC 机e. 运行环境:Microsoft Windows XP Professionalf. 开发环境:Windows XP 下的 PowerBuilder 9.0g. 数据库:Adaptive Server Anywhere2.4 可行性研究方法2.5 决定可行性的主要因素成本/效益分析结果,效益成本。技术可行,现有技术可完全承担开发任务。操作可行,软件能被原有工作人员快速接受。3 技术可行性分析3.1 对系统的简要描述在旅游局中的终端安装 Windows NT 的 PC 机,主要上报是向机场的服务器传递数据。当顾客在旅游局进行咨询时,终端向服务器发出

6、查询请求,服务器根据航班信息库的实时数据,向终端发送数据,显示在终端的屏幕上。当顾客向售票员订票时,终端向服务器发出一份订单,服务器核对后,存入订票信息库,并修改机票信息库。当顾客再次来取票时,终端向服务发出查询订票请求,服务器接收后,查询订票信息库,核对后,传送机票确认表单,终端打印出机票。3.2 处理流程和数据流程系统管理员事务航班信息的更新服务器终端显示数据产生报表售票员 查询请求数据库 产生报表 客户机终端显示数据售票员 表单申请 产生报表 客户机终端显示数据售票员在客户端打印机票和帐单产生报表及帐单机票核对事务43.3 与现有系统比较的优越性现行系统问题:系统效率低、主要用人工记录、

7、人工操作;错误率高;安全系数低。建议方案:客户端与服务器端联系在一起。在订票机构中只设立终端,在机场设立服务器,数据输入由终端输入,所有数据都由服务器处理,只在终端上显示数据结果。此设计简化了数据处理,但加重了服务器的数据处理。而使用客户端/服务器机理,简化数据流量,加快数据处理。3.4 技术开发的可行性a. 本系统尽管其在组织关系上存在着很大的复杂性、繁琐性,但是就整个系统的技术构成上来看,它还是属于一个数据库应用类的系统。其基本操作还是对数据库进行添加、删除、浏览、编辑等。所以就单纯的数据库应用来看,暂不存在太大的技术问题b. 因为我们的小组学习过专业的计算机方面的知识,且所开发的系统公需

8、实现基本功能,所以开发人员在数量的和质量都能满足系统的要求,并按时完成助用户所需要的基本功能。4 经济可行性分析对于整个系统而言,在系统未运行之前,初期投资比较大,花费相对而言比较多。各部门必须配置电脑、服务器、打印机及相关的网络设备。但是,在整个系统投入运行之后,因为现在计算机已经普及了,相关的人员培训费可以减少很多。而同时又减少了数据的流通环节,不必要花费那么多的时间,也就是说最重要的是提高了效率,而又保证了各项数据的准确性,也避免了工作人员的流动造成的数据丢失等问题,适应了当前的发展形式。5 社会因素可行性分析5.1 法律因素a.所有软件都选用正版b.所有技术资料都由提出方保管5c. 制

9、定合同确定违约责任5.2 用户使用可行性随着时代的发展,人员素质己逐步提高,不论是对于电脑系统的基本操作还是对于系统的维护都有了一定的基础。同时还可以配置专业的电脑维护人员来维护电脑,不必担心电脑故障问题。经过培训的人员将会熟练使用本软件。6 其他可供选择的方案客户端与服务器端联系在一起,在旅游局中只设立终端,在机场设立服务器,数据输入由终端输入,所有数据都由服务器处理,只在终端上显示数据结果。此设计简化了数据处理,但加重了服务器的数据处理。而使用客户端/服务器机理,简化数据流量,加快数据处理。7 结论意见由于该系统能大幅度提高售票人员的工作效率,技术、操作都有可行性,可以进行开发。6二、项目

10、开发计划1引言1.1 编写目的本文从各个方面讲解了机票预订系统在市场中的作用,以及说明机票预订系统能给旅客、航空公司和旅行带来的好处,为各个方面提供方便。本文读者是航空公司分管售票方面的经理。1.2 项目背景a.项目的委托单位: X X 航空公司b.软件工程课程设计修宇(1)班第五组c.该软件系统与其他系统的关系:本系统采用客户机/服务器原理,客户端的程序是建立在 Windows NT 系统上以 PowerBuilder9.0 为开发软件的应用程序,服务器端采用 Linux 为操作系统的工作站,系统中是采用 Adaptive Server Anywhere 为开发软件的数据库服务程序。1.3

11、定义专门术语、缩写词:略1.4 参考资料1.张海藩.软件工程导论(第四版) ,清华大学出版社,20032.郑人杰等.实用软件工程(第二版) ,清华大学出版社,19973.Software Engineering A Practioners Approach,Roger S.Pressman,(英文版,第 5 版) ,机械工业出版社McGraw-Hill,20012项目概述2.1 工作内容机票预定系统在各旅行社把预定机票的旅客信息(姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地等)输入到该系统,系统为旅客安排航班。当旅客交付了预定金后,系统印出取票通知和账单给旅客,旅客在飞机起飞的前一天

12、凭取票通知和账单交款取票,系统核对无误即印出机票给旅客。此外航空公司为随时掌握各航向飞机的乘载情况,需定期进行查询统计,以便适当调整。72.2 条件与限制(1)在分析系统功能时要考虑有关证件的合法性验证(如身份证、取票通知、交款发票等)(2)对于本系统还应补充以下功能:a.旅客延误了取票时间的处理b.班机取消后的处理;c.旅客临时更改机票班次的处理;d.系统的外部项至少包含三个:旅客、旅行社和航空公司2.3 产品2.3.1 程序程序名称:机票预订系统使用的语言:PowerBuilder 9.02.3.2 文档系统在开发过程中,经历了可行性研究、需求分析、详细设计、软件编码与测试,并在系统开发的

13、同时撰写可行性研究报告、项目开发计划说明书、需求分析说明书、详细设计说明书、测试分析报告等。2.4 运行环境硬件环境:服务器 IBM 工作站软件环境:Linux,终端为 PC 机2.5 服务软件开发完成后,开发者应免费为系统使用者进行安装、保修服务,并由开发人员对使用方的使用本软件人员进行软件使用的基本培训,系统管理员必须要求有专业的计算机知识,所有人员都要经过本公司培训。在系统运行的时间里,开发人员要负责对系统进行维护,并满足用户对软件升级的需要。2.6 验收标准完成程序的基本功能,销售员要能进行旅客订票、退票,管理员能进行航班处理(取消航班、修改航班时间、开通新航班)3实施计划83.1 任

14、务分解组长:胡慧 组员:陆万波、胡慧、文磊、查志力、许海波、毕文攀陆万波:主要负责可行性分析部分。胡 慧:主要负责人员的组织安排及撰写项目开发计划、需求分析。查志力:主要负责详细分析部分。许海波:主要负责软件编码和系统实现。毕文攀:主要负责软件编码和软件测试。3.2 进度主要任务 时间期限 主要负责人可行性研究 2008-12-29-2008-12-29 陆万波需求分析 2008-12-29-2008-12-30 胡慧概要设计 2008-12-30-2008-12-30 文磊详细设计 2008-12-31-2009-12-1 查志力详细编码 2009-1-1-2007-1-2 许海波软件测试

15、2009-1-3-2009-1-4 毕文攀4交付期限本系统计划于 1 月 4 日前交付使用9三、需求规格说明书1引言1.1 编写目的需求规格说明书是感动弄清楚用户对开发软件应用系统的确切要求,本阶段对所要做的系统做需求分析,建立是在前面的可行性研究基础上的。主要解决了实现该系统的数据字典及功能需求问题。包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。在以下的详细设计报告中将对在本阶段中对系统所做的所有分析进行详细的说明。 在下一阶段的详细设计中,程序设计员可参考本阶段对机票预定系统所做的模块结构设计的基础上,对系统进行详细设计。在以

16、后的软件测试以及软件维护阶段也可参考此说明书,以便于了解在需求分析过程中所完成的各模块设计结构,或在修改时找出在本阶段设计的不足或错误。1.2 项目背景a.开发软件的名称:机票预订系统b.项目的任务提出者:航空公司c.开发者:修宇(1)班软件工程课程设计第四小组d.用户:国内各大航空公司e.项目与其他软件或其他系统的关系:本系统采用客户机/服务器原理,客户端的程序是建立在 Windows NT 系统上以 PowerBuilder9.0 为开发软件的应用程序,服务器端采用 Linux 为操作系统的工作站,系统中是采用 Adaptive Server Anywhere 为开发软件的数据库服务程序。

17、1.3 定义专门术语和缩写词:略1.4 参考资料1.张海藩.软件工程导论(第四版) ,清华大学出版社,2003102.郑人杰等.实用软件工程(第二版) ,清华大学出版社,19973.Software Engineering-A Practioners Approach,Roger S.Pressman,(英文版,第 5 版),机械工业出版社McGraw-Hill,20014.文斌,刘长青,田园.软件工程与软件文档写作,清华大学出版社,20065.软件需求与估算,Swapna Kishore,Rajesh Naik(印)著,姜路 丁一夫 柳剑锋译,机械工业出版社2任务概述2.1 需求概述航空公司

18、为方便旅客,需开发一个机票预定系统。为便于旅客由旅行社代替航空公司负责为旅客定票,旅行社把预定机票的旅客信息,包括姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地,输入机票预定系统的客户端程序,系统经过查询航空公司内的航班数据服务器后,为旅客安排航班,印出取票通知。旅客在飞机起飞前一天凭取票通知和账单交款后取票,系统校对无误后即印出机票给旅客。要求系统能有效、快速、安全、可靠和无误的完成上述操作。并要求客户机的界面要简单明了,易于操作,服务器程序利于维护。2.2 系统目标系统实现后,大大提高旅游局的机票预订服务效率。降低售票服务中的错误发生率,减少信息交流的烦琐过程及其带来的开销。2.3

19、 运行环境操作系统:Microsoft Windows XP Professional数 据 库:Adaptive Server Anywhere2.4 条件与限制(1)在分析系统功能时要考虑有关证件的合法性验证(如身份证、取票通知、交款发票等) 。(2)对于本系统还应补充以下功能:旅客延误了取票时间的处理;班机取消后的处理;旅客临时更改机票班次的处理。11(3)系统的外部项至少包含三个:旅客、旅行社和航空公司。3.系统结构设计:3.1 数据流图 顶层数据流图:旅行社机票预定系统 旅客取票通知单旅客信息 机票取票通知单图 1 本系统的顶层数据流图1.0信息审核旅客信息取票通知单取票通知单有效的

20、2.0订票操作不合法输入3.0审核处理合法旅客信息取票通知单机票图 2 0 层数据流图12旅行社旅客信息2.1机票查询旅客信息 有效订票信息2.2表单申请1.1信息录入2.3打印取票信息取票通知单旅客3.2打印机票机票信息3.1交款有效取票票通知单1.2审核取票票通知单航班目录文件订单信息库订票信息账单文件账单信息信息账单信息旅客机票图 2 本系统的二层数据流图4数据描述4.1 静态数据订票单、取票通知单、帐单、机票4.2 动态数据旅客姓名、身份证、航班时间4.3 数据词典1.旅客信息名字:旅客信息别名:passenger information描述:旅客的个人信息,用于对旅客的确认定义:旅客

21、信息=姓名+性别+工作单位+身份证号码+旅行时间+旅行目的地13位置:输入到旅行社端(client 端)2. 订票旅客清单名字:订票旅客清单别名:list描述:已订票的旅客的记录定义:订票旅客清单=旅客信息的合集位置:输入到旅行社端(Client 端)3.订票信息名字:订票信息别名:booked information描述:旅客的旅行时间和目的地,用于确定旅客的航班定义:订票信息=旅客旅行时间+旅客旅行目的地位置:传输到航空公司端(Server 端)4.航班机票信息名字:航班机票信息别名:Bill Information描述:旅客的航班信息,根据旅客的旅行时间和目的地确定定义:航班机票信息=旅

22、客机票时间+旅客机票班次位置:传输到旅行社端(Client 端)5取票通知名字:取票通知别名: notification描述:旅客领取机票的凭证定义:取票通知=旅客姓名+领票时间位置:输出到打印机6.售出机票信息名字:售出机票信息别名:saled描述:旅客的航班机票的信息定义:售出机票信息=旅客的航班机票位置:输出到打印机7旅客订票记录名字:旅客订票记录别名:record描述:已订票的旅客在航空公司的记录定义:旅客订票记录=旅客姓名+航班机票信息位置:输出到航空公司端(Server 端)5功能需求14机票预定系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件

23、,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现航空公司的机票销售的自动化的计算机系统,为企业的决策层提供准确、精细、迅速的机票销售信息。 根据可行性研究的结果和客户的要求,分析现有情况及问题,采用Client/Server结构,将机票预定系统划分为两个子系统:客户端子系统,服务器端子系统。 下面分析各个子系统的功能需求: 51 客户端子系统: 在客户端系统的功能实现上,可以分为以下几个部分: 1旅客信息的输入和统计 旅行社把旅客要求订票的信息由专人负责输入。这部分功能是客户端子系统 的基本部分,这个功能是以后各个部分的基础。系统要求做到即能够从其它子

24、系 统中共享一部分信息,又有方便的操作界面工手工输入旅客信息。这部分要求对 输入的数据进行简单的统计,供航空公司进行查询和宏观调控。 2旅客信息的存储:将旅客的信息存储到旅行社的客户端系统中,以备以后的取票确认以及查 询。 3机票信息的传递及接收:将旅客所须的机票信息由旅行社客户端由网络传到航空公司的服务器上,并 且接受航空公司返回的航班信息,然后存储起来。 4取票通知及帐单的生成和打印: 把已存储的从航空公司返回的航班机票信息打印出来,并且生成帐单打印出来一起交给旅客。 印出机票给已经订票的旅客:根据旅客的取票通知及帐单,经过确认无误后,接受旅客的付款后把机票印出来交给旅客。 5机票销售情况

25、的核算 这一功能是在上一功能的基础上,对机票销售额进行单项核算,得到该旅行15社的销售情况并把核算结果作为企业报表输出。 52 服务器端的功能要求: 通过计算机网络将客户端与服务器的数据库相连,将从客户端得到的信息进行处理,实现航班查询,机票生成,销售统计,综合信息查询等子系统。以计算机成本核算为中心,实现销售业务的计算机自动化,为航空公司降低成本、提高销售额、经营决策提供及时精确的依据。 在服务器端系统的功能实现上,可以分为以下几个部分: 1接收由旅行社客户端发回的所需机票信息: 通过网络接收机票信息并存入到服务器的数据库中。 2生成航班信息:根据所需机票信息(时间,地点),在数据库中查询并

26、得到正确的航班的信息(价格,时间,等级),分配所需的机票数并在数据库中做出已售出的标记。 3传递航班信息到客户端(旅行社):把得到的航班信息通过网络传递到旅行社。 4接收旅行社的反馈信息:对旅行社的反馈信息进行分析,把已经售出的机票进行统计,对被旅客所退掉的机票要进行数据库的恢复。 5印出机票给已经订票的旅客: 根据旅客的取票通知及帐单,经过确认无误后,接受旅客的付款后把机票印出来交给旅客。 6销售额的分析和管理 这一步骤的功能要求包括对销售的机票进行分析,这一工作是在前面的基础上,以计算机为工具,对机票预定系统的功能和目标进行扩充。它以财务管理学为理论基础,以辅助决策为目标,以机票销售数据为

27、中心,广泛采用统计学、运筹学的分析方法,对销售信息进行深层加工,建立反映不同航班需求的模型,提供管理上所需的各种辅助决策信息和财务信息。这一要求是机票预定系统的最高目标,将通过系统运行后获得的大量销售历史数据基础上,实现这一目标。 6性能需求16为了保证系统能够长期、安全、稳定、可靠、高效的运行,机票预定系统应该满足以下的性能需求: (1)系统处理的准确性和及时性 系统处理的准确性和及时性是系统的必要性能。在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间能够满足企业对信息处理的需求。 由于机票预定系统的查询功能对于整个系统的功能和性能完成举足轻重。作

28、为系统的很多数据来源,而机票数量和时间又影响企业的决策活动,其准确性很大程度上决定了机票预定系统的成败。在系统开发过程中,必须采用一定的方法保证系统的准确性。 (2)系统的开放性和系统的可扩充性 机票预定系统在开发过程中,应该充分考虑以后的可扩充性。例如订票系统的方式的改变(网上订票),用户查询的需求也会不断的更新和完善。所有这些,都要求系统提供足够的手段进行功能的调整和扩充。而要实现这一点,应通过系统的开放性来完成,既系统应是一个开放系统,只要符合一定的规范,可以简单的加入和减少系统的模块,配置系统的硬件。通过软件的修补、替换完成系统的升级和更新换代。 (3)系统的易用性和易维护性 机票预定

29、系统是直接面对使用人员的,而使用人员往往对计算机并不时非常熟悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面;针对用户可能出现的使用问题,要提供足够的在线帮助,缩短用户对系统熟悉的过程。 机票预定系统中涉及到的数据是航空公司的相当重要的信息,系统要提供方便的手段供系统维护人员进行数据的备份,日常的安全管理,系统意外崩溃时数据的恢复等工作。 (4)系统的标准性 系统在设计开发使用过程中都要涉及到很多计算机硬件、软件。所有这些都要符合主流国际、国家和行业标准。例如在开发中使用的操作系统、网络系统、17开发工具都必须符合通

30、用标准。如规范的数据库操纵界面、作为业界标准的TCP/IP网络协议及ISO9002标准所要求的质量规范等;同时,在自主开发本系统时,要进行良好的设计工作,制订行之有效的软件工程规范,保证代码的易读性、可操作性和可移植性。 (5)系统的先进性 目前计算系统的技术发展相当快,做为机票预定系统工程,应该保证系统在下个世纪仍旧是先进的,在系统的生命周期尽量做到系统的先进,充分完成企业信息处理的要求而不至于落后。这一方面通过系统的开放性和可扩充性,不断改善系统的功能完成。另一方面,在系统设计和开发的过程中,应在考虑成本的基础上尽量采用当前主流并先进且有良好发展前途的产品。 (6)系统的响应速度 机票预定

31、系统系统在日常处理中的响应速度为秒级,达到实时要求,以及时 反馈信息。在进行统计分析时,根据所需数据量的不同而从秒级到分钟级, 原则是保证操作人员不会因为速度问题而影响工作效率。 7.数据需求 机票预定系统的数据需求包括如下几点: 1数据录入和处理的准确性和实时性 数据的输入是否准确是数据处理的前提,错误的输入会导致系统输出的不正确和不可用,从而使系统的工作失去意义。数据的输入来源是手工输入。手工输入要通过系统界面上的安排系统具有容错性,并且对操作人员要进行系统的培训。在系统中,数据的输入往往是大量的,因此系统要有一定的处理能力,以保证迅速的处理数据。 2数据的一致性与完整性 由于系统的数据是

32、共享的,在不同的旅行社中中,机票是共享数据,所以如何保证这些数据的一致性,是系统必须解决的问题。要解决这一问题,要有一定的人员维护数据的一致性,在数据录入处控制数据的去向,并且要求对数据库的18数据完整性进行严格的约束。 对于输入的数据,要为其定义完整性规则,如果不能符合完整性约束,系统应该拒绝该数据。 3数据的共享与独立性 整个机票预定系统的数据是共享的。然而,从系统开发的角度上看,共享会给设计和调试带来困难。因此,应该提供灵活的配置,使各个分系统能够独立运行,而通过人工干预的手段进行系统数据的交换。这样,也能提供系统的强壮性。8运行需求8.1 用户界面在用户界面部分,根据需求分析的结果,用

33、户需要一个用户友善界面。在界面设计上,应做到简单明了,易于操作,并且要注意到界面的布局,应突出的显示重要以及出错信息。外观上也要做到合理化,考虑到用户多对 WINDOW 风格较熟悉,应尽量向这一方向靠拢。在设计语言上,已决定使用 Microsoft Visual C+ 进行编程。其中服务器程序界面要做到操作简单,易于管理。在设计上采用下拉式菜单方式,在出错显示上可调用 VISUAL C+ 库中的错误提示函数。总的来说,系统的用户界面应作到可靠性、简单性、易学习和使用8.2 硬件接口在输入方面,对于键盘、鼠标的输入,可用 Visual C+的标准输入/输出,对输入进行处理。在输出方面,打印机的连

34、接及使用,也可用 Visual C+的标准输入/输出对其进行处理。在网络传输部分,在网络硬件部分,为了实现高速传输,将使用高速 ATM。8.3 软件接口服务器程序可使用 Visual C+ 提供的对 SQL SERVER 的接口,进行对数据库的所有访问。服务器程序上可使用 SQLServer 的对数据库的备分命令,以做到对数据的保19存。在网络软件接口方面,使用一种无差错的传输协议,采用滑动窗口方式对数据进行网络传输及接收。20三、详细设计说明书1引言1.1 编写目的:在本阶段中,我们对在本阶段中对系统所做的所有详细设计进行说明:确定应该如何具体地实现所要求的系统,从而在编码阶段可以把这个描述

35、直接翻译成用具体的 程序语言书写的程序。主要的工作有:根据前阶段描述的数据、功能、运行、性能需求,及处理流程、总体结构和模块外部设计,设计软件系统的结构设计、逐个模块的程序描述(包括各模块的功能、性能、输入、输出、算法、程序逻辑、接口等等) ,解决如何1 接受:旅客信息及取票通知和账单;2 输出:取票通知和账单及机票;3 网络输出,输入;4 分辨信息的种类并采取相应的处理步骤;5 判断信息的正误并采取相应的处理步骤;6 进行数据库的查询、修改工作;7 接受并判断错误,输出相应的出错消息。1.2 文中定义数据库管理系统(DBMS) 。SQL: 一种用于访问查询数据库的语言事务流:数据进入模块后可

36、能有多种路径进行处理。主键:数据库表中的关键域。值互不相同。外部主键:数据库表中与其他表主键关联的域。1.3 参考资料:1.张海藩.软件工程导论(第四版) ,清华大学出版社,20032.郑人杰等.实用软件工程(第二版) ,清华大学出版社,19973.Software Engineering-A Practioners Approach,Roger S.Pressman,(英文版,第 5 版),机械工业出版社McGraw-Hill,20014.文斌,刘长青,田园.软件工程与软件文档写作,清华大学出版社,2006212.系统结构设计:2.1 系统结构图机票预订系统服务器端客户端密码管理用户管理系统

37、管理数据库管理订票信息管理航班信息管理客户信息删除客户信息添加客户信息管理客户信息修改查询模块用户注册模块用户登陆模块航班信息修改航班信息添加订票业务模块订票信息查询航班信息查询退票业务模块223.模块设计3.1 用户注册模块开始进入登陆界面输入用户名、密码是否为注册用户?首页结束进入注册界面否输入旅客信息是否为注册用户?注册成功是否是1. 模块描述本模块的主要功能,是根据旅行社提供的预定机票的旅客信息,由操作员输入旅客信息,同时保存在数据库。2. 功能23主要是记录预定机票的旅客信息,是系统产生取票通知和账单的源数据。3. 性能操作员输入预定机票的旅客信息后,数据库立即保存记录,并通过查询可

38、以检测保存是否成功。4. 输入项客户定票信息:任意长度字符串,包括数字、汉字和英文字母。 5. 输出项有效用户和无效用户。3.2 产生票据模块开始进入订票界面输入起飞时间、目的地订票数座位数?显示航班信息库结束否是进入表单申请界面打印错误信息241. 模块描述本模块的主要功能,是根据操作员在输入数据模块中输入的预定机票的旅客信息由系统产生的相关取票通知和账单。2. 功能系统地产生与客户信息相对应的取票通知和账单。3. 性能操作员输入客户信息后,立即产生相对应的取票通知和账单,如果数据库中没有预定的票,则提示无票,说明原因。4. 输入项客户定票信息:任意长度字符串,包括数字和汉字和英文字母。 5

39、. 输出项取票通知和账单。(1) 取票通知姓名:任意长度字符串。班次:8 位长度字符串(班次=出发地+目的地+序列号) 。日期:date 类型。(2 )账单姓名:任意长度字符串。账单号:账单号=日期+序列号,序列号:00000009999900。金额:任意位数字。日期:date 类型。4数据库设计首先我们新建一个数据库 flight, 其中包含了 4 张表:预定信息表、航班班次表、旅客资料表、机位信息表。数据库逻辑设计:(1)旅客信息表 passenger information。旅客信息表是用来旅客信息的表。表 passenger inf 的结构如表 41 所示:表 4-1passenger

40、 information 的结构25编号 字段名称 数据结构 说明1 Pname Varchar 10 旅客姓名2 Psex Varchar 2 旅客性别3 Pid Varchar 10 身份证号码4 Pjop Varchar 30 工作单位5 Fdetminnation Varchar 50 目的地6 Ftime Date/Time 起飞时间(2)航班信息表 Flight information航班信息表是用来记录航班信息。表 Flight inf 的结构如表 42 所示:表 4-2 Flight inf 的结构编号 字段名称 数据结构 说明1 Fnum Varchar10 航班号2 Fde

41、tminnation Varchar 50 目的地3 Ftime Date/Time 起飞时间4 Fseat int 座位空数航班班次表保存了所有从本地起飞的班机信息,它的主键为航班号。在定位前先查寻座位空数,在定位后将修改座位空数。(4)机票信息表 ticket information机票信息表用来记录机票特征的表。表 ticket inf.构如表 44 所示:表 4-4 ticket inf 的结构编号 字段名称 数据结构 说明1 Fnum Varchar10 航班号2 Fdeterminnation Varchar 50 目的地3 Tprice Varchar10 价格4 Pname V

42、archar 10 旅客姓名5 Ftime Date/Time 起飞时间6 Pid Varchar 10 身份证号码(4)帐单信息表 Bill inf帐单信息表用来记录帐单基本属性特征的表。表 Bill inf 的结构如表44 所示:表 4-4 Bill inf 的结构编号 字段名称 数据结构 说明1 Bnum Varchar 20 账单号262 Pname Varchar 10 旅客姓名3 Pid Varchar 10 身份证号码4 Fnum Varchar10 航班号5 Ftime Date/Time 起飞时间账单信息/旅客资料表保存已定位的旅客信息资料,它的主键为旅客身份证号,外部主键为

43、账单号。主要用于领票时将旅客信息一同返回。机票预定系统的逻辑模型如下图所示:11 1N 起飞时间 姓名 性别 目的地身份证号码 工作单位取票通知订票旅客清单 售出机票信息价格帐单航班号可售机票起飞时间航班机票信息航空公司旅客旅行社 合适航班机票订票27四、软件编码与测试1、软件编码11 登录模块在本窗口中共分两种登陆模式以及供旅行社注册的注册功能1)旅行社登陆登陆成功以后可以进行旅客信息的输入,机票的预订与退订等活动。登陆代码如下:string ls_user,ls_passwordls_user=sle_1.textselect 密码into :ls_passwordfrom lxswher

44、e 旅行社名称 =:ls_user;if sle_1.text=“ thenmessagebox(“,“不能为空!“)returnend ifif sle_2.text=ls_password thenopen(w_main)close(parent)elsemessagebox(“,“错误!“)28end if2) 管理员登陆在这一登陆模式中登陆者为管理员。登陆成功后管理员可进行航班的时间的修改以及航班的开通和取消操作。具体代码如下:string ls_user,ls_passwordls_user=sle_1.textselect 管理员名称into :ls_passwordfrom gl

45、ywhere 管理员密码 =:ls_user;if sle_1.text=“ thenmessagebox(“,“不能为空!“)returnend ifif sle_2.text=ls_password thenopen(w_hbcz)close(parent)elsemessagebox(“,“错误!“)end if12 查询模块(1)航班信息的查询部分:29在这一界面中通过下拉列表框控件与一静态文本控件输入查询信息,再通过按钮控件进行查询,之后再显示到数据窗口控件中。其中按钮控件的代码如下:string tjIf sle_1.text=“ ThenMessagebox(“,“查询信息不能为

46、空!“)elsetj=ddlb_1.text+“=“+“+sle_1.text+“dw_1.setfilter(tj)filter(dw_1)dw_1.retrieve()界面代码为:dw_1.settransobject(sqlca)dw_1.retrieve(1)connect using sqlca;End if(2)用户信息查询部分:这一界面的原理和上一界面基本相同。30在这一界面中通过下拉列表框控件与一静态文本控件输入查询信息,再通过按钮控件进行查询,之后再显示到数据窗口控件中。其中按钮控件的代码如下:string tjIf sle_1.text=“ ThenMessagebox(“,“查询信息不能为空!“)elsetj=ddlb_1.text+“=“+“+sle_1.text+“dw_1.setfilter(tj)filter(dw_1)dw_1.retrieve()界面代码为:dw_1.settransobject(sqlca)dw_1.retrieve(1)connect using sqlca;End if(3)旅客预订信息查询部分:在这一界面中基本上是通过数据窗口控件来实现的,通过创建数据窗口控件以后,再将其与数据窗口连接起来,再在主界面加入以下代码:dw_1.settransobject(sqlca)

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报