首页 计划总结 工作报告 领导讲话 致辞演讲 心得体会大全 应用材料 实用文档 党团建设 专题范文 思想汇报 发言稿 述职报告
  • 党的会议
  • 全国两会
  • 工作体会
  • 学习心得
  • 感悟体会
  • 专题教育
  • 观读后感
  • 评语寄语
  • 《软件工程实践》报告机票预定系统|uml机票预订系统类图

    时间:2021-01-29 20:04:56 来源:职场写作网 本文已影响 职场写作网手机站

    《软件工程实践》报告 ——机票预定系统 院系:
    专业班级:
    报告人:
    指导教师:
    实验地点:
    完成起止日期:
    学号 姓名 角色 成绩 组长 完成工作 主要:写论文、资料整合、概要设计、指导画图、编码调试。

    参与:讨论、可行性分析、测试、作图 评语 组员 完成工作 主要:经济可行性分析、用例分析、详细设计作图、编码调试、实行测试和运行。

    参与:讨论、收集资料 评语 组员 完成工作 主要:收集资料、需求分析作图、详细设计作图、测试作表 参与:讨论、可行性分析、概要设计、 评语 目录 第一章 可行性分析 5 1.1引言 5 1.1.1 编写目的 5 1.1.2 项目背景 5 1.2可行性研究的前提 6 1.2.1要求 6 1.2.2目标 6 1.2.3条件,假定和限制 6 1.2.4决定可行性的主要因素 6 1.3技术可行性分析 6 1.3.1系统简要描述 6 1.3.2处理流程和数据流程 7 1.4经济可行性分析 7 1.4.1支出 7 1.4.2效益 7 1.4.3 收益/投资比 8 1.4.4投资回收周期 8 1.4.5敏感性分析 8 1.5法律因素 8 1.6其他可供选择的方案 8 1.7结论意见 8 第二章需求分析 9 2.1求规格说明 9 2.1.1系统概貌 9 2.1.2功能需求 9 2.1.3性能需求 9 2.1.4运行需求 10 2.2数据流图分析 10 2.2.1数据流图 10 2.2.2数据描述  11 2.2.3数据词典  11 2.3用例分析 12 2.3.1系统基本用例 12 2.3.2 用况描述 13 2.3.3系统业务逻辑描述 15 第三章 概要设计 16 3.1系统的结构化设计 16 3.1.1软件体系结构图 16 3.1.2软件结构流程图  17 第四章 详细设计 19 4.1 机票预订管理系统体系结构设计 19 4.1.1面向旅客的界面包的类图 20 4.1.2面向管理员的界面包的类图 21 4.1.3机票预订系统的体系结构图 22 4.1.4机票预订系统的体系结构图描述 23 4.2 机票预订管理系统子系统设计 23 4.2.1用户查询航班及机票信息 23 4.2.2旅客订票及退票 24 4.2.3机票预订系统统计分析 26 4.3数据库结构设计 26 4.4数据库表创建  27 第五章测试 29 5.1定义 29 5.2主界面模块 29 5.2.1用户注册 29 5.2.2用户登录 31 5.2.3管理员登录 33 5.3查询机票模块 35 5.4 航班管理模块 37 5.5用户订票模块 39 第六章 结束语 42 第一章 可行性分析 1.1引言 随着社会发展的不断进步,航空事业不断壮大,人们生活水平不断提高,乘坐飞机的人也越来越多,随着消费者的不断增多,飞机预订系统在各地预订网点作用也愈显重要。目前,我国还有相当一部分地区酒店的机票预订还未进入智能处理阶段,和发达地区比较工作效率较低。在计算机技术快速发展的今天,有必要引进高效的计算机系统来协助机票预订工作。因此开发一套具有完整的存储,查询,核对,打印机票功能的实时机票预订系统势在必行。机票预定系统应克服存储乘客信息少,查询效率低下等问题外,更重要的是其安全性,可靠性,这关系到航班和乘客的安全及准确,本系统因面向广大机票预定网点,因此要能在售票网点中普及,则需要开发一个功能全,价格能被顾客所接受的系统。  机票预订系统是为了机场工作人员和客户提供订票退票等与机票相关内容和管理的系统,它具有开放的系统结构,易扩充的,易维护的,具有良好人机界面的优点。它克服了存储客户信息少,查询效率低等问题,更重要的是其安全性,可靠性,实现航空公司的机票销售的自动化,为乘客出行提供方便,便于机场人员信息管理,提高了机场人员对机票管理的工作效率。

    1.1.1 编写目的 可行性研究的目的是为了对问题进行研究,以最小的代价在最短的时间内确定问题是否可解。

    经过对此项目进行详细调查研究,初拟系统实现报告,对软件开发中将要面临的问题及其解决方案进行初步设计及合理安排。明确开发风险及其所带来的经济效益。本报告经审核后,交软件经理审查。

    1.1.2 项目背景 开发软件名称:机票预订系统。

    项目任务提出者:航空公司及旅游开发公司。

    项目开发者:
    A++开发小组。

    用户:航空公司及旅游开发公司。

    实现软件单位:旅游开发公司及厦门理工学院 项目与其他软件,系统的关系:
    本项目采用客户机/服务器原理,客户端的程序是建立在Windows XP 系统上以Microsoft Visual C++为开发软件的应用程序。

    1.2可行性研究的前提 1.2.1要求 主要功能:为游客提供机票预定服务,方便旅游局的售票工作,提高旅游局的服务质量和服务效率 。

    性能要求:机场提供的信息必须及时的反映在旅游局的工作平台上。售票系统的定单必须无差错的存储在机场的主服务器上。对服务器上的数据必须进行及时正确的刷新。

    输出要求:数据完整,详实。

    输出要求:简捷,快速,实时。

    安全与保密要求:服务器的管理员享有对机场航班信息库及机票信息库和定票信息库的管理与修改。售票员只享有对订票信息库的部分修改(写入与读出)。

    完成期限:预计两个月。

    1.2.2目标 系统实现后,大大提高旅游局的机票预定服务效率。降低售票服务中的错误发生率,减少信息交流的烦琐过程及其带来的开销。

    1.2.3条件,假定和限制 建议软件寿命:5 年。

    经费来源:中国国际旅游开发公司。

    硬件条件:终端为pc 机。

    运行环境:WindosXP 1.2.4决定可行性的主要因素 成本/效益分析结果,效益 > 成本。

    技术可行,现有技术可完全承担开发任务。

    操作可行,软件能被原有工作人员快速接受。

    1.3技术可行性分析 1.3.1系统简要描述 在旅游局中的终端是安装了Windows XP的PC机,主要目的是向机场的服务器传递数据。当顾客在旅游局进行咨询时,终端向服务器发出查询请求,服务器根据航班信息库的实时数据,向终端发送数据,显示在终端的屏幕上。当顾客向售票员定票时,终端向服务 器发出详尽的一份定单,服务器核对后,存入定票信息库,并修改机票信息库。当顾客再次 来取票时,终端向服务器发出查询定票请求,服务器接收后,查询定票信息库,核对后,传送机票确认表单,终端打印出机票。

    1.3.2处理流程和数据流程 图1-1 数据流程图 1.4经济可行性分析 1.4.1支出 基础投资:
    终端PC 机5台:6000*5 = 3 万 网络设备和辅助配置:4 万 共计:7万 其他一次性投资:
    MYSQL : 0元 Windows XP: 2 万 操作员培训费:3万 共计:5 万 经费:
    人工费用: 2(月)*5(人)*4000(元)=4 万 其他不可知额外支出: 4 万 共计: 8万 支出共计:20 万 1.4.2效益 一次性收益 0元 经常性收益 (按银行利率:1%);

    减少员工5 人(100 元/人)五年收益: 100*(1/1.01+1/(1.01)2+1/(1.01)3+1/(1.01)4+1/(1.01)5)*5*12*5=170000 工作效率提高收益(工作效率提高20%): 20000*(1/1.01+1/(1.01)2+1/(1.01)3+1/(1.01)4+1/(1.01)5)*(20%)*5 = 117000 经常性收益共计:28.7万 不可定量收益 因服务质量提高增加收益:3000*12*5=180000 收益共计: 46.7万 1.4.3 收益/投资比 46.7 万/20 万=233.5% 1.4.4投资回收周期 2.54年 1.4.5敏感性分析 设计系统周期为五年, 估计最长可达7 年 处理速度: 一般查询速度<4 秒 关键数据查询速度: <2 秒 1.5法律因素 所有软件都选用正版;

    所有技术资料都由提出方保管;

    合同制定确定违约责任。

    1.6其他可供选择的方案 端与服务器端联系在一起,在旅游局中只设立终端,在机场设立服务器,数据输入由终端输入,所有数据都由服务器处理,只在终端上显示数据结果。此设计简化了数据处理,但加重了服务器的数据处理。而使用客户端/服务器机理, 简化数据流量,加快数据处理。

    1.7结论意见 由于投资效益比远大于100%, 技术、经济、操作都有可行性,可以进行开发。

    第二章需求分析 2.1求规格说明 2.1.1系统概貌 航空公司为方便旅客,需开发一个机票预定系统。为便于旅客由旅行社代替航空公司负责为旅客定票,旅行社把预定机票的旅客信息,包括姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地,输入机票预定系统的客户端程序,系统经过查询航空公司内的航班数据服务器后,为旅客安排航班,印出取票通知。旅客在飞机起飞前一天凭取票通知和账单交款后取票,系统校对无误后即印出机票给旅客。

    2.1.2功能需求 1. 航空公司工作人员登录及注销     要求合法的管理员才可以登录系统,防止系统被无关人员动用,使用字符串匹配对 用户名和密码进行判断。在不使用时进行注销,下次使用时需要重新登陆,由于目标客户 的层次较低,建议用输入检测确保输入准确无误。    2. 机票信息输入和查询     在系统中,要求可以输入每日航班次数。可以通过航班号、目的地、起飞日期、起飞地点查询航班,输出该次航班的起飞时间和所剩票数和票的价格等信息。   3. 订票,取票和退票     把预定机票的旅客信息(姓名、性别、工作单位、身份证号码(护照号码)、旅行时间、旅行始发地和目的地,航班舱位要求等)输入到系统中,系统为旅客安排航班。当旅客交付了预订金后,系统打印出取票通知和帐单给旅客。,旅客在飞机起飞前一天凭取票通知和帐单交款取票,系统对旅客有关证件合法性(如身份证、取票通知和交款发票)等进行验证,系统核对无误即打印出机票给旅客。对于已取机票应在未售出机票中减去。对于以下情况要求退票者,给予50%金额退款:(1)旅客延误取票时间;
    (2)旅客临时更改航班处理;
    (3)因私人原因需要退票。对于因特殊情况下(如天气不适合飞机起降、飞机延误超过30分钟)等给予全额退票。对于退订机票要在未售出机票中重新体现。

    2.1.3性能需求 为了保证系统能够长期、安全、稳定、可靠、高效的运行,机票预订系统应该满足以下的性能需求:  1. 系统处理的准确性和及时性  系统处理的准确性和及时性是系统的必要性能。在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间能够满足企 业对信息处理的需求。在系统开发过程中,必须采用一定的方法保证系统的准确性。  2. 系统的开放性和系统的可扩充性  机票预订系统在开发过程中,应该充分考虑以后的可扩充性。要实现这一点,应通过系统的开放性来完成,即系统应是一个开放系统,只要符合一定的规范,可以简单的加入和减少系统的模块,配置系统的硬件。通过软件的修补、替换完成系统的升级和更新换代。  3.系统的易用性和易维护性  机票预订系统是直接面对使用人员的,而使用人员往往对计算机并不时非常熟悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。

    4.系统的标准性  系统在设计开发使用过程中都要涉及到很多计算机硬件、软件。所有这些都要符合主流国际、国家和行业标准。同时,在自主开发本系统时,要进行良好的设计工作,制订行之有效的软件工程规范,保证代码的易读性、可操作性和可移植性。  5.系统的先进性  目前计算机系统的技术发展相当快,做为机票预订系统工程,应该保证系统在一段时间内是先进的,在系统的生命周期尽量做到系统的先进,充分完成企业信息处理的要求而不至于落后。这一方面通过系统的开放性和可扩充性,不断改善系统的功能完成。另一方面,在系统设计和开发的过程中,应在考虑成本的基础上尽量采用当前主流并先进且有良好发展前途的产品。  2.1.4运行需求 系统软件:windows XP 数据库管理系统:MYSQL   硬件要求:奔四 1.6GHz    512M RAM   10G HD 2.2数据流图分析 2.2.1数据流图 图2-1本系统的顶层数据流图 图2-2 0层数据流图 图2-3 本系统的二层数据流图 2.2.2数据描述  1.静态数据 :订票单、取票通知单、帐单、机票 2.动态数据 :旅客姓名、身份证、航班时间 2.2.3数据词典  1.旅客信息  名字:旅客信息  别名:passenger information  描述:旅客的个人信息,用于对旅客的确认  定义:旅客信息=姓名+性别+工作单位+身份证号码+旅行时间+旅行目的地  位置:输入到旅行社端(client端) 2.订票旅客清单  名字:订票旅客清单  别名:list  描述:已订票的旅客的记录  定义:订票旅客清单=旅客信息的合集  位置:输入到旅行社端(Client端) 3.订票信息  名字:订票信息  别名:booked information  描述:旅客的旅行时间和目的地,用于确定旅客的航班  定义:订票信息=旅客旅行时间+旅客旅行目的地  位置:传输到航空公司端(Server端) 4.航班机票信息  名字:航班机票信息 别名:Bill Information  描述:旅客的航班信息,根据旅客的旅行时间和目的地确定  定义:航班机票信息=旅客机票时间+旅客机票班次  位置:传输到旅行社端(Client端)  5.取票通知  名字:取票通知  别名: notification  描述:旅客领取机票的凭证  定义:取票通知=旅客姓名+领票时间 位置:输出到打印机  6.售出机票信息  名字:售出机票信息  别名:saled  描述:旅客的航班机票的信息  定义:售出机票信息=旅客的航班机票  位置:输出到打印机  7.旅客订票记录  名字:旅客订票记录 别名:record  描述:已订票的旅客在航空公司的记录  定义:旅客订票记录=旅客姓名+航班机票信息  位置:输出到航空公司端(Server端) 2.3用例分析 2.3.1系统基本用例 本系统的边界是:机票预定系统服务平台。

    系统的参与者有:航空公司管理员、旅行设、旅客。用例图如下:
    图2-4 系统用例图 1.航空公司管理员通过系统实现以下使用需求:
    登录、预订机票、退订机票、取票管理、航班查询、 航班信息管理、订票信息管理、旅客信息管理 2.旅客通过系统实现以下使用需求:
    登录、预订机票、退订机票、航班查询 3.旅行社通过系统实现以下使用需求:
    航班查询、旅客信息管理 2.3.2 用况描述 1.用例名:登录。

    主要执行者:旅客。

    目标:可以查询和修改旅客的基本信息。

    范围:机票预订系统。

    基本互交动作:
    1).旅客登录。

    2).旅客输入姓名、证件类型、证件号码及电子邮件地址。

    2.用例名:预订机票。

    主要执行者:旅客。

    目标:预订机票。

    范围:机票预订管理系统 基本互交动作:
    1).旅客查询航班及机票 2).旅客选取信息表中的一个航班,输入姓名、证件及号码。

    3).显示总票款。

    4).旅客确认预订信息、总票款。

    3.用例名:退订机票。

    主要执行者:旅客。

    目标:取消此前预订的机票。

    范围:机票预订系统。

    基本互交动作:
    1).用户登录。

    2).系统显示旅客此前预订但并未登机的机票;
    旅客选取欲退订的机票。

    3).系统按照退票费计算规则计算退票费,显示欲退订机票的总票款及总退费。

    4).旅客确认退票请求、总票款。

    4.用例名:查询航班。

    主要执行者:旅客及旅行社。

    次要执行者:航空公司。

    目标:查询航班时刻表、机票等信息。

    范围:机票预订管理系统。

    基本互交动作:
    1).用户登录。

    2).用户输入出发地、目的地、出发日期、起飞或者到达时间的范围。

    3).系统从航空公司的机票管理系统中获取航班及机票信息,显示符合旅客要求的 所有航班及剩余机票数量。

    5.用例名:航班信息管理 主要执行者:航空公司。

    目标:提供最新的航班信息。

    范围:机票预订系统。

    基本互交动作:
    1).更新航班信息(每5秒)。

    2).提供航班信息。

    6.用例名:取票管理 主要执行者:航空公司。

    目标:及时通知旅客取票时间及方式。

    范围:机票预订系统。

    基本互交动作:
    1).获取已定机票信息并打印机票。

    2).通知旅客取票的时间及方式。

    7.用例名:旅客信息管理 主要执行者:航空公司、旅行社。

    目标:储存旅客信息。

    范围:机票预订系统。

    基本互交动作:
    1).对旅客填写的个人信息进行保存以便于管理。

    2).定时更新旅客的信息。

    8.用例名:报表及分析。

    主要执行者:定时器(每周一00:00) 次要执行者:管理员。

    目标:汇总前一周的订票、退票情况。

    范围:机票预订系统。

    基本互交动作:
    1).系统汇总自上次生成周报表至此刻发生的所有订票、退票情况。

    2.3.3系统业务逻辑描述 本系统的业务逻辑是这样的:旅客登录系统,使用客户端进行订 票、查询、退票的操作,旅行社通过查询和旅客信息管理与航空 公司进行数据交流与业务往来。

    第三章 概要设计 3.1系统的结构化设计 3.1.1软件体系结构图 图3-1 系统的软件体系结构图 1.旅客用户模块:本模块主要功能,是旅客可登录系统进行机票信息查询,并根据需求预订机票,在支付预定金后系统打印取票清单。

    2.航空公司模块:该模块主要功能,是对航班及机票信息进行管理更新,并根据用户提供的取票清单和付款单进行验证和打印机票。

    3.系统管理员模块:本模块主要功能,是管理员对系统的软硬件进行维护,并对航空公司产生的业务进行编制报表和分析。

    4. 旅行社模块:本模块主要功能,是旅行社可登录系统进行机票信息查询和管理旅客信息。

    3.1.2软件结构流程图  图3-2 软件结构流程图 1.各功能详细描述  本系统主要用于机票预订,所以提供了以下几个子功能:机票预订,取票通知,查询航班,查询机票,退票,打印机票,取消航班,机票的生成,以及航班的查询等后台功能。  1).机票预订功能:旅行社和机场管理员有权力进行该项功能。首先通过查询得到旅客所需的航班,确定该航班还有没有被预订的座位,然后选择座位的等级,填写旅客的详细信息之后就可进行网上预订机票。  2).票通知:该项功能只有旅行社和机场管理员有权力进行操作,在机票预订功能成功完成之后,系统会自动给浏览器端发送一条取票信息以及所需缴纳的费用。旅行社可以利用特定设备将该取票信息打印出来,这就是取票通知。  3).查询航班:可以通过输入出发地,目的地,日期和时间选定自己航班。  4).查询机票:该项功能三方都可以操作,可以通过自己的身份证号以及取票通知上的机票号查询自己的机票信息。  5).退订机票:该功能只有旅行社和机场管理员有权力操作,利用身份证号和对应的机票号就可以查询到机票信息,然后就可以退订机票。  6).打印机票:该功能只有机场管理员有权力操作,只有当管理员确认旅客已经付款后才予以打印机票,可以通过身份证号和对应的取票信息上的机票号查询机票信息,然后服务器返回机票信息,管理员就可以打印该机票信息,交给旅客。  7).后台的取消航班:该项功能只有机场管理员才能操作,先通过航班号和航班日期查询到航班信息后,取消航班就可以将该航班从数据库中删除。  8).后台的航班查询:该项功能只有机场管理员才能操作,通过航班号和航班日期查询到航班信息。  9).后台的机票生成:该项功能只有机场管理员才能操作,可以通过该项功能给刚添加的航班生成对应的飞机票号纪录。  第四章 详细设计 4.1 机票预订管理系统体系结构设计 本系统包图主要包括:用户界面包、航空公司业务逻辑包及与外部系统的接口。其中业务逻辑中还包含订票及退票包、客户管理包、统计分析包。

    图4-1 机票预定管理系统之包图 4.1.1面向旅客的界面包的类图 图4-2 面向旅客的界面包的类图 4.1.2面向管理员的界面包的类图 图4-3 面向管理员的界面包的类图 4.1.3机票预订系统的体系结构图 图4-4机票预订系统的体系结构图 4.1.4机票预订系统的体系结构图描述 1.在TicketService构件的对外接口中,quertFlights负责查询航班及尚余机票bookTickets和returnTickets分别负责订票和退票,通过TicketSaleAgent向航空公司的机票销售管理系统发出订票和退票请求,通过DataPersistenceServiceInterface在数据库中记录客户的订票和退票情况。querySaleTickets和queryReturnTickets负责查询客户的订票和退票情况。

    2.在CustomerManager构件的对外接口中,register和unregister分别负责客户信息的记录和注销。getCustomerInfo和setCustomerInfo分别负责获取和修改客户信息。

    3.在StatAndAnalyser子系统的对外接口中,statSaledTickets和statReturnTickets借助于TicketServiceInterface中的querySaleTickets和queryReturnTickets分别统计在某一时段售票和退票的情况。

    4.2 机票预订管理系统子系统设计 4.2.1用户查询航班及机票信息 图4-5 机票预定系统之查询航班及机票信息类图 图4-6 查询航班及机票用例顺序图 4.2.2旅客订票及退票 图4-7机票预订管理系统之“订票及退票”包的类图 图4-8 订票用例顺序图 图4-9 退票用例顺序图 4.2.3机票预订系统统计分析 图4-10 机票预订系统之统计分析包的类图 图4-11 生成统计分析报表的顺序图 4.3数据库结构设计 根据总的结构图设计各表结构如下:
    表4-1 旅客信息表 表4-2航班信息表 表4-3机票信息表 4.4数据库表创建  CREATE TABLE 旅客信息表  ( 姓名 char(50) NOT NULL primary key,     性别 char(50) NOT NULL,  年龄 int NOT NULL,  用户密码char(50) NOT NULL,  证件号 int NOTNULL) CREATE TABLE 航班信息表  ( 航班号 int NOT NULL,  primary key,  出发时间 char(30) NOT NULL,   出发地 char(20) NOT NULL,   目的地 char(20) NOT NULL, 票数 int NOT NULL, 票价 int NOT NULL) CREATE TABLE 机票信息表  ( 姓名 varchar(50) NOT NULL primary key,   座位号int NOT NULL, 航班号 int NOT NULL, 登机口 int NOT NULL,   票价 int NOT NULL,    时间 char(30) NOT NULL,  出发地 char char(50)NOT NULL,  目的地 char(50)NOT NULL)  第五章测试 5.1定义 黑盒测试:
    黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测 试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。

    黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。很明显,如果外部特性本身设计有问题或规格说明的规定有误,用黑盒测试方法是发现不了的。

    白盒测试:
    白盒测试也称结构测试或逻辑驱动测试,它是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。

    这一方法是把测试对象看作一个打开的盒子,测试人员依据程序内部逻辑结构相关信息,设计或选择测试用例,对程序所有逻辑路径进行测试,通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。

    5.2主界面模块 主界面与注册界面和登录界面(航空公司管理员登录、用户登录)。

    通过主界面可以进入注册界面和登录界面,由登录界面分别进入航空公司管理系统和用户预订机票系统。

    5.2.1用户注册 1.输入项 表5-1 测试用户注册输入项 字段名称 数据类型 长度 允许空 字段描述 Name Char 50 否 用户真实姓名 Sex Char 50 否 用户性别 Age Int 35 否 用户年龄 Password Char 50 否 用户密码 Credential Int 35 否 用户身份证号 2.输出项 1显示注册成功,按任意键返回主页;

    2提示该身份证号已注册,重新输入。

    3.算法 点击主界面2入口中的一个,可进入相应的注册界面。

    内部处理 if 用户身份证号注册过, 提示错误信息: 该身份证号已注册,请重新输入! else 显示注册成功,按任意键返回主页。

    4.流程逻辑 图5-1 用户注册流程逻辑图 5.编码和界面 图5-2 用户注册界面 图5-3 用户注册错误测试结果 6.测试用例 对输入参数查验,检测数据库数据异常时能否判断并给予适当处理。

    表5-2用户注册测试用例 测试用例 预期结果 错误的身份证号 提示:身份证已注册 正确的用户信息 提示:注册成功 5.2.2用户登录 1.输入项 表5-3 测试用户登录输入项 字段名称 数据类型 长度 允许空 字段描述 username char 50 否 用户真实姓名 password char 30 否 登录密码 2.输出项 1显示登陆成功,按任意键进入机票预订系统;

    2提示用户或密码错误,重新输入请按y,退出请按n。

    3.算法 点击主界面2入口中的一个,可进入相应的登录界面。在用户 登录界面输入用户名与密码,点击确定按钮:
    内部处理 if 用户名或密码不正确 提示错误信息: 用户或密码错误,请重新输入! else 登陆成功并转入相应页面 点击0确认:返回主界面。

    4.流程逻辑 图5-4 用户登录流程逻辑图 5.编码和界面 图5-5 登录界面 图5-6 用户登录成功 图5-7 用户登录错误测试 6.测试用例 对输入参数查验,检测数据库数据异常时能否判断并给予适当处理。

    表5-4 用户登录测试用例 测试用例 预期结果 错误的用户名 提示:用户名错误 错误的密码 提示:密码错误 正确的用户名、密码 提示:登陆成功进入机票预订系统 5.2.3管理员登录 1.输入项 表5-5 管理员登录测试输入项 字段名称 数据类型 长度 允许空 字段描述 manager char 50 否 管理员姓名 password char 30 否 登录密码 2.输出项 1显示登陆成功,按任意键进入机票调整系统;

    2提示姓名或密码错误,重新输入请按y,退出请按n。

    3.算法 点击主界面2入口中的一个,可进入相应的登录界面。在管理者 登录界面输入姓名与密码,点击确定按钮:
    内部处理 if 姓名或密码不正确 提示错误信息: 用户或密码错误,请重新输入! else 登陆成功并转入相应页面 点击0确认:返回主界面。

    4.流程逻辑 图5-8 管理员登录流程逻辑图 5.编码和界面 图5-9 管理员登录成功 图5-10 管理员登录错误测试结果 6.测试用例 对输入参数查验,检测数据库数据异常时能否判断并给予适当处理。

    表5-6管理员登录测试用例 测试用例 预期结果 错误的姓名 提示:姓名错误 错误的密码 提示:密码错误 正确的姓名、密码 提示:登陆成功进入机票调整系统 5.3查询机票模块 用户或管理员进入查询机票界面,可以通过查找航班信息来选择自己要乘坐的航班。

    1. 输人项 表5-7 查询机票测试输入项 字段名称 数据类型 长度 默认值 允许为空 字段描述 Flight_num string 是 飞机班次 2. 输出项 表5-8 查询机票测试输出项 字段名称 数据类型 长度 默认值 允许为空 字段描述 Flight_num string 是 飞机班次 Origion string 是 旅行始发地 Destination String 是 旅行目的地 Leave_time string 是 旅行初始时间 3.算法 显示查询界面 case1 航班号 输入查询的航班号;

    break; 根据所输出的内容,连接数据库开始搜索 if 找到符合条件的机票 显示输出 else 没有找到符合要求的机票 4.流程逻辑 选择航班号 查询 检索数据库 显示结果 Y N 图5-11查询机票流程逻辑图 5.编码和界面 图5-12 查询机票错误测试结果 图5-13 查询机票成功 6.测试计划 输入数据:输入参数合法,数据库出现异常的处理。数据的共享与独立性,一致性与完整性。

    7. 测试用例 表5-9 查询机票测试用例 测试用例 预期结果 输入合法参数 显示正确的航班信息 输入非法参数 数据库出现异常处理结果 (违背数据的一致性或者完整性) 5.4 航班管理模块 航空公司管理员登录成功后进入航空公司管理系统, 添加航班。

    1. 输人项 表5-10 航班管理测试输入项 字段名称 数据类型 长度 默认值 是否允许空 字段描述 Flight_num string 否 飞机班次 price int 4 否 机票价格 Leave_time datatime 否 发机时间 Cout int 否 票数 origin string 否 始发地 destination string 否 目的地 2.输出项 1).成功转入相应页面;

    2).提示输入错误,重新输入。

    3.算法 进入航班管理信息界面,可返回主界面。

    选择航班管理信息界面的添加航班界面以及返回主界面。

    添加航班:
    依次输入数据 if 输入数据格式错误或内容不对 提示错误,重新输入 else 将数据存入数据库 提示添加成功 返回航班管理信息界面 在管理员登录系统 4.流程逻辑 选择航班管理操作 添加航班信息 N 填写信息正确 成功添加航班 返回 图5-14添加航班流程逻辑图 5.编码和界面 图5-15 航班添加界面 图5-16 添加成功界面 6.测试用例 表5-11 航班添加测试用例 测试用例 预期结果 重复输入的航班信息 提示:该航班已存在,重新输入 正确的航班信息 提示:是否继续添加 5.5用户订票模块 用户登录成功后进入航空公司管理系统,选择浏览航班后进入订票系统。

    1. 输人项 表5-12 订票测试输入项 字段名称 数据类型 长度 默认值 是否允许空 字段描述 Flight_num string 否 飞机班次 Cout int 否 票数 2.输出项 1).航班信息,开始订票及订票成功;

    2).没有您要的航班信息,余票不足,请出入有效票数。

    3.算法 进入航班管理信息界面,可返回主界面。

    选择航班管理信息界面的订票界面以及返回主界面。

    订机票:
    输入数据 if 输入数据不对 提示错误,重新输入 else 显示航班信息 继续查找or开始订票 If 输入票数有误 提示错误,重新输入 else 显示订票成功 航班管理信息界面 4.流程逻辑 选择订票操作 查询航班信息 N 显示航班信息 开始订票 输入订票数 N 输入票数正确 订票成功 返回 图5-17订票流程逻辑图 5.编码和界面 图5-18 订票错误测试结果 图5-19 订票成功结果 6.测试用例 表5-13 订票测试用例 测试用例 预期结果 输入错误的航班号 提示:该航班不存在,重新输入 正确的航班号 提示:是否继续查找或开始订票 错误的机票数 提示:余票不足,重新订票 正确的机票数 提示:订票成功 第六章 结束语 经过两周的努力,我们终于完成了《软件工程》的课程设计。从开始接到题目到系统的完成,每走一步对我们来说都是新的尝试与挑战。我们从对软件工程的技术不熟悉的状态开始了课程设计,查看相关资料和书籍,让自己头脑中模糊的概念逐渐清晰,使自己非常稚嫩的作品一步步完善起来,每一次改进都是学习的收获,每一次试验的成功都是辛劳的成果。

    此次课程设计中,本小组根据软件工程实行过程完成了机票预定系统的大部分功能,包括用户(旅客、旅行社)注册,管理员登录系统进行航班添加查询功能,用户(旅客、旅行社)登录系统进行查询订票功能。

    虽然我们的作品不是很成熟,还有很多不足之处,但我们可以自豪的说,这里面的每个细节都有我们的辛勤付出。两周的时间过去了,我们的课程设计也将告一段落,点击运行程序,也基本达到预期的效果。心中不由得也会冒出小小的成就感。由于时间和精力的关系,做出来的程序中仍有许多不尽人意的地方。例如:功能不够完善,界面不够美观等。对于这些遗憾我们只能以人们常说的,“做一件事,不必过于在乎最终的结果,可贵的是过程中的收获”来聊以自慰。但在以后的时间里我们仍会再接再厉把这个程序做的更加完美。

    在本次软件工程设计过程中,我们不免遇到很多的困难但是在老师的精心指导和自己的不断努力下基本上完成了此次的设计并达到了预期的要求,而且自己在程序设计方面也有不少的收获,更加坚定了自己在编程中的信心。在此,衷心感谢胡老师的认真授课和精心指导! 参考资料:
    [1]吴洁明等,《软件工程实例教程》,清华大学出版社。

    [2]钱乐秋等,《软件工程》,清华大学出版社。

    [3]谭庆平等,《软件工程实践教程》,高等教育出版社。