您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 给排水/暖通与智能化 > 机票预定系统概要设计说明书
概要设计说明书1.引言1.1编写目的本阶段已在系统的需求分析的基础上,对机票预定系统做概要设计。主要解决了实现该系统需求的程序模块设计问题。包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。在以下的概要设计报告中将对在本阶段中对系统所做的所有概要设计进行详细的说明。1.2项目背景开发软件名称:机票预订系统。开发者:用户:航空公司,旅行社,乘客运行环境:个人电脑开发平台:MyEclipse7.0,SQLSERVER数据库。系统架构:该系统采用java+jsp完成。1.3定义SQLSERVER:系统服务器所使用的数据库管理系统(DBMS)。SQL:一种用于访问查询数据库的语言事务流:数据进入模块后可能有多种路径进行处理。主键:数据库表中的关键域。值互不相同。外部主键:数据库表中与其他表主键关联的域。1.4参考资料以下列出在概要设计过程中所使用到的有关资料:1.软件工程及其应用周苏、王文等天津科学技术出版社1992/12.软件工程张海藩清华大学出版社1990/112.任务概述2.1目标该阶段目的在于明确系统的数据结构和软件结构,此外总体设计还将给出内部软件和外部系统部分之间的接口定义,各个软件模块的功能说明,数据结构的细节以及具体的装备要求。2.2运行环境系统将由两部分程序组成,安装在各旅行社客户机上的客户程序及航空公司内的数据服务器程序。数据库软件:Mysql数据库运行平台:WindowsXP/windows72.3需求概述航空公司为方便旅客,需开发一个机票预定系统。为便于由旅行社代替航空公司负责为旅客定票,旅行社把预定机票的旅客信息,包括姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地,输入机票预定系统的客户端程序,系统经过查询航空公司内的航班数据服务器后,为旅客安排航班,打印取票通知。旅客在飞机起飞前凭取票通知交款后取票,系统核对无误后即打印机票。要求系统能有效、快速、安全、可靠和无误的完成上述操作。并要求客户机的界面要简单明了,易于操作,服务器程序便于维护。2.4条件与限制为了评价该设计阶段的设计表示的“优劣程度”,必须遵循以下几个准则:(1)软件设计应当表现出层次结构,它应巧妙的地利用各个软件部件之间的控制关系;(2)设计应当是模块化地,即该软件应当从逻辑上被划分成多个部件,分别实现各种特定功能和子功能;(3)设计最终应当给出具体的模块,这些模块就具有独立的功能特性;(4)应当应用在软件需求分析期间得到的信息,采取循环反复的方法来获得设计。3.总体设计3.1处理流程下面将使用(结构化设计)面向数据流的方法对机票预定系统的处理流程进行分析。系统可分为两大部分:一、客户机上的程序,二、服务器上的程序。以下将分别对系统的这两大部分进行流程分析:3.1.1客户机程序流程客户机上的输入信息为旅客资料或帐单号,还包括一个定票/领票选项。输出为打印帐单或机票,和确认或出错信息。其内部处理流程如下:下面对各模块(以数字表示)进行功能说明:1.读入并确定(定票/领票)它是一个事务处理中心,若输入是定票时转入2,输出则转入5。2.读入旅客资料读取所输入的旅客资料,并将其格式化,将格式化数据送3。3.检验输入资料检验格式化输入资料,初步检查输入是否有误,它是一个事务处理中心,有误则转2再次读入,检查无误则将数据送4。4.准备服务器数据由格式化旅客资料准备需发送到服务器的数据,将准备好的数据送7。5.读入帐单号读取所输入的帐单号,并将其格式化,将格式化数据送6。6.准备服务器数据由格式化帐单号准备需发送到服务器的数据,不同于4,它将准备的是帐单号,将准备好的数据送7。7.准备网络数据包将数据准备/加密成网络传输数据包。8.网络数据发送将数据包经网络发送到服务器程序,它是程序与网络的接口。9.网络数据接受接受由服务器程序经网络传送到客户机的数据包,它是程序与网络的接口。10.解开/判断解开9所接受的数据包,并判断数据是定票数据或是领票数据,它是一事务处理中心,是定票则将数据送11,是领票则将数据送18。11.定票成功?由数据判断定票是否成功,它是一事务处理中心,若定票成功则将数据送11,不成功则将数据送18。12.准备输出数据由接收的服务器数据准备输出数据,其中关于帐单的数据将送入13,其他包括旅客资料等送入14。13.打印帐单由帐单信息处理帐单格式并打印出帐单。14.输出定位确定在屏幕上显示确定定位及其他信息。15.判断错误由数据判断出错误类型,将类型送到16。16.准备错误语句由具体错误类型准备错误语句,送17。17.输出错误语句在屏幕上显示错误语句。18.领票核对成功?由数据判断领票核对是否成功,它是一事务处理中心,若成功则将数据送19,不成功则将数据送15。19.准备机票输出数据由接收的服务器数据准备将打印的机票数据数,据其中关于帐单的旅客资料订票/取票账单号12534687经网络送服务器程序服务器经网络送来回答9101116151817141312201419打印账单输出确定预订信息输出错误原因输出确定预订信息打印机票机票的数据将送入20,其他包括旅客资料等送入14。20.打印机票由机票信息处理机票格式并打印出机票。3.1.2服务器程序流程下面对各模块(以数字表示)进行功能说明:1.网络数据接收接受由客户机程序经网络传送到客户机的数据包,它是程序与网络的接口。2.解开数据解开/解密打包的数据,并将恢复的数据格式化送入3。3.判断操作由数据判断需要做什么数据库操作,它是一事务处理中心,若为定票操作则将数据送4,若为领票操作则将数据送15。4.准备数据库查询语句由定票数据准备访问SQLSERVER数据库所需的SQL语句,送入5。5.数据库操作运行SQL语句,查询并存入数据库,获得相应的定票数据,将数据送入6。它需包括初步对查询的判断。它必须为乘客安排可抵达目的地的有座位的航班。6.判断查询是否成功利用查询所得的数据判断定票是否成功,它是一事务处理中心,若为定票操作成功则将数据送7,若不成功则将数据送8。7.准备回送数据准备定票成功后需回送客户机程序的数据,送16。8.确定原因由查询数据判断定票不成功的原因,送9。9.准备回送数据根据不成功的原因,准备需送回客户机程序的数据,送入16。10.准备数据库查询语句由领票数据准备访问SQLSERVER数据库所需的SQL语句,送入11。11.数据库操作运行SQL语句,查询并存入数据库获得相应的领票数据,将数据送入6。它需包括初步对查询的判断。12.判断查询是否成功利用查询所得的数据判断领票是否成功,它是一事务处理中心,若为领票操作得到确认则将数据送11,若不成功则将数据送8。13.准备回送数据准备领票确认后需回送客户机程序的数据,送16。14.确定原因由查询数据判断领票不能确认的原因,送15。15.准备回送数据根据不成功的原因,准备需送回客户机程序的数据,送入16。16.准备网络数据包将数据准备/加密成网络传输数据包。12534687客户机经网络送来的数据客户机经网络送来的数据91011161517141312SQLserver(票务数据库)来自客户机送客户机17.网络数据发送将数据包经网络发送到服务器程序,它是程序与网络的接口。以上显示的各模块数字相同的为同一模块;由于事务流处理上的便利,将有些功能模块,拆分到各事务流中。3.2总体结构和模块外部设计下面以结构图来描述机票预定系统的软件总体结构。框内注明了模块的名字;方框之间的直线表示模块的调用关系。3.2.1客户机部分3.2.2服务器程序部分其中在数据处理、查询下作了省略…只给出了一部分模块,实际上是有两部分,分别对应于定位及确认。3.3功能分配各项模块的功能可参照3.1中的说明。客户机程序主要有三大块:接收数据、网络通信及输出部分。服务器程序主要也是由三大功能:接收网络数据、数机票预定系统(服务器部分)接受数据数据处理、查询发送数据准备SQL数据库操作判断查询判断原因判断类型解开数据包接受客户机数据发送数据到客户机准备数据包准备返回数据准备返回数据机票预定系统(客户机程序)接受输入数据联络服务器接受输入数据准备网络数据包发送数据解开网络数据包接收数据准备订票发送数据准备确认发送数据检验输入读入旅客资料读入账单号确定(订票/领票)领票成功?数据包订票成功?数据包确认操作类型准备输出准备错误信息准备输出判断错误类型旅客资料账单号订票/领票显示错误确认显示打印机票打印账单显示确认账单机票据库操作及发送网络数据部分。服务器程序需与已建立的SQLSERVER数据库互连,其接口将于下面部分阐述。4.接口设计4.1外部接口4.1.1用户界面在用户界面部分,根据需求分析的结果,用户需要一个用户友善界面。在界面设计上,应做到简单明了,易于操作,并且要注意到界面的布局,应突出的显示重要以及出错信息。外观上也要做到合理化,考虑到用户多对WINDOW风格较熟悉,应尽量向这一方向靠拢。在设计语言上,已决定使用MSVISUALC++进行编程,在界面上可使用VISUALC++所提供的可视化组件,向WINDOWS风格靠近。其中服务器程序界面要做到操作简单,易于管理。在设计上采用下拉式菜单方式,在出错显示上可调用VISUALC++库中的错误提示函数。总的来说,系统的用户界面应作到可靠性、简单性、易学习和使用4.1.2软件接口服务器程序可使用VISUALC++提供的对SQLSERVER的接口,进行对数据库的所有访问。服务器程序上可使用SQLSERVER的对数据库的备分命令,以做到对数据的保存。在网络软件接口方面,使用一种无差错的传输协议,采用滑动窗口方式对数据进行网络传输及接收。4.1.3硬件接口在输入方面,对于键盘、鼠标的输入,可用VISUALC++的标准输入/输出,对输入进行处理。在输出方面,打印机的连接及使用,也可用VISUALC++的标准输入/输出对其进行处理。在网络传输部分,在网络硬件部分,为了实现高速传输,将使用高速ATM。4.2内部接口内部接口方面,各模块之间采用函数调用、参数传递、返回值的方式进行信息传递。具体参数的结构将在下面数据结构设计的内容中说明。接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间传输。5.数据结构设计5.1数据库数据结构设计DBMS的使用上系统将采用SQLSERVER,系统主要需要维护3张数据表:5.1.1航班班次表航班号起飞日期/时间飞行目的地座位空数商务仓票价经济仓票价航班班次表保存了所有从本地起飞的班机信息,它的主键为航班号。在定位1.旅客姓名String2.旅客性别Char3.身份证号码LONGINT4.工作单位String前先查寻座位空数,在定位后将修改座位空数。5.1.2定位信息表航班号帐单号是否领票定位信息表保存了已定位信息,主键为帐单号,外部主键为航班号。在旅客领票过程时将用到此表,领票后修改是否领票域。5.1.3.帐单信息/旅客资料账单号旅客姓名旅客性别旅客身份证号码工作单位帐单信息/旅客资料表保存已定位的旅客信息资料,它的主键为旅客身份证号,外部主键为帐单号。主要用于领票时将旅客信息一同返回。5.1.4.机位信息表班机号机位信息机位信息表保存各班机各机位定票状况。它的外部主键为班机号。主要用于定票时确定旅客机位,并返回。5.2物理数据结构设计物理数据结构设计主要是设计数据在模块中的表示形式。数据在模块中都是以结构的方式表示。5.2.1.旅客信息用于定票时接收输入,以及领票时服务器返回。5.2.2.帐单号可使用一LONGINT实现。用于领票时接收输入,以及定票时服务器返回。5.2.3.飞行目的用于定票时接收输入,以及领票时服务器返回。5.2.4.网络包1.航班号String2.目的地String3.起飞时间Date/Time4.座位号String用于数据在网络上的传输。5.2.5.错误信息用于关于错误操作。5.2.6.机票信息用于打印机票准备工作。数据类型可参照上面所述。5.2.7.帐单信息用于打印帐单准备工作。数据类
本文标题:机票预定系统概要设计说明书
链接地址:https://www.777doc.com/doc-7342763 .html