领航航空售票系统架构设计说明书
订票系统-详细设计说明书
订票系统-详细设计说明书一、引言1.1 编写目的:在本机票预定系统项目的前一阶段,也就是概要设计阶段中,已经将系统用户对本系统的子模块功能做了详细的阐述,这些模块功能具体设计将在本报告中详尽得以叙述及阐明。
本阶段已在系统的概要设计的基础上,对机票预定系统做详细设计。
主要解决了实现该系统程序模块具体设计问题。
包括确定算法,数据结构,模块接口的使用,数据库的动态操作以及界面设计等。
在以下的概要设计报告中将对在本阶段中对系统所做的所有详细设计进行详细的说明。
在下一阶段的编码过程中,程序设计员可参考此详细设计报告,在详细设计对机票预定系统所做的算法设计,数据结构以及数据库动态操作的基础上,对系统进行编码。
在以后的软件测试以及软件维护阶段也可参考此说明书,以便于了解在详细设计过程中所完成的各模块算法设计,或在修改时找出在本阶段设计的不足或错误。
1.2 项目背景:本项目(机票预订系统)由蓝天航空公司委托,由我们小组负责开发。
1.3 定义:查询:对数据库的操作的一种,用于搜索数据信息。
插入:对数据库的操作的一种,用于将数据存入数据库中。
更新:对数据库的操作的一种,用于更改数据库中的数据信息。
软件结构图:反映软件系统的功能模块之间的关系的数据图。
1.4 参考资料:1.机票预定系统项目开发计划软件开发小组2007/8 2.需求规格说明书软件开发小组2007/8 3.用户操作手册(初稿)软件开发小组2007/8 4.软件工程齐治昌谭庆平宁洪等高等教育出版社1997/1 5.Dreamweaver 8标准教程邹婷中国青年出版社2006/3二、总体设计2.1 需求概述机票预定系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现航空公司的机票销售的自动化的计算机系统,为企业的决策层提供准确、精细、迅速的机票销售信息。
航空订票系统软件设计规格说明书
软件设计规格说明书一、引言1.1 编写目的编写本套航空订票系统的《软件规格说明书》的目的在于根据软件需求说明书中的任务概述,需求规定等规划设计出一套可执行软件的结构模型。
1.2 参考资料《网上订票系统需求分析报告》王曦编写《软件工程导论》第三版------海藩编著清华大学《基于项目的软件工程—面向对象研究方法》------Cathie LeBlanc & Evelyn Stiller编著机械工业二、总体设计2.1 需求规定本套航空订票系统软件分为服务器端和客户端两部分:客户端部分由用户使用,通过B/S的方式实现,用户可使用浏览器通过互联网进行操作。
服务器端软件由管理员使用,通过C/S的方式实现,管理员通过管理界面可对数据库进行操作和管理。
2.2 运行环境客户端的运行环境:Windows98以上的操作系统、IE5以上的浏览器(或其他浏览器)。
服务器端的运行环境:Windows2000 Server或Windows 2000 Advanced Server、SQL Server 2000。
2.3 基本设计概念和处理流程本套航空订票系统软件的编写,是为了设计出一套网上订票的应用和管理软件。
软件分为两大部分,网上订票部分和数据管理部分。
网上订票部分(客户端)是以网页的形式实现,用户通过浏览器对数据库中的航班数据进行查询、浏览并可进行订票。
数据管理部分(服务器端)则是用VB编写的一套管理软件,在管理部分中,管理员可以对数据库中的数据进行输入、修改、删除和查询等操作,从而对数据库中的数据进行管理。
2.4 结构本套航空订票系统软件采用Browser/Server和Client/Server相结合的结构来进行开发。
2.5 人工处理过程2.5.1 服务器端的人工处理2.5.1.1 数据的输入用户根据需要来输入航班、订票人、乘客等信息的具体数据,但必须保证其正确性和准确性。
2.5.1.2 数据的修改用户根据需要对指定的数据进行修改,由于记录繁多,因此用户首先要输入一定的查询条件,缩小记录围,然后再从该围中找到指定的记录进行修改,保证修改的容的正确性和准确性后可更新数据库的数据。
机票订票系统概要设计说明书
四、五、六、概要设计说明书1.引言 (2)1.1编写目的 (2)1.2项目背景 (3)1.3定义 (3)1.3.1 专门术语 (3)1.3.2 缩写 (3)1.4参考资料 (3)2.任务概述 (4)2.1运行环境 (4)2.2需求概述 (4)3.总体设计 (4)3.1 处理流程 (5)3.1.1 客户机程序流程 (5)3.1.2 服务器程序流程 (6)数据库的输入输出。
(6)3.2 总体结构和模块外部设计 (6)3.3 功能分配 (7)4.接口设计 (7)4.1 外部接口 (7)4.1.1 用户界面 (7)4.1.2 软件接口 (7)4.1.3 硬件接口 (8)4.2 内部接口 (8)5.数据结构设计 (8)5.1 数据库数据结构设计 (8)5.2 物理数据结构设计 (10)5.3 数据结构与程序的关系 (11)6.运行设计 (11)6.1 运行模块的组合 (11)6.2 运行控制 (11)6.3 运行时间 (12)7.出错处理设计 (12)7.1 出错输出信息 (12)7.2 出错处理对策 (12)8.安全保密设计 (12)9.维护设计 (13)1.引言1.1编写目的在本机票预定系统项目的前一阶段,也就是需求分析阶段中,已经将系统用户对本系统的需求做了详细的阐述,这些用户需求已经在上一阶段中对航空公司、各旅行社及机场的实地调研中获得,并在需求规格说明书中得到详尽得叙述及阐明。
本阶段已在系统的需求分析的基础上,对机票预定系统做概要设计。
主要解决了实现该系统需求的程序模块设计问题。
包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。
在以下的概要设计报告中将对在本阶段中对系统所做的所有概要设计进行详细的说明。
在下一阶段的详细设计中,程序设计员可参考此概要设计报告,在概要设计对机票预定系统所做的模块结构设计的基础上,对系统进行详细设计。
在以后的软件测试以及软件维护阶段也可参考此说明书,以便于了解在概要设计过程中所完成的各模块设计结构,或在修改时找出在本阶段设计的不足或错误。
航空公司订票系统数据库结构
1、主界面要求是MDIForm窗体,表格数据模块是MDIForm窗 体子窗体,其他模块是普通窗体。
2、用户登录检测和权限检测应在主界面显示以前完成(本程序 中单独设置用户登录和权限检测模块,由Main函数启动后调用) 3、主界面模块的代码应尽量简洁,主界面的作用是通过菜单 和工具栏完成系统功能的导向和链接,功能的实现在功能模块 中实现. 4、状态栏为系统使用提供帮助信息和状态信息.
2、标准模块用来声明定义系统全局使用的变量、 对象和过程,尤其是各 窗体模块公用的通用 的功能代码尽量集中抽取出 来做成标准模块 中的变量、对象和过程。
3、系统如果有启动 Main函数的话,要放置到 标准模块中。
从窗体模块中提取通用功能
Public Function ConnectString() As String 定义连接字符串 Public Function ExecuteSQL(ByVal sql As String, MsgString As String) As ADODB.Recordset 执行后台数据库访问操作 Public Sub EnterToTab(Keyasc As Integer) 单记录数据模块输入时回车换到下 一个文本框继续输入 Public Function GetRkno() As String 获取添加记录的随机唯一编号 Public Sub Getusrqx(ByVal user_id As String) 读取登录用户权限 Public Sub Fillcombox(comboxfilled As ComboBox, sql As String) 表格数据模 块填充过滤条件选项到combox控件
飞机订票系统概要设计说明书
飞机订票系统概要设计说明书概要设计说明书1.引言1.1编写目的1.2项目背景1.3定义1.4参考资料2.任务概述2.1 目标2.2 运行环境2.2.1设备2.2.2支持软件2.3 需求概要2.4 条件与限制3.总体设计3.1 处理流程3.2 总体结构和模块外部设计4.接口设计4.1 硬件接口4.2 软件接口5.数据结构设计5.1 逻辑结构设计5.2 物理结构设计5.3 数据结构与程序的关系6. 运行设计6.1 运行模块的组合6.2 运行控制6.3 运行时间7. 出错处理设计7.1 出错输出信息7.2 出错处理对策8. 安全保密设计9. 维护设计1.引言1.1编写目的从该阶段正式进入软件的实际开发阶段,本文档将对《飞机订票系统》的软件功能进行描述。
本阶段的主要任务是把系统的功能需求分配给软件结构,形成软件的系统结构图。
本概要设计说明书的目的就是进一步细化软件设计阶段得出的软件总体概貌,把它加工成在程序细节上非常接近于源程序的软件表示。
本文档的读者是项目策划、设计和评审人员。
1.2项目背景1.软件系统名称:航空订票系统2.任务提出者:哈尔滨航空公司3.项目开发者:周海鹏4.项目与其他软件,系统的关系:本项目采用客户机∕服务器原理,客户端的程序是建立在Windows NT系统上以Microsoft Visual C++为开发软件的应用程序,服务器端采用Linux为操作系统的工作站,是采用Oracle 8的为开发软件的数据库服务程序。
1.3定义概要设计说明书中的专门术语有﹕数据结构设计,总体设计,接口设计,运行设计,系统出错处理设计。
1.4参考文献《软件工程导论》清华大学出版社张海藩编著《实用软件工程》清华大学出版社郑人杰等编著《数据库系统概论(第三版)》高等教育出版社萨师煊王珊等编著《实用软件文档写作》清华大学出版社肖刚等编著《软件工程》第三版人民邮电出版社张海藩等编著2.任务概述2.1目标该阶段目的在于明确系统的数据结构和软件结构,此外总体设计还将给出内部软件和外部系统部分之间的接口定义,各个软件模块的功能说明,数据结构的细节以及具体的装备要求。
机票预定系统 概要设计说明书
4.准备服务器数据由格式化旅客资料准备需发送到服务器的数据,将准备好的数据送7。
5.读入帐单号读取所输入的帐单号,并将其格式化,将格式化数据送6。
6.准备服务器数据由格式化帐单号准备需发送到服务器的数据,不同于4,它将准备的是帐单号,将准备好的数据送7。
3.1.1客户机程序流程
客户机上的输入信息为旅客资料或帐单号,还包括一个定票/领票选项。输出为打印帐单或机票,和确认或出错信息。其内部处理流程如下:
下面对各模块(以数字表示)进行功能说明:
1.读入并确定(定票/领票)它是一个事务处理中心,若输入是定票时转入2,输出则转入5。
2.读入旅客资料读取所输入的旅客资料,并将其格式化,将格式化数据送3。
11.定票成功?由数据判断定票是否成功,它是一事务处理中心,若定票成功则将数据送12,不成功则将数据送15。
12.准备输出数据由接收的服务器数据准备输出数据,其中关于帐单的数据将送入13,其他包括旅客资料等送入14。
13.打印帐单由帐单信息处理帐单格式并打印出帐单。
14.输出定位确定在屏幕上显示确定定位及其他信息。
要求系统能有效、快速、安全、可靠和无误的完成上述操作。并要求客户机的界面要简单明了,易于操作,服务器程序利于维护。
2.4条件与限制
3.总体设计
3.1处理流程
下面将使用(结构化设计)面向数据流的方法对机票预定系统的处理流程进行分析。系统可分为两大部分:一、客户机上的程序,二、服务器上的程序。以下将分别对系统的这两大部分进行流程分析:
7.准备网络数据包将数据准备/加密成网络传输数据包。
航空订票系统详细设计说明书
手动输入
高频度
旅客
3
航班号
text
A0001-Z9999
手动输入
中频度
航班信息数据库
4
缴费金额
int
000.0-999.9
手动输入
中频度
旅行社管理员
5
订单号
Char
00000000-99999999
手动输入
低频度
旅行社管理员
6
日期
text
01.01-12.31
手动输入
中频度
航班信息数据库
(3)系统的响应速度
机票预订系统在日常处理中的响应速度为妙极,达到实时要求,以及实时反馈信息。在进行统计分析时,根据其问题而影响工作效率因为需要数据量得不同而从妙极到分钟级。
3.3
序号
名称
类型
有效范围
输入方式
频度
数据来源
1
身份证号
int
3410000000-9990000000
手动输入
高频度
旅客
2
出发地、目的地
1.1
随着旅游业的逐渐的成熟发达,航空客运量大幅度的提高,国内国际的旅游航班的增加,这些都对航空的信息管理系统提出了更高的要求,所以要不断的完善更新航空售票系统,提高航空售票系统的工作效率。
而详细设计说明书的目的是:说明一个软件系统各个层次中的每一个程序(每个模块或子程序)的设计考虑。
1.2
开发软件名称:航空订票系统
3、齐治昌,谭庆平,宁洪,《软件工程》,高等教育出版社,1997年
4、郑人杰,殷人昆,陶永雷,《实用软件工程》,清华大学出版社,1997年
2
2.1
某航空公司为方便旅客,需开发一个机票预定系统。为便于旅客由旅行社代替航空公司负责为旅客定票,旅行社把预定机票的旅客信息,包括姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地,输入机票预定系统的客户端程序,系统经过查询航空公司内的航班数据服务器后,为旅客安排航班,印出取票通知。旅客在飞机起飞前一天凭取票通知和帐单交款后取票,系统校对无误后即印出机票给旅客。
机票预订系统程序设计说明书
机票预订系统程序设计说明书一、概述机票预订系统是一个用于客户预订机票的网站。
该系统需要实现以下功能:1. 客户注册和登陆2. 客户浏览和查询机票信息3. 客户在线预订机票4. 管理员管理机票信息和订单本说明书旨在提供系统的设计细节以及所需要的技术要求。
二、需求分析1.客户注册和登陆注册和登陆功能是网站的基础功能。
客户通过注册账号并登陆系统才能进行下一步的操作。
2.客户浏览和查询机票信息在网站主页上,客户可以查看机票的基本信息,包括航班号、出发地、目的地、日期和价格等。
客户可以使用查询功能来查找符合自己要求的机票信息。
3.客户在线预订机票当客户选择一条符合条件的机票后,系统将显示详细信息,并提示客户填写乘机人信息、联系方式和支付信息等,最后完成订单提交。
4.管理员管理机票信息和订单管理员可以添加、修改和删除机票信息。
管理员还可以查看、处理和审核客户提交的订单。
三、系统设计1. 系统架构该系统采用B/S架构(浏览器/服务器),前端使用HTML、CSS、JavaScript和jQuery等技术,后端使用PHP语言,数据库使用MySQL。
2. 前端设计客户访问系统的主页后,可以浏览和查询机票信息。
当客户选择一条机票后,系统会将其详细信息展示在新的页面上。
该页面会提供填写乘机人信息、联系方式和支付信息的表单,并进行验证,保证信息的准确性。
3. 后端设计系统的后端需要实现以下模块:(1)注册和登陆模块,实现客户注册和登陆功能;(2)机票信息管理模块,实现添加、修改和删除机票信息的功能;(3)订单管理模块,实现查看、处理和审核订单的功能;(4)支付模块,接入支付平台,实现支付功能;(5)邮件提醒模块,向客户发送订单确认和支付状态通知。
4. 数据库设计系统需要存储机票信息、用户信息和订单信息。
数据库需要设计以下表格:(1)机票信息表格,包括航班号、出发地、目的地、日期和价格等信息;(2)用户信息表格,包括用户名、密码、姓名、联系方式等信息;(3)订单信息表格,包括订单编号、客户信息、机票信息、支付状态等信息。
航空订票系统(详细设计说明书)
五、详细设计说明书1.引言 (1)1。
1编写目的 (1)1。
2项目背景 (1)1。
3定义 (1)1。
4参考资料 (2)2.总体设计 (2)2.1需求概述 (3)2.2软件结构 (4)3.程序描述 (4)3。
1功能 (4)3。
2性能 (4)3.3输入项目 (5)3。
4输出项目 (5)3.5算法 (5)3。
6程序逻辑 (5)3.7接口 (8)3。
8存储分配 (9)3.9限制条件 (9)3。
10测试要点 (9)1.引言1.1编写目的对软件项目系统进行详细的研究,确定项目开发的方向,对项目的实现以及功能的划分进行深入的探讨,确定项目的详细实现,对项目的实现确定规范详细设计文档面向项目组所有成员。
1。
2项目背景表1.2 项目基本情况说明用户民众计算中心完成搭建web网站系统的服务器系统间往来关系暂无1。
3定义➢SQL SERVER:系统服务器所使用的数据库关系系统(DBMS)。
➢SQL:一种用于访问查询数据库的语言➢事务流:数据进入模块后可能有多种路径进行处理。
➢主键:数据库表中的关键域.值互不相同.➢外部主键:数据库表中与其他表主键关联的域。
➢ROLLBACK:数据库的错误恢复机制。
缩写:➢系统:若未特别指出,统指本航空订票系统。
➢SQL:Structured Query Language(结构化查询语言)。
➢UML:统一建模语言、是一套用来设计软件蓝图的标准建模语言,是一种从软件分析、设计到编写程序规范的标准化建模语言。
➢Javaee:Java企业级平台。
1。
4参考资料文档格式要求按照我国GB/T85T7-1988国家标准和IEEE/ANSI830—1993标准规范要求进行。
包括以下文件:➢图书借阅关系系统需求说明书➢软件工程项目开发文档范例➢软件工程国家标准文档➢图书借阅管理需求说明书➢软件需求说明书编写规范书籍包括:➢软件工程导论(第6版) 张海藩牟永敏编著。
2.总体设计2。
1需求概述1.该订票系统的浏览用户被划分为游客(即未注册用户)与用户(即注册用户),未注册用户只能访问该系统的首页,首页提供登录功能和前往注册按钮,用户可以登录或者前往注册。
飞机订票系统详细设计说明书
文档编号:版本号:v1.0详细设计说明书项目名称飞机订票系统项目负责人何柳青本文档编写者何柳青项目开发者计算机081第二组2010年12月4日目录1。
引言ﻩ错误!未定义书签。
1.1编写目的 (1)1。
2背景.............................................................................................................. 错误!未定义书签。
1。
3参考资料...................................................................................................... 错误!未定义书签。
2.程序系统的结构ﻩ错误!未定义书签。
2.1运行环境....................................................................................................... 错误!未定义书签。
2.2系统组织结构ﻩ错误!未定义书签。
3、程序设计说明ﻩ错误!未定义书签。
3.1“按目的地查询”程序描述 ....................................................................... 错误!未定义书签。
3.1.1功能...................................................................................... 错误!未定义书签。
3.1。
2 性能ﻩ错误!未定义书签。
3。
1.3 输入项............................................................................... 错误!未定义书签。
航班管理含售票系统概要设计与详细设计说明书介绍
航班管理及售票系统纲要设计与详尽设计说明书在本说明书中,我们主要波及到数据库的设计与基本界面的设计的问题,下边逐个介绍以下:一方面:对于数据库的设计我们在设计数据库时,主要采纳 Access来进行,本数据库主要包含四个表。
本数据库取名为航天管理数据库,它的四个表分别为:乘客数据表、飞翔时辰表、管理员表、航班信息表。
下边分别介绍一下各数据表的设计:乘客数据表:字段名称数据种类字段大小航班号文本20购订票人文本10身份证号数字长整型发出城市文本10抵达城市文本10日期日期 /时间默认腾飞时间日期 /时间默认抵达时间日期 /时间默认座位等级文本4飞翔时辰表:字段名称数据种类字段大小航班号文本20发出城市文本10抵达城市文本10腾飞时间日期 /时间默认抵达时间日期 /时间默认所属企业文本20航班信息表:字段名称数据种类字段大小航班号文本20购订票人文本10身份证号数字长整型发出城市文本10抵达城市文本10日期日期 /时间默认腾飞时间日期 /时间默认抵达时间日期 /时间默认座位等级文本4节余座位数字长整型座位总数数字长整型票价数字长整型管理员表:字段名称数据种类字段大小name文本20password文本20另一方面:主要界面的设计本软件为信息管理系统,因此在设计时,主要考虑练习之用。
1.第一在启动该软件时,是一个闪耀的界面,相当于我们软件的封面。
该窗体取名为 Splash 窗体。
其大概以下:窗体 1: Splash 窗体2.在 Splash 窗体以后的是我们的登岸窗体,主假如想练习一下软件的权限设置,其大概窗体以下:窗体 2登岸界面在经过了权限考证后,就进入了主界面3.在设计主界面时,采纳菜单与快捷按钮并用,响应同一事件,其主要功能介绍以下:主要功能描绘以下:乘客订票、航班时辰表、航班信息、软件保护四个大的模块。
对于乘客订票模块:主要波及到一个乘客订票窗体,在这里能够实现乘客信息的增添、删除,即:乘客订票和退票的功能。
机票预订系统程序设计说明书
程序设计说明书1引言编写目的程序设计说明书提供用户与开发人员对开发软件的共同理解,使用户与开发单位就该系统的功能定义、环境需求达成共识,是今后各阶段设计工作的基础和依据,也是本阶段评审和测试阶段确认与验收的依据。
本需求分析的读者对象包括客户、业务人员需求分析人员、测试人员、用户文档编写人和项目管理人员。
用面向对象分析、设计方法来分析机票系统。
研究给定的软件开发任务,在此基础上完成系统的结构化需求分析模型建设。
学习软件的结构化设计方法,练习采用结构化设计方法完成程序设计任务的过程。
在本机票预定系统项目的前一阶段,也就是需求分析阶段中,已经将系统用户对本系统的需求做了详细的阐述,这些用户需求已经在上一阶段中对航空公司、各旅行社及机场的实地调研中获得,并在需求规格说明书中得到详尽得叙述及阐明。
本阶段已在系统的需求分析的基础上,对机票预定系统做概要设计。
主要解决了实现该系统需求的程序模块设计问题。
包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。
在以下的概要设计报告中将对在本阶段中对系统所做的所有概要设计进行详细的说明。
在下一阶段的详细设计中,程序设计员可参考此概要设计报告,在概要设计对机票预定系统所做的模块结构设计的基础上,对系统进行详细设计。
在以后的软件测试以及软件维护阶段也可参考此说明书,以便于了解在概要设计过程中所完成的各模块设计结构,或在修改时找出在本阶段设计的不足或错误。
预期的读者:系统管理员、机票预订管理员、订票旅客、程序员。
背景软件名称:机票预订系统提出者:航空公司机票销售部门开发者:xxx。
用户:需要乘飞机的旅客,航空公司,旅行社, 系统管理员、程序员。
运行该软件的计算站(中心):Internet、航空公司、网上银行2程序设计说明需求规定(1)输入数据航班号:客户从自主选择列表中查询的航班号信息,可查询航班航班信息和机票信息起航地点:客户从页面中自主选择表格中要查询的起航地点信息,查询航班航班信息降落地点:客户从页面中自主选择表格中要查询的降落地点信息,查询航班航班信息起航时间:客户从页面中自主选择表格中要查询的起航时间信息,查询航班航班信息身份证号码:客户在预订机票时所填入的基本信息,用于区分不同客户密码及确认密码:客户在预订机票时所需要的基本信息,起信息保护和确认作用姓名:客户在预订机票时所需要的基本信息,与身份证号码相对应电话:客户在预订机票时所需要的基本信息,管理员联系客户时使用Email:客户在预订机票时所需要的基本信息,管理员联系客户时使用联系地址:客户在预订机票时所需要的基本信息,管理员联系客户时使用航班等级:客户在预订机票时所需要的基本信息,用于确定所订机票价格订票数量:客户在预订机票时所需要的基本信息,用于确定所订机票数(2)输出数据航班号:客户查询航班信息后的返回值起航地点:客户查询航班信息后的返回值降落地点:客户查询航班信息后的返回值起航时间:客户查询航班信息后的返回值身份证号码:客户订购机票后的确认信息密码及确认密码:客户订购机票后的确认信息姓名:客户订购机票后的确认信息电话:客户订购机票后的确认信息Email:客户订购机票后的确认信息联系地址:客户订购机票后的确认信息航班等级:客户订购机票后的确认信息订票数量:客户订购机票后的确认信息运行环境设备服务器,硬件:CPU133M,64M或以上内存,300M硬盘空间;VGA显示器或更高客户机,硬件:最低CUP133M,16MB内存;最少8MB的RAM存储器;VGA显示器或更高条件与限制:服务器和客户机要求都能接入 Internet 。
飞机订票系统详细设计说明书实用资料
飞机订票系统详细设计说明书实用资料(可以直接使用,可编辑优秀版资料,欢迎下载)文档编号:版本号:v1.0详细设计说明书项目名称飞机订票系统项目负责人何柳青本文档编写者何柳青项目开发者计算机081第二组2021年12月4日目录1.引言 (1)1.1编写目的 (1)1.2背景 (1)1.3参考资料 (1)2.程序系统的结构 (1)2.1运行环境 (1)2.2系统组织结构 (2)3、程序设计说明 (3)3.1“按目的地查询”程序描述 (3)功能 (3)3.1.2 性能 (4)3.1.3 输入项 (4)3.1.4 输出项 (4)3.1.5 算法 (4)3.1.6 流程逻辑 (4)3.2“航班信息管理模块”程序描述 (5)功能 (6)3.2.2 性能 (6)3.2.3 输入项 (6)3.2.4 输出项 (6)3.2.5 算法 (6)3.2.6 程序流程逻辑 (6)3.3“乘客信息管理”程序描述 (7)功能 (7)3.3.2 性能 (7)3.3.3 输入项 (7)3.3.4 输出项 (8)3.3.5 算法 (8)3.3.6 程序PAD图 (8)3.4注释设计 (9)3.5测试计划 (9)1.引言1.1编写目的本文档将对《飞机订票系统》的程序进行详细解析,是程序员编写代码的基础。
本文档的读者是设计人员和程序员。
1.2背景开发软件名称:飞机票订系统。
(1)项目任务提出者:中国民航及中国国际旅游开发公司。
(2)项目开发者:何柳靑,陆银琳,李欣纯,单国英,阿依古丽(3)项目与其他软件,系统的关系:该系统采用现代流行WINDOWS操作界面。
是标准的WIN32应用程序,可运行在WIN95 \WIN98 \WinMe \WIN2000 \WINXP \WIN7 \WINNT 等系统平台上的多任务应用程序。
1.3参考资料《软件工程导论》清华大学出版社张海藩编著《实用软件工程》清华大学出版社郑人杰等编著《数据库系统概论(第三版)》高等教育出版社萨师煊王珊等编著《实用软件文档写作》清华大学出版社肖刚等编著《软件工程》第3版人民邮电出版社张海藩等编著2.程序系统的结构本程序每个子系统所包含的单元文件名称及其程序层次结构如表所示,对于特别简单的程序模块,其程序层次结构非常简单,在此从略,仅给出较为复杂的程序层次结构。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
领航航空订票系统架构设计说明书Version : 1.1.32012-02-291.版本Time:2012-2-29 14:30:21Version:1.1.3(大更新第一个版本/小更新第一版/测试版)注:奇数版为测试版,偶数版为发布版Author:TeacherTian、Cuifeng、Zhangbin、Shao俊铖2.概述领航票务系统架构领航票务系统架构描述对应包控制层设计com.linghang.service模型设计com.linghang.entitya)控制层设计控制层中包含有如下几个业务处理类Service名称对应类有关用户的Service erSerivce处理订单的Service com.linghang.service.ItemSerivce有关管理员的Service com.linghang.service.ManagerService b)模型设计模型设计如下:模型名称对应类用户类er管理员com.linghang.entity.Manager订单com.linghang.entity.Item用户地址com.linghang.entity.Address票种com.linghang.entity.Ticket3.开发环境介绍开发环境WindowsXP 部署环境Linux开发工具eclipse3.6/notepad WEB服务器Tomcat7 版本控制CVS4.ER图a) 管理员ER 图b) 用户ER图c) 订单ER 图管理员ID密码真实姓名联系电话用户名(邮箱)d)票务ER图e)航空港ER图f)用户地址ER图5.业务组件(com.linghang.service包)a)erService登录/邮箱注册方法◆用户注册事件流事件流异常从request中获取用户注册的信息email密码重复密码身份证真实姓名联系电话如果有任意一个属性为空则返回false如果有任意一个属性的格式不正确则返回false如果email在数据库中不存在则继续否则返回false将从request中获取的数据封装为一个User对象初始化封装好的User对象的score(0)和等级(0)如果用户添加成功则返回true,否则返回false方法原型:boolean createUser(User user);方法概要功能描述:从页面的request中获取用户信息并注册用户方法参数:从request中获取信息后封装成一个User返回值:如果成功则返回true,否则返回false◆查询用户事件流事件流异常根据用户名从数据库中查询用户如果用户名为空则返回空如果返回的结果集为空则返回空如果返回的结果集不为空则将数据封装为一个User对象并返回方法原型:User loadUser(String username);方法概要说明:从数据库中根据用户名查询用户的全部信息方法参数:用户名返回值:用户的全部信息以及用户的◆修改用户事件流事件流异常根据参数对数据库中的用户进行修改如果用户为空则返回false 如果修改成功则返回true,否则返回false方法原型:boolean modifyUser(User user);方法概要说明:通过用户参数来修改数据库中的用户信息方法参数:用户返回值:如果修改成功则返回true,否则返回false◆删除用户事件流事件流异常根据参数对数据库中的用户进行删除如果删除成功则返回true,否则返回false方法原型:boolean removeUser(User user);方法概要说明:通过用户参数来修改数据库中的用户信息方法参数:需要删除的用户返回值:如果成功删除则返回true否则返回false◆登录时间流事件流异常从request中获得用户的用户账号、用户密码用户名、密码、验证码为空、用户名不存在用户输入用户名,用Ajax验证用户输入的账户是否存在如果用户名不存在,在用户名输用户输入验证码,用Ajax验证用户输入的验证码是否正确如果验证码错误,在输入框用jquery验证用户输入的用户名、密码、验证码是否为空如果用户输入的信息为空、在输入框后方法原型:User login(String userName,String password);方法概要功能描述:如果用户的userName和password不正确,返回loginErrorMassage。
用户密码正确,登录成功,根据用户的用户名获得一个用户对象。
方法参数:从request获得用户的用户名和用户密码。
返回值:返回一个User对象b)com.linghang.service.ItemService的方法◆通过机次查询票种事件流事件流异常通过页面获取用户提交的查询数据:日期(使用Jquery插件)机次(手动输入)验证码如果机次为空则返回false 通过日期与机次来进行机次的查找查询出来的内容需要有机次、到时、历时、商务舱数量/票价、头等舱数量/票价、经济舱数量/票价将查询出来的内容封装为Ticket对象并返回如果没有对应的数据则返回false方法原型:List<Ticket> loadTicketByName(Long date, String ticketName);方法概要功能描述:机次查询的方法,通过日期和机次来查询Ticket方法参数:date:Long类型,表示查询的日期ticketName:String类型,表示需要查询的机票的机次方法返回值:成功则返回机票信息,否则返回null◆通过航空港查询票种事件流事件流异常通过页面获取用户提交的数据:日期(使用Jquery控件) 发站以及到站发站和到站同时为空则返回false通过发站或者到站来进行计票的查询查询出来的内容需要有机次、到时、历时、商务舱数量/票价、头等舱数量/票价、经济舱数量/票价将查询出来的内容封装为Ticket对象并返回如果没有对应的数据则返回false方法原型:List<Ticket> loadTicketByStation(Long date, String from, String to);方法概要功能描述:通过起始站和终到站来进行计票的查询方法参数:date:Long类型,表示查询的日期from:起始站的名称to:终到站的名称方法返回值:成功则返回机票信息,否则返回null◆通过时间以及出发地/目的地查询票种事件流事件流异常通过表单获取如下数据:出发地、目的地、出发日期、出发时间(非必选,表示一个时间范围)、出发班次(非必选) 出发地、目的地、出发日期或者有格式问题则返回fal通过数据库查询获取如下信息:机次、发站、到站、历时、头等舱(数量/价格)、商务舱(数量/价格)、经济舱(数量/价格)将上述的票务信息封装成对象列表并返回给页面将信息以列表方式展示在页面上并添加"预定"按钮方法原型:List<Ticket> loadTickets(String from, Sting to, Long time, String flightNum); 方法概要功能描述:通过出发地,目的地,出发时间以及出发班次来获取票务信息方法参数:from:String类型,表示出发地to:String类型,表示目的地time:Long类型,表示出发时间flghtNum:String类型,表示出发班次方法返回值:如果成功则返回符合条件的票,否则返回null◆预定订单事件流事件流异常用户单击"预定"按钮通过数据库以及List<Item>获取如下信息:班机信息(出发时间/机次/出发地/目的地/历时/),票务信息(头等舱/商务舱/经济舱数量及价格),乘客信息(实名制乘客名)将这些信息显示在页面上以便用户提交订单方法原型:void preCreateItem();方法概要功能描述:用户点击”预定”按钮后,将票务信息详细显示在页面上以便用户进行提交◆核实订单事件流事件流异常用户选择如下信息:有效身份信息(仓位/姓名/身份证件类型/证件号码/手机号/)填写及验证页面上的验证码用户提交订单后获取订单信息:车次信息、乘客信息将车次信息以及乘客信息封装在Item对象中将该对象的信息回显到页面上方法原型:Item createItem();方法概要功能描述:生成订单信息并由用户来进行确认方法返回:返回给页面一个Item对象,如果失败则返回null◆提交订单事件流事件流异常获得班机信息以及乘客信息将班级信息与乘客信息封装在Item对象中将Item对象持久化到数据库中如果数据库发生异常则返回返回正确方法原型:bool submitItem();方法概要功能描述:在客户确认item信息后将班级信息和乘客信息持久化到数据库中方法返回值:如果成功则返回true否则返回falsec)com.linhang.service.ManagerService管理◆创建票种事件流事件流异常生成新的票种方法原型:void createTicket();方法概要功能描述:由管理员添加一种新的票种◆修改票种事件流事件流异常修改票种方法原型:boolean modifyTicket(Ticket t);方法概要功能描述:由管理员修改票种◆删除票务事件流事件流异常删除票种方法原型:boolean removeTicket(Ticket t);方法概要功能描述:删除指定的票种◆修改票务事件流事件流异常修改订单方法原型:boolean modyfiItem(Item item);方法概要功能描述:有管理员修改指定的订单,通过修改订单来达到退票等功能6.实体组件(Entity implements Serializable)◆Ticket(票)概述:为了能够实现将来的服务器集群,该类应当实现serializable属性:ID(Long):票的ID,与业务无关name(String):票的名字,车次kind(String):票的种类(firstSeat、businessSeat、touristSeat)stations(ArrayList<Station>):票停的站,从Station中查询出来的数据放在该List 中去price(Double):票价number(Integer):该票的数量describe(String):票的描述discount(double):票的折扣行为:构造器:一个无参数构造器、一个无ID的全参数构造器、一个全参数构造器gettersettertoString◆Station站属性:id(Long):与业务无关的IDname(String):该站的名字可以使用城市名称time(Long):到达该站的时间order(Integer):站的顺序tid(Long):外键,该Station属于哪张票行为:构造器gettersettertostring◆Manager(管理员)概述:为了能够实现将来的服务器集群,该类应当实现serializable属性包括:行为包括:◆User(用户)概述:为了能够实现将来的服务器集群,该类应当实现serializable属性:id(Long):与业务不相关的IDcid(String):身份证IDusername(String):用户名(Email)password(String):密码(使用MD5进行加密)name(String):真实姓名phone(String):联系电话score(Long):用户购买机票的积分level(Long):用户等级(需要等级表)行为:构造器gettersetter◆Address概述: 为了能够实现将来的服务器集群,该类应当实现serializable.此类作为User 的一个外键,表示一个用户的地址,用户的地址可以有多个属性:id(Long):与业务不相关的idcontent(String):用户的地址uid(Long):用户的外键行为:构造器setterItem(作为User的一个外键)概述: 为了能够实现将来的服务器集群,该类应当实现serializable.此类作为User 的一个外键,表示一个用户的订单属性:id(Long):与业务不相关的idnumber(String):订单的编号generateDate(Long):订单生成时间tid(Long):该item的机票类型buildFree(Double):机场建设费insurance(Double):保险费oilTax(Double):燃油税uid:该item所属的用户,是一个外键aid:该item使用用户的哪一个地址方法:7.工具类(Util)a)MD5Util提供加密算法方法原型:String encode(String password);方法概要功能描述:对参数password进行加密并返回密文方法参数:password:String类型,代表需要加密的明文返回值:加密后的密文b)DBUtil提供数据库的连接方法原型:Connection getConn();方法概要功能描述:通过配置文件获取数据库连接返回值:返回数据库连接方法原型:boolean close(ResultSet rs, Statement stmt, Connection conn);方法概要功能描述:依次关闭结果集、Statement以及数据库连接方法参数:rs:ResultSet的对象类型,代表数据库结果集stmt:Statement对象或者PreparedStatement对象类型conn:Connection对象类型,代表需要关闭的Connectionc)ConfigUtil方法原型:String getConfig(String key);方法概要功能描述:根据key的值返回配置文件中对应的Value方法参数:key:String类型,表示需要从配置文件中获得的配置信息的Key返回值:配置信息8.一些专有名词解释票种:Ticket管理员:Manager用户:User(分为会员或者非会员)邮寄地址:Address订单:Item9.扩展系统中可能发生的扩展,要求系统能够满足以下扩展a) 安全性:权限(某些页面普通用户不可见,VIP用户可见,或者管理员可见)b)网上银行支付c)WebService在网络上获得票务信息d)并发性(集群)e)积分制度f)手机版g)英文版/中文版h)热门机票推荐i)主要城市票价排行j)酒店预定k)团购l)托运。