1、11 引言 .21.1 编写目的 21.2 背景 21.3 定义 21.4 参考资料 32 程序系统的结构 .33 程序 1(标识符)设计说明 83.1 程序描述 83.2 功能 83.3 性能 83.4 输人项 93.5 输出项 93.6 算法 103.7 流程逻辑 113.8 接口 123.9 存储分配 123.10 注释设计 133.11 限制条件 133.12 测试计划 133.13 尚未解决的问题 142详细设计说明书1 引言1.1 编写目的在前一阶段(概要设计说明书)中,已解决了实现该系统需求的程序模块设计问题。包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递
2、的信息,以及数据结构、模块结构的设计等。在以下的详细设计报告中将对在本阶段中对系统所做的所有详细设计进行说明。在本阶段中,确定应该如何具体地实现所要求的系统,从而在编码阶段可以把这个描述直接翻译成用具体的 程序语言书写的程序。主要的工作有:根据在需求分析说明书中所描述的数据、功能、运行、性能需求,并依照概要设计说明书所确定的处理流程、总体结构和模块外部设计,设计软件系统的结构设计、逐个模块的程序描述(包括各模块的功能、性能、输入、输出、算法、程序逻辑、接口等等) ,解决如何1 接受:旅客信息及取票通知和帐单;2 输出:取票通知和帐单及机票;3 网络输出和加密,输入和解密;4 分辨信息的种类并采
3、取相应的处理步骤;5 判断信息的正误并采取相应的处理步骤;6 进行数据库的查询、修改工作;7 接受并判断错误,输出相应的出错消息;在以下的各个阶段中, 用户操作手册将与本阶段的工作紧密结合,努力作到 让用户易懂易学。 测试报告和维护报告也将参考本说明书,检验本系统的各项性能指标,及时发现纰漏及时修补,一定要把功能强大、稳定可靠、便于维护的机票预定系统交到用户手中。1.2 背景本机票预定系统项目主要由两部分形成:1.各旅行社中的前台客户程序;2.航空公司中的数据库服务器程序;1.3 定义SQL SERVER: 系统服务器所使用的数据库管理系统(DBMS) 。SQL: 一种用于访问查询数据库的语言
4、3事务流:数据进入模块后可能有多种路径进行处理。主键:数据库表中的关键域。值互不相同。外部主键:数据库表中与其他表主键关联的域。ROLLBACK: 数据库的错误恢复机制。系统:若未特别指出,统指本机票预定系统。SQL: Structured Query Language(结构化查询语言) 。ATM: Asynchronous Transfer Mode (异步传输模式) 。1.4 参考资料以下列出在概要设计过程中所使用到的有关资料:1.机票预定系统项目计划任务书 大连交通大学2.机票预定系统项目开发计划 软件开发小组3需求规格说明书 软件开发小组4 概要设计说明书 软件开发小组 4用户操作手册
5、(初稿) 软件开发小组 5软件工程及其应用 周苏、王文等 天津科学技术出版社 6软件工程 张海藩 华大学出版社 7Computer Network A.S.Tanenbaun Prentice Hall 文档所采用的标准是参照软件工程导论沈美明著 的“计算机软件开发文档编写指南” 。2 程序系统的结构各模块之间的关系已由概要设计给出。1、客户机接受信息模块结构图: 旅客信息输入界面 1 帐单和通知输入界面 2PersInfoExam ( ) CheckNoticeExam( )4网络接受和发送模块 2.客户机输出信息模块:网络接受和发送模块 IErrorHandle( )PersInfoInp
6、ut( )CheckNoticeInput( )PersInfoTempSave( )CheckNoticeTempSave( )JudgeOrderOrCash ( )OrderTransPre ( ) CashTransPre( )SetCSFlag( )CDataRecPre( )5错误输出的界面 3帐单和取票通知的输出界面 1 机票的输出界面 2 3. 网络接受和发送模块结构:客户机 接受信息模块 或 服务器输出信息模块 NetReceive ( ) NetDataPack( )NetDataEncry ( )NetSend ( )NetCheck( )RecPre( ) SendPr
7、e( )NErrorHandle()NetDataDiscry ( )NetDataUnpack( )NetMonitor( )JudgeOrderOrCash ( )DBOperaCheck( )PersInfoComp1( )CheckNoticeOutput()CheckNoticeComp()OErrorHandle( ) PersInfoComp2( )TicketOutput( )6客户机 输出信息模块 服务器输入信息模块 4.服务器模块:网络接受和发送模块JudgeCSFlag ( )SDataRecPre( )7JudgeOrderOrCash( )TicketAvailabl
8、e( ) InfoComp( )DBErrorHandle( )LockTicket( )AddPers ( )GetoutCheck( ) DelItem ( )GetoutTicket( )JudgeCheckTicket( )CheckTransPre( ) TicketTransPre( )SetCSFlag( )DBErrorTransPre( )8网络接受和发送模块3 程序 1(标识符)设计说明3.1 程序描述为便于旅客由旅行社代替航空公司负责为旅客定票,旅行社把预定机票的旅客信息,包括姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地,输入机票预定系统的客户端程序,系统经过查
9、询航空公司内的航班数据服务器后,为旅客安排航班,印出取票通知。旅客在飞机起飞前一天凭取票通知和帐单交款后取票,系统校对无误后即印出机票给旅客。要求系统能有效、快速、安全、可靠和无误的完成上述操作。并要求客户机的 界面要单明了,易于操作,服务器程序利于维护。3.2 功能3.3 性能性能要求:机场提供的信息必须及时的反映在旅游局的工作平台上。售票系统的定单系统管理员事务航班信息的更新服务器终端显示数据产生报表售票员 查询请求数据库 产生报表 客户机终端显示数据售票员 表单申请 产生报表 客户机终端显示数据售票员 机票核对事务在客户端打印机票和帐单产生报表及帐单9必须无差错的存储在机场的主服务器上。
10、对服务器上的数据必须进行及时正确的刷新。输出要求:数据完整,详实。输出要求:简捷,快速,实时。安全与保密要求:服务器的管理员享有对机场航班信息库及机票信息库和定票信息库的管理与修改。售票员只享有对订票信息库的部分修改(写入与读出) 。3.4 输人项1旅客信息用于定票时接收输入,以及领票时服务器返回。2帐单号可使用一 LONG INT 实现。用于领票时接收输入,以及定票时服务器返回。3飞行目的用于定票时接收输入,以及领票时服务器返回。3.5 输出项1.机票信息1旅客姓名 String2旅客性别 Char3身份证号码 LONG INT4工作单位 String1. 航班号 String2. 目的地
11、String3. 起飞时间 Date/Time4. 座位号 String1航班号2目的地3起飞时间4旅客姓名5旅客性别6身份证号码7座位号810用于打印机票准备工作。数据类型可参照上面所述。2.帐单信息用于打印帐单准备工作。数据类型可参照上面所述。3.6 算法点击航空公司管理系统界面上航班管理按钮,进入航班管理信息界面,可返回主界面。点击航班管理信息界面的 4 个按钮分别进入添加航班界面、取消航班界面、更改航班界面以及返回航空公司管理系统界面。添加航班:依次输入数据if 输入数据格式错误或内容不对提示错误,重新输入else 将数据存入数据库 提示添加成功返回航班管理信息界面取消航班:依次输入数
12、据if 输入班次不存在提示错误,重新输入else 提示核对是否为要取消班次是 1 帐单号2 旅客姓名3 身份证号码4 航班号5 起飞时间6 目的地11if 该航班已有预定找出预定该航班的所有旅客信息(及时通知旅客并根据需求分析作出相应处理)后,删除有关该航班所有信息,更新数据库,提示该航班已取消else 删除有关该航班所有信息,更新数据库,提示该航班已取消否 重新输入返回航班管理信息界面更改航班:输入需要更改的班次,点击更改按钮,原资料显示,再修改需要修改的地方if 输入数据格式错误或内容不对提示错误,重新输入else if 该航班已有预定找出预定该航班的所有旅客信息(及时通知旅客并根据需求分
13、析作出相应处理)后,将更改后的数据存入数据库取代原有数据,提示更改成功else 将更改后的数据存入数据库取代原有数据,提示更改成功返回航班管理信息界面3.7 流程逻辑在航空公司管理系统选择航班管理选择航班管理操作添加航班信息 填写取消航班班次 更改航班信息否 否 否填写信息正确 填写信息正确 填写信息正确123.8 接口(旅行社) : (航空公司) 飞机起飞数据3.9 存储分配将由 PersInfoInput 输入的旅客信息 保存在一个临时文件 PersInfoTemp.txt 中。以备与将来从服务器经网络传输过来的数据校验。 此类 temp 文件在每次软件的完全过程操作后,须删除。经检验无误
14、后,将输入界面表单中的数据输入到 Class CheckNoticeClass CheckNoticLong int cncode=帐单号String name=姓名Long int idcode=身份证号码Money bill = 付款金额 String planecode= 航班号 Date dtime= 取票截止日期String denist= 目的地 客户程序客户程序客户程序客户程序服务器及程序网 络机场飞机起飞管理成功添加航班 成功更改航班成功取消航班返回 返回返回133.10 注释设计1.加在模块首部的注释;2.加在各分枝点处的注释;3.对各变量的功能、范围、缺省条件等所加的注释;
15、4.对使用的逻辑所加的注释。3.11 限制条件完成项目应具备的条件: 资金 调研环境 开发平台 开发基础设施 开发人员 维护人员开发单位已具有的条件: 开发基础设施 开发平台尚须创造的条件:良好的调研环境资方应提供足够的资金和开发条件,并详细的阐明要求。工方应依据资方的要求开发出满足合同要求的工程。3.12 测试计划必须在保证各硬件设备软件系统齐备的情况下,资金充足,人员齐备,各方面互相配合,齐心协力,共同完成。测试方案是测试阶段的关键技术问题。为了提高测试效率降低测试成本,本测试方案采用黑盒法设计基本的测试方案,再用白盒法补充一些方案。在黑盒法测试方案中,采用等价划分技术,把所有可能的输入数据(有效的和无效的)划分成几测试项目:客户机接受信息模块测试客户机输出信息模块测试网络接受和发送模块结构测试服务器模块(包括数据库)测试各模块之间的接口测试系统测试测试人员:14测试机构由 ZJU 工作组组成,人员有软件开发小组全体人员。3.13 尚未解决的问题没有尚未解决的问题。