航空企业信息系统安全处理分析
摘 要:在信息技术不断发展的今天,人们获取信息的渠道多种多样,然而随之而来的是信息安全问题的不断加重。航空企业以其特有的企业性质要求企业信息系统必须同时兼顾信息的保密性和共享性,因此,在做好信息安全和信息共享工作的基础上如何实现信息系统的稳定运行,是航空企业信息系统安全处理部门应当着重思考的问题。本文通过分析航空企业信息系统安全处理现状,提出了一套适合航空企业信息系统安全处理的体系,希望能为航空企业增强信息系统安全处理能力带来帮助。
关键词:航空企业;信息系统;安全处理;现状;体系
随着计算机网络技术的不断发展,信息数据系统广泛应用于航空企业的信息管理中。然而,航空企业因其服务行业的特性,需要不断将航班等外部信息传播发送给旅客,另一方面,航空企业内部管理信息却需要做到严格的保密,这就对航空企业的信息系统安全处理提出了高要求,航空企业必须建立一套全面完备的信息安全处理体系,只有这样,才能提高航空运输信息的安全水平,保障航空企业的稳定发展。
1 航空企业信息系统安全管处理现状
近年来,我国航空企业已经开始广泛应用信息管理系统。在这些企业的信息系统中,包含了对交通服务、航班导航、天气情况以及企业内部信息的各类应用,航空企业信息管理部门需要将这些信息进行整合,构建成为一个完整的信息管理系统。然而,从目前航空企业的信息系统安全管理来看,多数航空企业在进行信息系统安全管理的研究时,都是将重点集中在某一特定领域,通过病毒检测系统、认证系统等对特定领域进行信息安全处理,并没有一个全面完整的信息安全处理体系。
另外,国家有关部门已经加强了对航空信息安全的重视,中国民用航空局颁布了关于管理民用航空安全信息的规定,通过将各航空企业的信息管理系统进行统一监督,统筹管理全行业的信息安全管理系统。无论从当今形势发展来看,还是从国家有关部门对信息系统安全管理的重视程度来看,建立一套完整的信息系统安全处理体系对于航空企业都是非常有必要的。
2 构建航空企业信息系统安全处理体系
在对信息系统安全处理体系进行构建时,应当遵循可行性、灵活性、扩展性等原则,使信息系统的安全处理能够满足信息的完整性、保密性和可用性。在进行信息系统安全处理体系构建时,可以用到的安全技术大致包括计算机病毒防范技术、信息侦测技术、安全操作平台技术、安全审计和入侵预警技术、内容分级监管技术等。
2.1 构建航空企业信息系统安全处理体系的初始步骤
(1)确定控制用户访问的安全处理系统。在进行访问权的控制时,可以设置相应的客户端界面,利用DCE/Kerberos身份验证机制,只要用户输入的个人信息得到验证后,用户才能进行下一步访问。还可以设置一种封闭策略,只有得到授权的用户才能获得相应信息。但是,在通过限制用户访问来达到信息安全处理的效果时,应当注意对数据信息的最大共享原则,使用户能够通过客户端获得对所有数据的访问权,除非是不应当开放的保密性数据。
(2)建立备份制度和事务日志制度等。对于信息系统而言,其安全性总会受到一定的威胁,企业在进行信息系统的安全处理时,还应当重视对数据的备份,使数据能够在受到安全威胁后得到有效恢复。
(3)确定信息数据安全的最小单位。在构建航空企业信息系统的安全处理体系时,可以将属性或关系作为最小安全单位,从而满足对信息安全性的高要求。
2.2 进一步构建航空企业信息系统安全处理体系的策略
在航空企业信息管理系统中,安全处理内部保密信息是很重要的,但对需要向外界公布的信息数据也不容轻视,因此仅仅依靠DCE/Kerberos身份验证机制无法进行全面的安全处理。
(1)建立信息系统的自行监控和预警机制
保障信息系统高效稳定的运转是航空企业进行各项业务的关键,因此,在进行信息系统的安全处理时,首先应当做到的就是对系统运行的监控和预警,从而能够早发现、早解决系统运行问题,避免影响航空业务的运行。
(2)应用各种安全产品,构建全面的防御体系
在航空企业信息系统建立安全处理体系时,航空企业应当加大投入力度,建立一个全面的防御体系,从而减少安全问题的产生。例如,在建立防病毒、防黑客体系时,可以通过部署应用漏洞扫描软件、防病毒软件等安全产品,构建出一个全面的防御体系,将信息系统的内部运转充分控制起来,从而能够及早发现安全问题,及早解决。
(3)设置控制用户访问的安全处理策略
航空企业的信息系统在为用户提供服务时,使用的是一种端对端的信息交流方式,因此,保障信息传递过程中的信息安全,防止信息遭到修改是信息安全处理的重点。SOAP协议基于XML数据结构,它可以为用户提供信息交换的平台。为保护SOAP协议的安全性,进而保障信息安全,我们可以进行用户查询权、修改权及删除权的设定,通过设立安全矩阵的方式将各类信息及各类人员的权限进行分类处理,从而提高信息管理系统的运行效率,如下表1所示。
通过这种矩阵式分类,就可以直观地将各部门权限表现出来,从而达到对信息系统客户端的有效管理。
(4)实现信息系统各子系统之间访问管理的安全性
在信息系统的使用中,用户对资源的使用往往会涉及到整个系统中的多数子系统,在访问这些子系统时,系统需要对授权进行逐一判断,这就会使系统属性发生改变,安全隐患也就随之而来,因此,应当建立一种访问控制体系,用于对访问各子系统信息资源的安全处理。
UCON模型,就是适应现代业务流程访问控制而产生的新型模型,包含了主体、客体和权限三个基本元素,它将义务、条件和授权作为了决策进程的一部分,提供了一种更好的决策能力。这种模型区别于其他访问控制模型之处就在于它的可变属性,可变属性可以随着访问对象的改变而发生改变,这种模型解决了传统的访问控制技术缺乏综合性的问题,并涵盖了安全和隐私两个重要方面,是一种具有决策连续性和属性易变性特点的访问控制模型。通过对UCON模型和数据库管理系统的综合使用,可以有效保护信息系统的数据资源,并能够在结合其他技术的基础上,对计算机系统资源和网络资源进行保护,从而达到航空企业信息系统安全处理的目标,防止非法访问现象的发生。
2.3 构建完善的航空企业信息系统安全处理体系
一个完整的信息系统安全处理体系,必须涵盖了从客户端到服务提供端,再到访问控制端的安全处理流程。首先,对于客户端安全处理环节的实现,可以借助用户身份信息的收集和对服务返回结果的安全处理,并运用DCE/Kerberos身份验证机制等安全平台操作技术对信息系统的安全性进行管理。其次,是对服务提供端安全处理的实现,这一环节包括了对用户身份的验证和对数据传输的安全处理,可以使用SOAP协议等安全审计技术为信息系统提供安全保障。最后,是对访问控制端安全处理的实现,这一环节可以分为对系统各环节的信息匹配和对访问控制服务的安全处理,是整个信息系统安全处理的重要环节,在构建系统安全处理体系时,可以使用UCON模型将访问控制权具体化,并设立安全矩阵,最终达到信息系统安全处理的目的。
总结:
航空企业的行业特性,决定了构建符合其行业特点的信息系统安全处理体系是一个复杂而繁琐的过程,企业信息安全管理部门应当从实际出发,结合企业信息系统的客户端、服务端以及数据库对信息安全的不同要求,运用现代化技术,依据信息系统设计原则,构建一个既能满足共享性,又能满足保密性的独特的安全处理体系。另外,企业管理部门不仅要加大对技术的扶持和研发,还应当注重对企业内部人员的信息安全教育,能够建立一个完善的信息系统管理制度,从而使企业人员能够积极进行信息系统的安全防护。
参考文献:
[1]郝梁怡.浅析民航空管信息安全管理[J].中国科技纵横,2013(12).
[2]张云高.基于SMS关键要素的航空公司安全管理信息系统分析与设计[J].电子科技大学,2011(1).
[3]田波,吴倩,甄浩.航空公司信息安全管理系统的构建与安全保障体系研究[J].情报科学,2011(9).
[4]白瑜.基于UCON的访问控制的应用[J].电力学报,2012(6).
[5]付茂沼.民用航空信息安全研究[J].中国民航飞行学院学报,2010(3).
[6]姜鹏.民航空管信息处理系统的安全保障[J].中国新技术新产品,2011(13).
[7]王哲明.民航空管信息化建设中的信息安全管理[J].民航科技,2009(1).
作者单位:南方航空深圳分公司,广东深圳 518052
作者:黄莺
摘要:航空电子系统是飞机设计中一个比较关键的系统,它建立了飞机与外界的联系,对飞机的安全有着至关重要的作用。随着飞机各种性能的不断提升,对通信系统提出了越来越高的要求,以此来保障飞行的安全。面对日益复杂的电磁环境以及航空电子设备带宽和功率受限的现状,需要通过相关的信道技术,提高无线通信过程中的可靠性和有效性。基于此,文章针对航空电子通信系统信道的关键技术以及发展现状进行浅析,分析通信系统中信道技术的关键因素,并对未来的发展进行了展望。
关键词:孔径综合;通信技术;信道编码;调制
1 引言
对于航空领域来说,电子通信技术无疑是非常重要的一环,涉及航空安全,指挥协同,电子侦察,导航定位等各个场景下的应用。随着信息技术的发展,机载通信系统使用的频率范围越来越大,复杂性程度越来越高,同时空间的电磁环境日趋復杂,机载通信手段需要更多的方法来保证不同业务的开展。目前航空电子系统逐渐从分立式往综合化的方向发展,对天线的孔径综合,信道的利用,抗干扰和噪声都提出了更高的要求。为了提升航空通信的有效性和可靠性,本文从通信信道的角度出发,对现有的射频信号发射(天线技术),信道编码和调制手段进行了分析。
2 天线技术
为了实现不同机载设备的不同功能需求,如图像传输,报文发送,电子侦察,雷达测控等多方面的需求,需要在航空平台布置大量的不同频段的天线,这对天线之间的隔离度和频谱之间的干扰提出了更高的要求。随着集成电路,天线技术的发展,目前飞机平台的射频系统主要往综合化,集成化的方向发展,其中一个核心的方向为天线的孔径综合。天线孔径综合的主要方向有两个:一是减少天线数量,用一个天线实现多个天线的功能;二是将综合化天线结构于机身结构融合,提高平台的气动与隐身性能。目前,天线孔径综合的方法有很多,通过统筹考虑天线的工作频段,极化方式,发射功率,波束宽度等指标,进行孔径综合设计。例如,通过设计宽频天线将窄带天线复用为一个;利用多个射频开关,将同一个天线分成不同部分,每一个部分作为一个单独的控制单元实现对天线整体工作频率和辐射方向的控制;采用共形天线技术,将天线嵌入到机体结构中,由于共形天线本身具有腔体,且不具有高度,能够有效改善天线之间的直接辐射,提高对不同信道电磁环境的适应能力。随着新的技术,材料的使用,天线设计会在减少电磁干扰,提升空间利用率上不断提高设计水平。
3 航空电子通信信道编码
为了保证通信系统在复杂的电磁环境下是实现可靠通信,保证通信传输的有效性,航空通信系统广泛采用信道编码技术。根据有噪声信道编码定理,只要保证通信速率小于信道容量,就能找到一种编码方式,实现无误码的传输。邹星等人分析了在指定码率信道编码实现特定的误码率时的极限值,并分析了信道编码在不同的通信体制下信道编码增益的理论极限,可以看出,在不同的信噪比条件下,信道编码可以有效的提高传输效率。随着航空通信系统的发展,越来越多的信道编码算法被应用于航空领域,其性能一般主要取决于以下几个方面。首先时编码效率,航空通信系统往往是带宽受限的,根据奈奎斯特准则可以知道码元传输速率也是受限的,因此需要提高编码效率。其次是编码增益,在机载环境功率受限的环境下,提高编码增益就能有效提高信号在信道中的抗干扰能力,降低设备的功耗。最后是编码长度,对于经过信道编码的信号,根据编码长度的不同,其相应的信道编码增益也有所不同。因此,在实际的工程实践中,需要制定好适合的信道编码策略。本文主要分析几种目前主流的信道编码方式。
RS码是一种前向纠错的信道编码,用于检测和纠正解码器产生的突发性错误,而卷积码适用于纠正随机错误,但对于解码过程中产生的突发性错误则不能进行纠正。将两者进行组合就能进行相互补偿,同时采用交织技术将突发性的错误在时间上进行分散更有利于进行纠错。RS交织卷积级联码的码率没有特殊的限制,在软硬件实现上的结构相对于其他信道编码具有较为简单的结构,其对应的解码时间也较短,在对时延有较高要求的系统具有非常高的实用价值。但是由于其编码增益有限,因此在对于信噪比要求较高的环境中普遍采用编码增益更高其他编码方式。
Turbo码充分利用了传统级联码的优点,它将多个子码通过交织器进行并行或者串行级联,然后进行迭代一码,这样就能够具有很好的纠错性能。Turbo码在抵御加性高斯噪声方面性能优越,具有很强的抗衰落,抗干扰能力。Turbo码能够在信源长度有限的情况下依然具有高的编码增益,在传输速率低的应用场景中较为适合。但是由于其在码率较高的环境下会去除校验信息,因此可能会导致译码会有较高的误码率。
TPC 码继承了Turbo码在低的信噪比的环境下仍然具有较低的误码率的有优势,同时降低了译码的复杂度。TPC码具有较高的编码增益,因此对发射功率的要求降低,很适用于功率受限的卫星通信。TPC码结构相对简单,同步要求适中,也很适用于高传输速率的链路环境。
LDPC码是具有稀疏矩阵的线性分组码,相对于TPC码具有更高的编码增益,在码长较长的情况下仍然可以进行有效的译码,同时在低码率、码长较短的环境下传输中也具有很高的性能。LDPC码具有很强的灵活性,但由于其在码长较长的环境下使用更具有优势,且在信噪比较差的环境中其编码具有较高的迭代次数,也会因此导致译码时延较大。
4 航空通信信号调制
在无线通信系统中,无线信道的衰落是影响系统性能的重要因素,信号调制是对抗衰落的有效手段。目前航空领域主要采用MPSK,TCM,扩频等调制技术,本文主要分析了两种当前航空通信中常用的调制手段。
扩频调制技术能够极大限度的共享相同的频谱资源,在航空频谱受限的条件下具有广泛的应用,美军的联合战术信息分配系统(JTIDS)正是采用这种技术。扩频信号的频带是通过伪随机码将原始信号的带宽进行扩展得到的,在接收端采用的同样的码进行相关同步接收和解扩。由于扩频具有很高的带宽冗余度,因此可以有利的克服外界的故意干扰和多径衰落。扩频调制主要包括直接序列扩频,跳频扩频、跳时扩频、线性脉冲调频(Chirp)等等。在针对不同的问题如多址组网、抗多径、定时定位、测距等等多种应用场景时,就需要同时采用上述几种方式的混合,如直接序列混合系统(FH/DS)、直接序列-时间跳变混合系统(DS/TH)、频率跳变-时间跳变混合系统(HF/TH)等,这种复合的调制方式一般具有更好的性能。
正交频分复用技术(OFDM)具有较强的对抗多径衰弱信道的能力。对于单载波系统,单个信道衰落可能会对整个通信链路造成影响,而OFDM采用多载波信道可以有效避免该问题,同时某些子信道还可以采用纠错码进一步降低误码率,保证了能够在多径衰落的信道中进行高速的数据传输。目前,该调制技术在军用和民用领域得到了广泛的应用,OFDM技术已经成为了欧洲数字音频广播和数字视频广播的标准,同时也成为了IEEE802.11和IEEE802.16的标准,在军用方面美军的联合战术无线电系统(JTRS)也采用该技术作为主要的调制手段来进行通信。OFDM采用重叠的正交子载波作为子信道,提高了频谱的利用率,也能够方便控制上行和下行链路中不同的传输速率。但是其对子载波要求严格正交,因此对相位十分敏感,细微的载波频偏就可能对解调的结果造成影响。
5 总结
航空通信信道技术是进一步提升信道利用率,抗干扰的重要手段,也是信息化战争中的必备武器。本文介绍了天线的孔径综合方式,对目前航空通信中的信道编码和调制方法进行了分析,对实际工程中需要考虑的编码增益、译码时间等指标也分别进行了讨论,具有一定指导意义。目前航空通信领域也不断在往智能化方向发展,已经出现了利用深度学习卷积网络实现自适应的编码和调制手段,相信随着技术的进步和集成电路的发展,我国的航空通信事业将具有更多的可能性和创新性。
参考文献
[1]吴琦,王晓明,孙宏涛,张栋梁.先进飞机平台天线孔径综合的总体设计技术[J].宇航总体技术,2021,5(04):7-13.
[2]邹星, 李金喜, 丁勇飞,等. 航空通信系统中信道编码理论及应用分析[J]. 电光与控制, 2015, 22(10):5.
[3]刘雨薇, 仰枫帆. RS码中继协作系统的构造及其性能研究[J]. 舰船电子工程, 2020.
[4]王白云, 邹星, 罗宇. 航空通信系统Turbo编译码研究[J]. 航空电子技术, 2017, 48(4):5.
[5]賀荣. 跳频OFDM系统的抗干扰性能分析与仿真[J]. 电子元器件与信息技术, 2020.
作者:马帅
摘要:航空发动机控制系统是发动机的大脑和神经系统,控制系统的优劣直接关系到航空发动机的性能和可靠性。随着航空技术的发展,要求不断地提高,控制系统也由最初活塞式发动机改变螺旋桨桨距的转速自动调节器发展到燃气涡轮发动机的转速、温度、油量、起动、加速等控制系统,以及保证发动机安全工作的防喘装置,超温、超转限制器等。因此,控制系统对保证发动机性能和安全都起着关键性的作用。
关键词:航空;发动机;控制;系统
发动机控制系统对于发动机而言犹如人的大脑对人体各器官的控制作用,是发动机的核心部件。航空发动机动力学控制技术的主要目的,是通过对支承结构和质量分布的合理分配,保障发动机在全转速范围内无有害振动。飞机要在不同的高度和速度下飞行,为了在飞行中保持发动机的给定工作状态,或者按照所要求的规律改变工作状态,都必须对发动机进行控制。所有这些只有依靠自动控制系统来完成。目前,我国正在结合高性能军用航空发动机的型号研制工作,开发符合中国国情的航空发动机数控系统,缩短与先进国家的技术差距,推动我国航空发动机技术的发展。
一、发动机控制系统的基本要求
(一)穩定性高。航空发动机是一种高度复杂和精密的热力机械,为航空器提供飞行所需动力的发动机。作为飞机的心脏,被誉为"工业之花",它直接影响飞机的性能、可靠性及经济性,是一个国家科技、工业和国防实力的重要体现。航空发动机控制系统能够保障航空器的持续适航,技术具备强实时性、高稳定性及小巧便携等优势,能够在降低监测和诊断设备成本的同时,实现机载化的航空发动机监测与诊断系统的良好运行。。但是随着系统规模和复杂程度的不断提高,基于文档的系统工程面临的困难越来越突出,如信息表示不准确造成歧义、难以从海量文档中查找所需信息、无法与其他工程领域的设计相衔接(如软件、机械、电子等)。于是基于模型的系统工程(MBSE)应运而生,这也是未来系统工程发展的必然趋势。
(二)精度高。航空发动机的工作环境复杂,工作温度范围大(环境温度~2000 ℃),导致结构工艺特征参数和结构特征参数的变化范围大,引起发动机结构振动具有非线性时变特性。同时,转静件间隙、支承刚度、同心度、不平衡量分布等动力学参数和气动流场气动力等,随发动机状态和温度场的变化而变化,造成各连接结构部件振动传递特性相差也较大。在保证发动机可靠性的前提下,要求发动机的“寿命长”。这是发动机经济性的另一项指标。寿命长,可以降低使用成本、节约原材料。此外,还兼顾应急放油、消喘防喘、故障诊断及健康管理等功能。而航空发动机的工作状态变化范围宽,环境条件变化大,这都给控制系统的设计带来了苛刻的要求。随着航空发动机的不断发展,航空发动机控制系统也在不断发展。在实际工程应用中,从最初的简单机械控制系统,发展到目前可以实现综合控制的全权限数字电子控制系统,同时又由集中式向分布式发展。
(三)体积小、重量轻。一般来讲,确定发动机个数的首要原则就是重量,轻型飞机或超轻型飞机由于起飞重量较小,多采用1~2台发动机,而大型飞机则一般装有2~4台发动机,甚至更多。设计飞机的任何部件,都应在满足使用要求的前提下,尽量减轻其重量。对发动机来说,就是要保证足够大的功率而自重又很轻。衡量发动机功率大、重量轻的标准是“功率重量比”。即发动机所发出的功率与发动机重量之比值。“功率重量比”越大,表示在有相同功率的情况下,发动机越轻。发动机是否省油,是飞机使用的重要经济指标。评定发动机的经济性,常用“燃油消耗率”作标准。“燃油消耗率”是指单位功率(一牛顿或一马力)在一小时内所消耗油料的重量。燃油消耗率越小,说明发动机越省油。例如,通过核心技术可以适当减少零件数目,既减轻了重量又提高了推力,如此有利于提高推重比的整体叶盘自然也不是容易摘得的“明珠”。除了因为轮盘和叶片成为一体,锁紧装置的减少也是重要原因。航空发动机对可靠性的要求极为严苛,简化的转子结构对提高可靠性有很大作用。
二、发动机系统控制技术分析
(一)全权限数字电子控制技术。发动机研究和发展工作的特点是技术难度大、耗资多、周期长,发动机对飞机的性能以及飞机研制的成 败和进度有着决定性的影响,而且发动机技术具有良好的军民两用特性,对国防和国民经济有重要意义。随着飞机、发动机的发展,发动机控制领域的研究成果层出不穷。其中,飞机-推进系统控制一体化技术、全权限数字电子控制(FADEC)技术等无疑都代表着当前发动机控制技术的先进水平。通过发动机一体化设计,提供了一个覆盖全生命周期的完整的、信息一致且可追溯的系统设计方案,避免各组成部分间的设计冲突,降低风险。成熟型号的知识是以系统模型的形式表示和存储的,便于捕获、查询、理解和重用,而且重用的级别可以大幅度提高。具有经济可承受性的全天候、远程、多用途的飞机设计需求,给发动机设计提出了新的要求,除了具有更高的推重比外,还要求发动机既要有亚声速巡航所需的低油耗和良好的巡航效率,又要有跨声速加速以及超声速冲刺所需的大推力。
(二)数字电子控制技术。飞机要在不同的高度和速度下飞行,为了在飞行中保持发动机的给定工作状态,或者按照所要求的规律改变工作状态,都必须对发动机进行控制。所有这些只有依靠自动控制系统来完成。要想使航空发动机获得更大的推重比,就必须提高发动机涡轮前的进口温度,因此对航空发动机燃烧室、涡轮叶片等热端部件的抗高温能力的要求相应提高。航空发动机被誉为工业皇冠上的明珠,有航空器“心脏”的美誉,目前,我国航空发动机整体水平与美、英、俄三巨头相比存在明显落差,中国航空的“心脏病”问题一直是制约我国自主航空工业的瓶颈。发达国家都将发动机数字电子控制技术作为航空技术中的重要内容来发展,花费巨资(占发动机研制费25%-34%)研究,以保证航空发动机工作稳定并充分发挥其性能潜力。在发动机控制系统工程初期阶段,系统产生的信息均以文档形式描述和记录。但是随着系统规模和复杂程度的不断提高,基于文档的系统工程面临的困难越来越突出,如信息表示不准确造成歧义、难以从海量文档中查找所需信息、无法与其他工程领域的设计相衔接(如软件、机械、电子等)。随着航空技术的发展,以航空涡轮起动机为代表的机载辅助动力系统除了要起动发动机外,还要承担为飞机上的机载设备和座舱提供电源、气源、液压源以及应急能源等。
三、结束语
航空工业是一个国家军用和民用技术的核心产业之一,具有用途广泛,科技含量高,产业链长,回报率高的特点,受到了各个大国的巨大的重视,而航空发动机则是航空产品最特殊的一种,被称为王冠上的珍宝,航空发动机需要做到轻重量,高推力,低油耗,高可靠,容易维修,长寿命等要求,开发制造难度为所有航空部件之最。如今,航空发动机是制约我国航空产业发展的瓶颈,在强军目标引领下我军将加速补齐动力短板。航空发动机控制系统的发展是一个由单变量控制发展到多变量控制、由机械液压式控制发展到数字式电子控制、由独立控制发展到飞发综合控制、由集中式控制发展到分布式控制的过程。
参考文献:
1、徐鲁兵,面向对象的航空发动机性能仿真系统设计与实现[D];西北工业大学;2007年
2、王鑫,航空发动机数学模型与控制规律研究[D];西北工业大学;2007年
3、李阳,航空发动机进气总压周向畸变数值模拟[J];航空发动机;2005年02期
作者:张玉宝
《航空售票系统的设计与实现》
第1页
共12页
航空售票系统课程设计
摘
要
本系统是采用javaweb开发的一个管理系统。本系统要解决的是机场售票中所要解决的问题,包括客机信息的输入、修改和查询,航线信息的输入、修改和查询,客户信息的输入、修改和查询和订票信息的输入、查询和修改等四个方面的功能。在整个系统中采用MySQL数据库来存储信息,角色划分为系统管理员、顾客两种,各自拥有不同的操作权限。在整个系统设计过程中,严格按照软件工程设计标准来设计系统。 关键词
飞机信息;javaweb;数据库
1 引 言
1.1 课题设计的目的和背景意义
自九十年代以来,因特网技术的飞速发展正在迅速地改变着人们的生活方式,因特网正在由科学工作者的工具变为普通百姓获取信息、进行交流的场所,而因特网的商业应用则尤为引人注目。随着国内因特网的发展,国内航空公司也开始酝酿网上订票、售票业务。
网上订票系统是一个取代过去由人工处理的订票系统,在一定程度上提高了购票的通明度和自主性,但网站在方便消费者的同时,仍存在许多不足的地方。例如,航空公司网站只能提供公司自有航班的机票信息,客观上限制了人们的选择范围;旅行社网站则多以旅游产品为主,很少单独提供机票的预订服务,因此
《航空售票系统的设计与实现》
第2页
共12页
其在机票服务的专业性、丰富性上都会大打折扣。个别旅游、机票预订等服务,但因这类网站缺乏实时的机票数据信息,因而在其所提供的票务信息的权威性、服务内容的专业性上仍然不尽人意。因此,消费者仍然真正做到自主选购机票,而所获得的购票体验也仍存在着“费时费力,无法排除订票的不确定性”,或者“价格折扣等关键信息可信度不高”等负面感觉。
客户能随时随地通过因特网查询航班的详细信息,并预定最满意的航班。客户无须来往与机场和家、办公室之间,不必在售票点排队买票或订票,只要有一根网线就能轻松搞定从查询航班到订票到取票等一系列过程。[3]
2 系统分析
2.1需求分析
系统开发的总体任务是实现各种信息的系统化、规范化和自动化。 系统功能分析是在系统开发的总体任务的基础上完成。本例子中的航空公司管理信息系统需要完成功能主要有:
航线信息的输入、修改和查询,包括航线编号、出发城市、到达城市、航班日期、出发时间、到达时间、客机编号
客户信息的输入、修改和查询,包括客户编号、客户姓名、客户性别、身份证号码、联系电话、客户类型和备注信息等。
订票信息的输入、查询和修改,包括订票编号、客户编号、客户姓名、航线编号、出发城市、到达城市、出发时间、舱位类型、票价、结算金额和备注信息等。
2.2 运行环境
操作系统:Windows7 数据库:MySQL 2.3用例图
《航空售票系统的设计与实现》
第3页
共12页
3系统设计
3.1结构设计
根据各项功能进行集中、分块,按照结构化程序设计的要求,得到如图3-1所示的系统功能模块图。
《航空售票系统的设计与实现》
第4页
共12页
图3-1 系统功能模块图
3.2数据库设计
数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。
设计数据库系统时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。数据库设计一般包括如下几个步骤:数据库需要分析、数据库概念结构设计和数据库逻辑结构设计。 3.2.1 数据库需求分析
用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。
仔细分析调查有关航空公司管理信息需求的基础上,将得到如图2-2所示的本系统所处理的数据流程。
《航空售票系统的设计与实现》
第5页
共12页
图3-2 航空公司管理信息系统数据流程图
通过对航空公司管理工作过程的内容和数据流程分析,设计如下面所示的数据项和数据结构:
(3)航线信息,包括的数据项有:航线编号、出发城市、到达城市、航班日期、出发时间、到达时间、备注信息等。
(5)客户信息,包括的数据项有:客户账号、客户姓名、客户性别、身份证号码、联系电话、邮箱、备注信息等。
(6)订票信息,包括的数据项有:订票编号、顾客编号、顾客姓名、航线编号、出发城市、到达城市、机票价格、结算金额、备注信息等。 3.2.2 数据库概念结构设计
得到上面的数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。根据上面的设计规划出的实体有:航线信息实体、客户信息实体、订票信息实体。各个实体具体的描述E-R图如下。
《航空售票系统的设计与实现》
第6页
共12页
航线信息实体E-R图如图3-5所示。
图3-5 航线信息实体E-R图
客户信息实体E-R图如图3-7所示。
图3-7 客户信息实体E-R图
订票信息实体E-R图如图3-8所示。
《航空售票系统的设计与实现》
第7页
共12页
图3-8 订票信息实体E-R图
实体之间关系的E-R图如图3-9所示。
图3-9 实体之间关系的E-R图
3.2.3 数据库逻辑结构设计
现在需要将上面的数据库概念结构转化为Mysql数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。
航空公司管理信息系统数据库中各个表格的设计结果如下面表格所示。每个表格表示在数据库中的一个表。表3-1为供应商信息表。
《航空售票系统的设计与实现》
第8页
共12页
表3-3 sch航班信息表
表3-5 user客户信息表
表3-6 din 订票信息表
4 系统详细设计
4.1 数据库结构的实现
4.1.1创建航线信息表
DROP TABLE IF EXISTS `sch`; CREATE TABLE `sch` (
《航空售票系统的设计与实现》
第9页
共12页
`Hao` varchar(10) NOT NULL,
`Qifei` varchar(20) NOT NULL,
`Rqi` date default NULL,
`Mudi` varchar(20) NOT NULL,
`Jiage` int(5) NOT NULL,
`Piaosu` int(11) NOT NULL,
PRIMARY KEY (`Hao`) ) ENGINE=InnoDB DEFAULT CHARSET=gb2312; 4.1.2建客户信息表
DROP TABLE IF EXISTS `user`; CREATE TABLE `user` (
`Username` varchar(20) NOT NULL,
`Password` varchar(16) NOT NULL,
`Name` varchar(10) NOT NULL,
`Sex` varchar(2) NOT NULL,
`Tel` varchar(16) NOT NULL,
`Email` varchar(30) default NULL,
PRIMARY KEY (`Username`) ) ENGINE=InnoDB DEFAULT CHARSET=gb2312; 4.1.3创建订票信息表
DROP TABLE IF EXISTS `din`; CREATE TABLE `din` (
`Id` varchar(20) NOT NULL,
`Hao` varchar(10) NOT NULL,
`Qifei` varchar(20) NOT NULL,
`Mudi` varchar(20) NOT NULL,
`Rqi` varchar(20) NOT NULL,
`Jiage` varchar(10) NOT NULL,
`Piao` int(11) NOT NULL 9
《航空售票系统的设计与实现》
第10页
共12页
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
5 测试和运行结果的截图
5.1 系统的实现
现在已经完成了程序各个功能模块的创建,现在来运行整个系统。运行程序,出现如图5-1所示的登录窗口。
图5-1 用户登录窗口
输入用户名和密码后,进入系统。看到如下界面
《航空售票系统的设计与实现》
第11页
共12页
点击预订机票,出现如下界面管理员登陆界面
《航空售票系统的设计与实现》
第12页
共12页
参考文献
[1] 常君义.管理信息系统.2003年9月.中国电力出版社 [2] 萨师煊,王珊.数据库系统概论.2005年1月.高等教育出版社 [3] 卜炟, 21天学通javaweb开发.2011年7月。电子工业出版社
#include #include
void FlightInsert(); //增加路线 void FlightDelete();//删除路线 void FlightLookup();//航班查询
void FlightRework();//航班路线修改 void FlightBuyticket();//买票
void FlightCancelticket();//取消订票 void Flightclean();//清空 void MainMenu();//主函数 void Display();//显示订票信息
typedef struct Customer
//已定票乘客信息 { char Name[10];
//姓名
int Amount;
//定票数
int Level;
//舱位等级
int SeatNum;
//座位号
char FlightNum[10];
//所定航班号
struct Customer *next; }Customer;
typedef struct Replace
//侯补乘客信息 { char Name[10];
//姓名e int Amount;
//定票数
int Level;
//舱位等级
char FlightNum[10];
//所定航班号
struct Replace *next;
}Replace;
typedef struct Flight
//航班路线信息 { char From[10]; //起点站名
char Des[10];
//终点站名
char FlightNum[10];
//航班号
char PlaneNum[10];
//航班
char Week[20];
//飞机周日 int Ration;
//乘员定额
int FreeTicket;
//剩余票数
float Price[3];
//票价
int ReplacePas;
//候补乘客数
Replace *ReplName;
//该航班的候补乘客名单
Customer *CustName;
//该航班的已定票乘客名单
struct Flight *next;
//指示下一航班路线结点 }Flight,*PFlight;
int Ration=0;
//乘客总数
Flight *head;
//建立航班路线头结点 Flight *rear;
//建立航班路尾结点
Customer *Cusrear; Replace *Reprear;
void MainMenu() { int i=0; while (i!=8) {
cout<
cout<<"
***************【欢迎使用航空订票系统***************"<
cout<<"
"<
cout<<"
***************【按1】增加航班路***************"<
cout<<"
"<
cout<<"
***************【按2】查询航班路***************"<
cout<<"
"<
cout<<"
***************【按3】修改航班路
】
线
线
线
***************"<
cout<<"
"<
cout<<"
***************【按4】预订飞机票
***************"<
cout<<"
"<
cout<<"
***************【按5】退订飞机票
***************"<
cout<<"
"<
cout<<"
***************【按6】清空系统
***************"<
cout<<"
"<
cout<<"
***************【按7】已订票名单
***************"<
cout<<"
"<
cout<<"
***************【按8】 退出系统
***************"<
cout<<"
"<
cout<<"
*提示:当前为主菜单"<
cin>>i;
switch(i)
{
case 1:
FlightInsert();
break;
//增加航班路线
case 2:
FlightLookup();
break;
//查询航班路线
case 3:
FlightRework();
break;
//修改航班路线
case 4:
FlightBuyticket();
break;
//预订飞机票
case 5:
FlightCancelticket();
break;
//退订飞机票
case 6:
Flightclean();
break;
//清空系统
case 7:
Display();
break;
case 8:;break;
default:
cout<<"*提示:抱歉,请选择正确的操作!"<
cout<
cout<
break;
} } }
void FlightInsert()
//航班录入 { /*int i=2; while(i!=1) {*/
Flight *p;
p=new Flight;
cout<<"****正在设定新的路线****"<
cout<
cout<<"1.请设定起点站名:"<
cin>>p->From;
cout<<"2.请设定终点站名:"<
cin>>p->Des;
cout<<"3.请设定航班号:"<
cin>>p->FlightNum;
cout<<"4.请设定飞机号:"<
cin>>p->PlaneNum;
cout<<"5.请设定飞行周日:"<
cin>>p->Week;
cout<<"6.请设定乘员定额:"<
cin>>p->Ration;
p->FreeTicket=p->Ration;
cout<<"7.请设定一等舱的价格:"<
cin>>p->Price[0];
cout<<"8.请设定二等舱的价格:"<
cin>>p->Price[1];
cout<<"9.请设定三等舱的价格:"<
cin>>p->Price[2];
p->ReplName=new Replace;
p->CustName=new Customer;
p->CustName->next=NULL;
p->ReplName->next=NULL;
p->ReplacePas=0;
rear->next=p;
rear=p;
rear->next=NULL;
cout<<"设置成功!"<
cout<<"***********************"<
cout<
/*cout<<"【按1】返回主菜单
【按2】继续"<
cin>>i;
}*/ }
void FlightLookup()
//查询航班号 { Flight *p,*q; char FlightNum[10]; p=head; int i=0; while (i!=1) {
cout<<"请输入需要查询的航班号:"<
cin>>FlightNum;
while (p->next && strcmp(p->next->FlightNum,FlightNum))
{
p=p->next;
}
q=p->next;
if (q==NULL)
{
cout<<"*提示:对不起,不存在此航班号,请核实您的信息!"<
}
else
{
cout<<"以下是您所查的车次信息:"<
cout<<"************************"<
cout<<"*
1.航班号: "
cout<<"*
2.飞机号: "
cout<<"*
3.起点站: "
cout<<"*
4.目的地: "
cout<<"*
5.飞机周日: "
cout<<"*
6.成员定额: "
cout<<"*
7.剩余票数: "
cout<<"*
8.候补乘客数: "
cout<<"*
9.一等舱的价格: "
cout<<"*
10.二等舱的价格: "
cout<<"*
11.三等舱的价格: "
cout<<"************************"<
}
cout<<"您还需要其他的操作么?"<
cout<
cout<<"【按1】返回主菜单
【按2】继续操作"<
cin>>i;
cout<<"************************"<
cout<
} }
void FlightRework()
//修改航班路线信息 { int Customer_Number ; Flight *p,*q; char FlightNum[10]; int i=0; int a=1; p=head; cout<<"请输入需要修改的航班:"<>FlightNum; while (p->next&&strcmp(p->next->FlightNum,FlightNum)) {
p=p->next; } q=p->next; if (q==NULL) {
cout<<"*提示:对不起,不存在此航班,请核实您的信息!"<
while(a)
{
cout<<"
*******【请输入需要修改的数据】*******"<
cout<<"
"<
cout<<"
【按1】航班号
"<
cout<<"
"<
cout<<"
【按2】飞机号
"<
cout<<"
"<
cout<<"
【按3】起始站
"<
cout<<"
"<
cout<<"
【按4】目的地
"<
cout<<"
"<
cout<<"
【按5】每周出站日期
"<
cout<<"
"<
cout<<"
【按6】成员定额
"<
cout<<"
"<
cout<<"
【按7】一等舱的价格
"<
cout<<"
"<
cout<<"
【按8】二等舱的价格
"<
cout<<"
"<
cout<<"
【按9】三等舱的价格
"<
cout<<"
"<
cout<<"
【按10】退出
"<
cout<<"
"<
cout<<"
**************************************"<
cin>>i;
switch(i)
{
case 1:cout<<"1.请输入航班号:"<
cin>>q->FlightNum;break;
case 2:cout<<"2.请输入飞机号:"<
cin>>q->PlaneNum;break;
case 3:cout<<"3.请输入起始站:"<
cin>>q->From;break;
case 4:cout<<"4.请输入目的地:"<
cin>>q->Des;break;
case 5:cout<<"5.请输入飞机周日:"<
cin>>q->Week;break;
case 6:cout<<"6.请输入乘员定额:"<
Customer_Number=q->Ration-q->FreeTicket;
cin>>q->Ration;q->FreeTicket=q->Ration-Customer_Number;break;
case 7:cout<<"7.请输入一等舱的价格:"<
cin>>q->Price[0];break;
case 8:cout<<"8.请输入二等舱的价格:"<
cin>>q->Price[1];break;
case 9:cout<<"9.请输入三等舱的价格:"<
cin>>q->Price[2];break;
case 10:a=0;
break;
default:cout<<"*提示:对不起,请选择正确的操作!"<
cout<
cout<
break;
}
} } }
void FlightBuyticket() //订票 { int Ticket_Amount; void Buyticket(PFlight ,int ); void Buyreplace(PFlight ,int ,int ); Flight *p,*q; char Des[10]; int i=2; while (i!=1) {
cout<<"请输入目的地:"<
cin>>Des;
p=head;
while (p->next&&strcmp(p->next->Des,Des))
{
p=p->next;
}
q=p->next;
if (q==NULL)
{
cout<<"*提示:对不起,不存在此航班,请核实您的信息!"<
}
else
{
while(i!=1)
{
cout<<"请输入需要购买的票数:"<
cin>>Ticket_Amount;
while(Ticket_Amount==0 && Ticket_Amount<0)
{
cout<<"*提示:对不起,请输入正确的票数!"<
cout<
cout<<"请输入需要够买的票数:"<
cin>>Ticket_Amount;
}
if (Ticket_Amount<=q->FreeTicket)
{
Buyticket(q,Ticket_Amount);
}
else
{
int n;
cout<<"*提示:抱歉!剩余票数小于定票数,是否需要列入候补名单?(【按1】是 【按2】否)"<
cin>>n;
Buyreplace(q,Ticket_Amount,n);
}
cout<
cout<<"【按1】返回主菜单
【按2】继续"<
cin>>i;
}
} } }
void FlightCancelticket()
//退票 {
void Buyticket(PFlight ,int ); Flight *p,*q; Customer *h,*j; char FlightNum[6]; char Customer_Name[10]; int Replace1_Amount;
//候补第一个人的定票数
int i; cout<<"**********************************"<
cout<<"请输入需要退定的航班号:"<
cin>>FlightNum;
p=head;
while (p->next&&strcmp(p->next->FlightNum,FlightNum))
{
p=p->next;
}
q=p->next;
if (q==NULL)
{
cout<<"*提示:对不起,不存在此航班,请核实您的信息!"<
} else { while (i!=2) {
cout<<"请输入所查姓名:"<
cin>>Customer_Name;
h=q->CustName;
while (h->next&&strcmp(h->next->Name,Customer_Name))
{
h=h->next;
}
j=h->next;
if(j==NULL)
{
cout<<"*提示:对不起,查无此人,请核实您的信息!"<
cout<
}
else
{
if(j->next==NULL)
{
//当删除最后一个结点
Cusrear=h;
}
h->next=h->next->next;
q->FreeTicket+=j->Amount;
delete j;
cout<<"*提示:退票成功!"<
if(q->ReplName->next!=NULL) { Replace1_Amount=q->ReplName->next->Amount; if (Replace1_Amount<=q->FreeTicket) {
Replace *rep;
rep=q->ReplName->next;
Customer *Cus2;
Cus2=new Customer;
Cus2->SeatNum=q->Ration-q->FreeTicket+1;
strcpy(Cus2->FlightNum, q->FlightNum );
strcpy(Cus2->Name, rep->Name );
Cus2->Amount=rep->Amount;
Cus2->Level=rep->Level;
cout<<"*提示:"<
cout<
cout<<"候补乘客:"
cout<
cout<<"航班号:"
cout<<"舱位等级为:"
cout<<"座位号为:"<
for(int i=1;i<=(rep->Amount);i++)
{
cout<<"No."
}
cout<
if (q->CustName->next==NULL)
{
Cusrear=q->CustName;
Cusrear->next=Cus2;
Cusrear=Cus2;
Cusrear->next=NULL;
}
else
{
Cusrear->next=Cus2;
Cusrear=Cus2;
Cusrear->next=NULL;
}
q->FreeTicket-=rep->Amount;
q->ReplName->next=q->ReplName->next->next;
q->ReplacePas--;
delete rep;
}
}
}
break;
}
}
cout<<"【按1】返回主菜单,或按任意键返回【继续退票操作】!"<
cout<
cin>>i; } }
void Flightclean()//清空 { head->next=rear->next; cout<<"*提示:系统已经清空!"<
void Buyticket(PFlight q,int Ticket_Amount)
//买票 {
int n=Ticket_Amount; Customer *Cus2; Cus2=new Customer; Cus2->SeatNum=q->Ration-q->FreeTicket+1; strcpy(Cus2->FlightNum, q->FlightNum ); Cus2->Amount=Ticket_Amount; cout<<"1.请输入姓名:"<>Cus2->Name; cout<<"2.请输入购买票的类型:"<>Cus2->Level; cout<<"*提示:订票成功!"
cout<<"No."
Cusrear=q->CustName;
Cusrear->next=Cus2;
Cusrear=Cus2;
Cusrear->next=NULL;
} else{
Cusrear->next=Cus2;
Cusrear=Cus2;
Cusrear->next=NULL; }
q->FreeTicket-=Ticket_Amount; }
void Buyreplace(PFlight q,int Ticket_Amount,int n)
//进入候补队列 { Replace *Rep2; Rep2=new Replace; if(n==1) {
q->ReplacePas+=Ticket_Amount;
strcpy(Rep2->FlightNum,q->FlightNum);
Rep2->Amount=Ticket_Amount;
cout<<"1.请输入姓名:"<
cin>>Rep2->Name;
cout<<"2.请输入购买票的类型:"<
cout<<"【按1】一等舱,【按2】二等舱,【按3】三等舱"<
cin>>Rep2->Level;
if(q->ReplName->next==NULL)
{
Reprear=q->ReplName;
Reprear->next=Rep2;
Reprear=Rep2;
Reprear->next=NULL;
}
else{
Reprear->next=Rep2;
Reprear=Rep2;
Reprear->next=NULL;
} } } void Display()//显示订票信息 { cout<<"*提示:抱歉,该项目还在开发!"<>i; while(i=1) {
break; } /*Customer *h,*j; char Customer_Name[10]; int i; while (i!=2)
{
cout<<"请输入所查姓名:"<
cin>>Customer_Name;
h=q->CustName;
while (h->next&&strcmp(h->next->Name,Customer_Name))
{
h=h->next;
}
j=h->next;
if(j==NULL)
{
cout<<"*提示:对不起,查无此人,请核实您的信息!"<
cout<
}
else
{
cout<<
}*/
//Customer *p; //cout<<"已买票的乘客有:"
姓名: "
航班号: "
飞机号: "
起点站: "
目的地: "
飞机周日: "
舱位等级: "
} ******************************************************************************************************
#include "AirLineSystem.h" #include void main() //主程序 {
Cusrear=new Customer; Reprear=new Replace; head=rear=new Flight; head->next=NULL; MainMenu(); }
public FlightBook()
//构造函数
{
super("航空订票"); this.setSize(600,400); this.setLocation(300,240); this.setResizable(false); this.setVisible(true); this.setLayout(new BorderLayout()); JPanel panel=new JPanel(new GridLayout(11,1)); this.add(panel,BorderLayout.WEST); this.setBackground(Color.blue);
button_ask=new JButton("查询"); panel.add(button_ask); button_ask.addActionListener(this);
button_book=new JButton("订票"); panel.add(button_book); button_book.addActionListener(this);
button_cancel=new JButton("退票"); panel.add(button_cancel); button_cancel.addActionListener(this);
text_user=new JTextArea(); this.add(text_user,BorderLayout.CENTER);
frame_cx=new JFrame("输入");
//查询输入框
frame_cx.setSize(280,120); frame_cx.setResizable(false); frame_cx.setBackground(Color.LIGHT_GRAY); frame_cx.setLayout(new FlowLayout()); frame_cx.add(new JLabel("终点站:")); text_field1=new JTextField(20); frame_cx.add(text_field1); button_ok1=new JButton("ok"); frame_cx.add(button_ok1); button_ok1.addActionListener(this); frame_cx.addWindowListener(this);
frame_dp=new JFrame("输入");
//订票输入框
frame_dp.setSize(350,150); frame_dp.setResizable(false); frame_dp.setBackground(Color.LIGHT_GRAY); frame_dp.setLayout(new FlowLayout()); frame_dp.add(new JLabel(" 航班号:")); text_field2=new JTextField(20); frame_dp.add(text_field2); frame_dp.add(new JLabel(" 订票数:")); text_field3=new JTextField(20); frame_dp.add(text_field3); button_ok2=new JButton("确定"); frame_dp.add(button_ok2);
button_ok2.addActionListener(this); frame_dp.addWindowListener(this);
frame_tp=new JFrame("输入");
//退票输入框
frame_tp.setSize(350,150); frame_tp.setResizable(false); frame_tp.setBackground(Color.LIGHT_GRAY); frame_tp.setLayout(new FlowLayout()); frame_tp.add(new JLabel(" 日期 :")); text_field4=new JTextField(20); frame_tp.add(text_field4); frame_tp.add(new JLabel(" 航班号:")); text_field5=new JTextField(20); frame_tp.add(text_field5); button_ok3=new JButton("正确"); frame_tp.add(button_ok3); button_ok3.addActionListener(this); frame_tp.addWindowListener(this);
dialog_cx=new JDialog(this,"提示",true);
//提示查询输入航线未开通错误
dialog_cx.setSize(240,80); label=new JLabel("此站点未开通航线,请重新输入!"); dialog_cx.add(label); dialog_cx.setLayout(new FlowLayout(FlowLayout.CENTER));
dialog_cx.addWindowListener(this);
frame_dpsx=new JFrame("订票手续");
//订票手续
frame_dpsx.setSize(250,200); frame_dpsx.setResizable(false); frame_dpsx.setBackground(Color.LIGHT_GRAY); frame_dpsx.setLayout(new FlowLayout(FlowLayout.CENTER)); frame_dpsx.add(new JLabel(" 姓名 :")); text_fielddp_name=new JTextField(10); frame_dpsx.add(text_fielddp_name); frame_dpsx.add(new JLabel(" 航班号 :")); text_fielddp_hbh=new JTextField(10); frame_dpsx.add(text_fielddp_hbh); frame_dpsx.add(new JLabel(" 订票数 :")); text_fielddp_number=new JTextField(10); frame_dpsx.add(text_fielddp_number); frame_dpsx.add(new JLabel("联系方式 :")); text_fielddp_lxfs=new JTextField(10); frame_dpsx.add(text_fielddp_lxfs); button_tj=new JButton("提交"); frame_dpsx.add(button_tj); button_tj.addActionListener(this);
frame_djsx=new JFrame("登记手续");
//登记手续
frame_djsx.setSize(250,200); frame_djsx.setResizable(false);
frame_djsx.setBackground(Color.LIGHT_GRAY); frame_djsx.setLayout(new FlowLayout(FlowLayout.CENTER)); frame_djsx.add(new JLabel(" 姓名 :")); text_fielddj_name=new JTextField(10); frame_djsx.add(text_fielddj_name); frame_djsx.add(new JLabel(" 航班号 :")); text_fielddj_hbh=new JTextField(10); frame_djsx.add(text_fielddj_hbh); frame_djsx.add(new JLabel(" 订票数 :")); text_fielddj_number=new JTextField(10); frame_djsx.add(text_fielddj_number); frame_djsx.add(new JLabel("联系方式 :")); text_fielddj_lxfs=new JTextField(10); frame_djsx.add(text_fielddj_lxfs); button_wc=new JButton("完成"); frame_djsx.add(button_wc); button_wc.addActionListener(this);
frame_tpsx=new JFrame("退票手续");
//退票手续
frame_tpsx.setSize(250,200); frame_tpsx.setResizable(false); frame_tpsx.setBackground(Color.LIGHT_GRAY); frame_tpsx.setLayout(new FlowLayout(FlowLayout.CENTER)); frame_tpsx.add(new JLabel(" 姓名 :")); text_fieldtp_name=new JTextField(10); frame_tpsx.add(text_fieldtp_name); frame_tpsx.add(new JLabel(" 航班号 :"));
text_fieldtp_hbh=new JTextField(10); frame_tpsx.add(text_fieldtp_hbh); frame_tpsx.add(new JLabel(" 退票数 :")); text_fieldtp_number=new JTextField(10); frame_tpsx.add(text_fieldtp_number); frame_tpsx.add(new JLabel("联系方式 :")); text_fieldtp_lxfs=new JTextField(10); frame_tpsx.add(text_fieldtp_lxfs); button_cg=new JButton("成功"); frame_tpsx.add(button_cg); button_cg.addActionListener(this);
dialog_dpwk=new JDialog(this,"提示",true);
//提示订票输入未开通航线错误
dialog_dpwk.setSize(350,80); label=new JLabel("此站点未开通航线,请查询后重新输入!"); dialog_dpwk.add(label); dialog_dpwk.setLayout(new FlowLayout(FlowLayout.CENTER)); dialog_dpwk.addWindowListener(this);
dialog_dpyk=new JDialog(this,"提示",true);
//提示订票输入票额不足错误
dialog_dpyk.setSize(350,150); label1=new JLabel("此站点已满员或余票不足,请查询后重新输入!"); dialog_dpyk.add(label1);
错误
} label2=new JLabel(" 若需要,可登记排队候补"); dialog_dpyk.add(label2); button_sq=new JButton("登记"); button_sq.addActionListener(this); dialog_dpyk.add(button_sq); dialog_dpyk.setLayout(new FlowLayout(FlowLayout.CENTER)); dialog_dpyk.addWindowListener(this);
dialog_tpts=new JDialog(this,"提示",true);
//提示退票输入日期和航班号矛盾dialog_tpts.setSize(350,80); label=new JLabel("您输入的日期无此航班号,请查询后重新输入!"); dialog_tpts.add(label); dialog_tpts.setLayout(new FlowLayout(FlowLayout.CENTER)); dialog_tpts.addWindowListener(this);
d=new JDialog(this,"提示",true);
//当退票满足客户,提示联系该客户
d.setSize(350,150); d.setLayout(new FlowLayout(FlowLayout.CENTER)); d.addWindowListener(this);
this.addWindowListener(this); this.setVisible(true); 4.1.2 软件的查询、订票和退票模块
查询截图:
查询成功截图:
订票截图:
退票截图:
public void actionPerformed(ActionEvent e) { String s=e.getActionCommand(); if(s=="查询") { frame_cx.setLocation(this.getX()+100,this.getY()+100); frame_cx.setVisible(true); }
if(s=="订票") { frame_dp.setLocation(this.getX()+100,this.getY()+100); frame_dp.setVisible(true); }
if(s=="退票") { frame_tp.setLocation(this.getX()+100,this.getY()+100); frame_tp.setVisible(true); }
if(s=="ok") { if(text_field1.getText().toString().trim().equals("北京")) { text_user.append("地点:"+F_name[0]+" 航班号:"+H_number[0]+" 飞机号:"+F_number[0]+" 时间:"+time[0]+" "+Price[0]+" 余票量:"+Count[0]+" ");
价格:
} else if(text_field1.getText().toString().trim().equals("香港")) { text_user.append("地点:"+F_name[1]+" 航班号:"+H_number[1]+" 飞机号:"+F_number[1]+" 时间:"+time[1]+" 价格:"+Price[1]+" 余票量:"+Count[1]+" "); } else if(text_field1.getText().toString().trim().equals("澳门")) { text_user.append("地点:"+F_name[2]+" 航班号:"+H_number[2]+" 飞机号:"+F_number[2]+" 时间:"+time[2]+" "+Price[2]+" 余票量:"+Count[2]+" "); } else if(text_field1.getText().toString().trim().equals("纽约")) { text_user.append("地点:"+F_name[3]+" 航班号:"+H_number[3]+" 飞机号:"+F_number[3]+" 时间:"+time[3]+" "+Price[3]+" 余票量:"+Count[3]+" "); } else if(text_field1.getText().toString().trim().equals("悉尼")) { text_user.append("地点:"+F_name[4]+" 航班号:"+H_number[4]+" 飞机号:"+F_number[4]+" 时间:"+time[4]+" "+Price[4]+" 余票量:"+Count[4]+" "); } else {
dialog_cx.setLocation(this.getX()+100,this.getY()+100);
dialog_cx.setVisible(true); }
价格:价格:价格: } frame_cx.setVisible(false); if(s=="确定") {
String Hnumber=text_field2.getText().toString().trim(); int Dcount=Integer.parseInt(text_field3.getText().toString().trim()); if(Hnumber.equals("CAC")||Hnumber.equals("cac")) {
if(Dcount<=Count[0]) { Count[0]-=Dcount;
frame_dpsx.setLocation(this.getX()+100,this.getY()+100); frame_dpsx.setVisible(true);
} else { dialog_dpyk.setLocation(this.getX()+100,this.getY()+100); dialog_dpyk.setVisible(true);
} else if(Hnumber.equals("CFC")||Hnumber.equals("cfc")&&Dcount<=Count[1]) {
if(Dcount<=Count[1]) { Count[0]-=Dcount; }
frame_dpsx.setLocation(this.getX()+100,this.getY()+100); frame_dpsx.setVisible(true);
} else { dialog_dpyk.setLocation(this.getX()+100,this.getY()+100); dialog_dpyk.setVisible(true); } } else if(Hnumber.equals("CDA")||Hnumber.equals("cda")&&Dcount<=Count[2])
{
if(Dcount<=Count[2]) { Count[0]-=Dcount;
frame_dpsx.setLocation(this.getX()+100,this.getY()+100); frame_dpsx.setVisible(true);
} else { dialog_dpyk.setLocation(this.getX()+100,this.getY()+100); dialog_dpyk.setVisible(true); } } else if(Hnumber.equals("CCX")||Hnumber.equals("ccx")&&Dcount<=Count[3])
{
if(Dcount<=Count[3]) { Count[0]-=Dcount;
frame_dpsx.setLocation(this.getX()+100,this.getY()+100); frame_dpsx.setVisible(true);
} else { dialog_dpyk.setLocation(this.getX()+100,this.getY()+100); dialog_dpyk.setVisible(true); } } else if(Hnumber.equals("MCM")||Hnumber.equals("mcm")&&Dcount<=Count[4])
{
if(Dcount<=Count[4]) { Count[0]-=Dcount;
frame_dpsx.setLocation(this.getX()+100,this.getY()+100); frame_dpsx.setVisible(true);
} else { dialog_dpyk.setLocation(this.getX()+100,this.getY()+100); dialog_dpyk.setVisible(true);
}
if(e.getActionCommand()=="提交") { frame_dpsx.setVisible(false); else {
} frame_dp.setVisible(false); dialog_dpwk.setLocation(this.getX()+100,this.getY()+100); dialog_dpwk.setVisible(true); } } }
if(e.getActionCommand()=="登记") { dialog_dpyk.setVisible(false); frame_djsx.setLocation(this.getX()+100,this.getY()+100); frame_djsx.setVisible(true); }
if(e.getActionCommand()=="完成") { int Wait_number=Integer.parseInt(text_fielddj_number.getText().toString().trim()); Wait_name[Wait_i]=text_fielddj_name.getText().toString().trim(); Wait_hbh[Wait_i]=text_fielddj_hbh.getText().toString().trim(); Wait_count[Wait_i]=Wait_number; Wait_xl[Wait_i]=Wait_i; Wait_lxfs[Wait_i]=text_fielddj_lxfs.getText().toString().trim(); frame_djsx.setVisible(false); text_user.append("登记姓名 :"+Wait_name[Wait_i]+" 登记航班号 :"+Wait_hbh[Wait_i]+" 登记订票数量 :"+Wait_count[Wait_i]+" 联系方式 "+Wait_lxfs[Wait_i]+" "); Wait_i++; }
if(e.getActionCommand()=="正确") { String a=text_field4.getText().toString().trim(); String b=text_field5.getText().toString().trim(); if(a.equals("周三
:")&&b.equals("cfc")||b.equals("CFC")||b.equals("ccx")||b.equals("CCX")) {
} else if(a.equals("周日
")&&b.equals("cda")||b.equals("CDA")||b.equals("mcm")||b.equals("MCM")) { frame_tpsx.setLocation(this.getX()+100,this.getY()+100); frame_tpsx.setLocation(this.getX()+100,this.getY()+100); frame_tpsx.setVisible(true); frame_tpsx.setVisible(true); } else if(a.equals("周五")&&b.equals("cac")||b.equals("CAC")) { frame_tpsx.setLocation(this.getX()+100,this.getY()+100); frame_tpsx.setVisible(true); } else { dialog_tpts.setLocation(this.getX()+100,this.getY()+100); dialog_tpts.setVisible(true); }
frame_tp.setVisible(false);
}
if(e.getActionCommand()=="成功") {
int i=0; int j=0; String c=text_fieldtp_hbh.getText().toString().trim(); int Numb=Integer.parseInt(text_fieldtp_number.getText().toString().trim()); frame_tpsx.setVisible(false); if( c.equals("cac")||c.equals("CAC")) {
Count[0]+=Numb;
if(Wait_i>0) {
for(i=0;i
if(Wait_hbh[i].equals("cac")||Wait_hbh[i].equals("CAC")&&Wait_count[i]<=Count[0])
{
j=i+1;
label=new JLabel(j+"号客户:
"+Wait_name[i]+" 满足订票要求,联系方式是:"+Wait_lxfs[i]); d.add(label); d.setLocation(this.getX()+100,this.getY()+100); d.setVisible(true); } }
}
} else if( c.equals("cfc")||c.equals("CFC")) { Count[1]+=Numb; if(Wait_i>0) {
for(i=0;i
if(Wait_hbh[i].equals("cfc")||Wait_hbh[i].equals("CFC")&&Wait_count[i]<=Count[0])
{
j=i+1;
label=new JLabel(j+"号客户:
"+Wait_name[i]+" 满足订票要求,联系方式是:"+Wait_lxfs[i]); d.add(label); d.setLocation(this.getX()+100,this.getY()+100); d.setVisible(true); } }
}
} else if( c.equals("cda")||c.equals("CDA")) { Count[2]+=Numb; if(Wait_i>0) {
for(i=0;i
if(Wait_hbh[i].equals("cda")||Wait_hbh[i].equals("CDA")&&Wait_count[i]<=Count[0])
{
j=i+1;
label=new JLabel(j+"号客户:
"+Wait_name[i]+" 满足订票要求,联系方式是:"+Wait_lxfs[i]); d.add(label); d.setLocation(this.getX()+100,this.getY()+100); d.setVisible(true); } }
}
} else if( c.equals("ccx")||c.equals("CCX")) { Count[3]+=Numb; if(Wait_i>0) {
for(i=0;i
if(Wait_hbh[i].equals("ccx")||Wait_hbh[i].equals("CCX")&&Wait_count[i]<=Count[0])
{
j=i+1;
label=new JLabel(j+"号客户:
"+Wait_name[i]+" 满足订票要求,联系方式是:"+Wait_lxfs[i]); d.add(label); d.setLocation(this.getX()+100,this.getY()+100); d.setVisible(true); } }
}
} else if( c.equals("mcm")||c.equals("MCM")) { Count[4]+=Numb; if(Wait_i>0) {
for(i=0;i
if(Wait_hbh[i].equals("mcm")||Wait_hbh[i].equals("MCM")&&Wait_count[i]<=Count[0])
{
j=i+1;
label=new JLabel(j+"号客户:
"+Wait_name[i]+" 满足订票要求,联系方式是:"+Wait_lxfs[i]); d.add(label); d.setLocation(this.getX()+100,this.getY()+100); d.setVisible(true); } }
} } } }
北京万能通连锁电航空票务系统平台加盟协议
甲方:
乙方:
甲乙双方本着友好互利、共赢的原则,就乙方代理加盟航空售票系统事宜达成协议。
一、 甲方责任与义务
1、 甲方向乙方提供查票、订票、打票系统。在乙方按本合同约定缴纳相关费用后,24小时
向乙方开账号。
2、 甲方负责乙方的有关平台使用的相关培训,同时提供航空机票联,并提供咨询服务,咨
询电话:010-525828290371-60129292全国客服4006-555-356QQ1905871527
3、 甲方负责系统的正常运转,由于网络环境或其他不可预测的原因而导致平台不能正常运
转,甲方有义务及时修缮,乙方不得追究甲方责任。
4、 如遇乙方废票甲方收取废票工本及手续费:10元/张。
a) 所有本公司所出机票只能在出票当天17:00时以前废票,17:00以后废票按退票处
理。
b) 紧急出票请拨打电话:010-57278388 0371-60657792 全国客服4006-555-356
c) 在乙方向甲方提供退票及废票所需凭证后,扣除乙方已获得的机票返点费后的机票
款当天返回乙方账户。
5、 甲方有权对乙方在平台服务范围内的经营活动进行规范、监督和管理。对于严重损害公
众权益或甲方及平台利益的行为,甲方有权终止乙方继续使用本系统。
二、 乙方责任义务
1. 乙方必须严格按照甲方提供的有关执行操作,具体操作规定、平台使用手册及平台公布
的相关文件都作为本合同附件。
2. 乙方必须熟练掌握系统里的各项操作功能,由于乙方操作原因(包括在甲方提供的图形
化操作界面或专业系统)导致的损失由乙方负责。
3. 乙方必须提供本单位或本人的身份证,营业执照的复印件,并保证提供的相关证明材料
真实有效。
4. 乙方有责任遵守国家相关法令、民航局、航空局和航信系统等机构就机票销售所做的所
有相关规定,不得虚占座位、虚开机票行程单(报销凭证)等所有违章行为,由此带来的所有责任和可能发生的费用由乙方承担。
5. 有关机票退票、废票,乙方须将报销联(已开行程单)及退废票有关的相关材料交回甲
方财务,经审核合格后给于退款。
6. 乙方在甲方购买的机票行程单要严格管理,不得虚假打印,由此引发的所有责任和发生
的费用由乙方全部承担。
7. 乙方通过支票、现金、网上银行、第三方支付平台等方式充值到平台账户。乙方应妥善
保管交款凭证。乙方应及时查询缴款与充值是否相符,并在3个工作日内提出异议以便及时更正。
8. 所有网上交易数据发生异议,乙方都应在3个工作日内向甲方提出,以便核实更正。
9. 乙方交纳___________元,获得____________省________市_______________县(区)系
统使用资格,期限一年;合作满一年后,乙方须续签合作协议,仅交纳系统维护、管理费300元/年,免交系统代理费。
三、 保密
1、 本合同中的条款以及合作期间的双方信息均属商业秘密。
四、 违约责任
1、 一方有下列行为,非违约方有权立即终止本协议:
1) 违反以上相关条款内容。
2) 故意诋毁或损害其他方的声誉;涉及资金诈骗。
五、 不可抵抗
1、 遭受不可抵抗力的一方应采取一切必要措施减少损失,否则就扩大的损失承担责任。
2、 不可抵抗力指不能预见、不能克服并不能避免且对一方或双方当事人造成重大影响的客
观事件,包括但不限于自然灾害如洪水、地震、瘟疫流行和风暴等以及神会事件如战争、**、政府管制等。
3、 由于不可抵抗力致使一方未能全部或部分履行本协议,经书面通知一方,由此产生的任
何直接或间接经济损失双方均不承担责任。
六、 适用法律和争议的解决
1、 本协议部分条款的效力依本协议之规定被终止或被宣告无效的,不影响本协议保密条款
及其它条款的效力。
2、 本协议的立定、效力、解释、履行及争议解决,均受中国法律管辖。
3、 除本协议另有规定外,甲乙双方就本协议或本协议之履行而产生的一切争议,均应首先
通过友好协议的方式解决。涉及双方的争议在协议不成时,任何一方均有权提交被起诉方所在地管辖的人民法院裁决。
七、 合同的变更与终止
1、 在下列情况下,可以终止本协议(1)双方协议(2)因不可抗力导致(3)一方被整顿、
清算或破产。
2、 本协议之变更须经双方同意并采取书面形式确认。任何一方无正当理由,不得擅自单方
面终止协议。
甲方:乙方:
负责人:负责人:
联系电话:联系电话:
年月日年月日
摘 要:随着中国民航业的高速发展,每年航班量的大幅增长,原有的地面运行系统已不能满足现在的生产管理的需要,因此,应当综合考虑技术、经济等因素,为实现航空公司和系统的效率、效能、效益的统一[1],利用计算机技术和网络技术,对航空公司地面运行管理系统进行分析与设计,使新的地面运行管理系统为提高航班正常率提供保障和支持。
关键词:航空公司;地面运行管理;B/S
中图分类号:TP311.52
1 背景分析
中国民航业已进入高速发展的阶段,每年航班量都在大幅增加。航空市场竞争激烈,各公司通过提高服务质量来赢得市场份额,其中航班正常率是乘客最关注的服务质量,因此成为各航空公司绩效考核的重要指标。由于地面运行效率的提高是保证航班正常的重要因素之一,因此,建设一个高效、可靠的地面运行管理系统能帮助公司提升地面运行管理效率。
目前某航空公司的地面运行管理系统采用C/S架构,此系统现已不能满足生产管理的需要,改造难度和成本都比较大,因此迫切需要设计开发一套基于B/S架构的新的地面运行管理系统,为公司建立一个高效可靠的地面运行管理系统,以帮助公司提升地面运行管理效率。
2 系统分析
地面运行管理系统以提高地面运行保障效率为目标,通过各部门有效的协调、沟通为航空的航班服务提供综合保障,因此地面运行管理系统应当能满足以下各方面的要求:
2.1 对航班运行保障服务实现全程监控,为保障航班安全、正点的运行提供实时、准确的信息决策支持
系统以甘特图、列表等方式显示航班的保障情况,通过视频信号、网络和手机平台对整个现场运行进行管理。
2.2 以运行控制为中心,实时采集运行服务支持部门的工作信息
运行控制中心通过对航务、机务、机组、配载和地面服务等部门工作状态的信息汇总,评估飞机放行条件。各地面运行支持部门通过对地面运行管理系统及时更新工作状态,为管理决策提供及时准确的信息支持。
2.3 自动生成部门工作计划
系统的部门排班模块能通过对各部门的输入的预设定信息的分析,自动生成工作计划,在最大程度上保障生产的顺利进行。譬如,机务能将飞机的定检安排录入到系统中,便于运行管理者合理的使用飞机执行航班。系统中汇总的当日各单位值班人员的信息为运控中心的决策服务提供了准确的沟通渠道。
2.4 提供航班情况判断的预警服务
系统通过对航班运行计划和航班实际运行情况的分析,自动的根据航班运行实际情况对异常和紧急情况进行通知、提醒和预警。譬如,当运行控制管理人员在系统输入航班的预计起飞时间后,系统将对预计时间和计划时间进行比较分析,如果预计起飞时间比计划时间滞后,系统将自动将预计延误时间以短信的形式发送给各现场保障单位和执行航班的机组成员,便于各单位安排工作和机组控制进场时间。
2.5 提供领导决策信息支持服务
系统根据实时监控的地面运行保障情况,根据运行控制策略进行自动分析,将管理决策所需的航班运行实际情况(如机务的飞机故障检修情况、地面服务的值机服务等)及时地提供给领导,便于领导对航班调整的决策基于准确有效的服务信息。
2.6 建立航空公司运行管理数据库
存储历史航班运行管理数据,既为本系统的运行信息分析提供支持,也为其它系统提供数据服务。
2.7 建立与其他系统的接口,提高信息交换的准确率与效率
地面运行管理系统需要其他系统的信息,如旅客信息、机组信息、飞机信息等等。也为其他系统提供有效数据。
3 系统设计
3.1 系统总体结构
系统采用B/S结构开发,B/S(Browser/Server)结构即浏览器和服务器结构。B/S结构形成了三层(3-tier)结构,用户工作界面通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,主要事务逻辑在服务器端(Web Server)实现,数据库服务层(Database Server)主要负责数据的操作和维护[2],图1是系统的B/S结构。
图1
3.2 系统功能模块
现场运行管理系统具有运行监控、运行管理、运行服务、系统管理的四大核心功能。
图2
3.2.1 运行监控
运行监控包括各保障部门进度监控和保障异常管理,各保障部门根据航务、机务、机组、配载、地面服务等调度部门保障完成的情况,协调各部门的保障工作,并采用多种模式进行动态监控,以方便的查询到航班保障动态以及航班信息,使其能针对航班保障情况进行协调各部门的保障工作。
3.2.2 运行管理
运行管理包括当日航班计划管理、航班信息发布管理、当次航班运行管理、备降信息管理、奖罚管理。该模块提供了从其他系统自动导入航班计划并允许工作人员在调整时手工修改的功能,并根据航空运行系统的实时数据,通知到相关部门关于该航班的保障工作时间。同时管理当次航班运行数据,包括飞机数据、当日航班计划、保障时间、延误原因、航班性质类型、部门工作内容等。在该模块中还提供了备降信息管理,通过设置备降保障顺序的条件,提供给系统自动根据条件判定备降航班的保障顺序等。根据航班运行的保障情况,该系统通过奖罚管理模块可以自定义奖、罚公式、模板和自动打印罚单。
3.2.3 运行服务
运行服务包括值班计划、运行消息通知、生产分析。值班计划和值班日志课根据系统采集的数据自动填写,也为员工提供模板手动填写补充值班人员的交接班记录和值班记录,减少员工工作量,该系统还支持把值班日志导出PDF文档。运行消息通知功能提供了给系统中通讯录的部门、员工发送通知短信的功能。对各部门完成任务的情况自动统计,作为部门奖罚的判断依据,对于航班保障汇报的数据(延误原因)进行分析,汇总每种延误原因的延误率是多少,同时作为领导决策的支撑数据。
3.2.4 系统管理
系统管理模块包括系统权限设置、应急备份系统、部门员工信息管理、资料管理。通过系统权限设置可以为每个员工岗位身份设置不同级别的操作权限,通过应急备份系统为系统支持实时数据备份提供保障,使生产工作不受系统故障的影响。通过部门员工信息管理功能建立员工身份信息、通讯录等资料,通过资料管理对航班信息数据等文档资料存储、处理、删除、更新。
4 结束语
本系统采用java语言编写,B/S为系统架构,oracle数据库。目前系统已在某航空公司投入使用,运行良好,提高航班地面运行保障管理效率。系统具有安全性、易用性,可扩展性,为保障部门及时准确的信息获取提供了支持。
参考文献:
[1]张友生,信息系统项目管理师[M].北京:电子工业出版社,2012(06):03.
[2]王英辉,基于B/S模式的钢企自动化管理系统的设计与应用[J].制造业自动化,2013(10):73.
[3]郜惟,罗江华,基于B/S架构的土地资源管理系统的设计[J].科技信息,2013(15).
[4]王涛,俞利健,基于B/S的电力企业干部管理信息系统的设计与实现[J].浙江电力,2013(08):68.
作者简介:万畅(1976-),四川渠县人,硕士研究生,研究方向:计算机网络计算。
作者单位:广东省科技干部学院,广东珠海 519090
南昌航空大学航空制造工程学院060316班
毕 业 晚 会 策 划 书
一、晚会意义:
在大学毕业之际我们举办这样一个告别晚会意义重大,首先,毕业晚会是我们机械系的的一个传统,她承载着学校和学生、老师和学生、学生和学生四年的感情。这是她的一场仪式,一场告别的仪式,一场开始的仪式,一场继续奋斗的仪式。其次,毕业晚会是给同学们一个宣泄自己感情的一个机会,在晚会上大家可以畅所欲言,不受拘束,是同学们大学四年的最后一次聚会,能够更加深刻的增进大家的感情。最后,毕业晚会内容积极向上,可以使毕业生们怀着最美好的希望步入到社会这个大熔炉中„„
这次毕业晚会的主题是“草根的春天”。这次晚会突出一个“爱”字,主要是对即将毕业离校的学生,借这个晚会把大家对毕业生的美好祝愿予以表达,也借此让毕业生再次感受学校大家庭的温暖以及4年的美好回忆。
二、晚会主题: 草根的春天
选题原因:我们当代大学生早已经不是所谓的天之骄子,但是我们绝对不能因为别人的轻视而自卑,我们要正确的认识自己。我们还是埋在土里丑陋的草根,但是我们已经在不见阳光但是营养丰富的地下吸取了足够的养分,只待春天,我们就会破土而发。
我们就是丑陋的根,但是我们早晚都会成为草、成为花、成为南昌航空大学航空制造工程学院060316班毕业晚会策划书第 1 页 共 6 页
大树,成为一切为春色添彩的亮丽风景。为了这个目标,我们将倾尽一生,为之奋斗!
三、晚会目的:
人生的青春其实很短,在青春时期中也许最值得怀念的就是这大学四年,在这四年的记忆中有着灯火通明的教学楼里用功的身影,有着篮球场上捍卫集体尊严的男儿霸气,还有着满是欢声笑语的宿舍里不着边际的闲谈„„
四年后的今天,我们毕业了,我们将要走入社会,去接受社会的洗礼,去工作,去谈恋爱,去奋斗„„也许我们会在社会的污浊中迷失我们的那份纯真,也许我们会放弃我们的梦想,也许我们会被残酷的现实磨平棱角„„但是我们希望用这台晚会在我们的记忆里留下一些东西,那就是我们曾经年轻过,曾经有过梦想,曾经为梦想奋斗过„„
四、晚会总体事项:
1、举办时间:2010年5月25日19:00——21:30
2、举办地点:初步定于前湖校区具有多媒体的教室
3、主办单位:南昌航空大学航空制造工程学院060316班班委、党员
4、承办单位:南昌航空大学航空制造工程学院060316班全体同学
五、晚会筹备:
1、工作人员
顾问:洪书生老师、洪连环老师
指导:洪连环老师
总协调:吴微萍
导演:洪少雷
副导演:付伟明、范建珍
总策划:吴微萍
成员:南昌航空大学航空制造工程学院060316班班委、党员
(预备党员)
2、工作组:
(1)、宣传、后勤组
组长:奚 刚
组员:黄小文、刘飞龙、刘湖、左艳、甘志利
任务:① 信息中心负责晚会现场拍照,每个节目至少一张照
片;
② 负责后期宣传工作;
③ 负责赞助商的确定以及服装租赁;
④ 负责购买晚会所需物品;
⑤ 负责布置会场和清理会场。
(2)、秘书组
组长:吴微萍
组员:胡世超
任务:① 领导和嘉宾请柬的准备及发送
② 打印晚会所需证书
(3)、节目组
组长:洪少雷
组员:吴佳、龙硕峰、任海羽
任务:① 文艺部负责主持人及节目的筛选,节目排练、彩排
工作
② 负责主持人台词准备
③ 编写主持语。
(4)、机动组
组长:
组员:
任务:
六、晚会形式及内容:
晚会主要以歌舞、小品、相声、歌舞剧以及诗歌朗诵等表现。
七、晚会前的准备:
1、晚会会场布置完毕。气球、彩带以及各种装饰全部布置好。
2、分划好领导和嘉宾座位,保证椅子、桌子及各种必须物品数 量足。
3、在观众及来宾入场口的专门服务人员就位,指引和指导嘉宾 入场、归座。
八、晚会流程:
1、入场(入场时播放歌曲《青春纪念册》);
2、全体就坐,晚会正式开始;
3、主持人宣布晚会开始;
4、开始晚会的文艺表演。表演节目单如下(按演出顺序排列);
5、请领导讲话(内容略);
6、请毕业生代表讲话(内容略);
7.为优秀毕业生颁发证书;
8、集体合影;
9、主持人宣布晚会结束;
10、退场(退场时播放《难说再见》)
九、应急预案:
1、停电应急方案:
(1)若晚会前停电,晚会最多推迟1小时即20:00举行,此 间观众自由处理自己的时间;如果20:00仍没有正常供电,则 由主持人宣布晚会改天举办。
(2)在晚会前半部分之间停电超过10分钟后由主持人宣布晚 会改天重新举行;在晚会后半部分之间停电超过10分钟后由主 持人宣布晚会闭幕。
(3)在停电期间,由节目组负责演员的组织与服装道具的看管 工作;由礼仪组负责领导及来宾的服务工作;由舞台组负责舞 台、音箱设备、灯光设备等的看管。
2、节目应急方案:
(1)台上一个节目演出时,其后的两个节目在后台准备,前一 节目由于各种原因无法按时出演时,下一个节目即时跟进。
(2)任一节目在演出过程中发生失误或无法顺利进行的情况
时,由节目的领演人迅速组织演员重演此节目;若重演仍出现 问题,则该节目立即退场,视具体情况决定其再次重演或取消。
3、其它紧急情况发生时,由机动组负责维持秩序。
十、资金预算及来源:
用途金额(单位:元) 气球、彩带、礼炮100 请柬、证书、节目单打印100 互动节目奖品50 嘉宾用水及水果50 总预算:300元
资金来源:班费、赞助商支持!
南昌航空大学航空制造工程学院060316班
班级委员会、毕业晚会筹备委员会
二O一O年三月十八日
推荐阅读:
微电子技术在航空电子系统中的应用07-27
航空学报05-25
成都航空职业学院06-02
南昌航空大学校徽07-04
航空维修差错分析09-14
沈阳航空航天大学06-01
中国民用航空旅客规定07-07
航空公司求职简历07-14
航空维修调研报告09-07
航空公司安全征文09-09